(cherry picked from commit f3125a4d2fe4a01445284dc13184e249f513d606)
(cherry picked from commit 6e89f2fa3339a9c977597b2f18ac3c0c1e010367)