cherry-pick

8ffb1de73940b4999dd1c0d8dedebe9a39236cd3