(cherry picked from commit a7d227e6227b2c1d20ae4a9d5107be57980463a1)
(cherry picked from commit 2bebc32a05553e75edef16f71218fa2bfbfc1f77)