(cherry picked from commit 8308c6716f63af056e9be7666f5be4003ad35795)
(cherry picked from commit 68bf06347d07f546f25f9402a378062690140610)