(cherry picked from commit e9255d1736d582890f0b9f7643124431110030c5)
(cherry picked from commit fba0aecf8a7b94b77225555e041113846d85aad2)