(cherry picked from commit 22abd100cbab75673c53e4fb36fa574ada660aee) (cherry picked from commit 4e2c30cb5bcd7a4e2b2385a774062492e741a9e9)