code: def parse_selinux(parts):
      
  
      owner, group = parts[:2]
      selinux = parts[2].split(":")
      lsel = len(selinux)
      path, link = parse_path(parts[-1])
      result = {
          "owner": owner,
          "group": group,
          "se_user": selinux[0],
          "se_role": selinux[1] if lsel > 1 else None,
          "se_type": selinux[2] if lsel > 2 else None,
          "se_mls": selinux[3] if lsel > 3 else None,
          "name": path
      }
      if link:
          result["link"] = link
      return result
docs: Parse part of an ls output line that is selinux.
  
      Args:
          parts (list): A four element list of strings representing the initial
              parts of an ls line after the permission bits. The parts are owner
              group, selinux info, and the path.
  
      Returns:
          A dict containing owner, group, se_user, se_role, se_type, se_mls, and
          name. If the raw name was a symbolic link, link is always included.