(cherry picked from commit e890ff6ea2ddc541f4181337c0805a7cdea1174d)
(cherry picked from commit 2e9c433d90de7c5d9d52b0ec438b5881f3ca4b6c)