(cherry picked from commit 3f359199e053617e97324079225cdd8afe785855)
(cherry picked from commit cf84eeb5ec5e0ea5ecb026cd65939739a75b7271)