(cherry picked from commit 875062b5bc789158290bf93dadc71b5328ca4fee)
(cherry picked from commit dc7a1c54f4447fb01980ae61d5d67e90c4f52f00)