+
    "i                        R t ^ RIHt ^ RIHt ^ RIHt ^ RIHt ]'       d   ^RI	H
t
 ]! ^R7      R R l4       tR	 R
 ltR# )z
Path utils)annotations)	lru_cache)Path)TYPE_CHECKING)HacsBase)maxsizec               0    V ^8  d   QhRRRRRRRRRRRR/# )	   config_pathstrappdaemon_pathplugin_pathpython_script_path
theme_pathreturnzset[str] )formats   ",/config/custom_components/hacs/utils/path.py__annotate__r      sD        	
      c           	     Z   \        V  RV 24      P                  4       \        V  RV 24      P                  4       \        V  RV 24      P                  4       \        V  RV 24      P                  4       \        V  R24      P                  4       \        V  R24      P                  4       0# )zGet safe paths./z/custom_components/z/custom_templates/)r   as_posix)r
   r   r   r   r   s   &&&&&r   _get_safe_pathsr      s     	}An-./88:}Ak]+,557}A0123<<>}Aj\*+446}/01::<}./099; r   c               $    V ^8  d   QhRRRRRR/# )r	   hacsr   pathz
str | Pathr   boolr   )r   s   "r   r   r       s!     	 	( 	* 	 	r   c                    V P                   p\        V4      P                  4       \        V P                  P
                  VP                  VP                  VP                  VP                  4      9  # )z*Helper to check if path is safe to remove.)
configurationr   r   r   corer
   r   r   r   r   )r   r   r   s   && r   is_safer!       s_    &&M: 		$$!!((  )  r   N)__doc__
__future__r   	functoolsr   pathlibr   typingr   baser   r   r!   r   r   r   <module>r(      s8     "     1 $	r   