code: def config_dirs():
      
      paths = []
  
      if platform.system() == 'Darwin':
          paths.append(MAC_DIR)
          paths.append(UNIX_DIR_FALLBACK)
          paths.extend(xdg_config_dirs())
  
      elif platform.system() == 'Windows':
          paths.append(WINDOWS_DIR_FALLBACK)
          if WINDOWS_DIR_VAR in os.environ:
              paths.append(os.environ[WINDOWS_DIR_VAR])
  
      else:
          # Assume Unix.
          paths.append(UNIX_DIR_FALLBACK)
          paths.extend(xdg_config_dirs())
  
      # Expand and deduplicate paths.
      out = []
      for path in paths:
          path = os.path.abspath(os.path.expanduser(path))
          if path not in out:
              out.append(path)
      return out
docs: Return a platform-specific list of candidates for user
      configuration directories on the system.
  
      The candidates are in order of priority, from highest to lowest. The
      last element is the "fallback" location to be used when no
      higher-priority config file exists.