(cherry picked from commit b8c463ffc1bd73809f8e6f4cc5231957308d589d)
(cherry picked from commit bcd2d995c295ebd2a0d72b3b426936bcf42010c0)