(cherry picked from commit 79c41b1d83e981ae74cb8b58ffcf7907b7612ad4) (cherry picked from commit 9f4a6ec6630f3776859f8d677532370095a58d0c)