(cherry picked from commit f2c31e92ceec7c6a8daffa78f30f15ab8684bef9)
(cherry picked from commit 85e285598106346099ceae676599c5cb4b789c92)