(cherry picked from commit 269e72a2193b584476bec338ef41e6fb2e5cbea6) (cherry picked from commit 104aadfdb7feb7143c41da790496a384ffb29fc8)