(cherry picked from commit cad544d03b9256ef3b335e9f9c56d4ec266fa5cf)
(cherry picked from commit 7f83cf8894e8854ef817de008581ac1d300e58a6)