code: public static <K, V extends K> Cursor<K, V> slice(Object[] btree, Comparator<K> comparator, K start, boolean startInclusive, K end, boolean endInclusive, boolean forwards)
      {
          Cursor<K, V> r = new Cursor<>();
          r.reset(btree, comparator, start, startInclusive, end, endInclusive, forwards);
          return r;
      }
docs: Returns an Iterator over a sub-range of the tree
  
  @param btree      the tree to iterate over
  @param comparator the comparator that defines the ordering over the items in the tree
  @param start      the first item to include
  @param end        the last item to include
  @param forwards   if false, the iterator will start at end and move backwards
  @param <V>
  @return