added Shape class methods