(cherry picked from commit 38b6632a4a8d2ce9478dabf1d5547ab7ef289586)
(cherry picked from commit 714806a751859ec9d37416a51e48ad3300ac6f73)