code: def unlinked(base_dir: str) -> set:
          
  
          return {join(dp, f) for dp, dn, fn in walk(base_dir)
              for f in fn if isfile(join(dp, f)) and not islink(join(dp, f))} - {
                  join(dirname(path_link), readlink(path_link)) for path_link in Tails.links(base_dir)}
docs: Return all paths to tails files, in specified tails base directory (recursively),
          without symbolic links associating revocation registry identifiers.
  
          At an Issuer, tails files should not persist long without revocation registry identifier
          association via symbolic link. At a HolderProver, a newly downloaded tails file stays
          unlinked until the agent stores a credential or creates a proof needing it, or else the
          agent restarts.
  
          :param base_dir: base directory for tails files, thereafter split by cred def id
          :return: set of paths to tails files with no local symbolic links to them