public static void main(String[] args) {

		SymbolTable symbolTable = new SymbolTable();

		// Create metro stations ....
		MetroStation gA = new MetroStation("Greenbelt", 100.0, 100.0);
		gA.setParking(true);
		MetroStation gB = new MetroStation("College Park", 100.0, 80.0);
		gB.setParking(true);
		MetroStation gC = new MetroStation("Silver Spring", 70.0, 90.0);
		gC.setParking(true);
		MetroStation gD = new MetroStation("Fort Totten", 70.0, 70.0);
		gD.setParking(false);
		MetroStation gE = new MetroStation("Union Station", 50.0, 50.0);
		gE.setParking(false);
		MetroStation gF = new MetroStation("DuPont Circle", 20.0, 60.0);
		gF.setParking(false);
		MetroStation gG = new MetroStation("Catholic University", 60.0, 60.0);
		gG.setParking(false);

		// Insert some (key, value pairs)
		symbolTable.put("Greenbelt", gA);
		symbolTable.put("College Park", gB);
		symbolTable.put("Silver Spring", gC);
		symbolTable.put("Fort Totten", gD);
		symbolTable.put("Union Station", gE);
		symbolTable.put("DuPont Circle", gF);
		symbolTable.put("Catholic University", gG);

		// Define stations along the green and red lines ....
		String redLine[] = { "Silver Spring", "Fort Totten",
				"Catholic University", "Union Station", "DuPont Circle" };
		String greenLine[] = { "Greenbelt", "College Park", "Fort Totten" };

		// Add track assignments to Metro Station Descriptions ....
		for (int i = 0; i < redLine.length; i = i + 1) {
			MetroStation m = (MetroStation) symbolTable.get(redLine[i]);
			m.add("Red");
		}

		for (int j = 0; j < greenLine.length; j = j + 1) {
			MetroStation m = (MetroStation) symbolTable.get(greenLine[j]);
			m.add("Green");
		}

		// Ride along track and retrieve station information.
		System.out.println(symbolTable.get("Greenbelt").toString());
		System.out.println(symbolTable.get("College Park").toString());
		System.out.println(symbolTable.get("Fort Totten").toString());
		System.out.println(symbolTable.get("DuPont Circle").toString());
	}