(cherry picked from commit 47c772518dfeee51c3f5e3ef7badca5fa4d58407)
(cherry picked from commit 180dc7081479cf6d5e01fe2d4e9d08ea3fc5c4b3)