static int runTestCase(int casenum) {
		switch (casenum) {
		case 0: {
			String message = "123210122";
			String[] expected__ = { "011100011", "NONE" };

			return verifyCase(casenum, expected__, new BinaryCode().decode(message));
		}
		case 1: {
			String message = "11";
			String[] expected__ = { "01", "10" };

			return verifyCase(casenum, expected__, new BinaryCode().decode(message));
		}
		case 2: {
			String message = "22111";
			String[] expected__ = { "NONE", "11001" };

			return verifyCase(casenum, expected__, new BinaryCode().decode(message));
		}
		case 3: {
			String message = "123210120";
			String[] expected__ = { "NONE", "NONE" };

			return verifyCase(casenum, expected__, new BinaryCode().decode(message));
		}
		case 4: {
			String message = "3";
			String[] expected__ = { "NONE", "NONE" };

			return verifyCase(casenum, expected__, new BinaryCode().decode(message));
		}
		case 5: {
			String message = "12221112222221112221111111112221111";
			String[] expected__ = { "01101001101101001101001001001101001", "10110010110110010110010010010110010" };

			return verifyCase(casenum, expected__, new BinaryCode().decode(message));
		}

		// custom cases

		/*
		 * case 6: {
		 * String message = ;
		 * String[] expected__ = ;
		 *
		 * return verifyCase(casenum, expected__, new
		 * BinaryCode().decode(message));
		 * }
		 */
		/*
		 * case 7: {
		 * String message = ;
		 * String[] expected__ = ;
		 *
		 * return verifyCase(casenum, expected__, new
		 * BinaryCode().decode(message));
		 * }
		 */
		/*
		 * case 8: {
		 * String message = ;
		 * String[] expected__ = ;
		 *
		 * return verifyCase(casenum, expected__, new
		 * BinaryCode().decode(message));
		 * }
		 */
		default:
			return -1;
		}
	}