(cherry picked from commit aac6c6d88a652f954eaac5daae137eb07133f582)
(cherry picked from commit a79817e9c4b890a8a3b63fc799d5d1d1b46cb875)