(cherry picked from commit dfb53a5b50f4e4c34aaa812bba819a7ce65fdf8b)
(cherry picked from commit 0cc3a1ad8de8528899c2e0c9a603c4fcd8653f7a)