Partially Revert ecacc0fecd67fed3cf19151c2e976d6f5637ecf2