(cherry picked from commit d5e0a09721a5156fa2ee51ac1c32fbfd9905b8fb) (cherry picked from commit 720de7eb4ca310e8d800938fbb56fd4de06fc6a5)