(cherry picked from commit 575137f41c27eb72d05d923337f3030a35403e8f) (cherry picked from commit 4128c9522dcdc16bb3527f74a48ed1242458a165)