(cherry picked from commit 3db9d86bcd6f85cf6b81ee27e79a0d2a0f9287ab)
(cherry picked from commit 93ca88fa49d3bd3422b5f05243ec9dfad47c2a77)