(cherry picked from commit 258623ff8bb1a1057ae3501d4f20982d5a59ea34) (cherry picked from commit 1d1e7682c9cad6a2f819b390ca3368dfa29c7097)