(cherry picked from commit 5711f01183f335c4446c7f5c870f5aca6d72e82c)
(cherry picked from commit 80b7da0ea4195b4e777aad333db56779ccb20346)