(cherry picked from commit 8a51c9c771472ebe7ccf21ad986d03c4e4b354e4)
(cherry picked from commit 4f81468695f19586aef9a3bbf4ed93dd13d697a3)