(cherry picked from commit 1cc38159f212787c181a7876e816d053d00e9416)
(cherry picked from commit d1c684428d135a5f720adcd32098598038041f98)