(cherry picked from commit d64754e3e09e92b2e65c181b0b5e84b531490662)
(cherry picked from commit 8ba75831e6f51f6472d85f813405ede3f679cfd8)