(cherry picked from commit 0b1c2b5fe1b5c225d208936ecb1d3e307a535ee6) (cherry picked from commit 0db6b8c93cd964291707c3ba03bfc63bb65b710a)