(cherry picked from commit 1ff27f9d12e8124c1b9a722708264c5b07fd0fde) (cherry picked from commit 8cf6630fc6cedbd86eff9da6f35ce1da4ed7ed2f)