(cherry picked from commit 4076ad327ca140a3d772dee6b964b1d1f81e9835)
(cherry picked from commit 8de52b6365c0ceb8d0825625e30b890dfad986de)