docs: def filter_publication(publication, cache=_CACHE):
      """
      Deduplication function, which compares `publication` with samples stored in
      `cache`. If the match NOT is found, `publication` is returned, else None.
  
      Args:
          publication (obj): :class:`.Publication` instance.
          cache (obj): Cache which is used for lookups.
  
      Returns:
          obj/None: Depends whether the object is found in cache or not.
      """
      if cache is None:
          cache = load_cache()
  
      if publication._get_hash() in cache:
          return None
  
      cache.update(
          [publication._get_hash()]
      )
      save_cache(cache)
      return publication