(cherry picked from commit f04901901ccd89e33809679dc8e953a030a601c7)
(cherry picked from commit 06e36e21ae5c84b220bdf2d411bd86098ce49aed)