code: public boolean split(Token t)
      {
          if (!(size < maxsize))
              return false;
  
          try
          {
              root = splitHelper(root, fullRange.left, fullRange.right, (byte)0, t);
          }
          catch (StopRecursion.TooDeep e)
          {
              return false;
          }
          return true;
      }
docs: Splits the range containing the given token, if no tree limits would be
  violated. If the range would be split to a depth below hashdepth, or if
  the tree already contains maxsize subranges, this operation will fail.
  
  @return True if the range was successfully split.