Extracted many subclass methods/#defines into superclass