static int runTestCase(int casenum__) {
		switch (casenum__) {
		case 0: {
			String[] cityMap = { "M....M", "...R.M", "R..R.R" };
			int[] POIs = { 3, 4 };
			String expected__ = "MR";

			return verifyCase(casenum__, expected__,
					new CityMap().getLegend(cityMap, POIs));
		}
		case 1: {
			String[] cityMap = { "XXXXXXXZXYYY" };
			int[] POIs = { 1, 8, 3 };
			String expected__ = "ZXY";

			return verifyCase(casenum__, expected__,
					new CityMap().getLegend(cityMap, POIs));
		}
		case 2: {
			String[] cityMap = { "...........", "...........", "...........",
					"..........T" };
			int[] POIs = { 1 };
			String expected__ = "T";

			return verifyCase(casenum__, expected__,
					new CityMap().getLegend(cityMap, POIs));
		}
		case 3: {
			String[] cityMap = { "AIAAARRI.......GOAI.",
					".O..AIIGI.OAAAGI.A.I", ".A.IAAAARI..AI.AAGR.",
					"....IAI..AOIGA.GAIA.", "I.AIIIAG...GAR.IIAGA",
					"IA.AOA....I....I.GAA", "IOIGRAAAO.AI.AA.RAAA",
					"AI.AAA.AIR.AGRIAAG..", "AAAAIAAAI...AAG.RGRA",
					".J.IA...G.A.AA.II.AA" };
			int[] POIs = { 16, 7, 1, 35, 11, 66 };
			String expected__ = "GOJIRA";

			return verifyCase(casenum__, expected__,
					new CityMap().getLegend(cityMap, POIs));
		}

		// custom cases

		/*
		 * case 4: { String[] cityMap = ; int[] POIs = ; String expected__ = ;
		 *
		 * return verifyCase(casenum__, expected__, new
		 * CityMap().getLegend(cityMap, POIs)); }
		 */
		/*
		 * case 5: { String[] cityMap = ; int[] POIs = ; String expected__ = ;
		 *
		 * return verifyCase(casenum__, expected__, new
		 * CityMap().getLegend(cityMap, POIs)); }
		 */
		/*
		 * case 6: { String[] cityMap = ; int[] POIs = ; String expected__ = ;
		 *
		 * return verifyCase(casenum__, expected__, new
		 * CityMap().getLegend(cityMap, POIs)); }
		 */
		default:
			return -1;
		}
	}