int addNavigationLocations() {
	initNavigation();

	// locations
	addNavigationLocation(&locationA, "A", 0, 0);
	addNavigationLocation(&locationB, "B", 0, 0);
	addNavigationLocation(&locationC, "C", 0, 0);
	addNavigationLocation(&locationD, "D", 0, 0);
	addNavigationLocation(&locationE, "E", 0, 0);
	addNavigationLocation(&locationF, "F", 0, 0);
	addNavigationLocation(&locationG, "G", 0, 0);
	addNavigationLocation(&locationH, "H", 0, 0);
	addNavigationLocation(&locationI, "I", 0, 0);
	addNavigationLocation(&locationJ, "J", 0, 0);

	// paths
	void pathABFunction() { fillPathData(&locationA, &locationB, 85, 0, 0, 0, 0, 0, 0); }
void initLocations2012() {
	clearLocationList(getNavigationLocationList());
	// -> General locations
	addNavigationLocation(&startAreaLocation, START_AREA, START_AREA_X, START_AREA_Y);
	#ifdef INCLUDE_HOMOLOGATION
		addNavigationLocation(&startAreaFrontLocation, START_AREA_FRONT, START_AREA_FRONT_X, START_AREA_FRONT_Y);
	#endif
	addNavigationLocation(&bullion1Location, BULLION_1, BULLION_1_X, BULLION_1_Y);
	addNavigationLocation(&bottle1Location, BOTTLE_1, BOTTLE_1_X, BOTTLE_1_Y);
	addNavigationLocation(&bottle2FrontLocation, BOTTLE_2_FRONT, BOTTLE_2_FRONT_X, BOTTLE_2_FRONT_Y);
	addNavigationLocation(&bottle2Location, BOTTLE_2, BOTTLE_2_X, BOTTLE_2_Y);
	//addNavigationLocation(&cdTakeLocation, CD_TAKE, CD_TAKE_X, CD_TAKE_Y);
	addNavigationLocation(&dropZone1Location, DROP_ZONE_1, DROP_ZONE_1_X, DROP_ZONE_1_Y);
	addNavigationLocation(&frontOfMapLocation, FRONT_OF_MAP_LOCATION, FRONT_OF_MAP_LOCATION_X, FRONT_OF_MAP_LOCATION_Y);
	// -> Bullion 1
	addNavigationLocation(&bullionRight1Location, BULLION_RIGHT_1, BULLION_RIGHT_1_X, BULLION_RIGHT_1_Y); 
	addNavigationLocation(&bullionLeft1Location, BULLION_LEFT_1, BULLION_LEFT_1_X, BULLION_LEFT_1_Y); 
	// -> Bullion 2 / Opponent CD
	addNavigationLocation(&bullionMiddle2Location, BULLION_MIDDLE_2, BULLION_MIDDLE_2_X, BULLION_MIDDLE_2_Y);

	addNavigationLocation(&obstacleL1Location, OBSTACLE_L1, OBSTACLE_L_X, OBSTACLE_1_Y);
	addNavigationLocation(&obstacleL2Location, OBSTACLE_L2, OBSTACLE_L_X, OBSTACLE_2_Y);
	addNavigationLocation(&obstacleL3Location, OBSTACLE_L3, OBSTACLE_L_X, OBSTACLE_3_Y);
	addNavigationLocation(&obstacleL4Location, OBSTACLE_L4, OBSTACLE_L_X, OBSTACLE_4_Y);
	addNavigationLocation(&obstacleM1Location, OBSTACLE_M1, OBSTACLE_M_X, OBSTACLE_1_Y);
	addNavigationLocation(&obstacleM2Location, OBSTACLE_M2, OBSTACLE_M_X, OBSTACLE_4_Y);
	addNavigationLocation(&obstacleR1Location, OBSTACLE_R1, OBSTACLE_R_X, OBSTACLE_1_Y);
	addNavigationLocation(&obstacleR2Location, OBSTACLE_R2, OBSTACLE_R_X, OBSTACLE_2_Y);
	addNavigationLocation(&obstacleR3Location, OBSTACLE_R3, OBSTACLE_R_X, OBSTACLE_3_Y);
	addNavigationLocation(&obstacleR4Location, OBSTACLE_R4, OBSTACLE_R_X, OBSTACLE_4_Y);
}
void initLocations2012() {
    // -> General locations
    startAreaLocation = addNavigationLocation(START_AREA, START_AREA_X, START_AREA_Y);
    startAreaFrontLocation = addNavigationLocation(START_AREA_FRONT, START_AREA_FRONT_X, START_AREA_FRONT_Y);
    bullion1Location = addNavigationLocation(BULLION_1, BULLION_1_X, BULLION_1_Y);
    bottle1Location = addNavigationLocation(BOTTLE_1, BOTTLE_1_X, BOTTLE_1_Y);
    bottle2FrontLocation = addNavigationLocation(BOTTLE_2_FRONT, BOTTLE_2_FRONT_X, BOTTLE_2_FRONT_Y);
    bottle2Location = addNavigationLocation(BOTTLE_2, BOTTLE_2_X, BOTTLE_2_Y);
//     cdTakeLocation = addNavigationLocation(CD_TAKE, CD_TAKE_X, CD_TAKE_Y);
    dropZone1Location = addNavigationLocation(DROP_ZONE_1, (int)DROP_ZONE_1_X, (int) DROP_ZONE_1_Y);
    frontOfMapLocation = addNavigationLocation(FRONT_OF_MAP_LOCATION, (int) FRONT_OF_MAP_LOCATION_X, (int)FRONT_OF_MAP_LOCATION_Y);
    // -> Bullion 1
    bullionRight1Location = addNavigationLocation(BULLION_RIGHT_1, BULLION_RIGHT_1_X, BULLION_RIGHT_1_Y); 
    bullionLeft1Location = addNavigationLocation(BULLION_LEFT_1, BULLION_LEFT_1_X, BULLION_LEFT_1_Y); 
    // -> Bullion 2 / Opponent CD
    bullionMiddle2Location = addNavigationLocation(BULLION_MIDDLE_2, (int)BULLION_MIDDLE_2_X, (int) BULLION_MIDDLE_2_Y);

    obstacleL1Location = addNavigationLocation(OBSTACLE_L1, OBSTACLE_L_X, OBSTACLE_1_Y);
    obstacleL2Location = addNavigationLocation(OBSTACLE_L2, OBSTACLE_L_X, OBSTACLE_2_Y);
    obstacleL3Location = addNavigationLocation(OBSTACLE_L3, OBSTACLE_L_X, (int) OBSTACLE_3_Y);
    obstacleL4Location = addNavigationLocation(OBSTACLE_L4, (int) OBSTACLE_L_X, (int)OBSTACLE_4_Y);
    obstacleM1Location = addNavigationLocation(OBSTACLE_M1, (int) OBSTACLE_M_X, (int)OBSTACLE_1_Y);
    obstacleM2Location = addNavigationLocation(OBSTACLE_M2, (int) OBSTACLE_M_X, (int)OBSTACLE_4_Y);
    obstacleR1Location = addNavigationLocation(OBSTACLE_R1, (int) OBSTACLE_R_X, (int) OBSTACLE_1_Y);
    obstacleR2Location = addNavigationLocation(OBSTACLE_R2, (int) OBSTACLE_R_X, (int) OBSTACLE_2_Y);
    obstacleR3Location = addNavigationLocation(OBSTACLE_R3, (int) OBSTACLE_R_X, (int) OBSTACLE_3_Y);
    obstacleR4Location = addNavigationLocation(OBSTACLE_R4, (int) OBSTACLE_R_X, (int) OBSTACLE_4_Y);
}