(cherry picked from commit cc85e2202fd50a118a1a02644604688058b2926a)
(cherry picked from commit bdec8a0af2993a6902d4803224d8b4f15e332a1d)