(cherry picked from commit d0e4342b34198d124db3398c527f321a20f57945)
(cherry picked from commit b8c463ffc1bd73809f8e6f4cc5231957308d589d)