(cherry picked from commit e60297d84c17be06a2c2e7be3b034c5d6415cca3)
(cherry picked from commit aa939af0d136d3d11f13c14ca3b550fe1513d270)