marking label method as virtual so a custom subclass can override