(cherry picked from commit ae0b12319f7d46621ad7425990a1aa12267d1188)
(cherry picked from commit e77adec52319673acada182ac9a001c416c17930)