(cherry picked from commit 987ee51141a15d3f4d1df4dc792a192b92b87b5f) (cherry picked from commit 4ed7cf3b362f94367c57d012608213f46f0e16e8)