public void test_06() {

		for (int numInts = 10; numInts < 1000; numInts *= 2) {
			// Create 'original' intervals
			Markers intervals = randomIntervals(numInts, maxLen, 20, 2);

			// Create forest (one tree per chromosome)
			IntervalForest forest = new IntervalForest(intervals);

			if (verbose) {
				intervals.sort(false, false);
				System.out.println(intervals.toStringAsciiArt(maxLen));
				forest.build();
				System.out.println(forest);
			}

			Markers intervals2 = randomIntervals(numInts, maxLen, 20, 2);

			// We test one by one in order to compare individual results
			for (Marker i : intervals2) {
				Markers intersect = forest.query(i);
				Markers intersectBf = intersects(intervals, i);

				// Show
				if (!intersect.equals(intersectBf)) {
					intersect.sort(false, false);
					intersectBf.sort(false, false);
					String errMsg = "Interval: " + i + "\n\tIntersects  : " + intersect + "\n\tIntersectsBf: " + intersectBf;
					System.err.println(errMsg);
					throw new RuntimeException(errMsg);
				}
			}
		}
	}