(cherry picked from commit 9b39a1f94f42489893851812db11eba64ac2d818)
(cherry picked from commit 0b254583617bb53b4c092b8ee8ca3342bd9a4163)