Rolled back, with optional change to `protected internal`