code: private LinkedList<Change> bisectSplit(String text1, String text2,
                                             int x, int y) {
          String text1a = text1.substring(0, x);
          String text2a = text2.substring(0, y);
          String text1b = text1.substring(x);
          String text2b = text2.substring(y);
  
          // Compute both diffs serially.
          LinkedList<Change> diffs = main(text1a, text2a, false);
          LinkedList<Change> diffsb = main(text1b, text2b, false);
  
          diffs.addAll(diffsb);
          return diffs;
      }
docs: Given the location of the 'middle snake', split the diff in two parts
  and recurse.
  @param text1 Old string to be diffed.
  @param text2 New string to be diffed.
  @param x Index of split point in text1.
  @param y Index of split point in text2.
  @return LinkedList of DiffBase objects.