code: private LinkedList<Diff> diff_bisectSplit(String text1, String text2,
              int x, int y, long deadline) {
          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<Diff> diffs = diff_main(text1a, text2a, false, deadline);
          LinkedList<Diff> diffsb = diff_main(text1b, text2b, false, deadline);
  
          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.
  @param deadline
  Time at which to bail if not yet complete.
  @return LinkedList of Diff objects.