code: def persist(id_obj, filename=None, suffix=None):
      
      if suffix is None:
          suffix = ".pickle"
      if hasattr(id_obj, 'id'):
          ident = id_obj.id
      else:
          ident = str(id(id_obj))
  
      if filename is None:
          filename = "{obj_id}{suffix}".format(obj_id=ident, suffix=suffix)
  
      with open(filename, 'wb') as obj_file:
          dill.dump(id_obj, obj_file)
      return os.path.abspath(filename)
docs: Persist an object in the filesystem.
  
      This will generate a pickled version of the given obj in the filename path.
      Objects shall provide an id() method to be able to use this persistence API.
      If not, we will use the id() builtin of python to generate an identifier
      for you.
  
      The file will be created, if it does not exist.
      If the file already exists, we will overwrite it.
  
      Args:
          id_obj (Any): An identifiable object you want to persist in the
                        filesystem.