(cherry picked from commit 69ac21051ed384b5341a540b13f6d4d42510d8a2)
(cherry picked from commit a7edd9723b218d59e0742e204c0c30abdeb57c10)