(cherry picked from commit a636192ef22ee69d792b0ca7db1c6be963be9cb2)
(cherry picked from commit 488e409a1898e9c739cc0bd24cb9791636dfd6b3)