(cherry picked from commit e04ca7aac7a651d444753ed3f44e22faae408332)
(cherry picked from commit 0e2ea3959164c2b5719bb906ee5408e92890981b)