(cherry picked from commit a6f7a35fb85a342a93e88ccb167bd2e6e9b76552)
(cherry picked from commit b6d6539a309b6ce8803b3bb982b5397b79140e79)