+
    Ĝip!                        R t ^ RIHt  ^ RIHt ^ RIHt Rt
]
R,           t]
R,           t]
R,           t^t ! R R	]P                  4      t ! R
 R]4      tRR ltRR ltR tRR]3R ltRR]R3R ltR#   ] d    ^ RIHt ^ RI	Ht  Lti ; i)a  
Limited XInclude support for the ElementTree package.

While lxml.etree has full support for XInclude (see
`etree.ElementTree.xinclude()`), this module provides a simpler, pure
Python, ElementTree compatible implementation that supports a simple
form of custom URL resolvers.
)etree)urljoin)urlopenz!{http://www.w3.org/2001/XInclude}includefallback*c                       ] tR t^KtRtR# )FatalIncludeError N__name__
__module____qualname____firstlineno____static_attributes__r
       \/Users/mibo/.openclaw/workspace/.venv-ak/lib/python3.14/site-packages/lxml/ElementInclude.pyr	   r	   K       r   r	   c                       ] tR t^OtRtR# )LimitedRecursiveIncludeErrorr
   Nr   r
   r   r   r   r   O   r   r   r   Nc                     \        V R 4      pVR8X  d&   \        P                  ! V4      P                  4       pM+VP	                  4       pV'       g   RpVP                  V4      pVP                  4        V# )rbxmlutf-8)openr   parsegetrootreaddecodeclose)hrefr   encodingfiledatas   &&&  r   default_loaderr$   `   s[    dD~{{4 ((*yy{H{{8$JJLKr   c                    VR 8X  d'   \         P                  ! W4      P                  4       pV# RV 9   d   \        V 4      pM\	        V R4      pVP                  4       pVP                  4        V'       g   RpVP                  V4      pV# )r   z://r   r   )r   r   r   r   r   r   r   r   )r    r   r!   parserr#   fs   &&&&  r   _lxml_default_loaderr(   q   st    ~{{4(002 K D=AT4 Avvx		H{{8$Kr   c                    a  RV 3R llpV# )Nc                    < S! WV4      # Nr
   )r    r   r!   r&   loaders   &&&&r   load_wrap_et_loader.<locals>.load   s    d8,,r   NNr
   )r,   r-   s   f r   _wrap_et_loaderr0      s    -Kr   c                 f   Vf   RpMV^ 8  d   \        RV,          4      hVf_   \        V R4      '       d   T pV P                  4       p MV P                  4       p\        VR4      '       d   VP                  P
                  pM"\        V R4      '       d   V P                  4       p \        WW#4       R # )Nz;expected non-negative depth or None for 'max_depth', got %rr   docinfo)
ValueErrorhasattrr   getroottreer2   URL_include)elemr,   base_url	max_depthtrees   &&&& r   r   r      s    		QVYbbcc4##D<<>D##%D4##||''H	y	!	!||~T8/r   c           	         Ve   \        V4      pM\        pVf   \        4       pV P                  4       P                  p\        V P                  \        4      4      pV EFw  pVP                  \        8X  Ed   \        W(P                  R4      4      p	VP                  RR4      p
VP                  4       pV
R8X  d   W9   d   \        RV	,          4      hV^ 8X  d   \        RV	,          4      hV! WVR7      pVf   \        RV	: RV
: 24      h\        WW^,
          V	0V,          4      pVP                   '       d-   VP                   ;'       g    R	VP                   ,           Vn        Vf   Vu # VP#                  W4       EK%  V
R
8X  d   V! WVP                  R4      R7      pVf   \        RV	: RV
: 24      hVP%                  4       pVe$   VP                   ;'       g    R	V,           Vn        MEVf   Vu # VP&                  ;'       g    R	V,           VP                   ;'       g    R	,           Vn        VP)                  V4       EK  \        RV
,          4      hVP                  \*        8X  dL   VP                  4       pVe5   VP                  \        8w  d   \        RVP                  ,          4      hEK[  EK^  \        RVP                  ,          4      h	  V # )Nr    r   r   z recursive include of %r detectedz5maximum xinclude depth reached when including file %s)r&   zcannot load z as  textr!   )r!   z)unknown parse type in xi:include tag (%r)z0xi:fallback tag must be child of xi:include (%r)z0Invalid element found in XInclude namespace (%r))r0   r(   setr6   r&   listiterXINCLUDE_ITER_TAGtagXINCLUDE_INCLUDEr   get	getparentr	   r   r8   tailreplacegetpreviousr?   removeXINCLUDE_FALLBACK)r9   r,   r:   r;   _parent_hrefsload_includer&   include_elementser    r   parentnoder?   predecessors   &&&&&          r   r8   r8      s{   &v.+&&F		#$& 55$$8UU6]3DEE'5)E[[]F~(+:TA  >6ORVVX X#D?<+26>   dMD6MCYZ666!%bAFF :DI>Kq'&#D!%%
:KL<+26>   mmo*(3(8(8(>(>B$'FK$^K#);;#4#4""<""MFKa '?%G  UU''[[]F!fjj4D&D'FN  'E!
 $BQUUJ e j Kr   r+   r/   )__doc__lxmlr   urlparser   urllib2r   ImportErrorurllib.parseurllib.requestXINCLUDErE   rL   rC   DEFAULT_MAX_INCLUSION_DEPTHLxmlSyntaxErrorr	   r   r$   r(   r0   r   r8   r
   r   r   <module>r^      s   X '  /i' z) sN    	-- 		#4 	"
"&0 10( 2$Do  '$&'s   A5 5B
B