(cherry picked from commit c712b53f7e1e6f4f189a459deff675e096440f1f)
(cherry picked from commit 082cc82c15978780b55aa32e863a0c287fef8864)