Is there a reason why this is `protected` instead of `public`?