(cherry picked from commit 1e70a1d57eaf3ed7a83ff37f19273907532c4a8b)
(cherry picked from commit 24849335a834c1570dd7f96e80b92deb754f6ac6)