code: private void clearBit(int index) {
      if (index < 0 || index >= vectorSize) {
        throw new ArrayIndexOutOfBoundsException(index);
      }
  
      List<Key> kl = keyVector[index];
      List<Key> fpl = fpVector[index];
  
      // update key list
      int listSize = kl.size();
      for (int i = 0; i < listSize && !kl.isEmpty(); i++) {
        removeKey(kl.get(0), keyVector);
      }
  
      kl.clear();
      keyVector[index].clear();
  
      //update false positive list
      listSize = fpl.size();
      for (int i = 0; i < listSize && !fpl.isEmpty(); i++) {
        removeKey(fpl.get(0), fpVector);
      }
  
      fpl.clear();
      fpVector[index].clear();
  
      //update ratio
      ratio[index] = 0.0;
  
      //update bit vector
      bits.clear(index);
    }
docs: Clears a specified bit in the bit vector and keeps up-to-date the KeyList vectors.
  @param index The position of the bit to clear.