Started problem 21, implemented base class methods