(cherry picked from commit 48262f55f74fda64130fa65b86e6db86f5f0e929)
(cherry picked from commit caabe170878e35f6caff03ccbcfdc717bffd21e5)