(cherry picked from commit 5d663437adbd9f91faf99eeb56aa9aec5170a8b5)
(cherry picked from commit d020f5dc74ea949c24f9a25ed7a2731f021e9f71)