This PR cherry-picks the following commits: - 16d9f66ff9 - fcee4d5444 - d12afa7ff3
16d9f66ff9
fcee4d5444
d12afa7ff3