(cherry picked from commit 9d620a6daba3e90458538600bb8bc841b93f86c4)
(cherry picked from commit 346d22edfce71497487911e8651f162a2d70bf84)