Removed final keyword so all classes can be extended