(cherry picked from commit 86ae43bc23afb68dc6c6b13b147e4e64a2d34077)
(cherry picked from commit 68e94e5447622114ee014d8d62ecad65aa6254b9)