(cherry picked from commit 85fbc6de0d50a9dc8869ed54c55155583fdc0709)
(cherry picked from commit 39899b1e8ff25ca1ac3708086c1ddb677fb56541)