(cherry picked from commit 0d03e672) (cherry picked from commit 19bb2b84) (cherry picked from commit 05301d05)