(cherry picked from commit 24ea896915acc8e1431e953ef6219e1be3d265af)
(cherry picked from commit 0bb2a3020f6eb272d9a45dbf44d4256d0644056a)