(cherry picked from commit e729b8704f84a2fa24b9eb16d324fb0f973a50db)
(cherry picked from commit 8eb5f728a78dccfccd3984b1830853c49de42949)