(cherry picked from commit bb92bfb4ef96baa234966b60e464d1773fbf3f22) (cherry picked from commit 3a764250262e745a6762dd6551b0d0a6af39e891)