static int runTestCase(int casenum) {
		switch (casenum) {
		case 0: {
			int[] A = { 0, 0, 3, 2 };
			int[] B = { 1, 1, 5, 3 };
			String expected__ = "rectangle";

			return verifyCase(casenum, expected__, new TwoRectangles().describeIntersection(A, B));
		}
		case 1: {
			int[] A = { 0, 0, 5, 3 };
			int[] B = { 1, 2, 2, 3 };
			String expected__ = "rectangle";

			return verifyCase(casenum, expected__, new TwoRectangles().describeIntersection(A, B));
		}
		case 2: {
			int[] A = { 1, 1, 6, 2 };
			int[] B = { 3, 2, 5, 4 };
			String expected__ = "segment";

			return verifyCase(casenum, expected__, new TwoRectangles().describeIntersection(A, B));
		}
		case 3: {
			int[] A = { 0, 1, 2, 3 };
			int[] B = { 2, 0, 5, 2 };
			String expected__ = "segment";

			return verifyCase(casenum, expected__, new TwoRectangles().describeIntersection(A, B));
		}
		case 4: {
			int[] A = { 0, 0, 1, 1 };
			int[] B = { 1, 1, 5, 2 };
			String expected__ = "point";

			return verifyCase(casenum, expected__, new TwoRectangles().describeIntersection(A, B));
		}
		case 5: {
			int[] A = { 1, 1, 2, 2 };
			int[] B = { 3, 1, 4, 2 };
			String expected__ = "none";

			return verifyCase(casenum, expected__, new TwoRectangles().describeIntersection(A, B));
		}

		// custom cases


		  case 6: {
		  int[] A = {424, 308, 599, 521};
		  int[] B = {599, 279, 846, 308};
		  String expected__ = "point";

		  return verifyCase(casenum, expected__, new
		  TwoRectangles().describeIntersection(A, B));
		  }


		  case 7: {
		  int[] A = {13, 522, 545, 899};
		  int[] B ={545, 827, 589, 921} ;
		  String expected__ ="segment" ;

		  return verifyCase(casenum, expected__, new
		  TwoRectangles().describeIntersection(A, B));
		  }

		/*
		 * case 8: {
		 * int[] A = ;
		 * int[] B = ;
		 * String expected__ = ;
		 *
		 * return verifyCase(casenum, expected__, new
		 * TwoRectangles().describeIntersection(A, B));
		 * }
		 */
		default:
			return -1;
		}
	}