code: @Override
    public boolean containsAtLeast(IntSet c, int minElements)
    {
      if (minElements < 1) {
        throw new IllegalArgumentException();
      }
      if ((size >= 0 && size < minElements) || c == null || c.isEmpty() || isEmpty()) {
        return false;
      }
      if (this == c) {
        return size() >= minElements;
      }
  
      final FastSet other = convert(c);
      final int[] localWords = words;       // faster
      final int[] localOtherWords = other.words;   // faster
  
      int count = 0;
      for (int i = Math.min(firstEmptyWord, other.firstEmptyWord) - 1; i >= 0; i--) {
        count += Integer.bitCount(localWords[i] & localOtherWords[i]);
        if (count >= minElements) {
          return true;
        }
      }
      return false;
    }
docs: {@inheritDoc}