(cherry picked from commit 81926fe5bee3e4674988efcd6a4b40d5a6c5f3fa)
(cherry picked from commit af75306aeaaf020a37074a50f832c1b8c38ede14)