(cherry picked from commit 80812864e370675e4ce8aaa8188a797bf10f4843)
(cherry picked from commit e025e5df622e2abf1925db04c63b09543c506b83)