(cherry picked from commit 8dcb77634bf85ae98c428272ac7de8fb221ea19a)
(cherry picked from commit 571126c36d54ed301ce762ad57dd3465dec27787)