modified visibility of methods to allow better extendability