Add Factory Class