(cherry picked from commit 951dbaa0) (cherry picked from commit 4d14fc6f) (cherry picked from commit 07e57905)