(cherry picked from commit b45a270a26f382fc9b9c4442bfb2316906588826)
(cherry picked from commit 64eeb6b83e0d5b09a59ffbe8accbacb19edb5bda)