(cherry picked from commit 882f2f04644a13cadb93070d5545f7a4f8691fde) (cherry picked from commit 6e97a3c9686b847e6047e12b7e53a8316e2bebfa)