(cherry picked from commit b7b6d2ba590ef32dab9f8aa20e1e5f16b8d5f272)
(cherry picked from commit 1cba4971cb0d98ae6aaf6d5c568c55cdffebdaec)