(cherry picked from commit 7cb93f4dbc38117dea8447a644d4253c7d51ca2a)
(cherry picked from commit da020715f9fad2e7100ab9cc51dd433e56c2f1c6)