Move base functionality to parent class