(cherry picked from commit 8f9a72d648b13557e6439f7d51fb855c2bb4e2d2)
(cherry picked from commit 5adbc00da52d09fad45f40ad886705d761ab5d55)