(cherry picked from commit 2a867355dfce880bb82257508862ec26bc7f16b9) (cherry picked from commit f74ecffaa6f01719dbb9a1f5e5704f85715ecf70)