(cherry picked from commit ffcebdf4caeb858138a7a064411b686f16bfd206)
(cherry picked from commit db335c296b5d5904756a4b6211feac73fed6e59b)