Restore changes of d8aa0489ae273722f26fd29d5287c2cf381e4412