(cherry picked from commit d4f560df) (cherry picked from commit c8abe136) (cherry picked from commit 2837aa97)