docs: def status(name, sig=None, runas=None):
      '''
      Return the status for a service.
  
      :param str name: Used to find the service from launchctl.  Can be any part
          of the service name or a regex expression.
  
      :param str sig: Find the service with status.pid instead.  Note that
          ``name`` must still be provided.
  
      :param str runas: User to run launchctl commands
  
      :return: The PID for the service if it is running, or 'loaded' if the
          service should not always have a PID, or otherwise an empty string
  
      :rtype: str
  
      CLI Example:
  
      .. code-block:: bash
  
          salt '*' service.status cups
      '''
      # Find service with ps
      if sig:
          return __salt__['status.pid'](sig)
  
      try:
          _get_service(name)
      except CommandExecutionError as msg:
          log.error(msg)
          return ''
  
      if not runas and _launch_agent(name):
          runas = __utils__['mac_utils.console_user'](username=True)
  
      output = list_(runas=runas)
  
      # Used a string here instead of a list because that's what the linux version
      # of this module does
      pids = ''
      for line in output.splitlines():
          if 'PID' in line:
              continue
          if re.search(name, line.split()[-1]):
              if line.split()[0].isdigit():
                  if pids:
                      pids += '\n'
                  pids += line.split()[0]
  
      # mac services are a little different than other platforms as they may be
      # set to run on intervals and may not always active with a PID. This will
      # return a string 'loaded' if it shouldn't always be running and is enabled.
      if not _always_running_service(name) and enabled(name) and not pids:
          return 'loaded'
  
      return pids