(cherry picked from commit d314a3f99d5d03c62a3b8fb8883886440ab7d1db) (cherry picked from commit 79cde21064a1fe274a4dcbf3dec4ed0d743876cf)