(cherry picked from commit fa0451f611c0faebfa25ffbe44c6935048cf61da)
(cherry picked from commit 1df37a9d17f638c2b8581d0c670170ee4dabf5e0)