(cherry picked from commit c94c992bc3c20b0ab491fdf0ab8f8e550cce0d44)
(cherry picked from commit ba2f68752a263b64ea025e048550632288a1616f)