(cherry picked from commit 1901d66c9100ca455c91ee8c95341de2a283eb67)
(cherry picked from commit de5c6f2c76e72ce85225e5a018e83dd815016733)