extracted Experiment superclass