(cherry picked from commit 0e33fe6d370d9daad867b5ae447482be3f75b346)
(cherry picked from commit 1c775f8789a61f725e130faeb5a76724efd1017f)