Should these still be inner classes?