(cherry picked from commit 04f4527df32ad5c35720cccc41d27fe51549612f)
(cherry picked from commit 77b033c8bf8c0a76ff0d7065e2192cbe55d3a3b6)