make use of final and override defines