(cherry picked from commit 4c431a694059e40e78365b02a1497a6c7e479a70) (cherry picked from commit a7cdd39234c3a236cd9b85853636d42dc8c850a4)