(cherry picked from commit 55644b3d1c0629d699a19645a6194d8108879ac0)
(cherry picked from commit a097a45538cbe0531529597eff46ece846604740)