(cherry picked from commit fcb830b93eefcf3a1373ef2875c2d36ed44fccef)
(cherry picked from commit b9b8e99149b8978ab043934daf00202019d0aeac)