gt: 			Event event5 = new Event(series, EVENT5_NAME, EVENT5_DESC);
context: /*
  	cursus - Race series management program
  	Copyright 2014  Simon Arlott
  
  	This program is free software: you can redistribute it and/or modify
  	it under the terms of the GNU Affero General Public License as published by
  	the Free Software Foundation, either version 3 of the License, or
  	(at your option) any later version.
  
  	This program is distributed in the hope that it will be useful,
  	but WITHOUT ANY WARRANTY; without even the implied warranty of
  	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  	GNU Affero General Public License for more details.
  
  	You should have received a copy of the GNU Affero General Public License
  	along with this program.  If not, see <http://www.gnu.org/licenses/>.
   */
  package org.spka.cursus.test.series_2008;
  
  import org.spka.cursus.scoring.SPKAConstants;
  import org.spka.cursus.test.AbstractSPKASeries;
  
  import uk.uuid.cursus.db.DatabaseSession;
  import uk.uuid.cursus.db.data.Event;
  import uk.uuid.cursus.db.data.Penalty;
  import uk.uuid.cursus.db.data.Pilot;
  import uk.uuid.cursus.db.data.Race;
  import uk.uuid.cursus.db.data.RaceAttendee;
  import uk.uuid.cursus.db.data.RaceTally;
  import uk.uuid.cursus.db.data.Series;
  import uk.uuid.cursus.db.data.Sex;
  
  public class Series2008 extends AbstractSPKASeries {
  	public Series2008() {
  		super("SPKA Race Series 2008/09", SPKAConstants.UUID_2005); //$NON-NLS-1$
  	}
  
  	protected static final int SERIES_FLEET_AT_EVENT1 = 11;
  	protected static final int SERIES_FLEET_AT_EVENT2 = 12;
  	protected static final int SERIES_FLEET_AT_EVENT3 = 14;
  	protected static final int SERIES_FLEET_AT_EVENT4 = 14;
  	protected static final int SERIES_FLEET_AT_EVENT5 = 14;
  	protected static final int SERIES_FLEET_AT_EVENT6 = 14;
  
  	protected static final String EVENT1_NAME = "Race Event 1"; //$NON-NLS-1$
  	protected static final String EVENT1_DESC = ""; //$NON-NLS-1$
  	protected static final int EVENT1_FLEET = 11;
  	protected static final String RACE1_NAME = "Race 1"; //$NON-NLS-1$
  	protected static final String RACE1_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE1_FLEET = 11;
  	protected static final String RACE2_NAME = "Race 2"; //$NON-NLS-1$
  	protected static final String RACE2_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE2_FLEET = 11;
  
  	protected static final String EVENT2_NAME = "Race Event 2"; //$NON-NLS-1$
  	protected static final String EVENT2_DESC = ""; //$NON-NLS-1$
  	protected static final int EVENT2_FLEET = 12;
  	protected static final String RACE3_NAME = "Race 3"; //$NON-NLS-1$
  	protected static final String RACE3_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE3_FLEET = 12;
  
  	protected static final String EVENT3_NAME = "Race Event 3"; //$NON-NLS-1$
  	protected static final String EVENT3_DESC = ""; //$NON-NLS-1$
  	protected static final int EVENT3_FLEET = 13;
  	protected static final String RACE4_NAME = "Race 4"; //$NON-NLS-1$
  	protected static final String RACE4_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE4_FLEET = 13;
  
  	protected static final String EVENT4_NAME = "Race Event 4"; //$NON-NLS-1$
  	protected static final String EVENT4_DESC = ""; //$NON-NLS-1$
  	protected static final int EVENT4_FLEET = 12;
  	protected static final String RACE5_NAME = "Race 5"; //$NON-NLS-1$
  	protected static final String RACE5_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE5_FLEET = 12;
  	protected static final String RACE6_NAME = "Race 6"; //$NON-NLS-1$
  	protected static final String RACE6_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE6_FLEET = 12;
  
  	protected static final String EVENT5_NAME = "Race Event 5"; //$NON-NLS-1$
  	protected static final String EVENT5_DESC = ""; //$NON-NLS-1$
  	protected static final int EVENT5_FLEET = 10;
  	protected static final String RACE7_NAME = "Race 7"; //$NON-NLS-1$
  	protected static final String RACE7_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE7_FLEET = 10;
  	protected static final String RACE8_NAME = "Race 8"; //$NON-NLS-1$
  	protected static final String RACE8_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE8_FLEET = 10;
  
  	protected static final String EVENT6_NAME = "Race Event 6"; //$NON-NLS-1$
  	protected static final String EVENT6_DESC = ""; //$NON-NLS-1$
  	protected static final int EVENT6_FLEET = 12;
  	protected static final String RACE9_NAME = "Race 9"; //$NON-NLS-1$
  	protected static final String RACE9_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE9_FLEET = 12;
  	protected static final String RACE10_NAME = "Race 10"; //$NON-NLS-1$
  	protected static final String RACE10_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE10_FLEET = 12;
  	protected static final String RACE11_NAME = "Race 11"; //$NON-NLS-1$
  	protected static final String RACE11_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE11_FLEET = 12;
  	protected static final String RACE12_NAME = "Race 12"; //$NON-NLS-1$
  	protected static final String RACE12_DESC = ""; //$NON-NLS-1$
  	protected static final int RACE12_FLEET = 12;
  
  	protected Pilot sco019;
  	protected Pilot sco021;
  	protected Pilot sco023;
  	protected Pilot sco060;
  	protected Pilot sco071;
  	protected Pilot sco081;
  	protected Pilot sco117;
  	protected Pilot sco136;
  	protected Pilot sco154;
  	protected Pilot sco158;
  	protected Pilot sco159;
  	protected Pilot sco179;
  	protected Pilot sco197;
  	protected Pilot sco200;
  
  	private Series _series;
  	private Event _event1;
  	private Race _race1;
  	private Race _race2;
  	private Event _event2;
  	private Race _race3;
  	private Event _event3;
  	private Race _race4;
  	private Event _event4;
  	private Race _race5;
  	private Race _race6;
  	private Event _event5;
  	private Race _race7;
  	private Race _race8;
  	private Event _event6;
  	private Race _race9;
  	private Race _race10;
  	private Race _race11;
  	private Race _race12;
  
  	@Override
  	public void createAllData() throws Exception {
  		createDatabase();
  		createEvent1Races();
  		createEvent2Races();
  		createEvent3Races();
  		createEvent4Races();
  		createEvent5Races();
  		createEvent6Races();
  	}
  
  	protected void createSeriesData() throws Exception {
  		if (_series != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			// Create the 2008/09 series
  			Series series = new Series(SERIES_NAME);
  
  			// Add all the pilots
  			sco019 = new Pilot(series, "SCO019@2005", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco019);
  
  			sco021 = new Pilot(series, "SCO021@2008", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco021);
  
  			sco023 = new Pilot(series, "SCO023@2005", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco023);
  
  			sco060 = new Pilot(series, "SCO060@2005", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco060);
  
  			sco071 = new Pilot(series, "SCO071@2005", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco071);
  
  			sco081 = new Pilot(series, "SCO081@2005", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco081);
  
  			sco117 = new Pilot(series, "SCO117@2005", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco117);
  
  			sco136 = new Pilot(series, "SCO136@2005", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco136);
  
  			sco154 = new Pilot(series, "SCO154@2005", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco154);
  
  			sco158 = new Pilot(series, "SCO158@2005", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco158);
  
  			sco159 = new Pilot(series, "SCO159@2005", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco159);
  
  			sco179 = new Pilot(series, "SCO179@2005", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco179);
  
  			sco197 = new Pilot(series, "SCO197@2006", Sex.FEMALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco197);
  
  			sco200 = new Pilot(series, "SCO200@2006", Sex.MALE, "Scotland"); //$NON-NLS-1$ //$NON-NLS-2$
  			series.getPilots().add(sco200);
  
  			createRaceNumbers(series.getPilots());
  
  			// Save
  			seriesDAO.persist(series);
  
  			DatabaseSession.commit();
  
  			_series = series;
  		} finally {
  			db.endSession();
  		}
  	}
  
  	protected void createEvent1Data() throws Exception {
  		createSeriesData();
  
  		if (_event1 != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			Series series = seriesDAO.find(SERIES_NAME);
  
  			Event event1 = new Event(series, EVENT1_NAME, EVENT1_DESC);
  			series.getEvents().add(event1);
  			eventDAO.persist(event1);
  
  			DatabaseSession.commit();
  
  			_event1 = event1;
  		} finally {
  			db.endSession();
  		}
  	}
  
  	protected void createEvent1Races() throws Exception {
  		createRace1Data();
  		createRace2Data();
  	}
  
  	protected void createRace1Data() throws Exception {
  		createEvent1Data();
  
  		if (_race1 != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			Series series = seriesDAO.find(SERIES_NAME);
  			Event event1 = eventDAO.find(series, EVENT1_NAME);
  
  			Race race1 = new Race(event1, RACE1_NAME, RACE1_DESC);
  			event1.getRaces().add(race1);
  			race1.getAttendees().put(sco019, new RaceAttendee(race1, sco019, RaceAttendee.Type.PILOT));
  			race1.getAttendees().put(sco023, new RaceAttendee(race1, sco023, RaceAttendee.Type.PILOT));
  			race1.getAttendees().put(sco060, new RaceAttendee(race1, sco060, RaceAttendee.Type.M_MARSHAL));
  			race1.getAttendees().put(sco071, new RaceAttendee(race1, sco071, RaceAttendee.Type.PILOT));
  			race1.getAttendees().put(sco081, new RaceAttendee(race1, sco081, RaceAttendee.Type.PILOT));
  			race1.getAttendees().put(sco117, new RaceAttendee(race1, sco117, RaceAttendee.Type.PILOT));
  			race1.getAttendees().put(sco136, new RaceAttendee(race1, sco136, RaceAttendee.Type.PILOT));
  			race1.getAttendees().put(sco154, new RaceAttendee(race1, sco154, RaceAttendee.Type.PILOT));
  			race1.getAttendees().put(sco179, new RaceAttendee(race1, sco179, RaceAttendee.Type.PILOT));
  			race1.getAttendees().put(sco197, new RaceAttendee(race1, sco197, RaceAttendee.Type.PILOT));
  			race1.getAttendees().put(sco200, new RaceAttendee(race1, sco200, RaceAttendee.Type.PILOT));
  			race1.getTallies().add(new RaceTally(RaceTally.Type.START));
  			addLaps(race1, "23,200,179,19,81,71,117,154,136"); //$NON-NLS-1$
  			addLaps(race1, "23,200,179,19,81,71,117"); //$NON-NLS-1$
  			addLaps(race1, "23,200"); //$NON-NLS-1$
  			addLaps(race1, "23"); //$NON-NLS-1$
  			raceDAO.persist(race1);
  
  			DatabaseSession.commit();
  
  			_race1 = race1;
  		} finally {
  			db.endSession();
  		}
  	}
  
  	protected void createRace2Data() throws Exception {
  		createEvent1Data();
  
  		if (_race2 != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			Series series = seriesDAO.find(SERIES_NAME);
  			Event event1 = eventDAO.find(series, EVENT1_NAME);
  
  			Race race2 = new Race(event1, RACE2_NAME, RACE2_DESC);
  			event1.getRaces().add(race2);
  			race2.getAttendees().put(sco019, new RaceAttendee(race2, sco019, RaceAttendee.Type.PILOT));
  			race2.getAttendees().put(sco023, new RaceAttendee(race2, sco023, RaceAttendee.Type.PILOT));
  			race2.getAttendees().put(sco060, new RaceAttendee(race2, sco060, RaceAttendee.Type.M_MARSHAL));
  			race2.getAttendees().put(sco071, new RaceAttendee(race2, sco071, RaceAttendee.Type.PILOT));
  			race2.getAttendees().put(sco081, new RaceAttendee(race2, sco081, RaceAttendee.Type.PILOT));
  			race2.getAttendees().put(sco117, new RaceAttendee(race2, sco117, RaceAttendee.Type.PILOT));
  			race2.getAttendees().put(sco136, new RaceAttendee(race2, sco136, RaceAttendee.Type.PILOT));
  			race2.getAttendees().put(sco154, new RaceAttendee(race2, sco154, RaceAttendee.Type.PILOT));
  			race2.getAttendees().put(sco179, new RaceAttendee(race2, sco179, RaceAttendee.Type.PILOT));
  			race2.getAttendees().put(sco197, new RaceAttendee(race2, sco197, RaceAttendee.Type.PILOT));
  			race2.getAttendees().put(sco200, new RaceAttendee(race2, sco200, RaceAttendee.Type.PILOT));
  			race2.getTallies().add(new RaceTally(RaceTally.Type.START));
  			addLaps(race2, "23,200,81,19,136,71,154,117,197,179"); //$NON-NLS-1$
  			addLaps(race2, "23,200,81,19,136,71,154,117,197,179"); //$NON-NLS-1$
  			addLaps(race2, "23,200,81,19,136,71,154"); //$NON-NLS-1$
  			addLaps(race2, "23,200,81,19,136"); //$NON-NLS-1$
  			addLaps(race2, "23,200"); //$NON-NLS-1$
  			raceDAO.persist(race2);
  
  			DatabaseSession.commit();
  
  			_race2 = race2;
  		} finally {
  			db.endSession();
  		}
  	}
  
  	protected void createEvent2Data() throws Exception {
  		createSeriesData();
  
  		if (_event2 != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			Series series = seriesDAO.find(SERIES_NAME);
  
  			Event event2 = new Event(series, EVENT2_NAME, EVENT2_DESC);
  			series.getEvents().add(event2);
  			eventDAO.persist(event2);
  
  			DatabaseSession.commit();
  
  			_event2 = event2;
  		} finally {
  			db.endSession();
  		}
  	}
  
  	protected void createEvent2Races() throws Exception {
  		createRace3Data();
  	}
  
  	protected void createRace3Data() throws Exception {
  		createEvent2Data();
  
  		if (_race3 != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			Series series = seriesDAO.find(SERIES_NAME);
  			Event event2 = eventDAO.find(series, EVENT2_NAME);
  
  			Race race3 = new Race(event2, RACE3_NAME, RACE3_DESC);
  			event2.getRaces().add(race3);
  			race3.getAttendees().put(sco019, new RaceAttendee(race3, sco019, RaceAttendee.Type.M_MARSHAL));
  			race3.getAttendees().put(sco023, new RaceAttendee(race3, sco023, RaceAttendee.Type.PILOT));
  			race3.getAttendees().put(sco060, new RaceAttendee(race3, sco060, RaceAttendee.Type.PILOT));
  			race3.getAttendees().put(sco071, new RaceAttendee(race3, sco071, RaceAttendee.Type.PILOT));
  			race3.getAttendees().put(sco081, new RaceAttendee(race3, sco081, RaceAttendee.Type.PILOT));
  			race3.getAttendees().put(sco117, new RaceAttendee(race3, sco117, RaceAttendee.Type.PILOT));
  			race3.getAttendees().put(sco136, new RaceAttendee(race3, sco136, RaceAttendee.Type.PILOT));
  			race3.getAttendees().put(sco154, new RaceAttendee(race3, sco154, RaceAttendee.Type.PILOT));
  			race3.getAttendees().put(sco159, new RaceAttendee(race3, sco159, RaceAttendee.Type.PILOT));
  			race3.getAttendees().put(sco179, new RaceAttendee(race3, sco179, RaceAttendee.Type.PILOT));
  			race3.getAttendees().put(sco197, new RaceAttendee(race3, sco197, RaceAttendee.Type.PILOT));
  			race3.getAttendees().put(sco200, new RaceAttendee(race3, sco200, RaceAttendee.Type.PILOT));
  			race3.getTallies().add(new RaceTally(RaceTally.Type.START));
  			addLaps(race3, "23,200,179,71,117,159,197,60,154,81,136"); //$NON-NLS-1$
  			addLaps(race3, "23,200,179,71,117,159,197,60,154"); //$NON-NLS-1$
  			addLaps(race3, "23,200,179,71,117,159,197,60"); //$NON-NLS-1$
  			addLaps(race3, "23,200,179,71,117,159"); //$NON-NLS-1$
  			addLaps(race3, "23,200,179,71,117"); //$NON-NLS-1$
  			addLaps(race3, "23,200,179,71"); //$NON-NLS-1$
  			addLaps(race3, "23,200"); //$NON-NLS-1$
  			raceDAO.persist(race3);
  
  			DatabaseSession.commit();
  
  			_race3 = race3;
  		} finally {
  			db.endSession();
  		}
  	}
  
  	protected void createEvent3Data() throws Exception {
  		createSeriesData();
  
  		if (_event3 != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			Series series = seriesDAO.find(SERIES_NAME);
  
  			Event event3 = new Event(series, EVENT3_NAME, EVENT3_DESC);
  			series.getEvents().add(event3);
  			eventDAO.persist(event3);
  
  			DatabaseSession.commit();
  
  			_event3 = event3;
  		} finally {
  			db.endSession();
  		}
  	}
  
  	protected void createEvent3Races() throws Exception {
  		createRace4Data();
  	}
  
  	protected void createRace4Data() throws Exception {
  		createEvent3Data();
  
  		if (_race4 != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			Series series = seriesDAO.find(SERIES_NAME);
  			Event event3 = eventDAO.find(series, EVENT3_NAME);
  
  			Race race4 = new Race(event3, RACE4_NAME, RACE4_DESC);
  			event3.getRaces().add(race4);
  			race4.getAttendees().put(sco019, new RaceAttendee(race4, sco019, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco021, new RaceAttendee(race4, sco021, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco023, new RaceAttendee(race4, sco023, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco060, new RaceAttendee(race4, sco060, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco071, new RaceAttendee(race4, sco071, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco081, new RaceAttendee(race4, sco081, RaceAttendee.Type.PILOT));
  			// race4.getAttendees().put(sco117, new RaceAttendee(race4, sco117, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco136, new RaceAttendee(race4, sco136, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco154, new RaceAttendee(race4, sco154, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco158, new RaceAttendee(race4, sco158, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco159, new RaceAttendee(race4, sco159, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco179, new RaceAttendee(race4, sco179, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco197, new RaceAttendee(race4, sco197, RaceAttendee.Type.PILOT));
  			race4.getAttendees().put(sco200, new RaceAttendee(race4, sco200, RaceAttendee.Type.PILOT));
  			race4.getTallies().add(new RaceTally(RaceTally.Type.START));
  			addLaps(race4, "200,23,81,159,179,19,154,21,197,71,136,158"); //$NON-NLS-1$
  			addLaps(race4, "200,23,81,159,179,19,154,21,197,71"); //$NON-NLS-1$
  			addLaps(race4, "200,23,81,159,179,19,154,21"); //$NON-NLS-1$
  			addLaps(race4, "200,23,81,159,179,19"); //$NON-NLS-1$
  			addLaps(race4, "200,23,81"); //$NON-NLS-1$
  			addLaps(race4, "200,23,81"); //$NON-NLS-1$
  			raceDAO.persist(race4);
  
  			DatabaseSession.commit();
  
  			_race4 = race4;
  		} finally {
  			db.endSession();
  		}
  	}
  
  	protected void createEvent4Data() throws Exception {
  		createSeriesData();
  
  		if (_event4 != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			Series series = seriesDAO.find(SERIES_NAME);
  
  			Event event4 = new Event(series, EVENT4_NAME, EVENT4_DESC);
  			series.getEvents().add(event4);
  			eventDAO.persist(event4);
  
  			DatabaseSession.commit();
  
  			_event4 = event4;
  		} finally {
  			db.endSession();
  		}
  	}
  
  	protected void createEvent4Races() throws Exception {
  		createRace5Data();
  		createRace6Data();
  	}
  
  	protected void createRace5Data() throws Exception {
  		createEvent4Data();
  
  		if (_race5 != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			Series series = seriesDAO.find(SERIES_NAME);
  			Event event4 = eventDAO.find(series, EVENT4_NAME);
  
  			Race race5 = new Race(event4, RACE5_NAME, RACE5_DESC);
  			event4.getRaces().add(race5);
  			race5.getAttendees().put(sco019, new RaceAttendee(race5, sco019, RaceAttendee.Type.M_MARSHAL));
  			race5.getAttendees().put(sco021, new RaceAttendee(race5, sco021, RaceAttendee.Type.PILOT));
  			race5.getAttendees().put(sco023, new RaceAttendee(race5, sco023, RaceAttendee.Type.PILOT));
  			race5.getAttendees().put(sco060, new RaceAttendee(race5, sco060, RaceAttendee.Type.PILOT));
  			race5.getAttendees().put(sco071, new RaceAttendee(race5, sco071, RaceAttendee.Type.PILOT));
  			race5.getAttendees().put(sco081, new RaceAttendee(race5, sco081, RaceAttendee.Type.PILOT));
  			race5.getAttendees().put(sco117, new RaceAttendee(race5, sco117, RaceAttendee.Type.PILOT));
  			race5.getAttendees().put(sco136, new RaceAttendee(race5, sco136, RaceAttendee.Type.PILOT));
  			race5.getAttendees().put(sco154, new RaceAttendee(race5, sco154, RaceAttendee.Type.PILOT));
  			// race5.getAttendees().put(sco158, new RaceAttendee(race5, sco158, RaceAttendee.Type.PILOT));
  			race5.getAttendees().put(sco159, new RaceAttendee(race5, sco159, RaceAttendee.Type.PILOT));
  			race5.getAttendees().put(sco179, new RaceAttendee(race5, sco179, RaceAttendee.Type.PILOT));
  			// race5.getAttendees().put(sco197, new RaceAttendee(race5, sco197, RaceAttendee.Type.PILOT));
  			race5.getAttendees().put(sco200, new RaceAttendee(race5, sco200, RaceAttendee.Type.PILOT));
  			race5.getTallies().add(new RaceTally(RaceTally.Type.START));
  			addLaps(race5, "200,23,154,81,179,71,136,159,60,117"); //$NON-NLS-1$
  			addLaps(race5, "200,23,154,81,179,71,136,159,60,117"); //$NON-NLS-1$
  			addLaps(race5, "200,23,154,81,179,71,136,159,60,117"); //$NON-NLS-1$
  			addLaps(race5, "200,23,154,81,179,71,136,159,60,117"); //$NON-NLS-1$
  			addLaps(race5, "200,23,154,81,179,71,136,159,60,117"); //$NON-NLS-1$
  			addLaps(race5, "200,23,154,81,179,71,136"); //$NON-NLS-1$
  			addLaps(race5, "200,23,154,81,179"); //$NON-NLS-1$
  			addLaps(race5, "200,23,154,81,179"); //$NON-NLS-1$
  			addLaps(race5, "200,23,154,81,179"); //$NON-NLS-1$
  			addLaps(race5, "200,23,154"); //$NON-NLS-1$
  			raceDAO.persist(race5);
  
  			DatabaseSession.commit();
  
  			_race5 = race5;
  		} finally {
  			db.endSession();
  		}
  	}
  
  	protected void createRace6Data() throws Exception {
  		createEvent4Data();
  
  		if (_race6 != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			Series series = seriesDAO.find(SERIES_NAME);
  			Event event4 = eventDAO.find(series, EVENT4_NAME);
  
  			Race race6 = new Race(event4, RACE6_NAME, RACE6_DESC);
  			event4.getRaces().add(race6);
  			race6.getAttendees().put(sco019, new RaceAttendee(race6, sco019, RaceAttendee.Type.PILOT));
  			race6.getAttendees().put(sco021, new RaceAttendee(race6, sco021, RaceAttendee.Type.PILOT));
  			race6.getAttendees().put(sco023, new RaceAttendee(race6, sco023, RaceAttendee.Type.PILOT));
  			race6.getAttendees().put(sco060, new RaceAttendee(race6, sco060, RaceAttendee.Type.M_MARSHAL));
  			race6.getAttendees().put(sco071, new RaceAttendee(race6, sco071, RaceAttendee.Type.PILOT));
  			race6.getAttendees().put(sco081, new RaceAttendee(race6, sco081, RaceAttendee.Type.PILOT));
  			race6.getAttendees().put(sco117, new RaceAttendee(race6, sco117, RaceAttendee.Type.PILOT));
  			race6.getAttendees().put(sco136, new RaceAttendee(race6, sco136, RaceAttendee.Type.PILOT));
  			race6.getAttendees().put(sco154, new RaceAttendee(race6, sco154, RaceAttendee.Type.PILOT));
  			// race6.getAttendees().put(sco158, new RaceAttendee(race6, sco158, RaceAttendee.Type.PILOT));
  			race6.getAttendees().put(sco159, new RaceAttendee(race6, sco159, RaceAttendee.Type.PILOT));
  			race6.getAttendees().put(sco179, new RaceAttendee(race6, sco179, RaceAttendee.Type.PILOT));
  			// race6.getAttendees().put(sco197, new RaceAttendee(race6, sco197, RaceAttendee.Type.PILOT));
  			race6.getAttendees().put(sco200, new RaceAttendee(race6, sco200, RaceAttendee.Type.PILOT));
  			race6.getTallies().add(new RaceTally(RaceTally.Type.START));
  			addLaps(race6, "200,23,154,81,117,179,21,71"); //$NON-NLS-1$
  			addLaps(race6, "200,23,154,81,117,179"); //$NON-NLS-1$
  			addLaps(race6, "200,23,154,81,117,179"); //$NON-NLS-1$
  			addLaps(race6, "200,23,154,81,117,179"); //$NON-NLS-1$
  			addLaps(race6, "200,23,154,81,117,179"); //$NON-NLS-1$
  			addLaps(race6, "200,23,154,81,117"); //$NON-NLS-1$
  			addLaps(race6, "200,23,154,81"); //$NON-NLS-1$
  			addLaps(race6, "200"); //$NON-NLS-1$
  			raceDAO.persist(race6);
  
  			DatabaseSession.commit();
  
  			_race6 = race6;
  		} finally {
  			db.endSession();
  		}
  	}
  
  	protected void createEvent5Data() throws Exception {
  		createSeriesData();
  
  		if (_event5 != null) {
  			return;
  		}
  
  		db.startSession();
  		try {
  			DatabaseSession.begin();
  
  			Series series = seriesDAO.find(SERIES_NAME);
  
  