These methods should be package-private or protected.