(cherry picked from commit a5699782353747575b754fb1a3d436a94f6986fc)
(cherry picked from commit f760c9af61cb22e237bc74d9713172c462556c82)