(cherry picked from commit 2df15f35d706d4608ff723ce6288391ca774f7ba)
(cherry picked from commit e4336578388b3e59ba8130123649ccdc9b8487d0)