(cherry picked from commit ce90f6638cc9a39cdb48496757b8247050790b50)
(cherry picked from commit 810634c7faea0c8aaa23ba784cbf563d8a26a145)