(cherry picked from commit 9dc046a951e5198461178860c8ebe4bedff9062f)
(cherry picked from commit 7192dab6a3916cb6b61009960ae89488696ba95b)