(cherry picked from commit 7335ecbb86750ec47e643ad558001e7ae5a01518)
(cherry picked from commit 360817275541ffc29d236c342b62a8006cc4fa46)