
    ,h                     P    S r SSKJr  SSKJr  S\\   S\\   4S jrS\S\4S jrg	)
z!Utilities for working with paths.    )Sequence)suppresssegmentsreturnc                    / nU  HL  nUS:X  a*  [        [        5         UR                  5         SSS5        M3  US:w  d  M;  UR                  U5        MN     U (       a  U S   S;   a  UR                  S5        U$ ! , (       d  f       M  = f)z1Drop '.' and '..' from a sequence of str segments..N.)r	   r    )r   
IndexErrorpopappend)r   resolved_pathsegs      B/var/www/auris/envauris/lib/python3.13/site-packages/yarl/_path.pynormalize_path_segmentsr      s|      "M$; *%!!# &%CZ  %  HRLK/ 	R  &%s   A88
B	pathc                     SnU (       a  U S   S:X  a  SnU SS  n U R                  S5      nUSR                  [        U5      5      -   $ )Nr   r   /   )splitjoinr   )r   prefixr   s      r   normalize_pathr      sM    FQ3 ABxzz#HCHH4X>???    N)	__doc__collections.abcr   
contextlibr   strlistr   r    r   r   <module>r"      s?    ' $ hsm S	 0
@ 
@ 
@r   