GameLayer is an abstract class, EggScrambleModeLayer and MainModeLayer are concrete.  The three are implementing the template method pattern.