(cherry picked from commit 04ded558b03ee0fbf68a611cf1f25508b4447e44) (cherry picked from commit 59335b4d7a969378cb765b000ba1e13dabc44a3a)