
    d                         d dl Z ddlmZ d dlmZ dZedz   Zedz   ZdZ G d	 d
e	          Z
 G d de
          ZddZddefdZd ZdS )    N   )ElementTree)urljoinz!{http://www.w3.org/2001/XInclude}includefallback   c                       e Zd ZdS )FatalIncludeErrorN__name__
__module____qualname__     *  /croot/python-split_1694437901252/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib/python3.11/xml/etree/ElementInclude.pyr
   r
   C           Dr   r
   c                       e Zd ZdS )LimitedRecursiveIncludeErrorNr   r   r   r   r   r   G   r   r   r   c                 4   |dk    rOt          | d          5 }t          j        |                                          }d d d            n# 1 swxY w Y   nB|sd}t          | d|          5 }|                                }d d d            n# 1 swxY w Y   |S )NxmlrbzUTF-8r)encoding)openr   parsegetrootread)hrefr   r   filedatas        r   default_loaderr!   W   s   ~~$ 	5$T**2244D	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5 	5  	H$h/// 	499;;D	 	 	 	 	 	 	 	 	 	 	 	 	 	 	Ks#   'A

AA,BBBc                     |d}n|dk     rt          d|z            t          | d          r|                                 } |t          }t	          | |||t                                 d S )Nr   z;expected non-negative depth or None for 'max_depth', got %rr   )
ValueErrorhasattrr   r!   _includeset)elemloaderbase_url	max_depths       r   r   r   t   sv    			QVYbbccctY ||~~~T68Y66666r   c                 N   d}|t          |           k     r| |         }|j        t          k    r|                    d          }|rt	          ||          }|                    dd          }|dk    r||v rt          d|z            |dk    rt          d|z            |                    |            |||          }	|	t          d|d|          t          j        |	          }	t          |	|||d	z
  |           |
                    |           |j        r|	j        pd
|j        z   |	_        |	| |<   n|dk    r} ||||                    d                    }
|
t          d|d|          |j        r
|
|j        z  }
|r| |d	z
           }	|	j        pd
|
z   |	_        n| j        pd
|
z   | _        | |= t          d|z            |j        t          k    rt          d|j        z            t          |||||           |d	z  }|t          |           k     d S d S )Nr   r   r   r   zrecursive include of %sz5maximum xinclude depth reached when including file %szcannot load z as r    textr   z)unknown parse type in xi:include tag (%r)z0xi:fallback tag must be child of xi:include (%r))lentagXINCLUDE_INCLUDEgetr   r
   r   addcopyr&   removetailr.   XINCLUDE_FALLBACK)r(   r)   r*   r+   _parent_hrefsier   r   noder.   s              r   r&   r&      s   	A
c$ii--G5$$$55==D /x..EE'5))E~~=((+,E,LMMM>>6ORVVX X X!!$'''vdE**<++26$$>   yvtY]MJJJ$$T***6 ;!%bAF :DIQ&vdE155+<+<==<++26$$>   6 #AFND 9!9D!%bD 8DII!%bD 8DIG'?%G   U'''#BQUJ   Q)]CCC	Qg c$ii------r   )N)r4   r-   r   urllib.parser   XINCLUDEr1   r7   DEFAULT_MAX_INCLUSION_DEPTHSyntaxErrorr
   r   r!   r   r&   r   r   r   <module>r@      s   f                   .i' z)    	 	 	 	 	 	 	 		 	 	 	 	#4 	 	 	 	 	 	 	: 17 7 7 76 6 6 6 6r   