code: def add(self, key):
          
          if key in self:
              return True
          if not self.filters:
              filter = BloomFilter(
                  capacity=self.initial_capacity,
                  error_rate=self.error_rate * (1.0 - self.ratio))
              self.filters.append(filter)
          else:
              filter = self.filters[-1]
              if filter.count >= filter.capacity:
                  filter = BloomFilter(
                      capacity=filter.capacity * self.scale,
                      error_rate=filter.error_rate * self.ratio)
                  self.filters.append(filter)
          filter.add(key, skip_check=True)
          return False
docs: Adds a key to this bloom filter.
          If the key already exists in this filter it will return True.
          Otherwise False.
  
          >>> b = ScalableBloomFilter(initial_capacity=100, error_rate=0.001, \
                                      mode=ScalableBloomFilter.SMALL_SET_GROWTH)
          >>> b.add("hello")
          False
          >>> b.add("hello")
          True