':return: True if we added a new fuzzable request variant to the DB,
False if no more variants are required for this fuzzable
request.'

def append(self, fuzzable_request):

    with self._db_lock:
        request_hash = fuzzable_request.get_request_hash(self.HASH_IGNORE_HEADERS)
        already_seen = self._variants_eq.get(request_hash, False)
        if already_seen:
            return False
        self._variants_eq[request_hash] = True
        clean_dict_key = clean_fuzzable_request(fuzzable_request)
        count = self._variants.get(clean_dict_key, None)
        if (count is None):
            self._variants[clean_dict_key] = 1
            return True
        url = fuzzable_request.get_uri()
        has_params = (url.has_query_string() or fuzzable_request.get_raw_data())
        if has_params:
            max_variants = self.params_max_variants
        else:
            max_variants = self.path_max_variants
        if (count >= max_variants):
            return False
        else:
            self._variants[clean_dict_key] = (count + 1)
            return True
