(cherry picked from commit 9b6fffb1e4cf41626309c6ce2b1e2b6e0c0881dc)
(cherry picked from commit 8efedf6a3ba5735adf9c798d3deda27a7a9f8a98)