(cherry picked from commit 4f25575c98fba9df6e7fc99e88a8f68ffb32d855)
(cherry picked from commit 985226be86ed6d31d7bfa42c1bb720d0eee02009)