(cherry picked from commit 5e029b1fe6838da90fc95009a0f675b59e6f04fd)
(cherry picked from commit 2259164fde4135cdd2d756fbec2d671d475ebb37)