code: def generate_xid(identifier=None):
          
          if identifier is None:
              identifier = str(uuid.uuid4())
          elif isinstance(identifier, list):
              identifier = '-'.join([str(i) for i in identifier])
              identifier = hashlib.sha256(identifier.encode('utf-8')).hexdigest()
          return hashlib.sha256(identifier.encode('utf-8')).hexdigest()
docs: Generate xid from provided identifiers.
  
          .. Important::  If no identifier is provided a unique xid will be returned, but it will
                          not be reproducible. If a list of identifiers are provided they must be
                          in the same order to generate a reproducible xid.
  
          Args:
              identifier (list|str):  Optional *string* value(s) to be used to make a unique and
                                      reproducible xid.