(cherry picked from commit da70853a7a53a611d9382601912fad43089d58f6)
(cherry picked from commit 6ed8c379d79dd0e7bb066968461ade378f05fea3)