private void shiftKeys(int pos) {
    // Shift entries with the same hash.
    int last, slot;
    int curr;
    final int[] key = this.key;
    for (; ; ) {
      pos = (last = pos) + 1 & mask;
      for (; ; ) {
        if ((curr = key[pos]) == 0) {
          key[last] = 0;
          return;
        }
        slot = Hash.mix(curr) & mask;
        if (last <= pos ? last >= slot || slot > pos : last >= slot && slot > pos) {
          break;
        }
        pos = pos + 1 & mask;
      }
      key[last] = curr;
    }
  }
private void shiftKeys(int pos)