�
�(�g� � � � d dl Z ddlmZ d dlmZ dZedz Zedz ZdZ G d � d
e � Z
G d� de
� Zdd
�Zddefd�Z
d� Zy)� N� )�ElementTree)�urljoinz!{http://www.w3.org/2001/XInclude}�include�fallback� c � � e Zd Zy)�FatalIncludeErrorN��__name__�
__module__�__qualname__� � �//usr/lib/python3.12/xml/etree/ElementInclude.pyr
r
C � � �r r
c � � e Zd Zy)�LimitedRecursiveIncludeErrorNr r r r r r G r r r c � � |dk( r:t | d� 5 }t j |� j � }d d d � |S |sd}t | d|�� 5 }|j � }d d d � |S # 1 sw Y S xY w# 1 sw Y S xY w)N�xml�rbzUTF-8�r)�encoding)�openr �parse�getroot�read)�hrefr r �file�datas r �default_loaderr! W s� � ���~�
�$��
� 5���$�$�T�*�2�2�4�D� 5� �K� ��H�
�$��h�
/� �4��9�9�;�D� ��K� 5� �K�� ��K�s �$A-�A:�-A7�:Bc � � |�d}n|dk rt d|z � �t | d� r| j � } |�t }t | |||t � � y )N���r 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 sW � ���� � �Q���V�Yb�b�c�c��t�Y���|�|�~��
�~����T�6�8�Y���6r c � � d}|t | � k �r�| | }|j t k( �r�|j d� }|rt ||� }|j dd� }|dk( r�||v rt d|z � �|dk( rt
d|z � �|j |� |||� } | �t d|�d|��� �t j | � } t | |||d z
|� |j |� |j r"| j xs d
|j z | _ | | |< |