(cherry picked from commit 9dbefac95a8b60b93ba7b05fd7bf69b80b395f54)
(cherry picked from commit 813299edd83ace98256b7fc9302f586f0dc2cabc)