(cherry picked from commit 6f9fe76918bbc79109653edc6cde85df05148ba3) (cherry picked from commit 61b4116b4b3c0eec8f514f079debd88bc757b28e)