(cherry picked from commit 924def78544a64449785f305cb6984c3559aea4d) (cherry picked from commit acf20c8318270eaa8fdf6259ec7b07344e3bd7e5)