(cherry picked from commit fa7bc946cfdcddbbd86d57a0905adb6316899cdf)
(cherry picked from commit 20768249404441b5e0b6a33789e055e72cdf2391)