(cherry picked from commit 2dca49df4242119b7debbaf4d6fd12697d6955c9)
(cherry picked from commit 9f65bbec5304d5e50e168706fdde97ec2d16da97)