(cherry picked from commit a3dbde2de87ee4f577748a8c447501a3ea462559)
(cherry picked from commit 70e543baf2508d636f01b2b7e8cb05172195b68c)