private void pushState(Node<V>[] t, int i, int n) {
          TableStack<V> s = spare;  // reuse if possible
        if (s != null) {
          spare = s.next;
        }
        else {
          s = new TableStack<V>();
        }
          s.tab = t;
          s.length = n;
          s.index = i;
          s.next = stack;
          stack = s;
      }
private void pushState(Node<V>[] t, int i, int n)