(cherry picked from commit 87e299adb25d57e8c57b099221e0311471299ef1)
(cherry picked from commit f703657b433a4053745e7bc3ae2b293dbd461794)