(cherry picked from commit 270e64a65b3a088d1a0701e5affd383334492b0a)
(cherry picked from commit 47a90ea8a0190f7e3b9cb52a9c4cdcd516ebc560)