please make the helper methods private (if they are protected, we have to consider BC on them until the next major release, so using private until we have a good reason to provide an extension point is a better idea)