(cherry picked from commit 34254e59) (cherry picked from commit daaf9273) (cherry picked from commit e2950d26)