(cherry picked from commit a6b800a1a93766d473c33628c36f0b4859305437)
(cherry picked from commit 60628f3ae8ec0ed84827d80d977b67d07b6eb847)