(cherry picked from commit 51aeb2ce0c599176aca9466a939c3ad55df30036) (cherry picked from commit 86b2bec56e28a2d1ece53ab5a452860fd0444268)