(cherry picked from commit 16dc65811d4e0e7ab61c61295149848fe53ddd89) (cherry picked from commit 925bb94d87db7e916ed380d4512225e796f9e03d)