Ë Ãq¿�î`@ãóÚ—dZddlZddlZddlZddlZddlmZmZmZm Z m Z m Z m Z m Z ddlmZmZddlmcmZej(j+d«ej(j+dd«Zdej(d<ddlmcmZddlZe�eej(d<eej$_eej(d<Gd„d ej4«Zd e eefd e eeffd „Zd ed efd„Z d ed efd„Z!d ed efd„Z"d ed efd„Z# d#de eefded e efd„Z$deded efd„Z%d$deded e e eeffd„Z& d%dede e eefdede e'de e'de eded ed e eeffd!„Z(gd"¢Z)y)&zR A unified loader module for ElementTree with a safe parser and helper functions. éN)ÚcastÚAnyÚCounterÚIteratorÚOptionalÚMutableMappingÚTupleÚUnioné)ÚElementProtocolÚDocumentProtocolzxml.etree.ElementTreeÚ _elementtreecóP‡—eZdZdZd deedeeddfˆfd„ Zd„Zd„Z d „Z ˆxZ S) Ú SafeXMLParseraU An XMLParser that forbids entities processing. Drops the *html* argument that is deprecated since version 3.4. :param target: the target object called by the `feed()` method of the parser, that defaults to `TreeBuilder`. :param encoding: if provided, its value overrides the encoding specified in the XML file. NÚtargetÚencodingÚreturncóÒ•—tt|� ||¬«|j|j_|j |j_|j|j_ y)N)rr) ÚsuperrÚ__init__Úentity_declarationÚparserÚEntityDeclHandlerÚunparsed_entity_declarationÚUnparsedEntityDeclHandlerÚexternal_entity_referenceÚExternalEntityRefHandler)ÚselfrrÚ __class__s €ú6/usr/lib/python3.12/site-packages/elementpath/etree.pyrzSafeXMLParser.__init__8sMø€Ü Œm˜TÑ+°6ÀHÐ+ÔMØ(,×(?Ñ(?ˆ� ‰ Ô%Ø04×0PÑ0Pˆ� ‰ Ô-Ø/3×/MÑ/Mˆ� ‰ Õ,ócóJ—tjdj|««‚)Nz)Entities are forbidden (entity_name={!r})©Ú PyElementTreeÚ ParseErrorÚformat)rÚ entity_nameÚis_parameter_entityÚvalueÚbaseÚ system_idÚ public_idÚ notation_names r rz SafeXMLParser.entity_declaration>s#€ä×&Ñ&Ø 7× >Ñ >¸{Ó Kó ð r!cóJ—tjdj|««‚)Nz2Unparsed entities are forbidden (entity_name={!r})r#)rr'r*r+r,r-s r rz)SafeXMLParser.unparsed_entity_declarationDs#€ä×&Ñ&Ø @× GÑ GÈ Ó Tó ð r!cóL—tjdj||««‚)NzBExternal references are forbidden (system_id={!r}, public_id={!r})r#)rÚcontextr*r+r,s r rz'SafeXMLParser.external_entity_referenceJs&€Ü×&Ñ&ð ß$™f Y° Ó:ó ð r!)NN) Ú__name__Ú __module__Ú __qualname__Ú__doc__rrÚstrrrrrÚ __classcell__)rs@r rr.s>ø„ññN˜x¨™}ðN¸xȹ}ðNÐX\õNò  ò  ö  r!rÚ xml_sourcercój—t|t«rtj|«}ntj|«}t t j«¬«} t j|d|«D]}|S |S#t j$r#}t|«}d|vsd|vsd|vr‚Yd}~|Sd}~wwxYw)N)r)ÚstartzEntities are forbiddenzUnparsed entities are forbiddenz!External references are forbidden) Ú isinstancer5ÚioÚStringIOÚBytesIOrr$Ú TreeBuilderÚ iterparser%)r7ÚresourceÚ safe_parserÚ_ÚerrÚmsgs r Ú defuse_xmlrEQs¶€ä�*œcÔ"Ü—;‘;˜zÓ*‰ä—:‘:˜jÓ)ˆä¤}×'@Ñ'@Ó'BÔC€KðÜ×(Ñ(¨°:¸{ÖKˆAØ ð ÐñLð Ðøô × #Ñ #òÜ�#‹hˆØ # sÑ *Ø1°SÑ8Ø3°sÑ:Ø ó;ð ÐûðúsÁA<Á8A<Á<B2ÂB-Â-B2ÚobjcóR—t|d«xrt|d«xr t|d«S)NÚtagÚattribÚtext©Úhasattr©rFs r Úis_etree_elementrNgs'€Ü �3˜Ó Ò R¤7¨3°Ó#9Ò R¼gÀcÈ6Ó>RÐRr!cóP—t|«xrt|d«xr t|d«S)NÚ getparentÚnsmap)rNrLrMs r Úis_lxml_etree_elementrRks&€Ü ˜CÓ Ò X¤W¨S°+Ó%>Ò XÄ7È3ÐPWÓCXÐXr!cóR—t|d«xrt|d«xr t|d«S)NÚgetrootÚparseÚiterrKrMs r Úis_etree_documentrWos'€Ü �3˜ Ó "Ò U¤w¨s°GÓ'<Ò UÄÈÈfÓAUÐUr!cóP—t|«xrt|d«xr t|d«S)NÚxpathÚxslt)rWrLrMs r Úis_lxml_etree_documentr[ss%€Ü ˜SÓ !Ò T¤g¨c°7Ó&;Ò TÄÈÈVÓ@TÐTr!ÚelemÚ normalizec#ó|K—|rÑt|d«r!tt|«j«}|€y|}|j «D]Ž}t |j «rŒ|j�,||ur|jj«n |j–—|j€Œ^||usŒc||vr|jj«n |j–—Œ�y|j «D]R}t |j «rŒ|j�|j–—|j€Œ@||usŒE|j–—ŒTy­w)NrT) rLrr rTrVÚcallablerHrJÚstripÚtail)r\r]ÚrootÚes r Úetree_iter_stringsrdwsôèø€ñÜ �4˜Ô #ÜÔ(¨$Ó/×7Ñ7Ó9ˆD؈|ØàˆDà—‘–ˆAܘŸ™ŒØØ�v‰vÐ!Ø()¨T© �a—f‘f—l‘l”n°q·v±vÒ=Ø�v‰vÑ! a¨t¢mØ()¨T© �a—f‘f—l‘l”n°q·v±vÓ=ñ ð—‘–ˆAܘŸ™ŒØØ�v‰vÐ!Ø—f‘f’ Ø�v‰vÑ! a¨t¢mØ—f‘f“ ñ ùs‚BD<Â"D<Â'A>D<Ä&D<Ä+D<Úe1Úe2cóÊ—|j|jk7ry|jxsdj«|jxsdj«k7ry|jxsdj«|jxsdj«k7ry|j|jk7ryt |«t |«k7ryt d„t||«D««S)NFÚc3ó:K—|]\}}t||«–—Œy­w©N)Úetree_deep_equal)Ú.0Úc1Úc2s r Ú z#etree_deep_equal..žsèø€ÐB±k©F¨B°Ô  B×'±kùs‚)rHrJr`rarIÚlenÚallÚzip)rerfs r rkrk“s¬€Ø ‡v�v�—‘ÒØØ �'‰'Š-�R× Ñ Ó  R§W¡W¢]°×$9Ñ$9Ó$;Ò ;ØØ �'‰'Š-�R× Ñ Ó  R§W¡W¢]°×$9Ñ$9Ó$;Ò ;ØØ �‰�b—i‘iÒ ØÜ ˆR‹”C˜“GÒ ØÜ ÑB´c¸"¸b´kÓBÓ BÐBr!Úpathc#ó>K—||f–—d}ttt«}ttt«}|D�]}t|j«rf|jj dk(r|dz }||›d|›d�f–—ŒD t t|j«}||xxdz cc<||›d|›d ||›d�f–—Œ|jjd «rd |j›�}nd |j›�}|d k(rd |›�}n|rd j||f«}n|}||jxxdz cc<|d||j›d�z }t||«Ed{–—†�Œy#t$r1|j€J‚|jjdd¬«d}YŒûwxYw7ŒE­w)NrÚCommentr z /comment()[Ú]Ú )Úmaxsplitz/processing-instruction(z)[Ú{ÚQzQ{}Ú/Ú[)rrr5r_rHr1rrÚAttributeErrorrJÚsplitÚ startswithÚjoinÚetree_iter_paths) r\rsÚ comment_nodesÚpi_nodesÚ positionsÚchildÚnamerHÚ child_paths r r�r�¡s¶èø€ð �ˆ*ÒØ€MÜ”x¤‘}Ñ%Ó'€HÜœ¤™ Ñ&Ó(€IäˆÜ �E—I‘IÔ Ø�y‰y×!Ñ! YÒ.Ø Ñ"� Ø ˜v [°°¸qÐAÐAÒAØð <ÜœC §¡Ó.�ð �T‹N˜aÑ ‹NؘD˜6Ð!9¸$¸¸rÀ(È4Á.ÐAQÐQRÐSÐSÒ SØ à �9‰9× Ñ  Ô $Ø�e—i‘i�[�/‰Cà˜%Ÿ)™)˜Ð%ˆCà �3Š;ؘS˜E˜‰JÙ ØŸ™ 4¨ +Ó.‰JàˆJà�%—)‘)Ó Ñ!ÓØ˜˜) E§I¡IÑ.Ð/¨qÐ1Ñ1ˆ ä# E¨:Ó6×6Ò6ñAøô"ò <Ø—z‘zÐ-Ð-Ð-Ø—z‘z×'Ñ'¨°aÐ'Ó8¸Ñ;’ð <úð. 7ús7‚A?FÂEÂB9FÅFÅFÅ7FÆFÆFÆFÚ namespacesÚindentÚ max_linesÚspaces_for_tabÚxml_declarationrÚmethodc 󢇇‡‡‡—dtdtfˆˆˆfd„ Št|«st|›d�«‚t|tj «rt}n(t |d«st}ntjd«}|r}t |d«sq|jd«} |j«D]9\} } | sŒ tjd| «rŒ |j| | «| | k(sŒ8d } Œ;| r|jd| «|j|||¬ «} t| t «r| j#d «} |�| j%d d |z«} | j'd«r)|dur| j)«dd Šnh| j)«ŠnW|rE|j+«dk7r2dj-|«gЉj/| j)««n| j)«Š‰r:‰dj1«s'‰j3d«‰r‰dj1«sŒ'‰r |dk(s‰s8|s6|dk(rdj5‰«Sdj5‰«j7|«Sd t9ˆfd„t;t=‰d««D««z} t=‰«dkDr& d t9d„‰ddD««z}t9|| «Šn| xŠ}t=‰«t=‰«z Š|�&t=‰«|dzkDr‰d ||dzgdzz‰dd zŠ|dk(rdj5ˆfd„‰D««Sdj5ˆfd„‰D««j7|«S#t>$rd}YŒ¥wxYw)u Serialize an Element tree to a string. :param elem: the Element instance. :param namespaces: is an optional mapping from namespace prefix to URI. Provided namespaces are registered before serialization. Ignored if the provided *elem* argument is a lxml Element instance. :param indent: the base line indentation. :param max_lines: if truncate serialization after a number of lines (default: do not truncate). :param spaces_for_tab: number of spaces for replacing tab characters. For default tabs are replaced with 4 spaces, provide `None` to keep tab characters. :param xml_declaration: if set to `True` inserts the XML declaration at the head. :param encoding: if "unicode" (the default) the output is a string, otherwise it’s binary. :param method: is either "xml" (the default), "html" or "text". :return: a Unicode string. Úlinercó\•—|s|S|j‰«r‰dk\r|‰dS‰‰d|zS‰|zS)Nr)r)r�r‰Ú min_indentr9s €€€r Úreindentz etree_tostring..reindentæsCø€Ù؈KØ �_‰_˜ZÔ (Ø#(¨A¢:�4˜˜�<Ð H°6¸%¸&°>ÀDÑ3HÐ Hà˜D‘=Ð r!z is not an ElementrQz lxml.etreerhzns\d+$N)rr�zutf-8Ú rwzéÿÿÿÿrJÚ c3ó:•K—|]}‰d|dk7sŒ|–—Œy­w)r•rwN©)rlÚkÚliness €r roz!etree_tostring..s$øèø€ÐTÑ'< !ÀÀbÁ È!Á ÐPSÓ@SœAÑ'<ùsƒ”éc3ódK—|](}tt|««D]}||dk7sŒ |–—ŒŒ*y­w)rwN)Úrangerp)rlr�r™s r roz!etree_tostring..!s1èø€ð%Ù)�d´5¼¸T»Ö3C¨aÀtÈAÁwÐRUÃ~”Ð3C�™kùs‚$0§ 0z...c3ó.•K—|] }‰|«–—Œy­wrjr˜©rlr�r’s €r roz!etree_tostring..1søèø€Ð:±E¨D™ $Ÿ±Eùóƒc3ó.•K—|] }‰|«–—Œy­wrjr˜rŸs €r roz!etree_tostring..2søèø€Ð6±¨‘X˜d—^±ùr ) r5rNÚ TypeErrorr:r$ÚElementrLÚ ElementTreeÚ importlibÚ import_moduleÚgetÚitemsÚreÚmatchÚregister_namespaceÚtostringÚbytesÚdecodeÚreplacerÚ splitlinesÚlowerr&Úextendr`Úpopr€ÚencodeÚminr�rpÚ ValueError)r\rˆr‰rŠr‹rŒrr�Ú etree_moduleÚdefault_namespaceÚprefixÚuriÚxml_textÚ last_indentÚ child_indentršr‘r’r9s ` @@@@r Úetree_tostringr¾Ìs+ü€ð4!”sð!œs÷!ô ˜DÔ !ܘ4˜(Ð"4Ð5Ó6Ð6Ü �Dœ-×/Ñ/Ô 0Ü$‰ Ü �T˜7Ô #Ü"‰ ä ×.Ñ.¨|Ó<ˆ áœ' $¨Ô0Ø&ŸN™N¨2Ó.ÐØ%×+Ñ+Ö-‰KˆF�CÚœbŸh™h y°&Õ9Ø×/Ñ/°¸Ô<ØÐ+Ó+Ø(,Ñ%ð .ñ Ø × +Ñ +¨BÐ0AÔ Bà×$Ñ$ T°HÀVÐ$ÓL€HÜ�(œEÔ"Ø—?‘? 7Ó+ˆàÐ!Ø×#Ñ# D¨#°Ñ*>Ó?ˆà×ј8Ô$Ø ˜eÑ #Ø×'Ñ'Ó)¨!¨"Ð-‰Eà×'Ñ'Ó)‰EÙ ˜XŸ^™^Ó-°Ò:Ø6×=Ñ=¸hÓGÐHˆØ � ‰ �X×(Ñ(Ó*Õ+à×#Ñ#Ó%ˆñ ˜˜b™ Ÿ™Ô)Ø � ‰ �"Œ ñ ˜˜b™ Ÿ™Õ)ñ �F˜fÒ$©V¹IØ �yÒ Ø—9‘9˜UÓ#Ð #Ø�y‰y˜Ó×&Ñ& xÓ0Ð0àœÓT¤u¬S°°r±«^Ô'<ÓTÓTÑT€KÜ ˆ5ƒz�A‚~ð Ø¤ñ%Ø# A b™kó%ó"ñˆLô ˜ {Ó3‰ à$/Ð/ˆ �\ä � ‹Oœc &›kÑ )€EàФ U£¨i¸!©mÒ!;Ø�j�yÐ! \°EÑ%9Ð$:¸QÑ$>Ñ>ÀÀrÀsÀÑKˆà�9ÒØ�y‰yÓ:±EÓ:Ó:Ð:Ø �9‰9Ó6±Ó6Ó 6× =Ñ =¸hÓ GÐGøôò ØŠLð úsÊMÍ MÍ M) r¤r$rrErNrRrWr[rdrkr�r¾)F)Ú.)NrhNéNr”Úxml)*r4Úsysr©r;r¥Útypingrrrrrrr r Ú protocolsr r Úxml.etree.ElementTreeÚetreer¤Úmodulesr³Ú_cmodr$Ú xml.etreerÁÚ XMLParserrr5r­rEÚboolrNrRrWr[rdrkr�Úintr¾Ú__all__r˜r!r ÚrÎsZðñó Û Û Û÷÷óç8÷,Ð+؇ � ‡�Ð'Ô(Ø � ‰ �‰˜¨Ó-€ð#€‡ � ˆNÑß-Ð-Ûð ÐØ"'€C‡K�K�ÑØ#€‡ � ÔØ'2€‡ � Ð #Ñ$ô  �M×+Ñ+ô  ðF˜5  e Ñ,ð°°s¸E°zÑ1Bóð,S˜#ðS $óSðY˜sðY tóYðV˜3ðV 4óVðU ðU¨óUð */ñ˜UÐ#3°_Ð#DÑEðØ"&ðØ3;¸C±=óð8 C˜ð C¨oð CÀ$ó Cñ(7˜?ð(7°#ð(7Ø �E˜/¨3Ð.Ñ/Ñ 0ó(7ðXEIØ!#Ø.2Ø34Ø59Ø#,Ø!&ñfH˜ðfHØ'¨°s¸C°xÑ(@ÑAðfHàðfHð' s™mðfHð$,¨C¡=ð fHð %-¨T¡Nð fHð !ð fHððfHð,1°°e°Ñ+<ófHòR 1�r!