(cherry picked from commit 48262f55f74fda64130fa65b86e6db86f5f0e929)
(cherry picked from commit 9a97e3dd561f1bd546553361959fa29bdd27d24b)