(cherry picked from commit 748ffc2e5bd82533755a7d1259fd4e6d856d7076)
(cherry picked from commit c9401c88b719624a38eea99ce000f94deb5e8ddb)