(cherry picked from commit 5b1e82ab4bf3bad39bb6762a52b2dfaafd18a110)
(cherry picked from commit 519d4117fd0d6d0bd7d51f80bcb20de4d6294503)