(cherry picked from commit aeaef89dfdec40db86a1218483e1dfd23425aea5)
(cherry picked from commit 018d790f16f1933c5235d17e34d5668b96abf652)