(cherry picked from commit ce85ba3d7e647a8a93a54144a840905a8c479fb0)
(cherry picked from commit 079c3a548e3532bcbeb43464ed8987093e83a7eb)