Former-commit-id: 241b055e54b0aa2f6e9393e8e8c470f0db7d4ca2
(cherry picked from commit 6b69f55b66516a40681a138b3ab25cfd7ccc4d1c) Former-commit-id: 796819b60953f077d57d7675f43ab54e68574b4f