(cherry picked from commit a16cd73a024ed11badb2502b9c7889931a72406c)
(cherry picked from commit e4b5740a70d2cea87c7d4f5611d25692961d52e4)