added superclass for all 3 tasks