(cherry picked from commit fc68358afab6965c109ff63469d9b353b2da3db2)
(cherry picked from commit b731044cce2563b34d35dd6c72e9fcd60e877b60)