(cherry picked from commit c5c9cef5c0baf1652b6642858ad2426794823699)
(cherry picked from commit b91bf08876ca4da0c2a843a9ed3e88d64427cfb8)