(cherry picked from commit 0e39e2e49b0371c246dc1a9b4bb20af0b2f642a0)
(cherry picked from commit 575f22e970e2429b8f9871f11b8c3e0924c82dc2)