(cherry picked from commit b6240b92abf453affc5fd64e1eedf2d29842aa75) (cherry picked from commit acda6b96a4e92e432bd1d97fa14004a11e70387e)