(cherry picked from commit 7b0964f354e90968c2dac2f7acc17214732aed64) (cherry picked from commit 6efee8907af3f21d8526927cf5e676d9922b686b)