docs: private void remove(int index) {
          Validate.isFalse(index >= size);
          int shifted = size - index - 1;
          if (shifted > 0) {
              System.arraycopy(keys, index + 1, keys, index, shifted);
              System.arraycopy(vals, index + 1, vals, index, shifted);
          }
          size--;
          keys[size] = null; // release hold
          vals[size] = null;
      }