(cherry picked from commit 1d819807241ef62087c7af424c251aa761ce7cfe)
(cherry picked from commit 94022490e04476bd48172716b2103e69640d25b2)