(cherry picked from commit 60b5683cddc2f8c026935528002c736f74018798)
(cherry picked from commit 744c8bc8dc8a82cb3afb75aead5a744adaae5501)