(cherry picked from commit e3e98bc5f4b8d1998bffc470f0e7a6d08d9e8edc)
(cherry picked from commit f971da7329c3613672299cde4111c4f3364d0241)