ó
    ¤%jÄH ã                   óê4  • S SK r S SKrS SKr " S S\5      rS rS r " S S\5      r " S S	\5      r " S
 S\5      r	 " S S\5      r
 " S S5      r " S S\5      r " S S\5      r " S S5      r " S S5      r " S S5      r " S S5      rS rS rS rSrS rS!rS"rSrS rS!rS"rS# r " S$ S%5      r " S& S'5      r " S( S)5      r  " S* S+5      r!S, r" " S- S.5      r#S/ r$/ r%S0 r&S1 r'S2 r(S3 r)S4 r*S5 r+S6 r,S7 r-S8 r.S9 r/S: r0S; r1S< r2S= r3S> r4S? r5S@ r6SA r7SB r8SC r9SD r:SE r;SF r<SG r=SH r>SI r?SJ r@SK rASL rBSM rCSN rDSO rESP rFSQ rGSR rHSS rIST rJSU rKSV rLSW rMSX rNSY rOSZ rPS[ rQS\ rRS] rSS^ rTS_ rUS` rVSa rWSb rXSc rYSd rZSe r[Sf r\Sg r]Sh r^Si r_Sj r`Sk raSl rbSm rcSn rdSo reSp rfSq rgSr rhSs riSt rjSu rkSv rlSw rmSx rnSy roSz rpS{ rqS| rrS} rsS~ rtS ruS€ rvS� rwS‚ rxSƒ ryS„ rzS… r{S† r|S‡ r}Sˆ r~S‰ rSŠ r€S‹ r�SŒ r‚S� rƒSŽ r„S� r…S� r†S‘ r‡S’ rˆS“ r‰S” rŠS• r‹S– rŒS— r�S˜ rŽS™ r�Sš r�S› r‘Sœ r’S� r“Sž r”SŸ r•S  r–S¡ r—S¢ r˜S£ r™S¤ ršS¥ r›S¦ rœS§ r�S¨ ržS© rŸSª r S« r¡S¬ r¢S­ r£S® r¤S¯ r¥S° r¦S± r§S² r¨S³ r©S´ rªSµ r«S¶ r¬S· r­S¸ r®S¹ r¯Sº r°S» r±S¼ r²S½ r³S¾ r´S¿ rµSÀ r¶SÁ r·SÂ r¸SÃ r¹SÄ rºSÅ r»SÆ r¼SÇ r½SÈ r¾SÉ r¿SÊ rÀSË rÁSÌ rÂSÍ rÃSÎ rÄSÏ rÅSÐ rÆSÑ rÇSÒ rÈSÓ rÉSÔ rÊSÕ rËSÖ rÌS× rÍSØ rÎSÙ rÏSÚ rÐSÛ rÑSÜ rÒSÝ rÓSÞ rÔSß rÕSà rÖSá r×Sâ rØSã rÙSä rÚSå rÛSæ rÜSç rÝSè rÞSé rßSê ràSë ráSì râSí rãSî räSï råSð ræSñ rçSò rèSó réSô rêSõ rëSö rìS÷ ríSø rîSù rïSú rðSû rñSü ròSý róSþ rôSÿ rõGS  röGS r÷GS røGS rùGS rúGS rûGS rüGS rýGS rþGS	 rÿGS
 Gr GS GrGS GrGS GrGS GrGS GrGS GrGS GrGS GrGS Gr	GS Gr
GS GrGS GrGS GrGS GrGS GrGS GrGS GrGS GrGS GrGS GrGS GrGS  GrGS! GrGS" GrGS# GrGS$ GrGS% GrGS& GrGS' GrGS( GrGS) GrGS* Gr GS+ Gr!GS, Gr"GS- Gr#GS. Gr$GS/ Gr%GS0 Gr&GS1 Gr'GS2 Gr(GS3 Gr)GS4 Gr*GS5 Gr+GS6 Gr,GS7 Gr-GS8 Gr.GS9 Gr/GS: Gr0GS; Gr1GS< Gr2GS= Gr3GS> Gr4GS? Gr5GS@ Gr6GSA Gr7GSB Gr8GSC Gr9GSD Gr:GSE Gr;GSF Gr<GSG Gr=GSH Gr>GSI Gr?GSJ Gr@GSK GrAGSL GrBGSM GrCGSN GrDGSO GrEGSP GrFGSQ GrGGSR GrHGSS GrIGST GrJGSU GrKGSV GrLGSW GrMGSX GrNGSY GrOGSZ GrPGS[ GrQGS\ GrRGS] GrSGS^ GrTGS_ GrUGS` GrVGSa GrWGSb GrXGSc GrYGSd GrZGSe Gr[GSf Gr\GSg Gr]GSh Gr^GSi Gr_GSj Gr`GSk GraGSl GrbGSm GrcGSn GrdGSo GreGSp GrfGSq GrgGSr GrhGSs GriGSt GrjGSu GrkGSv GrlGSw GrmGSx GrnGSy GroGSz GrpGS{ GrqGS| GrrGS} GrsGS~ GrtGS GruGS€ GrvGS� GrwGS‚ GrxGSƒ GryGS„ GrzGS… Gr{GS† Gr|GS‡ Gr}GSˆ Gr~GS‰ GrGSŠ Gr€GS‹ Gr�GSŒ Gr‚GS� GrƒGSŽ Gr„GS� Gr…GS� Gr†GS‘ Gr‡GS’ GrˆGS“ Gr‰GS” GrŠGS• Gr‹GS– GrŒGS— Gr�GS˜ GrŽGS™ Gr� " GSš GS›\5      Gr� " GSœ GS�G\�5      Gr‘ " GSž GSŸ\5      Gr’ " GS  GS¡G\�5      Gr“ " GS¢ GS£G\�5      Gr” " GS¤ GS¥5      Gr• " GS¦ GS§G\�5      Gr– " GS¨ GS©G\�5      Gr— " GSª GS«G\�5      Gr˜ " GS¬ GS­5      Gr™ " GS® GS¯G\�5      Grš " GS° GS±\5      Gr› " GS² GS³\5      Grœ " GS´ GSµ5      Gr� " GS¶ GS·5      Grž " GS¸ GS¹5      GrŸ " GSº GS»\!5      Gr  " GS¼ GS½5      Gr¡ " GS¾ GS¿5      Gr¢ " GSÀ GSÁ\ 5      Gr£ " GSÂ GSÃ5      Gr¤ " GSÄ GSÅ\#5      Gr¥ " GSÆ GSÇ5      Gr¦ " GSÈ GSÉ\5      Gr§ " GSÊ GSË5      Gr¨ " GSÌ GSÍ5      Gr©S GrªSGr«S Gr¬S!Gr­S Gr®SGr¯S Gr°SGr±S Gr²S!Gr³S"Gr´GSÎGrµGSÏGr¶SGr·S Gr¸S!Gr¹S"GrºSGr»S Gr¼S!Gr½S"Gr¾S Gr¿SGrÀS GrÁS!GrÂS"GrÃGSÎGrÄGSÏGrÅGSÐGrÆGSÑGrÇGSÒGrÈGSÓGrÉGSÔGrÊGSÕGrËGSÖGrÌGS×GrÍGSØGrÎGSÙGrÏGSÚGrÐGSÛGrÑGSÜGrÒGSÝGrÓGSÞGrÔGSßGrÕGSàGrÖGSáGr×GSâGrØGSãGrÙGSäGrÚGSåGrÛGSæGrÜGSçGrÝGSèGrÞGSéGrßGSêGràGSëGráGSìGrâGSíGrãGSîGräGSïGråGSðGræGSñGrçGSòGrèGSóGréGSôGrêGSõGrëGSöGrìGS÷GríGSøGrîS GrïSGrðS GrñS!GròS"GróGSÎGrôGSÏGrõGSÐGröGSÑGr÷GSÒGrøGSÓGrùGSÔGrúGSÕGrûGSÖGrüGS×GrýGSØGrþGSÙGrÿSGr S GrS!GrS"GrGSÎGrGSÏGrSGrS GrS"GrGSÑGr	GSÙGr
GSéGrGSùGrGSúGrS GrSGrS GrS"GrS GrSGrS GrS!GrS"GrGSÎGrGSÏGrGSÐGrGSÑGrGSÒGrGSÓGrGSÔGrGSÕGrGSÖGrGS×Gr GSØGr!GSÙGr"GSÚGr#GSÛGr$GSÜGr%GSÝGr&GSÞGr'GSßGr(GSàGr)GSáGr*GSâGr+GSãGr,GSäGr-GSåGr.GSæGr/GSçGr0GSèGr1GSéGr2GSêGr3GSëGr4GSìGr5GSíGr6GSîGr7GSïGr8GSðGr9GSñGr:GSòGr;GSóGr<GSôGr=GSõGr>GSöGr?GS÷Gr@GSûGrAGSüGrBGSýGrCGSþGrDGSÿGrEGS GrFGSGrGGSGrHGSGrIGSGrJGSGrKGSGrLGSGrMGSGrNGS	GrOGS
GrPGSGrQGSùGrRGSGrSGSGrTGSGrUGSGrVGSGrWGSGrXGSGrYGSGrZGSGr[GSGr\GSGr]GSGr^GSGr_GSGr`GSGraGSGrbGSGrcGSGrdGSGreGSGrfGS GrgGS!GrhGS"GriGS#GrjGS$GrkGS%GrlGS&GrmGS'GrnGS(GroGS)GrpGS*GrqGS+GrrGS,GrsGS-GrtGS.GruGS/GrvGS0GrwGS1GrxGS2GryGS3GrzGS4Gr{GS5Gr|GS6Gr}GS7Gr~GS8GrGS9Gr€GS:Gr�GS;Gr‚GS<GrƒGS=Gr„GS>Gr…GS?Gr†GS@Gr‡GSAGrˆGSBGr‰GSCGrŠGSDGr‹GSEGrŒGSFGr�GSGGrŽGSHGr�GSIGr�GSJGr‘GSKGr’GSLGr“GSMGr”GSNGr•GSOGr–GSPGr—GSQGr˜GSRGr™GSSGršGSTGr›GSUGrœGSVGr�GSWGržGSXGrŸGSYGr GSZGr¡GS[Gr¢GS\Gr£GS]Gr¤GS^Gr¥GS_Gr¦GS`Gr§GSaGr¨GSbGr©GScGrªGSdGr«GSeGr¬GSfGr­GSgGr®GShGr¯GSiGr°GSjGr±GSkGr²GSlGr³GSmGr´GSnGrµGSoGr¶GSpGr·GSqGr¸GSrGr¹GSsGrºGStGr»GSuGr¼GSvGr½GSwGr¾GSxGr¿GSyGrÀGSzGrÁGS{GrÂGS|GrÃGS}GrÄGS~GrÅGSGrÆGS€GrÇGS�GrÈGS‚GrÉGSƒGrÊGS„GrËGS…GrÌGS†GrÍGS‡GrÎGSˆGrÏGS‰GrÐGSŠGrÑGS‹GrÒGSŒGrÓGS�GrÔGSŽGrÕGS�GrÖGS�Gr×GS‘GrØGS’GrÙGS“GrÚGS”GrÛGS•GrÜGS–GrÝGS—GrÞGS˜GrßGS™GràGSšGráGS›GrâGSœGrãGS�GräGSžGråGSŸGræGS GrçGS¡GrèGS¢GréGS£GrêGS¤GrëGS¥GrìGS¦GríGS§GrîGS¨GrïGS©GrðGSªGrñGS«GròGS¬GróGS­GrôGS®GrõGS¯GröGS°Gr÷GS±GrøGS²GrùGS³GrúGS´GrûGSµGrüGS¶GrýGS·GrþGS¸GrÿGS¹Gr GSºGrGS»GrGS¼GrGS½GrGS¾GrGS¿GrGSÀGrGSÁGrGSÂGr	GSÃGr
GSÄGrGSÅGrGSÆGrGSÇGrGSÈGrGSÉGrGSÊGrGSËGrGSÌGrGSÍGrGSÎGrGSÏGrGSÐGrGSÑGrGSÒGrGSÓGrGSÔGrGSÕGrGSÖGrGS×GrGSØGrGSÙGr GSÚGr!GSÛGr"GSÜGr#GSÝGr$GSÞGr%GSßGr&GSàGr'GSáGr(GSâGr)GSãGr*GSäGr+GSåGr,GSæGr-GSçGr.GSèGr/GSéGr0GSêGr1GSëGr2GSìGr3GSíGr4GSîGr5GSïGr6GSðGr7GSñGr8GSòGr9GSóGr:GSôGr;GSõGr<GSöGr=GS÷Gr>GSøGr?GSùGr@GSúGrAGSûGrBGSüGrCGSýGrDGSþGrEGSÿGrFGS GrGGSGrHGSGrIGSGrJGSGrKGSGrLGSGrMGSGrNGSGrOGS	GrPGS
GrQGSGrRGSGrSGSGrTGSGrUGSGrVGSGrWGSGrXGSGrYGSGrZGSGr[GSGr\GSGr]GSGr^GSGr_GSGr`GSGraGSGrbGSGrcGSGrdGSGreGSGrfGS GrgGS!GrhGS"GriGS#GrjGS$GrkGS%GrlGS&GrmGS'GrnGS(GroGS)GrpGS*GrqGS+GrrGS,GrsGS-GrtGS.GruGS/GrvGS0GrwGS1GrxGS2GryGS3GrzGS4Gr{GS5Gr|GS6Gr}GS7Gr~GS8GrGS9Gr€GS:Gr�GS;Gr‚GS<GrƒGS=Gr„GS>Gr…GS?Gr†GS@Gr‡GSAGrˆGSBGr‰GSCGrŠGSDGr‹GSEGrŒGSFGr�GSGGrŽGSHGr�GSIGr�GSJGr‘GSKGr’GSLGr“GSMGr”GSNGr•GSOGr–GSPGr—GSQGr˜GSRGr™GSSGršGSTGr›GSUGrœGSVGr�GSWGržGSXGrŸGSYGr GSZGr¡GS[Gr¢GS\Gr£GS]Gr¤GS^Gr¥GS_Gr¦GS`Gr§GSaGr¨GSbGr©GScGrªGSdGr«GSeGr¬GSfGr­GSgGr®GShGr¯GSiGr°GSjGr±GSkGr²GSlGr³GSmGr´GSnGrµGSoGr¶GSpGr·GSqGr¸GSrGr¹GSsGrºGStGr»GSuGr¼GSvGr½GSwGr¾GSxGr¿GSyGrÀGSzGrÁGS{GrÂGS|GrÃGS}GrÄGS~GrÅGSGrÆGS€GrÇGS�GrÈGS‚GrÉGSƒGrÊGS„GrËGS…GrÌGS†GrÍGS‡GrÎGSˆGrÏGS‰GrÐGSŠGrÑGS‹GrÒGSŒGrÓGS�GrÔGSŽGrÕGS�GrÖGS�Gr×GS‘GrØGS’GrÙGS“GrÚGS”GrÛGS•GrÜGS–GrÝGS—GrÞGS˜GrßGS™GràGSšGráGS›GrâGSœGrãGS�GräGSžGråGSŸGræGS GrçGS¡GrèGS¢GréGS£GrêGS¤GrëGS¥GrìGS¦GríGS§GrîGS¨GrïGS©GrðGSªGrñGS«GròGS¬GróGS­GrôGS®GrõGS¯GröGS°Gr÷GS±GrøGS²GrùGS³GrúGS´GrûGSµGrüGS¶GrýGS·GrþGS¸GrÿGS¹Gr GSºGrGS»GrGS¼GrGS½GrGS¾GrGS¿GrGSÀGrGSÁGrGSÂGr	GSÃGr
GSÄGrGSÅGrGSÆGrGSÇGrGSÈGrGSÉGrGSÊGrGSËGrGSÌGrGSÍGrGSÎGrGSÏGrGSÐGrGSÑGrGSÒGrGSÓGrGSÔGrGSÕGrGSÖGrGS×GrGSØGrGSÙGr GSÚGr!GSÛGr"GSÜGr#GSÝGr$GSÞGr%GSßGr&GSàGr'GSáGr(GSâGr)GSãGr*GSäGr+GSåGr,GSæGr-GSçGr.GSèGr/GSéGr0GSêGr1GSëGr2GSìGr3GSíGr4GSîGr5GSïGr6GSðGr7GSñGr8GSòGr9GSóGr:GSôGr;GSõGr<GSöGr=GS÷Gr>GSøGr?GSùGr@GSúGrAGSûGrBGSüGrCGSýGrDGSþGrEGSÿGrFGS GrGGSGrHGSGrIGSGrJGSGrKGSGrLGSGrMGSGrNGSGrOGS	GrPGS
GrQGSGrRGSGrSGSGrTGSGrUGSGrVGSGrWGSGrXGSGrYGSGrZGSGr[GSGr\GSGr]GSGr^GSGr_GSGr`GSGraGSGrbGSGrcGSGrdGSGreGSGrfGS GrgGS!GrhGS"GriGS#GrjGS$GrkGS%GrlGS&GrmGS'GrnGS(GroGS)GrpGS*GrqGS+GrrGS,GrsGS-GrtGS.GruGS/GrvGS0GrwGS1GrxGS2GryGS3GrzGS4Gr{GS5Gr|GS6Gr}GS7Gr~GS8GrGS9Gr€GS:Gr�GS;Gr‚GS<GrƒGS=Gr„GS>Gr…GS?Gr†GS@Gr‡GSAGrˆGSBGr‰GSCGrŠGSDGr‹GSEGrŒGSFGr�GSGGrŽGSHGr�GSIGr�GSJGr‘GSKGr’GSLGr“GSMGr”GSNGr•GSOGr–GSPGr—GSQGr˜GSRGr™GSSGršGSTGr›GSUGrœGSVGr�GSWGržGSXGrŸGSYGr GSZGr¡GS[Gr¢GS\Gr£GS]Gr¤GS^Gr¥GS_Gr¦GS`Gr§GSaGr¨GSbGr©GScGrªGSdGr«GSeGr¬GSfGr­GSgGr®GShGr¯GSiGr°GSjGr±GSkGr²GSlGr³GSmGr´GSnGrµGSoGr¶GSpGr·GSqGr¸GSrGr¹GSsGrºGStGr»GSuGr¼GSvGr½GSwGr¾GSxGr¿GSyGrÀGSzGrÁGS{GrÂGS|GrÃGS}GrÄGS~GrÅGSGrÆGS€GrÇGS�GrÈGS‚GrÉGSƒGrÊGS„GrËGS…GrÌGS†GrÍGS‡GrÎGSˆGrÏGS‰GrÐGSŠGrÑGS‹GrÒGSŒGrÓGS�GrÔGSŽGrÕGS�GrÖGS�Gr×GS‘GrØGS’GrÙGS“GrÚGS”GrÛGS•GrÜGS–GrÝGS—GrÞGS˜GrßGS™GràGSšGráGS›GrâGSœGrãGS�GräGSžGråGSŸGræGS GrçGS¡GrèGS¢GréGS£GrêGS¤GrëGS¥GrìGS¦GríGS§GrîGS¨GrïS GrðSGrñS GròS!GróS"GrôGSÎGrõSGröS Gr÷S!GrøS"GrùSGrúS GrûS!GrüS"GrýS GrþSGrÿS Gr S!GrS"GrGSÎGrGSÏGrGSÐGrGSÑGrGSÒGrGSÓGrGSÔGr	GSÕGr
GSÖGrGS×GrGSØGrGSÙGrGSÚGrS GrSGrS GrSGrS GrS!GrS"GrGSÎGrGSÏGrGSÐGrGSÑGrGSÒGrGSÓGrGSÔGrGSÕGrGSÖGrGS×Gr GSØGr!GSÙGr"GSÚGr#GSÛGr$GSÜGr%GSÝGr&GSÞGr'S Gr(SGr)S Gr*SGr+S Gr,S!Gr-S"Gr.GSÎGr/GSÏGr0GSÐGr1GSÑGr2GSÒGr3GSÓGr4GSÔGr5GSÕGr6GSÖGr7GS×Gr8GSØGr9GSÙGr:GSÚGr;GSÛGr<GSÜGr=GSÝGr>GSÞGr?GSßGr@GSàGrAGSáGrBGSâGrCGSãGrDGSäGrEGSåGrFGSæGrGGSçGrHGSèGrIGSéGrJGSêGrKGS©GrLSGrMS GrNS!GrOS"GrPS GrQSGrRS GrSS!GrTS"GrUGSÎGrVGSÏGrWGSÐGrXGSÑGrYGSÒGrZGSÓGr[GSÔGr\GSÕGr]GSÖGr^GS×Gr_GSØGr`GSÙGraGSÚGrbGSÛGrcGSÜGrdGSÝGreGSÞGrfGSßGrgGSàGrhGSáGriGSâGrjGSãGrkS GrlSGrmS GrnS!GroS"GrpGSÎGrqS GrrSGrsS GrtS!GruGSøGrvS GrwSGrxS GryS!GrzS"Gr{GSÎGr|GSÏGr}GSÐGr~GSÑGrGSÒGr€GSÓGr�GSÔGr‚GSÕGrƒGSÖGr„GS×Gr…GSØGr†GSÙGr‡GSÚGrˆGSÛGr‰GSÜGrŠGSÝGr‹GSÞGrŒGSßGr�S GrŽSGr�S Gr�S!Gr‘S"Gr’GSÎGr“GSÏGr”GSÐGr•GSÑGr–GSÒGr—GSÓGr˜GSÔGr™GSÕGršGSÖGr›GS×GrœGSØGr�GSÙGržGSÚGrŸGSÛGr GSÜGr¡GSÝGr¢GSÞGr£GSßGr¤GSàGr¥GSáGr¦GSâGr§GSãGr¨GSäGr©GSåGrªGSæGr«GSçGr¬S Gr­SGr®S Gr¯S"Gr°GSÕGr±SGr²S Gr³SGr´S GrµS!Gr¶SGr·S"Gr¸GSéGr¹GSùGrºGSúGr»GSªGr¼GS«Gr½GS¬Gr¾GS­Gr¿GS®GrÀS GrÁSGrÂS GrÃS!GrÄS"GrÅGSÎGrÆGSÏGrÇGSÐGrÈGSÑGrÉGSÒGrÊGSÓGrËGSÔGrÌGSÕGrÍGSÖGrÎGS×GrÏGSØGrÐGSÙGrÑGSÚGrÒGSÛGrÓGSÜGrÔGSÝGrÕGSÞGrÖGSßGr×GSàGrØGSáGrÙGSâGrÚGSãGrÛGSäGrÜGSåGrÝGSæGrÞGSçGrßGSèGràGSéGráGSêGrâGSëGrãGSìGräGSíGråGSîGræGSïGrçGSðGrèS GréSGrêS GrëS!GrìSGríS GrîS!GrïS"GrðGSÎGrñGSÏGròGSÐGróGSÑGrôGSÒGrõGSÓGröSGr÷S GrøS"GrùGSÑGrúGSªGrûGSMGrüGS…GrýS GrþSGrÿS Gr S!GrS"GrGSÎGrGSÏGrGSÐGrSGrS GrS!GrS"Gr	GSÎGr
GSÏGrGSÐGrGSÑGrGSÒGrGSÓGrGSÔGrGSÕGrGSÖGrGS×GrGSØGrGSÙGrGSÚGrGSÛGrGSÜGrGSÝGrGSÞGrGSßGrGSàGrGSáGrGSâGrGSãGrGSmGr GSnGr!GSoGr"GSpGr#GSqGr$GSrGr%GSsGr&GStGr'GSuGr(GSvGr)GSwGr*GSxGr+GSGr,GSGr-SGr.S Gr/S Gr0SGr1S Gr2S!Gr3S"Gr4GSÎGr5S Gr6SGr7S Gr8SGr9S Gr:S"Gr;GSÑGr<GSÙGr=GSéGr>GSùGr?GSúGr@GSªGrAGSMGrBGS…GrCGS«GrDGS¯GrEGS¬GrFGS°GrGGS±GrHGS­GrIGS²GrJGS³GrKGS´GrLGSµGrMGS®GrNGS¶GrOS GrPSGrQS GrRS!GrSS"GrTSGrUS GrVS"GrWGSÑGrXGSÙGrYGSéGrZGSùGr[GSúGr\S Gr]SGr^S Gr_S!Gr`S GraSGrbS GrcS!GrdS"GreGSÎGrfGSÏGrgGSÐGrhGSÑGriGSÒGrjS GrkSGrlS GrmS!GrnS"GroGSÎGrpGSÏGrqGSÐGrrGSÑGrsGSÒGrtGSÓGruGSÔGrvGSÕGrwGSÖGrxGS×GryGSØGrzGSÙGr{GSÚGr|GSÛGr}GSÜGr~GSÝGrGSÞGr€GSßGr�GSàGr‚GSáGrƒGSâGr„g(·  é    Nc                   ó   • \ rS rSrSrg)ÚlibxmlErroré   © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__static_attributes__r   ó    Ú)/usr/lib/python3/dist-packages/libxml2.pyr   r      s   † šdr   r   c                 ó`   •  [        [        5      R                  nUS:w  a  US:w  a  gg!    g= f)NÚ	PyCObjectÚ	PyCapsuleé   r   )ÚtypeÚ_objr   )ÚobjÚns     r   ÚcheckWrapperr   	   s7   € ðÜ”‹J×ÑˆØ�Ó  [Ó 0Øð øðÙús   ‚%) ©-c                 óN   • [        U 5      nUS:  a  [        R                  U-
  $ U$ ©Nr   )ÚidÚsysÚmaxsize)ÚoÚis     r   Úpos_idr      s%   € Ü
ˆ1‹€AØ	ˆA‹Ü—‘˜a‘Ð Ø€Hr   c                   ó    • \ rS rSrS rS rSrg)Ú	treeErroré   c                 ó   • Xl         g ©N©Úmsg©Úselfr%   s     r   Ú__init__ÚtreeError.__init__   ó   € Ø�r   c                 ó   • U R                   $ r#   r$   ©r'   s    r   Ú__str__ÚtreeError.__str__!   ó   € Ø�x‰xˆr   r$   N©r   r   r	   r
   r(   r-   r   r   r   r   r    r       ó   † òõr   r    c                   ó    • \ rS rSrS rS rSrg)ÚparserErroré$   c                 ó   • Xl         g r#   r$   r&   s     r   r(   ÚparserError.__init__%   r*   r   c                 ó   • U R                   $ r#   r$   r,   s    r   r-   ÚparserError.__str__'   r/   r   r$   Nr0   r   r   r   r3   r3   $   r1   r   r3   c                   ó    • \ rS rSrS rS rSrg)ÚuriErroré*   c                 ó   • Xl         g r#   r$   r&   s     r   r(   ÚuriError.__init__+   r*   r   c                 ó   • U R                   $ r#   r$   r,   s    r   r-   ÚuriError.__str__-   r/   r   r$   Nr0   r   r   r   r:   r:   *   r1   r   r:   c                   ó    • \ rS rSrS rS rSrg)Ú
xpathErroré0   c                 ó   • Xl         g r#   r$   r&   s     r   r(   ÚxpathError.__init__1   r*   r   c                 ó   • U R                   $ r#   r$   r,   s    r   r-   ÚxpathError.__str__3   r/   r   r$   Nr0   r   r   r   rA   rA   0   r1   r   rA   c                   ó:   • \ rS rSrS rS rS rS	S jrS	S jrSr	g)
Ú	ioWrapperé6   c                 ó   • Xl         S U l        g r#   )Ú_ioWrapper__ioÚ_o©r'   r   s     r   r(   ÚioWrapper.__init__7   s   € ØŒ	Øˆ�r   c                 óh   • U R                   S :X  a  gU R                   R                  5         S U l         g©Néÿÿÿÿr   )rK   Úcloser,   s    r   Úio_closeÚioWrapper.io_close;   s)   € Ø�9‰9˜ÓØØ�	‰	�‰ÔØˆŒ	Ør   c                 óZ   • U R                   S :X  a  gU R                   R                  5         grP   )rK   Úflushr,   s    r   Úio_flushÚioWrapper.io_flushB   s"   € Ø�9‰9˜ÓØØ�	‰	�‰ÔØr   c                 ój  • U R                   S :X  a  g US:  a  U R                   R                  5       nU$ U R                   R                  U5      n U$ ! [         aU    SS KnUR                  " 5       S   n[        S[        U5      5        [        SU R                   5        U R                   S :H     gf = f)NrQ   r   r   zfailed to read from Python:zon IO:)rK   ÚreadÚ	Exceptionr   Úexc_infoÚprintr   )r'   ÚlenÚretr   Úes        r   Úio_readÚioWrapper.io_readH   sŸ   € Ø�9‰9˜ÓØð	Ø�Q‹wØ—i‘i—n‘nÓ&�ð ˆð —i‘i—n‘n SÓ)‘ð ˆøô ó 	ÛØ—’“˜qÑ!ˆAÜÐ/´°a³Ô9Ü�(˜DŸI™IÔ&Ø�I‰I˜ÒÙð	ús   “ A µA ÁAB2Â1B2c                 óœ   • U R                   S :X  a  gUS:  a  U R                   R                  U5      $ U R                   R                  X5      $ rP   )rK   Úwrite)r'   Ústrr^   s      r   Úio_writeÚioWrapper.io_writeZ   s>   € Ø�9‰9˜ÓØØ�‹7Ø—9‘9—?‘? 3Ó'Ð(Ø�y‰y�‰˜sÓ(Ð)r   )Ú__iorL   N)rQ   )
r   r   r	   r
   r(   rS   rW   ra   rf   r   r   r   r   rH   rH   6   s   † òòòô÷$*r   rH   c                   ó*   • \ rS rSrSS jrS rS rSrg)ÚioReadWrapperéa   c                 ód   • [         R                  X5        [        R                  " X5      U l        g r#   )rH   r(   Ú
libxml2modÚxmlCreateInputBufferrL   )r'   r   Úencs      r   r(   ÚioReadWrapper.__init__b   s"   € Ü×Ñ˜4Ô&Ü×1Ò1°$Ó<ˆ�r   c                 ó¨   • [        S5        U R                  5         U R                  S :w  a   [        R                  " U R                  5        S U l        g )NÚ__del__)r]   rS   rL   rm   ÚxmlFreeParserInputBufferr,   s    r   rr   ÚioReadWrapper.__del__f   s7   € ÜˆiÔØ�‰ŒØ�7‰7�d‹?Ü×/Ò/°·±Ô8Øˆ�r   c                 ó’   • U R                  5         U R                  S :w  a   [        R                  " U R                  5        S U l        g r#   )rS   rL   rm   rs   r,   s    r   rR   ÚioReadWrapper.closem   s/   € Ø�‰ŒØ�7‰7�d‹?Ü×/Ò/°·±Ô8Øˆ�r   ©rL   N©Ú )r   r   r	   r
   r(   rr   rR   r   r   r   r   rj   rj   a   s   † ô=òõr   rj   c                   ó0   • \ rS rSrSS jrS rS rS rSrg)	ÚioWriteWrapperés   c                 óÂ  • [        U5      [        S5      :X  a  [        S5        S U l        g [        U5      R                  S:X  aN  [        R
                  " U5      nUS :w  a  [        R                  X5        O[        R                  X5        Xl        g [        R
                  " U5      nUS :w  a  [        R                  X5        O[        R                  X5        Xl        g )Nry   zwrite io from a stringr   )	r   r]   r   r   rm   ÚoutputBufferGetPythonFilerH   r(   rL   )r'   r   ro   Úfiles       r   r(   ÚioWriteWrapper.__init__t   s¦   € ä�‹:œ˜b›Ó!ÜÐ*Ô+ØˆD�FÜ�$‹Z× Ñ  KÓ/Ü×7Ò7¸Ó=ˆDØ�t‹|Ü×"Ñ" 4Õ.ä×"Ñ" 4Ô.Ø�Gô ×7Ò7¸Ó=ˆDØ�t‹|Ü×"Ñ" 4Õ.ä×"Ñ" 4Ô.Ø�Gr   c                 ó’   • U R                  5         U R                  S :w  a   [        R                  " U R                  5        S U l        g r#   )rS   rL   rm   ÚxmlOutputBufferCloser,   s    r   rr   ÚioWriteWrapper.__del__Œ   s/   € à�‰ŒØ�7‰7�d‹?Ü×+Ò+¨D¯G©GÔ4Øˆ�r   c                 ó’   • U R                  5         U R                  S :w  a   [        R                  " U R                  5        S U l        g r#   ©rW   rL   rm   r‚   r,   s    r   rV   ÚioWriteWrapper.flush“   ó/   € Ø�‰ŒØ�7‰7�d‹?Ü×+Ò+¨D¯G©GÔ4Øˆ�r   c                 ó’   • U R                  5         U R                  S :w  a   [        R                  " U R                  5        S U l        g r#   r…   r,   s    r   rR   ÚioWriteWrapper.close™   r‡   r   )rL   r   Nrx   )	r   r   r	   r
   r(   rr   rV   rR   r   r   r   r   r{   r{   s   s   † ôò0òõr   r{   c                   ó�   • \ rS rSrSrS rS rS rS rS r	S r
S	 rS
 rS rS rS rS rS rS rS rS rS rS rS rS rSrg)ÚSAXCallbacké¢   zBase class for SAX handlersc                 ó   • g)z#called at the start of the documentNr   r,   s    r   ÚstartDocumentÚSAXCallback.startDocument¤   ó   € àr   c                 ó   • g)z!called at the end of the documentNr   r,   s    r   ÚendDocumentÚSAXCallback.endDocument¨   r�   r   c                 ó   • g)zwcalled at the start of every element, tag is the name of
the element, attrs is a dictionary of the element's attributesNr   )r'   ÚtagÚattrss      r   ÚstartElementÚSAXCallback.startElement¬   ó   € ð 	r   c                 ó   • g)zDcalled at the start of every element, tag is the name of
the elementNr   )r'   r•   s     r   Ú
endElementÚSAXCallback.endElement±   r™   r   c                 ó   • g)z‹called when character data have been read, data is the string
containing the data, multiple consecutive characters() callback
are possible.Nr   ©r'   Údatas     r   Ú
charactersÚSAXCallback.characters¶   ó   € ð 	r   c                 ó   • g)zŠcalled when CDATA section have been read, data is the string
containing the data, multiple consecutive cdataBlock() callback
are possible.Nr   rž   s     r   Ú
cdataBlockÚSAXCallback.cdataBlock¼   r¢   r   c                 ó   • g)z.called when an entity reference has been foundNr   ©r'   Únames     r   Ú	referenceÚSAXCallback.referenceÂ   r�   r   c                 ó   • g)z>called when potentially ignorable white spaces have been foundNr   rž   s     r   ÚignorableWhitespaceÚSAXCallback.ignorableWhitespaceÆ   r�   r   c                 ó   • g)zfcalled when a PI has been found, target contains the PI name and
data is the associated data in the PINr   )r'   ÚtargetrŸ   s      r   ÚprocessingInstructionÚ!SAXCallback.processingInstructionÊ   r™   r   c                 ó   • g)zBcalled when a comment has been found, content contains the commentNr   ©r'   Úcontents     r   ÚcommentÚSAXCallback.commentÏ   r�   r   c                 ó   • g)z¢called when a DOCTYPE declaration has been found, name is the
DTD name and externalID, systemID are the DTD public and system
identifier for that DTd if availableNr   ©r'   r¨   Ú
externalIDÚsystemIDs       r   ÚexternalSubsetÚSAXCallback.externalSubsetÓ   r¢   r   c                 ó   • g)z¢called when a DOCTYPE declaration has been found, name is the
DTD name and externalID, systemID are the DTD public and system
identifier for that DTD if availableNr   r¸   s       r   ÚinternalSubsetÚSAXCallback.internalSubsetÙ   r¢   r   c                 ó   • g)zôcalled when an ENTITY declaration has been found, name is the
entity name and externalID, systemID are the entity public and
system identifier for that entity if available, type indicates
the entity type, and content reports it's string contentNr   )r'   r¨   r   r¹   rº   r´   s         r   Ú
entityDeclÚSAXCallback.entityDeclß   ó   € ð
 	r   c                 ó   • g)z³called when an NOTATION declaration has been found, name is the
notation name and externalID, systemID are the notation public and
system identifier for that notation if availableNr   r¸   s       r   ÚnotationDeclÚSAXCallback.notationDeclæ   r¢   r   c                 ó   • g)z2called when an ATTRIBUTE definition has been foundNr   )r'   Úelemr¨   r   ÚdefiÚdefaultValueÚnameLists          r   ÚattributeDeclÚSAXCallback.attributeDeclì   r�   r   c                 ó   • g)z0called when an ELEMENT definition has been foundNr   )r'   r¨   r   r´   s       r   ÚelementDeclÚSAXCallback.elementDeclð   r�   r   c                 ó   • g)zæcalled when an unparsed ENTITY declaration has been found,
name is the entity name and publicId,, systemID are the entity
public and system identifier for that entity if available,
and notationName indicate the associated NOTATIONNr   )r'   r¨   ÚpublicIdrº   ÚnotationNames        r   rÁ   rÂ   ô   rÃ   r   c                 ó   • g r#   r   r&   s     r   ÚwarningÚSAXCallback.warningû   r�   r   c                 ó   • [        U5      er#   ©r3   r&   s     r   ÚerrorÚSAXCallback.errorÿ   ó   € Ü˜#ÓÐr   c                 ó   • [        U5      er#   rØ   r&   s     r   Ú
fatalErrorÚSAXCallback.fatalError  rÛ   r   r   N)r   r   r	   r
   Ú__doc__rŽ   r’   r—   r›   r    r¤   r©   r¬   r°   rµ   r»   r¾   rÁ   rÅ   rÌ   rÏ   rÕ   rÙ   rÝ   r   r   r   r   r‹   r‹   ¢   si   † Ù%òòòò
ò
òòòòò
òòòòòòòòòõr   r‹   c                   óô  • \ rS rSrS+S jrS rS rS rS rS r	S	 r
S
 rS rS rS rS r\rS rS rS rSSKr\" \R,                  SS 5      S:  a  S rOn\" \	SSS5      r\" \
SSS5      r\" \SSS5      r\" \SSS5      r\" \SSS5      r\" \SSS5      r\" \SSS5      r\" \SSS5      r \" \SSS5      r!\" \SSS5      r"S,S  jr#S,S! jr$    S-S" jr%    S-S# jr&S$ r'S% r(S& r)S' r*S( r+\*r,S) r-S*r.g).ÚxmlCorei  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚxmlCore.__init__  ó   € Ø�4‹<ØŒGØØˆ�r   c                 ó~   • US :X  a  g[         R                  " U R                  UR                  5      nUS :X  a  gUS:H  $ )NFT©rm   ÚcompareNodesEqualrL   ©r'   Úotherr_   s      r   Ú__eq__ÚxmlCore.__eq__  s:   € Ø�D‹=ØÜ×*Ò*¨4¯7©7°E·H±HÓ=ˆØ�$‹;ØØ�d‰{Ðr   c                 ót   • US :X  a  g[         R                  " U R                  UR                  5      nU(       + $ )NTræ   rè   s      r   Ú__ne__ÚxmlCore.__ne__  s-   € Ø�D‹=ØÜ×*Ò*¨4¯7©7°E·H±HÓ=ˆØŒwˆr   c                 óF   • [         R                  " U R                  5      nU$ r#   )rm   ÚnodeHashrL   ©r'   r_   s     r   Ú__hash__ÚxmlCore.__hash__  s   € Ü×!Ò! $§'¡'Ó*ˆØˆ
r   c                 ó"   • U R                  5       $ r#   )Ú	serializer,   s    r   r-   ÚxmlCore.__str__"  s   € Ø�~‰~ÓÐr   c                 óf   • [         R                  " U R                  5      nUS :X  a  g [        U5      $ r#   )rm   ÚparentrL   ÚnodeWraprñ   s     r   Ú
get_parentÚxmlCore.get_parent$  s*   € Ü×Ò §¡Ó(ˆØ�$‹;ØÜ˜‹}Ðr   c                 óf   • [         R                  " U R                  5      nUS :X  a  g [        U5      $ r#   )rm   ÚchildrenrL   rù   rñ   s     r   Úget_childrenÚxmlCore.get_children)  s*   € Ü×!Ò! $§'¡'Ó*ˆØ�$‹;ØÜ˜‹}Ðr   c                 óf   • [         R                  " U R                  5      nUS :X  a  g [        U5      $ r#   )rm   ÚlastrL   rù   rñ   s     r   Úget_lastÚxmlCore.get_last.  ó(   € Ü�oŠo˜dŸg™gÓ&ˆØ�$‹;ØÜ˜‹}Ðr   c                 óf   • [         R                  " U R                  5      nUS :X  a  g [        U5      $ r#   )rm   ÚnextrL   rù   rñ   s     r   Úget_nextÚxmlCore.get_next3  r  r   c                 ób   • [         R                  " U R                  5      nUS :X  a  g [        US9$ ©N©r   )rm   Ú
propertiesrL   ÚxmlAttrrñ   s     r   Úget_propertiesÚxmlCore.get_properties8  s+   € Ü×#Ò# D§G¡GÓ,ˆØ�$‹;ØÜ˜CÑ Ð r   c                 óf   • [         R                  " U R                  5      nUS :X  a  g [        U5      $ r#   )rm   ÚprevrL   rù   rñ   s     r   Úget_prevÚxmlCore.get_prev=  r  r   c                 óB   • [         R                  " U R                  5      $ r#   ©rm   ÚxmlNodeGetContentrL   r,   s    r   Úget_contentÚxmlCore.get_contentB  s   € Ü×+Ò+¨D¯G©GÓ4Ð4r   c                 óB   • [         R                  " U R                  5      $ r#   )rm   r¨   rL   r,   s    r   Úget_nameÚxmlCore.get_nameE  ó   € Ü�Š˜tŸw™wÓ'Ð'r   c                 óB   • [         R                  " U R                  5      $ r#   )rm   r   rL   r,   s    r   Úget_typeÚxmlCore.get_typeG  r  r   c                 ó¨   • [         R                  " U R                  5      nUS :X  a$  U R                  S;   a  [	        U R                  S9$ g [	        US9$ )N)Údocument_xmlÚdocument_htmlr  )rm   ÚdocrL   r   ÚxmlDocrñ   s     r   Úget_docÚxmlCore.get_docI  sE   € Ü�nŠn˜TŸW™WÓ%ˆØ�$‹;Ø�y‰yÐ=Ó=Ü 4§7¡7Ñ+Ð+àÜ˜3ÑÐr   r   é   gš™™™™™@c                 ój  • US:X  a2  [         R                  " U R                  5      nUS :X  a  g [        U5      $ US:X  a0  [         R                  " U R                  5      nUS :X  a  g [        US9$ US:X  a2  [         R                  " U R                  5      nUS :X  a  g [        U5      $ US:X  a2  [         R                  " U R                  5      nUS :X  a  g [        U5      $ US:X  a2  [         R                  " U R                  5      nUS :X  a  g [        U5      $ US:X  a2  [         R                  " U R                  5      nUS :X  a  g [        U5      $ US:X  a   [         R                  " U R                  5      $ US	:X  a   [         R                  " U R                  5      $ US
:X  a   [         R                  " U R                  5      $ US:X  ac  [         R                  " U R                  5      nUS :X  a4  U R                  S:X  d  U R                  S:X  a  [        U R                  S9$ g [        US9$ [        U5      e)Nrø   r  r  rý   r  r  r  r´   r¨   r   r#  r!  r"  )rm   rø   rL   rù   r  r  rý   r  r  r  r  r¨   r   r#  r$  ÚAttributeError)r'   Úattrr_   s      r   Ú__getattr__ÚxmlCore.__getattr__W  sÊ  € Ø�xÓÜ ×'Ò'¨¯©Ó0�Ø˜$“;ØÜ “}Ð$Ø˜Ó%Ü ×+Ò+¨D¯G©GÓ4�Ø˜$“;ØÜ CÑ(Ð(Ø˜Ó#Ü ×)Ò)¨$¯'©'Ó2�Ø˜$“;ØÜ “}Ð$Ø˜“Ü —o’o d§g¡gÓ.�Ø˜$“;ØÜ “}Ð$Ø˜“Ü —o’o d§g¡gÓ.�Ø˜$“;ØÜ “}Ð$Ø˜“Ü —o’o d§g¡gÓ.�Ø˜$“;ØÜ “}Ð$Ø˜Ó"Ü!×3Ò3°D·G±GÓ<Ð<Ø˜“Ü!—’ t§w¡wÓ/Ð/Ø˜“Ü!—’ t§w¡wÓ/Ð/Ø˜“Ü —n’n T§W¡WÓ-�Ø˜$“;Ø—y‘y NÓ2°d·i±iÀ?Ó6RÜ%¨4¯7©7Ñ3Ð3à#Ü 3Ñ'Ð'Ü  Ó&Ð&r   zParent nodezFirst child nodezLast sibling nodezNext sibling nodezPrevious sibling nodezList of propertieszContent of this nodez	Node namez	Node typez!The document this node belongs toc                 óD   • [         R                  " U R                  X5      $ r#   )rm   ÚserializeNoderL   )r'   ÚencodingÚformats      r   rõ   ÚxmlCore.serialize—  s   € Ü×'Ò'¨¯©°ÓBÐBr   c                 óF   • [         R                  " U R                  XU5      $ r#   )rm   Ú
saveNodeTorL   )r'   r   r/  r0  s       r   ÚsaveToÚxmlCore.saveTo™  s   € Ü×$Ò$ T§W¡W¨d¸fÓEÐEr   c                 óÀ   • U(       a  U Vs/ s H  oUR                   PM     nn[        R                  " U R                  5       R                   UUS:g  UUS:g  5      $ s  snf r   )rL   rm   ÚxmlC14NDocDumpMemoryr%  )r'   ÚnodesÚ	exclusiveÚprefixesÚwith_commentsr   s         r   Ú
c14nMemoryÚxmlCore.c14nMemory©  sY   € ö
 Ù#(Ó)¢5˜a—T”T¡5ˆEÐ)Ü×.Ò.Ø�L‰L‹N×ÑØØ˜‰NØØ˜QÑó ð 	 ùò *s   ŒAc                 óÂ   • U(       a  U Vs/ s H  ofR                   PM     nn[        R                  " U R                  5       R                   UUS:g  UUS:g  U5      $ s  snf r   )rL   rm   ÚxmlC14NDocSaveTor%  )r'   r   r8  r9  r:  r;  r   s          r   Ú
c14nSaveToÚxmlCore.c14nSaveTo¶  s\   € ö Ù#(Ó)¢5˜a—T”T¡5ˆEÐ)Ü×*Ò*Ø�L‰L‹N×ÑØØ˜‰NØØ˜QÑØóð 	ùò *s   ŒAc                 ó°   • U R                   nUS :X  a  g UR                  5       nUR                  U 5        UR                  U5      nUR	                  5         U$ r#   )r#  ÚxpathNewContextÚsetContextNodeÚ	xpathEvalÚxpathFreeContext)r'   Úexprr#  ÚctxtÚress        r   rE  ÚxmlCore.xpathEvalÊ  sP   € Ø�h‰hˆØ�$‹;ØØ×"Ñ"Ó$ˆØ×Ñ˜DÔ!Ø�n‰n˜TÓ"ˆØ×ÑÔØˆ
r   c                 ó$   • U R                  U5      $ r#   )rE  )r'   rG  s     r   Ú
xpathEval2ÚxmlCore.xpathEval2å  s   € Ø�~‰~˜dÓ#Ð#r   c                 ób   • [         R                  " U R                  U5      nUc  g[        US9nU$ )aå  
Remove a namespace definition from a node.  If href is None,
remove all of the ns definitions on that node.  The removed
namespaces are returned as a linked list.

Note: If any child nodes referred to the removed namespaces,
they will be left with dangling links.  You should call
renconciliateNs() to fix those pointers.

Note: This method does not free memory taken by the ns
definitions.  You will need to free it manually with the
freeNsList() method on the returns xmlNs object.
Nr  )rm   ÚxmlNodeRemoveNsDefrL   ÚxmlNs)r'   Úhrefr_   Ú_xmlCore__tmps       r   ÚremoveNsDefÚxmlCore.removeNsDefé  s/   € ô ×+Ò+¨D¯G©G°TÓ:ˆØ‰;˜dÜ˜3‘ˆØˆr   c                 ó   • [        U 5      $ r#   )ÚxmlCoreDepthFirstItertorr,   s    r   Úwalk_depth_firstÚxmlCore.walk_depth_firstþ  s   € Ü'¨Ó-Ð-r   c                 ó   • [        U 5      $ r#   )ÚxmlCoreBreadthFirstItertorr,   s    r   Úwalk_breadth_firstÚxmlCore.walk_breadth_first   s   € Ü)¨$Ó/Ð/r   c                 óœ   •  U R                   R                  R                  5         [        R                  " U R
                  5        g !    N%= fr#   )r#  Ú_ctxtrF  rm   Ú
xmlFreeDocrL   r,   s    r   ÚfreeÚxmlCore.free  s9   € ð	Ø�H‰H�N‰N×+Ñ+Ô-ô 	×Ò˜dŸg™gÕ&øð	Ùús   ‚$A ÁArw   r#   r   )Nr   Nr   )/r   r   r	   r
   r(   rê   rí   rò   r-   rú   rþ   r  r  r  r  r  Ú
getContentr  r  r%  r   ÚfloatÚversionr+  Úpropertyrø   rý   r  r  r  r  r´   r¨   r   r#  rõ   r4  r<  r@  rE  rL  rS  rW  r[  Ú__iter__r`  r   r   r   r   rá   rá     ss  † ôòòò
ò òò
ò
ò
ò
!ò
ò
5à€Jò(ò(ò ó ÙˆS�[‰[˜˜1ÐÓ Ó$ó-	'ñ^ ˜* d¨D°-Ó@ˆÙ˜L¨$°Ð6HÓIˆÙ˜ $¨Ð.AÓBˆÙ˜ $¨Ð.AÓBˆÙ˜ $¨Ð.EÓFˆÙ˜n¨d°DÐ:NÓOˆ
Ù˜;¨¨dÐ4JÓKˆÙ˜ $¨¨kÓ:ˆÙ˜ $¨¨kÓ:ˆÙ�w  dÐ,OÓPˆôCôFð" ØØ Ø!"ô	 ð ØØ Ø!"ôò(ò6$òò*.ò0à€Hõ'r   rá   c                   ó*   • \ rS rSrS rS rS r\rSrg)rV  é  c                 ó   • Xl         / U l        g r#   ©ÚnodeÚparents©r'   rk  s     r   r(   Ú!xmlCoreDepthFirstItertor.__init__  ó   € ØŒ	Øˆ�r   c                 ó   • U $ r#   r   r,   s    r   rf  Ú!xmlCoreDepthFirstItertor.__iter__  ó   € Øˆr   c                 óF  •  U R                   (       aN  U R                   nU R                  R                  U R                   5        U R                   R                  U l         U$  U R                  R	                  5       nUR                  U l         M�  ! [
         a    [        ef = fr#   )rk  rl  Úappendrý   ÚpopÚ
IndexErrorÚStopIterationr  ©r'   r_   rø   s      r   Ú__next__Ú!xmlCoreDepthFirstItertor.__next__  s�   € ØØ�y�yØ—i‘i�Ø—‘×#Ñ# D§I¡IÔ.Ø ŸI™I×.Ñ.�”	Ø�
ð$ØŸ™×)Ñ)Ó+�ð Ÿ™ˆDŒIñ øô ó $Ü#Ð#ð$úó   Á"B ÂB rj  N©	r   r   r	   r
   r(   rf  ry  r  r   r   r   r   rV  rV    s   † òòò$ð ƒDr   rV  c                   ó*   • \ rS rSrS rS rS r\rSrg)rZ  i&  c                 ó   • Xl         / U l        g r#   rj  rm  s     r   r(   Ú#xmlCoreBreadthFirstItertor.__init__'  ro  r   c                 ó   • U $ r#   r   r,   s    r   rf  Ú#xmlCoreBreadthFirstItertor.__iter__*  rr  r   c                 óF  •  U R                   (       aN  U R                   nU R                  R                  U R                   5        U R                   R                  U l         U$  U R                  R	                  5       nUR                  U l         M�  ! [
         a    [        ef = fr#   )rk  rl  rt  r  ru  rv  rw  rý   rx  s      r   ry  Ú#xmlCoreBreadthFirstItertor.__next__,  s   € ØØ�y�yØ—i‘i�Ø—‘×#Ñ# D§I¡IÔ.Ø ŸI™IŸN™N�”	Ø�
ð$ØŸ™×)Ñ)Ó+�ð Ÿ™ˆDŒIñ øô ó $Ü#Ð#ð$úr{  rj  Nr|  r   r   r   rZ  rZ  &  s   † òòò(ð ƒDr   rZ  c                 óB  • [         R                  " U 5      nUS:X  d  US:X  a	  [        U S9$ US:X  a	  [        U S9$ USS S:X  a	  [	        U S9$ US:X  a	  [        U S9$ US	:X  a	  [        U S9$ US
:X  a	  [        U S9$ US:X  a	  [        U S9$ US:X  a	  [        U S9$ [        U S9$ )NÚelementÚtextr  Ú	attributer   é   ÚdocumentÚ	namespaceÚ	elem_declÚattribute_declÚentity_declÚdtd)
rm   r   ÚxmlNoder  r$  rP  Ú
xmlElementÚxmlAttributeÚ	xmlEntityÚxmlDtd)r   r¨   s     r   rù   rù   =  s¹   € ä�?Š?˜1Ó€DØˆyÓ˜D F›NÜ˜A‰ÐØˆ{ÓÜ˜A‰ÐØˆAˆa€y�JÓÜ˜1‰~ÐØˆ{ÓÜ˜!‰}ÐØˆ{ÓÜ˜qÑ!Ð!ØÐÓÜ Ñ#Ð#Øˆ}ÓÜ˜aÑ Ð Øˆuƒ}Ü˜1‰~ÐÜ˜‰?Ðr   c                 óF  • [        U 5      nU[        / 5      :X  a  [        [        [        U 5      5      nU$ U[        S5      :X  a$  [        [        [        U 5      5      n[	        U5      $ U[        S5      :X  d  U[        S5      :X  d  U[        S5      :X  a  U $ [        U 5      $ )Nr   ry   r   g        )r   ÚlistÚmapÚxpathObjectRetÚtuplerù   )r   Úotyper_   s      r   r—  r—  R  s…   € Ü�‹G€EØ”�R“ÓÜ”3”~ qÓ)Ó*ˆØˆ
Ø	”$�r“(Ó	Ü”3”~ qÓ)Ó*ˆÜ�S‹zÐØ	”$�r“(Ó	˜e¤t¨A£wÓ.°%¼4À»9Ó2DØˆä˜‹{Ðr   c                 ó2   • [         R                  " XX#5      ng r#   )rm   ÚxmlRegisterXPathFunction)rH  r¨   Úns_uriÚfr_   s        r   ÚregisterXPathFunctionrž  b  s   € Ü
×
-Ò
-¨d¸&Ó
D�Cr   r   é   r'  é   c                 óˆ   • SSK nSUR                  ;  a  [        R                  " X5      nU$ SSKnUR                  X5      nU$ )ziRegister a Python written function to for error reporting.
The function is called back as f(ctx, error). r   NÚlibxslt)r   Úmodulesrm   ÚxmlRegisterErrorHandlerr¢  ÚregisterErrorHandler)r�  Úctxr   r_   r¢  s        r   r¥  r¥  x  sD   € ó Ø˜Ÿ™Ó#ä×0Ò0°Ó7ˆð €Jó 	Ø×*Ñ*¨1Ó1ˆØ€Jr   c                   ó6   • \ rS rSrS	S jrS rS rS rS rSr	g)
ÚparserCtxtCorei†  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚparserCtxtCore.__init__ˆ  rä   r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   ©rL   rm   ÚxmlFreeParserCtxtr,   s    r   rr   ÚparserCtxtCore.__del__Ž  ó&   € Ø�7‰7�d‹?Ü×(Ò(¨¯©Ô1Øˆ�r   c                 óF   • [         R                  " U R                  X5        g)zxRegister an error handler that will be called back as
f(arg,msg,severity,reserved).

@reserved is currently always None.N)rm   ÚxmlParserCtxtSetErrorHandlerrL   ©r'   r�  Úargs      r   ÚsetErrorHandlerÚparserCtxtCore.setErrorHandler“  s   € ô
 	×/Ò/°·±¸Õ>r   c                 óB   • [         R                  " U R                  5      $ )úLReturn (f,arg) as previously registered with setErrorHandler
or (None,None).)rm   ÚxmlParserCtxtGetErrorHandlerrL   r,   s    r   ÚgetErrorHandlerÚparserCtxtCore.getErrorHandlerš  s   € ô ×6Ò6°t·w±wÓ?Ð?r   c                 óD   • [         R                  " U R                  U5      $ )z(Register a local catalog with the parser)rm   ÚaddLocalCatalogrL   ©r'   Úuris     r   r¼  ÚparserCtxtCore.addLocalCatalogŸ  s   € ä×)Ò)¨$¯'©'°3Ó7Ð7r   rw   r#   )
r   r   r	   r
   r(   rr   r´  r¹  r¼  r   r   r   r   r¨  r¨  †  s   † ôòò
?ò@õ
8r   r¨  c                   ó$   • \ rS rSrS rSS jrSrg)ÚValidCtxtCorei¤  c                 ó   • g r#   r   ©r'   ÚargsÚkws      r   r(   ÚValidCtxtCore.__init__¦  ó   € Ør   Nc                 óH   • [         R                  " U R                  XU5        g)za
Register error and warning handlers for DTD validation.
These will be called back as f(msg,arg)
N)rm   ÚxmlSetValidErrorsrL   ©r'   Úerr_funcÚ	warn_funcr³  s       r   ÚsetValidityErrorHandlerÚ%ValidCtxtCore.setValidityErrorHandler©  s   € ô
 	×$Ò$ T§W¡W¨hÀ3ÕGr   r   r#   ©r   r   r	   r
   r(   rÍ  r   r   r   r   rÁ  rÁ  ¤  s   † ò÷Hr   rÁ  c                   ó$   • \ rS rSrS rSS jrSrg)ÚSchemaValidCtxtCorei±  c                 ó   • g r#   r   rÃ  s      r   r(   ÚSchemaValidCtxtCore.__init__³  rÇ  r   Nc                 óH   • [         R                  " U R                  XU5        g)zd
Register error and warning handlers for Schema validation.
These will be called back as f(msg,arg)
N)rm   ÚxmlSchemaSetValidErrorsrL   rÊ  s       r   rÍ  Ú+SchemaValidCtxtCore.setValidityErrorHandler¶  s   € ô
 	×*Ò*¨4¯7©7°HÈÕMr   r   r#   rÏ  r   r   r   rÑ  rÑ  ±  s   † ò÷Nr   rÑ  c                   ó$   • \ rS rSrS rSS jrSrg)ÚrelaxNgValidCtxtCorei¾  c                 ó   • g r#   r   rÃ  s      r   r(   ÚrelaxNgValidCtxtCore.__init__À  rÇ  r   Nc                 óH   • [         R                  " U R                  XU5        g)ze
Register error and warning handlers for RelaxNG validation.
These will be called back as f(msg,arg)
N)rm   ÚxmlRelaxNGSetValidErrorsrL   rÊ  s       r   rÍ  Ú,relaxNgValidCtxtCore.setValidityErrorHandlerÃ  s   € ô
 	×+Ò+¨D¯G©G°XÈ#ÕNr   r   r#   rÏ  r   r   r   rØ  rØ  ¾  s   † ò÷Or   rØ  c                 ó0   • U u  pEU" XQU[        U5      5      $ )z)Intermediate callback to wrap the locator)ÚxmlTextReaderLocator)Úxxx_todo_changemer%   ÚseverityÚlocatorr�  r³  s         r   Ú_xmlTextReaderErrorFuncrã  Ë  s   € à�G€QÙˆS�XÔ2°7Ó;Ó<Ð<r   c                   ó0   • \ rS rSrSS jrS rS rS rSrg)	ÚxmlTextReaderCoreiÐ  Nc                 ó:   • S U l         US :w  a  Xl        g S U l        g r#   )ÚinputrL   rM   s     r   r(   ÚxmlTextReaderCore.__init__Ò  s   € ØˆŒ
Ø�4‹< $œ vØˆ�r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   ©rL   rm   ÚxmlFreeTextReaderr,   s    r   rr   ÚxmlTextReaderCore.__del__×  r¯  r   c                 óž   • Uc#  [         R                  " U R                  SS5        g[         R                  " U R                  [        X45        g)zRRegister an error handler that will be called back as
f(arg,msg,severity,locator).N)rm   ÚxmlTextReaderSetErrorHandlerrL   rã  r²  s      r   ÚSetErrorHandlerÚ!xmlTextReaderCore.SetErrorHandlerÜ  s@   € ð ‰9Ü×3Ò3Ø—‘˜˜Tõ#ô ×3Ò3Ø—‘Ô/°°õ9r   c                 óR   • [         R                  " U R                  5      u  pUc  gU$ )r·  )NN)rm   ÚxmlTextReaderGetErrorHandlerrL   r²  s      r   ÚGetErrorHandlerÚ!xmlTextReaderCore.GetErrorHandleræ  s)   € ô ×7Ò7¸¿¹Ó@‰ˆØ‰9Øð ˆJr   ©rL   rç  r#   )	r   r   r	   r
   r(   rr   rï  ró  r   r   r   r   rå  rå  Ð  s   † ôò
ò
9õr   rå  c                  ó.   • [         R                  " 5         g r#   ©rm   ÚxmlPythonCleanupParserr   r   r   ÚcleanupParserrù  ó  s   € Ü×%Ò%Õ'r   c                 ó`   • S n[         R                  " U5        [        R                  U 5        g )Nc                 óN   • [        [        5       H  nU" U 5      nUc  M  Us  $    g r#   )ÚreversedÚ__input_callbacks)ÚURIÚcbr   s      r   ÚfindOpenCallbackÚ/registerInputCallback.<locals>.findOpenCallbackþ  s%   € ÜÔ,Ö-ˆBÙ�3“ˆAØ‹}Ø’ò .r   )rm   ÚxmlRegisterInputCallbackrý  rt  )Úfuncr   s     r   ÚregisterInputCallbackr  ý  s&   € òô
 ×'Ò'Ð(8Ô9Ü×Ñ˜TÕ"r   c                  ó¤   • [        [        5      S:”  a  [        R                  5         [        [        5      S:X  a  [        R                  " 5         g g r   )r^   rý  ru  rm   ÚxmlUnregisterInputCallbackr   r   r   ÚpopInputCallbacksr    s=   € ô ÔÓ Ó!Ü×ÑÔÜ
ÔÓ Ó"Ü×-Ò-Õ/ð #r   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )z8Create a parser context for an HTML in-memory document. z#htmlCreateMemoryParserCtxt() failedr  )rm   ÚhtmlCreateMemoryParserCtxtr3   Ú
parserCtxt©ÚbufferÚsizer_   s      r   r	  r	    s-   € ä
×
/Ò
/°Ó
=€CØ
�{œÐ%JÓKÐKÜ˜3ÑÐr   c                 ó2   • [         R                  " U 5      nU$ )zBSet and return the previous value for handling HTML omitted
tags. )rm   ÚhtmlHandleOmittedElem©Úvalr_   s     r   r  r    s   € ô ×
*Ò
*¨3Ó
/€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z0Check if an attribute is of content type Script )rm   ÚhtmlIsScriptAttribute©r¨   r_   s     r   r  r  %  s   € ä
×
*Ò
*¨4Ó
0€CØ€Jr   c                  óZ   • [         R                  " 5       n U c  [        S5      e[        U S9$ )ú.Allocate and initialize a new parser context. zhtmlNewParserCtxt() failedr  )rm   ÚhtmlNewParserCtxtr3   r
  ©r_   s    r   r  r  *  s+   € ä
×
&Ò
&Ó
(€CØ
�{œÐ%AÓBÐBÜ˜3ÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )z3parse an HTML in-memory document and build a tree. zhtmlParseDoc() failedr  )rm   ÚhtmlParseDocr3   r$  )Úcurr/  r_   s      r   r  r  0  s-   € ä
×
!Ò
! #Ó
0€CØ
�{œÐ%<Ó=Ð=Ü�sÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )z�parse an HTML file and build a tree. Automatic support for
ZLIB/Compress compressed document is provided by default if
 found at compile-time. zhtmlParseFile() failedr  )rm   ÚhtmlParseFiler3   r$  ©Úfilenamer/  r_   s      r   r  r  6  s/   € ô ×
"Ò
" 8Ó
6€CØ
�{œÐ%=Ó>Ð>Ü�sÑÐr   c                 ó^   • [         R                  " XX#5      nUc  [        S5      e[        US9$ )ú2parse an XML in-memory document and build a tree. zhtmlReadDoc() failedr  )rm   ÚhtmlReadDocr    r$  ©r  ÚURLr/  Úoptionsr_   s        r   r"  r"  >  s/   € ä
×
 Ò
  ¨8Ó
=€CØ
�{œÐ#9Ó:Ð:Ü�sÑÐr   c                 ó^   • [         R                  " XX#5      nUc  [        S5      e[        US9$ )z�parse an HTML from a file descriptor and build a tree. NOTE
that the file descriptor will not be closed when the reader
 is closed or reset. zhtmlReadFd() failedr  )rm   Ú
htmlReadFdr    r$  ©Úfdr$  r/  r%  r_   s        r   r'  r'  D  s1   € ô ×
Ò
 ¨Ó
;€CØ
�{œÐ#8Ó9Ð9Ü�sÑÐr   c                 ó^   • [         R                  " XU5      nUc  [        S5      e[        US9$ )ú6parse an XML file from the filesystem or the network. zhtmlReadFile() failedr  )rm   ÚhtmlReadFiler    r$  ©r  r/  r%  r_   s       r   r,  r,  L  s/   € ä
×
!Ò
! (°gÓ
>€CØ
�{œÐ#:Ó;Ð;Ü�sÑÐr   c                 ó`   • [         R                  " XX#U5      nUc  [        S5      e[        US9$ )r!  zhtmlReadMemory() failedr  )rm   ÚhtmlReadMemoryr    r$  ©r  r  r$  r/  r%  r_   s         r   r/  r/  R  s1   € ä
×
#Ò
# F°#ÀÓ
I€CØ
�{œÐ#<Ó=Ð=Ü�sÑÐr   c                 ó2   • [         R                  " U 5      nU$ )z7Determine if a given attribute is a boolean attribute. )rm   ÚhtmlIsBooleanAttrr  s     r   r2  r2  \  ó   € ä
×
&Ò
& tÓ
,€CØ€Jr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )zCreates a new HTML document zhtmlNewDoc() failedr  )rm   Ú
htmlNewDocr    r$  ©rþ  Ú
ExternalIDr_   s      r   r5  r5  a  s-   € ä
×
Ò
 Ó
0€CØ
�{œÐ#8Ó9Ð9Ü�sÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )zPCreates a new HTML document without a DTD node if @URI and
@ExternalID are None zhtmlNewDocNoDtD() failedr  )rm   ÚhtmlNewDocNoDtDr    r$  r6  s      r   r9  r9  g  s/   € ô ×
$Ò
$ SÓ
5€CØ
�{œÐ#=Ó>Ð>Ü�sÑÐr   c                 ó2   • [         R                  " U 5      nU$ )zþSet the default version of SAX used globally by the
library. By default, during initialization the default is
set to 2. Note that it is generally a better coding style
to use xmlSAXVersion() to set up the version explicitly for
 a given parsing context. )rm   ÚxmlSAXDefaultVersion©rd  r_   s     r   ÚSAXDefaultVersionr=  r  s   € ô ×
)Ò
)¨'Ó
2€CØ€Jr   c                  ó.   • [         R                  " 5         g)z$Initialize the default SAX2 handler N)rm   ÚxmlDefaultSAXHandlerInitr   r   r   ÚdefaultSAXHandlerInitr@  {  s   € ä×'Ò'Õ)r   c                  ó.   • [         R                  " 5         g©z#Initialize the default SAX handler N)rm   ÚdocbDefaultSAXHandlerInitr   r   r   rC  rC    ó   € ä×(Ò(Õ*r   c                  ó.   • [         R                  " 5         grB  )rm   ÚhtmlDefaultSAXHandlerInitr   r   r   rF  rF  ƒ  rD  r   c                 ó4   • [         R                  " XU5      nU$ )zÑAdd an entry in the catalog, it may overwrite existing but
different entries. If called before any other catalog
routine, allows to override the default shared catalog put
 in place by xmlInitializeCatalog(); )rm   ÚxmlCatalogAdd)r   ÚorigÚreplacer_   s       r   Ú
catalogAddrK  ‹  s   € ô
 ×
"Ò
" 4¨wÓ
7€CØ€Jr   c                  ó.   • [         R                  " 5         g)z0Free up all the memory associated with catalogs N)rm   ÚxmlCatalogCleanupr   r   r   ÚcatalogCleanuprN  “  ó   € ä× Ò Õ"r   c                  ó0   • [         R                  " 5       n U $ ©z1Convert all the SGML catalog entries as XML ones )rm   ÚxmlCatalogConvertr  s    r   ÚcatalogConvertrS  —  s   € ä
×
&Ò
&Ó
(€CØ€Jr   c                 óV   • U b  U R                  5         [        R                  " U 5        g)z7Dump all the global catalog content to the given file. N)rV   rm   ÚxmlCatalogDump)Úouts    r   ÚcatalogDumprW  œ  s   € à
�˜Ÿ	™	œÜ×Ò˜cÕ"r   c                 ó2   • [         R                  " U 5      nU$ )zhTry to lookup the catalog reference associated to a public
ID DEPRECATED, use xmlCatalogResolvePublic() )rm   ÚxmlCatalogGetPublic©ÚpubIDr_   s     r   ÚcatalogGetPublicr\  ¡  ó   € ô ×
(Ò
(¨Ó
/€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zhTry to lookup the catalog reference associated to a system
ID DEPRECATED, use xmlCatalogResolveSystem() )rm   ÚxmlCatalogGetSystem©ÚsysIDr_   s     r   ÚcatalogGetSystemrb  §  r]  r   c                 ó2   • [         R                  " U 5      nU$ ©z!Remove an entry from the catalog )rm   ÚxmlCatalogRemove©Úvaluer_   s     r   ÚcatalogRemoverh  ­  s   € ä
×
%Ò
% eÓ
,€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ ©z:Do a complete resolution lookup of an External Identifier )rm   ÚxmlCatalogResolve)r[  ra  r_   s      r   ÚcatalogResolverl  ²  ó   € ä
×
&Ò
& uÓ
4€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z>Try to lookup the catalog reference associated to a public
ID )rm   ÚxmlCatalogResolvePublicrZ  s     r   ÚcatalogResolvePublicrp  ·  ó   € ô ×
,Ò
,¨UÓ
3€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ ©z3Try to lookup the catalog resource for a system ID )rm   ÚxmlCatalogResolveSystemr`  s     r   ÚcatalogResolveSystemru  ½  ó   € ä
×
,Ò
,¨UÓ
3€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ ©z*Do a complete resolution lookup of an URI )rm   ÚxmlCatalogResolveURI©rþ  r_   s     r   ÚcatalogResolveURIr{  Â  s   € ä
×
)Ò
)¨#Ó
.€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zTUsed to set the debug level for catalog operation, 0
disable debugging, 1 enable it )rm   ÚxmlCatalogSetDebug)Úlevelr_   s     r   ÚcatalogSetDebugr  Ç  s   € ô ×
'Ò
'¨Ó
.€CØ€Jr   c                  ó.   • [         R                  " 5         g)zƒDo the catalog initialization. this function is not thread
safe, catalog initialization should preferably be done once
 at startup N)rm   ÚxmlInitializeCatalogr   r   r   ÚinitializeCatalogr‚  Í  s   € ô ×#Ò#Õ%r   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )zÖLoad the catalog and build the associated data structures.
This can be either an XML Catalog or an SGML Catalog It
will recurse in SGML CATALOG entries. On the other hand XML
 Catalogs are not handled recursively. zxmlLoadACatalog() failedr  )rm   ÚxmlLoadACatalogr    Úcatalog©r  r_   s     r   ÚloadACatalogr‡  Ó  s/   € ô
 ×
$Ò
$ XÓ
.€CØ
�{œÐ#=Ó>Ð>Ü˜ÑÐr   c                 ó2   • [         R                  " U 5      nU$ )zêLoad the catalog and makes its definitions effective for
the default external entity loader. It will recurse in SGML
CATALOG entries. this function is not thread safe, catalog
 initialization should preferably be done once at startup )rm   ÚxmlLoadCatalogr†  s     r   ÚloadCatalogrŠ  Ü  s   € ô
 ×
#Ò
# HÓ
-€CØ€Jr   c                 ó0   • [         R                  " U 5        g)zÄLoad the catalogs and makes their definitions effective for
the default external entity loader. this function is not
thread safe, catalog initialization should preferably be
 done once at startup N)rm   ÚxmlLoadCatalogs)Úpathsss    r   ÚloadCatalogsrŽ  ä  s   € ô
 ×Ò˜vÕ&r   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )z¼Load an SGML super catalog. It won't expand CATALOG or
DELEGATE references. This is only needed for manipulating
SGML Super Catalogs like adding and removing CATALOG or
 DELEGATE entries. z xmlLoadSGMLSuperCatalog() failedr  )rm   ÚxmlLoadSGMLSuperCatalogr    r…  r†  s     r   ÚloadSGMLSuperCatalogr‘  ë  s/   € ô
 ×
,Ò
,¨XÓ
6€CØ
�{œÐ#EÓFÐFÜ˜ÑÐr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )zcreate a new Catalog. zxmlNewCatalog() failedr  )rm   ÚxmlNewCatalogr    r…  )Úsgmlr_   s     r   Ú
newCatalogr•  ô  s-   € ä
×
"Ò
" 4Ó
(€CØ
�{œÐ#;Ó<Ð<Ü˜ÑÐr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )zcparse an XML file and build a tree. It's like
xmlParseFile() except it bypass all catalog lookups. zxmlParseCatalogFile() failedr  )rm   ÚxmlParseCatalogFiler3   r$  r†  s     r   ÚparseCatalogFiler˜  ú  s/   € ô ×
(Ò
(¨Ó
2€CØ
�{œÐ%CÓDÐDÜ�sÑÐr   c                 ó2   • [         R                  " U 5      nU$ )zLThis function is DEPRECATED. Use xmlIsBaseChar_ch or
xmlIsBaseCharQ instead )rm   ÚxmlIsBaseChar©Úchr_   s     r   Ú
isBaseCharr�    ó   € ô ×
"Ò
" 2Ó
&€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zFThis function is DEPRECATED. Use xmlIsBlank_ch or
xmlIsBlankQ instead )rm   Ú
xmlIsBlankr›  s     r   ÚisBlankr¡    ó   € ô ×
Ò
 Ó
#€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zDThis function is DEPRECATED. Use xmlIsChar_ch or xmlIsCharQ
instead )rm   Ú	xmlIsCharr›  s     r   ÚisCharr¥    s   € ô ×
Ò
˜rÓ
"€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z9This function is DEPRECATED. Use xmlIsCombiningQ instead )rm   ÚxmlIsCombiningr›  s     r   ÚisCombiningr¨    s   € ä
×
#Ò
# BÓ
'€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zFThis function is DEPRECATED. Use xmlIsDigit_ch or
xmlIsDigitQ instead )rm   Ú
xmlIsDigitr›  s     r   ÚisDigitr«    r¢  r   c                 ó2   • [         R                  " U 5      nU$ )zLThis function is DEPRECATED. Use xmlIsExtender_ch or
xmlIsExtenderQ instead )rm   ÚxmlIsExtenderr›  s     r   Ú
isExtenderr®  "  rž  r   c                 ó2   • [         R                  " U 5      nU$ )z;This function is DEPRECATED. Use xmlIsIdeographicQ instead )rm   ÚxmlIsIdeographicr›  s     r   ÚisIdeographicr±  (  s   € ä
×
%Ò
% bÓ
)€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zNThis function is DEPRECATED. Use xmlIsPubidChar_ch or
xmlIsPubidCharQ instead )rm   ÚxmlIsPubidCharr›  s     r   ÚisPubidCharr´  -  s   € ô ×
#Ò
# BÓ
'€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z&Convenient way to turn bool into text )rm   ÚxmlBoolToText)Úboolvalr_   s     r   Ú
boolToTextr¸  7  s   € ä
×
"Ò
" 7Ó
+€CØ€Jr   c                 óV   • U b  U R                  5         [        R                  " X5        g)z<Dumps information about the string, shorten it if necessary N)rV   rm   ÚxmlDebugDumpString)Úoutputre   s     r   ÚdebugDumpStringr¼  <  s   € àÑ˜6Ÿ<™<œ>Ü×!Ò! &Õ.r   c                 ó0   • [         R                  " X5        g)z6Print the xpath error to libxml default error channel N)rm   ÚxmlShellPrintXPathError)Ú	errorTyper³  s     r   ÚshellPrintXPathErrorrÀ  A  s   € ä×&Ò& yÕ6r   c                  ó.   • [         R                  " 5         g)zWFree the dictionary mutex. Do not call unless sure the
library is not in use anymore ! N)rm   ÚxmlDictCleanupr   r   r   ÚdictCleanuprÃ  I  ó   € ô ×ÒÕr   c                  ó0   • [         R                  " 5       n U $ )zDDo the dictionary mutex initialization. this function is
deprecated )rm   ÚxmlInitializeDictr  s    r   ÚinitializeDictrÇ  N  s   € ô ×
&Ò
&Ó
(€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )z[Registers an alias @alias for an encoding named @name.
Existing alias will be overwritten. )rm   ÚxmlAddEncodingAlias)r¨   Úaliasr_   s      r   ÚaddEncodingAliasrË  X  s   € ô ×
(Ò
(¨Ó
5€CØ€Jr   c                  ó.   • [         R                  " 5         g)zvCleanup the memory allocated for the char encoding support,
it unregisters all the encoding handlers and the aliases. N)rm   ÚxmlCleanupCharEncodingHandlersr   r   r   ÚcleanupCharEncodingHandlersrÎ  ^  s   € ô ×-Ò-Õ/r   c                  ó.   • [         R                  " 5         g)zUnregisters all aliases N)rm   ÚxmlCleanupEncodingAliasesr   r   r   ÚcleanupEncodingAliasesrÑ  c  rD  r   c                 ó2   • [         R                  " U 5      nU$ )z%Unregisters an encoding alias @alias )rm   ÚxmlDelEncodingAlias©rÊ  r_   s     r   ÚdelEncodingAliasrÕ  g  ó   € ä
×
(Ò
(¨Ó
/€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z-Lookup an encoding name for the given alias. )rm   ÚxmlGetEncodingAliasrÔ  s     r   ÚencodingAliasrÙ  l  rÖ  r   c                  ó.   • [         R                  " 5         g)z®Initialize the char encoding support, it registers the
default encoding supported. NOTE: while public, this
function usually doesn't need to be called in normal
 processing. N)rm   ÚxmlInitCharEncodingHandlersr   r   r   ÚinitCharEncodingHandlersrÜ  q  s   € ô
 ×*Ò*Õ,r   c                  ó.   • [         R                  " 5         g)z:Cleanup up the predefined entities table. Deprecated call N)rm   ÚxmlCleanupPredefinedEntitiesr   r   r   ÚcleanupPredefinedEntitiesrß  |  s   € ä×+Ò+Õ-r   c                  ó.   • [         R                  " 5         g)z0Set up the predefined entities. Deprecated call N)rm   ÚxmlInitializePredefinedEntitiesr   r   r   ÚinitializePredefinedEntitiesrâ  €  s   € ä×.Ò.Õ0r   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )z1Check whether this name is an predefined entity. zxmlGetPredefinedEntity() failedr  )rm   ÚxmlGetPredefinedEntityr    r’  r  s     r   ÚpredefinedEntityrå  „  s-   € ä
×
+Ò
+¨DÓ
1€CØ
�{œÐ#DÓEÐEÜ˜#ÑÐr   c                  ó.   • [         R                  " 5         g)z'Additional cleanup for multi-threading N)rm   ÚxmlCleanupGlobalsr   r   r   ÚcleanupGlobalsrè  Ž  rO  r   c                  ó.   • [         R                  " 5         g)z.Additional initialisation for multi-threading N)rm   ÚxmlInitGlobalsr   r   r   ÚinitGlobalsrë  ’  s   € ä×ÒÕr   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   ÚxmlThrDefDefaultBufferSize©Úvr_   s     r   ÚthrDefDefaultBufferSizerð  –  s   € Ü
×
/Ò
/°Ó
2€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   Ú'xmlThrDefDoValidityCheckingDefaultValuerî  s     r   Ú$thrDefDoValidityCheckingDefaultValueró  š  ó   € Ü
×
<Ò
<¸QÓ
?€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   Ú xmlThrDefGetWarningsDefaultValuerî  s     r   ÚthrDefGetWarningsDefaultValuer÷  ž  ó   € Ü
×
5Ò
5°aÓ
8€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   ÚxmlThrDefIndentTreeOutputrî  s     r   ÚthrDefIndentTreeOutputrû  ¢  ó   € Ü
×
.Ò
.¨qÓ
1€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   ÚxmlThrDefKeepBlanksDefaultValuerî  s     r   ÚthrDefKeepBlanksDefaultValuerÿ  ¦  ó   € Ü
×
4Ò
4°QÓ
7€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   Ú xmlThrDefLineNumbersDefaultValuerî  s     r   ÚthrDefLineNumbersDefaultValuer  ª  rø  r   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   ÚxmlThrDefLoadExtDtdDefaultValuerî  s     r   ÚthrDefLoadExtDtdDefaultValuer  ®  r   r   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   ÚxmlThrDefParserDebugEntitiesrî  s     r   ÚthrDefParserDebugEntitiesr	  ²  s   € Ü
×
1Ò
1°!Ó
4€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   Ú#xmlThrDefPedanticParserDefaultValuerî  s     r   Ú thrDefPedanticParserDefaultValuer  ¶  s   € Ü
×
8Ò
8¸Ó
;€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   ÚxmlThrDefSaveNoEmptyTagsrî  s     r   ÚthrDefSaveNoEmptyTagsr  º  s   € Ü
×
-Ò
-¨aÓ
0€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   Ú'xmlThrDefSubstituteEntitiesDefaultValuerî  s     r   Ú$thrDefSubstituteEntitiesDefaultValuer  ¾  rô  r   c                 ó2   • [         R                  " U 5      nU$ r#   )rm   ÚxmlThrDefTreeIndentStringrî  s     r   ÚthrDefTreeIndentStringr  Â  rü  r   c                  ó.   • [         R                  " 5         g)z@Cleanup the FTP protocol layer. This cleanup proxy
information. N)rm   ÚxmlNanoFTPCleanupr   r   r   ÚnanoFTPCleanupr  Ê  ó   € ô × Ò Õ"r   c                  ó.   • [         R                  " 5         g)zhInitialize the FTP protocol layer. Currently it just checks
for proxy information, and get the hostname N)rm   ÚxmlNanoFTPInitr   r   r   ÚnanoFTPInitr  Ï  rÄ  r   c                 ó4   • [         R                  " XX#U5        g)zˆSetup the FTP proxy information. This can also be done by
using ftp_proxy ftp_proxy_user and ftp_proxy_password
 environment variables. N)rm   ÚxmlNanoFTPProxy)ÚhostÚportÚuserÚpasswdr   s        r   ÚnanoFTPProxyr#  Ô  s   € ô ×Ò˜t¨4¸Õ>r   c                 ó0   • [         R                  " U 5        g)zÇ(Re)Initialize the FTP Proxy context by parsing the URL and
finding the protocol host port it indicates. Should be like
ftp://myproxy/ or ftp://myproxy:3128/ A None URL cleans up
 proxy information. N)rm   ÚxmlNanoFTPScanProxy©r$  s    r   ÚnanoFTPScanProxyr'  Ú  s   € ô
 ×"Ò" 3Õ'r   c                  ó.   • [         R                  " 5         g)z!Cleanup the HTTP protocol layer. N)rm   ÚxmlNanoHTTPCleanupr   r   r   ÚnanoHTTPCleanupr*  å  ó   € ä×!Ò!Õ#r   c                  ó.   • [         R                  " 5         g)zSInitialize the HTTP protocol layer. Currently it just
checks for proxy information N)rm   ÚxmlNanoHTTPInitr   r   r   ÚnanoHTTPInitr.  é  s   € ô ×ÒÕ r   c                 ó0   • [         R                  " U 5        g)zÊ(Re)Initialize the HTTP Proxy context by parsing the URL
and finding the protocol host port it indicates. Should be
like http://myproxy/ or http://myproxy:3128/ A None URL
 cleans up proxy information. N)rm   ÚxmlNanoHTTPScanProxyr&  s    r   ÚnanoHTTPScanProxyr1  î  s   € ô
 ×#Ò# CÕ(r   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )z8Creates a parser context for an XML in-memory document. zxmlCreateDocParserCtxt() failedr  )rm   ÚxmlCreateDocParserCtxtr3   r
  ©r  r_   s     r   ÚcreateDocParserCtxtr5  ù  s-   € ä
×
+Ò
+¨CÓ
0€CØ
�{œÐ%FÓGÐGÜ˜3ÑÐr   c                  ó.   • [         R                  " 5         g)zŠInitialization function for the XML parser. This is not
reentrant. Call once before processing in case of use in
 multithreaded programs. N)rm   ÚxmlInitParserr   r   r   Ú
initParserr8  ÿ  s   € ô ×ÒÕr   c                 ó2   • [         R                  " U 5      nU$ )aâ  Set and return the previous value for default blanks text
nodes support. The 1.x version of the parser used an
heuristic to try to detect ignorable white spaces. As a
result the SAX callback was generating
xmlSAX2IgnorableWhitespace() callbacks instead of
characters() one, and when using the DOM output text nodes
containing those blanks were not generated. The 2.x and
later version will switch to the XML standard way and
ignorableWhitespace() are only generated when running the
parser in validating mode and when the current element
doesn't allow CDATA or mixed content. This function is
provided as a way to force the standard behavior on 1.X
libs and to switch back to the old mode for compatibility
when running 1.X client code on 2.X . Upgrade of 1.X code
should be done by using xmlIsBlankNode() commodity function
to detect the "empty" nodes generated. This value also
affect autogeneration of indentation when saving code if
 blanks sections are kept, indentation is not generated. )rm   ÚxmlKeepBlanksDefaultr  s     r   ÚkeepBlanksDefaultr;    s   € ô& ×
)Ò
)¨#Ó
.€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z“Set and return the previous value for enabling line numbers
in elements contents. This may break on old application and
 is turned off by default. )rm   ÚxmlLineNumbersDefaultr  s     r   ÚlineNumbersDefaultr>    s   € ô ×
*Ò
*¨3Ó
/€CØ€Jr   c                  óZ   • [         R                  " 5       n U c  [        S5      e[        U S9$ )r  zxmlNewParserCtxt() failedr  )rm   ÚxmlNewParserCtxtr3   r
  r  s    r   ÚnewParserCtxtrA  "  s+   € ä
×
%Ò
%Ó
'€CØ
�{œÐ%@ÓAÐAÜ˜3ÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )z#Load and parse an external subset. zxmlParseDTD() failedr  )rm   ÚxmlParseDTDr3   r“  )r7  ÚSystemIDr_   s      r   ÚparseDTDrE  (  s-   € ä
×
 Ò
  Ó
6€CØ
�{œÐ%;Ó<Ð<Ü�sÑÐr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )r!  zxmlParseDoc() failedr  )rm   ÚxmlParseDocr3   r$  r4  s     r   ÚparseDocrH  .  s-   € ä
×
 Ò
  Ó
%€CØ
�{œÐ%;Ó<Ð<Ü�sÑÐr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )z”parse an XML external entity out of context and build a
tree.  [78] extParsedEnt ::= TextDecl? content  This
 correspond to a "Well Balanced" chunk zxmlParseEntity() failedr  )rm   ÚxmlParseEntityr3   r$  r†  s     r   ÚparseEntityrK  4  s/   € ô ×
#Ò
# HÓ
-€CØ
�{œÐ%>Ó?Ð?Ü�sÑÐr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )zŽparse an XML file and build a tree. Automatic support for
ZLIB/Compress compressed document is provided by default if
 found at compile-time. zxmlParseFile() failedr  )rm   ÚxmlParseFiler3   r$  r†  s     r   Ú	parseFilerN  <  s/   € ô ×
!Ò
! (Ó
+€CØ
�{œÐ%<Ó=Ð=Ü�sÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )z/parse an XML in-memory block and build a tree. zxmlParseMemory() failedr  )rm   ÚxmlParseMemoryr3   r$  r  s      r   ÚparseMemoryrQ  D  s-   € ä
×
#Ò
# FÓ
1€CØ
�{œÐ%>Ó?Ð?Ü�sÑÐr   c                 ó2   • [         R                  " U 5      nU$ )zBSet and return the previous value for enabling pedantic
warnings. )rm   ÚxmlPedanticParserDefaultr  s     r   ÚpedanticParserDefaultrT  J  s   € ô ×
-Ò
-¨cÓ
2€CØ€Jr   c                 ó^   • [         R                  " XX#5      nUc  [        S5      e[        US9$ )r!  zxmlReadDoc() failedr  )rm   Ú
xmlReadDocr    r$  r#  s        r   ÚreadDocrW  P  s/   € ä
×
Ò
 ¨(Ó
<€CØ
�{œÐ#8Ó9Ð9Ü�sÑÐr   c                 ó^   • [         R                  " XX#5      nUc  [        S5      e[        US9$ )zŒparse an XML from a file descriptor and build a tree. NOTE
that the file descriptor will not be closed when the reader
 is closed or reset. zxmlReadFd() failedr  )rm   Ú	xmlReadFdr    r$  r(  s        r   ÚreadFdrZ  V  s1   € ô ×
Ò
˜r¨Ó
:€CØ
�{œÐ#7Ó8Ð8Ü�sÑÐr   c                 ó^   • [         R                  " XU5      nUc  [        S5      e[        US9$ )r+  zxmlReadFile() failedr  )rm   ÚxmlReadFiler    r$  r-  s       r   ÚreadFiler]  ^  s/   € ä
×
 Ò
  °WÓ
=€CØ
�{œÐ#9Ó:Ð:Ü�sÑÐr   c                 ó`   • [         R                  " XX#U5      nUc  [        S5      e[        US9$ )r!  zxmlReadMemory() failedr  )rm   ÚxmlReadMemoryr    r$  r0  s         r   Ú
readMemoryr`  d  s1   € ä
×
"Ò
" 6°ÀÓ
H€CØ
�{œÐ#;Ó<Ð<Ü�sÑÐr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )zŠparse an XML in-memory document and build a tree. In the
case the document is not Well Formed, a attempt to build a
 tree is tried anyway zxmlRecoverDoc() failedr  )rm   ÚxmlRecoverDocr    r$  r4  s     r   Ú
recoverDocrc  j  s/   € ô ×
"Ò
" 3Ó
'€CØ
�{œÐ#;Ó<Ð<Ü�sÑÐr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )zÞparse an XML file and build a tree. Automatic support for
ZLIB/Compress compressed document is provided by default if
found at compile-time. In the case the document is not Well
 Formed, it attempts to build a tree anyway zxmlRecoverFile() failedr  )rm   ÚxmlRecoverFiler    r$  r†  s     r   ÚrecoverFilerf  r  s/   € ô
 ×
#Ò
# HÓ
-€CØ
�{œÐ#<Ó=Ð=Ü�sÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )zˆparse an XML in-memory block and build a tree. In the case
the document is not Well Formed, an attempt to build a tree
 is tried anyway zxmlRecoverMemory() failedr  )rm   ÚxmlRecoverMemoryr    r$  r  s      r   ÚrecoverMemoryri  {  s/   € ô ×
%Ò
% fÓ
3€CØ
�{œÐ#>Ó?Ð?Ü�sÑÐr   c                 ó2   • [         R                  " U 5      nU$ )a>  Set and return the previous value for default entity
support. Initially the parser always keep entity references
instead of substituting entity values in the output. This
function has to be used to change the default parser
behavior SAX::substituteEntities() has to be used for
 changing that on a file by file basis. )rm   ÚxmlSubstituteEntitiesDefaultr  s     r   ÚsubstituteEntitiesDefaultrl  ƒ  s   € ô ×
1Ò
1°#Ó
6€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )aƒ  Checks that the value conforms to the LanguageID
production:  NOTE: this is somewhat deprecated, those
productions were removed from the XML Second edition.  [33]
LanguageID ::= Langcode ('-' Subcode)* [34] Langcode ::=
ISO639Code |  IanaCode |  UserCode [35] ISO639Code ::=
([a-z] | [A-Z]) ([a-z] | [A-Z]) [36] IanaCode ::= ('i' |
'I') '-' ([a-z] | [A-Z])+ [37] UserCode ::= ('x' | 'X') '-'
([a-z] | [A-Z])+ [38] Subcode ::= ([a-z] | [A-Z])+  The
current REC reference the successors of RFC 1766, currently
5646  http://www.rfc-editor.org/rfc/rfc5646.txt langtag    
= language ["-" script] ["-" region] *("-" variant) *("-"
extension) ["-" privateuse] language      = 2*3ALPHA       
; shortest ISO 639 code ["-" extlang]       ; sometimes
followed by ; extended language subtags / 4ALPHA           
; or reserved for future use / 5*8ALPHA            ; or
registered language subtag  extlang       = 3ALPHA         
; selected ISO 639 codes *2("-" 3ALPHA)      ; permanently
reserved  script        = 4ALPHA              ; ISO 15924
code  region        = 2ALPHA              ; ISO 3166-1 code
/ 3DIGIT              ; UN M.49 code  variant       =
5*8alphanum         ; registered variants / (DIGIT
3alphanum)  extension     = singleton 1*("-" (2*8alphanum))
; Single alphanumerics ; "x" reserved for private use
singleton     = DIGIT               ; 0 - 9 / %x41-57      
; A - W / %x59-5A             ; Y - Z / %x61-77            
; a - w / %x79-7A             ; y - z  it sounds right to
still allow Irregular i-xxx IANA and user codes too The
parser below doesn't try to cope with extension or
privateuse that could be added but that's not interoperable
 anyway )rm   ÚxmlCheckLanguageID)Úlangr_   s     r   ÚcheckLanguageIDrp  ‘  s   € ô> ×
'Ò
'¨Ó
-€CØ€Jr   c                 ó4   • [         R                  " XU5      nU$ ©z#append the char value in the array )rm   ÚxmlCopyChar)r^   rV  r  r_   s       r   ÚcopyCharrt  ³  s   € ä
×
 Ò
  ¨3Ó
/€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ rr  )rm   ÚxmlCopyCharMultiByte)rV  r  r_   s      r   ÚcopyCharMultiByterw  ¸  s   € ä
×
)Ò
)¨#Ó
3€CØ€Jr   c                 ó^   • [         R                  " XU5      nUc  [        S5      e[        US9$ )z™Create a parser context for an external entity Automatic
support for ZLIB/Compress compressed document is provided
 by default if found at compile-time. z"xmlCreateEntityParserCtxt() failedr  )rm   ÚxmlCreateEntityParserCtxtr3   r
  )r$  ÚIDÚbaser_   s       r   ÚcreateEntityParserCtxtr|  ½  s1   € ô ×
.Ò
.¨s¸Ó
=€CØ
�{œÐ%IÓJÐJÜ˜3ÑÐr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )ú–Create a parser context for a file content. Automatic
support for ZLIB/Compress compressed document is provided
 by default if found at compile-time. z xmlCreateFileParserCtxt() failedr  )rm   ÚxmlCreateFileParserCtxtr3   r
  r†  s     r   ÚcreateFileParserCtxtr€  Å  s/   € ô ×
,Ò
,¨XÓ
6€CØ
�{œÐ%GÓHÐHÜ˜3ÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )z7Create a parser context for an XML in-memory document. z"xmlCreateMemoryParserCtxt() failedr  )rm   ÚxmlCreateMemoryParserCtxtr3   r
  r  s      r   ÚcreateMemoryParserCtxtrƒ  Í  s-   € ä
×
.Ò
.¨vÓ
<€CØ
�{œÐ%IÓJÐJÜ˜3ÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )z²Create a parser context for a file or URL content.
Automatic support for ZLIB/Compress compressed document is
provided by default if found at compile-time and for file
 accesses zxmlCreateURLParserCtxt() failedr  )rm   ÚxmlCreateURLParserCtxtr3   r
  )r  r%  r_   s      r   ÚcreateURLParserCtxtr†  Ó  s/   € ô
 ×
+Ò
+¨HÓ
>€CØ
�{œÐ%FÓGÐGÜ˜3ÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )r~  z!htmlCreateFileParserCtxt() failedr  )rm   ÚhtmlCreateFileParserCtxtr3   r
  r  s      r   rˆ  rˆ  Ü  s/   € ô ×
-Ò
-¨hÓ
A€CØ
�{œÐ%HÓIÐIÜ˜3ÑÐr   c                  ó.   • [         R                  " 5         g)zThis is a no-op now. N)rm   ÚhtmlInitAutoCloser   r   r   rŠ  rŠ  ä  rO  r   c                 ó2   • [         R                  " U 5      nU$ )z`Check whether the character is allowed by the production
[84] Letter ::= BaseChar | Ideographic )rm   ÚxmlIsLetter)Úcr_   s     r   ÚisLetterrŽ  è  s   € ô ×
 Ò
  Ó
#€CØ€Jr   c                 óV   • U c  SnOU R                   n[        R                  " U5      nU$ )z.Pops the top element name from the name stack N)rL   rm   ÚnamePop©rH  Úctxt__or_   s      r   r�  r�  î  s)   € à�|˜t‘WØ—G‘Gˆ'Ü
×
Ò
˜WÓ
%€CØ€Jr   c                 óV   • U c  SnOU R                   n[        R                  " X!5      nU$ )z3Pushes a new element name on top of the name stack N)rL   rm   ÚnamePush)rH  rg  r’  r_   s       r   r”  r”  õ  s)   € à�|˜t‘WØ—G‘Gˆ'Ü
×
Ò
˜gÓ
-€CØ€Jr   c                 ó€   • U c  SnOU R                   n[        R                  " U5      nUc  [        S5      e[	        US9$ )z.Pops the top element node from the node stack NznodePop() failedr  )rL   rm   ÚnodePopr    r�  r‘  s      r   r–  r–  ü  s?   € à�|˜t‘WØ—G‘Gˆ'Ü
×
Ò
˜WÓ
%€CØ
�{œÐ#5Ó6Ð6Ü˜ÑÐr   c                 óz   • U c  SnOU R                   nUc  SnOUR                   n[        R                  " X#5      nU$ )z3Pushes a new element node on top of the node stack N)rL   rm   ÚnodePush)rH  rg  r’  Úvalue__or_   s        r   r˜  r˜    s;   € à�|˜t‘WØ—G‘Gˆ'Ø�} ‘hØ—X‘Xˆ(Ü
×
Ò
˜gÓ
0€CØ€Jr   c                 ó2   • [         R                  " XU5        g)zfInterface to parse an XML file or resource pointed by an
URI to build an event flow to the SAX object N)rm   ÚxmlSAXParseFile)ÚSAXrþ  Úrecovers      r   ÚSAXParseFilerž    s   € ô ×Ò˜s¨Õ1r   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )z1Create a libxml2 input buffer from a Python file zxmlCreateInputBuffer() failedr  )rm   rn   r    ÚinputBuffer©r   r/  r_   s      r   ÚcreateInputBufferr¢    s-   € ä
×
)Ò
)¨$Ó
9€CØ
�{œÐ#BÓCÐCÜ˜CÑ Ð r   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )z2Create a libxml2 output buffer from a Python file zxmlCreateOutputBuffer() failedr  )rm   ÚxmlCreateOutputBufferr    ÚoutputBufferr¡  s      r   ÚcreateOutputBufferr¦    s-   € ä
×
*Ò
*¨4Ó
:€CØ
�{œÐ#CÓDÐDÜ˜SÑ!Ð!r   c                 ó^   • [         R                  " XX#5      nUc  [        S5      e[        US9$ )zCreate a progressive XML parser context to build either an
event flow if the SAX object is not None, or a DOM tree
 otherwise. zxmlCreatePushParser() failedr  )rm   ÚxmlCreatePushParserr3   r
  ©rœ  Úchunkr  rþ  r_   s        r   ÚcreatePushParserr«  "  s1   € ô ×
(Ò
(¨°TÓ
?€CØ
�{œÐ%CÓDÐDÜ˜3ÑÐr   c                 ó2   • [         R                  " U 5      nU$ )z©Switch on the generation of line number for elements nodes.
Also returns the number of bytes allocated and not freed by
 libxml2 since memory debugging was switched on. )rm   ÚxmlDebugMemory)Úactivater_   s     r   ÚdebugMemoryr¯  *  s   € ô ×
#Ò
# HÓ
-€CØ€Jr   c                  ó.   • [         R                  " 5         g)z/dump the memory allocated in the file .memdump N)rm   ÚxmlDumpMemoryr   r   r   Ú
dumpMemoryr²  1  s   € ä×ÒÕr   c                 ó^   • [         R                  " XX#5      nUc  [        S5      e[        US9$ )z€Create a progressive HTML parser context to build either an
event flow if the SAX object is not None, or a DOM tree
 otherwise. zhtmlCreatePushParser() failedr  )rm   ÚhtmlCreatePushParserr3   r
  r©  s        r   r´  r´  5  s1   € ô ×
)Ò
)¨#°dÓ
@€CØ
�{œÐ%DÓEÐEÜ˜3ÑÐr   c                 ó2   • [         R                  " XU5        g)zgInterface to parse an HTML file or resource pointed by an
URI to build an event flow to the SAX object N)rm   ÚhtmlSAXParseFile)rœ  rþ  r/  s      r   r¶  r¶  =  s   € ô ×Ò ¨(Õ3r   c                  ó0   • [         R                  " 5       n U $ )z8Returns the total amount of memory allocated by libxml2 )rm   ÚxmlMemoryUsedr  s    r   Ú
memoryUsedr¹  B  s   € ä
×
"Ò
"Ó
$€CØ€Jr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )zCreate a new Node zxmlNewNode() failedr  )rm   Ú
xmlNewNoder    r�  r  s     r   ÚnewNoder¼  G  s-   € ä
×
Ò
 Ó
%€CØ
�{œÐ#8Ó9Ð9Ü˜ÑÐr   c                  ó.   • [         R                  " 5         g)an  Cleanup function for the XML library. It tries to reclaim
all parsing related global memory allocated for the library
processing. It doesn't deallocate any document related
memory. Calling this function should not prevent reusing
the library but one should call xmlCleanupParser() only
when the process has finished using the library or XML
 document built with it. Nr÷  r   r   r   ÚpythonCleanupParserr¾  M  s   € ô ×%Ò%Õ'r   c                 ó2   • [         R                  " U 5      nU$ )z-Set the entity resolver as a python function )rm   ÚxmlSetEntityLoader)Úresolverr_   s     r   ÚsetEntityLoaderrÂ  W  s   € ä
×
'Ò
'¨Ó
1€CØ€Jr   c                  ó.   • [         R                  " 5         g)z?Cleanup the default Schemas type library associated to
RelaxNG N)rm   ÚxmlRelaxNGCleanupTypesr   r   r   ÚrelaxNGCleanupTypesrÅ  `  s   € ô ×%Ò%Õ'r   c                  ó0   • [         R                  " 5       n U $ )z'Initialize the default type libraries. )rm   ÚxmlRelaxNGInitTypesr  s    r   ÚrelaxNGInitTypesrÈ  e  s   € ä
×
(Ò
(Ó
*€CØ€Jr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )zfCreate an XML RelaxNGs parse context for that memory buffer
expected to contain an XML RelaxNGs file. z#xmlRelaxNGNewMemParserCtxt() failedr  )rm   ÚxmlRelaxNGNewMemParserCtxtr3   ÚrelaxNgParserCtxtr  s      r   ÚrelaxNGNewMemParserCtxtrÌ  j  s/   € ô ×
/Ò
/°Ó
=€CØ
�{œÐ%JÓKÐKÜ #Ñ&Ð&r   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )zfCreate an XML RelaxNGs parse context for that file/resource
expected to contain an XML RelaxNGs file. z xmlRelaxNGNewParserCtxt() failedr  )rm   ÚxmlRelaxNGNewParserCtxtr3   rË  ©r$  r_   s     r   ÚrelaxNGNewParserCtxtrÐ  q  s/   € ô ×
,Ò
,¨SÓ
1€CØ
�{œÐ%GÓHÐHÜ #Ñ&Ð&r   c                 ó4   • [         R                  " XX#5      nU$ )z·Builds the QName @prefix:@ncname in @memory if there is
enough space and prefix is not None nor empty, otherwise
allocate a new string. If prefix is None or empty it
 returns ncname. )rm   ÚxmlBuildQName)ÚncnameÚprefixÚmemoryr^   r_   s        r   Ú
buildQNamerÖ  |  s   € ô
 ×
"Ò
" 6°6Ó
?€CØ€Jr   c                  ó0   • [         R                  " 5       n U $ )z3get the default compression mode used, ZLIB based. )rm   ÚxmlGetCompressModer  s    r   ÚcompressModerÙ  „  s   € ä
×
'Ò
'Ó
)€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )z7Try to find if the document correspond to an XHTML DTD )rm   Ú
xmlIsXHTML)rº   ÚpublicIDr_   s      r   ÚisXHTMLrÝ  ‰  s   € ä
×
Ò
 Ó
3€CØ€Jr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )z-Creation of a new node containing a comment. zxmlNewComment() failedr  )rm   ÚxmlNewCommentr    r�  ©r´   r_   s     r   Ú
newCommentrá  Ž  s-   € ä
×
"Ò
" 7Ó
+€CØ
�{œÐ#;Ó<Ð<Ü˜ÑÐr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )zCreates a new XML document zxmlNewDoc() failedr  )rm   Ú	xmlNewDocr    r$  r<  s     r   ÚnewDocrä  ”  s-   € ä
×
Ò
˜wÓ
'€CØ
�{œÐ#7Ó8Ð8Ü�sÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )zaCreation of a processing instruction element. Use
xmlDocNewPI preferably to get string interning zxmlNewPI() failedr  )rm   ÚxmlNewPIr    r�  )r¨   r´   r_   s      r   ÚnewPIrç  š  s/   € ô ×
Ò
˜dÓ
,€CØ
�{œÐ#6Ó7Ð7Ü˜ÑÐr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )zCreation of a new text node. zxmlNewText() failedr  )rm   Ú
xmlNewTextr    r�  rà  s     r   ÚnewTextrê  ¡  s-   € ä
×
Ò
 Ó
(€CØ
�{œÐ#8Ó9Ð9Ü˜ÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )zMCreation of a new text node with an extra parameter for the
content's length zxmlNewTextLen() failedr  )rm   ÚxmlNewTextLenr    r�  )r´   r^   r_   s      r   Ú
newTextLenrí  §  s/   € ô ×
"Ò
" 7Ó
0€CØ
�{œÐ#;Ó<Ð<Ü˜ÑÐr   c                 ó0   • [         R                  " U 5        g)zjset the default compression mode used, ZLIB based Correct
values: 0 (uncompressed) to 9 (max compression) N)rm   ÚxmlSetCompressMode)Úmodes    r   ÚsetCompressModerñ  ®  s   € ô ×!Ò! $Õ'r   c                 ó2   • [         R                  " X5      nU$ )z;Check that a value conforms to the lexical space of NCName )rm   ÚxmlValidateNCName©rg  Úspacer_   s      r   ÚvalidateNCNamerö  ³  rm  r   c                 ó2   • [         R                  " X5      nU$ )z<Check that a value conforms to the lexical space of NMToken )rm   ÚxmlValidateNMTokenrô  s      r   ÚvalidateNMTokenrù  ¸  s   € ä
×
'Ò
'¨Ó
5€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )z9Check that a value conforms to the lexical space of Name )rm   ÚxmlValidateNamerô  s      r   ÚvalidateNamerü  ½  s   € ä
×
$Ò
$ UÓ
2€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )z:Check that a value conforms to the lexical space of QName )rm   ÚxmlValidateQNamerô  s      r   ÚvalidateQNamerÿ  Â  s   € ä
×
%Ò
% eÓ
3€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z—Escaping routine, does not do validity checks ! It will try
to escape the chars needing this, but this is heuristic
 based it's impossible to be sure. )rm   ÚxmlURIEscape©re   r_   s     r   Ú	URIEscaper  Ë  s   € ô ×
!Ò
! #Ó
&€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )zsThis routine escapes a string to hex, ignoring reserved
characters (a-z) and the characters in the exception list. )rm   ÚxmlURIEscapeStr)re   r•  r_   s      r   ÚURIEscapeStrr  Ò  s   € ô ×
$Ò
$ SÓ
/€CØ€Jr   c                 ó4   • [         R                  " XU5      nU$ )zéUnescaping routine, but does not check that the string is
an URI. The output is a direct unsigned char translation of
%XX values (no encoding) Note that the length of the result
 can only be smaller or same size as the input string. )rm   ÚxmlURIUnescapeString)re   r^   r¯   r_   s       r   ÚURIUnescapeStringr	  Ø  s   € ô
 ×
)Ò
)¨#°FÓ
;€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )a»  Expresses the URI of the reference in terms relative to the
base.  Some examples of this operation include: base =
"http://site1.com/docs/book1.html" URI input               
URI returned docs/pic1.gif                    pic1.gif
docs/img/pic1.gif                img/pic1.gif img/pic1.gif 
../img/pic1.gif http://site1.com/docs/pic1.gif   pic1.gif
http://site2.com/docs/pic1.gif  
http://site2.com/docs/pic1.gif  base = "docs/book1.html"
URI input                        URI returned docs/pic1.gif
pic1.gif docs/img/pic1.gif                img/pic1.gif
img/pic1.gif                     ../img/pic1.gif
http://site1.com/docs/pic1.gif  
http://site1.com/docs/pic1.gif   Note: if the URI reference
is really weird or complicated, it may be worthwhile to
first convert it into a "nice" one by calling xmlBuildURI
(using 'base') before calling this routine, since this
routine (for reasonable efficiency) assumes URI has already
 been through some validation. )rm   ÚxmlBuildRelativeURI©rþ  r{  r_   s      r   ÚbuildRelativeURIr  à  s   € ô& ×
(Ò
(¨Ó
3€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )zõComputes he final URI of the reference done by checking
that the given URI is valid, and building the final URI
using the base URI. This is processed according to section
5.2 of the RFC 2396  5.2. Resolving Relative References to
 Absolute Form )rm   ÚxmlBuildURIr  s      r   ÚbuildURIr  ö  s   € ô ×
 Ò
  Ó
+€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z3Constructs a canonic path from the specified path. )rm   ÚxmlCanonicPath©Úpathr_   s     r   ÚcanonicPathr  ÿ  ó   € ä
×
#Ò
# DÓ
)€CØ€Jr   c                  óZ   • [         R                  " 5       n U c  [        S5      e[        U S9$ )zSimply creates an empty xmlURI zxmlCreateURI() failedr  )rm   ÚxmlCreateURIr:   rþ  r  s    r   Ú	createURIr    s*   € ä
×
!Ò
!Ó
#€CØ
�{œÐ"9Ó:Ð:Ü�C‰=Ðr   c                 ó2   • [         R                  " U 5      nU$ )z³Applies the 5 normalization steps to a path string--that
is, RFC 2396 Section 5.2, steps 6.c through 6.g. 
Normalization occurs directly on the string, no new
 allocation is done )rm   ÚxmlNormalizeURIPathr  s     r   ÚnormalizeURIPathr  
  s   € ô
 ×
(Ò
(¨Ó
.€CØ€Jr   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )z_Parse an URI based on RFC 3986  URI-reference = [
absoluteURI | relativeURI ] [ "#" fragment ] zxmlParseURI() failedr  )rm   ÚxmlParseURIr:   rþ  r  s     r   ÚparseURIr    s.   € ô ×
 Ò
  Ó
%€CØ
�{œÐ"8Ó9Ð9Ü�C‰=Ðr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )zcParse an URI but allows to keep intact the original
fragments.  URI-reference = URI / relative-ref zxmlParseURIRaw() failedr  )rm   ÚxmlParseURIRawr:   rþ  )re   Úrawr_   s      r   ÚparseURIRawr#    s.   € ô ×
#Ò
# CÓ
-€CØ
�{œÐ";Ó<Ð<Ü�C‰=Ðr   c                 ó2   • [         R                  " U 5      nU$ )z/Constructs an URI expressing the existing path )rm   ÚxmlPathToURIr  s     r   Ú	pathToURIr&     ó   € ä
×
!Ò
! $Ó
'€CØ€Jr   c                  óZ   • [         R                  " 5       n U c  [        S5      e[        U S9$ )z)Allocate a validation context structure. zxmlNewValidCtxt() failedr  )rm   ÚxmlNewValidCtxtr    Ú	ValidCtxtr  s    r   ÚnewValidCtxtr+  )  s+   € ä
×
$Ò
$Ó
&€CØ
�{œÐ#=Ó>Ð>Ü˜#ÑÐr   c                 ó2   • [         R                  " U 5      nU$ )z4Validate that the given value match Name production )rm   ÚxmlValidateNameValuerf  s     r   ÚvalidateNameValuer.  /  s   € ä
×
)Ò
)¨%Ó
0€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z5Validate that the given value match Names production )rm   ÚxmlValidateNamesValuerf  s     r   ÚvalidateNamesValuer1  4  s   € ä
×
*Ò
*¨5Ó
1€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zKValidate that the given value match Nmtoken production  [
VC: Name Token ] )rm   ÚxmlValidateNmtokenValuerf  s     r   ÚvalidateNmtokenValuer4  9  rq  r   c                 ó2   • [         R                  " U 5      nU$ )zLValidate that the given value match Nmtokens production  [
VC: Name Token ] )rm   ÚxmlValidateNmtokensValuerf  s     r   ÚvalidateNmtokensValuer7  ?  s   € ô ×
-Ò
-¨eÓ
4€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zfunction checks to see if @path is a valid source (file,
socket...) for XML.  if stat is not available on the target
 machine, )rm   ÚxmlCheckFilenamer  s     r   ÚcheckFilenamer:  I  s   € ô ×
%Ò
% dÓ
+€CØ€Jr   c                  ó.   • [         R                  " 5         g)zKclears the entire input callback table. this includes the
compiled-in I/O. N)rm   ÚxmlCleanupInputCallbacksr   r   r   ÚcleanupInputCallbacksr=  P  s   € ô ×'Ò'Õ)r   c                  ó.   • [         R                  " 5         g)zVclears the entire output callback table. this includes the
compiled-in I/O callbacks. N)rm   ÚxmlCleanupOutputCallbacksr   r   r   ÚcleanupOutputCallbacksr@  U  s   € ô ×(Ò(Õ*r   c                 ó2   • [         R                  " U 5      nU$ )zinput from FILE * )rm   ÚxmlFileMatchr†  s     r   Ú	fileMatchrC  Z  s   € ä
×
!Ò
! (Ó
+€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z$check if the URI matches an FTP one )rm   ÚxmlIOFTPMatchr†  s     r   Ú
iOFTPMatchrF  _  s   € ä
×
"Ò
" 8Ó
,€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z%check if the URI matches an HTTP one )rm   ÚxmlIOHTTPMatchr†  s     r   ÚiOHTTPMatchrI  d  s   € ä
×
#Ò
# HÓ
-€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zUThis function is obsolete. Please see xmlURIFromPath in
uri.c for a better solution. )rm   ÚxmlNormalizeWindowsPathr  s     r   ÚnormalizeWindowsPathrL  i  ó   € ô ×
,Ò
,¨TÓ
2€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z#lookup the directory for that file )rm   ÚxmlParserGetDirectoryr†  s     r   ÚparserGetDirectoryrP  o  s   € ä
×
*Ò
*¨8Ó
4€CØ€Jr   c                  ó0   • [         R                  " 5       n U $ )zZRemove the top output callbacks from the output stack. This
includes the compiled-in I/O. )rm   ÚxmlPopOutputCallbacksr  s    r   ÚpopOutputCallbacksrS  t  s   € ô ×
*Ò
*Ó
,€CØ€Jr   c                  ó.   • [         R                  " 5         g©z0Registers the default compiled-in I/O handlers. N)rm   Ú xmlRegisterDefaultInputCallbacksr   r   r   ÚregisterDefaultInputCallbacksrW  z  s   € ä×/Ò/Õ1r   c                  ó.   • [         R                  " 5         grU  )rm   Ú!xmlRegisterDefaultOutputCallbacksr   r   r   ÚregisterDefaultOutputCallbacksrZ  ~  s   € ä×0Ò0Õ2r   c                  ó.   • [         R                  " 5         g)zžBy default, libxml submits HTTP output requests using the
"PUT" method. Calling this method changes the HTTP output
 method to use the "POST" method instead. N)rm   ÚxmlRegisterHTTPPostCallbacksr   r   r   ÚregisterHTTPPostCallbacksr]  ‚  s   € ô ×+Ò+Õ-r   c                  óZ   • [         R                  " 5       n U c  [        S5      e[        U S9$ )zZGet the last global error registered. This is per thread if
compiled with thread support. zxmlGetLastError() failedr  )rm   ÚxmlGetLastErrorr    ÚErrorr  s    r   Ú	lastErrorra  Œ  s,   € ô ×
$Ò
$Ó
&€CØ
�{œÐ#=Ó>Ð>Ü�c‰?Ðr   c                  ó.   • [         R                  " 5         g)zmCleanup the last global error registered. For parsing error
this does not change the well-formedness result. N)rm   ÚxmlResetLastErrorr   r   r   ÚresetLastErrorrd  “  r  r   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )z@Create an xmlTextReader structure fed with the resource at
@URI z!xmlNewTextReaderFilename() failedr  )rm   ÚxmlNewTextReaderFilenamer    ÚxmlTextReaderrz  s     r   ÚnewTextReaderFilenamerh  œ  s/   € ô ×
-Ò
-¨cÓ
2€CØ
�{œÐ#FÓGÐGÜ˜cÑ"Ð"r   c                 ó^   • [         R                  " XX#5      nUc  [        S5      e[        US9$ )úxCreate an xmltextReader for an XML in-memory document. The
parsing flags @options are a combination of xmlParserOption. zxmlReaderForDoc() failedr  )rm   ÚxmlReaderForDocr    rg  r#  s        r   ÚreaderForDocrl  £  s1   € ô ×
$Ò
$ S¨xÓ
A€CØ
�{œÐ#=Ó>Ð>Ü˜cÑ"Ð"r   c                 ó^   • [         R                  " XX#5      nUc  [        S5      e[        US9$ )zÒCreate an xmltextReader for an XML from a file descriptor.
The parsing flags @options are a combination of
xmlParserOption. NOTE that the file descriptor will not be
 closed when the reader is closed or reset. zxmlReaderForFd() failedr  )rm   ÚxmlReaderForFdr    rg  r(  s        r   ÚreaderForFdro  ª  s1   € ô
 ×
#Ò
# B¨XÓ
?€CØ
�{œÐ#<Ó=Ð=Ü˜cÑ"Ð"r   c                 ó^   • [         R                  " XU5      nUc  [        S5      e[        US9$ )zwparse an XML file from the filesystem or the network. The
parsing flags @options are a combination of xmlParserOption. zxmlReaderForFile() failedr  )rm   ÚxmlReaderForFiler    rg  r-  s       r   ÚreaderForFilerr  ³  s1   € ô ×
%Ò
% h¸'Ó
B€CØ
�{œÐ#>Ó?Ð?Ü˜cÑ"Ð"r   c                 ó`   • [         R                  " XX#U5      nUc  [        S5      e[        US9$ )rj  zxmlReaderForMemory() failedr  )rm   ÚxmlReaderForMemoryr    rg  r0  s         r   ÚreaderForMemoryru  º  s3   € ô ×
'Ò
'¨°cÀWÓ
M€CØ
�{œÐ#@ÓAÐAÜ˜cÑ"Ð"r   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )z¦Parses a regular expression conforming to XML Schemas Part
2 Datatype Appendix F and builds an automata suitable for
 testing strings against that regular expression zxmlRegexpCompile() failedr  )rm   ÚxmlRegexpCompiler    ÚxmlReg)Úregexpr_   s     r   ÚregexpCompilerz  Å  s/   € ô ×
%Ò
% fÓ
-€CØ
�{œÐ#>Ó?Ð?Ü�sÑÐr   c                 ó\   • [         R                  " X5      nUc  [        S5      e[        US9$ )zdCreate an XML Schemas parse context for that memory buffer
expected to contain an XML Schemas file. z"xmlSchemaNewMemParserCtxt() failedr  )rm   ÚxmlSchemaNewMemParserCtxtr3   ÚSchemaParserCtxtr  s      r   ÚschemaNewMemParserCtxtr~  Ñ  s/   € ô ×
.Ò
.¨vÓ
<€CØ
�{œÐ%IÓJÐJÜ Ñ%Ð%r   c                 ó\   • [         R                  " U 5      nUc  [        S5      e[        US9$ )zdCreate an XML Schemas parse context for that file/resource
expected to contain an XML Schemas file. zxmlSchemaNewParserCtxt() failedr  )rm   ÚxmlSchemaNewParserCtxtr3   r}  rÏ  s     r   ÚschemaNewParserCtxtr�  Ø  s/   € ô ×
+Ò
+¨CÓ
0€CØ
�{œÐ%FÓGÐGÜ Ñ%Ð%r   c                  ó.   • [         R                  " 5         g)z-Cleanup the default XML Schemas type library N)rm   ÚxmlSchemaCleanupTypesr   r   r   ÚschemaCleanupTypesr„  ã  s   € ä×$Ò$Õ&r   c                 ó2   • [         R                  " U 5      nU$ )z1Removes and normalize white spaces in the string )rm   ÚxmlSchemaCollapseStringrf  s     r   ÚschemaCollapseStringr‡  ç  rv  r   c                  ó.   • [         R                  " 5         g)z0Initialize the default XML Schemas type library N)rm   ÚxmlSchemaInitTypesr   r   r   ÚschemaInitTypesrŠ  ì  r+  r   c                 ó2   • [         R                  " U 5      nU$ )z(Replaces 0xd, 0x9 and 0xa with a space. )rm   ÚxmlSchemaWhiteSpaceReplacerf  s     r   ÚschemaWhiteSpaceReplacer�  ð  s   € ä
×
/Ò
/°Ó
6€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )zcompares the two UCS4 values )rm   ÚxmlUTF8Charcmp)Úutf1Úutf2r_   s      r   ÚUTF8Charcmpr’  ù  s   € ä
×
#Ò
# DÓ
/€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z1calculates the internal size of a UTF8 character )rm   ÚxmlUTF8Size©Úutfr_   s     r   ÚUTF8Sizer—  þ  s   € ä
×
 Ò
  Ó
%€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zgcompute the length of an UTF8 string, it doesn't do a full
UTF8 checking of the content of the string. )rm   ÚxmlUTF8Strlenr•  s     r   Ú
UTF8Strlenrš    s   € ô ×
"Ò
" 3Ó
'€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )z;a function to provide the relative location of a UTF8 char )rm   ÚxmlUTF8Strloc)r–  Úutfcharr_   s      r   Ú
UTF8Strlocrž  	  s   € ä
×
"Ò
" 3Ó
0€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )za strndup for array of UTF8's )rm   ÚxmlUTF8Strndup©r–  r^   r_   s      r   ÚUTF8Strndupr¢    s   € ä
×
#Ò
# CÓ
-€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )zQa function to provide the equivalent of fetching a
character from a string array )rm   ÚxmlUTF8Strpos)r–  Úposr_   s      r   Ú
UTF8Strposr¦    s   € ô ×
"Ò
" 3Ó
,€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )z`storage size of an UTF8 string the behaviour is not
guaranteed if the input string is not UTF-8 )rm   ÚxmlUTF8Strsizer¡  s      r   ÚUTF8Strsizer©    s   € ô ×
#Ò
# CÓ
-€CØ€Jr   c                 ó4   • [         R                  " XU5      nU$ )z`Create a substring from a given UTF-8 string Note: 
positions are given in units of UTF-8 chars )rm   ÚxmlUTF8Strsub)r–  Ústartr^   r_   s       r   Ú
UTF8Strsubr­    s   € ô ×
"Ò
" 3¨sÓ
3€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )aU  Checks @utf for being valid UTF-8. @utf is assumed to be
null-terminated. This function is not super-strict, as it
will allow longer UTF-8 sequences than necessary. Note that
Java is capable of producing these sequences if provoked.
Also note, this routine checks for the 4-byte maximum size,
 but does not check for 0x10ffff maximum value. )rm   ÚxmlCheckUTF8r•  s     r   Ú	checkUTF8r°  %  s   € ô ×
!Ò
! #Ó
&€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z?Check whether the character is part of AegeanNumbers UCS
Block )rm   ÚxmlUCSIsAegeanNumbers©Úcoder_   s     r   ÚuCSIsAegeanNumbersrµ  3  ó   € ô ×
*Ò
*¨4Ó
0€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zMCheck whether the character is part of
AlphabeticPresentationForms UCS Block )rm   Ú#xmlUCSIsAlphabeticPresentationFormsr³  s     r   Ú uCSIsAlphabeticPresentationFormsr¹  9  ó   € ô ×
8Ò
8¸Ó
>€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z8Check whether the character is part of Arabic UCS Block )rm   ÚxmlUCSIsArabicr³  s     r   ÚuCSIsArabicr½  ?  r  r   c                 ó2   • [         R                  " U 5      nU$ )zKCheck whether the character is part of
ArabicPresentationForms-A UCS Block )rm   Ú xmlUCSIsArabicPresentationFormsAr³  s     r   ÚuCSIsArabicPresentationFormsArÀ  D  ó   € ô ×
5Ò
5°dÓ
;€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zKCheck whether the character is part of
ArabicPresentationForms-B UCS Block )rm   Ú xmlUCSIsArabicPresentationFormsBr³  s     r   ÚuCSIsArabicPresentationFormsBrÄ  J  rÁ  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Armenian UCS Block )rm   ÚxmlUCSIsArmenianr³  s     r   ÚuCSIsArmenianrÇ  P  ó   € ä
×
%Ò
% dÓ
+€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z8Check whether the character is part of Arrows UCS Block )rm   ÚxmlUCSIsArrowsr³  s     r   ÚuCSIsArrowsrË  U  r  r   c                 ó2   • [         R                  " U 5      nU$ )z<Check whether the character is part of BasicLatin UCS Block )rm   ÚxmlUCSIsBasicLatinr³  s     r   ÚuCSIsBasicLatinrÎ  Z  ó   € ä
×
'Ò
'¨Ó
-€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z9Check whether the character is part of Bengali UCS Block )rm   ÚxmlUCSIsBengalir³  s     r   ÚuCSIsBengalirÒ  _  ó   € ä
×
$Ò
$ TÓ
*€CØ€Jr   c                 ó2   • [         R                  " X5      nU$ )z5Check whether the character is part of the UCS Block )rm   ÚxmlUCSIsBlock)r´  Úblockr_   s      r   Ú
uCSIsBlockr×  d  s   € ä
×
"Ò
" 4Ó
/€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z?Check whether the character is part of BlockElements UCS
Block )rm   ÚxmlUCSIsBlockElementsr³  s     r   ÚuCSIsBlockElementsrÚ  i  r¶  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Bopomofo UCS Block )rm   ÚxmlUCSIsBopomofor³  s     r   ÚuCSIsBopomoforÝ  o  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )zBCheck whether the character is part of BopomofoExtended UCS
Block )rm   ÚxmlUCSIsBopomofoExtendedr³  s     r   ÚuCSIsBopomofoExtendedrà  t  ó   € ô ×
-Ò
-¨dÓ
3€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z<Check whether the character is part of BoxDrawing UCS Block )rm   ÚxmlUCSIsBoxDrawingr³  s     r   ÚuCSIsBoxDrawingrä  z  rÏ  r   c                 ó2   • [         R                  " U 5      nU$ )zACheck whether the character is part of BraillePatterns UCS
Block )rm   ÚxmlUCSIsBraillePatternsr³  s     r   ÚuCSIsBraillePatternsrç    rM  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Buhid UCS Block )rm   ÚxmlUCSIsBuhidr³  s     r   Ú
uCSIsBuhidrê  …  ó   € ä
×
"Ò
" 4Ó
(€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zICheck whether the character is part of
ByzantineMusicalSymbols UCS Block )rm   ÚxmlUCSIsByzantineMusicalSymbolsr³  s     r   ÚuCSIsByzantineMusicalSymbolsrî  Š  ó   € ô ×
4Ò
4°TÓ
:€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zBCheck whether the character is part of CJKCompatibility UCS
Block )rm   ÚxmlUCSIsCJKCompatibilityr³  s     r   ÚuCSIsCJKCompatibilityrò  �  rá  r   c                 ó2   • [         R                  " U 5      nU$ )zGCheck whether the character is part of
CJKCompatibilityForms UCS Block )rm   ÚxmlUCSIsCJKCompatibilityFormsr³  s     r   ÚuCSIsCJKCompatibilityFormsrõ  –  ó   € ô ×
2Ò
2°4Ó
8€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zLCheck whether the character is part of
CJKCompatibilityIdeographs UCS Block )rm   Ú"xmlUCSIsCJKCompatibilityIdeographsr³  s     r   ÚuCSIsCJKCompatibilityIdeographsrù  œ  ó   € ô ×
7Ò
7¸Ó
=€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zVCheck whether the character is part of
CJKCompatibilityIdeographsSupplement UCS Block )rm   Ú,xmlUCSIsCJKCompatibilityIdeographsSupplementr³  s     r   Ú)uCSIsCJKCompatibilityIdeographsSupplementrý  ¢  s   € ô ×
AÒ
AÀ$Ó
G€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zGCheck whether the character is part of
CJKRadicalsSupplement UCS Block )rm   ÚxmlUCSIsCJKRadicalsSupplementr³  s     r   ÚuCSIsCJKRadicalsSupplementr   ¨  rö  r   c                 ó2   • [         R                  " U 5      nU$ )zJCheck whether the character is part of
CJKSymbolsandPunctuation UCS Block )rm   Ú xmlUCSIsCJKSymbolsandPunctuationr³  s     r   ÚuCSIsCJKSymbolsandPunctuationr  ®  rÁ  r   c                 ó2   • [         R                  " U 5      nU$ )zFCheck whether the character is part of CJKUnifiedIdeographs
UCS Block )rm   ÚxmlUCSIsCJKUnifiedIdeographsr³  s     r   ÚuCSIsCJKUnifiedIdeographsr  ´  ó   € ô ×
1Ò
1°$Ó
7€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zPCheck whether the character is part of
CJKUnifiedIdeographsExtensionA UCS Block )rm   Ú&xmlUCSIsCJKUnifiedIdeographsExtensionAr³  s     r   Ú#uCSIsCJKUnifiedIdeographsExtensionAr
  º  ó   € ô ×
;Ò
;¸DÓ
A€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zPCheck whether the character is part of
CJKUnifiedIdeographsExtensionB UCS Block )rm   Ú&xmlUCSIsCJKUnifiedIdeographsExtensionBr³  s     r   Ú#uCSIsCJKUnifiedIdeographsExtensionBr  À  r  r   c                 ó2   • [         R                  " X5      nU$ )z8Check whether the character is part of the UCS Category )rm   ÚxmlUCSIsCat)r´  Úcatr_   s      r   ÚuCSIsCatr  Æ  s   € ä
×
 Ò
  Ó
+€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z6Check whether the character is part of C UCS Category )rm   ÚxmlUCSIsCatCr³  s     r   Ú	uCSIsCatCr  Ë  r'  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Cc UCS Category )rm   ÚxmlUCSIsCatCcr³  s     r   Ú
uCSIsCatCcr  Ð  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Cf UCS Category )rm   ÚxmlUCSIsCatCfr³  s     r   Ú
uCSIsCatCfr  Õ  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Co UCS Category )rm   ÚxmlUCSIsCatCor³  s     r   Ú
uCSIsCatCor  Ú  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Cs UCS Category )rm   ÚxmlUCSIsCatCsr³  s     r   Ú
uCSIsCatCsr!  ß  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z6Check whether the character is part of L UCS Category )rm   ÚxmlUCSIsCatLr³  s     r   Ú	uCSIsCatLr$  ä  r'  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Ll UCS Category )rm   ÚxmlUCSIsCatLlr³  s     r   Ú
uCSIsCatLlr'  é  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Lm UCS Category )rm   ÚxmlUCSIsCatLmr³  s     r   Ú
uCSIsCatLmr*  î  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Lo UCS Category )rm   ÚxmlUCSIsCatLor³  s     r   Ú
uCSIsCatLor-  ó  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Lt UCS Category )rm   ÚxmlUCSIsCatLtr³  s     r   Ú
uCSIsCatLtr0  ø  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Lu UCS Category )rm   ÚxmlUCSIsCatLur³  s     r   Ú
uCSIsCatLur3  ý  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z6Check whether the character is part of M UCS Category )rm   ÚxmlUCSIsCatMr³  s     r   Ú	uCSIsCatMr6  	  r'  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Mc UCS Category )rm   ÚxmlUCSIsCatMcr³  s     r   Ú
uCSIsCatMcr9  	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Me UCS Category )rm   ÚxmlUCSIsCatMer³  s     r   Ú
uCSIsCatMer<  	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Mn UCS Category )rm   ÚxmlUCSIsCatMnr³  s     r   Ú
uCSIsCatMnr?  	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z6Check whether the character is part of N UCS Category )rm   ÚxmlUCSIsCatNr³  s     r   Ú	uCSIsCatNrB  	  r'  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Nd UCS Category )rm   ÚxmlUCSIsCatNdr³  s     r   Ú
uCSIsCatNdrE  	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Nl UCS Category )rm   ÚxmlUCSIsCatNlr³  s     r   Ú
uCSIsCatNlrH   	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of No UCS Category )rm   ÚxmlUCSIsCatNor³  s     r   Ú
uCSIsCatNorK  %	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z6Check whether the character is part of P UCS Category )rm   ÚxmlUCSIsCatPr³  s     r   Ú	uCSIsCatPrN  *	  r'  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Pc UCS Category )rm   ÚxmlUCSIsCatPcr³  s     r   Ú
uCSIsCatPcrQ  /	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Pd UCS Category )rm   ÚxmlUCSIsCatPdr³  s     r   Ú
uCSIsCatPdrT  4	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Pe UCS Category )rm   ÚxmlUCSIsCatPer³  s     r   Ú
uCSIsCatPerW  9	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Pf UCS Category )rm   ÚxmlUCSIsCatPfr³  s     r   Ú
uCSIsCatPfrZ  >	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Pi UCS Category )rm   ÚxmlUCSIsCatPir³  s     r   Ú
uCSIsCatPir]  C	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Po UCS Category )rm   ÚxmlUCSIsCatPor³  s     r   Ú
uCSIsCatPor`  H	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Ps UCS Category )rm   ÚxmlUCSIsCatPsr³  s     r   Ú
uCSIsCatPsrc  M	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z6Check whether the character is part of S UCS Category )rm   ÚxmlUCSIsCatSr³  s     r   Ú	uCSIsCatSrf  R	  r'  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Sc UCS Category )rm   ÚxmlUCSIsCatScr³  s     r   Ú
uCSIsCatScri  W	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Sk UCS Category )rm   ÚxmlUCSIsCatSkr³  s     r   Ú
uCSIsCatSkrl  \	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Sm UCS Category )rm   ÚxmlUCSIsCatSmr³  s     r   Ú
uCSIsCatSmro  a	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of So UCS Category )rm   ÚxmlUCSIsCatSor³  s     r   Ú
uCSIsCatSorr  f	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z6Check whether the character is part of Z UCS Category )rm   ÚxmlUCSIsCatZr³  s     r   Ú	uCSIsCatZru  k	  r'  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Zl UCS Category )rm   ÚxmlUCSIsCatZlr³  s     r   Ú
uCSIsCatZlrx  p	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Zp UCS Category )rm   ÚxmlUCSIsCatZpr³  s     r   Ú
uCSIsCatZpr{  u	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Zs UCS Category )rm   ÚxmlUCSIsCatZsr³  s     r   Ú
uCSIsCatZsr~  z	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Cherokee UCS Block )rm   ÚxmlUCSIsCherokeer³  s     r   ÚuCSIsCherokeer�  	  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )zKCheck whether the character is part of
CombiningDiacriticalMarks UCS Block )rm   Ú!xmlUCSIsCombiningDiacriticalMarksr³  s     r   ÚuCSIsCombiningDiacriticalMarksr„  „	  ó   € ô ×
6Ò
6°tÓ
<€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zUCheck whether the character is part of
CombiningDiacriticalMarksforSymbols UCS Block )rm   Ú+xmlUCSIsCombiningDiacriticalMarksforSymbolsr³  s     r   Ú(uCSIsCombiningDiacriticalMarksforSymbolsrˆ  Š	  s   € ô ×
@Ò
@ÀÓ
F€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zDCheck whether the character is part of CombiningHalfMarks
UCS Block )rm   ÚxmlUCSIsCombiningHalfMarksr³  s     r   ÚuCSIsCombiningHalfMarksr‹  �	  ó   € ô ×
/Ò
/°Ó
5€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zJCheck whether the character is part of
CombiningMarksforSymbols UCS Block )rm   Ú xmlUCSIsCombiningMarksforSymbolsr³  s     r   ÚuCSIsCombiningMarksforSymbolsr�  –	  rÁ  r   c                 ó2   • [         R                  " U 5      nU$ )zACheck whether the character is part of ControlPictures UCS
Block )rm   ÚxmlUCSIsControlPicturesr³  s     r   ÚuCSIsControlPicturesr’  œ	  rM  r   c                 ó2   • [         R                  " U 5      nU$ )zACheck whether the character is part of CurrencySymbols UCS
Block )rm   ÚxmlUCSIsCurrencySymbolsr³  s     r   ÚuCSIsCurrencySymbolsr•  ¢	  rM  r   c                 ó2   • [         R                  " U 5      nU$ )zBCheck whether the character is part of CypriotSyllabary UCS
Block )rm   ÚxmlUCSIsCypriotSyllabaryr³  s     r   ÚuCSIsCypriotSyllabaryr˜  ¨	  rá  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Cyrillic UCS Block )rm   ÚxmlUCSIsCyrillicr³  s     r   ÚuCSIsCyrillicr›  ®	  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )zDCheck whether the character is part of CyrillicSupplement
UCS Block )rm   ÚxmlUCSIsCyrillicSupplementr³  s     r   ÚuCSIsCyrillicSupplementrž  ³	  rŒ  r   c                 ó2   • [         R                  " U 5      nU$ )z9Check whether the character is part of Deseret UCS Block )rm   ÚxmlUCSIsDeseretr³  s     r   ÚuCSIsDeseretr¡  ¹	  rÓ  r   c                 ó2   • [         R                  " U 5      nU$ )z<Check whether the character is part of Devanagari UCS Block )rm   ÚxmlUCSIsDevanagarir³  s     r   ÚuCSIsDevanagarir¤  ¾	  rÏ  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Dingbats UCS Block )rm   ÚxmlUCSIsDingbatsr³  s     r   ÚuCSIsDingbatsr§  Ã	  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )zGCheck whether the character is part of
EnclosedAlphanumerics UCS Block )rm   ÚxmlUCSIsEnclosedAlphanumericsr³  s     r   ÚuCSIsEnclosedAlphanumericsrª  È	  rö  r   c                 ó2   • [         R                  " U 5      nU$ )zMCheck whether the character is part of
EnclosedCJKLettersandMonths UCS Block )rm   Ú#xmlUCSIsEnclosedCJKLettersandMonthsr³  s     r   Ú uCSIsEnclosedCJKLettersandMonthsr­  Î	  rº  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Ethiopic UCS Block )rm   ÚxmlUCSIsEthiopicr³  s     r   ÚuCSIsEthiopicr°  Ô	  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )zDCheck whether the character is part of GeneralPunctuation
UCS Block )rm   ÚxmlUCSIsGeneralPunctuationr³  s     r   ÚuCSIsGeneralPunctuationr³  Ù	  rŒ  r   c                 ó2   • [         R                  " U 5      nU$ )zACheck whether the character is part of GeometricShapes UCS
Block )rm   ÚxmlUCSIsGeometricShapesr³  s     r   ÚuCSIsGeometricShapesr¶  ß	  rM  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Georgian UCS Block )rm   ÚxmlUCSIsGeorgianr³  s     r   ÚuCSIsGeorgianr¹  å	  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )z8Check whether the character is part of Gothic UCS Block )rm   ÚxmlUCSIsGothicr³  s     r   ÚuCSIsGothicr¼  ê	  r  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Greek UCS Block )rm   ÚxmlUCSIsGreekr³  s     r   Ú
uCSIsGreekr¿  ï	  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z?Check whether the character is part of GreekExtended UCS
Block )rm   ÚxmlUCSIsGreekExtendedr³  s     r   ÚuCSIsGreekExtendedrÂ  ô	  r¶  r   c                 ó2   • [         R                  " U 5      nU$ )z@Check whether the character is part of GreekandCoptic UCS
Block )rm   ÚxmlUCSIsGreekandCopticr³  s     r   ÚuCSIsGreekandCopticrÅ  ú	  ó   € ô ×
+Ò
+¨DÓ
1€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Gujarati UCS Block )rm   ÚxmlUCSIsGujaratir³  s     r   ÚuCSIsGujaratirÉ   
  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Gurmukhi UCS Block )rm   ÚxmlUCSIsGurmukhir³  s     r   ÚuCSIsGurmukhirÌ  
  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )zLCheck whether the character is part of
HalfwidthandFullwidthForms UCS Block )rm   Ú"xmlUCSIsHalfwidthandFullwidthFormsr³  s     r   ÚuCSIsHalfwidthandFullwidthFormsrÏ  

  rú  r   c                 ó2   • [         R                  " U 5      nU$ )zICheck whether the character is part of
HangulCompatibilityJamo UCS Block )rm   ÚxmlUCSIsHangulCompatibilityJamor³  s     r   ÚuCSIsHangulCompatibilityJamorÒ  
  rï  r   c                 ó2   • [         R                  " U 5      nU$ )z<Check whether the character is part of HangulJamo UCS Block )rm   ÚxmlUCSIsHangulJamor³  s     r   ÚuCSIsHangulJamorÕ  
  rÏ  r   c                 ó2   • [         R                  " U 5      nU$ )zACheck whether the character is part of HangulSyllables UCS
Block )rm   ÚxmlUCSIsHangulSyllablesr³  s     r   ÚuCSIsHangulSyllablesrØ  
  rM  r   c                 ó2   • [         R                  " U 5      nU$ )z9Check whether the character is part of Hanunoo UCS Block )rm   ÚxmlUCSIsHanunoor³  s     r   ÚuCSIsHanunoorÛ  !
  rÓ  r   c                 ó2   • [         R                  " U 5      nU$ )z8Check whether the character is part of Hebrew UCS Block )rm   ÚxmlUCSIsHebrewr³  s     r   ÚuCSIsHebrewrÞ  &
  r  r   c                 ó2   • [         R                  " U 5      nU$ )zJCheck whether the character is part of
HighPrivateUseSurrogates UCS Block )rm   Ú xmlUCSIsHighPrivateUseSurrogatesr³  s     r   ÚuCSIsHighPrivateUseSurrogatesrá  +
  rÁ  r   c                 ó2   • [         R                  " U 5      nU$ )z@Check whether the character is part of HighSurrogates UCS
Block )rm   ÚxmlUCSIsHighSurrogatesr³  s     r   ÚuCSIsHighSurrogatesrä  1
  rÆ  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Hiragana UCS Block )rm   ÚxmlUCSIsHiraganar³  s     r   ÚuCSIsHiraganarç  7
  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )z?Check whether the character is part of IPAExtensions UCS
Block )rm   ÚxmlUCSIsIPAExtensionsr³  s     r   ÚuCSIsIPAExtensionsrê  <
  r¶  r   c                 ó2   • [         R                  " U 5      nU$ )zRCheck whether the character is part of
IdeographicDescriptionCharacters UCS Block )rm   Ú(xmlUCSIsIdeographicDescriptionCharactersr³  s     r   Ú%uCSIsIdeographicDescriptionCharactersrí  B
  s   € ô ×
=Ò
=¸dÓ
C€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z8Check whether the character is part of Kanbun UCS Block )rm   ÚxmlUCSIsKanbunr³  s     r   ÚuCSIsKanbunrð  H
  r  r   c                 ó2   • [         R                  " U 5      nU$ )z@Check whether the character is part of KangxiRadicals UCS
Block )rm   ÚxmlUCSIsKangxiRadicalsr³  s     r   ÚuCSIsKangxiRadicalsró  M
  rÆ  r   c                 ó2   • [         R                  " U 5      nU$ )z9Check whether the character is part of Kannada UCS Block )rm   ÚxmlUCSIsKannadar³  s     r   ÚuCSIsKannadarö  S
  rÓ  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Katakana UCS Block )rm   ÚxmlUCSIsKatakanar³  s     r   ÚuCSIsKatakanarù  X
  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )zLCheck whether the character is part of
KatakanaPhoneticExtensions UCS Block )rm   Ú"xmlUCSIsKatakanaPhoneticExtensionsr³  s     r   ÚuCSIsKatakanaPhoneticExtensionsrü  ]
  rú  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Khmer UCS Block )rm   ÚxmlUCSIsKhmerr³  s     r   Ú
uCSIsKhmerrÿ  c
  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z>Check whether the character is part of KhmerSymbols UCS
Block )rm   ÚxmlUCSIsKhmerSymbolsr³  s     r   ÚuCSIsKhmerSymbolsr  h
  s   € ô ×
)Ò
)¨$Ó
/€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z5Check whether the character is part of Lao UCS Block )rm   ÚxmlUCSIsLaor³  s     r   ÚuCSIsLaor  n
  s   € ä
×
 Ò
  Ó
&€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zCCheck whether the character is part of Latin-1Supplement
UCS Block )rm   ÚxmlUCSIsLatin1Supplementr³  s     r   ÚuCSIsLatin1Supplementr  s
  rá  r   c                 ó2   • [         R                  " U 5      nU$ )zACheck whether the character is part of LatinExtended-A UCS
Block )rm   ÚxmlUCSIsLatinExtendedAr³  s     r   ÚuCSIsLatinExtendedAr  y
  rÆ  r   c                 ó2   • [         R                  " U 5      nU$ )zICheck whether the character is part of
LatinExtendedAdditional UCS Block )rm   ÚxmlUCSIsLatinExtendedAdditionalr³  s     r   ÚuCSIsLatinExtendedAdditionalr  
  rï  r   c                 ó2   • [         R                  " U 5      nU$ )zACheck whether the character is part of LatinExtended-B UCS
Block )rm   ÚxmlUCSIsLatinExtendedBr³  s     r   ÚuCSIsLatinExtendedBr  …
  rÆ  r   c                 ó2   • [         R                  " U 5      nU$ )zCCheck whether the character is part of LetterlikeSymbols
UCS Block )rm   ÚxmlUCSIsLetterlikeSymbolsr³  s     r   ÚuCSIsLetterlikeSymbolsr  ‹
  ó   € ô ×
.Ò
.¨tÓ
4€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Limbu UCS Block )rm   ÚxmlUCSIsLimbur³  s     r   Ú
uCSIsLimbur  ‘
  rë  r   c                 ó2   • [         R                  " U 5      nU$ )zBCheck whether the character is part of LinearBIdeograms UCS
Block )rm   ÚxmlUCSIsLinearBIdeogramsr³  s     r   ÚuCSIsLinearBIdeogramsr  –
  rá  r   c                 ó2   • [         R                  " U 5      nU$ )zBCheck whether the character is part of LinearBSyllabary UCS
Block )rm   ÚxmlUCSIsLinearBSyllabaryr³  s     r   ÚuCSIsLinearBSyllabaryr  œ
  rá  r   c                 ó2   • [         R                  " U 5      nU$ )z?Check whether the character is part of LowSurrogates UCS
Block )rm   ÚxmlUCSIsLowSurrogatesr³  s     r   ÚuCSIsLowSurrogatesr!  ¢
  r¶  r   c                 ó2   • [         R                  " U 5      nU$ )z;Check whether the character is part of Malayalam UCS Block )rm   ÚxmlUCSIsMalayalamr³  s     r   ÚuCSIsMalayalamr$  ¨
  r3  r   c                 ó2   • [         R                  " U 5      nU$ )zQCheck whether the character is part of
MathematicalAlphanumericSymbols UCS Block )rm   Ú'xmlUCSIsMathematicalAlphanumericSymbolsr³  s     r   Ú$uCSIsMathematicalAlphanumericSymbolsr'  ­
  s   € ô ×
<Ò
<¸TÓ
B€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zGCheck whether the character is part of
MathematicalOperators UCS Block )rm   ÚxmlUCSIsMathematicalOperatorsr³  s     r   ÚuCSIsMathematicalOperatorsr*  ³
  rö  r   c                 ó2   • [         R                  " U 5      nU$ )zTCheck whether the character is part of
MiscellaneousMathematicalSymbols-A UCS Block )rm   Ú)xmlUCSIsMiscellaneousMathematicalSymbolsAr³  s     r   Ú&uCSIsMiscellaneousMathematicalSymbolsAr-  ¹
  ó   € ô ×
>Ò
>¸tÓ
D€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zTCheck whether the character is part of
MiscellaneousMathematicalSymbols-B UCS Block )rm   Ú)xmlUCSIsMiscellaneousMathematicalSymbolsBr³  s     r   Ú&uCSIsMiscellaneousMathematicalSymbolsBr1  ¿
  r.  r   c                 ó2   • [         R                  " U 5      nU$ )zFCheck whether the character is part of MiscellaneousSymbols
UCS Block )rm   ÚxmlUCSIsMiscellaneousSymbolsr³  s     r   ÚuCSIsMiscellaneousSymbolsr4  Å
  r  r   c                 ó2   • [         R                  " U 5      nU$ )zOCheck whether the character is part of
MiscellaneousSymbolsandArrows UCS Block )rm   Ú%xmlUCSIsMiscellaneousSymbolsandArrowsr³  s     r   Ú"uCSIsMiscellaneousSymbolsandArrowsr7  Ë
  s   € ô ×
:Ò
:¸4Ó
@€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zHCheck whether the character is part of
MiscellaneousTechnical UCS Block )rm   ÚxmlUCSIsMiscellaneousTechnicalr³  s     r   ÚuCSIsMiscellaneousTechnicalr:  Ñ
  ó   € ô ×
3Ò
3°DÓ
9€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z;Check whether the character is part of Mongolian UCS Block )rm   ÚxmlUCSIsMongolianr³  s     r   ÚuCSIsMongolianr>  ×
  r3  r   c                 ó2   • [         R                  " U 5      nU$ )z@Check whether the character is part of MusicalSymbols UCS
Block )rm   ÚxmlUCSIsMusicalSymbolsr³  s     r   ÚuCSIsMusicalSymbolsrA  Ü
  rÆ  r   c                 ó2   • [         R                  " U 5      nU$ )z9Check whether the character is part of Myanmar UCS Block )rm   ÚxmlUCSIsMyanmarr³  s     r   ÚuCSIsMyanmarrD  â
  rÓ  r   c                 ó2   • [         R                  " U 5      nU$ )z=Check whether the character is part of NumberForms UCS Block )rm   ÚxmlUCSIsNumberFormsr³  s     r   ÚuCSIsNumberFormsrG  ç
  ó   € ä
×
(Ò
(¨Ó
.€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Ogham UCS Block )rm   ÚxmlUCSIsOghamr³  s     r   Ú
uCSIsOghamrK  ì
  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z;Check whether the character is part of OldItalic UCS Block )rm   ÚxmlUCSIsOldItalicr³  s     r   ÚuCSIsOldItalicrN  ñ
  r3  r   c                 ó2   • [         R                  " U 5      nU$ )zMCheck whether the character is part of
OpticalCharacterRecognition UCS Block )rm   Ú#xmlUCSIsOpticalCharacterRecognitionr³  s     r   Ú uCSIsOpticalCharacterRecognitionrQ  ö
  rº  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Oriya UCS Block )rm   ÚxmlUCSIsOriyar³  s     r   Ú
uCSIsOriyarT  ü
  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z9Check whether the character is part of Osmanya UCS Block )rm   ÚxmlUCSIsOsmanyar³  s     r   ÚuCSIsOsmanyarW    rÓ  r   c                 ó2   • [         R                  " U 5      nU$ )zDCheck whether the character is part of PhoneticExtensions
UCS Block )rm   ÚxmlUCSIsPhoneticExtensionsr³  s     r   ÚuCSIsPhoneticExtensionsrZ    rŒ  r   c                 ó2   • [         R                  " U 5      nU$ )z<Check whether the character is part of PrivateUse UCS Block )rm   ÚxmlUCSIsPrivateUser³  s     r   ÚuCSIsPrivateUser]    rÏ  r   c                 ó2   • [         R                  " U 5      nU$ )z@Check whether the character is part of PrivateUseArea UCS
Block )rm   ÚxmlUCSIsPrivateUseArear³  s     r   ÚuCSIsPrivateUseArear`    rÆ  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Runic UCS Block )rm   ÚxmlUCSIsRunicr³  s     r   Ú
uCSIsRunicrc    rë  r   c                 ó2   • [         R                  " U 5      nU$ )z9Check whether the character is part of Shavian UCS Block )rm   ÚxmlUCSIsShavianr³  s     r   ÚuCSIsShavianrf    rÓ  r   c                 ó2   • [         R                  " U 5      nU$ )z9Check whether the character is part of Sinhala UCS Block )rm   ÚxmlUCSIsSinhalar³  s     r   ÚuCSIsSinhalari  !  rÓ  r   c                 ó2   • [         R                  " U 5      nU$ )zCCheck whether the character is part of SmallFormVariants
UCS Block )rm   ÚxmlUCSIsSmallFormVariantsr³  s     r   ÚuCSIsSmallFormVariantsrl  &  r  r   c                 ó2   • [         R                  " U 5      nU$ )zHCheck whether the character is part of
SpacingModifierLetters UCS Block )rm   ÚxmlUCSIsSpacingModifierLettersr³  s     r   ÚuCSIsSpacingModifierLettersro  ,  r;  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Specials UCS Block )rm   ÚxmlUCSIsSpecialsr³  s     r   ÚuCSIsSpecialsrr  2  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )zKCheck whether the character is part of
SuperscriptsandSubscripts UCS Block )rm   Ú!xmlUCSIsSuperscriptsandSubscriptsr³  s     r   ÚuCSIsSuperscriptsandSubscriptsru  7  r…  r   c                 ó2   • [         R                  " U 5      nU$ )zFCheck whether the character is part of SupplementalArrows-A
UCS Block )rm   ÚxmlUCSIsSupplementalArrowsAr³  s     r   ÚuCSIsSupplementalArrowsArx  =  ó   € ô ×
0Ò
0°Ó
6€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zFCheck whether the character is part of SupplementalArrows-B
UCS Block )rm   ÚxmlUCSIsSupplementalArrowsBr³  s     r   ÚuCSIsSupplementalArrowsBr|  C  ry  r   c                 ó2   • [         R                  " U 5      nU$ )zSCheck whether the character is part of
SupplementalMathematicalOperators UCS Block )rm   Ú)xmlUCSIsSupplementalMathematicalOperatorsr³  s     r   Ú&uCSIsSupplementalMathematicalOperatorsr  I  r.  r   c                 ó2   • [         R                  " U 5      nU$ )zOCheck whether the character is part of
SupplementaryPrivateUseArea-A UCS Block )rm   Ú$xmlUCSIsSupplementaryPrivateUseAreaAr³  s     r   Ú!uCSIsSupplementaryPrivateUseAreaAr‚  O  ó   € ô ×
9Ò
9¸$Ó
?€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zOCheck whether the character is part of
SupplementaryPrivateUseArea-B UCS Block )rm   Ú$xmlUCSIsSupplementaryPrivateUseAreaBr³  s     r   Ú!uCSIsSupplementaryPrivateUseAreaBr†  U  rƒ  r   c                 ó2   • [         R                  " U 5      nU$ )z8Check whether the character is part of Syriac UCS Block )rm   ÚxmlUCSIsSyriacr³  s     r   ÚuCSIsSyriacr‰  [  r  r   c                 ó2   • [         R                  " U 5      nU$ )z9Check whether the character is part of Tagalog UCS Block )rm   ÚxmlUCSIsTagalogr³  s     r   ÚuCSIsTagalogrŒ  `  rÓ  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Tagbanwa UCS Block )rm   ÚxmlUCSIsTagbanwar³  s     r   ÚuCSIsTagbanwar�  e  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )z6Check whether the character is part of Tags UCS Block )rm   ÚxmlUCSIsTagsr³  s     r   Ú	uCSIsTagsr’  j  r'  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of TaiLe UCS Block )rm   ÚxmlUCSIsTaiLer³  s     r   Ú
uCSIsTaiLer•  o  rë  r   c                 ó2   • [         R                  " U 5      nU$ )zDCheck whether the character is part of TaiXuanJingSymbols
UCS Block )rm   ÚxmlUCSIsTaiXuanJingSymbolsr³  s     r   ÚuCSIsTaiXuanJingSymbolsr˜  t  rŒ  r   c                 ó2   • [         R                  " U 5      nU$ )z7Check whether the character is part of Tamil UCS Block )rm   ÚxmlUCSIsTamilr³  s     r   Ú
uCSIsTamilr›  z  rë  r   c                 ó2   • [         R                  " U 5      nU$ )z8Check whether the character is part of Telugu UCS Block )rm   ÚxmlUCSIsTelugur³  s     r   ÚuCSIsTelugurž    r  r   c                 ó2   • [         R                  " U 5      nU$ )z8Check whether the character is part of Thaana UCS Block )rm   ÚxmlUCSIsThaanar³  s     r   ÚuCSIsThaanar¡  „  r  r   c                 ó2   • [         R                  " U 5      nU$ )z6Check whether the character is part of Thai UCS Block )rm   ÚxmlUCSIsThair³  s     r   Ú	uCSIsThair¤  ‰  r'  r   c                 ó2   • [         R                  " U 5      nU$ )z9Check whether the character is part of Tibetan UCS Block )rm   ÚxmlUCSIsTibetanr³  s     r   ÚuCSIsTibetanr§  Ž  rÓ  r   c                 ó2   • [         R                  " U 5      nU$ )z:Check whether the character is part of Ugaritic UCS Block )rm   ÚxmlUCSIsUgariticr³  s     r   ÚuCSIsUgariticrª  “  rÈ  r   c                 ó2   • [         R                  " U 5      nU$ )zTCheck whether the character is part of
UnifiedCanadianAboriginalSyllabics UCS Block )rm   Ú*xmlUCSIsUnifiedCanadianAboriginalSyllabicsr³  s     r   Ú'uCSIsUnifiedCanadianAboriginalSyllabicsr­  ˜  s   € ô ×
?Ò
?ÀÓ
E€CØ€Jr   c                 ó2   • [         R                  " U 5      nU$ )zDCheck whether the character is part of VariationSelectors
UCS Block )rm   ÚxmlUCSIsVariationSelectorsr³  s     r   ÚuCSIsVariationSelectorsr°  ž  rŒ  r   c                 ó2   • [         R                  " U 5      nU$ )zNCheck whether the character is part of
VariationSelectorsSupplement UCS Block )rm   Ú$xmlUCSIsVariationSelectorsSupplementr³  s     r   Ú!uCSIsVariationSelectorsSupplementr³  ¤  rƒ  r   c                 ó2   • [         R                  " U 5      nU$ )z<Check whether the character is part of YiRadicals UCS Block )rm   ÚxmlUCSIsYiRadicalsr³  s     r   ÚuCSIsYiRadicalsr¶  ª  rÏ  r   c                 ó2   • [         R                  " U 5      nU$ )z=Check whether the character is part of YiSyllables UCS Block )rm   ÚxmlUCSIsYiSyllablesr³  s     r   ÚuCSIsYiSyllablesr¹  ¯  rH  r   c                 ó2   • [         R                  " U 5      nU$ )zGCheck whether the character is part of
YijingHexagramSymbols UCS Block )rm   ÚxmlUCSIsYijingHexagramSymbolsr³  s     r   ÚuCSIsYijingHexagramSymbolsr¼  ´  rö  r   c                 ó0   • [         R                  " U 5        g)zjcheck the compiled lib version against the include one.
This can warn or immediately kill the application N)rm   ÚxmlCheckVersion)rd  s    r   ÚcheckVersionr¿  ¾  s   € ô ×Ò˜wÕ'r   c                 óV   • U c  SnOU R                   n[        R                  " U5      nU$ )z/Pops the top XPath object from the value stack N)rL   rm   ÚvaluePopr‘  s      r   rÁ  rÁ  Ç  s)   € à�|˜t‘WØ—G‘Gˆ'Ü
×
Ò
˜gÓ
&€CØ€Jr   c                   ó|  • \ rS rSrSjS jrS rS rS rS rS r	S	 r
S
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r S  r!S! r"S" r#S# r$S$ r%S% r&S& r'S' r(S( r)S) r*S* r+S+ r,S, r-S- r.S. r/S/ r0S0 r1S1 r2S2 r3S3 r4S4 r5S5 r6S6 r7S7 r8S8 r9S9 r:S: r;S; r<S< r=S= r>S> r?S? r@S@ rASA rBSB rCSC rDSD rESE rFSF rGSG rHSH rISI rJSJ rKSK rLSL rMSM rNSN rOSO rPSP rQSQ rRSR rSSS rTST rUSU rVSV rWSW rXSX rYSY rZSZ r[S[ r\S\ r]S] r^S^ r_S_ r`S` raSa rbSb rcSc rdSd reSe rfSf rgSg rhSh riSirjg)kr�  éÎ  Nc                 ój   • [        U5      S:w  a  [        S5      eXl        [        R	                  XS9  g )Nr   z'xmlNode got a wrong wrapper object typer  )r   Ú	TypeErrorrL   rá   r(   rM   s     r   r(   ÚxmlNode.__init__Ï  ó0   € Ü˜Ó Ó"´YÐ?hÓ5iÐ/iØŒÜ×Ñ˜ÐÒ)r   c                 óH   • SU R                   [        [        U 5      5      4-  $ )Nz<xmlNode (%s) object at 0x%x>©r¨   Úintr   r,   s    r   Ú__repr__ÚxmlNode.__repr__Ô  ó   € Ø.°$·)±)¼SÄÈÃÓ=OÐ1PÑPÐPr   c                 ó`   • [         R                  " U R                  5      nUc  g[        US9nU$ ©zGet the namespace of a node Nr  )rm   ÚxmlNodeGetNsrL   rP  ©r'   r_   Ú_xmlNode__tmps      r   ÚnsÚ
xmlNode.nsØ  s+   € ä×%Ò% d§g¡gÓ.ˆØ‰;˜dÜ˜3‘ˆØˆr   c                 ó`   • [         R                  " U R                  5      nUc  g[        US9nU$ rÏ  )rm   ÚxmlNodeGetNsDefsrL   rP  rÑ  s      r   ÚnsDefsÚxmlNode.nsDefsß  s+   € ä×)Ò)¨$¯'©'Ó2ˆØ‰;˜dÜ˜3‘ˆØˆr   c                 óF   • [         R                  " XR                  U5        g)z>Dumps debug information for the element node, it is
recursive N)rm   ÚxmlDebugDumpNoderL   ©r'   r»  Údepths      r   ÚdebugDumpNodeÚxmlNode.debugDumpNodeê  s   € ô 	×#Ò# F¯G©G°UÕ;r   c                 óF   • [         R                  " XR                  U5        g)zFDumps debug information for the list of element node, it is
recursive N)rm   ÚxmlDebugDumpNodeListrL   rÛ  s      r   ÚdebugDumpNodeListÚxmlNode.debugDumpNodeListï  s   € ô 	×'Ò'¨·±¸Õ?r   c                 óF   • [         R                  " XR                  U5        g)zBDumps debug information for the element node, it is not
recursive N)rm   ÚxmlDebugDumpOneNoderL   rÛ  s      r   ÚdebugDumpOneNodeÚxmlNode.debugDumpOneNodeô  s   € ô 	×&Ò& v¯w©w¸Õ>r   c                 óF   • [         R                  " U R                  5      nU$ )zCount the children of @node. )rm   ÚxmlLsCountNoderL   rñ   s     r   ÚlsCountNodeÚxmlNode.lsCountNodeù  ó   € ä×'Ò'¨¯©Ó0ˆØˆ
r   c                 óD   • [         R                  " XR                  5        g)z,Dump to @output the type and name of @node. N)rm   ÚxmlLsOneNoderL   ©r'   r»  s     r   Ú	lsOneNodeÚxmlNode.lsOneNodeþ  s   € ä×Ò ¯©Õ0r   c                 óD   • [         R                  " U R                  5        g)zPrint node to the output FILE N)rm   ÚxmlShellPrintNoderL   r,   s    r   ÚshellPrintNodeÚxmlNode.shellPrintNode  s   € ä×$Ò$ T§W¡WÕ-r   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ )a  Add a new node to @parent, at the end of the child (or
property) list merging adjacent TEXT nodes (in which case
@cur is freed) If the new node is ATTRIBUTE, it is added
into properties instead of children. If there is an
 attribute with equal name, it is first destroyed. NzxmlAddChild() failedr  )rL   rm   ÚxmlAddChildr    r�  ©r'   r  Úcur__or_   rÒ  s        r   ÚaddChildÚxmlNode.addChild
  sK   € ð ‰; ™Ø—v‘vˆfÜ×$Ò$ T§W¡W¨fÓ5ˆØ‰;œYÐ'=Ó>Ð>Ü˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ )znAdd a list of node at the end of the child list of the
parent merging adjacent TEXT nodes (@cur may be freed) NzxmlAddChildList() failedr  )rL   rm   ÚxmlAddChildListr    r�  r÷  s        r   ÚaddChildListÚxmlNode.addChildList  sK   € ð ‰; ™Ø—v‘vˆfÜ×(Ò(¨¯©°&Ó9ˆØ‰;œYÐ'AÓBÐBÜ˜SÑ!ˆØˆr   c                 óF   • [         R                  " U R                  U5        g)zÑAppend the extra substring to the node content. NOTE: In
contrast to xmlNodeSetContent(), @content is supposed to be
raw text, so unescaped XML special chars are allowed,
 entity references are not supported. N)rm   ÚxmlNodeAddContentrL   r³   s     r   Ú
addContentÚxmlNode.addContent!  ó   € ô
 	×$Ò$ T§W¡W¨gÕ6r   c                 óF   • [         R                  " U R                  X5        g)zÔAppend the extra substring to the node content. NOTE: In
contrast to xmlNodeSetContentLen(), @content is supposed to
be raw text, so unescaped XML special chars are allowed,
 entity references are not supported. N)rm   ÚxmlNodeAddContentLenrL   ©r'   r´   r^   s      r   ÚaddContentLenÚxmlNode.addContentLen(  ó   € ô
 	×'Ò'¨¯©°Õ>r   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ )aU  Add a new node @elem as the next sibling of @cur If the new
node was already inserted in a document it is first
unlinked from its existing context. As a result of text
merging @elem may be freed. If the new node is ATTRIBUTE,
it is added into properties instead of children. If there
 is an attribute with equal name, it is first destroyed. NzxmlAddNextSibling() failedr  )rL   rm   ÚxmlAddNextSiblingr    r�  ©r'   rÈ   Úelem__or_   rÒ  s        r   ÚaddNextSiblingÚxmlNode.addNextSibling/  sK   € ð ‰< 4™ØŸ™ˆgÜ×*Ò*¨4¯7©7°GÓ<ˆØ‰;œYÐ'CÓDÐDÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ )aZ  Add a new node @elem as the previous sibling of @cur
merging adjacent TEXT nodes (@elem may be freed) If the new
node was already inserted in a document it is first
unlinked from its existing context. If the new node is
ATTRIBUTE, it is added into properties instead of children.
If there is an attribute with equal name, it is first
 destroyed. NzxmlAddPrevSibling() failedr  )rL   rm   ÚxmlAddPrevSiblingr    r�  r  s        r   ÚaddPrevSiblingÚxmlNode.addPrevSibling=  sK   € ð ‰< 4™ØŸ™ˆgÜ×*Ò*¨4¯7©7°GÓ<ˆØ‰;œYÐ'CÓDÐDÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ )zÐAdd a new element @elem to the list of siblings of @cur
merging adjacent TEXT nodes (@elem may be freed) If the new
element was already inserted in a document it is first
 unlinked from its existing context. NzxmlAddSibling() failedr  )rL   rm   ÚxmlAddSiblingr    r�  r  s        r   Ú
addSiblingÚxmlNode.addSiblingL  sK   € ð
 ‰< 4™ØŸ™ˆgÜ×&Ò& t§w¡w°Ó8ˆØ‰;œYÐ'?Ó@Ð@Ü˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )zDo a copy of the node. zxmlCopyNode() failedr  )rm   ÚxmlCopyNoderL   r    r�  )r'   Úextendedr_   rÒ  s       r   ÚcopyNodeÚxmlNode.copyNodeX  s7   € ä×$Ò$ T§W¡W¨hÓ7ˆØ‰;œYÐ'=Ó>Ð>Ü˜SÑ!ˆØˆr   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )zgDo a recursive copy of the node list. Use
xmlDocCopyNodeList() if possible to ensure string interning. zxmlCopyNodeList() failedr  )rm   ÚxmlCopyNodeListrL   r    r�  rÑ  s      r   ÚcopyNodeListÚxmlNode.copyNodeList_  s7   € ô ×(Ò(¨¯©Ó1ˆØ‰;œYÐ'AÓBÐBÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ ©zDo a copy of the attribute. NzxmlCopyProp() failedr  ©rL   rm   ÚxmlCopyPropr    r  r÷  s        r   ÚcopyPropÚxmlNode.copyPropg  sI   € à‰; ™Ø—v‘vˆfÜ×$Ò$ T§W¡W¨fÓ5ˆØ‰;œYÐ'=Ó>Ð>Ü˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ ©z Do a copy of an attribute list. NzxmlCopyPropList() failedr  ©rL   rm   ÚxmlCopyPropListr    r  r÷  s        r   ÚcopyPropListÚxmlNode.copyPropListp  sI   € à‰; ™Ø—v‘vˆfÜ×(Ò(¨¯©°&Ó9ˆØ‰;œYÐ'AÓBÐBÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   X25      nUc  [        S5      e[	        US9nU$ ©z+Do a copy of the node to a given document. NzxmlDocCopyNode() failedr  ©rL   rm   ÚxmlDocCopyNoder    r�  )r'   r#  r  Údoc__or_   rÒ  s         r   ÚdocCopyNodeÚxmlNode.docCopyNodey  sI   € à‰; ™Ø—v‘vˆfÜ×'Ò'¨¯©°ÓBˆØ‰;œYÐ'@ÓAÐAÜ˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©z&Do a recursive copy of the node list. NzxmlDocCopyNodeList() failedr  ©rL   rm   ÚxmlDocCopyNodeListr    r�  ©r'   r#  r1  r_   rÒ  s        r   ÚdocCopyNodeListÚxmlNode.docCopyNodeList‚  sG   € à‰; ™Ø—v‘vˆfÜ×+Ò+¨F·G±GÓ<ˆØ‰;œYÐ'DÓEÐEÜ˜SÑ!ˆØˆr   c                 ó„   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  g[        US9nU$ ©zkSet the root element of the document (doc->children is a
list containing possibly comments, PIs, etc ...). Nr  ©rL   rm   ÚxmlDocSetRootElementr�  r8  s        r   ÚdocSetRootElementÚxmlNode.docSetRootElement‹  s@   € ð ‰; ™Ø—v‘vˆfÜ×-Ò-¨f·g±gÓ>ˆØ‰;˜dÜ˜SÑ!ˆØˆr   c                 ó`   • [         R                  " U R                  5      nUc  g[        US9nU$ )zöFinds the first child node of that element which is a
Element node Note the handling of entities references is
different than in the W3C DOM element traversal spec since
we don't have back reference from entities content to
 entities references. Nr  )rm   ÚxmlFirstElementChildrL   r�  rÑ  s      r   ÚfirstElementChildÚxmlNode.firstElementChild•  s.   € ô ×-Ò-¨d¯g©gÓ6ˆØ‰;˜dÜ˜SÑ!ˆØˆr   c                 óD   • [         R                  " U R                  5        g)z•Free a node, this is a recursive behaviour, all the
children are freed too. This doesn't unlink the child from
 the list, use xmlUnlinkNode() first. N)rm   ÚxmlFreeNoderL   r,   s    r   ÚfreeNodeÚxmlNode.freeNode   s   € ô 	×Ò˜tŸw™wÕ'r   c                 óD   • [         R                  " U R                  5        g)zaFree a node and all its siblings, this is a recursive
behaviour, all the children are freed too. N)rm   ÚxmlFreeNodeListrL   r,   s    r   ÚfreeNodeListÚxmlNode.freeNodeList¦  ó   € ô 	×"Ò" 4§7¡7Õ+r   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ ©a_  Searches for the BASE URL. The code should work on both XML
and HTML document even if base mechanisms are completely
different. It returns the base as defined in RFC 2396
sections 5.1.1. Base URI within Document Content and 5.1.2.
Base URI from the Encapsulating Entity However it does not
 return the document base (5.1.3), use doc->URL in this case N©rL   rm   ÚxmlNodeGetBase©r'   r#  r1  r_   s       r   ÚgetBaseÚxmlNode.getBase«  s/   € ð ‰; ™Ø—v‘vˆfÜ×'Ò'¨·±Ó8ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zæRead the value of a node, this can be either the text
carried directly by this node if it's a TEXT node or the
aggregate string of the values carried by this node child's
 (TEXT and ENTITY_REF). Entity references are substituted. r  rñ   s     r   rb  ÚxmlNode.getContent·  s   € ô
 ×*Ò*¨4¯7©7Ó3ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zxSearches the language of a node, i.e. the values of the
xml:lang attribute or the one carried by the nearest
 ancestor. )rm   ÚxmlNodeGetLangrL   rñ   s     r   ÚgetLangÚxmlNode.getLang¿  s   € ô ×'Ò'¨¯©Ó0ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z‹Searches the space preserving behaviour of a node, i.e. the
values of the xml:space attribute or the one carried by the
 nearest ancestor. )rm   ÚxmlNodeGetSpacePreserverL   rñ   s     r   ÚgetSpacePreserveÚxmlNode.getSpacePreserveÆ  s   € ô ×0Ò0°·±Ó9ˆØˆ
r   c                 ób   • [         R                  " U R                  X5      nUc  g[        US9nU$ )aS  Search for an attribute associated to a node This attribute
has to be anchored in the namespace specified. This does
the entity substitution. This function looks in DTD
attribute declaration for #FIXED or default declaration
values unless DTD use has been turned off. Note that a
 namespace of None indicates to use the default namespace. Nr  )rm   ÚxmlHasNsProprL   r  )r'   r¨   Ú	nameSpacer_   rÒ  s        r   Ú	hasNsPropÚxmlNode.hasNsPropÍ  s0   € ô ×%Ò% d§g¡g¨tÓ?ˆØ‰;˜dÜ˜SÑ!ˆØˆr   c                 ób   • [         R                  " U R                  U5      nUc  g[        US9nU$ )z­Search an attribute associated to a node This function also
looks in DTD attribute declaration for #FIXED or default
 declaration values unless DTD use has been turned off. Nr  )rm   Ú
xmlHasProprL   r  )r'   r¨   r_   rÒ  s       r   ÚhasPropÚxmlNode.hasPropÙ  s0   € ô ×#Ò# D§G¡G¨TÓ2ˆØ‰;˜dÜ˜SÑ!ˆØˆr   c                 óF   • [         R                  " U R                  5      nU$ )z\Checks whether this node is an empty or whitespace only
(and possibly ignorable) text-node. )rm   ÚxmlIsBlankNoderL   rñ   s     r   ÚisBlankNodeÚxmlNode.isBlankNodeâ  s   € ô ×'Ò'¨¯©Ó0ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zIs this node a Text node ? )rm   ÚxmlNodeIsTextrL   rñ   s     r   ÚisTextÚxmlNode.isTextè  ó   € ä×&Ò& t§w¡wÓ/ˆØˆ
r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )z!Search the last child of a node. zxmlGetLastChild() failedr  )rm   ÚxmlGetLastChildrL   r    r�  rÑ  s      r   Ú	lastChildÚxmlNode.lastChildí  s5   € ä×(Ò(¨¯©Ó1ˆØ‰;œYÐ'AÓBÐBÜ˜SÑ!ˆØˆr   c                 ó`   • [         R                  " U R                  5      nUc  g[        US9nU$ )zõFinds the last child node of that element which is a
Element node Note the handling of entities references is
different than in the W3C DOM element traversal spec since
we don't have back reference from entities content to
 entities references. Nr  )rm   ÚxmlLastElementChildrL   r�  rÑ  s      r   ÚlastElementChildÚxmlNode.lastElementChildô  s.   € ô ×,Ò,¨T¯W©WÓ5ˆØ‰;˜dÜ˜SÑ!ˆØˆr   c                 óF   • [         R                  " U R                  5      nU$ )z�Get line number of @node. Try to override the limitation of
lines being store in 16 bits ints if XML_PARSE_BIG_LINES
 parser option was used )rm   ÚxmlGetLineNorL   rñ   s     r   ÚlineNoÚxmlNode.lineNoÿ  s   € ô ×%Ò% d§g¡gÓ.ˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©zÁBuilds the string equivalent to the text contained in the
Node list made of TEXTs and ENTITY_REFs, contrary to
xmlNodeListGetString() this function doesn't do any
 character encoding handling. N©rL   rm   ÚxmlNodeListGetRawString©r'   r#  ÚinLiner1  r_   s        r   ÚlistGetRawStringÚxmlNode.listGetRawString  s1   € ð
 ‰; ™Ø—v‘vˆfÜ×0Ò0°¿¹À&ÓIˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©zaBuild the string equivalent to the text contained in the
Node list made of TEXTs and ENTITY_REFs N©rL   rm   ÚxmlNodeListGetStringr�  s        r   ÚlistGetStringÚxmlNode.listGetString  s1   € ð ‰; ™Ø—v‘vˆfÜ×-Ò-¨f·g±g¸vÓFˆØˆ
r   c                 óœ   • Uc  SnOUR                   n[        R                  " U R                   XBU5      nUc  [        S5      e[	        US9nU$ ©a÷  Creation of a new child element, added at the end of
@parent children list. @ns and @content parameters are
optional (None). If @ns is None, the newly created element
inherits the namespace of @parent. If @content is non None,
a child list containing the TEXTs and ENTITY_REFs node will
be created. NOTE: @content is supposed to be a piece of XML
CDATA, so it allows entity references. XML special chars
must be escaped first by using
xmlEncodeEntitiesReentrant(), or xmlNewTextChild() should
 be used. NzxmlNewChild() failedr  ©rL   rm   ÚxmlNewChildr    r�  ©r'   rÓ  r¨   r´   Úns__or_   rÒ  s          r   ÚnewChildÚxmlNode.newChild  sM   € ð ‰:˜t‘uØ—e‘eˆeÜ×$Ò$ T§W¡W¨e¸7ÓCˆØ‰;œYÐ'=Ó>Ð>Ü˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        US9nU$ )a%  Creation of a new Namespace. This function will refuse to
create a namespace with a similar prefix than an existing
one present on this node. Note that for a default
namespace, @prefix should be None.  We use href==None in
the case of an element creation where the namespace was not
 defined. zxmlNewNs() failedr  )rm   ÚxmlNewNsrL   r    rP  )r'   rQ  rÔ  r_   rÒ  s        r   ÚnewNsÚxmlNode.newNs*  s8   € ô ×!Ò! $§'¡'¨4Ó8ˆØ‰;œYÐ':Ó;Ð;Ü˜3‘ˆØˆr   c                 óœ   • Uc  SnOUR                   n[        R                  " U R                   XBU5      nUc  [        S5      e[	        US9nU$ ©úECreate a new property tagged with a namespace and carried
by a node. NzxmlNewNsProp() failedr  ©rL   rm   ÚxmlNewNsPropr    r  ©r'   rÓ  r¨   rg  r�  r_   rÒ  s          r   Ú	newNsPropÚxmlNode.newNsProp6  óM   € ð ‰:˜t‘uØ—e‘eˆeÜ×%Ò% d§g¡g¨u¸EÓBˆØ‰;œYÐ'>Ó?Ð?Ü˜SÑ!ˆØˆr   c                 óœ   • Uc  SnOUR                   n[        R                  " U R                   XBU5      nUc  [        S5      e[	        US9nU$ ©r™  NzxmlNewNsPropEatName() failedr  ©rL   rm   ÚxmlNewNsPropEatNamer    r  rœ  s          r   ÚnewNsPropEatNameÚxmlNode.newNsPropEatName@  sM   € ð ‰:˜t‘uØ—e‘eˆeÜ×,Ò,¨T¯W©W°eÀ5ÓIˆØ‰;œYÐ'EÓFÐFÜ˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        US9nU$ )z)Create a new property carried by a node. zxmlNewProp() failedr  )rm   Ú
xmlNewProprL   r    r  ©r'   r¨   rg  r_   rÒ  s        r   ÚnewPropÚxmlNode.newPropJ  s7   € ä×#Ò# D§G¡G¨TÓ9ˆØ‰;œYÐ'<Ó=Ð=Ü˜SÑ!ˆØˆr   c                 óœ   • Uc  SnOUR                   n[        R                  " U R                   XBU5      nUc  [        S5      e[	        US9nU$ ©an  Creation of a new child element, added at the end of
@parent children list. @ns and @content parameters are
optional (None). If @ns is None, the newly created element
inherits the namespace of @parent. If @content is non None,
a child TEXT node will be created containing the string
@content. NOTE: Use xmlNewChild() if @content will contain
entities that need to be preserved. Use this function,
xmlNewTextChild(), if you need to ensure that reserved XML
chars that might appear in @content, such as the ampersand,
greater-than or less-than signs, are automatically replaced
 by their XML escaped entity representations. NzxmlNewTextChild() failedr  ©rL   rm   ÚxmlNewTextChildr    r�  r�  s          r   ÚnewTextChildÚxmlNode.newTextChildQ  sM   € ð ‰:˜t‘uØ—e‘eˆeÜ×(Ò(¨¯©°%¸wÓGˆØ‰;œYÐ'AÓBÐBÜ˜SÑ!ˆØˆr   c                 ó`   • [         R                  " U R                  5      nUc  g[        US9nU$ )zþFinds the first closest next sibling of the node which is
an element node. Note the handling of entities references
is different than in the W3C DOM element traversal spec
since we don't have back reference from entities content to
 entities references. Nr  )rm   ÚxmlNextElementSiblingrL   r�  rÑ  s      r   ÚnextElementSiblingÚxmlNode.nextElementSiblingd  s.   € ô ×.Ò.¨t¯w©wÓ7ˆØ‰;˜dÜ˜SÑ!ˆØˆr   c                 óH   • [         R                  " U R                  U5      nU$ )a@  Search and get the value of an attribute associated to a
node This does the entity substitution. This function looks
in DTD attribute declaration for #FIXED or default
declaration values unless DTD use has been turned off. This
function is similar to xmlGetProp except it will accept
 only an attribute in no namespace. )rm   ÚxmlGetNoNsProprL   ©r'   r¨   r_   s      r   ÚnoNsPropÚxmlNode.noNsPropo  s   € ô ×'Ò'¨¯©°Ó6ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z0Build a structure based Path for the given node )rm   ÚxmlGetNodePathrL   rñ   s     r   ÚnodePathÚxmlNode.nodePathy  rë  r   c                 óH   • [         R                  " U R                  X5      nU$ )a  Search and get the value of an attribute associated to a
node This attribute has to be anchored in the namespace
specified. This does the entity substitution. This function
looks in DTD attribute declaration for #FIXED or default
 declaration values unless DTD use has been turned off. )rm   ÚxmlGetNsProprL   )r'   r¨   ra  r_   s       r   ÚnsPropÚxmlNode.nsProp~  s   € ô ×%Ò% d§g¡g¨tÓ?ˆØˆ
r   c                 ó`   • [         R                  " U R                  5      nUc  g[        US9nU$ )a  Finds the first closest previous sibling of the node which
is an element node. Note the handling of entities
references is different than in the W3C DOM element
traversal spec since we don't have back reference from
 entities content to entities references. Nr  )rm   ÚxmlPreviousElementSiblingrL   r�  rÑ  s      r   ÚpreviousElementSiblingÚxmlNode.previousElementSibling‡  s.   € ô ×2Ò2°4·7±7Ó;ˆØ‰;˜dÜ˜SÑ!ˆØˆr   c                 óH   • [         R                  " U R                  U5      nU$ )ay  Search and get the value of an attribute associated to a
node This does the entity substitution. This function looks
in DTD attribute declaration for #FIXED or default
declaration values unless DTD use has been turned off.
NOTE: this function acts independently of namespaces
associated to the attribute. Use xmlGetNsProp() or
 xmlGetNoNsProp() for namespace aware processing. )rm   Ú
xmlGetProprL   r·  s      r   ÚpropÚxmlNode.prop’  s   € ô ×#Ò# D§G¡G¨TÓ2ˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ ©aÑ  This function checks that all the namespaces declared
within the given tree are properly declared. This is needed
for example after Copy or Cut and then paste operations.
The subtree may still hold pointers to namespace
declarations outside the subtree or invalid/masked. As much
as possible the function try to reuse the existing
namespaces found in the new environment. If not possible
the new namespaces are redeclared on @tree at the top of
 the given subtree. N©rL   rm   ÚxmlReconciliateNsrR  s       r   ÚreconciliateNsÚxmlNode.reconciliateNs�  s/   € ð ‰; ™Ø—v‘vˆfÜ×*Ò*¨6·7±7Ó;ˆØˆ
r   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ )z¯Unlink the old node from its current context, prune the new
one at the same place. If @cur was already inserted in a
 document it is first unlinked from its existing context. NzxmlReplaceNode() failedr  )rL   rm   ÚxmlReplaceNoder    r�  r÷  s        r   ÚreplaceNodeÚxmlNode.replaceNode¬  sK   € ð ‰; ™Ø—v‘vˆfÜ×'Ò'¨¯©°Ó8ˆØ‰;œYÐ'@ÓAÐAÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " X0R                   U5      nUc  [        S5      e[	        US9nU$ ©a  Search a Ns registered under a given name space for a
document. recurse on the parents until it finds the defined
namespace or return None otherwise. @nameSpace can be None,
this is a search for the default namespace. We don't allow
to cross entities boundaries. If you don't declare the
namespace within those you will be in troubles !!! A
 warning is generated to cover this case. NzxmlSearchNs() failedr  ©rL   rm   ÚxmlSearchNsr    rP  )r'   r#  ra  r1  r_   rÒ  s         r   ÚsearchNsÚxmlNode.searchNs·  sJ   € ð ‰; ™Ø—v‘vˆfÜ×$Ò$ V¯W©W°iÓ@ˆØ‰;œYÐ'=Ó>Ð>Ü˜3‘ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " X0R                   U5      nUc  [        S5      e[	        US9nU$ ©zySearch a Ns aliasing a given URI. Recurse on the parents
until it finds the defined namespace or return None
 otherwise. NzxmlSearchNsByHref() failedr  ©rL   rm   ÚxmlSearchNsByHrefr    rP  )r'   r#  rQ  r1  r_   rÒ  s         r   ÚsearchNsByHrefÚxmlNode.searchNsByHrefÆ  sJ   € ð ‰; ™Ø—v‘vˆfÜ×*Ò*¨6·7±7¸DÓAˆØ‰;œYÐ'CÓDÐDÜ˜3‘ˆØˆr   c                 óF   • [         R                  " U R                  U5        g)zQSet (or reset) the base URI of a node, i.e. the value of
the xml:base attribute. N)rm   ÚxmlNodeSetBaserL   r½  s     r   ÚsetBaseÚxmlNode.setBaseÑ  s   € ô 	×!Ò! $§'¡'¨3Õ/r   c                 óF   • [         R                  " U R                  U5        g©zëReplace the content of a node. NOTE: @content is supposed
to be a piece of XML CDATA, so it allows entity references,
but XML special chars need to be escaped first by using
 xmlEncodeEntitiesReentrant() resp. xmlEncodeSpecialChars(). N)rm   ÚxmlNodeSetContentrL   r³   s     r   Ú
setContentÚxmlNode.setContentÖ  r  r   c                 óF   • [         R                  " U R                  X5        grå  )rm   ÚxmlNodeSetContentLenrL   r  s      r   ÚsetContentLenÚxmlNode.setContentLenÝ  r	  r   c                 óF   • [         R                  " U R                  U5        g)zGSet the language of a node, i.e. the values of the xml:lang
attribute. N)rm   ÚxmlNodeSetLangrL   )r'   ro  s     r   ÚsetLangÚxmlNode.setLangä  s   € ô 	×!Ò! $§'¡'¨4Õ0r   c                 ój   • Uc  SnOUR                   n[        R                  " U R                   U5        g©z<update all nodes in the list to point to the right document N©rL   rm   ÚxmlSetListDoc©r'   r#  r1  s      r   Ú
setListDocÚxmlNode.setListDocé  s(   € à‰; ™Ø—v‘vˆfÜ× Ò  §¡¨&Õ1r   c                 óF   • [         R                  " U R                  U5        g)z#Set (or reset) the name of a node. N)rm   ÚxmlNodeSetNamerL   r§   s     r   ÚsetNameÚxmlNode.setNameï  s   € ä×!Ò! $§'¡'¨4Õ0r   c                 ój   • Uc  SnOUR                   n[        R                  " U R                   U5        g©z/Associate a namespace to a node, a posteriori. N©rL   rm   ÚxmlSetNs)r'   rÓ  r�  s      r   ÚsetNsÚxmlNode.setNsó  s(   € à‰:˜t‘uØ—e‘eˆeÜ×Ò˜DŸG™G UÕ+r   c                 óœ   • Uc  SnOUR                   n[        R                  " U R                   XBU5      nUc  [        S5      e[	        US9nU$ ©zfSet (or reset) an attribute carried by a node. The ns
structure must be in scope, this is not checked NzxmlSetNsProp() failedr  ©rL   rm   ÚxmlSetNsPropr    r  rœ  s          r   Ú	setNsPropÚxmlNode.setNsPropù  rŸ  r   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        US9nU$ )zÑSet (or reset) an attribute carried by a node. If @name has
a prefix, then the corresponding namespace-binding will be
used, if in scope; it is an error it there's no such
 ns-binding for the prefix in scope. zxmlSetProp() failedr  )rm   Ú
xmlSetProprL   r    r  r¨  s        r   ÚsetPropÚxmlNode.setProp  s9   € ô
 ×#Ò# D§G¡G¨TÓ9ˆØ‰;œYÐ'<Ó=Ð=Ü˜SÑ!ˆØˆr   c                 óF   • [         R                  " U R                  U5        g)zdSet (or reset) the space preserving behaviour of a node,
i.e. the value of the xml:space attribute. N)rm   ÚxmlNodeSetSpacePreserverL   )r'   r  s     r   ÚsetSpacePreserveÚxmlNode.setSpacePreserve  s   € ô 	×*Ò*¨4¯7©7°CÕ8r   c                 ój   • Uc  SnOUR                   n[        R                  " U R                   U5        g©z?update all nodes under the tree to point to the right
document N©rL   rm   ÚxmlSetTreeDocrõ  s      r   Ú
setTreeDocÚxmlNode.setTreeDoc  s*   € ð ‰; ™Ø—v‘vˆfÜ× Ò  §¡¨&Õ1r   c                 óH   • [         R                  " U R                  X5      nU$ )z@Concat the given string at the end of the existing node
content )rm   ÚxmlTextConcatrL   )r'   r´   r^   r_   s       r   Ú
textConcatÚxmlNode.textConcat  s   € ô ×&Ò& t§w¡w°Ó=ˆØˆ
r   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ )zMerge two text nodes into one NzxmlTextMerge() failedr  )rL   rm   ÚxmlTextMerger    r�  )r'   ÚsecondÚ	second__or_   rÒ  s        r   Ú	textMergeÚxmlNode.textMerge  sI   € à‰> t™9Ø Ÿ)™)ˆiÜ×%Ò% d§g¡g¨yÓ9ˆØ‰;œYÐ'>Ó?Ð?Ü˜SÑ!ˆØˆr   c                 óD   • [         R                  " U R                  5        g)zñUnlink a node from it's current context, the node is not
freed If one need to free the node, use xmlFreeNode()
routine after the unlink to discard it. Note that namespace
nodes can't be unlinked as they do not have pointer to
 their parent. N)rm   ÚxmlUnlinkNoderL   r,   s    r   Ú
unlinkNodeÚxmlNode.unlinkNode(  s   € ô 	× Ò  §¡Õ)r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   X25      nU$ ©z'Remove an attribute carried by a node. N©rL   rm   ÚxmlUnsetNsProp)r'   rÓ  r¨   r�  r_   s        r   ÚunsetNsPropÚxmlNode.unsetNsProp0  s/   € à‰:˜t‘uØ—e‘eˆeÜ×'Ò'¨¯©°Ó=ˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )zURemove an attribute carried by a node. This handles only
attributes in no namespace. )rm   ÚxmlUnsetProprL   r·  s      r   Ú	unsetPropÚxmlNode.unsetProp7  s   € ô ×%Ò% d§g¡g¨tÓ4ˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©zàDetermine whether an attribute is of type ID. In case we
have DTD(s) then this is done if DTD loading has been
requested. In the case of HTML documents parsed with the
 HTML parser, then ID detection is done systematically. N©rL   rm   ÚxmlIsID©r'   r#  r*  r1  Úattr__or_   s         r   ÚisIDÚxmlNode.isIDA  sC   € ð
 ‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgÜ× Ò  ¯©°'Ó:ˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©zšDetermine whether an attribute is of type Ref. In case we
have DTD(s) then this is simple, otherwise we use an
 heuristic: name Ref (upper or lowercase). N©rL   rm   ÚxmlIsRefr2  s         r   ÚisRefÚxmlNode.isRefM  sC   € ð ‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgÜ×!Ò! &¯'©'°7Ó;ˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " X@R                   X#5      nU$ ©aZ  Does the validation related extra step of the normalization
of attribute values:  If the declared value is not CDATA,
then the XML processor must further process the normalized
attribute value by discarding any leading and trailing
space (#x20) characters, and by replacing sequences of
 space (#x20) characters by single space (#x20) character. N©rL   rm   ÚxmlValidNormalizeAttributeValue)r'   r#  r¨   rg  r1  r_   s         r   ÚvalidNormalizeAttributeValueÚ$xmlNode.validNormalizeAttributeValueX  s1   € ð ‰; ™Ø—v‘vˆfÜ×8Ò8¸ÇÁÈ$ÓVˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ ©z:Implement the XInclude substitution for the given subtree )rm   ÚxmlXIncludeProcessTreerL   rñ   s     r   ÚxincludeProcessTreeÚxmlNode.xincludeProcessTreeh  ó   € ä×/Ò/°·±Ó8ˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ rC  )rm   ÚxmlXIncludeProcessTreeFlagsrL   ©r'   Úflagsr_   s      r   ÚxincludeProcessTreeFlagsÚ xmlNode.xincludeProcessTreeFlagsm  s   € ä×4Ò4°T·W±W¸eÓDˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ ©z<Validate a branch of a tree, starting with the given @elem. N©rL   rm   ÚxmlSchemaValidateOneElement©r'   rH  r’  r_   s       r   ÚschemaValidateOneElementÚ xmlNode.schemaValidateOneElementv  s-   € à‰< 4™ØŸ™ˆgÜ×4Ò4°W¿g¹gÓFˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z$Converts a node to its number value )rm   ÚxmlXPathCastNodeToNumberrL   rñ   s     r   ÚxpathCastNodeToNumberÚxmlNode.xpathCastNodeToNumber�  ó   € ä×1Ò1°$·'±'Ó:ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z%Converts a node to its string value. )rm   ÚxmlXPathCastNodeToStringrL   rñ   s     r   ÚxpathCastNodeToStringÚxmlNode.xpathCastNodeToString†  rY  r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ )z'Compare two nodes w.r.t document order N)rL   rm   ÚxmlXPathCmpNodes)r'   Únode2Únode2__or_   s       r   ÚxpathCmpNodesÚxmlNode.xpathCmpNodes‹  s/   € à‰= T™(ØŸ™ˆhÜ×)Ò)¨$¯'©'°8Ó<ˆØˆ
r   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   X5      nUc  [        S5      e[	        U5      $ )z†Evaluate the XPath Location Path in the given context. The
node 'node' is set as the context node. The context node is
 not restored. NzxmlXPathNodeEval() failed)rL   rm   ÚxmlXPathNodeEvalrA   r—  )r'   re   r¦  Úctx__or_   s        r   ÚxpathNodeEvalÚxmlNode.xpathNodeEval’  sG   € ð ‰; ™Ø—v‘vˆfÜ×)Ò)¨$¯'©'°3Ó?ˆØ‰;œZÐ(CÓDÐDÜ˜cÓ"Ð"r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        U5      $ )z[Create a new xmlXPathObjectPtr of type NodeSet and
initialize it with the single Node @val zxmlXPathNewNodeSet() failed)rm   ÚxmlXPathNewNodeSetrL   rA   r—  rñ   s     r   ÚxpathNewNodeSetÚxmlNode.xpathNewNodeSet   s3   € ô ×+Ò+¨D¯G©GÓ4ˆØ‰;œZÐ(EÓFÐFÜ˜cÓ"Ð"r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        U5      $ )zcCreate a new xmlXPathObjectPtr of type Value Tree (XSLT)
and initialize it with the tree root @val zxmlXPathNewValueTree() failed)rm   ÚxmlXPathNewValueTreerL   rA   r—  rñ   s     r   ÚxpathNewValueTreeÚxmlNode.xpathNewValueTree§  s3   € ô ×-Ò-¨d¯g©gÓ6ˆØ‰;œZÐ(GÓHÐHÜ˜cÓ"Ð"r   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©aq  Traversal function for the "ancestor" direction the
ancestor axis contains the ancestors of the context node;
the ancestors of the context node consist of the parent of
context node and the parent's parent and so on; the nodes
are ordered in reverse document order; thus the parent is
the first node on the axis, and the parent's parent is the
 second node on the axis NzxmlXPathNextAncestor() failedr  ©rL   rm   ÚxmlXPathNextAncestorrA   r�  ©r'   rH  r’  r_   rÒ  s        r   ÚxpathNextAncestorÚxmlNode.xpathNextAncestor®  sI   € ð ‰< 4™ØŸ™ˆgÜ×-Ò-¨g·w±wÓ?ˆØ‰;œZÐ(GÓHÐHÜ˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©aA  Traversal function for the "ancestor-or-self" direction he
ancestor-or-self axis contains the context node and
ancestors of the context node in reverse document order;
thus the context node is the first node on the axis, and
the context node's parent the second; parent here is
 defined the same as with the parent axis. Nz#xmlXPathNextAncestorOrSelf() failedr  ©rL   rm   ÚxmlXPathNextAncestorOrSelfrA   r�  ru  s        r   ÚxpathNextAncestorOrSelfÚxmlNode.xpathNextAncestorOrSelf½  sI   € ð ‰< 4™ØŸ™ˆgÜ×3Ò3°G¿W¹WÓEˆØ‰;œZÐ(MÓNÐNÜ˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©z`Traversal function for the "attribute" direction TODO:
support DTD inherited default attributes NzxmlXPathNextAttribute() failedr  ©rL   rm   ÚxmlXPathNextAttributerA   r�  ru  s        r   ÚxpathNextAttributeÚxmlNode.xpathNextAttributeË  sI   € ð ‰< 4™ØŸ™ˆgÜ×.Ò.¨w¿¹Ó@ˆØ‰;œZÐ(HÓIÐIÜ˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©zyTraversal function for the "child" direction The child axis
contains the children of the context node in document order. NzxmlXPathNextChild() failedr  ©rL   rm   ÚxmlXPathNextChildrA   r�  ru  s        r   ÚxpathNextChildÚxmlNode.xpathNextChildÕ  sI   € ð ‰< 4™ØŸ™ˆgÜ×*Ò*¨7·G±GÓ<ˆØ‰;œZÐ(DÓEÐEÜ˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©zÀTraversal function for the "descendant" direction the
descendant axis contains the descendants of the context
node in document order; a descendant is a child or a child
 of a child and so on. NzxmlXPathNextDescendant() failedr  ©rL   rm   ÚxmlXPathNextDescendantrA   r�  ru  s        r   ÚxpathNextDescendantÚxmlNode.xpathNextDescendantß  sI   € ð
 ‰< 4™ØŸ™ˆgÜ×/Ò/°¿¹ÓAˆØ‰;œZÐ(IÓJÐJÜ˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©a(  Traversal function for the "descendant-or-self" direction
the descendant-or-self axis contains the context node and
the descendants of the context node in document order; thus
the context node is the first node on the axis, and the
first child of the context node is the second node on the
 axis Nz%xmlXPathNextDescendantOrSelf() failedr  ©rL   rm   ÚxmlXPathNextDescendantOrSelfrA   r�  ru  s        r   ÚxpathNextDescendantOrSelfÚ!xmlNode.xpathNextDescendantOrSelfë  sI   € ð ‰< 4™ØŸ™ˆgÜ×5Ò5°g¿w¹wÓGˆØ‰;œZÐ(OÓPÐPÜ˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©a)  Traversal function for the "following" direction The
following axis contains all nodes in the same document as
the context node that are after the context node in
document order, excluding any descendants and excluding
attribute nodes and namespace nodes; the nodes are ordered
 in document order NzxmlXPathNextFollowing() failedr  ©rL   rm   ÚxmlXPathNextFollowingrA   r�  ru  s        r   ÚxpathNextFollowingÚxmlNode.xpathNextFollowingù  óI   € ð ‰< 4™ØŸ™ˆgÜ×.Ò.¨w¿¹Ó@ˆØ‰;œZÐ(HÓIÐIÜ˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©zœTraversal function for the "following-sibling" direction
The following-sibling axis contains the following siblings
 of the context node in document order. Nz%xmlXPathNextFollowingSibling() failedr  ©rL   rm   ÚxmlXPathNextFollowingSiblingrA   r�  ru  s        r   ÚxpathNextFollowingSiblingÚ!xmlNode.xpathNextFollowingSibling  sI   € ð ‰< 4™ØŸ™ˆgÜ×5Ò5°g¿w¹wÓGˆØ‰;œZÐ(OÓPÐPÜ˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©a'  Traversal function for the "namespace" direction the
namespace axis contains the namespace nodes of the context
node; the order of nodes on this axis is
implementation-defined; the axis will be empty unless the
context node is an element  We keep the XML namespace node
 at the end of the list. NzxmlXPathNextNamespace() failedr  ©rL   rm   ÚxmlXPathNextNamespacerA   r�  ru  s        r   ÚxpathNextNamespaceÚxmlNode.xpathNextNamespace  rœ  r   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©zyTraversal function for the "parent" direction The parent
axis contains the parent of the context node, if there is
 one. NzxmlXPathNextParent() failedr  ©rL   rm   ÚxmlXPathNextParentrA   r�  ru  s        r   ÚxpathNextParentÚxmlNode.xpathNextParent   sI   € ð ‰< 4™ØŸ™ˆgÜ×+Ò+¨G·W±WÓ=ˆØ‰;œZÐ(EÓFÐFÜ˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©a0  Traversal function for the "preceding" direction the
preceding axis contains all nodes in the same document as
the context node that are before the context node in
document order, excluding any ancestors and excluding
attribute nodes and namespace nodes; the nodes are ordered
 in reverse document order NzxmlXPathNextPreceding() failedr  ©rL   rm   ÚxmlXPathNextPrecedingrA   r�  ru  s        r   ÚxpathNextPrecedingÚxmlNode.xpathNextPreceding+  rœ  r   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©a  Traversal function for the "preceding-sibling" direction
The preceding-sibling axis contains the preceding siblings
of the context node in reverse document order; the first
preceding sibling is first on the axis; the sibling
 preceding that node is the second on the axis and so on. Nz%xmlXPathNextPrecedingSibling() failedr  ©rL   rm   ÚxmlXPathNextPrecedingSiblingrA   r�  ru  s        r   ÚxpathNextPrecedingSiblingÚ!xmlNode.xpathNextPrecedingSibling9  sI   € ð ‰< 4™ØŸ™ˆgÜ×5Ò5°g¿w¹wÓGˆØ‰;œZÐ(OÓPÐPÜ˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ ©z`Traversal function for the "self" direction The self axis
contains just the context node itself NzxmlXPathNextSelf() failedr  ©rL   rm   ÚxmlXPathNextSelfrA   r�  ru  s        r   ÚxpathNextSelfÚxmlNode.xpathNextSelfF  sI   € ð ‰< 4™ØŸ™ˆgÜ×)Ò)¨'·7±7Ó;ˆØ‰;œZÐ(CÓDÐDÜ˜SÑ!ˆØˆr   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        U5      $ )zBCreate a new xmlXPathObjectPtr of type range using a single
nodes z!xmlXPtrNewCollapsedRange() failed)rm   ÚxmlXPtrNewCollapsedRangerL   r    r—  rñ   s     r   ÚxpointerNewCollapsedRangeÚ!xmlNode.xpointerNewCollapsedRangeT  s3   € ô ×1Ò1°$·'±'Ó:ˆØ‰;œYÐ'JÓKÐKÜ˜cÓ"Ð"r   c                 ó¾   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X0R                   U5      nUc  [        S5      e[	        US9nU$ ©zCreate a new XPointer context NzxmlXPtrNewContext() failedr  ©rL   rm   ÚxmlXPtrNewContextr    ÚxpathContext)r'   r#  Úoriginr1  Ú	origin__or_   rÒ  s          r   ÚxpointerNewContextÚxmlNode.xpointerNewContext[  s[   € à‰; ™Ø—v‘vˆfØ‰> t™9Ø Ÿ)™)ˆiÜ×*Ò*¨6·7±7¸IÓFˆØ‰;œYÐ'CÓDÐDÜ #Ñ&ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        U5      $ )z‚Create a new xmlXPathObjectPtr of type LocationSet and
initialize it with the single range made of the two nodes
 @start and @end Nz#xmlXPtrNewLocationSetNodes() failed)rL   rm   ÚxmlXPtrNewLocationSetNodesr    r—  ©r'   ÚendÚend__or_   s       r   ÚxpointerNewLocationSetNodesÚ#xmlNode.xpointerNewLocationSetNodesf  sG   € ð ‰; ™Ø—v‘vˆfÜ×3Ò3°D·G±G¸VÓDˆØ‰;œYÐ'LÓMÐMÜ˜cÓ"Ð"r   c                 óœ   • Uc  SnOUR                   n[        R                  " U R                   XU5      nUc  [        S5      e[	        U5      $ )z-Create a new xmlXPathObjectPtr of type range NzxmlXPtrNewRange() failed)rL   rm   ÚxmlXPtrNewRanger    r—  )r'   Ú
startindexrÑ  ÚendindexrÒ  r_   s         r   ÚxpointerNewRangeÚxmlNode.xpointerNewRangep  sG   € à‰; ™Ø—v‘vˆfÜ×(Ò(¨¯©°*ÀhÓOˆØ‰;œYÐ'AÓBÐBÜ˜cÓ"Ð"r   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        U5      $ )z;Create a new xmlXPathObjectPtr of type range using 2 nodes NzxmlXPtrNewRangeNodes() failed)rL   rm   ÚxmlXPtrNewRangeNodesr    r—  rÐ  s       r   ÚxpointerNewRangeNodesÚxmlNode.xpointerNewRangeNodesx  sE   € à‰; ™Ø—v‘vˆfÜ×-Ò-¨d¯g©g°vÓ>ˆØ‰;œYÐ'FÓGÐGÜ˜cÓ"Ð"r   rw   r#   )kr   r   r	   r
   r(   rË  rÓ  r×  rÝ  rá  rå  ré  rï  ró  rù  rý  r  r  r  r  r  r  r  r%  r+  r2  r9  r?  rC  rG  rK  rS  rb  rY  r]  rb  rf  rj  rn  rs  rw  r{  rƒ  r‰  r‘  r•  r�  r¤  r©  r¯  r³  r¸  r¼  rÀ  rÄ  rÈ  rÎ  rÒ  rØ  rÞ  râ  rç  rë  rï  rö  rú  r   r  r
  r  r  r  r  r"  r(  r,  r4  r:  r@  rE  rL  rS  rW  r\  rb  rg  rk  ro  rv  r|  r‚  rˆ  rŽ  r”  rš  r¡  r§  r­  r³  r¹  r¿  rÃ  rÌ  rÓ  rÙ  rÝ  r   r   r   r   r�  r�  Î  s  † ô*ò
Qòòò<ò
@ò
?ò
ò
1ò.òòò7ò?òòò
òòòòòòòò	ò(ò,ò

òòòò
òòòò
ò	òòòòò$
òòòòò&	òòò
ò	ò	òò	òò	ò0ò
7ò?ò1ò
2ò1ò,òòò9ò
2òòò*òòò
ò	ò
ò ò
òòò
ò
ò#ò#ò#òòòòò
òòò	òò	òòòò#ò	ò#ò#õ#r   r�  c                   óš  • \ rS rSrSoS jrS rS rS rS rS r	S	 r
S
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r S  r!S! r"S" r#S# r$S$ r%S% r&S& r'S' r(S( r)S) r*S* r+S+ r,S, r-S- r.S. r/S/ r0S0 r1S1 r2S2 r3S3 r4S4 r5S5 r6S6 r7S7 r8S8 r9S9 r:S: r;S; r<S< r=S= r>S> r?S? r@S@ rASA rBSB rCSC rDSD rESE rFSF rGSG rHSH rISI rJSJ rKSK rLSL rMSM rNSN rOSO rPSP rQSQ rRSR rSSS rTST rUSU rVSV rWSW rXSX rYSY rZSZ r[S[ r\S\ r]S] r^S^ r_S_ r`S` raSa rbSb rcSc rdSd reSe rfSf rgSg rhSh riSi rjSj rkSk rlSl rmSm rnSnrog)pr$  i€  Nc                 ój   • [        U5      S:w  a  [        S5      eXl        [        R	                  XS9  g )Nr   z&xmlDoc got a wrong wrapper object typer  ©r   rÅ  rL   r�  r(   rM   s     r   r(   ÚxmlDoc.__init__�  ó0   € Ü˜Ó Ó"´YÐ?gÓ5hÐ/hØŒÜ×Ñ˜ÐÒ)r   c                 óH   • SU R                   [        [        U 5      5      4-  $ )Nz<xmlDoc (%s) object at 0x%x>rÉ  r,   s    r   rË  ÚxmlDoc.__repr__†  ó   € Ø-°·±¼CÄÈÃÓ<NÐ0OÑOÐOr   c                 óH   • [         R                  " U R                  X5      nU$ )zÀThe HTML DTD allows a tag to implicitly close other tags.
The list is kept in htmlStartClose array. This function
checks if the element or one of it's children would
 autoclose the given tag. )rm   ÚhtmlAutoCloseTagrL   )r'   r¨   rÈ   r_   s       r   rè  ÚxmlDoc.htmlAutoCloseTag�  s   € ô
 ×)Ò)¨$¯'©'°4Ó>ˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )z¦The HTML DTD allows a tag to implicitly close other tags.
The list is kept in htmlStartClose array. This function
 checks if a tag is autoclosed by one of it's child )rm   ÚhtmlIsAutoClosedrL   )r'   rÈ   r_   s      r   rë  ÚxmlDoc.htmlIsAutoClosed•  s   € ô ×)Ò)¨$¯'©'°4Ó8ˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " X@R                   X#5        g©zDump an HTML document. N©rL   rm   ÚhtmlDocContentDumpFormatOutput)r'   Úbufr/  r0  Úbuf__os        r   rð  Ú%xmlDoc.htmlDocContentDumpFormatOutput   s(   € à‰; ™Ø—v‘vˆfÜ×1Ò1°&¿'¹'À8ÕTr   c                 ój   • Uc  SnOUR                   n[        R                  " X0R                   U5        g©z;Dump an HTML document. Formatting return/spaces are added. N©rL   rm   ÚhtmlDocContentDumpOutput)r'   rñ  r/  rò  s       r   r÷  ÚxmlDoc.htmlDocContentDumpOutput¦  s(   € à‰; ™Ø—v‘vˆfÜ×+Ò+¨F·G±G¸XÕFr   c                 óF   • [         R                  " XR                  5      nU$ )z'Dump an HTML document to an open FILE. )rm   ÚhtmlDocDumprL   ©r'   r�  r_   s      r   rú  ÚxmlDoc.htmlDocDump¬  s   € ä×$Ò$ Q¯©Ó0ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z,Encoding definition lookup in the Meta tags )rm   ÚhtmlGetMetaEncodingrL   rñ   s     r   rþ  ÚxmlDoc.htmlGetMetaEncoding±  ó   € ä×,Ò,¨T¯W©WÓ5ˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " XR                   U5        g)zcDump an HTML node, recursive behaviour,children are printed
too, and formatting returns are added. N)rL   rm   ÚhtmlNodeDumpFile)r'   rV  r  rø  s       r   r	  ÚxmlDoc.htmlNodeDumpFile¶  s*   € ð ‰; ™Ø—v‘vˆfÜ×#Ò# C¯©°&Õ9r   c                 ón   • Uc  SnOUR                   n[        R                  " XR                   XSU5      nU$ )z}Dump an HTML node, recursive behaviour,children are printed
too.  TODO: if encoding == None try to save in the doc
 encoding N)rL   rm   ÚhtmlNodeDumpFileFormat)r'   rV  r  r/  r0  rø  r_   s          r   r	  ÚxmlDoc.htmlNodeDumpFileFormat½  s4   € ð ‰; ™Ø—v‘vˆfÜ×/Ò/°·W±W¸fÐPVÓWˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " XPR                   XcU5        g©zADump an HTML node, recursive behaviour,children are printed
too. N©rL   rm   ÚhtmlNodeDumpFormatOutput)r'   rñ  r  r/  r0  rò  rø  s          r   r
	  ÚxmlDoc.htmlNodeDumpFormatOutputÆ  s>   € ð ‰; ™Ø—v‘vˆfØ‰; ™Ø—v‘vˆfÜ×+Ò+¨F·G±G¸VÈvÕVr   c                 óŽ   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X@R                   XS5        g©zjDump an HTML node, recursive behaviour,children are printed
too, and formatting returns/spaces are added. N©rL   rm   ÚhtmlNodeDumpOutput)r'   rñ  r  r/  rò  rø  s         r   r	  ÚxmlDoc.htmlNodeDumpOutputÏ  s<   € ð ‰; ™Ø—v‘vˆfØ‰; ™Ø—v‘vˆfÜ×%Ò% f¯g©g°vÕHr   c                 óF   • [         R                  " XR                  5      nU$ )zNDump an HTML document to a file. If @filename is "-" the
stdout file is used. )rm   ÚhtmlSaveFilerL   ©r'   r  r_   s      r   r	  ÚxmlDoc.htmlSaveFileØ  s   € ô ×%Ò% h·±Ó8ˆØˆ
r   c                 óH   • [         R                  " XR                  U5      nU$ )z`Dump an HTML document to a file using a given encoding and
formatting returns/spaces are added. )rm   ÚhtmlSaveFileEncrL   ©r'   r  r/  r_   s       r   r	  ÚxmlDoc.htmlSaveFileEncÞ  s   € ô ×(Ò(¨·7±7¸HÓEˆØˆ
r   c                 óH   • [         R                  " XR                  X#5      nU$ )z8Dump an HTML document to a file using a given encoding. )rm   ÚhtmlSaveFileFormatrL   ©r'   r  r/  r0  r_   s        r   r	  ÚxmlDoc.htmlSaveFileFormatä  s   € ä×+Ò+¨H·g±g¸xÓPˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )z…Sets the current encoding in the Meta tags NOTE: this will
not change the document content encoding, just the META
 flag associated. )rm   ÚhtmlSetMetaEncodingrL   )r'   r/  r_   s      r   r	  ÚxmlDoc.htmlSetMetaEncodingé  s   € ô ×,Ò,¨T¯W©W°hÓ?ˆØˆ
r   c                 óF   • [         R                  " XR                  5      nU$ )zTCheck the document for potential content problems, and
output the errors to @output )rm   ÚxmlDebugCheckDocumentrL   )r'   r»  r_   s      r   ÚdebugCheckDocumentÚxmlDoc.debugCheckDocumentô  s   € ô ×.Ò.¨v·w±wÓ?ˆØˆ
r   c                 óD   • [         R                  " XR                  5        g)z9Dumps debug information for the document, it's recursive N)rm   ÚxmlDebugDumpDocumentrL   rî  s     r   ÚdebugDumpDocumentÚxmlDoc.debugDumpDocumentú  s   € ä×'Ò'¨·±Õ8r   c                 óD   • [         R                  " XR                  5        g)z?Dumps debug information concerning the document, not
recursive N)rm   ÚxmlDebugDumpDocumentHeadrL   rî  s     r   ÚdebugDumpDocumentHeadÚxmlDoc.debugDumpDocumentHeadþ  s   € ô 	×+Ò+¨F·G±GÕ<r   c                 óD   • [         R                  " XR                  5        g)zDDumps debug information for all the entities in use by the
document N)rm   ÚxmlDebugDumpEntitiesrL   rî  s     r   ÚdebugDumpEntitiesÚxmlDoc.debugDumpEntities  s   € ô 	×'Ò'¨·±Õ8r   c                 óz   • [         R                  " U R                  XX4U5      nUc  [        S5      e[	        US9nU$ )z)Register a new entity for this document. zxmlAddDocEntity() failedr  )rm   ÚxmlAddDocEntityrL   r    r’  ©r'   r¨   r   r7  rD  r´   r_   Ú_xmlDoc__tmps           r   ÚaddDocEntityÚxmlDoc.addDocEntity  ó<   € ä×(Ò(¨¯©°$¸jÐT[Ó\ˆØ‰;œYÐ'AÓBÐBÜ˜sÑ#ˆØˆr   c                 óz   • [         R                  " U R                  XX4U5      nUc  [        S5      e[	        US9nU$ )z=Register a new entity for this document DTD external subset. zxmlAddDtdEntity() failedr  )rm   ÚxmlAddDtdEntityrL   r    r’  r2	  s           r   ÚaddDtdEntityÚxmlDoc.addDtdEntity  r6	  r   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )z:Do an entity lookup in the document entity hash table and zxmlGetDocEntity() failedr  )rm   ÚxmlGetDocEntityrL   r    r’  ©r'   r¨   r_   r3	  s       r   Ú	docEntityÚxmlDoc.docEntity  ó7   € ä×(Ò(¨¯©°$Ó7ˆØ‰;œYÐ'AÓBÐBÜ˜sÑ#ˆØˆr   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )z5Do an entity lookup in the DTD entity hash table and zxmlGetDtdEntity() failedr  )rm   ÚxmlGetDtdEntityrL   r    r’  r=	  s       r   Ú	dtdEntityÚxmlDoc.dtdEntity!  r@	  r   c                 óH   • [         R                  " U R                  U5      nU$ )zÍTODO: remove xmlEncodeEntities, once we are not afraid of
breaking binary compatibility  People must migrate their
code to xmlEncodeEntitiesReentrant ! This routine will
 issue a warning when encountered. )rm   ÚxmlEncodeEntitiesrL   ©r'   rç  r_   s      r   ÚencodeEntitiesÚxmlDoc.encodeEntities(  s   € ô
 ×*Ò*¨4¯7©7°EÓ:ˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )zâDo a global encoding of a string, replacing the predefined
entities and non ASCII values with their entities and
CharRef counterparts. Contrary to xmlEncodeEntities, this
 routine is reentrant, and result must be deallocated. )rm   ÚxmlEncodeEntitiesReentrantrL   rG	  s      r   ÚencodeEntitiesReentrantÚxmlDoc.encodeEntitiesReentrant0  s   € ô
 ×3Ò3°D·G±G¸UÓCˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )z€Do a global encoding of a string, replacing the predefined
entities this routine is reentrant, and result must be
 deallocated. )rm   ÚxmlEncodeSpecialCharsrL   rG	  s      r   ÚencodeSpecialCharsÚxmlDoc.encodeSpecialChars8  s   € ô ×.Ò.¨t¯w©w¸Ó>ˆØˆ
r   c                 óz   • [         R                  " U R                  XX4U5      nUc  [        S5      e[	        US9nU$ )a  Create a new entity, this differs from xmlAddDocEntity()
that if the document is None or has no internal subset
defined, then an unlinked entity structure will be
returned, it is then the responsibility of the caller to
link it to the document later or free it when not needed
 anymore. zxmlNewEntity() failedr  )rm   ÚxmlNewEntityrL   r    r’  r2	  s           r   Ú	newEntityÚxmlDoc.newEntity?  s>   € ô ×%Ò% d§g¡g¨t¸:ÐQXÓYˆØ‰;œYÐ'>Ó?Ð?Ü˜sÑ#ˆØˆr   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )z=Do an entity lookup in the internal and external subsets and zxmlGetParameterEntity() failedr  )rm   ÚxmlGetParameterEntityrL   r    r’  r=	  s       r   ÚparameterEntityÚxmlDoc.parameterEntityK  s7   € ä×.Ò.¨t¯w©w¸Ó=ˆØ‰;œYÐ'GÓHÐHÜ˜sÑ#ˆØˆr   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )zµCreate an XML RelaxNGs parser context for that document.
Note: since the process of compiling a RelaxNG schemas
modifies the document, the @doc parameter is duplicated
 internally. z#xmlRelaxNGNewDocParserCtxt() failedr  )rm   ÚxmlRelaxNGNewDocParserCtxtrL   r3   rË  ©r'   r_   r3	  s      r   ÚrelaxNGNewDocParserCtxtÚxmlDoc.relaxNGNewDocParserCtxtV  s7   € ô
 ×3Ò3°D·G±GÓ<ˆØ‰;œ[Ð)NÓOÐOÜ! sÑ+ˆØˆr   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ ©z$Validate a document tree in memory. N©rL   rm   ÚxmlRelaxNGValidateDocrR  s       r   ÚrelaxNGValidateDocÚxmlDoc.relaxNGValidateDoc`  s-   € à‰< 4™ØŸ™ˆgÜ×.Ò.¨w¿¹Ó@ˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©zxValidate a full subtree when
xmlRelaxNGValidatePushElement() returned 0 and the content
 of the node has been expanded. N©rL   rm   ÚxmlRelaxNGValidateFullElement©r'   rH  rÈ   r’  r  r_   s         r   ÚrelaxNGValidateFullElementÚ!xmlDoc.relaxNGValidateFullElementg  sC   € ð ‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ×6Ò6°wÇÁÈÓQˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©z7Pop the element end from the RelaxNG validation stack. N©rL   rm   ÚxmlRelaxNGValidatePopElementri	  s         r   ÚrelaxNGValidatePopElementÚ xmlDoc.relaxNGValidatePopElementr  sA   € à‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ×5Ò5°g¿w¹wÈÓPˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©z:Push a new element start on the RelaxNG validation stack. N©rL   rm   ÚxmlRelaxNGValidatePushElementri	  s         r   ÚrelaxNGValidatePushElementÚ!xmlDoc.relaxNGValidatePushElement{  sA   € à‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ×6Ò6°wÇÁÈÓQˆØˆ
r   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )z|Do a copy of the document info. If recursive, the content
tree will be copied too as well as DTD, namespaces and
 entities. zxmlCopyDoc() failedr  )rm   Ú
xmlCopyDocrL   r    r$  )r'   Ú	recursiver_   r3	  s       r   ÚcopyDocÚxmlDoc.copyDocˆ  s9   € ô ×#Ò# D§G¡G¨YÓ7ˆØ‰;œYÐ'<Ó=Ð=Ü˜CÑ ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " X0R                   U5      nUc  [        S5      e[	        US9nU$ r.  r/  )r'   rk  r  Únode__or_   r3	  s         r   r  ÚxmlDoc.copyNode‘  sI   € à‰< 4™ØŸ™ˆgÜ×'Ò'¨·±¸(ÓCˆØ‰;œYÐ'@ÓAÐAÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ r5  r6  )r'   rk  r~	  r_   r3	  s        r   r  ÚxmlDoc.copyNodeListš  sI   € à‰< 4™ØŸ™ˆgÜ×+Ò+¨D¯G©G°WÓ=ˆØ‰;œYÐ'DÓEÐEÜ˜SÑ!ˆØˆr   c                 óx   • [         R                  " U R                  XU5      nUc  [        S5      e[	        US9nU$ )z)Create the internal subset of a document zxmlCreateIntSubset() failedr  )rm   ÚxmlCreateIntSubsetrL   r    r“  ©r'   r¨   r7  rD  r_   r3	  s         r   ÚcreateIntSubsetÚxmlDoc.createIntSubset£  s9   € ä×+Ò+¨D¯G©G°TÀxÓPˆØ‰;œYÐ'DÓEÐEÜ˜CÑ ˆØˆr   c                 óF   • [         R                  " U R                  5      nU$ )z5get the compression ratio for a document, ZLIB based )rm   ÚxmlGetDocCompressModerL   rñ   s     r   ÚdocCompressModeÚxmlDoc.docCompressModeª  ó   € ä×.Ò.¨t¯w©wÓ7ˆØˆ
r   c                 óF   • [         R                  " XR                  5      nU$ ©z&Dump an XML document to an open FILE. )rm   Ú
xmlDocDumprL   rû  s      r   ÚdumpÚxmlDoc.dump¯  s   € ä×#Ò# A§w¡wÓ/ˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " XR                   U5        g)zFDump an XML/HTML node, recursive behaviour, children are
printed too. N)rL   rm   ÚxmlElemDump)r'   r�  r  rø  s       r   ÚelemDumpÚxmlDoc.elemDump´  s*   € ð ‰; ™Ø—v‘vˆfÜ×Ò˜q§'¡'¨6Õ2r   c                 óH   • [         R                  " XR                  U5      nU$ r�	  )rm   ÚxmlDocFormatDumprL   )r'   r�  r0  r_   s       r   Ú
formatDumpÚxmlDoc.formatDump»  s   € ä×)Ò)¨!¯W©W°fÓ=ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)z>Free up all the structures used by a document, tree
included. N)rm   r_  rL   r,   s    r   ÚfreeDocÚxmlDoc.freeDocÀ  s   € ô 	×Ò˜dŸg™gÕ&r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )zkGet the root element of the document (doc->children is a
list containing possibly comments, PIs, etc ...). zxmlDocGetRootElement() failedr  )rm   ÚxmlDocGetRootElementrL   r    r�  r\	  s      r   ÚgetRootElementÚxmlDoc.getRootElementÅ  s7   € ô ×-Ò-¨d¯g©gÓ6ˆØ‰;œYÐ'FÓGÐGÜ˜SÑ!ˆØˆr   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )z&Get the internal subset of a document zxmlGetIntSubset() failedr  )rm   ÚxmlGetIntSubsetrL   r    r“  r\	  s      r   Ú	intSubsetÚxmlDoc.intSubsetÍ  s5   € ä×(Ò(¨¯©Ó1ˆØ‰;œYÐ'AÓBÐBÜ˜CÑ ˆØˆr   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        US9nU$ )z1Creation of a new node containing a CDATA block. zxmlNewCDataBlock() failedr  )rm   ÚxmlNewCDataBlockrL   r    r�  ©r'   r´   r^   r_   r3	  s        r   ÚnewCDataBlockÚxmlDoc.newCDataBlockÔ  s7   € ä×)Ò)¨$¯'©'°7Ó@ˆØ‰;œYÐ'BÓCÐCÜ˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )z,Creation of a new character reference node. zxmlNewCharRef() failedr  )rm   ÚxmlNewCharRefrL   r    r�  r=	  s       r   Ú
newCharRefÚxmlDoc.newCharRefÛ  s7   € ä×&Ò& t§w¡w°Ó5ˆØ‰;œYÐ'?Ó@Ð@Ü˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )z?Creation of a new node containing a comment within a
document. zxmlNewDocComment() failedr  )rm   ÚxmlNewDocCommentrL   r    r�  ©r'   r´   r_   r3	  s       r   ÚnewDocCommentÚxmlDoc.newDocCommentâ  s9   € ô ×)Ò)¨$¯'©'°7Ó;ˆØ‰;œYÐ'BÓCÐCÜ˜SÑ!ˆØˆr   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )z!Creation of a new Fragment node. zxmlNewDocFragment() failedr  )rm   ÚxmlNewDocFragmentrL   r    r�  r\	  s      r   ÚnewDocFragmentÚxmlDoc.newDocFragmentê  s5   € ä×*Ò*¨4¯7©7Ó3ˆØ‰;œYÐ'CÓDÐDÜ˜SÑ!ˆØˆr   c                 óœ   • Uc  SnOUR                   n[        R                  " U R                   XBU5      nUc  [        S5      e[	        US9nU$ ©áB  Creation of a new node element within a document. @ns and
@content are optional (None). NOTE: @content is supposed to
be a piece of XML CDATA, so it allow entities references,
but XML special chars need to be escaped first by using
xmlEncodeEntitiesReentrant(). Use xmlNewDocRawNode() if you
 don't need entities support. NzxmlNewDocNode() failedr  ©rL   rm   ÚxmlNewDocNoder    r�  ©r'   rÓ  r¨   r´   r�  r_   r3	  s          r   Ú
newDocNodeÚxmlDoc.newDocNodeñ  sM   € ð ‰:˜t‘uØ—e‘eˆeÜ×&Ò& t§w¡w°¸WÓEˆØ‰;œYÐ'?Ó@Ð@Ü˜SÑ!ˆØˆr   c                 óœ   • Uc  SnOUR                   n[        R                  " U R                   XBU5      nUc  [        S5      e[	        US9nU$ ©r¸	  NzxmlNewDocNodeEatName() failedr  ©rL   rm   ÚxmlNewDocNodeEatNamer    r�  r»	  s          r   ÚnewDocNodeEatNameÚxmlDoc.newDocNodeEatNameÿ  sM   € ð ‰:˜t‘uØ—e‘eˆeÜ×-Ò-¨d¯g©g°uÀGÓLˆØ‰;œYÐ'FÓGÐGÜ˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        US9nU$ )z.Creation of a processing instruction element. zxmlNewDocPI() failedr  )rm   ÚxmlNewDocPIrL   r    r�  )r'   r¨   r´   r_   r3	  s        r   ÚnewDocPIÚxmlDoc.newDocPI  s7   € ä×$Ò$ T§W¡W¨dÓ<ˆØ‰;œYÐ'=Ó>Ð>Ü˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        US9nU$ )a  Create a new property carried by a document. NOTE: @value
is supposed to be a piece of XML CDATA, so it allows entity
references, but XML special chars need to be escaped first
by using xmlEncodeEntitiesReentrant(). Use xmlNewProp() if
 you don't need entities support. zxmlNewDocProp() failedr  )rm   ÚxmlNewDocProprL   r    r  )r'   r¨   rg  r_   r3	  s        r   Ú
newDocPropÚxmlDoc.newDocProp  s9   € ô ×&Ò& t§w¡w°Ó<ˆØ‰;œYÐ'?Ó@Ð@Ü˜SÑ!ˆØˆr   c                 óœ   • Uc  SnOUR                   n[        R                  " U R                   XBU5      nUc  [        S5      e[	        US9nU$ ©zXCreation of a new node element within a document. @ns and
@content are optional (None). NzxmlNewDocRawNode() failedr  ©rL   rm   ÚxmlNewDocRawNoder    r�  r»	  s          r   ÚnewDocRawNodeÚxmlDoc.newDocRawNode  sM   € ð ‰:˜t‘uØ—e‘eˆeÜ×)Ò)¨$¯'©'°5ÀÓHˆØ‰;œYÐ'BÓCÐCÜ˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )z/Creation of a new text node within a document. zxmlNewDocText() failedr  )rm   ÚxmlNewDocTextrL   r    r�  r¯	  s       r   Ú
newDocTextÚxmlDoc.newDocText)  s7   € ä×&Ò& t§w¡w°Ó8ˆØ‰;œYÐ'?Ó@Ð@Ü˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        US9nU$ )zoCreation of a new text node with an extra content length
parameter. The text node pertain to a given document. zxmlNewDocTextLen() failedr  )rm   ÚxmlNewDocTextLenrL   r    r�  r¦	  s        r   ÚnewDocTextLenÚxmlDoc.newDocTextLen0  s9   € ô ×)Ò)¨$¯'©'°7Ó@ˆØ‰;œYÐ'BÓCÐCÜ˜SÑ!ˆØˆr   c                 óx   • [         R                  " U R                  XU5      nUc  [        S5      e[	        US9nU$ )zgCreation of a new DTD for the external subset. To create an
internal subset, use xmlCreateIntSubset(). zxmlNewDtd() failedr  )rm   Ú	xmlNewDtdrL   r    r“  r„	  s         r   ÚnewDtdÚxmlDoc.newDtd8  s;   € ô ×"Ò" 4§7¡7¨D¸hÓGˆØ‰;œYÐ';Ó<Ð<Ü˜CÑ ˆØˆr   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        US9nU$ )zQCreation of a Namespace, the old way using PI and without
scoping DEPRECATED !!! zxmlNewGlobalNs() failedr  )rm   ÚxmlNewGlobalNsrL   r    rP  )r'   rQ  rÔ  r_   r3	  s        r   ÚnewGlobalNsÚxmlDoc.newGlobalNs@  s8   € ô ×'Ò'¨¯©°Ó>ˆØ‰;œYÐ'@ÓAÐAÜ˜3‘ˆØˆr   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )z"Creation of a new reference node. zxmlNewReference() failedr  )rm   ÚxmlNewReferencerL   r    r�  r=	  s       r   ÚnewReferenceÚxmlDoc.newReferenceH  s7   € ä×(Ò(¨¯©°$Ó7ˆØ‰;œYÐ'AÓBÐBÜ˜SÑ!ˆØˆr   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X`R                   XsXE5        g©zµDump an XML node, recursive behaviour, children are printed
too. Note that @format = 1 provide node indenting only if
xmlIndentTreeOutput = 1 or xmlKeepBlanksDefault(0) was
 called N©rL   rm   ÚxmlNodeDumpOutput)r'   rñ  r  r~  r0  r/  rò  rø  s           r   ÚnodeDumpOutputÚxmlDoc.nodeDumpOutputO  s>   € ð
 ‰; ™Ø—v‘vˆfØ‰; ™Ø—v‘vˆfÜ×$Ò$ V¯W©W°fÀVÕVr   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ rO  rP  )r'   r  rø  r_   s       r   ÚnodeGetBaseÚxmlDoc.nodeGetBaseZ  s1   € ð ‰; ™Ø—v‘vˆfÜ×'Ò'¨¯©°Ó8ˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   X25      nU$ r~  r  ©r'   r•  r‚  Úlist__or_   s        r   ÚnodeListGetRawStringÚxmlDoc.nodeListGetRawStringf  s1   € ð
 ‰< 4™ØŸ™ˆgÜ×0Ò0°·±¸'ÓJˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   X25      nU$ r†  r‡  rð	  s        r   ÚnodeListGetStringÚxmlDoc.nodeListGetStringp  s1   € ð ‰< 4™ØŸ™ˆgÜ×-Ò-¨d¯g©g°wÓGˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ rË  rÌ  )r'   ÚtreeÚtree__or_   s       r   rÎ  ÚxmlDoc.reconciliateNsx  s1   € ð ‰< 4™ØŸ™ˆgÜ×*Ò*¨4¯7©7°GÓ<ˆØˆ
r   c                 óF   • [         R                  " XR                  5      nU$ )zDump an XML document to a file. Will use compression if
compiled in and enabled. If @filename is "-" the stdout
 file is used. )rm   ÚxmlSaveFilerL   r	  s      r   ÚsaveFileÚxmlDoc.saveFile‡  s   € ô ×$Ò$ X¯w©wÓ7ˆØˆ
r   c                 óH   • [         R                  " XR                  U5      nU$ )z:Dump an XML document, converting it to the given encoding )rm   ÚxmlSaveFileEncrL   r	  s       r   ÚsaveFileEncÚxmlDoc.saveFileEncŽ  s   € ä×'Ò'¨·'±'¸8ÓDˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©z‚Dump an XML document to an I/O buffer. Warning ! This call
xmlOutputBufferClose() on buf which is not available after
 this call. N©rL   rm   ÚxmlSaveFileTo)r'   rñ  r/  rò  r_   s        r   Ú
saveFileToÚxmlDoc.saveFileTo“  s1   € ð ‰; ™Ø—v‘vˆfÜ×&Ò& v¯w©w¸ÓAˆØˆ
r   c                 óH   • [         R                  " XR                  U5      nU$ )a2  Dump an XML document to a file. Will use compression if
compiled in and enabled. If @filename is "-" the stdout
file is used. If @format is set then the document will be
indented on output. Note that @format = 1 provide node
indenting only if xmlIndentTreeOutput = 1 or
 xmlKeepBlanksDefault(0) was called )rm   ÚxmlSaveFormatFilerL   )r'   r  r0  r_   s       r   ÚsaveFormatFileÚxmlDoc.saveFormatFileœ  s   € ô ×*Ò*¨8·W±W¸fÓEˆØˆ
r   c                 óH   • [         R                  " XR                  X#5      nU$ )z*Dump an XML document to a file or an URL. )rm   ÚxmlSaveFormatFileEncrL   r	  s        r   ÚsaveFormatFileEncÚxmlDoc.saveFormatFileEnc¦  s   € ä×-Ò-¨h¿¹ÀÓRˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " X@R                   X#5      nU$ r
  ©rL   rm   ÚxmlSaveFormatFileTo)r'   rñ  r/  r0  rò  r_   s         r   ÚsaveFormatFileToÚxmlDoc.saveFormatFileTo«  s1   € ð ‰; ™Ø—v‘vˆfÜ×,Ò,¨V·W±W¸hÓOˆØˆ
r   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   X25      nUc  [        S5      e[	        US9nU$ rÕ  rÖ  )r'   rk  ra  r~	  r_   r3	  s         r   rØ  ÚxmlDoc.searchNs´  sJ   € ð ‰< 4™ØŸ™ˆgÜ×$Ò$ T§W¡W¨gÓAˆØ‰;œYÐ'=Ó>Ð>Ü˜3‘ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   X25      nUc  [        S5      e[	        US9nU$ rÛ  rÜ  )r'   rk  rQ  r~	  r_   r3	  s         r   rÞ  ÚxmlDoc.searchNsByHrefÃ  sJ   € ð ‰< 4™ØŸ™ˆgÜ×*Ò*¨4¯7©7°GÓBˆØ‰;œYÐ'CÓDÐDÜ˜3‘ˆØˆr   c                 óF   • [         R                  " U R                  U5        g)zmset the compression ratio for a document, ZLIB based
Correct values: 0 (uncompressed) to 9 (max compression) N)rm   ÚxmlSetDocCompressModerL   )r'   rð  s     r   ÚsetDocCompressModeÚxmlDoc.setDocCompressModeÎ  s   € ô 	×(Ò(¨¯©°$Õ7r   c                 óh   • Uc  SnOUR                   n[        R                  " X R                   5        grò  ró  )r'   r•  rñ	  s      r   rö  ÚxmlDoc.setListDocÓ  s&   € à‰< 4™ØŸ™ˆgÜ× Ò  ¯'©'Õ2r   c                 ó†   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  g[        US9nU$ r<  r=  )r'   ÚrootÚroot__or_   r3	  s        r   ÚsetRootElementÚxmlDoc.setRootElementÙ  sB   € ð ‰< 4™ØŸ™ˆgÜ×-Ò-¨d¯g©g°wÓ?ˆØ‰;˜dÜ˜SÑ!ˆØˆr   c                 óh   • Uc  SnOUR                   n[        R                  " X R                   5        gr  r  )r'   rø	  rù	  s      r   r  ÚxmlDoc.setTreeDocã  s(   € ð ‰< 4™ØŸ™ˆgÜ× Ò  ¯'©'Õ2r   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )úwParse the value string and build the node list associated.
Should produce a flat tree with only TEXTs and ENTITY_REFs. zxmlStringGetNodeList() failedr  )rm   ÚxmlStringGetNodeListrL   r    r�  )r'   rg  r_   r3	  s       r   ÚstringGetNodeListÚxmlDoc.stringGetNodeListê  s9   € ô ×-Ò-¨d¯g©g°uÓ=ˆØ‰;œYÐ'FÓGÐGÜ˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        US9nU$ )r(
  z xmlStringLenGetNodeList() failedr  )rm   ÚxmlStringLenGetNodeListrL   r    r�  )r'   rg  r^   r_   r3	  s        r   ÚstringLenGetNodeListÚxmlDoc.stringLenGetNodeListò  s9   € ô ×0Ò0°·±¸%ÓEˆØ‰;œYÐ'IÓJÐJÜ˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )z,Search the attribute declaring the given ID zxmlGetID() failedr  )rm   ÚxmlGetIDrL   r    r  )r'   rz  r_   r3	  s       r   rz  Ú	xmlDoc.IDþ  s7   € ä×!Ò! $§'¡'¨2Ó.ˆØ‰;œYÐ':Ó;Ð;Ü˜SÑ!ˆØˆr   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   X45      nU$ r/  r0  ©r'   rÈ   r*  r  r3  r_   s         r   r4  ÚxmlDoc.isID  sC   € ð
 ‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ× Ò  §¡¨'Ó;ˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )zvSearch in the DtDs whether an element accept Mixed content
(or ANY) basically if it is supposed to accept text childs )rm   ÚxmlIsMixedElementrL   r·  s      r   ÚisMixedElementÚxmlDoc.isMixedElement  s   € ô ×*Ò*¨4¯7©7°DÓ9ˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   X45      nU$ r7  r8  r4
  s         r   r:  ÚxmlDoc.isRef  sC   € ð ‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ×!Ò! $§'¡'¨7Ó<ˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ ©zDRemove the given attribute from the ID table maintained
internally. N©rL   rm   ÚxmlRemoveID©r'   r*  r3  r_   s       r   ÚremoveIDÚxmlDoc.removeID"  s1   € ð ‰< 4™ØŸ™ˆgÜ×$Ò$ T§W¡W¨gÓ6ˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ ©zERemove the given attribute from the Ref table maintained
internally. N©rL   rm   ÚxmlRemoveRefr@
  s       r   Ú	removeRefÚxmlDoc.removeRef*  s1   € ð ‰< 4™ØŸ™ˆgÜ×%Ò% d§g¡g¨wÓ7ˆØˆ
r   c                 ó’   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " XPR                   XcU5      nU$ ©a¶  Does the validation related extra step of the normalization
of attribute values:  If the declared value is not CDATA,
then the XML processor must further process the normalized
attribute value by discarding any leading and trailing
space (#x20) characters, and by replacing sequences of
space (#x20) characters by single space (#x20) character. 
Also  check VC: Standalone Document Declaration in P32, and
 update ctxt->valid accordingly N©rL   rm   Ú#xmlValidCtxtNormalizeAttributeValue)r'   rH  rÈ   r¨   rg  r’  r  r_   s           r   Ú validCtxtNormalizeAttributeValueÚ'xmlDoc.validCtxtNormalizeAttributeValue2  sF   € ð ‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ×<Ò<¸WÇgÁgÈwÐ^cÓdˆØˆ
r   c                 ón   • Uc  SnOUR                   n[        R                  " U R                   XBU5      nU$ r=  r>  )r'   rÈ   r¨   rg  r  r_   s         r   r@  Ú#xmlDoc.validNormalizeAttributeValueB  s4   € ð ‰< 4™ØŸ™ˆgÜ×8Ò8¸¿¹À'ÐQVÓWˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ ©zÃTry to validate the document instance  basically it does
the all the checks described by the XML Rec i.e. validates
the internal and external subset (if present) and validate
 the document tree. N©rL   rm   ÚxmlValidateDocumentrR  s       r   ÚvalidateDocumentÚxmlDoc.validateDocumentN  s/   € ð
 ‰< 4™ØŸ™ˆgÜ×,Ò,¨W·g±gÓ>ˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ ©zïDoes the final step for the document validation once all
the incremental validation steps have been completed 
basically it does the following checks described by the XML
Rec  Check all the IDREF/IDREFS attributes definition for
 validity N©rL   rm   ÚxmlValidateDocumentFinalrR  s       r   ÚvalidateDocumentFinalÚxmlDoc.validateDocumentFinalX  s/   € ð ‰< 4™ØŸ™ˆgÜ×1Ò1°'¿7¹7ÓCˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©zîTry to validate the document against the dtd instance 
Basically it does check all the definitions in the DtD.
Note the the internal subset (if present) is de-coupled
(i.e. not used), which could give problems if ID or IDREF
 is present. N©rL   rm   ÚxmlValidateDtd)r'   rH  rŽ  r’  Údtd__or_   s         r   ÚvalidateDtdÚxmlDoc.validateDtdc  sC   € ð ‰< 4™ØŸ™ˆgØ‰; ™Ø—v‘vˆfÜ×'Ò'¨·±¸&ÓAˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ ©al  Does the final step for the dtds validation once all the
subsets have been parsed  basically it does the following
checks described by the XML Rec - check that ENTITY and
ENTITIES type attributes default or possible values matches
one of the defined entities. - check that NOTATION type
attributes default or possible values matches one of the
 defined notations. N©rL   rm   ÚxmlValidateDtdFinalrR  s       r   ÚvalidateDtdFinalÚxmlDoc.validateDtdFinalp  s/   € ð ‰< 4™ØŸ™ˆgÜ×,Ò,¨W·g±gÓ>ˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©z-Try to validate the subtree under an element N©rL   rm   ÚxmlValidateElementri	  s         r   ÚvalidateElementÚxmlDoc.validateElement}  sA   € à‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ×+Ò+¨G·W±W¸gÓFˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©zWValidate that the given name match a notation declaration.
- [ VC: Notation Declared ] N©rL   rm   ÚxmlValidateNotationUse)r'   rH  rÓ   r’  r_   s        r   ÚvalidateNotationUseÚxmlDoc.validateNotationUse†  s1   € ð ‰< 4™ØŸ™ˆgÜ×/Ò/°¿¹À,ÓOˆØˆ
r   c                 ó¶   • Uc  SnOUR                   nUc  SnOUR                   nUc  SnOUR                   n[        R                  " XPR                   XgU5      nU$ ©a}  Try to validate a single attribute for an element basically
it does the following checks as described by the XML-1.0
recommendation: - [ VC: Attribute Value Type ] - [ VC:
Fixed Attribute Default ] - [ VC: Entity Name ] - [ VC:
Name Token ] - [ VC: ID ] - [ VC: IDREF ] - [ VC: Entity
Name ] - [ VC: Notation Attributes ]  The ID/IDREF
 uniqueness and matching are done separately N©rL   rm   ÚxmlValidateOneAttribute)	r'   rH  rÈ   r*  rg  r’  r  r3  r_   s	            r   ÚvalidateOneAttributeÚxmlDoc.validateOneAttributeŽ  sX   € ð ‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ×0Ò0°¿'¹'À7ÐUZÓ[ˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©a+  Try to validate a single element and it's attributes,
basically it does the following checks as described by the
XML-1.0 recommendation: - [ VC: Element Valid ] - [ VC:
Required Attribute ] Then call xmlValidateOneAttribute()
for each attribute present.  The ID/IDREF checkings are
 done separately N©rL   rm   ÚxmlValidateOneElementri	  s         r   ÚvalidateOneElementÚxmlDoc.validateOneElementŸ  sC   € ð ‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ×.Ò.¨w¿¹ÀÓIˆØˆ
r   c                 ó¶   • Uc  SnOUR                   nUc  SnOUR                   nUc  SnOUR                   n[        R                  " X`R                   XsX…5      n	U	$ ©a‰  Try to validate a single namespace declaration for an
element basically it does the following checks as described
by the XML-1.0 recommendation: - [ VC: Attribute Value Type
] - [ VC: Fixed Attribute Default ] - [ VC: Entity Name ] -
[ VC: Name Token ] - [ VC: ID ] - [ VC: IDREF ] - [ VC:
Entity Name ] - [ VC: Notation Attributes ]  The ID/IDREF
 uniqueness and matching are done separately N©rL   rm   ÚxmlValidateOneNamespace)
r'   rH  rÈ   rÔ  rÓ  rg  r’  r  r�  r_   s
             r   ÚvalidateOneNamespaceÚxmlDoc.validateOneNamespace­  sX   € ð ‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgØ‰:˜t‘uØ—e‘eˆeÜ×0Ò0°¿'¹'À7ÐTYÓaˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X@R                   XS5      nU$ ©z/Pop the element end from the validation stack. N©rL   rm   ÚxmlValidatePopElement©r'   rH  rÈ   Úqnamer’  r  r_   s          r   ÚvalidatePopElementÚxmlDoc.validatePopElement¾  sA   € à‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ×.Ò.¨w¿¹ÀÓPˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " X@R                   XS5      nU$ ©z2Push a new element start on the validation stack. N©rL   rm   ÚxmlValidatePushElementrŒ
  s          r   ÚvalidatePushElementÚxmlDoc.validatePushElementÇ  sA   € à‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ×/Ò/°¿¹À'ÓQˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ ©zÐTry to validate a the root element basically it does the
following check as described by the XML-1.0 recommendation:
- [ VC: Root Element Type ] it doesn't try to recurse or
 apply other check to the element N©rL   rm   ÚxmlValidateRootrR  s       r   ÚvalidateRootÚxmlDoc.validateRootÐ  s/   € ð
 ‰< 4™ØŸ™ˆgÜ×(Ò(¨·'±'Ó:ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ ©z=Implement the XInclude substitution on the XML document @doc )rm   ÚxmlXIncludeProcessrL   rñ   s     r   ÚxincludeProcessÚxmlDoc.xincludeProcessÞ  ó   € ä×+Ò+¨D¯G©GÓ4ˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ r�
  )rm   ÚxmlXIncludeProcessFlagsrL   rJ  s      r   ÚxincludeProcessFlagsÚxmlDoc.xincludeProcessFlagsã  s   € ä×0Ò0°·±¸%Ó@ˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ ©zjSetup an xmltextReader to parse a preparsed XML document.
This reuses the existing @reader xmlTextReader. N©rL   rm   ÚxmlReaderNewWalker©r'   ÚreaderÚ	reader__or_   s       r   Ú	NewWalkerÚxmlDoc.NewWalkerì  s/   € ð ‰> t™9Ø Ÿ)™)ˆiÜ×+Ò+¨I·w±wÓ?ˆØˆ
r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )z2Create an xmltextReader for a preparsed document. zxmlReaderWalker() failedr  )rm   ÚxmlReaderWalkerrL   r    rg  r\	  s      r   ÚreaderWalkerÚxmlDoc.readerWalkerô  s5   € ä×(Ò(¨¯©Ó1ˆØ‰;œYÐ'AÓBÐBÜ 3Ñ'ˆØˆr   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )ztCreate an XML Schemas parse context for that document. NB.
The document may be modified during the parsing process. z"xmlSchemaNewDocParserCtxt() failedr  )rm   ÚxmlSchemaNewDocParserCtxtrL   r3   r}  r\	  s      r   ÚschemaNewDocParserCtxtÚxmlDoc.schemaNewDocParserCtxtÿ  s7   € ô ×2Ò2°4·7±7Ó;ˆØ‰;œ[Ð)MÓNÐNÜ  cÑ*ˆØˆr   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ r`	  ©rL   rm   ÚxmlSchemaValidateDocrR  s       r   ÚschemaValidateDocÚxmlDoc.schemaValidateDoc  s-   € à‰< 4™ØŸ™ˆgÜ×-Ò-¨g·w±wÓ?ˆØˆ
r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )zCreate a new xmlXPathContext zxmlXPathNewContext() failedr  )rm   ÚxmlXPathNewContextrL   rA   rÉ  r\	  s      r   rC  ÚxmlDoc.xpathNewContext  s5   € ä×+Ò+¨D¯G©GÓ4ˆØ‰;œZÐ(EÓFÐFÜ #Ñ&ˆØˆr   c                 óF   • [         R                  " U R                  5      nU$ )a;  Call this routine to speed up XPath computation on static
documents. This stamps all the element nodes with the
document order Like for line information, the order is kept
in the element->content field, the value stored is actually
- the node number (starting at -1) to be able to
 differentiate from line numbers. )rm   ÚxmlXPathOrderDocElemsrL   rñ   s     r   ÚxpathOrderDocElemsÚxmlDoc.xpathOrderDocElems  s   € ô ×.Ò.¨t¯w©wÓ7ˆØˆ
r   c                 ó¾   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   X45      nUc  [        S5      e[	        US9nU$ rÆ  rÇ  )r'   ÚhererÊ  Úhere__orË  r_   r3	  s          r   rÌ  ÚxmlDoc.xpointerNewContext'  s[   € à‰< 4™ØŸ™ˆgØ‰> t™9Ø Ÿ)™)ˆiÜ×*Ò*¨4¯7©7°GÓGˆØ‰;œYÐ'CÓDÐDÜ #Ñ&ˆØˆr   rw   r#   )pr   r   r	   r
   r(   rË  rè  rë  rð  r÷  rú  rþ  r	  r	  r
	  r	  r	  r	  r	  r	  r"	  r&	  r*	  r.	  r4	  r9	  r>	  rC	  rH	  rL	  rP	  rT	  rX	  r]	  rc	  rj	  rp	  rv	  r{	  r  r  r…	  r‰	  r�	  r“	  r—	  rš	  rž	  r¢	  r§	  r«	  r°	  r´	  r¼	  rÂ	  rÆ	  rÊ	  rÐ	  rÔ	  rØ	  rÜ	  rà	  rä	  rê	  rí	  rò	  rõ	  rÎ  rý	  r
  r
  r
  r
  r
  rØ  rÞ  r
  rö  r#
  r  r*
  r.
  rz  r4  r8
  r:  rA
  rG
  rM
  r@  rU
  r[
  rb
  rh
  rn
  rt
  rz
  r€
  r†
  rŽ
  r”
  rš
  rŸ
  r¤
  r­
  r±
  rµ
  rº
  rC  rÁ
  rÌ  r   r   r   r   r$  r$  €  s  † ô*ò
PòòòUòGòò
ò
:òòWòIòòòò
òò9ò=ò
9òòòòòòòò
òòòò	òòòòòòòò
ò
3òò
'ò
òòòòòòòòò	òòòòòòò	Wò
òòòòòò
òòò
òò	ò8ò
3òò3òòòò
òò	òòòò 
òò	òòòòòò"òò"òòòò
òòòòòòõ	r   r$  c                   ó
  • \ rS rSrSWS jrS rS rS rS rS r	S	 r
S
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r S  r!S! r"S" r#S# r$S$ r%S% r&S& r'S' r(S( r)S) r*S* r+S+ r,S, r-S- r.S. r/S/ r0S0 r1S1 r2S2 r3S3 r4S4 r5S5 r6S6 r7S7 r8S8 r9S9 r:S: r;S; r<S< r=S= r>S> r?S? r@S@ rASA rBSB rCSC rDSD rESE rFSF rGSG rHSH rISI rJSJ rKSK rLSL rMSM rNSN rOSO rPSP rQSQ rRSR rSSS rTST rUSU rVSVrWg)Xr
  i2  Nc                 ó6   • Xl         [        R                  XS9  g r
  )rL   r¨  r(   rM   s     r   r(   ÚparserCtxt.__init__3  ó   € ØŒÜ×Ñ ÐÒ0r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   r¬  r,   s    r   rr   ÚparserCtxt.__del__7  r¯  r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )z-Get the document tree from a parser context. zxmlParserGetDoc() failedr  )rm   ÚxmlParserGetDocrL   r3   r$  ©r'   r_   Ú_parserCtxt__tmps      r   r#  ÚparserCtxt.doc=  s5   € ä×(Ò(¨¯©Ó1ˆØ‰;œ[Ð)CÓDÐDÜ˜CÑ ˆØˆr   c                 óF   • [         R                  " U R                  5      nU$ )z4Get the validity information from a parser context. )rm   ÚxmlParserGetIsValidrL   rñ   s     r   ÚisValidÚparserCtxt.isValidD  r 	  r   c                 óF   • [         R                  " U R                  U5        g)z<Switch on the generation of line number for elements nodes. N)rm   ÚxmlParserSetLineNumbersrL   )r'   Úlinenumberss     r   ÚlineNumbersÚparserCtxt.lineNumbersI  s   € ä×*Ò*¨4¯7©7°KÕ@r   c                 óF   • [         R                  " U R                  U5        g)z6Switch the parser to load the DTD without validating. N)rm   ÚxmlParserSetLoadSubsetrL   )r'   Ú
loadsubsets     r   Ú
loadSubsetÚparserCtxt.loadSubsetM  s   € ä×)Ò)¨$¯'©'°:Õ>r   c                 óF   • [         R                  " U R                  U5        g)z"Switch the parser to be pedantic. N)rm   ÚxmlParserSetPedanticrL   )r'   Úpedantics     r   râ
  ÚparserCtxt.pedanticQ  ó   € ä×'Ò'¨¯©°Õ:r   c                 óF   • [         R                  " U R                  U5        g)z'Switch the parser to replace entities. N)rm   ÚxmlParserSetReplaceEntitiesrL   )r'   ÚreplaceEntitiess     r   rç
  ÚparserCtxt.replaceEntitiesU  s   € ä×.Ò.¨t¯w©w¸ÕHr   c                 óF   • [         R                  " U R                  U5        g)z&Switch the parser to validation mode. N)rm   ÚxmlParserSetValidaterL   )r'   Úvalidates     r   rë
  ÚparserCtxt.validateY  rä
  r   c                 óF   • [         R                  " U R                  5      nU$ )z7Get the well formed information from a parser context. )rm   ÚxmlParserGetWellFormedrL   rñ   s     r   Ú
wellFormedÚparserCtxt.wellFormed]  rG  r   c                 óx   • [         R                  " U R                  XX45      nUc  [        S5      e[	        US9nU$ )ú`parse an XML in-memory document and build a tree. This
reuses the existing @ctxt parser context zhtmlCtxtReadDoc() failedr  )rm   ÚhtmlCtxtReadDocrL   r    r$  ©r'   r  r$  r/  r%  r_   rÐ
  s          r   ró
  ÚparserCtxt.htmlCtxtReadDocf  s;   € ô ×(Ò(¨¯©°#¸HÓNˆØ‰;œYÐ'AÓBÐBÜ˜CÑ ˆØˆr   c                 óx   • [         R                  " U R                  XX45      nUc  [        S5      e[	        US9nU$ )zdparse an XML from a file descriptor and build a tree. This
reuses the existing @ctxt parser context zhtmlCtxtReadFd() failedr  )rm   ÚhtmlCtxtReadFdrL   r    r$  ©r'   r)  r$  r/  r%  r_   rÐ
  s          r   r÷
  ÚparserCtxt.htmlCtxtReadFdn  s;   € ô ×'Ò'¨¯©°¸(ÓLˆØ‰;œYÐ'@ÓAÐAÜ˜CÑ ˆØˆr   c                 óx   • [         R                  " U R                  XU5      nUc  [        S5      e[	        US9nU$ )údparse an XML file from the filesystem or the network. This
reuses the existing @ctxt parser context zhtmlCtxtReadFile() failedr  )rm   ÚhtmlCtxtReadFilerL   r    r$  ©r'   r  r/  r%  r_   rÐ
  s         r   rü
  ÚparserCtxt.htmlCtxtReadFilev  s;   € ô ×)Ò)¨$¯'©'°8ÀwÓOˆØ‰;œYÐ'BÓCÐCÜ˜CÑ ˆØˆr   c                 óz   • [         R                  " U R                  XX4U5      nUc  [        S5      e[	        US9nU$ )rò
  zhtmlCtxtReadMemory() failedr  )rm   ÚhtmlCtxtReadMemoryrL   r    r$  ©r'   r  r  r$  r/  r%  r_   rÐ
  s           r   r   ÚparserCtxt.htmlCtxtReadMemory~  s>   € ô ×+Ò+¨D¯G©G°VÀ3ÐRYÓZˆØ‰;œYÐ'DÓEÐEÜ˜CÑ ˆØˆr   c                 óD   • [         R                  " U R                  5        g©zReset a parser context N)rm   ÚhtmlCtxtResetrL   r,   s    r   r  ÚparserCtxt.htmlCtxtReset†  ó   € ä× Ò  §¡Õ)r   c                 óH   • [         R                  " U R                  U5      nU$ ©z*Applies the options to the parser context )rm   ÚhtmlCtxtUseOptionsrL   ©r'   r%  r_   s      r   r
  ÚparserCtxt.htmlCtxtUseOptionsŠ  s   € ä×+Ò+¨D¯G©G°WÓ=ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)zgFree all the memory used by a parser context. However the
parsed document in ctxt->myDoc is not freed. N)rm   ÚhtmlFreeParserCtxtrL   r,   s    r   r  ÚparserCtxt.htmlFreeParserCtxt�  ó   € ô 	×%Ò% d§g¡gÕ.r   c                 óF   • [         R                  " U R                  5      nU$ )zXparse Reference declarations  [66] CharRef ::= '&#' [0-9]+
';' | '&#x' [0-9a-fA-F]+ ';' )rm   ÚhtmlParseCharRefrL   rñ   s     r   r  ÚparserCtxt.htmlParseCharRef”  ó   € ô ×)Ò)¨$¯'©'Ó2ˆØˆ
r   c                 óJ   • [         R                  " U R                  XU5      nU$ ©zParse a Chunk of memory )rm   ÚhtmlParseChunkrL   ©r'   rª  r  Ú	terminater_   s        r   r  ÚparserCtxt.htmlParseChunkš  s   € ä×'Ò'¨¯©°¸iÓHˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zOparse an HTML document (and build a tree if using the
standard SAX interface). )rm   ÚhtmlParseDocumentrL   rñ   s     r   r  ÚparserCtxt.htmlParseDocumentŸ  ó   € ô ×*Ò*¨4¯7©7Ó3ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)zÄparse an HTML element, this is highly recursive this is
kept for compatibility with previous code versions  [39]
element ::= EmptyElemTag | STag content ETag  [41]
 Attribute ::= Name Eq AttValue N)rm   ÚhtmlParseElementrL   r,   s    r   r   ÚparserCtxt.htmlParseElement¥  s   € ô
 	×#Ò# D§G¡GÕ,r   c                 óF   • [         R                  " U R                  5      nU$ )aQ  This function provides the current index of the parser
relative to the start of the current entity. This function
is computed in bytes from the beginning starting at zero
and finishing at the size in byte of the file if parsing a
file. The function is of constant cost if the input is
 UTF-8 but can be costly if run on non-UTF-8 input. )rm   ÚxmlByteConsumedrL   rñ   s     r   ÚbyteConsumedÚparserCtxt.byteConsumed°  s   € ô ×(Ò(¨¯©Ó1ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)zBClear (release owned resources) and reinitialize a parser
context N)rm   ÚxmlClearParserCtxtrL   r,   s    r   ÚclearParserCtxtÚparserCtxt.clearParserCtxtº  r  r   c                 óx   • [         R                  " U R                  XX45      nUc  [        S5      e[	        US9nU$ )rò
  zxmlCtxtReadDoc() failedr  )rm   ÚxmlCtxtReadDocrL   r    r$  rô
  s          r   ÚctxtReadDocÚparserCtxt.ctxtReadDoc¿  s;   € ô ×'Ò'¨¯©°¸8ÓMˆØ‰;œYÐ'@ÓAÐAÜ˜CÑ ˆØˆr   c                 óx   • [         R                  " U R                  XX45      nUc  [        S5      e[	        US9nU$ )zºparse an XML from a file descriptor and build a tree. This
reuses the existing @ctxt parser context NOTE that the file
descriptor will not be closed when the reader is closed or
 reset. zxmlCtxtReadFd() failedr  )rm   ÚxmlCtxtReadFdrL   r    r$  rø
  s          r   Ú
ctxtReadFdÚparserCtxt.ctxtReadFdÇ  s;   € ô
 ×&Ò& t§w¡w°¸ÓKˆØ‰;œYÐ'?Ó@Ð@Ü˜CÑ ˆØˆr   c                 óx   • [         R                  " U R                  XU5      nUc  [        S5      e[	        US9nU$ )rû
  zxmlCtxtReadFile() failedr  )rm   ÚxmlCtxtReadFilerL   r    r$  rý
  s         r   ÚctxtReadFileÚparserCtxt.ctxtReadFileÑ  s;   € ô ×(Ò(¨¯©°(ÀgÓNˆØ‰;œYÐ'AÓBÐBÜ˜CÑ ˆØˆr   c                 óz   • [         R                  " U R                  XX4U5      nUc  [        S5      e[	        US9nU$ )rò
  zxmlCtxtReadMemory() failedr  )rm   ÚxmlCtxtReadMemoryrL   r    r$  r  s           r   ÚctxtReadMemoryÚparserCtxt.ctxtReadMemoryÙ  s>   € ô ×*Ò*¨4¯7©7°FÀ#ÐQXÓYˆØ‰;œYÐ'CÓDÐDÜ˜CÑ ˆØˆr   c                 óD   • [         R                  " U R                  5        gr  )rm   ÚxmlCtxtResetrL   r,   s    r   Ú	ctxtResetÚparserCtxt.ctxtResetá  ó   € ä×Ò §¡Õ(r   c                 óJ   • [         R                  " U R                  XX45      nU$ )zReset a push parser context )rm   ÚxmlCtxtResetPushrL   )r'   rª  r  r  r/  r_   s         r   ÚctxtResetPushÚparserCtxt.ctxtResetPushå  s   € ä×)Ò)¨$¯'©'°5ÀÓSˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ r	  )rm   ÚxmlCtxtUseOptionsrL   r  s      r   ÚctxtUseOptionsÚparserCtxt.ctxtUseOptionsê  s   € ä×*Ò*¨4¯7©7°GÓ<ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zInitialize a parser context )rm   ÚxmlInitParserCtxtrL   rñ   s     r   ÚinitParserCtxtÚparserCtxt.initParserCtxtï  ó   € ä×*Ò*¨4¯7©7Ó3ˆØˆ
r   c                 óJ   • [         R                  " U R                  XU5      nU$ r  )rm   ÚxmlParseChunkrL   r  s        r   Ú
parseChunkÚparserCtxt.parseChunkô  s   € ä×&Ò& t§w¡w°¸YÓGˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z«parse an XML document (and build a tree if using the
standard SAX interface).  [1] document ::= prolog element
 Misc*  [22] prolog ::= XMLDecl? Misc* (doctypedecl Misc*)? )rm   ÚxmlParseDocumentrL   rñ   s     r   ÚparseDocumentÚparserCtxt.parseDocumentù  s   € ô ×)Ò)¨$¯'©'Ó2ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z¬parse a general parsed entity An external general parsed
entity is well-formed if it matches the production labeled
 extParsedEnt.  [78] extParsedEnt ::= TextDecl? content )rm   ÚxmlParseExtParsedEntrL   rñ   s     r   ÚparseExtParsedEntÚparserCtxt.parseExtParsedEnt   ó   € ô ×-Ò-¨d¯g©gÓ6ˆØˆ
r   c                 óF   • [         R                  " U R                  X5        g)z­Setup the parser context to parse a new buffer; Clears any
prior contents from the parser context. The buffer
parameter must not be None, but the filename parameter can
 be N)rm   ÚxmlSetupParserForBufferrL   )r'   r  r  s      r   ÚsetupParserForBufferÚparserCtxt.setupParserForBuffer  s   € ô
 	×*Ò*¨4¯7©7°FÕEr   c                 óD   • [         R                  " U R                  5        g)z!Blocks further parser processing N)rm   ÚxmlStopParserrL   r,   s    r   Ú
stopParserÚparserCtxt.stopParser  r  r   c                 óL   • [         R                  " U R                  XX4U5      nU$ )zØThis function is deprecated, we now always process entities
content through xmlStringDecodeEntities  TODO: remove it in
next major release.  [67] Reference ::= EntityRef | CharRef
  [69] PEReference ::= '%' Name ';' )rm   ÚxmlDecodeEntitiesrL   )r'   r^   ÚwhatrÑ  Úend2Úend3r_   s          r   ÚdecodeEntitiesÚparserCtxt.decodeEntities  s#   € ô
 ×*Ò*¨4¯7©7°C¸sÈ$ÓOˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " U R                   U5        g©zªDefault handling of defined entities, when should we define
a new input stream ? When do we just handle that as a set
 of chars ?  OBSOLETE: to be removed at some point. N©rL   rm   ÚxmlHandleEntity)r'   ÚentityÚ	entity__os      r   ÚhandleEntityÚparserCtxt.handleEntity  s*   € ð ‰> t™9Ø Ÿ)™)ˆiÜ×"Ò" 4§7¡7¨IÕ6r   c                 óF   • [         R                  " U R                  5      nU$ )a  parse an XML namespace name.  TODO: this seems not in use
anymore, the namespace handling is done on top of the SAX
interfaces, i.e. not on raw input.  [NS 3] NCName ::=
(Letter | '_') (NCNameChar)*  [NS 4] NCNameChar ::= Letter
 | Digit | '.' | '-' | '_' | CombiningChar | Extender )rm   ÚxmlNamespaceParseNCNamerL   rñ   s     r   ÚnamespaceParseNCNameÚparserCtxt.namespaceParseNCName&  s   € ô ×0Ò0°·±Ó9ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zùparse a namespace prefix declaration  TODO: this seems not
in use anymore, the namespace handling is done on top of
the SAX interfaces, i.e. not on raw input.  [NS 1] NSDef
::= PrefixDef Eq SystemLiteral  [NS 2] PrefixDef ::=
 'xmlns' (':' NCName)? )rm   ÚxmlNamespaceParseNSDefrL   rñ   s     r   ÚnamespaceParseNSDefÚparserCtxt.namespaceParseNSDef/  s   € ô ×/Ò/°·±Ó8ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)z"Skip to the next char input char. N)rm   ÚxmlNextCharrL   r,   s    r   ÚnextCharÚparserCtxt.nextChar8  ó   € ä×Ò˜tŸw™wÕ'r   c                 óF   • [         R                  " U R                  5      nU$ )a&  parse a value for an attribute Note: the parser won't do
substitution of entities here, this will be handled later
in xmlStringGetNodeList  [10] AttValue ::= '"' ([^<&"] |
Reference)* '"' | "'" ([^<&'] | Reference)* "'"  3.3.3
Attribute-Value Normalization: Before the value of an
attribute is passed to the application or checked for
validity, the XML processor must normalize it as follows: -
a character reference is processed by appending the
referenced character to the attribute value - an entity
reference is processed by recursively processing the
replacement text of the entity - a whitespace character
(#x20, #xD, #xA, #x9) is processed by appending #x20 to the
normalized value, except that only a single #x20 is
appended for a "#xD#xA" sequence that is part of an
external parsed entity or the literal entity value of an
internal parsed entity - other characters are processed by
appending them to the normalized value If the declared
value is not CDATA, then the XML processor must further
process the normalized attribute value by discarding any
leading and trailing space (#x20) characters, and by
replacing sequences of space (#x20) characters by a single
space (#x20) character. All attributes for which no
declaration has been read should be treated by a
 non-validating parser as if declared CDATA. )rm   ÚxmlParseAttValuerL   rñ   s     r   ÚparseAttValueÚparserCtxt.parseAttValue<  s   € ô2 ×)Ò)¨$¯'©'Ó2ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)z—: parse the Attribute list def for an element  [52]
AttlistDecl ::= '<!ATTLIST' S Name AttDef* S? '>'  [53]
 AttDef ::= S Name S AttType S DefaultDecl N)rm   ÚxmlParseAttributeListDeclrL   r,   s    r   ÚparseAttributeListDeclÚ!parserCtxt.parseAttributeListDeclX  s   € ô 	×,Ò,¨T¯W©WÕ5r   c                 óD   • [         R                  " U R                  5        g)z§Parse escaped pure raw content.  [18] CDSect ::= CDStart
CData CDEnd  [19] CDStart ::= '<![CDATA['  [20] Data ::=
 (Char* - (Char* ']]>' Char*))  [21] CDEnd ::= ']]>' N)rm   ÚxmlParseCDSectrL   r,   s    r   ÚparseCDSectÚparserCtxt.parseCDSect^  s   € ô 	×!Ò! $§'¡'Õ*r   c                 óF   • [         R                  " U R                  U5        g)a�  parse a CharData section. if we are within a CDATA section
']]>' marks an end of section.  The right angle bracket (>)
may be represented using the string "&gt;", and must, for
compatibility, be escaped using "&gt;" or a character
reference when it appears in the string "]]>" in content,
when that string is not marking the end of a CDATA section.
  [14] CharData ::= [^<&]* - ([^<&]* ']]>' [^<&]*) N)rm   ÚxmlParseCharDatarL   )r'   Úcdatas     r   ÚparseCharDataÚparserCtxt.parseCharDatad  s   € ô 	×#Ò# D§G¡G¨UÕ3r   c                 óF   • [         R                  " U R                  5      nU$ )zÉparse Reference declarations  [66] CharRef ::= '&#' [0-9]+
';' | '&#x' [0-9a-fA-F]+ ';'  [ WFC: Legal Character ]
Characters referred to using character references must
 match the production for Char. )rm   ÚxmlParseCharRefrL   rñ   s     r   ÚparseCharRefÚparserCtxt.parseCharRefn  s   € ô
 ×(Ò(¨¯©Ó1ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)z×Skip an XML (SGML) comment <!-- .... --> The spec says that
"For compatibility, the string "--" (double-hyphen) must
not occur within comments. "  [15] Comment ::= '<!--'
 ((Char - '-') | ('-' (Char - '-')))* '-->' N)rm   ÚxmlParseCommentrL   r,   s    r   ÚparseCommentÚparserCtxt.parseCommentv  ó   € ô
 	×"Ò" 4§7¡7Õ+r   c                 óD   • [         R                  " U R                  5        g)z}Parse a content sequence. Stops at EOF or '</'.  [43]
content ::= (element | CharData | Reference | CDSect | PI |
 Comment)* N)rm   ÚxmlParseContentrL   r,   s    r   ÚparseContentÚparserCtxt.parseContent}  s   € ô 	×"Ò" 4§7¡7Õ+r   c                 óD   • [         R                  " U R                  5        g)a  parse a DOCTYPE declaration  [28] doctypedecl ::=
'<!DOCTYPE' S Name (S ExternalID)? S? ('[' (markupdecl |
PEReference | S)* ']' S?)? '>'  [ VC: Root Element Type ]
The Name in the document type declaration must match the
 element type of the root element. N)rm   ÚxmlParseDocTypeDeclrL   r,   s    r   ÚparseDocTypeDeclÚparserCtxt.parseDocTypeDeclƒ  s   € ô 	×&Ò& t§w¡wÕ/r   c                 óD   • [         R                  " U R                  5        g)zµparse an XML element  [39] element ::= EmptyElemTag | STag
content ETag  [ WFC: Element Type Match ] The Name in an
element's end-tag must match the element type in the
 start-tag. N)rm   ÚxmlParseElementrL   r,   s    r   ÚparseElementÚparserCtxt.parseElement‹  r–  r   c                 óF   • [         R                  " U R                  5      nU$ )zµparse an Element declaration.  [45] elementdecl ::=
'<!ELEMENT' S Name S contentspec S? '>'  [ VC: Unique
Element Type Declaration ] No element type may be declared
 more than once )rm   ÚxmlParseElementDeclrL   rñ   s     r   ÚparseElementDeclÚparserCtxt.parseElementDecl’  s   € ô
 ×,Ò,¨T¯W©WÓ5ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zNparse the XML encoding name  [81] EncName ::= [A-Za-z]
([A-Za-z0-9._] | '-')* )rm   ÚxmlParseEncNamerL   rñ   s     r   ÚparseEncNameÚparserCtxt.parseEncNameš  ó   € ô ×(Ò(¨¯©Ó1ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z•parse the XML encoding declaration  [80] EncodingDecl ::= S
'encoding' Eq ('"' EncName '"' |  "'" EncName "'")  this
 setups the conversion filters. )rm   ÚxmlParseEncodingDeclrL   rñ   s     r   ÚparseEncodingDeclÚparserCtxt.parseEncodingDecl   rX  r   c                 óD   • [         R                  " U R                  5        g)zgparse an end of tag  [42] ETag ::= '</' Name S? '>'  With
namespace  [NS 9] ETag ::= '</' QName S? '>' N)rm   ÚxmlParseEndTagrL   r,   s    r   ÚparseEndTagÚparserCtxt.parseEndTag§  s   € ô 	×!Ò! $§'¡'Õ*r   c                 óD   • [         R                  " U R                  5        g)a‡  parse <!ENTITY declarations  [70] EntityDecl ::= GEDecl |
PEDecl  [71] GEDecl ::= '<!ENTITY' S Name S EntityDef S?
'>'  [72] PEDecl ::= '<!ENTITY' S '%' S Name S PEDef S? '>'
[73] EntityDef ::= EntityValue | (ExternalID NDataDecl?) 
[74] PEDef ::= EntityValue | ExternalID  [76] NDataDecl ::=
S 'NDATA' S Name  [ VC: Notation Declared ] The Name must
 match the declared name of a notation. N)rm   ÚxmlParseEntityDeclrL   r,   s    r   ÚparseEntityDeclÚparserCtxt.parseEntityDecl¬  s   € ô 	×%Ò% d§g¡gÕ.r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )a  parse ENTITY references declarations  [68] EntityRef ::=
'&' Name ';'  [ WFC: Entity Declared ] In a document
without any DTD, a document with only an internal DTD
subset which contains no parameter entity references, or a
document with "standalone='yes'", the Name given in the
entity reference must match that in an entity declaration,
except that well-formed documents need not declare any of
the following entities: amp, lt, gt, apos, quot.  The
declaration of a parameter entity must precede any
reference to it.  Similarly, the declaration of a general
entity must precede any reference to it which appears in a
default value in an attribute-list declaration. Note that
if entities are declared in the external subset or in
external parameter entities, a non-validating processor is
not obligated to read and process their declarations; for
such documents, the rule that an entity must be declared is
a well-formedness constraint only if standalone='yes'.  [
WFC: Parsed Entity ] An entity reference must not contain
 the name of an unparsed entity zxmlParseEntityRef() failedr  )rm   ÚxmlParseEntityRefrL   r3   r’  rÏ
  s      r   ÚparseEntityRefÚparserCtxt.parseEntityRef¶  s7   € ô( ×*Ò*¨4¯7©7Ó3ˆØ‰;œ[Ð)EÓFÐFÜ˜sÑ#ˆØˆr   c                 óF   • [         R                  " U R                  X5        g)zªparse Markup declarations from an external subset  [30]
extSubset ::= textDecl? extSubsetDecl  [31] extSubsetDecl
 ::= (markupdecl | conditionalSect | PEReference | S) * N)rm   ÚxmlParseExternalSubsetrL   )r'   r7  rD  s      r   ÚparseExternalSubsetÚparserCtxt.parseExternalSubsetÏ  s   € ô 	×)Ò)¨$¯'©'°:ÕHr   c                 óD   • [         R                  " U R                  5        g)añ  parse Markup declarations  [29] markupdecl ::= elementdecl
| AttlistDecl | EntityDecl | NotationDecl | PI | Comment  [
VC: Proper Declaration/PE Nesting ] Parameter-entity
replacement text must be properly nested with markup
declarations. That is to say, if either the first character
or the last character of a markup declaration (markupdecl
above) is contained in the replacement text for a
parameter-entity reference, both must be contained in the
same replacement text.  [ WFC: PEs in Internal Subset ] In
the internal DTD subset, parameter-entity references can
occur only where markup declarations can occur, not within
markup declarations. (This does not apply to references
that occur in external parameter entities or to the
 external subset.) N)rm   ÚxmlParseMarkupDeclrL   r,   s    r   ÚparseMarkupDeclÚparserCtxt.parseMarkupDeclÕ  s   € ô 	×%Ò% d§g¡gÕ.r   c                 óD   • [         R                  " U R                  5        g)zDparse an XML Misc* optional field.  [27] Misc ::= Comment |
PI |  S N)rm   ÚxmlParseMiscrL   r,   s    r   Ú	parseMiscÚparserCtxt.parseMiscæ  s   € ô 	×Ò §¡Õ(r   c                 óF   • [         R                  " U R                  5      nU$ )z¸parse an XML name.  [4] NameChar ::= Letter | Digit | '.' |
'-' | '_' | ':' | CombiningChar | Extender  [5] Name ::=
(Letter | '_' | ':') (NameChar)*  [6] Names ::= Name (#x20
 Name)* )rm   ÚxmlParseNamerL   rñ   s     r   Ú	parseNameÚparserCtxt.parseNameë  s   € ô
 ×%Ò% d§g¡gÓ.ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)aD  xmlParseNamespace: parse specific PI '<?namespace ...'
constructs.  This is what the older xml-name Working Draft
specified, a bunch of other stuff may still rely on it, so
support is still here as if it was declared on the root of
the Tree:-(  TODO: remove from library  To be removed at
 next drop of binary compatibility N)rm   ÚxmlParseNamespacerL   r,   s    r   ÚparseNamespaceÚparserCtxt.parseNamespaceó  s   € ô 	×$Ò$ T§W¡WÕ-r   c                 óF   • [         R                  " U R                  5      nU$ )z]parse an XML Nmtoken.  [7] Nmtoken ::= (NameChar)+  [8]
Nmtokens ::= Nmtoken (#x20 Nmtoken)* )rm   ÚxmlParseNmtokenrL   rñ   s     r   ÚparseNmtokenÚparserCtxt.parseNmtokenü  r«  r   c                 óD   • [         R                  " U R                  5        g)a  parse a notation declaration  [82] NotationDecl ::=
'<!NOTATION' S Name S (ExternalID |  PublicID) S? '>' 
Hence there is actually 3 choices: 'PUBLIC' S PubidLiteral
'PUBLIC' S PubidLiteral S SystemLiteral and 'SYSTEM' S
 SystemLiteral  See the NOTE on xmlParseExternalID(). N)rm   ÚxmlParseNotationDeclrL   r,   s    r   ÚparseNotationDeclÚparserCtxt.parseNotationDecl  s   € ô 	×'Ò'¨¯©Õ0r   c                 óD   • [         R                  " U R                  5        g)aW  parse PEReference declarations The entity content is
handled directly by pushing it's content as a new input
stream.  [69] PEReference ::= '%' Name ';'  [ WFC: No
Recursion ] A parsed entity must not contain a recursive
reference to itself, either directly or indirectly.  [ WFC:
Entity Declared ] In a document without any DTD, a document
with only an internal DTD subset which contains no
parameter entity references, or a document with
"standalone='yes'", ...  ... The declaration of a parameter
entity must precede any reference to it...  [ VC: Entity
Declared ] In a document with an external subset or
external parameter entities with "standalone='no'", ... 
... The declaration of a parameter entity must precede any
reference to it...  [ WFC: In DTD ] Parameter-entity
references may only appear in the DTD. NOTE: misleading but
 this is handled. N)rm   ÚxmlParsePEReferencerL   r,   s    r   ÚparsePEReferenceÚparserCtxt.parsePEReference
  s   € ô" 	×&Ò& t§w¡wÕ/r   c                 óD   • [         R                  " U R                  5        g)z›parse an XML Processing Instruction.  [16] PI ::= '<?'
PITarget (S (Char* - (Char* '?>' Char*)))? '?>'  The
 processing is transferred to SAX once parsed. N)rm   Ú
xmlParsePIrL   r,   s    r   ÚparsePIÚparserCtxt.parsePI  s   € ô 	×Ò˜dŸg™gÕ&r   c                 óF   • [         R                  " U R                  5      nU$ )zWparse the name of a PI  [17] PITarget ::= Name - (('X' |
'x') ('M' | 'm') ('L' | 'l')) )rm   ÚxmlParsePITargetrL   rñ   s     r   ÚparsePITargetÚparserCtxt.parsePITarget#  r  r   c                 óF   • [         R                  " U R                  5      nU$ )zcparse an XML public literal  [12] PubidLiteral ::= '"'
PubidChar* '"' | "'" (PubidChar - "'")* "'" )rm   ÚxmlParsePubidLiteralrL   rñ   s     r   ÚparsePubidLiteralÚparserCtxt.parsePubidLiteral)  s   € ô ×-Ò-¨d¯g©gÓ6ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z�Parse and return a string between quotes or doublequotes 
TODO: Deprecated, to  be removed at next drop of binary
 compatibility )rm   ÚxmlParseQuotedStringrL   rñ   s     r   ÚparseQuotedStringÚparserCtxt.parseQuotedString/  rX  r   c                 óD   • [         R                  " U R                  5        g)a$  parse and handle entity references in content, depending on
the SAX interface, this may end-up in a call to character()
if this is a CharRef, a predefined entity, if there is no
reference() callback. or if the parser was asked to switch
 to that mode.  [67] Reference ::= EntityRef | CharRef N)rm   ÚxmlParseReferencerL   r,   s    r   ÚparseReferenceÚparserCtxt.parseReference6  s   € ô 	×$Ò$ T§W¡WÕ-r   c                 óF   • [         R                  " U R                  5      nU$ )a9  parse the XML standalone declaration  [32] SDDecl ::= S
'standalone' Eq (("'" ('yes' | 'no') "'") | ('"' ('yes' |
'no')'"'))  [ VC: Standalone Document Declaration ] TODO
The standalone document declaration must have the value
"no" if any external markup declarations contain
declarations of: - attributes with default values, if
elements to which these attributes apply appear in the
document without specifications of values for these
attributes, or - entities (other than amp, lt, gt, apos,
quot), if references to those entities appear in the
document, or - attributes with values subject to
normalization, where the attribute appears in the document
with a value which will change as a result of
normalization, or - element types with element content, if
white space occurs directly within any instance of those
 types. )rm   ÚxmlParseSDDeclrL   rñ   s     r   ÚparseSDDeclÚparserCtxt.parseSDDecl>  s   € ô" ×'Ò'¨¯©Ó0ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )a8  parse a start of tag either for rule element or
EmptyElement. In both case we don't parse the tag closing
chars.  [40] STag ::= '<' Name (S Attribute)* S? '>'  [
WFC: Unique Att Spec ] No attribute name may appear more
than once in the same start-tag or empty-element tag.  [44]
EmptyElemTag ::= '<' Name (S Attribute)* S? '/>'  [ WFC:
Unique Att Spec ] No attribute name may appear more than
once in the same start-tag or empty-element tag.  With
namespace:  [NS 8] STag ::= '<' QName (S Attribute)* S? '>'
  [NS 10] EmptyElement ::= '<' QName (S Attribute)* S? '/>' )rm   ÚxmlParseStartTagrL   rñ   s     r   ÚparseStartTagÚparserCtxt.parseStartTagR  s   € ô ×)Ò)¨$¯'©'Ó2ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zOparse an XML Literal  [11] SystemLiteral ::= ('"' [^"]*
'"') | ("'" [^']* "'") )rm   ÚxmlParseSystemLiteralrL   rñ   s     r   ÚparseSystemLiteralÚparserCtxt.parseSystemLiteral`  s   € ô ×.Ò.¨t¯w©wÓ7ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)zsparse an XML declaration header for external entities  [77]
TextDecl ::= '<?xml' VersionInfo? EncodingDecl S? '?>' N)rm   ÚxmlParseTextDeclrL   r,   s    r   ÚparseTextDeclÚparserCtxt.parseTextDeclf  ó   € ô 	×#Ò# D§G¡GÕ,r   c                 óF   • [         R                  " U R                  5      nU$ )zuparse the XML version.  [24] VersionInfo ::= S 'version' Eq
(' VersionNum ' | " VersionNum ")  [25] Eq ::= S? '=' S? )rm   ÚxmlParseVersionInforL   rñ   s     r   ÚparseVersionInfoÚparserCtxt.parseVersionInfok  ó   € ô ×,Ò,¨T¯W©WÓ5ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zlparse the XML version value.  [26] VersionNum ::= '1.'
[0-9]+  In practice allow [0-9].[0-9]+ at that level )rm   ÚxmlParseVersionNumrL   rñ   s     r   ÚparseVersionNumÚparserCtxt.parseVersionNumq  ó   € ô ×+Ò+¨D¯G©GÓ4ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)zdparse an XML declaration header  [23] XMLDecl ::= '<?xml'
VersionInfo EncodingDecl? SDDecl? S? '?>' N)rm   ÚxmlParseXMLDeclrL   r,   s    r   ÚparseXMLDeclÚparserCtxt.parseXMLDeclw  rM  r   c                 óD   • [         R                  " U R                  5        g)aÍ  [69] PEReference ::= '%' Name ';'  [ WFC: No Recursion ] A
parsed entity must not contain a recursive reference to
itself, either directly or indirectly.  [ WFC: Entity
Declared ] In a document without any DTD, a document with
only an internal DTD subset which contains no parameter
entity references, or a document with "standalone='yes'",
...  ... The declaration of a parameter entity must precede
any reference to it...  [ VC: Entity Declared ] In a
document with an external subset or external parameter
entities with "standalone='no'", ...  ... The declaration
of a parameter entity must precede any reference to it... 
[ WFC: In DTD ] Parameter-entity references may only appear
in the DTD. NOTE: misleading but this is handled.  A
PEReference may have been detected in the current input
stream the handling is done accordingly to
http://www.w3.org/TR/REC-xml#entproc i.e. - Included in
literal in entity values - Included as Parameter Entity
 reference within DTDs N)rm   ÚxmlParserHandlePEReferencerL   r,   s    r   ÚparserHandlePEReferenceÚ"parserCtxt.parserHandlePEReference|  s   € ô& 	×-Ò-¨d¯g©gÕ6r   c                 óD   • [         R                  " U R                  5        g)až  TODO: Remove, now deprecated ... the test is done directly
in the content parsing routines.  [67] Reference ::=
EntityRef | CharRef  [68] EntityRef ::= '&' Name ';'  [
WFC: Entity Declared ] the Name given in the entity
reference must match that in an entity declaration, except
that well-formed documents need not declare any of the
following entities: amp, lt, gt, apos, quot.  [ WFC: Parsed
Entity ] An entity reference must not contain the name of
an unparsed entity  [66] CharRef ::= '&#' [0-9]+ ';' |
'&#x' [0-9a-fA-F]+ ';'  A PEReference may have been
detected in the current input stream the handling is done
 accordingly to http://www.w3.org/TR/REC-xml#entproc N)rm   ÚxmlParserHandleReferencerL   r,   s    r   ÚparserHandleReferenceÚ parserCtxt.parserHandleReference‘  s   € ô 	×+Ò+¨D¯G©GÕ4r   c                 óF   • [         R                  " U R                  5      nU$ )zfxmlPopInput: the current input pointed by ctxt->input came
to an end pop it and return the next char. )rm   ÚxmlPopInputrL   rñ   s     r   ÚpopInputÚparserCtxt.popInput   s   € ô ×$Ò$ T§W¡WÓ-ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )a�  Trickery: parse an XML name but without consuming the input
flow Needed for rollback cases. Used only when parsing
entities references.  TODO: seems deprecated now, only used
in the default part of xmlParserHandleReference  [4]
NameChar ::= Letter | Digit | '.' | '-' | '_' | ':' |
CombiningChar | Extender  [5] Name ::= (Letter | '_' | ':')
 (NameChar)*  [6] Names ::= Name (S Name)* )rm   ÚxmlScanNamerL   rñ   s     r   ÚscanNameÚparserCtxt.scanName¦  s   € ô ×$Ò$ T§W¡WÓ-ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z�skip all blanks character found at that point in the input
streams. It pops up finished entities in the process if
 allowable at that point. )rm   ÚxmlSkipBlankCharsrL   rñ   s     r   ÚskipBlankCharsÚparserCtxt.skipBlankChars±  ó   € ô ×*Ò*¨4¯7©7Ó3ˆØˆ
r   c                 óL   • [         R                  " U R                  XX4U5      nU$ ©z˜Takes a entity string content and process to do the
adequate substitutions.  [67] Reference ::= EntityRef |
 CharRef  [69] PEReference ::= '%' Name ';' )rm   ÚxmlStringDecodeEntitiesrL   )r'   re   rc  rÑ  rd  re  r_   s          r   ÚstringDecodeEntitiesÚparserCtxt.stringDecodeEntities¸  s$   € ô ×0Ò0°·±¸#ÀSÐPTÓUˆØˆ
r   c           	      óL   • [         R                  " U R                  XX4XV5      nU$ r%  )rm   ÚxmlStringLenDecodeEntitiesrL   )r'   re   r^   rc  rÑ  rd  re  r_   s           r   ÚstringLenDecodeEntitiesÚ"parserCtxt.stringLenDecodeEntities¿  s$   € ô ×3Ò3°D·G±G¸SÀtÐRVÓ]ˆØˆ
r   rw   r#   )Xr   r   r	   r
   r(   rr   r#  rÔ
  rÙ
  rÞ
  râ
  rç
  rë
  rï
  ró
  r÷
  rü
  r   r  r
  r  r  r  r  r   r$  r(  r,  r0  r4  r8  r<  rA  rE  rI  rN  rR  rV  r[  r_  rf  rn  rr  rv  rz  r  rƒ  r‡  rŒ  r�  r”  r™  r�  r¡  r¥  r©  r®  r²  r¶  rº  r¾  rÂ  rÆ  rÊ  rÎ  rÒ  rÖ  rÚ  rÞ  râ  ræ  rê  rî  rò  rö  rú  rþ  r  r  r  r  r  r  r  r!  r'  r+  r   r   r   r   r
  r
  2  s¥  † ô1òòòò
Aò?ò;òIò;òòòòòò*òò
/ò
òò
ò-òò/ò
òòòò)òò
ò
ò
ò
òòFò*òò7òòò(òò86ò+ò4òò,ò,ò0ò,òòòò+ò
/òò2Iò/ò")ò
ò.òò1ò0ò&'òòòò.òò(òò-ò
òò,ò
7ò*5òò	òòõr   r
  c                   óZ   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
 rS rS rS rSrg)r  iÆ  Nc                 ój   • [        U5      S:w  a  [        S5      eXl        [        R	                  XS9  g )Nr   z'xmlAttr got a wrong wrapper object typer  rá  rM   s     r   r(   ÚxmlAttr.__init__Ç  rÇ  r   c                 óH   • SU R                   [        [        U 5      5      4-  $ )Nz<xmlAttr (%s) object at 0x%x>rÉ  r,   s    r   rË  ÚxmlAttr.__repr__Ì  rÍ  r   c                 óF   • [         R                  " XR                  U5        g)z*Dumps debug information for the attribute N)rm   ÚxmlDebugDumpAttrrL   rÛ  s      r   ÚdebugDumpAttrÚxmlAttr.debugDumpAttrÓ  s   € ä×#Ò# F¯G©G°UÕ;r   c                 óF   • [         R                  " XR                  U5        g)z/Dumps debug information for the attribute list N)rm   ÚxmlDebugDumpAttrListrL   rÛ  s      r   ÚdebugDumpAttrListÚxmlAttr.debugDumpAttrList×  s   € ä×'Ò'¨·±¸Õ?r   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ r"  r#  ©r'   r¯   Ú	target__or_   Ú_xmlAttr__tmps        r   r%  ÚxmlAttr.copyPropß  sG   € à‰> t™9Ø Ÿ)™)ˆiÜ×$Ò$ Y·±Ó8ˆØ‰;œYÐ'=Ó>Ð>Ü˜SÑ!ˆØˆr   c                 ó˜   • Uc  SnOUR                   n[        R                  " X R                   5      nUc  [        S5      e[	        US9nU$ r(  r)  r;  s        r   r+  ÚxmlAttr.copyPropListè  sG   € à‰> t™9Ø Ÿ)™)ˆiÜ×(Ò(¨·G±GÓ<ˆØ‰;œYÐ'AÓBÐBÜ˜SÑ!ˆØˆr   c                 óD   • [         R                  " U R                  5        g)z1Free one attribute, all the content is freed too N)rm   ÚxmlFreeProprL   r,   s    r   ÚfreePropÚxmlAttr.freePropñ  r|  r   c                 óD   • [         R                  " U R                  5        g)zFFree a property and all its siblings, all the children are
freed too. N)rm   ÚxmlFreePropListrL   r,   s    r   ÚfreePropListÚxmlAttr.freePropListõ  rM  r   c                 óF   • [         R                  " U R                  5      nU$ )zwUnlink and free one attribute, all the content is freed too
Note this doesn't work for namespace definition attributes )rm   ÚxmlRemoveProprL   rñ   s     r   Ú
removePropÚxmlAttr.removePropú  s   € ô ×&Ò& t§w¡wÓ/ˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ r=
  r>
  rR  s       r   rA
  ÚxmlAttr.removeID  s/   € ð ‰; ™Ø—v‘vˆfÜ×$Ò$ V¯W©WÓ5ˆØˆ
r   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ rD
  rE
  rR  s       r   rG
  ÚxmlAttr.removeRef  s/   € ð ‰; ™Ø—v‘vˆfÜ×%Ò% f¯g©gÓ6ˆØˆ
r   rw   r#   )r   r   r	   r
   r(   rË  r4  r8  r%  r+  rC  rG  rK  rA
  rG
  r   r   r   r   r  r  Æ  s;   † ô*ò
Qò<ò@òòò(ò,ò
òõr   r  c                   ó$   • \ rS rSrSS jrS rSrg)r‘  i  Nc                 ój   • [        U5      S:w  a  [        S5      eXl        [        R	                  XS9  g )Nr   z,xmlAttribute got a wrong wrapper object typer  rá  rM   s     r   r(   ÚxmlAttribute.__init__  s0   € Ü˜Ó Ó"´YÐ?mÓ5nÐ/nØŒÜ×Ñ˜ÐÒ)r   c                 óH   • SU R                   [        [        U 5      5      4-  $ )Nz"<xmlAttribute (%s) object at 0x%x>rÉ  r,   s    r   rË  ÚxmlAttribute.__repr__  s   € Ø3°t·y±yÄ#ÄfÈdÃmÓBTÐ6UÑUÐUr   rw   r#   ©r   r   r	   r
   r(   rË  r   r   r   r   r‘  r‘    s   † ô*õ
Vr   r‘  c                   óZ   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
 rS rS rS rSrg)r…  i  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   Úcatalog.__init__  ó   € Ø�4‹< $œ vØˆ�r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   )rL   rm   ÚxmlFreeCatalogr,   s    r   rr   Úcatalog.__del__"  ó&   € Ø�7‰7�d‹?Ü×%Ò% d§g¡gÔ.Øˆ�r   c                 óJ   • [         R                  " U R                  XU5      nU$ )zNAdd an entry in the catalog, it may overwrite existing but
different entries. )rm   ÚxmlACatalogAddrL   )r'   r   rI  rJ  r_   s        r   ÚaddÚcatalog.add+  s!   € ô ×'Ò'¨¯©°¸WÓEˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zCheck is a catalog is empty )rm   ÚxmlCatalogIsEmptyrL   rñ   s     r   ÚcatalogIsEmptyÚcatalog.catalogIsEmpty1  rK  r   c                 óF   • [         R                  " U R                  5      nU$ rQ  )rm   ÚxmlConvertSGMLCatalogrL   rñ   s     r   ÚconvertSGMLCatalogÚcatalog.convertSGMLCatalog6  r‹	  r   c                 óF   • [         R                  " U R                  U5        g)z*Dump the given catalog to the given file. N)rm   ÚxmlACatalogDumprL   )r'   rV  s     r   r�	  Úcatalog.dump;  s   € ä×"Ò" 4§7¡7¨CÕ0r   c                 óH   • [         R                  " U R                  U5      nU$ rd  )rm   ÚxmlACatalogRemoverL   )r'   rg  r_   s      r   ÚremoveÚcatalog.remove?  s   € ä×*Ò*¨4¯7©7°EÓ:ˆØˆ
r   c                 óH   • [         R                  " U R                  X5      nU$ rj  )rm   ÚxmlACatalogResolverL   )r'   r[  ra  r_   s       r   ÚresolveÚcatalog.resolveD  s   € ä×+Ò+¨D¯G©G°UÓBˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )zTTry to lookup the catalog local reference associated to a
public ID in that catalog )rm   ÚxmlACatalogResolvePublicrL   )r'   r[  r_   s      r   ÚresolvePublicÚcatalog.resolvePublicI  s   € ô ×1Ò1°$·'±'¸5ÓAˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ rs  )rm   ÚxmlACatalogResolveSystemrL   )r'   ra  r_   s      r   ÚresolveSystemÚcatalog.resolveSystemO  s   € ä×1Ò1°$·'±'¸5ÓAˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ rx  )rm   ÚxmlACatalogResolveURIrL   )r'   rþ  r_   s      r   Ú
resolveURIÚcatalog.resolveURIT  s   € ä×.Ò.¨t¯w©w¸Ó<ˆØˆ
r   rw   r#   )r   r   r	   r
   r(   rr   ra  re  ri  r�	  rp  rt  rx  r|  r€  r   r   r   r   r…  r…    s9   † ôòòòò
ò
1òò
ò
òõ
r   r…  c                   óN   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
 rS rSrg)r“  iY  Nc                 ój   • [        U5      S:w  a  [        S5      eXl        [        R	                  XS9  g )Nr   z&xmlDtd got a wrong wrapper object typer  rá  rM   s     r   r(   ÚxmlDtd.__init__Z  rã  r   c                 óH   • SU R                   [        [        U 5      5      4-  $ )Nz<xmlDtd (%s) object at 0x%x>rÉ  r,   s    r   rË  ÚxmlDtd.__repr___  ræ  r   c                 óD   • [         R                  " XR                  5        g)z$Dumps debug information for the DTD N)rm   ÚxmlDebugDumpDTDrL   rî  s     r   ÚdebugDumpDTDÚxmlDtd.debugDumpDTDf  s   € ä×"Ò" 6¯7©7Õ3r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )zDo a copy of the dtd. zxmlCopyDtd() failedr  )rm   Ú
xmlCopyDtdrL   r    r“  )r'   r_   Ú_xmlDtd__tmps      r   ÚcopyDtdÚxmlDtd.copyDtdn  s5   € ä×#Ò# D§G¡GÓ,ˆØ‰;œYÐ'<Ó=Ð=Ü˜CÑ ˆØˆr   c                 óD   • [         R                  " U R                  5        g)zFree a DTD structure. N)rm   Ú
xmlFreeDtdrL   r,   s    r   ÚfreeDtdÚxmlDtd.freeDtdu  s   € ä×Ò˜dŸg™gÕ&r   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        US9nU$ )zFSearch the DTD for the description of this attribute on
this element. zxmlGetDtdAttrDesc() failedr  )rm   ÚxmlGetDtdAttrDescrL   r    r‘  )r'   rÈ   r¨   r_   r�  s        r   ÚdtdAttrDescÚxmlDtd.dtdAttrDesc}  s9   € ô ×*Ò*¨4¯7©7°DÓ?ˆØ‰;œYÐ'CÓDÐDÜ #Ñ&ˆØˆr   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )ú3Search the DTD for the description of this element zxmlGetDtdElementDesc() failedr  )rm   ÚxmlGetDtdElementDescrL   r    r�  )r'   r¨   r_   r�  s       r   ÚdtdElementDescÚxmlDtd.dtdElementDesc…  s7   € ä×-Ò-¨d¯g©g°tÓ<ˆØ‰;œYÐ'FÓGÐGÜ Ñ$ˆØˆr   c                 óx   • [         R                  " U R                  XU5      nUc  [        S5      e[	        US9nU$ )zPSearch the DTD for the description of this qualified
attribute on this element. zxmlGetDtdQAttrDesc() failedr  )rm   ÚxmlGetDtdQAttrDescrL   r    r‘  )r'   rÈ   r¨   rÔ  r_   r�  s         r   ÚdtdQAttrDescÚxmlDtd.dtdQAttrDescŒ  s;   € ô ×+Ò+¨D¯G©G°TÀÓHˆØ‰;œYÐ'DÓEÐEÜ #Ñ&ˆØˆr   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        US9nU$ )r™  zxmlGetDtdQElementDesc() failedr  )rm   ÚxmlGetDtdQElementDescrL   r    r�  )r'   r¨   rÔ  r_   r�  s        r   ÚdtdQElementDescÚxmlDtd.dtdQElementDesc”  s7   € ä×.Ò.¨t¯w©w¸ÓEˆØ‰;œYÐ'GÓHÐHÜ Ñ$ˆØˆr   rw   r#   )r   r   r	   r
   r(   rË  r‰  rŽ  r’  r–  r›  rŸ  r£  r   r   r   r   r“  r“  Y  s0   † ô*ò
Pò4òò'òòòõr   r“  c                   ó$   • \ rS rSrSS jrS rSrg)r�  i›  Nc                 ój   • [        U5      S:w  a  [        S5      eXl        [        R	                  XS9  g )Nr   z*xmlElement got a wrong wrapper object typer  rá  rM   s     r   r(   ÚxmlElement.__init__œ  s0   € Ü˜Ó Ó"´YÐ?kÓ5lÐ/lØŒÜ×Ñ˜ÐÒ)r   c                 óH   • SU R                   [        [        U 5      5      4-  $ )Nz <xmlElement (%s) object at 0x%x>rÉ  r,   s    r   rË  ÚxmlElement.__repr__¡  s   € Ø1°T·Y±YÄÄFÈDÃMÓ@RÐ4SÑSÐSr   rw   r#   rV  r   r   r   r�  r�  ›  s   † ô*õ
Tr   r�  c                   ó*   • \ rS rSrSS jrS rS rSrg)r’  i¤  Nc                 ój   • [        U5      S:w  a  [        S5      eXl        [        R	                  XS9  g )Nr   z)xmlEntity got a wrong wrapper object typer  rá  rM   s     r   r(   ÚxmlEntity.__init__¥  s0   € Ü˜Ó Ó"´YÐ?jÓ5kÐ/kØŒÜ×Ñ˜ÐÒ)r   c                 óH   • SU R                   [        [        U 5      5      4-  $ )Nz<xmlEntity (%s) object at 0x%x>rÉ  r,   s    r   rË  ÚxmlEntity.__repr__ª  s   € Ø0°D·I±I¼sÄ6È4Ã=Ó?QÐ3RÑRÐRr   c                 óh   • Uc  SnOUR                   n[        R                  " X R                   5        gri  rj  )r'   rH  r’  s      r   rn  ÚxmlEntity.handleEntity±  s(   € ð ‰< 4™ØŸ™ˆgÜ×"Ò" 7¯G©GÕ4r   rw   r#   )r   r   r	   r
   r(   rË  rn  r   r   r   r   r’  r’  ¤  s   † ô*ò
Sõ5r   r’  c                   óN   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
 rS rSrg)r`  i¹  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚError.__init__º  rZ  r   c                 óF   • [         R                  " U R                  5      nU$ )z'The error code, e.g. an xmlParserError )rm   ÚxmlErrorGetCoderL   rñ   s     r   r´  Ú
Error.code¿  ó   € ä×(Ò(¨¯©Ó1ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z+What part of the library raised this error )rm   ÚxmlErrorGetDomainrL   rñ   s     r   ÚdomainÚError.domainÄ  rK  r   c                 óF   • [         R                  " U R                  5      nU$ )zthe filename )rm   ÚxmlErrorGetFilerL   rñ   s     r   r   Ú
Error.fileÉ  r·  r   c                 óF   • [         R                  " U R                  5      nU$ )zhow consequent is the error )rm   ÚxmlErrorGetLevelrL   rñ   s     r   r~  ÚError.levelÎ  ó   € ä×)Ò)¨$¯'©'Ó2ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zthe line number if available )rm   ÚxmlErrorGetLinerL   rñ   s     r   ÚlineÚ
Error.lineÓ  r·  r   c                 óF   • [         R                  " U R                  5      nU$ )z)human-readable informative error message )rm   ÚxmlErrorGetMessagerL   rñ   s     r   ÚmessageÚError.messageØ  r¡
  r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ )z*Save the original error to the new place. N)rL   rm   ÚxmlCopyError)r'   ÚtoÚto__or_   s       r   Ú	copyErrorÚError.copyErrorá  s/   € à‰:˜t‘uØ—e‘eˆeÜ×%Ò% d§g¡g¨uÓ5ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)zCleanup the error. N)rm   ÚxmlResetErrorrL   r,   s    r   Ú
resetErrorÚError.resetErrorè  r  r   rw   r#   )r   r   r	   r
   r(   r´  rº  r   r~  rÅ  rÉ  rÏ  rÓ  r   r   r   r   r`  r`  ¹  s/   † ôò
ò
ò
ò
ò
ò
òõ*r   r`  c                   ó„   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
 rS rS rS rS rS rS rS rS rS rS rSrg)rP  iì  Nc                 ój   • [        U5      S:w  a  [        S5      eXl        [        R	                  XS9  g )Nr   z%xmlNs got a wrong wrapper object typer  rá  rM   s     r   r(   ÚxmlNs.__init__í  s0   € Ü˜Ó Ó"´YÐ?fÓ5gÐ/gØŒÜ×Ñ˜ÐÒ)r   c                 óH   • SU R                   [        [        U 5      5      4-  $ )Nz<xmlNs (%s) object at 0x%x>rÉ  r,   s    r   rË  ÚxmlNs.__repr__ò  s   € Ø,°·	±	¼3¼vÀt»}Ó;MÐ/NÑNÐNr   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )zDo a copy of the namespace. zxmlCopyNamespace() failedr  )rm   ÚxmlCopyNamespacerL   r    rP  ©r'   r_   Ú_xmlNs__tmps      r   ÚcopyNamespaceÚxmlNs.copyNamespaceù  s4   € ä×)Ò)¨$¯'©'Ó2ˆØ‰;œYÐ'BÓCÐCÜ˜3‘ˆØˆr   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )z Do a copy of an namespace list. zxmlCopyNamespaceList() failedr  )rm   ÚxmlCopyNamespaceListrL   r    rP  rÜ  s      r   ÚcopyNamespaceListÚxmlNs.copyNamespaceList   s4   € ä×-Ò-¨d¯g©gÓ6ˆØ‰;œYÐ'FÓGÐGÜ˜3‘ˆØˆr   c                 óD   • [         R                  " U R                  5        g)z1Free up the structures associated to a namespace N)rm   Ú	xmlFreeNsrL   r,   s    r   ÚfreeNsÚxmlNs.freeNs  s   € ä×Ò˜TŸW™WÕ%r   c                 óD   • [         R                  " U R                  5        g)zAFree up all the structures associated to the chained
namespaces. N)rm   ÚxmlFreeNsListrL   r,   s    r   Ú
freeNsListÚxmlNs.freeNsList  s   € ô 	× Ò  §¡Õ)r   c                 óš   • Uc  SnOUR                   n[        R                  " X@R                   X#5      nUc  [        S5      e[	        US9nU$ rŒ  r�  ©r'   rø   r¨   r´   Ú	parent__or_   rÝ  s          r   r‘  ÚxmlNs.newChild  sK   € ð ‰> t™9Ø Ÿ)™)ˆiÜ×$Ò$ Y·±¸ÓGˆØ‰;œYÐ'=Ó>Ð>Ü˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " X@R                   X#5      nUc  [        S5      e[	        US9nU$ r·	  r¹	  ©r'   r#  r¨   r´   r1  r_   rÝ  s          r   r¼	  ÚxmlNs.newDocNode"  sK   € ð ‰; ™Ø—v‘vˆfÜ×&Ò& v¯w©w¸ÓFˆØ‰;œYÐ'?Ó@Ð@Ü˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " X@R                   X#5      nUc  [        S5      e[	        US9nU$ r¿	  rÀ	  rñ  s          r   rÂ	  ÚxmlNs.newDocNodeEatName0  sK   € ð ‰; ™Ø—v‘vˆfÜ×-Ò-¨f·g±g¸tÓMˆØ‰;œYÐ'FÓGÐGÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " X@R                   X#5      nUc  [        S5      e[	        US9nU$ rÍ	  rÎ	  rñ  s          r   rÐ	  ÚxmlNs.newDocRawNode>  sK   € ð ‰; ™Ø—v‘vˆfÜ×)Ò)¨&·'±'¸4ÓIˆØ‰;œYÐ'BÓCÐCÜ˜SÑ!ˆØˆr   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nU$ )z8Creation of a new node element. @ns is optional (None). zxmlNewNodeEatName() failedr  )rm   ÚxmlNewNodeEatNamerL   r    r�  )r'   r¨   r_   rÝ  s       r   ÚnewNodeEatNameÚxmlNs.newNodeEatNameH  s7   € ä×*Ò*¨4¯7©7°DÓ9ˆØ‰;œYÐ'CÓDÐDÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " X@R                   X#5      nUc  [        S5      e[	        US9nU$ r˜  rš  ©r'   rk  r¨   rg  r~	  r_   rÝ  s          r   r�  ÚxmlNs.newNsPropO  óK   € ð ‰< 4™ØŸ™ˆgÜ×%Ò% g¯w©w¸ÓDˆØ‰;œYÐ'>Ó?Ð?Ü˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " X@R                   X#5      nUc  [        S5      e[	        US9nU$ r¡  r¢  rü  s          r   r¤  ÚxmlNs.newNsPropEatNameY  sK   € ð ‰< 4™ØŸ™ˆgÜ×,Ò,¨W·g±g¸tÓKˆØ‰;œYÐ'EÓFÐFÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " X@R                   X#5      nUc  [        S5      e[	        US9nU$ r¬  r­  rí  s          r   r¯  ÚxmlNs.newTextChildc  sK   € ð ‰> t™9Ø Ÿ)™)ˆiÜ×(Ò(¨·G±G¸TÓKˆØ‰;œYÐ'AÓBÐBÜ˜SÑ!ˆØˆr   c                 óh   • Uc  SnOUR                   n[        R                  " X R                   5        grý  rþ  ©r'   rk  r~	  s      r   r   ÚxmlNs.setNsv  s&   € à‰< 4™ØŸ™ˆgÜ×Ò˜G§W¡WÕ-r   c                 óš   • Uc  SnOUR                   n[        R                  " X@R                   X#5      nUc  [        S5      e[	        US9nU$ r  r  rü  s          r   r  ÚxmlNs.setNsProp|  rþ  r   c                 ól   • Uc  SnOUR                   n[        R                  " X0R                   U5      nU$ r%  r&  )r'   rk  r¨   r~	  r_   s        r   r(  ÚxmlNs.unsetNsProp†  s/   € à‰< 4™ØŸ™ˆgÜ×'Ò'¨·±¸$Ó?ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)zÙNamespace nodes in libxml don't match the XPath semantic.
In a node set the namespace nodes are duplicated and the
next pointer is set to the parent node in the XPath
 semantic. Check if such a node needs to be freed N)rm   ÚxmlXPathNodeSetFreeNsrL   r,   s    r   ÚxpathNodeSetFreeNsÚxmlNs.xpathNodeSetFreeNs‘  s   € ô
 	×(Ò(¨¯©Õ1r   rw   r#   )r   r   r	   r
   r(   rË  rÞ  râ  ræ  rê  r‘  r¼	  rÂ	  rÐ	  rù  r�  r¤  r¯  r   r  r(  r  r   r   r   r   rP  rP  ì  s]   † ô*ò
Oòòò&ò*ò
ò$òòòòòòò&.òòõ2r   rP  c                   óZ   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
 rS rS rS rSrg)r¥  i˜  Nc                 ó6   • Xl         [        R                  XS9  g r
  )rL   r{   r(   rM   s     r   r(   ÚoutputBuffer.__init__™  rÊ
  r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   XBU5        grî  rï  )r'   r  r/  r0  rø  s        r   rð  Ú+outputBuffer.htmlDocContentDumpFormatOutput¡  s*   € à‰; ™Ø—v‘vˆfÜ×1Ò1°$·'±'¸6ÈVÕTr   c                 ój   • Uc  SnOUR                   n[        R                  " U R                   X25        grõ  rö  )r'   r  r/  rø  s       r   r÷  Ú%outputBuffer.htmlDocContentDumpOutput§  s(   € à‰; ™Ø—v‘vˆfÜ×+Ò+¨D¯G©G°VÕFr   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   XVX45        gr	  r		  )r'   r#  r  r/  r0  r1  rø  s          r   r
	  Ú%outputBuffer.htmlNodeDumpFormatOutput­  s>   € ð ‰; ™Ø—v‘vˆfØ‰; ™Ø—v‘vˆfÜ×+Ò+¨D¯G©G°VÀXÕVr   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   XEU5        gr	  r	  )r'   r#  r  r/  r1  rø  s         r   r	  ÚoutputBuffer.htmlNodeDumpOutput¶  s>   € ð ‰; ™Ø—v‘vˆfØ‰; ™Ø—v‘vˆfÜ×%Ò% d§g¡g¨v¸xÕHr   c                 ó’   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   XgX4U5        grç	  rè	  )r'   r#  r  r~  r0  r/  r1  rø  s           r   rê	  ÚoutputBuffer.nodeDumpOutputÃ  s@   € ð
 ‰; ™Ø—v‘vˆfØ‰; ™Ø—v‘vˆfÜ×$Ò$ T§W¡W¨f¸eÈXÕVr   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   X25      nU$ r
  r
  )r'   r  r/  rø  r_   s        r   r
  ÚoutputBuffer.saveFileToÎ  s1   € ð ‰; ™Ø—v‘vˆfÜ×&Ò& t§w¡w°ÓAˆØˆ
r   c                 ón   • Uc  SnOUR                   n[        R                  " U R                   XBU5      nU$ r
  r
  )r'   r  r/  r0  rø  r_   s         r   r
  ÚoutputBuffer.saveFormatFileTo×  s3   € ð ‰; ™Ø—v‘vˆfÜ×,Ò,¨T¯W©W°fÈÓOˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z@Gives a pointer to the data currently held in the output
buffer )rm   ÚxmlOutputBufferGetContentrL   rñ   s     r   rb  ÚoutputBuffer.getContentä  ó   € ô ×2Ò2°4·7±7Ó;ˆØˆ
r   c                 óH   • [         R                  " U R                  X5      nU$ )zÄWrite the content of the array in the output I/O buffer
This routine handle the I18N transcoding from internal
UTF-8 The buffer is lossless, i.e. will store in case of
 partial or delayed writes. )rm   ÚxmlOutputBufferWriterL   ©r'   r^   rñ  r_   s       r   rd   ÚoutputBuffer.writeê  s   € ô
 ×-Ò-¨d¯g©g°sÓ@ˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )zÅWrite the content of the string in the output I/O buffer
This routine handle the I18N transcoding from internal
UTF-8 The buffer is lossless, i.e. will store in case of
 partial or delayed writes. )rm   ÚxmlOutputBufferWriteStringrL   ©r'   re   r_   s      r   ÚwriteStringÚoutputBuffer.writeStringò  s   € ô
 ×3Ò3°D·G±G¸SÓAˆØˆ
r   rw   r#   )r   r   r	   r
   r(   rð  r÷  r
	  r	  rê	  r
  r
  rb  rd   r*  r   r   r   r   r¥  r¥  ˜  s>   † ô1òUòGòWòIò	Wòòòòõr   r¥  c                   óB   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
rg)r   iú  Nc                 ó6   • Xl         [        R                  XS9  g r
  )rL   rj   r(   rM   s     r   r(   ÚinputBuffer.__init__û  ó   € ØŒÜ×Ñ˜tÐÒ/r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   )rL   rm   rs   r,   s    r   rr   ÚinputBuffer.__del__ÿ  ó&   € Ø�7‰7�d‹?Ü×/Ò/°·±Ô8Øˆ�r   c                 óH   • [         R                  " U R                  U5      nU$ )a'  Grow up the content of the input buffer, the old data are
preserved This routine handle the I18N transcoding to
internal UTF-8 This routine is used when operating the
parser in normal (pull) mode  TODO: one should be able to
remove one extra copy by copying directly onto in->buffer
 or in->raw )rm   ÚxmlParserInputBufferGrowrL   ©r'   r^   r_   s      r   ÚgrowÚinputBuffer.grow  s   € ô ×1Ò1°$·'±'¸3Ó?ˆØˆ
r   c                 óH   • [         R                  " U R                  X5      nU$ )z°Push the content of the arry in the input buffer This
routine handle the I18N transcoding to internal UTF-8 This
is used when operating the parser in progressive (push)
 mode. )rm   ÚxmlParserInputBufferPushrL   r%  s       r   ÚpushÚinputBuffer.push  s   € ô
 ×1Ò1°$·'±'¸3ÓDˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )zŠRefresh the content of the input buffer, the old data are
considered consumed This routine handle the I18N
 transcoding to internal UTF-8 )rm   ÚxmlParserInputBufferReadrL   r5  s      r   rZ   ÚinputBuffer.read  s   € ô ×1Ò1°$·'±'¸3Ó?ˆØˆ
r   c                 ón   • Uc  SnOUR                   n[        R                  " XPR                   X#U5      nU$ ©z%Setup an XML reader with new options N©rL   rm   ÚxmlTextReaderSetup)r'   r«
  r$  r/  r%  r¬
  r_   s          r   ÚSetupÚinputBuffer.Setup%  s1   € à‰> t™9Ø Ÿ)™)ˆiÜ×+Ò+¨I·w±wÀÈwÓWˆØˆ
r   c                 ó‚   • [         R                  " U R                  U5      nUc  [        S5      e[	        US9nXl        U$ )z2Create an xmlTextReader structure fed with @input zxmlNewTextReader() failedr  )rm   ÚxmlNewTextReaderrL   r    rg  rç  )r'   rþ  r_   Ú_inputBuffer__tmps       r   ÚnewTextReaderÚinputBuffer.newTextReader,  s<   € ä×)Ò)¨$¯'©'°3Ó7ˆØ‰;œYÐ'BÓCÐCÜ 3Ñ'ˆØŒØˆr   rw   r#   )r   r   r	   r
   r(   rr   r6  r:  rZ   rC  rH  r   r   r   r   r   r   ú  s%   † ô0òòòòòõr   r   c                   ó6   • \ rS rSrS	S jrS rS rS rS rSr	g)
rx  i4  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚxmlReg.__init__5  rZ  r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   )rL   rm   ÚxmlRegFreeRegexpr,   s    r   rr   ÚxmlReg.__del__9  ó&   € Ø�7‰7�d‹?Ü×'Ò'¨¯©Ô0Øˆ�r   c                 óH   • [         R                  " U R                  U5      nU$ )z4Check if the regular expression generates the value )rm   ÚxmlRegexpExecrL   )r'   r´   r_   s      r   Ú
regexpExecÚxmlReg.regexpExecB  s   € ä×&Ò& t§w¡w°Ó8ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z/Check if the regular expression is determinist )rm   ÚxmlRegexpIsDeterministrL   rñ   s     r   ÚregexpIsDeterministÚxmlReg.regexpIsDeterministG  rG  r   c                 óD   • [         R                  " XR                  5        g)z5Print the content of the compiled regular expression N)rm   ÚxmlRegexpPrintrL   rî  s     r   ÚregexpPrintÚxmlReg.regexpPrintL  ó   € ä×!Ò! &¯'©'Õ2r   rw   r#   )
r   r   r	   r
   r(   rr   rS  rW  r[  r   r   r   r   rx  rx  4  s   † ôòòò
õ
3r   rx  c                   ó0   • \ rS rSrSS jrS rS rS rSrg)	rË  iP  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚrelaxNgParserCtxt.__init__Q  rZ  r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   )rL   rm   ÚxmlRelaxNGFreeParserCtxtr,   s    r   rr   ÚrelaxNgParserCtxt.__del__U  r2  r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )úxparse a schema definition resource and build an internal
XML Schema structure which can be used to validate
 instances. zxmlRelaxNGParse() failedr  )rm   ÚxmlRelaxNGParserL   r3   ÚrelaxNgSchema)r'   r_   Ú_relaxNgParserCtxt__tmps      r   ÚrelaxNGParseÚrelaxNgParserCtxt.relaxNGParse^  s7   € ô ×(Ò(¨¯©Ó1ˆØ‰;œ[Ð)CÓDÐDÜ 3Ñ'ˆØˆr   c                 óH   • [         R                  " U R                  U5      nU$ )zuSemi private function used to pass information to a parser
context which are a combination of xmlRelaxNGParserFlag . )rm   ÚxmlRelaxParserSetFlagrL   rJ  s      r   ÚrelaxParserSetFlagÚ$relaxNgParserCtxt.relaxParserSetFlagg  s   € ô ×.Ò.¨t¯w©w¸Ó>ˆØˆ
r   rw   r#   )	r   r   r	   r
   r(   rr   ri  rm  r   r   r   r   rË  rË  P  s   † ôòòõr   rË  c                   ó<   • \ rS rSrS
S jrS rS rS rS rS r	S	r
g)rg  im  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚrelaxNgSchema.__init__n  rZ  r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   )rL   rm   ÚxmlRelaxNGFreer,   s    r   rr   ÚrelaxNgSchema.__del__r  r^  r   c                 óD   • [         R                  " XR                  5        g)zDump a RelaxNG structure back N)rm   ÚxmlRelaxNGDumprL   rî  s     r   ÚrelaxNGDumpÚrelaxNgSchema.relaxNGDump{  r]  r   c                 óD   • [         R                  " XR                  5        g)z#Dump the transformed RelaxNG tree. N)rm   ÚxmlRelaxNGDumpTreerL   rî  s     r   ÚrelaxNGDumpTreeÚrelaxNgSchema.relaxNGDumpTree  s   € ä×%Ò% f¯g©gÕ6r   c                 ó€   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nXl        U$ )zDCreate an XML RelaxNGs validation context based on the
given schema zxmlRelaxNGNewValidCtxt() failedr  )rm   ÚxmlRelaxNGNewValidCtxtrL   r    ÚrelaxNgValidCtxtÚschema)r'   r_   Ú_relaxNgSchema__tmps      r   ÚrelaxNGNewValidCtxtÚ!relaxNgSchema.relaxNGNewValidCtxtƒ  s<   € ô ×/Ò/°·±Ó8ˆØ‰;œYÐ'HÓIÐIÜ  cÑ*ˆØŒØˆr   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ ©a  Use RelaxNG to validate the document as it is processed.
Activation is only possible before the first Read(). if
@schema is None, then RelaxNG validation is deactivated. @
The @schema should not be freed until the reader is
 deallocated or its use has been deactivated. N©rL   rm   ÚxmlTextReaderRelaxNGSetSchemarª
  s       r   ÚRelaxNGSetSchemaÚrelaxNgSchema.RelaxNGSetSchema�  s/   € ð ‰> t™9Ø Ÿ)™)ˆiÜ×6Ò6°yÇ'Á'ÓJˆØˆ
r   rw   r#   )r   r   r	   r
   r(   rr   rw  r{  r‚  rˆ  r   r   r   r   rg  rg  m  s    † ôòò3ò7òõ	r   rg  c                   óH   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
 rSrg)r  i›  Nc                 óD   • S U l         Xl        [        R                  XS9  g r
  )r€  rL   rØ  r(   rM   s     r   r(   ÚrelaxNgValidCtxt.__init__œ  s   € ØˆŒØŒÜ×%Ñ% dÐ%Ò6r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   )rL   rm   ÚxmlRelaxNGFreeValidCtxtr,   s    r   rr   ÚrelaxNgValidCtxt.__del__¡  ó&   € Ø�7‰7�d‹?Ü×.Ò.¨t¯w©wÔ7Øˆ�r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ r`	  ra	  rR  s       r   rc	  Ú#relaxNgValidCtxt.relaxNGValidateDocª  s/   € à‰; ™Ø—v‘vˆfÜ×.Ò.¨t¯w©w¸Ó?ˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   X45      nU$ rf	  rg	  ©r'   r#  rÈ   r1  r  r_   s         r   rj	  Ú+relaxNgValidCtxt.relaxNGValidateFullElement±  sC   € ð ‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgÜ×6Ò6°t·w±wÀÓPˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   X45      nU$ rm	  rn	  r”  s         r   rp	  Ú*relaxNgValidCtxt.relaxNGValidatePopElement¼  sA   € à‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgÜ×5Ò5°d·g±g¸vÓOˆØˆ
r   c                 óH   • [         R                  " U R                  X5      nU$ ©z;check the CData parsed for validation in the current stack )rm   ÚxmlRelaxNGValidatePushCDatarL   ©r'   rŸ   r^   r_   s       r   ÚrelaxNGValidatePushCDataÚ)relaxNgValidCtxt.relaxNGValidatePushCDataÅ  s   € ä×4Ò4°T·W±W¸dÓHˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   X45      nU$ rs	  rt	  r”  s         r   rv	  Ú+relaxNgValidCtxt.relaxNGValidatePushElementÊ  sA   € à‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgÜ×6Ò6°t·w±wÀÓPˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©z¿Use RelaxNG schema context to validate the document as it
is processed. Activation is only possible before the first
Read(). If @ctxt is None, then RelaxNG schema validation is
 deactivated. N©rL   rm   Ú xmlTextReaderRelaxNGValidateCtxt©r'   r«
  r%  r¬
  r_   s        r   ÚRelaxNGValidateCtxtÚ$relaxNgValidCtxt.RelaxNGValidateCtxt×  s1   € ð
 ‰> t™9Ø Ÿ)™)ˆiÜ×9Ò9¸)ÇWÁWÈgÓVˆØˆ
r   ©rL   r€  r#   )r   r   r	   r
   r(   rr   rc	  rj	  rp	  rœ  rv	  r¥  r   r   r   r   r  r  ›  s*   † ô7ò
òò	òòò
õr   r  c                   ó*   • \ rS rSrSS jrS rS rSrg)r}  iá  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚSchemaParserCtxt.__init__â  rZ  r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   )rL   rm   ÚxmlSchemaFreeParserCtxtr,   s    r   rr   ÚSchemaParserCtxt.__del__æ  r�  r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )re  zxmlSchemaParse() failedr  )rm   ÚxmlSchemaParserL   r3   ÚSchema)r'   r_   Ú_SchemaParserCtxt__tmps      r   ÚschemaParseÚSchemaParserCtxt.schemaParseï  s7   € ô ×'Ò'¨¯©Ó0ˆØ‰;œ[Ð)BÓCÐCÜ˜CÑ ˆØˆr   rw   r#   )r   r   r	   r
   r(   rr   r²  r   r   r   r   r}  r}  á  s   † ôòõr   r}  c                   ó6   • \ rS rSrS	S jrS rS rS rS rSr	g)
r°  iø  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚSchema.__init__ù  rZ  r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   )rL   rm   ÚxmlSchemaFreer,   s    r   rr   ÚSchema.__del__ý  s&   € Ø�7‰7�d‹?Ü×$Ò$ T§W¡WÔ-Øˆ�r   c                 ój   • Uc  SnOUR                   n[        R                  " X R                   5      nU$ ©a  Use XSD Schema to validate the document as it is processed.
Activation is only possible before the first Read(). if
@schema is None, then Schema validation is deactivated. The
@schema should not be freed until the reader is deallocated
 or its use has been deactivated. N©rL   rm   ÚxmlTextReaderSetSchemarª
  s       r   Ú	SetSchemaÚSchema.SetSchema  s/   € ð ‰> t™9Ø Ÿ)™)ˆiÜ×/Ò/°	¿7¹7ÓCˆØˆ
r   c                 óD   • [         R                  " XR                  5        g)zDump a Schema structure. N)rm   ÚxmlSchemaDumprL   rî  s     r   Ú
schemaDumpÚSchema.schemaDump  s   € ä× Ò  ¯©Õ1r   c                 ó€   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nXl        U$ )zDCreate an XML Schemas validation context based on the given
schema. zxmlSchemaNewValidCtxt() failedr  )rm   ÚxmlSchemaNewValidCtxtrL   r    ÚSchemaValidCtxtr€  )r'   r_   Ú_Schema__tmps      r   ÚschemaNewValidCtxtÚSchema.schemaNewValidCtxt  s<   € ô ×.Ò.¨t¯w©wÓ7ˆØ‰;œYÐ'GÓHÐHÜ SÑ)ˆØŒØˆr   rw   r#   )
r   r   r	   r
   r(   rr   r¾  rÂ  rÈ  r   r   r   r   r°  r°  ø  s   † ôòò	ò2õr   r°  c                   óZ   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
 rS rS rS rSrg)rÆ  i"  Nc                 óD   • S U l         Xl        [        R                  XS9  g r
  )r€  rL   rÑ  r(   rM   s     r   r(   ÚSchemaValidCtxt.__init__#  s   € ØˆŒØŒÜ×$Ñ$ TÐ$Ò5r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   )rL   rm   ÚxmlSchemaFreeValidCtxtr,   s    r   rr   ÚSchemaValidCtxt.__del__(  s&   € Ø�7‰7�d‹?Ü×-Ò-¨d¯g©gÔ6Øˆ�r   c                 ól   • Uc  SnOUR                   n[        R                  " X0R                   U5      nU$ ©z»Use W3C XSD schema context to validate the document as it
is processed. Activation is only possible before the first
Read(). If @ctxt is None, then XML Schema validation is
 deactivated. N©rL   rm   ÚxmlTextReaderSchemaValidateCtxtr¤  s        r   ÚSchemaValidateCtxtÚ"SchemaValidCtxt.SchemaValidateCtxt1  s1   € ð
 ‰> t™9Ø Ÿ)™)ˆiÜ×8Ò8¸ÇGÁGÈWÓUˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z3Check if any error was detected during validation. )rm   ÚxmlSchemaIsValidrL   rñ   s     r   ÚschemaIsValidÚSchemaValidCtxt.schemaIsValid?  rÂ  r   c                 óH   • [         R                  " U R                  U5      nU$ )z3Sets the options to be used during the validation. )rm   ÚxmlSchemaSetValidOptionsrL   r  s      r   ÚschemaSetValidOptionsÚ%SchemaValidCtxt.schemaSetValidOptionsD  s   € ä×1Ò1°$·'±'¸7ÓCˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z$Get the validation context options. )rm   ÚxmlSchemaValidCtxtGetOptionsrL   rñ   s     r   ÚschemaValidCtxtGetOptionsÚ)SchemaValidCtxt.schemaValidCtxtGetOptionsI  ó   € ä×5Ò5°d·g±gÓ>ˆØˆ
r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )zDallow access to the parser context of the schema validation
context z(xmlSchemaValidCtxtGetParserCtxt() failedr  )rm   ÚxmlSchemaValidCtxtGetParserCtxtrL   r3   r
  )r'   r_   Ú_SchemaValidCtxt__tmps      r   ÚschemaValidCtxtGetParserCtxtÚ,SchemaValidCtxt.schemaValidCtxtGetParserCtxtN  s7   € ô ×8Ò8¸¿¹ÓAˆØ‰;œ[Ð)SÓTÐTÜ Ñ$ˆØˆr   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ r`	  r¸
  rR  s       r   rº
  Ú!SchemaValidCtxt.schemaValidateDocV  s/   € à‰; ™Ø—v‘vˆfÜ×-Ò-¨d¯g©g°vÓ>ˆØˆ
r   c                 óH   • [         R                  " U R                  X5      nU$ )zeDo a schemas validation of the given resource, it will use
the SAX streamable validation internally. )rm   ÚxmlSchemaValidateFilerL   )r'   r  r%  r_   s       r   ÚschemaValidateFileÚ"SchemaValidCtxt.schemaValidateFile]  s   € ô ×.Ò.¨t¯w©w¸ÓJˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ rO  rP  )r'   rÈ   r  r_   s       r   rS  Ú(SchemaValidCtxt.schemaValidateOneElementc  s/   € à‰< 4™ØŸ™ˆgÜ×4Ò4°T·W±W¸gÓFˆØˆ
r   c                 óF   • [         R                  " U R                  U5        g)zaWorkaround to provide file error reporting information when
this is not provided by current APIs N)rm   ÚxmlSchemaValidateSetFilenamerL   )r'   r  s     r   ÚschemaValidateSetFilenameÚ)SchemaValidCtxt.schemaValidateSetFilenamej  s   € ô 	×/Ò/°·±¸ÕBr   r§  r#   )r   r   r	   r
   r(   rr   rÔ  rØ  rÜ  rà  ræ  rº
  rì  rS  rò  r   r   r   r   rÆ  rÆ  "  s:   † ô6ò
òòò
ò
ò
òòòõCr   rÆ  c                   ó*   • \ rS rSrSS jrS rS rSrg)rß  io  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚxmlTextReaderLocator.__init__p  rZ  r   c                 óF   • [         R                  " U R                  5      nU$ )z+Obtain the base URI for the given locator. )rm   ÚxmlTextReaderLocatorBaseURIrL   rñ   s     r   ÚBaseURIÚxmlTextReaderLocator.BaseURIx  ó   € ä×4Ò4°T·W±WÓ=ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z.Obtain the line number for the given locator. )rm   ÚxmlTextReaderLocatorLineNumberrL   rñ   s     r   Ú
LineNumberÚxmlTextReaderLocator.LineNumber}  ó   € ä×7Ò7¸¿¹Ó@ˆØˆ
r   rw   r#   )r   r   r	   r
   r(   rù  rþ  r   r   r   r   rß  rß  o  s   † ôòõ
r   rß  c                   óž  • \ rS rSrSES jrS rS rS rS rS r	S	 r
S
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r S  r!S! r"S" r#S# r$S$ r%S% r&S& r'S' r(S( r)S) r*S* r+S+ r,S, r-S- r.S. r/S/ r0S0 r1S1 r2S2 r3S3 r4S4 r5S5 r6S6 r7S7 r8S8 r9S9 r:S: r;S; r<S< r=S= r>S> r?S? r@S@ rASA rBSB rCSC rDSDrEg)Frg  i‚  Nc                 óD   • S U l         Xl        [        R                  XS9  g r
  )rç  rL   rå  r(   rM   s     r   r(   ÚxmlTextReader.__init__ƒ  s   € ØˆŒ
ØŒÜ×"Ñ" 4Ð"Ò3r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   rê  r,   s    r   rr   ÚxmlTextReader.__del__ˆ  r¯  r   c                 óF   • [         R                  " U R                  5      nU$ )z6Provides the number of attributes of the current node )rm   ÚxmlTextReaderAttributeCountrL   rñ   s     r   ÚAttributeCountÚxmlTextReader.AttributeCount‘  rû  r   c                 óF   • [         R                  " U R                  5      nU$ )zThe base URI of the node. )rm   ÚxmlTextReaderConstBaseUrirL   rñ   s     r   ÚBaseUriÚxmlTextReader.BaseUri–  ó   € ä×2Ò2°4·7±7Ó;ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )a  This function provides the current index of the parser used
by the reader, relative to the start of the current entity.
This function actually just wraps a call to
xmlBytesConsumed() for the parser context associated with
 the reader. See xmlBytesConsumed() for more information. )rm   ÚxmlTextReaderByteConsumedrL   rñ   s     r   ÚByteConsumedÚxmlTextReader.ByteConsumed›  s   € ô ×2Ò2°4·7±7Ó;ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z‚This method releases any resources allocated by the current
instance changes the state to Closed and close any
 underlying input. )rm   ÚxmlTextReaderCloserL   rñ   s     r   ÚCloseÚxmlTextReader.Close¤  s   € ô ×+Ò+¨D¯G©GÓ4ˆØˆ
r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )a+  Hacking interface allowing to get the xmlDocPtr
corresponding to the current document being accessed by the
xmlTextReader. NOTE: as a result of this call, the reader
will not destroy the associated XML document and calling
xmlFreeDoc() on the result is needed once the reader
 parsing has finished. z xmlTextReaderCurrentDoc() failedr  )rm   ÚxmlTextReaderCurrentDocrL   r    r$  ©r'   r_   Ú_xmlTextReader__tmps      r   Ú
CurrentDocÚxmlTextReader.CurrentDoc«  s7   € ô ×0Ò0°·±Ó9ˆØ‰;œYÐ'IÓJÐJÜ˜CÑ ˆØˆr   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )zËHacking interface allowing to get the xmlNodePtr
corresponding to the current node being accessed by the
xmlTextReader. This is dangerous because the underlying
 node may be destroyed on the next Reads. z!xmlTextReaderCurrentNode() failedr  )rm   ÚxmlTextReaderCurrentNoderL   r    r�  r  s      r   ÚCurrentNodeÚxmlTextReader.CurrentNode·  s7   € ô
 ×1Ò1°$·'±'Ó:ˆØ‰;œYÐ'JÓKÐKÜ˜SÑ!ˆØˆr   c                 óF   • [         R                  " U R                  5      nU$ )z#The depth of the node in the tree. )rm   ÚxmlTextReaderDepthrL   rñ   s     r   ÚDepthÚxmlTextReader.DepthÁ  r¡
  r   c                 óF   • [         R                  " U R                  5      nU$ )z3Determine the encoding of the document being read. )rm   ÚxmlTextReaderConstEncodingrL   rñ   s     r   ÚEncodingÚxmlTextReader.EncodingÆ  ó   € ä×3Ò3°D·G±GÓ<ˆØˆ
r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )zŠReads the contents of the current node and the full
subtree. It then makes the subtree available until the next
 xmlTextReaderRead() call zxmlTextReaderExpand() failedr  )rm   ÚxmlTextReaderExpandrL   r    r�  r  s      r   ÚExpandÚxmlTextReader.ExpandË  s7   € ô ×,Ò,¨T¯W©WÓ5ˆØ‰;œYÐ'EÓFÐFÜ˜SÑ!ˆØˆr   c                 óH   • [         R                  " U R                  U5      nU$ )zGProvides the value of the attribute with the specified
qualified name. )rm   ÚxmlTextReaderGetAttributerL   r·  s      r   ÚGetAttributeÚxmlTextReader.GetAttributeÔ  s   € ô ×2Ò2°4·7±7¸DÓAˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )zaProvides the value of the attribute with the specified
index relative to the containing element. )rm   ÚxmlTextReaderGetAttributeNorL   ©r'   Únor_   s      r   ÚGetAttributeNoÚxmlTextReader.GetAttributeNoÚ  s   € ô ×4Ò4°T·W±W¸bÓAˆØˆ
r   c                 óH   • [         R                  " U R                  X5      nU$ )z.Provides the value of the specified attribute )rm   ÚxmlTextReaderGetAttributeNsrL   ©r'   Ú	localNameÚnamespaceURIr_   s       r   ÚGetAttributeNsÚxmlTextReader.GetAttributeNsà  s   € ä×4Ò4°T·W±W¸iÓVˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z8Provide the column number of the current parsing point. )rm   Ú"xmlTextReaderGetParserColumnNumberrL   rñ   s     r   ÚGetParserColumnNumberÚ#xmlTextReader.GetParserColumnNumberå  s   € ä×;Ò;¸D¿G¹GÓDˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z6Provide the line number of the current parsing point. )rm   Ú xmlTextReaderGetParserLineNumberrL   rñ   s     r   ÚGetParserLineNumberÚ!xmlTextReader.GetParserLineNumberê  s   € ä×9Ò9¸$¿'¹'ÓBˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )z#Read the parser internal property. )rm   ÚxmlTextReaderGetParserProprL   )r'   rÈ  r_   s      r   ÚGetParserPropÚxmlTextReader.GetParserPropï  s   € ä×3Ò3°D·G±G¸TÓBˆØˆ
r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )ai  Method to get the remainder of the buffered XML. this
method stops the parser, set its state to End Of File and
return the input stream with what is left that the parser
did not use.  The implementation is not good, the parser
certainly progressed past what's left in reader->input, and
there is an allocation problem. Best would be to rewrite it
 differently. z"xmlTextReaderGetRemainder() failedr  )rm   ÚxmlTextReaderGetRemainderrL   r    r   r  s      r   ÚGetRemainderÚxmlTextReader.GetRemainderô  s7   € ô ×2Ò2°4·7±7Ó;ˆØ‰;œYÐ'KÓLÐLÜ Ñ%ˆØˆr   c                 óF   • [         R                  " U R                  5      nU$ )z!Whether the node has attributes. )rm   ÚxmlTextReaderHasAttributesrL   rñ   s     r   ÚHasAttributesÚxmlTextReader.HasAttributes  r)  r   c                 óF   • [         R                  " U R                  5      nU$ )z(Whether the node can have a text value. )rm   ÚxmlTextReaderHasValuerL   rñ   s     r   ÚHasValueÚxmlTextReader.HasValue  r‹	  r   c                 óF   • [         R                  " U R                  5      nU$ )z^Whether an Attribute  node was generated from the default
value defined in the DTD or schema. )rm   ÚxmlTextReaderIsDefaultrL   rñ   s     r   Ú	IsDefaultÚxmlTextReader.IsDefault  ó   € ô ×/Ò/°·±Ó8ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z#Check if the current node is empty )rm   ÚxmlTextReaderIsEmptyElementrL   rñ   s     r   ÚIsEmptyElementÚxmlTextReader.IsEmptyElement  rû  r   c                 óF   • [         R                  " U R                  5      nU$ )z_Determine whether the current node is a namespace
declaration rather than a regular attribute. )rm   ÚxmlTextReaderIsNamespaceDeclrL   rñ   s     r   ÚIsNamespaceDeclÚxmlTextReader.IsNamespaceDecl  s   € ô ×5Ò5°d·g±gÓ>ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z5Retrieve the validity status from the parser context )rm   ÚxmlTextReaderIsValidrL   rñ   s     r   ÚIsValidÚxmlTextReader.IsValid  s   € ä×-Ò-¨d¯g©gÓ6ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zThe local name of the node. )rm   ÚxmlTextReaderConstLocalNamerL   rñ   s     r   Ú	LocalNameÚxmlTextReader.LocalName!  rû  r   c                 óH   • [         R                  " U R                  U5      nU$ )zAResolves a namespace prefix in the scope of the current
element. )rm   ÚxmlTextReaderLookupNamespacerL   ©r'   rÔ  r_   s      r   ÚLookupNamespaceÚxmlTextReader.LookupNamespace&  s   € ô ×5Ò5°d·g±g¸vÓFˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )z_Moves the position of the current instance to the attribute
with the specified qualified name. )rm   ÚxmlTextReaderMoveToAttributerL   r·  s      r   ÚMoveToAttributeÚxmlTextReader.MoveToAttribute,  s   € ô ×5Ò5°d·g±g¸tÓDˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )zyMoves the position of the current instance to the attribute
with the specified index relative to the containing element. )rm   ÚxmlTextReaderMoveToAttributeNorL   r4  s      r   ÚMoveToAttributeNoÚxmlTextReader.MoveToAttributeNo2  s   € ô ×7Ò7¸¿¹ÀÓDˆØˆ
r   c                 óH   • [         R                  " U R                  X5      nU$ )zmMoves the position of the current instance to the attribute
with the specified local name and namespace URI. )rm   ÚxmlTextReaderMoveToAttributeNsrL   r:  s       r   ÚMoveToAttributeNsÚxmlTextReader.MoveToAttributeNs8  s   € ô ×7Ò7¸¿¹ÀÓYˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zbMoves the position of the current instance to the node that
contains the current Attribute  node. )rm   ÚxmlTextReaderMoveToElementrL   rñ   s     r   ÚMoveToElementÚxmlTextReader.MoveToElement>  s   € ô ×3Ò3°D·G±GÓ<ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zdMoves the position of the current instance to the first
attribute associated with the current node. )rm   Ú!xmlTextReaderMoveToFirstAttributerL   rñ   s     r   ÚMoveToFirstAttributeÚ"xmlTextReader.MoveToFirstAttributeD  s   € ô ×:Ò:¸4¿7¹7ÓCˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zcMoves the position of the current instance to the next
attribute associated with the current node. )rm   Ú xmlTextReaderMoveToNextAttributerL   rñ   s     r   ÚMoveToNextAttributeÚ!xmlTextReader.MoveToNextAttributeJ  s   € ô ×9Ò9¸$¿'¹'ÓBˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z<The qualified name of the node, equal to Prefix :LocalName. )rm   ÚxmlTextReaderConstNamerL   rñ   s     r   ÚNameÚxmlTextReader.NameP  rG  r   c                 óF   • [         R                  " U R                  5      nU$ )z9The URI defining the namespace associated with the node. )rm   ÚxmlTextReaderConstNamespaceUrirL   rñ   s     r   ÚNamespaceUriÚxmlTextReader.NamespaceUriU  r   r   c                 óJ   • [         R                  " U R                  XX45      nU$ ©z­Setup an xmltextReader to parse an XML in-memory document.
The parsing flags @options are a combination of
xmlParserOption. This reuses the existing @reader
 xmlTextReader. )rm   ÚxmlReaderNewDocrL   )r'   r  r$  r/  r%  r_   s         r   ÚNewDocÚxmlTextReader.NewDocZ  s!   € ô
 ×(Ò(¨¯©°#¸HÓNˆØˆ
r   c                 óJ   • [         R                  " U R                  XX45      nU$ )a  Setup an xmltextReader to parse an XML from a file
descriptor. NOTE that the file descriptor will not be
closed when the reader is closed or reset. The parsing
flags @options are a combination of xmlParserOption. This
 reuses the existing @reader xmlTextReader. )rm   ÚxmlReaderNewFdrL   )r'   r)  r$  r/  r%  r_   s         r   ÚNewFdÚxmlTextReader.NewFdb  s!   € ô ×'Ò'¨¯©°¸(ÓLˆØˆ
r   c                 óJ   • [         R                  " U R                  XU5      nU$ )z¨parse an XML file from the filesystem or the network. The
parsing flags @options are a combination of
xmlParserOption. This reuses the existing @reader
 xmlTextReader. )rm   ÚxmlReaderNewFilerL   )r'   r  r/  r%  r_   s        r   ÚNewFileÚxmlTextReader.NewFilek  s!   € ô
 ×)Ò)¨$¯'©'°8ÀwÓOˆØˆ
r   c                 óL   • [         R                  " U R                  XX4U5      nU$ r’  )rm   ÚxmlReaderNewMemoryrL   )r'   r  r  r$  r/  r%  r_   s          r   Ú	NewMemoryÚxmlTextReader.NewMemorys  s$   € ô
 ×+Ò+¨D¯G©G°VÀ3ÐRYÓZˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ r§
  r¨
  rR  s       r   r­
  ÚxmlTextReader.NewWalker{  s1   € ð ‰; ™Ø—v‘vˆfÜ×+Ò+¨D¯G©G°VÓ<ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z`Skip to the node following the current one in document
order while avoiding the subtree if any. )rm   ÚxmlTextReaderNextrL   rñ   s     r   ÚNextÚxmlTextReader.Nextƒ  r  r   c                 óF   • [         R                  " U R                  5      nU$ )zœSkip to the node following the current one in document
order while avoiding the subtree if any. Currently
 implemented only for Readers built on a document )rm   ÚxmlTextReaderNextSiblingrL   rñ   s     r   ÚNextSiblingÚxmlTextReader.NextSibling‰  s   € ô ×1Ò1°$·'±'Ó:ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z}Get the node type of the current node Reference:
http://www.gnu.org/software/dotgnu/pnetlib-doc/System/Xml/Xm
lNodeType.html )rm   ÚxmlTextReaderNodeTyperL   rñ   s     r   ÚNodeTypeÚxmlTextReader.NodeType�  s   € ô ×.Ò.¨t¯w©wÓ7ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )a6  The value indicating whether to normalize white space and
attribute values. Since attribute value and end of line
normalizations are a MUST in the XML specification only the
value true is accepted. The broken behaviour of accepting
out of range character entities like &#0; is of course not
 supported either. )rm   ÚxmlTextReaderNormalizationrL   rñ   s     r   ÚNormalizationÚxmlTextReader.Normalization—  s   € ô ×3Ò3°D·G±GÓ<ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )zAA shorthand reference to the namespace associated with the
node. )rm   ÚxmlTextReaderConstPrefixrL   rñ   s     r   ÚPrefixÚxmlTextReader.Prefix¡  s   € ô ×1Ò1°$·'±'Ó:ˆØˆ
r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )z²This tells the XML Reader to preserve the current node. The
caller must also use xmlTextReaderCurrentDoc() to keep an
 handle on the resulting document once parsing has finished zxmlTextReaderPreserve() failedr  )rm   ÚxmlTextReaderPreserverL   r    r�  r  s      r   ÚPreserveÚxmlTextReader.Preserve§  s7   € ô ×.Ò.¨t¯w©wÓ7ˆØ‰;œYÐ'GÓHÐHÜ˜SÑ!ˆØˆr   c                 óF   • [         R                  " U R                  5      nU$ )zHThe quotation mark character used to enclose the value of
an attribute. )rm   ÚxmlTextReaderQuoteCharrL   rñ   s     r   Ú	QuoteCharÚxmlTextReader.QuoteChar°  r[  r   c                 óF   • [         R                  " U R                  5      nU$ )zdMoves the position of the current instance to the next node
in the stream, exposing its properties. )rm   ÚxmlTextReaderReadrL   rñ   s     r   ÚReadÚxmlTextReader.Read¶  r  r   c                 óF   • [         R                  " U R                  5      nU$ )zKParses an attribute value into one or more Text and
EntityReference nodes. )rm   ÚxmlTextReaderReadAttributeValuerL   rñ   s     r   ÚReadAttributeValueÚ xmlTextReader.ReadAttributeValue¼  s   € ô ×8Ò8¸¿¹ÓAˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ ©zJReads the contents of the current node, including child
nodes and markup. )rm   ÚxmlTextReaderReadInnerXmlrL   rñ   s     r   ÚReadInnerXmlÚxmlTextReader.ReadInnerXmlÂ  r"  r   c                 óF   • [         R                  " U R                  5      nU$ rÉ  )rm   ÚxmlTextReaderReadOuterXmlrL   rñ   s     r   ÚReadOuterXmlÚxmlTextReader.ReadOuterXmlÈ  r"  r   c                 óF   • [         R                  " U R                  5      nU$ )z#Gets the read state of the reader. )rm   ÚxmlTextReaderReadStaterL   rñ   s     r   Ú	ReadStateÚxmlTextReader.ReadStateÎ  rG  r   c                 óF   • [         R                  " U R                  5      nU$ )z=Reads the contents of an element or a text node as a string. )rm   ÚxmlTextReaderReadStringrL   rñ   s     r   Ú
ReadStringÚxmlTextReader.ReadStringÓ  ó   € ä×0Ò0°·±Ó9ˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ r…  r†  ©r'   r€  Ú	schema__or_   s       r   rˆ  ÚxmlTextReader.RelaxNGSetSchemaØ  s1   € ð ‰> t™9Ø Ÿ)™)ˆiÜ×6Ò6°t·w±wÀ	ÓJˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )z¶Use RelaxNG schema to validate the document as it is
processed. Activation is only possible before the first
Read(). If @rng is None, then RelaxNG schema validation is
 deactivated. )rm   ÚxmlTextReaderRelaxNGValidaterL   )r'   Úrngr_   s      r   ÚRelaxNGValidateÚxmlTextReader.RelaxNGValidateã  s   € ô
 ×5Ò5°d·g±g¸sÓCˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   X25      nU$ r¡  r¢  ©r'   rH  r%  r’  r_   s        r   r¥  Ú!xmlTextReader.RelaxNGValidateCtxtë  s1   € ð
 ‰< 4™ØŸ™ˆgÜ×9Ò9¸$¿'¹'À7ÓTˆØˆ
r   c                 óH   • [         R                  " U R                  U5      nU$ )z²Use W3C XSD schema to validate the document as it is
processed. Activation is only possible before the first
Read(). If @xsd is None, then XML Schema validation is
 deactivated. )rm   ÚxmlTextReaderSchemaValidaterL   )r'   Úxsdr_   s      r   ÚSchemaValidateÚxmlTextReader.SchemaValidateõ  s   € ô
 ×4Ò4°T·W±W¸cÓBˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   X25      nU$ rÑ  rÒ  rä  s        r   rÔ  Ú xmlTextReader.SchemaValidateCtxtý  s1   € ð
 ‰< 4™ØŸ™ˆgÜ×8Ò8¸¿¹À'ÓSˆØˆ
r   c                 óH   • [         R                  " U R                  X5      nU$ )z¢Change the parser processing behaviour by changing some of
its internal properties. Note that some properties can only
 be changed before any read has been done. )rm   ÚxmlTextReaderSetParserProprL   )r'   rÈ  rg  r_   s       r   ÚSetParserPropÚxmlTextReader.SetParserProp  s   € ô ×3Ò3°D·G±G¸TÓIˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ r»  r¼  rÛ  s       r   r¾  ÚxmlTextReader.SetSchema  s1   € ð ‰> t™9Ø Ÿ)™)ˆiÜ×/Ò/°·±¸ÓCˆØˆ
r   c                 ón   • Uc  SnOUR                   n[        R                  " U R                   XRX45      nU$ r@  rA  )r'   rç  r$  r/  r%  Úinput__or_   s          r   rC  ÚxmlTextReader.Setup  s1   € à‰= T™(ØŸ™ˆhÜ×+Ò+¨D¯G©G°XÀHÓVˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z<Determine the standalone status of the document being read. )rm   ÚxmlTextReaderStandalonerL   rñ   s     r   Ú
StandaloneÚxmlTextReader.Standalone   rÙ  r   c                 óH   • [         R                  " U R                  U5      nU$ )z^Get an interned string from the reader, allows for example
to speedup string name comparisons )rm   ÚxmlTextReaderConstStringrL   r)  s      r   ÚStringÚxmlTextReader.String%  s   € ô ×1Ò1°$·'±'¸3Ó?ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z/Provides the text value of the node if present )rm   ÚxmlTextReaderConstValuerL   rñ   s     r   ÚValueÚxmlTextReader.Value+  rÙ  r   c                 óF   • [         R                  " U R                  5      nU$ )z2The xml:lang scope within which the node resides. )rm   ÚxmlTextReaderConstXmlLangrL   rñ   s     r   ÚXmlLangÚxmlTextReader.XmlLang0  r  r   c                 óF   • [         R                  " U R                  5      nU$ )z6Determine the XML version of the document being read. )rm   ÚxmlTextReaderConstXmlVersionrL   rñ   s     r   Ú
XmlVersionÚxmlTextReader.XmlVersion5  râ  r   rõ  r#   )Fr   r   r	   r
   r(   rr   r  r  r  r  r  r  r#  r'  r,  r0  r6  r=  rA  rE  rI  rM  rQ  rU  rY  r^  rb  rf  rj  ro  rs  rw  r{  r  rƒ  r‡  r‹  r�  r”  r˜  rœ  r   r­
  r¦  rª  r®  r²  r¶  rº  r¾  rÂ  rÆ  rË  rÏ  rÓ  r×  rˆ  rá  r¥  ré  rÔ  rï  r¾  rC  rø  rü  r   r  r  r   r   r   r   rg  rg  ‚  sG  † ô4ò
òò
ò
òò
òòò
ò
òòòò
ò
ò
ò
òò
ò
òò
òò
ò
òòòòòòòò
ò
òòòòòòòòòòòòòòòòò
ò
	òòòòòò	òòò
òò
õ
r   rg  c                   ó®   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rSrg)rþ  i:  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚURI.__init__;  rZ  r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   )rL   rm   Ú
xmlFreeURIr,   s    r   rr   ÚURI.__del__?  s&   € Ø�7‰7�d‹?Ü×!Ò! $§'¡'Ô*Øˆ�r   c                 óF   • [         R                  " U R                  5      nU$ )z#Get the authority part from an URI )rm   ÚxmlURIGetAuthorityrL   rñ   s     r   Ú	authorityÚURI.authorityE  r¡
  r   c                 óF   • [         R                  " U R                  5      nU$ )z"Get the fragment part from an URI )rm   ÚxmlURIGetFragmentrL   rñ   s     r   ÚfragmentÚURI.fragmentJ  rK  r   c                 óF   • [         R                  " U R                  5      nU$ )z Get the opaque part from an URI )rm   ÚxmlURIGetOpaquerL   rñ   s     r   ÚopaqueÚ
URI.opaqueO  r·  r   c                 óF   • [         R                  " U R                  5      nU$ )zGet the path part from an URI )rm   ÚxmlURIGetPathrL   rñ   s     r   r  ÚURI.pathT  rp  r   c                 óF   • [         R                  " U R                  5      nU$ )zGet the port part from an URI )rm   ÚxmlURIGetPortrL   rñ   s     r   r   ÚURI.portY  rp  r   c                 óF   • [         R                  " U R                  5      nU$ )zGet the query part from an URI )rm   ÚxmlURIGetQueryrL   rñ   s     r   ÚqueryÚ	URI.query^  rë  r   c                 óF   • [         R                  " U R                  5      nU$ )z>Get the raw query part from an URI (i.e. the unescaped
form). )rm   ÚxmlURIGetQueryRawrL   rñ   s     r   ÚqueryRawÚURI.queryRawc  r  r   c                 óF   • [         R                  " U R                  5      nU$ )z Get the scheme part from an URI )rm   ÚxmlURIGetSchemerL   rñ   s     r   ÚschemeÚ
URI.schemei  r·  r   c                 óF   • [         R                  " U R                  5      nU$ )z Get the server part from an URI )rm   ÚxmlURIGetServerrL   rñ   s     r   ÚserverÚ
URI.servern  r·  r   c                 óF   • [         R                  " U R                  U5        g)z"Set the authority part of an URI. N)rm   ÚxmlURISetAuthorityrL   )r'   r  s     r   ÚsetAuthorityÚURI.setAuthoritys  s   € ä×%Ò% d§g¡g¨yÕ9r   c                 óF   • [         R                  " U R                  U5        g)z!Set the fragment part of an URI. N)rm   ÚxmlURISetFragmentrL   )r'   r  s     r   ÚsetFragmentÚURI.setFragmentw  s   € ä×$Ò$ T§W¡W¨hÕ7r   c                 óF   • [         R                  " U R                  U5        g)zSet the opaque part of an URI. N)rm   ÚxmlURISetOpaquerL   )r'   r  s     r   Ú	setOpaqueÚURI.setOpaque{  ó   € ä×"Ò" 4§7¡7¨FÕ3r   c                 óF   • [         R                  " U R                  U5        g)zSet the path part of an URI. N)rm   ÚxmlURISetPathrL   )r'   r  s     r   ÚsetPathÚURI.setPath  ó   € ä× Ò  §¡¨$Õ/r   c                 óF   • [         R                  " U R                  U5        g)zSet the port part of an URI. N)rm   ÚxmlURISetPortrL   )r'   r   s     r   ÚsetPortÚURI.setPortƒ  rC  r   c                 óF   • [         R                  " U R                  U5        g)zSet the query part of an URI. N)rm   ÚxmlURISetQueryrL   )r'   r$  s     r   ÚsetQueryÚURI.setQuery‡  s   € ä×!Ò! $§'¡'¨5Õ1r   c                 óF   • [         R                  " U R                  U5        g)z<Set the raw query part of an URI (i.e. the unescaped form). N)rm   ÚxmlURISetQueryRawrL   )r'   Ú	query_raws     r   ÚsetQueryRawÚURI.setQueryRaw‹  s   € ä×$Ò$ T§W¡W¨iÕ8r   c                 óF   • [         R                  " U R                  U5        g)zSet the scheme part of an URI. N)rm   ÚxmlURISetSchemerL   )r'   r,  s     r   Ú	setSchemeÚURI.setScheme�  r>  r   c                 óF   • [         R                  " U R                  U5        g)zSet the server part of an URI. N)rm   ÚxmlURISetServerrL   )r'   r0  s     r   Ú	setServerÚURI.setServer“  r>  r   c                 óF   • [         R                  " U R                  U5        g)zSet the user part of an URI. N)rm   ÚxmlURISetUserrL   )r'   r!  s     r   ÚsetUserÚURI.setUser—  rC  r   c                 óF   • [         R                  " U R                  5      nU$ )zGet the user part from an URI )rm   ÚxmlURIGetUserrL   rñ   s     r   r!  ÚURI.user›  rp  r   c                 óH   • [         R                  " U R                  U5      nU$ )z�Parse an URI reference string based on RFC 3986 and fills
in the appropriate fields of the @uri structure 
 URI-reference = URI / relative-ref )rm   ÚxmlParseURIReferencerL   r)  s      r   ÚparseURIReferenceÚURI.parseURIReference¤  s   € ô ×-Ò-¨d¯g©g°sÓ;ˆØˆ
r   c                 óD   • [         R                  " XR                  5        g)z&Prints the URI in the stream @stream. N)rm   ÚxmlPrintURIrL   )r'   Ústreams     r   ÚprintURIÚURI.printURI«  s   € ä×Ò˜v§w¡wÕ/r   c                 óF   • [         R                  " U R                  5      nU$ )z"Save the URI as an escaped string )rm   Ú
xmlSaveUrirL   rñ   s     r   ÚsaveUriÚURI.saveUri¯  s   € ä×#Ò# D§G¡GÓ,ˆØˆ
r   rw   r#   )r   r   r	   r
   r(   rr   r  r  r  r  r   r$  r(  r,  r0  r4  r8  r<  rA  rF  rJ  rO  rS  rW  r[  r!  rb  rg  rk  r   r   r   r   rþ  rþ  :  s   † ôòòò
ò
ò
ò
ò
ò
òò
ò
:ò8ò4ò0ò0ò2ò9ò4ò4ò0òòò0õr   rþ  c                   óx   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
 rS rS rS rS rS rS rS rS rSrg)r*  i´  Nc                 ó6   • Xl         [        R                  XS9  g r
  )rL   rÁ  r(   rM   s     r   r(   ÚValidCtxt.__init__µ  r/  r   c                 ór   • U R                   S :w  a   [        R                  " U R                   5        S U l         g r#   )rL   rm   ÚxmlFreeValidCtxtr,   s    r   rr   ÚValidCtxt.__del__¹  rP  r   c                 ó’   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   XVX45      nU$ rJ
  rK
  )r'   r#  rÈ   r¨   rg  r1  r  r_   s           r   rM
  Ú*ValidCtxt.validCtxtNormalizeAttributeValueÂ  sF   € ð ‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgÜ×<Ò<¸T¿W¹WÀfÐW[ÓcˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ rR
  rS
  rR  s       r   rU
  ÚValidCtxt.validateDocumentÒ  s1   € ð
 ‰; ™Ø—v‘vˆfÜ×,Ò,¨T¯W©W°fÓ=ˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ rX
  rY
  rR  s       r   r[
  ÚValidCtxt.validateDocumentFinalÜ  s1   € ð ‰; ™Ø—v‘vˆfÜ×1Ò1°$·'±'¸6ÓBˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   X45      nU$ r^
  r_
  )r'   r#  rŽ  r1  ra
  r_   s         r   rb
  ÚValidCtxt.validateDtdç  sC   € ð ‰; ™Ø—v‘vˆfØ‰; ™Ø—v‘vˆfÜ×'Ò'¨¯©°Ó@ˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ re
  rf
  rR  s       r   rh
  ÚValidCtxt.validateDtdFinalô  s1   € ð ‰; ™Ø—v‘vˆfÜ×,Ò,¨T¯W©W°fÓ=ˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   X45      nU$ rk
  rl
  r”  s         r   rn
  ÚValidCtxt.validateElement  sA   € à‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgÜ×+Ò+¨D¯G©G°VÓEˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   X25      nU$ rq
  rr
  )r'   r#  rÓ   r1  r_   s        r   rt
  ÚValidCtxt.validateNotationUse
  s1   € ð ‰; ™Ø—v‘vˆfÜ×/Ò/°·±¸ÓNˆØˆ
r   c                 ó¶   • Uc  SnOUR                   nUc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   XVXt5      nU$ rw
  rx
  )	r'   r#  rÈ   r*  rg  r1  r  r3  r_   s	            r   rz
  ÚValidCtxt.validateOneAttribute  sW   € ð ‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgØ‰< 4™ØŸ™ˆgÜ×0Ò0°·±¸&È7ÓZˆØˆ
r   c                 ó�   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   X45      nU$ r}
  r~
  r”  s         r   r€
  ÚValidCtxt.validateOneElement#  sC   € ð ‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgÜ×.Ò.¨t¯w©w¸ÓHˆØˆ
r   c                 ó¸   • Uc  SnOUR                   nUc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   XgX8U5      n	U	$ rƒ
  r„
  )
r'   r#  rÈ   rÔ  rÓ  rg  r1  r  r�  r_   s
             r   r†
  ÚValidCtxt.validateOneNamespace1  sZ   € ð ‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgØ‰:˜t‘uØ—e‘eˆeÜ×0Ò0°·±¸&È6ÐZ_Ó`ˆØˆ
r   c                 ó’   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   XEU5      nU$ r‰
  rŠ
  ©r'   r#  rÈ   r�
  r1  r  r_   s          r   rŽ
  ÚValidCtxt.validatePopElementB  sC   € à‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgÜ×.Ò.¨t¯w©w¸ÈÓOˆØˆ
r   c                 óH   • [         R                  " U R                  X5      nU$ r™  )rm   ÚxmlValidatePushCDatarL   r›  s       r   ÚvalidatePushCDataÚValidCtxt.validatePushCDataK  s   € ä×-Ò-¨d¯g©g°tÓAˆØˆ
r   c                 ó’   • Uc  SnOUR                   nUc  SnOUR                   n[        R                  " U R                   XEU5      nU$ r‘
  r’
  rˆ  s          r   r”
  ÚValidCtxt.validatePushElementP  sC   € à‰; ™Ø—v‘vˆfØ‰< 4™ØŸ™ˆgÜ×/Ò/°·±¸È%ÓPˆØˆ
r   c                 ól   • Uc  SnOUR                   n[        R                  " U R                   U5      nU$ r—
  r˜
  rR  s       r   rš
  ÚValidCtxt.validateRootY  s1   € ð
 ‰; ™Ø—v‘vˆfÜ×(Ò(¨¯©°&Ó9ˆØˆ
r   rw   r#   )r   r   r	   r
   r(   rr   rM
  rU
  r[
  rb
  rh
  rn
  rt
  rz
  r€
  r†
  rŽ
  rŒ  r”
  rš
  r   r   r   r   r*  r*  ´  sR   † ô0òòò ò	òòòòòò"òò"òò
õr   r*  c                   ó®   • \ rS rSrSS jrS rS rS rS rS r	S	 r
S
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rSrg)rÉ  ic  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚxpathContext.__init__d  rZ  r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )z!Get the doc from an xpathContext zxmlXPathGetContextDoc() failedr  )rm   ÚxmlXPathGetContextDocrL   rA   r$  ©r'   r_   Ú_xpathContext__tmps      r   Ú
contextDocÚxpathContext.contextDoci  s5   € ä×.Ò.¨t¯w©wÓ7ˆØ‰;œZÐ(HÓIÐIÜ˜CÑ ˆØˆr   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )ú*Get the current node from an xpathContext zxmlXPathGetContextNode() failedr  )rm   ÚxmlXPathGetContextNoderL   rA   r�  r—  s      r   ÚcontextNodeÚxpathContext.contextNodep  s5   € ä×/Ò/°·±Ó8ˆØ‰;œZÐ(IÓJÐJÜ˜SÑ!ˆØˆr   c                 óF   • [         R                  " U R                  5      nU$ ©rœ  )rm   ÚxmlXPathGetContextPositionrL   rñ   s     r   ÚcontextPositionÚxpathContext.contextPositionw  r)  r   c                 óF   • [         R                  " U R                  5      nU$ r¡  )rm   ÚxmlXPathGetContextSizerL   rñ   s     r   ÚcontextSizeÚxpathContext.contextSize|  rG  r   c                 óF   • [         R                  " U R                  5      nU$ )z+Get the current function name xpathContext )rm   ÚxmlXPathGetFunctionrL   rñ   s     r   ÚfunctionÚxpathContext.function�  r 	  r   c                 óF   • [         R                  " U R                  5      nU$ )z/Get the current function name URI xpathContext )rm   ÚxmlXPathGetFunctionURIrL   rñ   s     r   ÚfunctionURIÚxpathContext.functionURI†  rG  r   c                 ój   • Uc  SnOUR                   n[        R                  " U R                   U5        g)zSet the doc of an xpathContext N)rL   rm   ÚxmlXPathSetContextDocrõ  s      r   ÚsetContextDocÚxpathContext.setContextDoc‹  s(   € à‰; ™Ø—v‘vˆfÜ×(Ò(¨¯©°&Õ9r   c                 ój   • Uc  SnOUR                   n[        R                  " U R                   U5        g)z(Set the current node of an xpathContext N)rL   rm   ÚxmlXPathSetContextNoder  s      r   rD  ÚxpathContext.setContextNode‘  s(   € à‰< 4™ØŸ™ˆgÜ×)Ò)¨$¯'©'°7Õ;r   c                 óJ   • [         R                  " U R                  XU5      nU$ )z<Register a Python written function to the XPath interpreter )rm   r›  rL   )r'   r¨   rœ  r�  r_   s        r   rž  Ú"xpathContext.registerXPathFunction›  s   € ä×1Ò1°$·'±'¸4ÈÓKˆØˆ
r   c                 óJ   • [         R                  " U R                  XU5      nU$ )z+Register a variable with the XPath context )rm   ÚxmlXPathRegisterVariablerL   )r'   r¨   rœ  rg  r_   s        r   ÚxpathRegisterVariableÚ"xpathContext.xpathRegisterVariable   s   € ä×1Ò1°$·'±'¸4ÈÓOˆØˆ
r   c                 óJ   • [         R                  " U R                  XU5      nU$ )a³  Creates/frees an object cache on the XPath context. If
activates XPath objects (xmlXPathObject) will be cached
internally to be reused. @options: 0: This will set the
XPath object caching: @value: This will set the maximum
number of XPath objects to be cached per slot There are 5
slots for: node-set, string, number, boolean, and misc
objects. Use <0 for the default number (100). Other values
 for @options have currently no effect. )rm   ÚxmlXPathContextSetCacherL   )r'   Úactiverg  r%  r_   s        r   ÚxpathContextSetCacheÚ!xpathContext.xpathContextSetCache©  s!   € ô ×0Ò0°·±¸&ÈÓQˆØˆ
r   c                 ót   • [         R                  " XR                  5      nUc  [        S5      e[	        U5      $ )ú7Evaluate the XPath Location Path in the given context. zxmlXPathEval() failed)rm   ÚxmlXPathEvalrL   rA   r—  r)  s      r   rE  ÚxpathContext.xpathEvalµ  s1   € ä×%Ò% c¯7©7Ó3ˆØ‰;œZÐ(?Ó@Ð@Ü˜cÓ"Ð"r   c                 ót   • [         R                  " XR                  5      nUc  [        S5      e[	        U5      $ )zAlias for xmlXPathEval(). zxmlXPathEvalExpression() failed)rm   ÚxmlXPathEvalExpressionrL   rA   r—  r)  s      r   ÚxpathEvalExpressionÚ xpathContext.xpathEvalExpression»  s1   € ä×/Ò/°·W±WÓ=ˆØ‰;œZÐ(IÓJÐJÜ˜cÓ"Ð"r   c                 óD   • [         R                  " U R                  5        g)zFree up an xmlXPathContext N)rm   ÚxmlXPathFreeContextrL   r,   s    r   rF  ÚxpathContext.xpathFreeContextÁ  s   € ä×&Ò& t§w¡wÕ/r   c                 ót   • [         R                  " XR                  5      nUc  [        S5      e[	        US9nU$ )z#Create a new xmlXPathParserContext z!xmlXPathNewParserContext() failedr  )rm   ÚxmlXPathNewParserContextrL   rA   ÚxpathParserContext)r'   re   r_   r˜  s       r   ÚxpathNewParserContextÚ"xpathContext.xpathNewParserContextÉ  s5   € ä×1Ò1°#·w±wÓ?ˆØ‰;œZÐ(KÓLÐLÜ"¨Ñ,ˆØˆr   c                 óH   • [         R                  " U R                  U5      nU$ )zuSearch in the namespace declaration array of the context
for the given namespace name associated to the given prefix )rm   ÚxmlXPathNsLookuprL   rn  s      r   ÚxpathNsLookupÚxpathContext.xpathNsLookupÐ  s   € ô ×)Ò)¨$¯'©'°6Ó:ˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)z6Registers all default XPath functions in this context N)rm   ÚxmlXPathRegisterAllFunctionsrL   r,   s    r   ÚxpathRegisterAllFunctionsÚ&xpathContext.xpathRegisterAllFunctionsÖ  s   € ä×/Ò/°·±Õ8r   c                 óH   • [         R                  " U R                  X5      nU$ )zJRegister a new namespace. If @ns_uri is None it unregisters
the namespace )rm   ÚxmlXPathRegisterNsrL   )r'   rÔ  rœ  r_   s       r   ÚxpathRegisterNsÚxpathContext.xpathRegisterNsÚ  s   € ô ×+Ò+¨D¯G©G°VÓDˆØˆ
r   c                 óD   • [         R                  " U R                  5        g)zBCleanup the XPath context data associated to registered
functions N)rm   ÚxmlXPathRegisteredFuncsCleanuprL   r,   s    r   ÚxpathRegisteredFuncsCleanupÚ(xpathContext.xpathRegisteredFuncsCleanupà  s   € ô 	×1Ò1°$·'±'Õ:r   c                 óD   • [         R                  " U R                  5        g©zBCleanup the XPath context data associated to registered
variables N)rm   ÚxmlXPathRegisteredNsCleanuprL   r,   s    r   ÚxpathRegisteredNsCleanupÚ%xpathContext.xpathRegisteredNsCleanupå  s   € ô 	×.Ò.¨t¯w©wÕ7r   c                 óD   • [         R                  " U R                  5        grä  )rm   Ú"xmlXPathRegisteredVariablesCleanuprL   r,   s    r   ÚxpathRegisteredVariablesCleanupÚ,xpathContext.xpathRegisteredVariablesCleanupê  s   € ô 	×5Ò5°d·g±gÕ>r   c                 óv   • [         R                  " U R                  U5      nUc  [        S5      e[	        U5      $ )úJSearch in the Variable array of the context for the given
variable value. zxmlXPathVariableLookup() failed)rm   ÚxmlXPathVariableLookuprL   rA   r—  r·  s      r   ÚxpathVariableLookupÚ xpathContext.xpathVariableLookupï  s5   € ô ×/Ò/°·±¸Ó>ˆØ‰;œZÐ(IÓJÐJÜ˜cÓ"Ð"r   c                 óv   • [         R                  " U R                  X5      nUc  [        S5      e[	        U5      $ )rí  z!xmlXPathVariableLookupNS() failed)rm   ÚxmlXPathVariableLookupNSrL   rA   r—  )r'   r¨   rœ  r_   s       r   ÚxpathVariableLookupNSÚ"xpathContext.xpathVariableLookupNSö  s5   € ô ×1Ò1°$·'±'¸4ÓHˆØ‰;œZÐ(KÓLÐLÜ˜cÓ"Ð"r   c                 ót   • [         R                  " XR                  5      nUc  [        S5      e[	        U5      $ )rÄ  zxmlXPtrEval() failed)rm   ÚxmlXPtrEvalrL   r    r—  r)  s      r   ÚxpointerEvalÚxpathContext.xpointerEval  s1   € ä×$Ò$ S¯'©'Ó2ˆØ‰;œYÐ'=Ó>Ð>Ü˜cÓ"Ð"r   rw   r#   )r   r   r	   r
   r(   r™  rž  r£  r§  r«  r¯  r³  rD  rž  r¼  rÁ  rE  rÉ  rF  rÑ  rÕ  rÙ  rÝ  rá  ræ  rê  rï  ró  r÷  r   r   r   r   rÉ  rÉ  c  s   † ôò
òòò
ò
ò
ò
:ò<òò
ò
ò#ò#ò0òòò9òò;ò
8ò
?ò
#ò#õ#r   rÉ  c                   óŒ  • \ rS rSrSBS jrS rS rS rS rS r	S	 r
S
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r S  r!S! r"S" r#S# r$S$ r%S% r&S& r'S' r(S( r)S) r*S* r+S+ r,S, r-S- r.S. r/S/ r0S0 r1S1 r2S2 r3S3 r4S4 r5S5 r6S6 r7S7 r8S8 r9S9 r:S: r;S; r<S< r=S= r>S> r?S? r@S@ rASArBg)CrÐ  i  Nc                 ó,   • US :w  a  Xl         g S U l         g r#   rw   rM   s     r   r(   ÚxpathParserContext.__init__  rZ  r   c                 ót   • [         R                  " U R                  5      nUc  [        S5      e[	        US9nU$ )z0Get the xpathContext from an xpathParserContext z!xmlXPathParserGetContext() failedr  )rm   ÚxmlXPathParserGetContextrL   rA   rÉ  )r'   r_   Ú_xpathParserContext__tmps      r   ÚcontextÚxpathParserContext.context  s5   € ä×1Ò1°$·'±'Ó:ˆØ‰;œZÐ(KÓLÐLÜ #Ñ&ˆØˆr   c                 óD   • [         R                  " U R                  5        g)z�Implement the add operation on XPath objects: The numeric
operators convert their operands to numbers as if by
 calling the number function. N)rm   ÚxmlXPathAddValuesrL   r,   s    r   ÚxpathAddValuesÚ!xpathParserContext.xpathAddValues  ó   € ô 	×$Ò$ T§W¡WÕ-r   c                 óF   • [         R                  " U R                  U5        g)aC  Implement the boolean() XPath function boolean
boolean(object) The boolean function converts its argument
to a boolean as follows: - a number is true if and only if
it is neither positive or negative zero nor NaN - a
node-set is true if and only if it is non-empty - a string
 is true if and only if its length is non-zero N)rm   ÚxmlXPathBooleanFunctionrL   ©r'   Únargss     r   ÚxpathBooleanFunctionÚ'xpathParserContext.xpathBooleanFunction  s   € ô 	×*Ò*¨4¯7©7°EÕ:r   c                 óF   • [         R                  " U R                  U5        g)zÊImplement the ceiling() XPath function number
ceiling(number) The ceiling function returns the smallest
(closest to negative infinity) number that is not less than
 the argument and that is an integer. N)rm   ÚxmlXPathCeilingFunctionrL   r  s     r   ÚxpathCeilingFunctionÚ'xpathParserContext.xpathCeilingFunction'  s   € ô
 	×*Ò*¨4¯7©7°EÕ:r   c                 óH   • [         R                  " U R                  X5      nU$ )a  Implement the compare operation on XPath objects: @arg1 <
@arg2    (1, 1, ... @arg1 <= @arg2   (1, 0, ... @arg1 >
@arg2    (0, 1, ... @arg1 >= @arg2   (0, 0, ...  When
neither object to be compared is a node-set and the
operator is <=, <, >=, >, then the objects are compared by
converted both objects to numbers and comparing the numbers
according to IEEE 754. The < comparison will be true if and
only if the first number is less than the second number.
The <= comparison will be true if and only if the first
number is less than or equal to the second number. The >
comparison will be true if and only if the first number is
greater than the second number. The >= comparison will be
true if and only if the first number is greater than or
 equal to the second number. )rm   ÚxmlXPathCompareValuesrL   )r'   ÚinfÚstrictr_   s       r   ÚxpathCompareValuesÚ%xpathParserContext.xpathCompareValues.  s   € ô ×.Ò.¨t¯w©w¸ÓDˆØˆ
r   c                 óF   • [         R                  " U R                  U5        g)zŽImplement the concat() XPath function string concat(string,
string, string*) The concat function returns the
 concatenation of its arguments. N)rm   ÚxmlXPathConcatFunctionrL   r  s     r   ÚxpathConcatFunctionÚ&xpathParserContext.xpathConcatFunction@  ó   € ô 	×)Ò)¨$¯'©'°5Õ9r   c                 óF   • [         R                  " U R                  U5        g)zÌImplement the contains() XPath function boolean
contains(string, string) The contains function returns true
if the first argument string contains the second argument
 string, and otherwise returns false. N)rm   ÚxmlXPathContainsFunctionrL   r  s     r   ÚxpathContainsFunctionÚ(xpathParserContext.xpathContainsFunctionF  ó   € ô
 	×+Ò+¨D¯G©G°UÕ;r   c                 óF   • [         R                  " U R                  U5        g)z<Implement the count() XPath function number count(node-set) N)rm   ÚxmlXPathCountFunctionrL   r  s     r   ÚxpathCountFunctionÚ%xpathParserContext.xpathCountFunctionM  ó   € ä×(Ò(¨¯©°%Õ8r   c                 óD   • [         R                  " U R                  5        g)z›Implement the div operation on XPath objects @arg1 / @arg2:
The numeric operators convert their operands to numbers as
 if by calling the number function. N)rm   ÚxmlXPathDivValuesrL   r,   s    r   ÚxpathDivValuesÚ!xpathParserContext.xpathDivValuesQ  r  r   c                 óF   • [         R                  " U R                  5      nU$ ©zGImplement the equal operation on XPath objects content:
@arg1 == @arg2 )rm   ÚxmlXPathEqualValuesrL   rñ   s     r   ÚxpathEqualValuesÚ#xpathParserContext.xpathEqualValuesW  r  r   c                 óF   • [         R                  " U R                  U5        g)zHandle an XPath error N)rm   ÚxmlXPathErrrL   )r'   rÙ   s     r   ÚxpathErrÚxpathParserContext.xpathErr]  s   € ä×Ò˜tŸw™w¨Õ.r   c                 óD   • [         R                  " U R                  5        g)zgParse and evaluate an XPath expression in the given
context, then push the result on the context stack N)rm   ÚxmlXPathEvalExprrL   r,   s    r   ÚxpathEvalExprÚ xpathParserContext.xpathEvalExpra  r   r   c                 óF   • [         R                  " U R                  U5        g)z5Implement the false() XPath function boolean false() N)rm   ÚxmlXPathFalseFunctionrL   r  s     r   ÚxpathFalseFunctionÚ%xpathParserContext.xpathFalseFunctionf  r$  r   c                 óF   • [         R                  " U R                  U5        g)zÆImplement the floor() XPath function number floor(number)
The floor function returns the largest (closest to positive
infinity) number that is not greater than the argument and
 that is an integer. N)rm   ÚxmlXPathFloorFunctionrL   r  s     r   ÚxpathFloorFunctionÚ%xpathParserContext.xpathFloorFunctionj  s   € ô
 	×(Ò(¨¯©°%Õ8r   c                 óD   • [         R                  " U R                  5        g)z!Free up an xmlXPathParserContext N)rm   ÚxmlXPathFreeParserContextrL   r,   s    r   ÚxpathFreeParserContextÚ)xpathParserContext.xpathFreeParserContextq  s   € ä×,Ò,¨T¯W©WÕ5r   c                 óF   • [         R                  " U R                  U5        g)aÈ  Implement the id() XPath function node-set id(object) The
id function selects elements by their unique ID (see [5.2.1
Unique IDs]). When the argument to id is of type node-set,
then the result is the union of the result of applying id
to the string value of each of the nodes in the argument
node-set. When the argument to id is of any other type, the
argument is converted to a string as if by a call to the
string function; the string is split into a
whitespace-separated list of tokens (whitespace is any
sequence of characters matching the production S); the
result is a node-set containing the elements in the same
document as the context node that have a unique ID equal to
 any of the tokens in the list. N)rm   ÚxmlXPathIdFunctionrL   r  s     r   ÚxpathIdFunctionÚ"xpathParserContext.xpathIdFunctionu  s   € ô 	×%Ò% d§g¡g¨uÕ5r   c                 óF   • [         R                  " U R                  U5        g)aK  Implement the lang() XPath function boolean lang(string)
The lang function returns true or false depending on
whether the language of the context node as specified by
xml:lang attributes is the same as or is a sublanguage of
the language specified by the argument string. The language
of the context node is determined by the value of the
xml:lang attribute on the context node, or, if the context
node has no xml:lang attribute, by the value of the
xml:lang attribute on the nearest ancestor of the context
node that has an xml:lang attribute. If there is no such
 attribute, then lang N)rm   ÚxmlXPathLangFunctionrL   r  s     r   ÚxpathLangFunctionÚ$xpathParserContext.xpathLangFunction…  s   € ô 	×'Ò'¨¯©°Õ7r   c                 óF   • [         R                  " U R                  U5        g)z{Implement the last() XPath function number last() The last
function returns the number of nodes in the context node
 list. N)rm   ÚxmlXPathLastFunctionrL   r  s     r   ÚxpathLastFunctionÚ$xpathParserContext.xpathLastFunction“  s   € ô 	×'Ò'¨¯©°Õ7r   c                 óF   • [         R                  " U R                  U5        g)an  Implement the local-name() XPath function string
local-name(node-set?) The local-name function returns a
string containing the local part of the name of the node in
the argument node-set that is first in document order. If
the node-set is empty or the first node has no name, an
empty string is returned. If the argument is omitted it
 defaults to the context node. N)rm   ÚxmlXPathLocalNameFunctionrL   r  s     r   ÚxpathLocalNameFunctionÚ)xpathParserContext.xpathLocalNameFunction™  s   € ô 	×,Ò,¨T¯W©W°eÕ<r   c                 óD   • [         R                  " U R                  5        g)z›Implement the mod operation on XPath objects: @arg1 / @arg2
The numeric operators convert their operands to numbers as
 if by calling the number function. N)rm   ÚxmlXPathModValuesrL   r,   s    r   ÚxpathModValuesÚ!xpathParserContext.xpathModValues£  r  r   c                 óD   • [         R                  " U R                  5        g)z’Implement the multiply operation on XPath objects: The
numeric operators convert their operands to numbers as if
 by calling the number function. N)rm   ÚxmlXPathMultValuesrL   r,   s    r   ÚxpathMultValuesÚ"xpathParserContext.xpathMultValues©  s   € ô 	×%Ò% d§g¡gÕ.r   c                 óF   • [         R                  " U R                  U5        g)a¬  Implement the namespace-uri() XPath function string
namespace-uri(node-set?) The namespace-uri function returns
a string containing the namespace URI of the expanded name
of the node in the argument node-set that is first in
document order. If the node-set is empty, the first node
has no name, or the expanded name has no namespace URI, an
empty string is returned. If the argument is omitted it
 defaults to the context node. N)rm   ÚxmlXPathNamespaceURIFunctionrL   r  s     r   ÚxpathNamespaceURIFunctionÚ,xpathParserContext.xpathNamespaceURIFunction¯  s   € ô 	×/Ò/°·±¸Õ?r   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ rr  rs  ©r'   r  rø  r_   rþ  s        r   rv  Ú$xpathParserContext.xpathNextAncestorº  sK   € ð ‰; ™Ø—v‘vˆfÜ×-Ò-¨d¯g©g°vÓ>ˆØ‰;œZÐ(GÓHÐHÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ ry  rz  r_  s        r   r|  Ú*xpathParserContext.xpathNextAncestorOrSelfÉ  sK   € ð ‰; ™Ø—v‘vˆfÜ×3Ò3°D·G±G¸VÓDˆØ‰;œZÐ(MÓNÐNÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ r  r€  r_  s        r   r‚  Ú%xpathParserContext.xpathNextAttribute×  sK   € ð ‰; ™Ø—v‘vˆfÜ×.Ò.¨t¯w©w¸Ó?ˆØ‰;œZÐ(HÓIÐIÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ r…  r†  r_  s        r   rˆ  Ú!xpathParserContext.xpathNextChildá  sK   € ð ‰; ™Ø—v‘vˆfÜ×*Ò*¨4¯7©7°FÓ;ˆØ‰;œZÐ(DÓEÐEÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ r‹  rŒ  r_  s        r   rŽ  Ú&xpathParserContext.xpathNextDescendantë  sK   € ð
 ‰; ™Ø—v‘vˆfÜ×/Ò/°·±¸Ó@ˆØ‰;œZÐ(IÓJÐJÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ r‘  r’  r_  s        r   r”  Ú,xpathParserContext.xpathNextDescendantOrSelf÷  sK   € ð ‰; ™Ø—v‘vˆfÜ×5Ò5°d·g±g¸vÓFˆØ‰;œZÐ(OÓPÐPÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ r—  r˜  r_  s        r   rš  Ú%xpathParserContext.xpathNextFollowing  óK   € ð ‰; ™Ø—v‘vˆfÜ×.Ò.¨t¯w©w¸Ó?ˆØ‰;œZÐ(HÓIÐIÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ rž  rŸ  r_  s        r   r¡  Ú,xpathParserContext.xpathNextFollowingSibling  sK   € ð ‰; ™Ø—v‘vˆfÜ×5Ò5°d·g±g¸vÓFˆØ‰;œZÐ(OÓPÐPÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ r¤  r¥  r_  s        r   r§  Ú%xpathParserContext.xpathNextNamespace  rm  r   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ rª  r«  r_  s        r   r­  Ú"xpathParserContext.xpathNextParent,  sK   € ð ‰; ™Ø—v‘vˆfÜ×+Ò+¨D¯G©G°VÓ<ˆØ‰;œZÐ(EÓFÐFÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ r°  r±  r_  s        r   r³  Ú%xpathParserContext.xpathNextPreceding7  rm  r   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ r¶  r·  r_  s        r   r¹  Ú,xpathParserContext.xpathNextPrecedingSiblingE  sK   € ð ‰; ™Ø—v‘vˆfÜ×5Ò5°d·g±g¸vÓFˆØ‰;œZÐ(OÓPÐPÜ˜SÑ!ˆØˆr   c                 óš   • Uc  SnOUR                   n[        R                  " U R                   U5      nUc  [        S5      e[	        US9nU$ r¼  r½  r_  s        r   r¿  Ú xpathParserContext.xpathNextSelfR  sK   € ð ‰; ™Ø—v‘vˆfÜ×)Ò)¨$¯'©'°6Ó:ˆØ‰;œZÐ(CÓDÐDÜ˜SÑ!ˆØˆr   c                 óF   • [         R                  " U R                  U5        g)aÞ  Implement the normalize-space() XPath function string
normalize-space(string?) The normalize-space function
returns the argument string with white space normalized by
stripping leading and trailing whitespace and replacing
sequences of whitespace characters by a single space.
Whitespace characters are the same allowed by the S
production in XML. If the argument is omitted, it defaults
to the context node converted to a string, in other words
 the value of the context node. N)rm   ÚxmlXPathNormalizeFunctionrL   r  s     r   ÚxpathNormalizeFunctionÚ)xpathParserContext.xpathNormalizeFunction\  s   € ô 	×,Ò,¨T¯W©W°eÕ<r   c                 óF   • [         R                  " U R                  5      nU$ r*  )rm   ÚxmlXPathNotEqualValuesrL   rñ   s     r   ÚxpathNotEqualValuesÚ&xpathParserContext.xpathNotEqualValuesh  r[  r   c                 óF   • [         R                  " U R                  U5        g)z†Implement the not() XPath function boolean not(boolean) The
not function returns true if its argument is false, and
 false otherwise. N)rm   ÚxmlXPathNotFunctionrL   r  s     r   ÚxpathNotFunctionÚ#xpathParserContext.xpathNotFunctionn  ó   € ô 	×&Ò& t§w¡w°Õ6r   c                 óF   • [         R                  " U R                  U5        g)z=Implement the number() XPath function number number(object?) N)rm   ÚxmlXPathNumberFunctionrL   r  s     r   ÚxpathNumberFunctionÚ&xpathParserContext.xpathNumberFunctiont  s   € ä×)Ò)¨$¯'©'°5Õ9r   c                 óF   • [         R                  " U R                  5      nU$ )z¯parse an XML namespace non qualified name.  [NS 3] NCName
::= (Letter | '_') (NCNameChar)*  [NS 4] NCNameChar ::=
 Letter | Digit | '.' | '-' | '_' | CombiningChar | Extender )rm   ÚxmlXPathParseNCNamerL   rñ   s     r   ÚxpathParseNCNameÚ#xpathParserContext.xpathParseNCNamex  s   € ô ×,Ò,¨T¯W©WÓ5ˆØˆ
r   c                 óF   • [         R                  " U R                  5      nU$ )z–parse an XML name  [4] NameChar ::= Letter | Digit | '.' |
'-' | '_' | ':' | CombiningChar | Extender  [5] Name ::=
 (Letter | '_' | ':') (NameChar)* )rm   ÚxmlXPathParseNamerL   rñ   s     r   ÚxpathParseNameÚ!xpathParserContext.xpathParseName  r#  r   c                 óF   • [         R                  " U R                  5      nU$ )zdPops a boolean from the stack, handling conversion if
needed. Check error with #xmlXPathCheckError. )rm   ÚxmlXPathPopBooleanrL   rñ   s     r   ÚxpathPopBooleanÚ"xpathParserContext.xpathPopBoolean†  r
  r   c                 óF   • [         R                  " U R                  5      nU$ )zcPops a number from the stack, handling conversion if
needed. Check error with #xmlXPathCheckError. )rm   ÚxmlXPathPopNumberrL   rñ   s     r   ÚxpathPopNumberÚ!xpathParserContext.xpathPopNumberŒ  r  r   c                 óF   • [         R                  " U R                  5      nU$ )zcPops a string from the stack, handling conversion if
needed. Check error with #xmlXPathCheckError. )rm   ÚxmlXPathPopStringrL   rñ   s     r   ÚxpathPopStringÚ!xpathParserContext.xpathPopString’  r  r   c                 óF   • [         R                  " U R                  U5        g)zßImplement the position() XPath function number position()
The position function returns the position of the context
node in the context node list. The first position is 1, and
 so the last position will be equal to last(). N)rm   ÚxmlXPathPositionFunctionrL   r  s     r   ÚxpathPositionFunctionÚ(xpathParserContext.xpathPositionFunction˜  r  r   c                 óD   • [         R                  " U R                  5        g)z3Initialize the context to the root of the document N)rm   ÚxmlXPathRootrL   r,   s    r   Ú	xpathRootÚxpathParserContext.xpathRootŸ  r>  r   c                 óF   • [         R                  " U R                  U5        g)z÷Implement the round() XPath function number round(number)
The round function returns the number that is closest to
the argument and that is an integer. If there are two such
numbers, then the one that is closest to positive infinity
 is returned. N)rm   ÚxmlXPathRoundFunctionrL   r  s     r   ÚxpathRoundFunctionÚ%xpathParserContext.xpathRoundFunction£  s   € ô 	×(Ò(¨¯©°%Õ8r   c                 óF   • [         R                  " U R                  U5        g)zØImplement the starts-with() XPath function boolean
starts-with(string, string) The starts-with function
returns true if the first argument string starts with the
 second argument string, and otherwise returns false. N)rm   ÚxmlXPathStartsWithFunctionrL   r  s     r   ÚxpathStartsWithFunctionÚ*xpathParserContext.xpathStartsWithFunction«  s   € ô
 	×-Ò-¨d¯g©g°uÕ=r   c                 óF   • [         R                  " U R                  U5        g)a  Implement the string() XPath function string
string(object?) The string function converts an object to a
string as follows: - A node-set is converted to a string by
returning the value of the node in the node-set that is
first in document order. If the node-set is empty, an empty
string is returned. - A number is converted to a string as
follows + NaN is converted to the string NaN + positive
zero is converted to the string 0 + negative zero is
converted to the string 0 + positive infinity is converted
to the string Infinity + negative infinity is converted to
the string -Infinity + if the number is an integer, the
number is represented in decimal form as a Number with no
decimal point and no leading zeros, preceded by a minus
sign (-) if the number is negative + otherwise, the number
is represented in decimal form as a Number including a
decimal point with at least one digit before the decimal
point and at least one digit after the decimal point,
preceded by a minus sign (-) if the number is negative;
there must be no leading zeros before the decimal point
apart possibly from the one required digit immediately
before the decimal point; beyond the one required digit
after the decimal point there must be as many, but only as
many, more digits as are needed to uniquely distinguish the
number from all other IEEE 754 numeric values. - The
boolean false value is converted to the string false. The
boolean true value is converted to the string true.  If the
argument is omitted, it defaults to a node-set with the
 context node as its only member. N)rm   ÚxmlXPathStringFunctionrL   r  s     r   ÚxpathStringFunctionÚ&xpathParserContext.xpathStringFunction²  s   € ô: 	×)Ò)¨$¯'©'°5Õ9r   c                 óF   • [         R                  " U R                  U5        g)a#  Implement the string-length() XPath function number
string-length(string?) The string-length returns the number
of characters in the string (see [3.6 Strings]). If the
argument is omitted, it defaults to the context node
converted to a string, in other words the value of the
 context node. N)rm   ÚxmlXPathStringLengthFunctionrL   r  s     r   ÚxpathStringLengthFunctionÚ,xpathParserContext.xpathStringLengthFunctionÑ  s   € ô 	×/Ò/°·±¸Õ?r   c                 óD   • [         R                  " U R                  5        g)z•Implement the subtraction operation on XPath objects: The
numeric operators convert their operands to numbers as if
 by calling the number function. N)rm   ÚxmlXPathSubValuesrL   r,   s    r   ÚxpathSubValuesÚ!xpathParserContext.xpathSubValuesÚ  r  r   c                 óF   • [         R                  " U R                  U5        g)aÛ  Implement the substring-after() XPath function string
substring-after(string, string) The substring-after
function returns the substring of the first argument string
that follows the first occurrence of the second argument
string in the first argument string, or the empty stringi
if the first argument string does not contain the second
argument string. For example,
substring-after("1999/04/01","/") returns 04/01, and
 substring-after("1999/04/01","19") returns 99/04/01. N)rm   ÚxmlXPathSubstringAfterFunctionrL   r  s     r   ÚxpathSubstringAfterFunctionÚ.xpathParserContext.xpathSubstringAfterFunctionà  s   € ô 	×1Ò1°$·'±'¸5ÕAr   c                 óF   • [         R                  " U R                  U5        g)a¥  Implement the substring-before() XPath function string
substring-before(string, string) The substring-before
function returns the substring of the first argument string
that precedes the first occurrence of the second argument
string in the first argument string, or the empty string if
the first argument string does not contain the second
argument string. For example,
 substring-before("1999/04/01","/") returns 1999. N)rm   ÚxmlXPathSubstringBeforeFunctionrL   r  s     r   ÚxpathSubstringBeforeFunctionÚ/xpathParserContext.xpathSubstringBeforeFunctionì  s   € ô 	×2Ò2°4·7±7¸EÕBr   c                 óF   • [         R                  " U R                  U5        g)a&  Implement the substring() XPath function string
substring(string, number, number?) The substring function
returns the substring of the first argument starting at the
position specified in the second argument with length
specified in the third argument. For example,
substring("12345",2,3) returns "234". If the third argument
is not specified, it returns the substring starting at the
position specified in the second argument and continuing to
the end of the string. For example, substring("12345",2)
returns "2345".  More precisely, each character in the
string (see [3.6 Strings]) is considered to have a numeric
position: the position of the first character is 1, the
position of the second character is 2 and so on. The
returned substring contains those characters for which the
position of the character is greater than or equal to the
second argument and, if the third argument is specified,
less than the sum of the second and third arguments; the
comparisons and addition used for the above follow the
standard IEEE 754 rules. Thus: - substring("12345", 1.5,
2.6) returns "234" - substring("12345", 0, 3) returns "12"
- substring("12345", 0 div 0, 3) returns "" -
substring("12345", 1, 0 div 0) returns "" -
substring("12345", -42, 1 div 0) returns "12345" -
 substring("12345", -1 div 0, 1 div 0) returns "" N)rm   ÚxmlXPathSubstringFunctionrL   r  s     r   ÚxpathSubstringFunctionÚ)xpathParserContext.xpathSubstringFunction÷  s   € ô2 	×,Ò,¨T¯W©W°eÕ<r   c                 óF   • [         R                  " U R                  U5        g)z�Implement the sum() XPath function number sum(node-set) The
sum function returns the sum of the values of the nodes in
 the argument node-set. N)rm   ÚxmlXPathSumFunctionrL   r  s     r   ÚxpathSumFunctionÚ#xpathParserContext.xpathSumFunction  r†  r   c                 óF   • [         R                  " U R                  U5        g)a­  Implement the translate() XPath function string
translate(string, string, string) The translate function
returns the first argument string with occurrences of
characters in the second argument string replaced by the
character at the corresponding position in the third
argument string. For example, translate("bar","abc","ABC")
returns the string BAr. If there is a character in the
second argument string with no character at a corresponding
position in the third argument string (because the second
argument string is longer than the third argument string),
then occurrences of that character in the first argument
string are removed. For example,
 translate("--aaa--","abc-","ABC") N)rm   ÚxmlXPathTranslateFunctionrL   r  s     r   ÚxpathTranslateFunctionÚ)xpathParserContext.xpathTranslateFunction  s   € ô 	×,Ò,¨T¯W©W°eÕ<r   c                 óF   • [         R                  " U R                  U5        g)z3Implement the true() XPath function boolean true() N)rm   ÚxmlXPathTrueFunctionrL   r  s     r   ÚxpathTrueFunctionÚ$xpathParserContext.xpathTrueFunction(  s   € ä×'Ò'¨¯©°Õ7r   c                 óD   • [         R                  " U R                  5        g)z’Implement the unary - operation on an XPath object The
numeric operators convert their operands to numbers as if
 by calling the number function. N)rm   ÚxmlXPathValueFlipSignrL   r,   s    r   ÚxpathValueFlipSignÚ%xpathParserContext.xpathValueFlipSign,  s   € ô 	×(Ò(¨¯©Õ1r   c                 óH   • [         R                  " U R                  XU5        g)zFormats an error message. N)rm   ÚxmlXPatherrorrL   )r'   r   rÅ  r5  s       r   Ú
xpatherrorÚxpathParserContext.xpatherror2  s   € ä× Ò  §¡¨$°bÕ9r   c                 óD   • [         R                  " U R                  5        g)z­[8]   Predicate ::=   '[' PredicateExpr ']' [9]  
PredicateExpr ::=   Expr  Evaluate a predicate as in
xmlXPathEvalPredicate() but for a Location Set instead of a
 node set N)rm   ÚxmlXPtrEvalRangePredicaterL   r,   s    r   ÚxpointerEvalRangePredicateÚ-xpathParserContext.xpointerEvalRangePredicate:  s   € ô
 	×,Ò,¨T¯W©WÕ5r   c                 óF   • [         R                  " U R                  U5        g)z˜Implement the range-to() XPointer function  Obsolete.
range-to is not a real function but a special type of
 location step which is handled in xpath.c. N)rm   ÚxmlXPtrRangeToFunctionrL   r  s     r   ÚxpointerRangeToFunctionÚ*xpathParserContext.xpointerRangeToFunctionA  r  r   rw   r#   )Cr   r   r	   r
   r(   rÿ  r  r
  r  r  r  r  r"  r'  r,  r0  r4  r8  r<  r@  rD  rH  rL  rP  rT  rX  r\  rv  r|  r‚  rˆ  rŽ  r”  rš  r¡  r§  r­  r³  r¹  r¿  r|  r€  r„  r‰  r�  r‘  r•  r™  r�  r¡  r¥  r©  r­  r±  rµ  r¹  r½  rÁ  rÅ  rÉ  rÍ  rÑ  rÕ  rÙ  rÝ  rá  r   r   r   r   rÐ  rÐ    s<  † ôò
ò.ò;ò;òò$:ò<ò9ò.òò/ò-ò
9ò9ò6ò6ò 8ò8ò=ò.ò/ò	@òòòòò
òòò	òò	òòòò
=òò7ò:òòòòòò<ò)ò9ò>ò:ò>@ò.ò
Bò	Cò=ò67ò=ò 8ò2ò:ò6õ:r   rÐ  é   r   é   rˆ  é	   é
   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   é   r!   é   é    é!   é"   é#   r4   é%   é&   é'   é(   é)   r;   é+   é,   é-   é.   rQ   é@   é€   é/   rB   é1   é2   é3   é4   é5   rI   é7   é8   é9   é:   é;   é<   é=   é>   é?   éA   éB   éC   éD   éE   éF   éG   éH   éI   éJ   éK   éL   éM   éN   éO   éP   éQ   éR   éS   éT   éU   éV   éW   éX   éY   éZ   é[   é\   é]   é^   é_   é`   rk   éb   éc   éd   ée   éf   ég   éh   éi   éj   ék   él   ém   én   éo   éÈ   éÉ   éÊ   éË   éÌ   éÍ   iô  iõ  iö  i÷  iø  iù  iú  iû  iü  iý  iþ  iÿ  i   i  i  i  i  i  i  i  i  i	  i
  i  i  i  i  rh  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i   i!  iè  ié  iê  ië  iì  ií  iî  iï  ið  iñ  iò  ió  iô  iõ  iö  i÷  iø  iù  iú  iû  iü  iý  iþ  iÿ  i   i  i  i  i  i  i  i  i  i	  i
  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i   i!  i"  i#  i$  i%  i&  i'  i(  i)  i*  i+  i,  i-  i.  i/  i0  i1  i2  i3  i4  i5  i6  i7  i8  i9  i:  i;  i<  i=  i>  i?  i@  iA  iB  iC  iD  iE  iF  iG  iH  iI  iJ  iK  iL  iM  iN  iO  iP  iQ  iR  iS  iT  iU  iV  iW  iX  iY  iZ  i[  i\  i]  i^  i_  i`  ia  ib  i°  i±  i²  i³  i´  iµ  i¶  i·  i¸  i¹  iº  i»  i¼  i½  i¾  i¿  iÀ  iÁ  iÂ  iÃ  iÄ  iÅ  i  i  i  i  ix  iy  iz  i{  iª  iÜ  iÝ  iÞ  iß  ià  iá  iâ  iã  iä  iå  iæ  iç  iè  ié  iê  ië  iì  ií  iî  iï  ið  iñ  iò  ió  iô  iõ  iö  i÷  iø  iù  iú  iû  iü  iý  iþ  iÿ  i   i  i  i  i  i  i  i  i  i	  i
  i  i  i  i  i  i  i  i  i  i  i@  iA  iB  iC  iD  iE  iF  iG  iH  iI  iJ  iK  iL  iM  iN  iO  iP  iQ  iR  ir  is  it  iu  iv  i¤  i¥  i¦  i§  i¨  i©  iª  i«  i¬  i­  i®  i¯  i°  i±  i²  i³  i´  iµ  i¶  i·  i¸  i¹  iº  i»  i¼  i½  i¾  i¿  iÀ  iÁ  iÂ  iÃ  iÄ  iÅ  iÆ  iÇ  iÈ  iÉ  iÊ  iË  iÌ  iÍ  iÎ  iÏ  iÐ  iÑ  iÒ  iÓ  iÔ  iÕ  iÖ  i×  iØ  iÙ  iÚ  iÛ  iÜ  iÝ  iÞ  iß  ià  iá  iâ  iã  iä  iå  iæ  iç  iè  ié  iê  ië  iì  ií  iî  iï  ið  iñ  iò  ió  iô  iõ  iö  i÷  iø  iù  iú  iû  iü  iý  iþ  iÿ  i   i  i  i  i  i  i  i  i  i	  i
  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i  i   i!  i"  i#  i$  i%  i&  i'  i(  i)  i*  i+  i,  i-  i.  i/  i0  i1  i2  i3  i4  i5  i6  i7  i8  i9  i:  i;  i<  i=  i>  i?  i@  iA  iB  iC  iD  iE  iF  iG  iH  iI  iJ  iK  iL  iM  iN  iO  iP  iQ  iR  iS  iT  iU  iV  iW  il  im  in  io  iž  iŸ  i   i¡  i¢  i£  iÐ  iÑ  iÒ  iÓ  iä  iå  iæ  i¸  i¹  iº  i»  i¼  i½  i¾  i¿  iÀ  iÁ  iÂ  iÃ  iÄ  iÅ  iÆ  iÇ  iÈ  iÉ  iÊ  iË  iÌ  iÍ  rÃ  iÏ  iÐ  iÑ  iÒ  iÓ  iÔ  iÕ  iÖ  i×  iØ  iÙ  iÚ  iÛ  iÜ  iÝ  iÞ  iß  ià  iá  iâ  iã  iä  iå  iæ  iç  iè  ié  iê  ië  iì  ií  iî  iï  ið  iñ  iò  ió  iô  iõ  iö  i÷  iø  iù  iú  iû  iü  iý  iþ  iÿ  i   i  i  i  i  i  i  i  i  i	  i
  i  i  i  i  i  i  i  i  i  i   i¡  i$  i%  iˆ  i‰  iŠ  i‹  iŒ  i�  iŽ  i�  i�  i‘  i’  i“  i”  i•  i–  i—  i˜  i™  iš  i›  iœ  i�  iž  iŸ  i   i¡  i¢  i£  i¤  i¥  i¦  i§  i¨  i©  iª  i«  i¬  i­  ip  iq  ir  is  it  iX  iŸ† é   i   i    i   i    i   i @  i €  i   i   i   i   i  @ (…  rm   Útypesr   r[   r   r   r   r    r3   r:   rA   rH   rj   r{   r‹   rá   rV  rZ  rù   r—  rž  ÚPARSER_LOADDTDÚPARSER_DEFAULTATTRSÚPARSER_VALIDATEÚPARSER_SUBST_ENTITIESÚ PARSER_SEVERITY_VALIDITY_WARNINGÚPARSER_SEVERITY_VALIDITY_ERRORÚPARSER_SEVERITY_WARNINGÚPARSER_SEVERITY_ERRORr¥  r¨  rÁ  rÑ  rØ  rã  rå  rù  rý  r  r  r	  r  r  r  r  r  r"  r'  r,  r/  r2  r5  r9  r=  r@  rC  rF  rK  rN  rS  rW  r\  rb  rh  rl  rp  ru  r{  r  r‚  r‡  rŠ  rŽ  r‘  r•  r˜  r�  r¡  r¥  r¨  r«  r®  r±  r´  r¸  r¼  rÀ  rÃ  rÇ  rË  rÎ  rÑ  rÕ  rÙ  rÜ  rß  râ  rå  rè  rë  rð  ró  r÷  rû  rÿ  r  r  r	  r  r  r  r  r  r  r#  r'  r*  r.  r1  r5  r8  r;  r>  rA  rE  rH  rK  rN  rQ  rT  rW  rZ  r]  r`  rc  rf  ri  rl  rp  rt  rw  r|  r€  rƒ  r†  rˆ  rŠ  rŽ  r�  r”  r–  r˜  rž  r¢  r¦  r«  r¯  r²  r´  r¶  r¹  r¼  r¾  rÂ  rÅ  rÈ  rÌ  rÐ  rÖ  rÙ  rÝ  rá  rä  rç  rê  rí  rñ  rö  rù  rü  rÿ  r  r  r	  r  r  r  r  r  r  r#  r&  r+  r.  r1  r4  r7  r:  r=  r@  rC  rF  rI  rL  rP  rS  rW  rZ  r]  ra  rd  rh  rl  ro  rr  ru  rz  r~  r�  r„  r‡  rŠ  r�  r’  r—  rš  rž  r¢  r¦  r©  r­  r°  rµ  r¹  r½  rÀ  rÄ  rÇ  rË  rÎ  rÒ  r×  rÚ  rÝ  rà  rä  rç  rê  rî  rò  rõ  rù  rý  r   r  r  r
  r  r  r  r  r  r  r!  r$  r'  r*  r-  r0  r3  r6  r9  r<  r?  rB  rE  rH  rK  rN  rQ  rT  rW  rZ  r]  r`  rc  rf  ri  rl  ro  rr  ru  rx  r{  r~  r�  r„  rˆ  r‹  r�  r’  r•  r˜  r›  rž  r¡  r¤  r§  rª  r­  r°  r³  r¶  r¹  r¼  r¿  rÂ  rÅ  rÉ  rÌ  rÏ  rÒ  rÕ  rØ  rÛ  rÞ  rá  rä  rç  rê  rí  rð  ró  rö  rù  rü  rÿ  r  r  r  r  r  r  r  r  r  r  r!  r$  r'  r*  r-  r1  r4  r7  r:  r>  rA  rD  rG  rK  rN  rQ  rT  rW  rZ  r]  r`  rc  rf  ri  rl  ro  rr  ru  rx  r|  r  r‚  r†  r‰  rŒ  r�  r’  r•  r˜  r›  rž  r¡  r¤  r§  rª  r­  r°  r³  r¶  r¹  r¼  r¿  rÁ  r�  r$  r
  r  r‘  r…  r“  r�  r’  r`  rP  r¥  r   rx  rË  rg  r  r}  r°  rÆ  rß  rg  rþ  r*  rÉ  rÐ  ÚXLINK_SHOW_NONEÚXLINK_SHOW_NEWÚXLINK_SHOW_EMBEDÚXLINK_SHOW_REPLACEÚXML_RELAXNGP_NONEÚXML_RELAXNGP_FREE_DOCÚXML_RELAXNGP_CRNGÚXML_BUFFER_ALLOC_DOUBLEITÚXML_BUFFER_ALLOC_EXACTÚXML_BUFFER_ALLOC_IMMUTABLEÚXML_BUFFER_ALLOC_IOÚXML_BUFFER_ALLOC_HYBRIDÚXML_BUFFER_ALLOC_BOUNDEDÚ$XML_PARSER_SEVERITY_VALIDITY_WARNINGÚ"XML_PARSER_SEVERITY_VALIDITY_ERRORÚXML_PARSER_SEVERITY_WARNINGÚXML_PARSER_SEVERITY_ERRORÚXML_ATTRIBUTE_NONEÚXML_ATTRIBUTE_REQUIREDÚXML_ATTRIBUTE_IMPLIEDÚXML_ATTRIBUTE_FIXEDÚXML_SCHEMAS_UNKNOWNÚXML_SCHEMAS_STRINGÚXML_SCHEMAS_NORMSTRINGÚXML_SCHEMAS_DECIMALÚXML_SCHEMAS_TIMEÚXML_SCHEMAS_GDAYÚXML_SCHEMAS_GMONTHÚXML_SCHEMAS_GMONTHDAYÚXML_SCHEMAS_GYEARÚXML_SCHEMAS_GYEARMONTHÚXML_SCHEMAS_DATEÚXML_SCHEMAS_DATETIMEÚXML_SCHEMAS_DURATIONÚXML_SCHEMAS_FLOATÚXML_SCHEMAS_DOUBLEÚXML_SCHEMAS_BOOLEANÚXML_SCHEMAS_TOKENÚXML_SCHEMAS_LANGUAGEÚXML_SCHEMAS_NMTOKENÚXML_SCHEMAS_NMTOKENSÚXML_SCHEMAS_NAMEÚXML_SCHEMAS_QNAMEÚXML_SCHEMAS_NCNAMEÚXML_SCHEMAS_IDÚXML_SCHEMAS_IDREFÚXML_SCHEMAS_IDREFSÚXML_SCHEMAS_ENTITYÚXML_SCHEMAS_ENTITIESÚXML_SCHEMAS_NOTATIONÚXML_SCHEMAS_ANYURIÚXML_SCHEMAS_INTEGERÚXML_SCHEMAS_NPINTEGERÚXML_SCHEMAS_NINTEGERÚXML_SCHEMAS_NNINTEGERÚXML_SCHEMAS_PINTEGERÚXML_SCHEMAS_INTÚXML_SCHEMAS_UINTÚXML_SCHEMAS_LONGÚXML_SCHEMAS_ULONGÚXML_SCHEMAS_SHORTÚXML_SCHEMAS_USHORTÚXML_SCHEMAS_BYTEÚXML_SCHEMAS_UBYTEÚXML_SCHEMAS_HEXBINARYÚXML_SCHEMAS_BASE64BINARYÚXML_SCHEMAS_ANYTYPEÚXML_SCHEMAS_ANYSIMPLETYPEÚXML_PARSER_EOFÚXML_PARSER_STARTÚXML_PARSER_MISCÚXML_PARSER_PIÚXML_PARSER_DTDÚXML_PARSER_PROLOGÚXML_PARSER_COMMENTÚXML_PARSER_START_TAGÚXML_PARSER_CONTENTÚXML_PARSER_CDATA_SECTIONÚXML_PARSER_END_TAGÚXML_PARSER_ENTITY_DECLÚXML_PARSER_ENTITY_VALUEÚXML_PARSER_ATTRIBUTE_VALUEÚXML_PARSER_SYSTEM_LITERALÚXML_PARSER_EPILOGÚXML_PARSER_IGNOREÚXML_PARSER_PUBLIC_LITERALÚXML_INTERNAL_GENERAL_ENTITYÚ"XML_EXTERNAL_GENERAL_PARSED_ENTITYÚ$XML_EXTERNAL_GENERAL_UNPARSED_ENTITYÚXML_INTERNAL_PARAMETER_ENTITYÚXML_EXTERNAL_PARAMETER_ENTITYÚXML_INTERNAL_PREDEFINED_ENTITYÚXML_SAVE_FORMATÚXML_SAVE_NO_DECLÚXML_SAVE_NO_EMPTYÚXML_SAVE_NO_XHTMLÚXML_SAVE_XHTMLÚXML_SAVE_AS_XMLÚXML_SAVE_AS_HTMLÚXML_SAVE_WSNONSIGÚXML_PATTERN_DEFAULTÚXML_PATTERN_XPATHÚXML_PATTERN_XSSELÚXML_PATTERN_XSFIELDÚ
XML_ERR_OKÚXML_ERR_INTERNAL_ERRORÚXML_ERR_NO_MEMORYÚXML_ERR_DOCUMENT_STARTÚXML_ERR_DOCUMENT_EMPTYÚXML_ERR_DOCUMENT_ENDÚXML_ERR_INVALID_HEX_CHARREFÚXML_ERR_INVALID_DEC_CHARREFÚXML_ERR_INVALID_CHARREFÚXML_ERR_INVALID_CHARÚXML_ERR_CHARREF_AT_EOFÚXML_ERR_CHARREF_IN_PROLOGÚXML_ERR_CHARREF_IN_EPILOGÚXML_ERR_CHARREF_IN_DTDÚXML_ERR_ENTITYREF_AT_EOFÚXML_ERR_ENTITYREF_IN_PROLOGÚXML_ERR_ENTITYREF_IN_EPILOGÚXML_ERR_ENTITYREF_IN_DTDÚXML_ERR_PEREF_AT_EOFÚXML_ERR_PEREF_IN_PROLOGÚXML_ERR_PEREF_IN_EPILOGÚXML_ERR_PEREF_IN_INT_SUBSETÚXML_ERR_ENTITYREF_NO_NAMEÚ!XML_ERR_ENTITYREF_SEMICOL_MISSINGÚXML_ERR_PEREF_NO_NAMEÚXML_ERR_PEREF_SEMICOL_MISSINGÚXML_ERR_UNDECLARED_ENTITYÚXML_WAR_UNDECLARED_ENTITYÚXML_ERR_UNPARSED_ENTITYÚXML_ERR_ENTITY_IS_EXTERNALÚXML_ERR_ENTITY_IS_PARAMETERÚXML_ERR_UNKNOWN_ENCODINGÚXML_ERR_UNSUPPORTED_ENCODINGÚXML_ERR_STRING_NOT_STARTEDÚXML_ERR_STRING_NOT_CLOSEDÚXML_ERR_NS_DECL_ERRORÚXML_ERR_ENTITY_NOT_STARTEDÚXML_ERR_ENTITY_NOT_FINISHEDÚXML_ERR_LT_IN_ATTRIBUTEÚXML_ERR_ATTRIBUTE_NOT_STARTEDÚXML_ERR_ATTRIBUTE_NOT_FINISHEDÚXML_ERR_ATTRIBUTE_WITHOUT_VALUEÚXML_ERR_ATTRIBUTE_REDEFINEDÚXML_ERR_LITERAL_NOT_STARTEDÚXML_ERR_LITERAL_NOT_FINISHEDÚXML_ERR_COMMENT_NOT_FINISHEDÚXML_ERR_PI_NOT_STARTEDÚXML_ERR_PI_NOT_FINISHEDÚXML_ERR_NOTATION_NOT_STARTEDÚXML_ERR_NOTATION_NOT_FINISHEDÚXML_ERR_ATTLIST_NOT_STARTEDÚXML_ERR_ATTLIST_NOT_FINISHEDÚXML_ERR_MIXED_NOT_STARTEDÚXML_ERR_MIXED_NOT_FINISHEDÚXML_ERR_ELEMCONTENT_NOT_STARTEDÚ XML_ERR_ELEMCONTENT_NOT_FINISHEDÚXML_ERR_XMLDECL_NOT_STARTEDÚXML_ERR_XMLDECL_NOT_FINISHEDÚXML_ERR_CONDSEC_NOT_STARTEDÚXML_ERR_CONDSEC_NOT_FINISHEDÚXML_ERR_EXT_SUBSET_NOT_FINISHEDÚXML_ERR_DOCTYPE_NOT_FINISHEDÚXML_ERR_MISPLACED_CDATA_ENDÚXML_ERR_CDATA_NOT_FINISHEDÚXML_ERR_RESERVED_XML_NAMEÚXML_ERR_SPACE_REQUIREDÚXML_ERR_SEPARATOR_REQUIREDÚXML_ERR_NMTOKEN_REQUIREDÚXML_ERR_NAME_REQUIREDÚXML_ERR_PCDATA_REQUIREDÚXML_ERR_URI_REQUIREDÚXML_ERR_PUBID_REQUIREDÚXML_ERR_LT_REQUIREDÚXML_ERR_GT_REQUIREDÚXML_ERR_LTSLASH_REQUIREDÚXML_ERR_EQUAL_REQUIREDÚXML_ERR_TAG_NAME_MISMATCHÚXML_ERR_TAG_NOT_FINISHEDÚXML_ERR_STANDALONE_VALUEÚXML_ERR_ENCODING_NAMEÚXML_ERR_HYPHEN_IN_COMMENTÚXML_ERR_INVALID_ENCODINGÚXML_ERR_EXT_ENTITY_STANDALONEÚXML_ERR_CONDSEC_INVALIDÚXML_ERR_VALUE_REQUIREDÚXML_ERR_NOT_WELL_BALANCEDÚXML_ERR_EXTRA_CONTENTÚXML_ERR_ENTITY_CHAR_ERRORÚXML_ERR_ENTITY_PE_INTERNALÚXML_ERR_ENTITY_LOOPÚXML_ERR_ENTITY_BOUNDARYÚXML_ERR_INVALID_URIÚXML_ERR_URI_FRAGMENTÚXML_WAR_CATALOG_PIÚXML_ERR_NO_DTDÚXML_ERR_CONDSEC_INVALID_KEYWORDÚXML_ERR_VERSION_MISSINGÚXML_WAR_UNKNOWN_VERSIONÚXML_WAR_LANG_VALUEÚXML_WAR_NS_URIÚXML_WAR_NS_URI_RELATIVEÚXML_ERR_MISSING_ENCODINGÚXML_WAR_SPACE_VALUEÚXML_ERR_NOT_STANDALONEÚXML_ERR_ENTITY_PROCESSINGÚXML_ERR_NOTATION_PROCESSINGÚXML_WAR_NS_COLUMNÚXML_WAR_ENTITY_REDEFINEDÚXML_ERR_UNKNOWN_VERSIONÚXML_ERR_VERSION_MISMATCHÚXML_ERR_NAME_TOO_LONGÚXML_ERR_USER_STOPÚXML_NS_ERR_XML_NAMESPACEÚXML_NS_ERR_UNDEFINED_NAMESPACEÚXML_NS_ERR_QNAMEÚXML_NS_ERR_ATTRIBUTE_REDEFINEDÚXML_NS_ERR_EMPTYÚXML_NS_ERR_COLONÚXML_DTD_ATTRIBUTE_DEFAULTÚXML_DTD_ATTRIBUTE_REDEFINEDÚXML_DTD_ATTRIBUTE_VALUEÚXML_DTD_CONTENT_ERRORÚXML_DTD_CONTENT_MODELÚXML_DTD_CONTENT_NOT_DETERMINISTÚXML_DTD_DIFFERENT_PREFIXÚXML_DTD_ELEM_DEFAULT_NAMESPACEÚXML_DTD_ELEM_NAMESPACEÚXML_DTD_ELEM_REDEFINEDÚXML_DTD_EMPTY_NOTATIONÚXML_DTD_ENTITY_TYPEÚXML_DTD_ID_FIXEDÚXML_DTD_ID_REDEFINEDÚXML_DTD_ID_SUBSETÚXML_DTD_INVALID_CHILDÚXML_DTD_INVALID_DEFAULTÚXML_DTD_LOAD_ERRORÚXML_DTD_MISSING_ATTRIBUTEÚXML_DTD_MIXED_CORRUPTÚXML_DTD_MULTIPLE_IDÚXML_DTD_NO_DOCÚXML_DTD_NO_DTDÚXML_DTD_NO_ELEM_NAMEÚXML_DTD_NO_PREFIXÚXML_DTD_NO_ROOTÚXML_DTD_NOTATION_REDEFINEDÚXML_DTD_NOTATION_VALUEÚXML_DTD_NOT_EMPTYÚXML_DTD_NOT_PCDATAÚXML_DTD_NOT_STANDALONEÚXML_DTD_ROOT_NAMEÚXML_DTD_STANDALONE_WHITE_SPACEÚXML_DTD_UNKNOWN_ATTRIBUTEÚXML_DTD_UNKNOWN_ELEMÚXML_DTD_UNKNOWN_ENTITYÚXML_DTD_UNKNOWN_IDÚXML_DTD_UNKNOWN_NOTATIONÚXML_DTD_STANDALONE_DEFAULTEDÚXML_DTD_XMLID_VALUEÚXML_DTD_XMLID_TYPEÚXML_DTD_DUP_TOKENÚXML_HTML_STRUCURE_ERRORÚXML_HTML_UNKNOWN_TAGÚXML_RNGP_ANYNAME_ATTR_ANCESTORÚXML_RNGP_ATTR_CONFLICTÚXML_RNGP_ATTRIBUTE_CHILDRENÚXML_RNGP_ATTRIBUTE_CONTENTÚXML_RNGP_ATTRIBUTE_EMPTYÚXML_RNGP_ATTRIBUTE_NOOPÚXML_RNGP_CHOICE_CONTENTÚXML_RNGP_CHOICE_EMPTYÚXML_RNGP_CREATE_FAILUREÚXML_RNGP_DATA_CONTENTÚ"XML_RNGP_DEF_CHOICE_AND_INTERLEAVEÚXML_RNGP_DEFINE_CREATE_FAILEDÚXML_RNGP_DEFINE_EMPTYÚXML_RNGP_DEFINE_MISSINGÚXML_RNGP_DEFINE_NAME_MISSINGÚXML_RNGP_ELEM_CONTENT_EMPTYÚXML_RNGP_ELEM_CONTENT_ERRORÚXML_RNGP_ELEMENT_EMPTYÚXML_RNGP_ELEMENT_CONTENTÚXML_RNGP_ELEMENT_NAMEÚXML_RNGP_ELEMENT_NO_CONTENTÚXML_RNGP_ELEM_TEXT_CONFLICTÚXML_RNGP_EMPTYÚXML_RNGP_EMPTY_CONSTRUCTÚXML_RNGP_EMPTY_CONTENTÚXML_RNGP_EMPTY_NOT_EMPTYÚXML_RNGP_ERROR_TYPE_LIBÚXML_RNGP_EXCEPT_EMPTYÚXML_RNGP_EXCEPT_MISSINGÚXML_RNGP_EXCEPT_MULTIPLEÚXML_RNGP_EXCEPT_NO_CONTENTÚXML_RNGP_EXTERNALREF_EMTPYÚXML_RNGP_EXTERNAL_REF_FAILUREÚXML_RNGP_EXTERNALREF_RECURSEÚXML_RNGP_FORBIDDEN_ATTRIBUTEÚXML_RNGP_FOREIGN_ELEMENTÚXML_RNGP_GRAMMAR_CONTENTÚXML_RNGP_GRAMMAR_EMPTYÚXML_RNGP_GRAMMAR_MISSINGÚXML_RNGP_GRAMMAR_NO_STARTÚXML_RNGP_GROUP_ATTR_CONFLICTÚXML_RNGP_HREF_ERRORÚXML_RNGP_INCLUDE_EMPTYÚXML_RNGP_INCLUDE_FAILUREÚXML_RNGP_INCLUDE_RECURSEÚXML_RNGP_INTERLEAVE_ADDÚ!XML_RNGP_INTERLEAVE_CREATE_FAILEDÚXML_RNGP_INTERLEAVE_EMPTYÚXML_RNGP_INTERLEAVE_NO_CONTENTÚXML_RNGP_INVALID_DEFINE_NAMEÚXML_RNGP_INVALID_URIÚXML_RNGP_INVALID_VALUEÚXML_RNGP_MISSING_HREFÚXML_RNGP_NAME_MISSINGÚXML_RNGP_NEED_COMBINEÚXML_RNGP_NOTALLOWED_NOT_EMPTYÚXML_RNGP_NSNAME_ATTR_ANCESTORÚXML_RNGP_NSNAME_NO_NSÚXML_RNGP_PARAM_FORBIDDENÚXML_RNGP_PARAM_NAME_MISSINGÚ XML_RNGP_PARENTREF_CREATE_FAILEDÚXML_RNGP_PARENTREF_NAME_INVALIDÚXML_RNGP_PARENTREF_NO_NAMEÚXML_RNGP_PARENTREF_NO_PARENTÚXML_RNGP_PARENTREF_NOT_EMPTYÚXML_RNGP_PARSE_ERRORÚ#XML_RNGP_PAT_ANYNAME_EXCEPT_ANYNAMEÚXML_RNGP_PAT_ATTR_ATTRÚXML_RNGP_PAT_ATTR_ELEMÚXML_RNGP_PAT_DATA_EXCEPT_ATTRÚXML_RNGP_PAT_DATA_EXCEPT_ELEMÚXML_RNGP_PAT_DATA_EXCEPT_EMPTYÚXML_RNGP_PAT_DATA_EXCEPT_GROUPÚ#XML_RNGP_PAT_DATA_EXCEPT_INTERLEAVEÚXML_RNGP_PAT_DATA_EXCEPT_LISTÚ XML_RNGP_PAT_DATA_EXCEPT_ONEMOREÚXML_RNGP_PAT_DATA_EXCEPT_REFÚXML_RNGP_PAT_DATA_EXCEPT_TEXTÚXML_RNGP_PAT_LIST_ATTRÚXML_RNGP_PAT_LIST_ELEMÚXML_RNGP_PAT_LIST_INTERLEAVEÚXML_RNGP_PAT_LIST_LISTÚXML_RNGP_PAT_LIST_REFÚXML_RNGP_PAT_LIST_TEXTÚ"XML_RNGP_PAT_NSNAME_EXCEPT_ANYNAMEÚ!XML_RNGP_PAT_NSNAME_EXCEPT_NSNAMEÚXML_RNGP_PAT_ONEMORE_GROUP_ATTRÚ$XML_RNGP_PAT_ONEMORE_INTERLEAVE_ATTRÚXML_RNGP_PAT_START_ATTRÚXML_RNGP_PAT_START_DATAÚXML_RNGP_PAT_START_EMPTYÚXML_RNGP_PAT_START_GROUPÚXML_RNGP_PAT_START_INTERLEAVEÚXML_RNGP_PAT_START_LISTÚXML_RNGP_PAT_START_ONEMOREÚXML_RNGP_PAT_START_TEXTÚXML_RNGP_PAT_START_VALUEÚXML_RNGP_PREFIX_UNDEFINEDÚXML_RNGP_REF_CREATE_FAILEDÚXML_RNGP_REF_CYCLEÚXML_RNGP_REF_NAME_INVALIDÚXML_RNGP_REF_NO_DEFÚXML_RNGP_REF_NO_NAMEÚXML_RNGP_REF_NOT_EMPTYÚ$XML_RNGP_START_CHOICE_AND_INTERLEAVEÚXML_RNGP_START_CONTENTÚXML_RNGP_START_EMPTYÚXML_RNGP_START_MISSINGÚXML_RNGP_TEXT_EXPECTEDÚXML_RNGP_TEXT_HAS_CHILDÚXML_RNGP_TYPE_MISSINGÚXML_RNGP_TYPE_NOT_FOUNDÚXML_RNGP_TYPE_VALUEÚXML_RNGP_UNKNOWN_ATTRIBUTEÚXML_RNGP_UNKNOWN_COMBINEÚXML_RNGP_UNKNOWN_CONSTRUCTÚXML_RNGP_UNKNOWN_TYPE_LIBÚXML_RNGP_URI_FRAGMENTÚXML_RNGP_URI_NOT_ABSOLUTEÚXML_RNGP_VALUE_EMPTYÚXML_RNGP_VALUE_NO_CONTENTÚXML_RNGP_XMLNS_NAMEÚXML_RNGP_XML_NSÚXML_XPATH_EXPRESSION_OKÚXML_XPATH_NUMBER_ERRORÚ"XML_XPATH_UNFINISHED_LITERAL_ERRORÚXML_XPATH_START_LITERAL_ERRORÚXML_XPATH_VARIABLE_REF_ERRORÚXML_XPATH_UNDEF_VARIABLE_ERRORÚ!XML_XPATH_INVALID_PREDICATE_ERRORÚXML_XPATH_EXPR_ERRORÚXML_XPATH_UNCLOSED_ERRORÚXML_XPATH_UNKNOWN_FUNC_ERRORÚXML_XPATH_INVALID_OPERANDÚXML_XPATH_INVALID_TYPEÚXML_XPATH_INVALID_ARITYÚXML_XPATH_INVALID_CTXT_SIZEÚXML_XPATH_INVALID_CTXT_POSITIONÚXML_XPATH_MEMORY_ERRORÚXML_XPTR_SYNTAX_ERRORÚXML_XPTR_RESOURCE_ERRORÚXML_XPTR_SUB_RESOURCE_ERRORÚXML_XPATH_UNDEF_PREFIX_ERRORÚXML_XPATH_ENCODING_ERRORÚXML_XPATH_INVALID_CHAR_ERRORÚXML_TREE_INVALID_HEXÚXML_TREE_INVALID_DECÚXML_TREE_UNTERMINATED_ENTITYÚXML_TREE_NOT_UTF8ÚXML_SAVE_NOT_UTF8ÚXML_SAVE_CHAR_INVALIDÚXML_SAVE_NO_DOCTYPEÚXML_SAVE_UNKNOWN_ENCODINGÚXML_REGEXP_COMPILE_ERRORÚXML_IO_UNKNOWNÚXML_IO_EACCESÚXML_IO_EAGAINÚXML_IO_EBADFÚXML_IO_EBADMSGÚXML_IO_EBUSYÚXML_IO_ECANCELEDÚXML_IO_ECHILDÚXML_IO_EDEADLKÚXML_IO_EDOMÚXML_IO_EEXISTÚXML_IO_EFAULTÚXML_IO_EFBIGÚXML_IO_EINPROGRESSÚXML_IO_EINTRÚXML_IO_EINVALÚ
XML_IO_EIOÚXML_IO_EISDIRÚXML_IO_EMFILEÚXML_IO_EMLINKÚXML_IO_EMSGSIZEÚXML_IO_ENAMETOOLONGÚXML_IO_ENFILEÚXML_IO_ENODEVÚXML_IO_ENOENTÚXML_IO_ENOEXECÚXML_IO_ENOLCKÚXML_IO_ENOMEMÚXML_IO_ENOSPCÚXML_IO_ENOSYSÚXML_IO_ENOTDIRÚXML_IO_ENOTEMPTYÚXML_IO_ENOTSUPÚXML_IO_ENOTTYÚXML_IO_ENXIOÚXML_IO_EPERMÚXML_IO_EPIPEÚXML_IO_ERANGEÚXML_IO_EROFSÚXML_IO_ESPIPEÚXML_IO_ESRCHÚXML_IO_ETIMEDOUTÚXML_IO_EXDEVÚXML_IO_NETWORK_ATTEMPTÚXML_IO_ENCODERÚXML_IO_FLUSHÚXML_IO_WRITEÚXML_IO_NO_INPUTÚXML_IO_BUFFER_FULLÚXML_IO_LOAD_ERRORÚXML_IO_ENOTSOCKÚXML_IO_EISCONNÚXML_IO_ECONNREFUSEDÚXML_IO_ENETUNREACHÚXML_IO_EADDRINUSEÚXML_IO_EALREADYÚXML_IO_EAFNOSUPPORTÚXML_XINCLUDE_RECURSIONÚXML_XINCLUDE_PARSE_VALUEÚ XML_XINCLUDE_ENTITY_DEF_MISMATCHÚXML_XINCLUDE_NO_HREFÚXML_XINCLUDE_NO_FALLBACKÚXML_XINCLUDE_HREF_URIÚXML_XINCLUDE_TEXT_FRAGMENTÚXML_XINCLUDE_TEXT_DOCUMENTÚXML_XINCLUDE_INVALID_CHARÚXML_XINCLUDE_BUILD_FAILEDÚXML_XINCLUDE_UNKNOWN_ENCODINGÚXML_XINCLUDE_MULTIPLE_ROOTÚXML_XINCLUDE_XPTR_FAILEDÚXML_XINCLUDE_XPTR_RESULTÚXML_XINCLUDE_INCLUDE_IN_INCLUDEÚ!XML_XINCLUDE_FALLBACKS_IN_INCLUDEÚ$XML_XINCLUDE_FALLBACK_NOT_IN_INCLUDEÚXML_XINCLUDE_DEPRECATED_NSÚXML_XINCLUDE_FRAGMENT_IDÚXML_CATALOG_MISSING_ATTRÚXML_CATALOG_ENTRY_BROKENÚXML_CATALOG_PREFER_VALUEÚXML_CATALOG_NOT_CATALOGÚXML_CATALOG_RECURSIONÚXML_SCHEMAP_PREFIX_UNDEFINEDÚ!XML_SCHEMAP_ATTRFORMDEFAULT_VALUEÚ XML_SCHEMAP_ATTRGRP_NONAME_NOREFÚXML_SCHEMAP_ATTR_NONAME_NOREFÚ$XML_SCHEMAP_COMPLEXTYPE_NONAME_NOREFÚ!XML_SCHEMAP_ELEMFORMDEFAULT_VALUEÚXML_SCHEMAP_ELEM_NONAME_NOREFÚXML_SCHEMAP_EXTENSION_NO_BASEÚXML_SCHEMAP_FACET_NO_VALUEÚXML_SCHEMAP_FAILED_BUILD_IMPORTÚXML_SCHEMAP_GROUP_NONAME_NOREFÚ$XML_SCHEMAP_IMPORT_NAMESPACE_NOT_URIÚ"XML_SCHEMAP_IMPORT_REDEFINE_NSNAMEÚ!XML_SCHEMAP_IMPORT_SCHEMA_NOT_URIÚXML_SCHEMAP_INVALID_BOOLEANÚXML_SCHEMAP_INVALID_ENUMÚXML_SCHEMAP_INVALID_FACETÚXML_SCHEMAP_INVALID_FACET_VALUEÚXML_SCHEMAP_INVALID_MAXOCCURSÚXML_SCHEMAP_INVALID_MINOCCURSÚ#XML_SCHEMAP_INVALID_REF_AND_SUBTYPEÚXML_SCHEMAP_INVALID_WHITE_SPACEÚXML_SCHEMAP_NOATTR_NOREFÚXML_SCHEMAP_NOTATION_NO_NAMEÚXML_SCHEMAP_NOTYPE_NOREFÚXML_SCHEMAP_REF_AND_SUBTYPEÚ$XML_SCHEMAP_RESTRICTION_NONAME_NOREFÚXML_SCHEMAP_SIMPLETYPE_NONAMEÚXML_SCHEMAP_TYPE_AND_SUBTYPEÚXML_SCHEMAP_UNKNOWN_ALL_CHILDÚ&XML_SCHEMAP_UNKNOWN_ANYATTRIBUTE_CHILDÚXML_SCHEMAP_UNKNOWN_ATTR_CHILDÚ!XML_SCHEMAP_UNKNOWN_ATTRGRP_CHILDÚ#XML_SCHEMAP_UNKNOWN_ATTRIBUTE_GROUPÚXML_SCHEMAP_UNKNOWN_BASE_TYPEÚ XML_SCHEMAP_UNKNOWN_CHOICE_CHILDÚ(XML_SCHEMAP_UNKNOWN_COMPLEXCONTENT_CHILDÚ%XML_SCHEMAP_UNKNOWN_COMPLEXTYPE_CHILDÚXML_SCHEMAP_UNKNOWN_ELEM_CHILDÚ#XML_SCHEMAP_UNKNOWN_EXTENSION_CHILDÚXML_SCHEMAP_UNKNOWN_FACET_CHILDÚXML_SCHEMAP_UNKNOWN_FACET_TYPEÚXML_SCHEMAP_UNKNOWN_GROUP_CHILDÚ XML_SCHEMAP_UNKNOWN_IMPORT_CHILDÚXML_SCHEMAP_UNKNOWN_LIST_CHILDÚ"XML_SCHEMAP_UNKNOWN_NOTATION_CHILDÚ(XML_SCHEMAP_UNKNOWN_PROCESSCONTENT_CHILDÚXML_SCHEMAP_UNKNOWN_REFÚ%XML_SCHEMAP_UNKNOWN_RESTRICTION_CHILDÚ!XML_SCHEMAP_UNKNOWN_SCHEMAS_CHILDÚ"XML_SCHEMAP_UNKNOWN_SEQUENCE_CHILDÚ'XML_SCHEMAP_UNKNOWN_SIMPLECONTENT_CHILDÚ$XML_SCHEMAP_UNKNOWN_SIMPLETYPE_CHILDÚXML_SCHEMAP_UNKNOWN_TYPEÚXML_SCHEMAP_UNKNOWN_UNION_CHILDÚXML_SCHEMAP_ELEM_DEFAULT_FIXEDÚXML_SCHEMAP_REGEXP_INVALIDÚXML_SCHEMAP_FAILED_LOADÚXML_SCHEMAP_NOTHING_TO_PARSEÚXML_SCHEMAP_NOROOTÚXML_SCHEMAP_REDEFINED_GROUPÚXML_SCHEMAP_REDEFINED_TYPEÚXML_SCHEMAP_REDEFINED_ELEMENTÚXML_SCHEMAP_REDEFINED_ATTRGROUPÚXML_SCHEMAP_REDEFINED_ATTRÚXML_SCHEMAP_REDEFINED_NOTATIONÚXML_SCHEMAP_FAILED_PARSEÚXML_SCHEMAP_UNKNOWN_PREFIXÚXML_SCHEMAP_DEF_AND_PREFIXÚ!XML_SCHEMAP_UNKNOWN_INCLUDE_CHILDÚ"XML_SCHEMAP_INCLUDE_SCHEMA_NOT_URIÚ!XML_SCHEMAP_INCLUDE_SCHEMA_NO_URIÚXML_SCHEMAP_NOT_SCHEMAÚXML_SCHEMAP_UNKNOWN_MEMBER_TYPEÚXML_SCHEMAP_INVALID_ATTR_USEÚXML_SCHEMAP_RECURSIVEÚ(XML_SCHEMAP_SUPERNUMEROUS_LIST_ITEM_TYPEÚ$XML_SCHEMAP_INVALID_ATTR_COMBINATIONÚ+XML_SCHEMAP_INVALID_ATTR_INLINE_COMBINATIONÚ$XML_SCHEMAP_MISSING_SIMPLETYPE_CHILDÚXML_SCHEMAP_INVALID_ATTR_NAMEÚXML_SCHEMAP_REF_AND_CONTENTÚXML_SCHEMAP_CT_PROPS_CORRECT_1ÚXML_SCHEMAP_CT_PROPS_CORRECT_2ÚXML_SCHEMAP_CT_PROPS_CORRECT_3ÚXML_SCHEMAP_CT_PROPS_CORRECT_4ÚXML_SCHEMAP_CT_PROPS_CORRECT_5Ú'XML_SCHEMAP_DERIVATION_OK_RESTRICTION_1Ú+XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_1Ú+XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_2Ú)XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_2Ú'XML_SCHEMAP_DERIVATION_OK_RESTRICTION_3Ú&XML_SCHEMAP_WILDCARD_INVALID_NS_MEMBERÚ(XML_SCHEMAP_INTERSECTION_NOT_EXPRESSIBLEÚ!XML_SCHEMAP_UNION_NOT_EXPRESSIBLEÚXML_SCHEMAP_SRC_IMPORT_3_1ÚXML_SCHEMAP_SRC_IMPORT_3_2Ú)XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_1Ú)XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_2Ú)XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_3ÚXML_SCHEMAP_COS_CT_EXTENDS_1_3ÚXML_SCHEMAV_NOROOTÚXML_SCHEMAV_UNDECLAREDELEMÚXML_SCHEMAV_NOTTOPLEVELÚXML_SCHEMAV_MISSINGÚXML_SCHEMAV_WRONGELEMÚXML_SCHEMAV_NOTYPEÚXML_SCHEMAV_NOROLLBACKÚXML_SCHEMAV_ISABSTRACTÚXML_SCHEMAV_NOTEMPTYÚXML_SCHEMAV_ELEMCONTÚXML_SCHEMAV_HAVEDEFAULTÚXML_SCHEMAV_NOTNILLABLEÚXML_SCHEMAV_EXTRACONTENTÚXML_SCHEMAV_INVALIDATTRÚXML_SCHEMAV_INVALIDELEMÚXML_SCHEMAV_NOTDETERMINISTÚXML_SCHEMAV_CONSTRUCTÚXML_SCHEMAV_INTERNALÚXML_SCHEMAV_NOTSIMPLEÚXML_SCHEMAV_ATTRUNKNOWNÚXML_SCHEMAV_ATTRINVALIDÚXML_SCHEMAV_VALUEÚXML_SCHEMAV_FACETÚ$XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_1Ú$XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_2Ú$XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_3ÚXML_SCHEMAV_CVC_TYPE_3_1_1ÚXML_SCHEMAV_CVC_TYPE_3_1_2ÚXML_SCHEMAV_CVC_FACET_VALIDÚXML_SCHEMAV_CVC_LENGTH_VALIDÚXML_SCHEMAV_CVC_MINLENGTH_VALIDÚXML_SCHEMAV_CVC_MAXLENGTH_VALIDÚ"XML_SCHEMAV_CVC_MININCLUSIVE_VALIDÚ"XML_SCHEMAV_CVC_MAXINCLUSIVE_VALIDÚ"XML_SCHEMAV_CVC_MINEXCLUSIVE_VALIDÚ"XML_SCHEMAV_CVC_MAXEXCLUSIVE_VALIDÚ!XML_SCHEMAV_CVC_TOTALDIGITS_VALIDÚ$XML_SCHEMAV_CVC_FRACTIONDIGITS_VALIDÚXML_SCHEMAV_CVC_PATTERN_VALIDÚ!XML_SCHEMAV_CVC_ENUMERATION_VALIDÚ XML_SCHEMAV_CVC_COMPLEX_TYPE_2_1Ú XML_SCHEMAV_CVC_COMPLEX_TYPE_2_2Ú XML_SCHEMAV_CVC_COMPLEX_TYPE_2_3Ú XML_SCHEMAV_CVC_COMPLEX_TYPE_2_4ÚXML_SCHEMAV_CVC_ELT_1ÚXML_SCHEMAV_CVC_ELT_2ÚXML_SCHEMAV_CVC_ELT_3_1ÚXML_SCHEMAV_CVC_ELT_3_2_1ÚXML_SCHEMAV_CVC_ELT_3_2_2ÚXML_SCHEMAV_CVC_ELT_4_1ÚXML_SCHEMAV_CVC_ELT_4_2ÚXML_SCHEMAV_CVC_ELT_4_3ÚXML_SCHEMAV_CVC_ELT_5_1_1ÚXML_SCHEMAV_CVC_ELT_5_1_2ÚXML_SCHEMAV_CVC_ELT_5_2_1ÚXML_SCHEMAV_CVC_ELT_5_2_2_1ÚXML_SCHEMAV_CVC_ELT_5_2_2_2_1ÚXML_SCHEMAV_CVC_ELT_5_2_2_2_2ÚXML_SCHEMAV_CVC_ELT_6ÚXML_SCHEMAV_CVC_ELT_7ÚXML_SCHEMAV_CVC_ATTRIBUTE_1ÚXML_SCHEMAV_CVC_ATTRIBUTE_2ÚXML_SCHEMAV_CVC_ATTRIBUTE_3ÚXML_SCHEMAV_CVC_ATTRIBUTE_4Ú XML_SCHEMAV_CVC_COMPLEX_TYPE_3_1Ú"XML_SCHEMAV_CVC_COMPLEX_TYPE_3_2_1Ú"XML_SCHEMAV_CVC_COMPLEX_TYPE_3_2_2ÚXML_SCHEMAV_CVC_COMPLEX_TYPE_4Ú XML_SCHEMAV_CVC_COMPLEX_TYPE_5_1Ú XML_SCHEMAV_CVC_COMPLEX_TYPE_5_2ÚXML_SCHEMAV_ELEMENT_CONTENTÚ$XML_SCHEMAV_DOCUMENT_ELEMENT_MISSINGÚXML_SCHEMAV_CVC_COMPLEX_TYPE_1ÚXML_SCHEMAV_CVC_AUÚXML_SCHEMAV_CVC_TYPE_1ÚXML_SCHEMAV_CVC_TYPE_2ÚXML_SCHEMAV_CVC_IDCÚXML_SCHEMAV_CVC_WILDCARDÚXML_SCHEMAV_MISCÚXML_XPTR_UNKNOWN_SCHEMEÚXML_XPTR_CHILDSEQ_STARTÚXML_XPTR_EVAL_FAILEDÚXML_XPTR_EXTRA_OBJECTSÚXML_C14N_CREATE_CTXTÚXML_C14N_REQUIRES_UTF8ÚXML_C14N_CREATE_STACKÚXML_C14N_INVALID_NODEÚXML_C14N_UNKNOW_NODEÚXML_C14N_RELATIVE_NAMESPACEÚXML_FTP_PASV_ANSWERÚXML_FTP_EPSV_ANSWERÚXML_FTP_ACCNTÚXML_FTP_URL_SYNTAXÚXML_HTTP_URL_SYNTAXÚXML_HTTP_USE_IPÚXML_HTTP_UNKNOWN_HOSTÚXML_SCHEMAP_SRC_SIMPLE_TYPE_1ÚXML_SCHEMAP_SRC_SIMPLE_TYPE_2ÚXML_SCHEMAP_SRC_SIMPLE_TYPE_3ÚXML_SCHEMAP_SRC_SIMPLE_TYPE_4ÚXML_SCHEMAP_SRC_RESOLVEÚ.XML_SCHEMAP_SRC_RESTRICTION_BASE_OR_SIMPLETYPEÚ+XML_SCHEMAP_SRC_LIST_ITEMTYPE_OR_SIMPLETYPEÚ0XML_SCHEMAP_SRC_UNION_MEMBERTYPES_OR_SIMPLETYPESÚXML_SCHEMAP_ST_PROPS_CORRECT_1ÚXML_SCHEMAP_ST_PROPS_CORRECT_2ÚXML_SCHEMAP_ST_PROPS_CORRECT_3Ú XML_SCHEMAP_COS_ST_RESTRICTS_1_1Ú XML_SCHEMAP_COS_ST_RESTRICTS_1_2Ú"XML_SCHEMAP_COS_ST_RESTRICTS_1_3_1Ú"XML_SCHEMAP_COS_ST_RESTRICTS_1_3_2Ú XML_SCHEMAP_COS_ST_RESTRICTS_2_1Ú$XML_SCHEMAP_COS_ST_RESTRICTS_2_3_1_1Ú$XML_SCHEMAP_COS_ST_RESTRICTS_2_3_1_2Ú$XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_1Ú$XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_2Ú$XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_3Ú$XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_4Ú$XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_5Ú XML_SCHEMAP_COS_ST_RESTRICTS_3_1Ú"XML_SCHEMAP_COS_ST_RESTRICTS_3_3_1Ú$XML_SCHEMAP_COS_ST_RESTRICTS_3_3_1_2Ú$XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_2Ú$XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_1Ú$XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_3Ú$XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_4Ú$XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_5Ú!XML_SCHEMAP_COS_ST_DERIVED_OK_2_1Ú!XML_SCHEMAP_COS_ST_DERIVED_OK_2_2Ú XML_SCHEMAP_S4S_ELEM_NOT_ALLOWEDÚXML_SCHEMAP_S4S_ELEM_MISSINGÚ XML_SCHEMAP_S4S_ATTR_NOT_ALLOWEDÚXML_SCHEMAP_S4S_ATTR_MISSINGÚ"XML_SCHEMAP_S4S_ATTR_INVALID_VALUEÚXML_SCHEMAP_SRC_ELEMENT_1ÚXML_SCHEMAP_SRC_ELEMENT_2_1ÚXML_SCHEMAP_SRC_ELEMENT_2_2ÚXML_SCHEMAP_SRC_ELEMENT_3ÚXML_SCHEMAP_P_PROPS_CORRECT_1ÚXML_SCHEMAP_P_PROPS_CORRECT_2_1ÚXML_SCHEMAP_P_PROPS_CORRECT_2_2ÚXML_SCHEMAP_E_PROPS_CORRECT_2ÚXML_SCHEMAP_E_PROPS_CORRECT_3ÚXML_SCHEMAP_E_PROPS_CORRECT_4ÚXML_SCHEMAP_E_PROPS_CORRECT_5ÚXML_SCHEMAP_E_PROPS_CORRECT_6ÚXML_SCHEMAP_SRC_INCLUDEÚXML_SCHEMAP_SRC_ATTRIBUTE_1ÚXML_SCHEMAP_SRC_ATTRIBUTE_2ÚXML_SCHEMAP_SRC_ATTRIBUTE_3_1ÚXML_SCHEMAP_SRC_ATTRIBUTE_3_2ÚXML_SCHEMAP_SRC_ATTRIBUTE_4ÚXML_SCHEMAP_NO_XMLNSÚXML_SCHEMAP_NO_XSIÚXML_SCHEMAP_COS_VALID_DEFAULT_1Ú!XML_SCHEMAP_COS_VALID_DEFAULT_2_1Ú#XML_SCHEMAP_COS_VALID_DEFAULT_2_2_1Ú#XML_SCHEMAP_COS_VALID_DEFAULT_2_2_2ÚXML_SCHEMAP_CVC_SIMPLE_TYPEÚXML_SCHEMAP_COS_CT_EXTENDS_1_1ÚXML_SCHEMAP_SRC_IMPORT_1_1ÚXML_SCHEMAP_SRC_IMPORT_1_2ÚXML_SCHEMAP_SRC_IMPORT_2ÚXML_SCHEMAP_SRC_IMPORT_2_1ÚXML_SCHEMAP_SRC_IMPORT_2_2ÚXML_SCHEMAP_INTERNALÚXML_SCHEMAP_NOT_DETERMINISTICÚ!XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_1Ú!XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_2Ú!XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_3ÚXML_SCHEMAP_MG_PROPS_CORRECT_1ÚXML_SCHEMAP_MG_PROPS_CORRECT_2ÚXML_SCHEMAP_SRC_CT_1Ú+XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_3ÚXML_SCHEMAP_AU_PROPS_CORRECT_2ÚXML_SCHEMAP_A_PROPS_CORRECT_2ÚXML_SCHEMAP_C_PROPS_CORRECTÚXML_SCHEMAP_SRC_REDEFINEÚXML_SCHEMAP_SRC_IMPORTÚXML_SCHEMAP_WARN_SKIP_SCHEMAÚ!XML_SCHEMAP_WARN_UNLOCATED_SCHEMAÚ!XML_SCHEMAP_WARN_ATTR_REDECL_PROHÚ$XML_SCHEMAP_WARN_ATTR_POINTLESS_PROHÚXML_SCHEMAP_AG_PROPS_CORRECTÚXML_SCHEMAP_COS_CT_EXTENDS_1_2ÚXML_SCHEMAP_AU_PROPS_CORRECTÚXML_SCHEMAP_A_PROPS_CORRECT_3ÚXML_SCHEMAP_COS_ALL_LIMITEDÚXML_SCHEMATRONV_ASSERTÚXML_SCHEMATRONV_REPORTÚXML_MODULE_OPENÚXML_MODULE_CLOSEÚXML_CHECK_FOUND_ELEMENTÚXML_CHECK_FOUND_ATTRIBUTEÚXML_CHECK_FOUND_TEXTÚXML_CHECK_FOUND_CDATAÚXML_CHECK_FOUND_ENTITYREFÚXML_CHECK_FOUND_ENTITYÚXML_CHECK_FOUND_PIÚXML_CHECK_FOUND_COMMENTÚXML_CHECK_FOUND_DOCTYPEÚXML_CHECK_FOUND_FRAGMENTÚXML_CHECK_FOUND_NOTATIONÚXML_CHECK_UNKNOWN_NODEÚXML_CHECK_ENTITY_TYPEÚXML_CHECK_NO_PARENTÚXML_CHECK_NO_DOCÚXML_CHECK_NO_NAMEÚXML_CHECK_NO_ELEMÚXML_CHECK_WRONG_DOCÚXML_CHECK_NO_PREVÚXML_CHECK_WRONG_PREVÚXML_CHECK_NO_NEXTÚXML_CHECK_WRONG_NEXTÚXML_CHECK_NOT_DTDÚXML_CHECK_NOT_ATTRÚXML_CHECK_NOT_ATTR_DECLÚXML_CHECK_NOT_ELEM_DECLÚXML_CHECK_NOT_ENTITY_DECLÚXML_CHECK_NOT_NS_DECLÚXML_CHECK_NO_HREFÚXML_CHECK_WRONG_PARENTÚXML_CHECK_NS_SCOPEÚXML_CHECK_NS_ANCESTORÚXML_CHECK_NOT_UTF8ÚXML_CHECK_NO_DICTÚXML_CHECK_NOT_NCNAMEÚXML_CHECK_OUTSIDE_DICTÚXML_CHECK_WRONG_NAMEÚXML_CHECK_NAME_NOT_NULLÚXML_I18N_NO_NAMEÚXML_I18N_NO_HANDLERÚXML_I18N_EXCESS_HANDLERÚXML_I18N_CONV_FAILEDÚXML_I18N_NO_OUTPUTÚXML_BUF_OVERFLOWÚXML_EXP_EMPTYÚXML_EXP_FORBIDÚXML_EXP_ATOMÚXML_EXP_SEQÚ
XML_EXP_ORÚXML_EXP_COUNTÚXML_ELEMENT_CONTENT_PCDATAÚXML_ELEMENT_CONTENT_ELEMENTÚXML_ELEMENT_CONTENT_SEQÚXML_ELEMENT_CONTENT_ORÚXML_PARSER_LOADDTDÚXML_PARSER_DEFAULTATTRSÚXML_PARSER_VALIDATEÚXML_PARSER_SUBST_ENTITIESÚXML_READER_TYPE_NONEÚXML_READER_TYPE_ELEMENTÚXML_READER_TYPE_ATTRIBUTEÚXML_READER_TYPE_TEXTÚXML_READER_TYPE_CDATAÚ XML_READER_TYPE_ENTITY_REFERENCEÚXML_READER_TYPE_ENTITYÚ&XML_READER_TYPE_PROCESSING_INSTRUCTIONÚXML_READER_TYPE_COMMENTÚXML_READER_TYPE_DOCUMENTÚXML_READER_TYPE_DOCUMENT_TYPEÚ!XML_READER_TYPE_DOCUMENT_FRAGMENTÚXML_READER_TYPE_NOTATIONÚXML_READER_TYPE_WHITESPACEÚ&XML_READER_TYPE_SIGNIFICANT_WHITESPACEÚXML_READER_TYPE_END_ELEMENTÚXML_READER_TYPE_END_ENTITYÚXML_READER_TYPE_XML_DECLARATIONÚXML_CATA_PREFER_NONEÚXML_CATA_PREFER_PUBLICÚXML_CATA_PREFER_SYSTEMÚXML_ELEMENT_NODEÚXML_ATTRIBUTE_NODEÚXML_TEXT_NODEÚXML_CDATA_SECTION_NODEÚXML_ENTITY_REF_NODEÚXML_ENTITY_NODEÚXML_PI_NODEÚXML_COMMENT_NODEÚXML_DOCUMENT_NODEÚXML_DOCUMENT_TYPE_NODEÚXML_DOCUMENT_FRAG_NODEÚXML_NOTATION_NODEÚXML_HTML_DOCUMENT_NODEÚXML_DTD_NODEÚXML_ELEMENT_DECLÚXML_ATTRIBUTE_DECLÚXML_ENTITY_DECLÚXML_NAMESPACE_DECLÚXML_XINCLUDE_STARTÚXML_XINCLUDE_ENDÚXML_DOCB_DOCUMENT_NODEÚXLINK_ACTUATE_NONEÚXLINK_ACTUATE_AUTOÚXLINK_ACTUATE_ONREQUESTÚXML_WITH_THREADÚXML_WITH_TREEÚXML_WITH_OUTPUTÚXML_WITH_PUSHÚXML_WITH_READERÚXML_WITH_PATTERNÚXML_WITH_WRITERÚXML_WITH_SAX1ÚXML_WITH_FTPÚXML_WITH_HTTPÚXML_WITH_VALIDÚXML_WITH_HTMLÚXML_WITH_LEGACYÚXML_WITH_C14NÚXML_WITH_CATALOGÚXML_WITH_XPATHÚXML_WITH_XPTRÚXML_WITH_XINCLUDEÚXML_WITH_ICONVÚXML_WITH_ISO8859XÚXML_WITH_UNICODEÚXML_WITH_REGEXPÚXML_WITH_AUTOMATAÚXML_WITH_EXPRÚXML_WITH_SCHEMASÚXML_WITH_SCHEMATRONÚXML_WITH_MODULESÚXML_WITH_DEBUGÚXML_WITH_DEBUG_MEMÚXML_WITH_DEBUG_RUNÚXML_WITH_ZLIBÚXML_WITH_ICUÚXML_WITH_LZMAÚXML_WITH_NONEÚXML_ELEMENT_CONTENT_ONCEÚXML_ELEMENT_CONTENT_OPTÚXML_ELEMENT_CONTENT_MULTÚXML_ELEMENT_CONTENT_PLUSÚXPATH_EXPRESSION_OKÚXPATH_NUMBER_ERRORÚXPATH_UNFINISHED_LITERAL_ERRORÚXPATH_START_LITERAL_ERRORÚXPATH_VARIABLE_REF_ERRORÚXPATH_UNDEF_VARIABLE_ERRORÚXPATH_INVALID_PREDICATE_ERRORÚXPATH_EXPR_ERRORÚXPATH_UNCLOSED_ERRORÚXPATH_UNKNOWN_FUNC_ERRORÚXPATH_INVALID_OPERANDÚXPATH_INVALID_TYPEÚXPATH_INVALID_ARITYÚXPATH_INVALID_CTXT_SIZEÚXPATH_INVALID_CTXT_POSITIONÚXPATH_MEMORY_ERRORÚXPTR_SYNTAX_ERRORÚXPTR_RESOURCE_ERRORÚXPTR_SUB_RESOURCE_ERRORÚXPATH_UNDEF_PREFIX_ERRORÚXPATH_ENCODING_ERRORÚXPATH_INVALID_CHAR_ERRORÚXPATH_INVALID_CTXTÚXPATH_STACK_ERRORÚXPATH_FORBID_VARIABLE_ERRORÚXPATH_OP_LIMIT_EXCEEDEDÚXPATH_RECURSION_LIMIT_EXCEEDEDÚXML_TEXTREADER_MODE_INITIALÚXML_TEXTREADER_MODE_INTERACTIVEÚXML_TEXTREADER_MODE_ERRORÚXML_TEXTREADER_MODE_EOFÚXML_TEXTREADER_MODE_CLOSEDÚXML_TEXTREADER_MODE_READINGÚXML_ERR_NONEÚXML_ERR_WARNINGÚXML_ERR_ERRORÚXML_ERR_FATALÚXML_CHAR_ENCODING_ERRORÚXML_CHAR_ENCODING_NONEÚXML_CHAR_ENCODING_UTF8ÚXML_CHAR_ENCODING_UTF16LEÚXML_CHAR_ENCODING_UTF16BEÚXML_CHAR_ENCODING_UCS4LEÚXML_CHAR_ENCODING_UCS4BEÚXML_CHAR_ENCODING_EBCDICÚXML_CHAR_ENCODING_UCS4_2143ÚXML_CHAR_ENCODING_UCS4_3412ÚXML_CHAR_ENCODING_UCS2ÚXML_CHAR_ENCODING_8859_1ÚXML_CHAR_ENCODING_8859_2ÚXML_CHAR_ENCODING_8859_3ÚXML_CHAR_ENCODING_8859_4ÚXML_CHAR_ENCODING_8859_5ÚXML_CHAR_ENCODING_8859_6ÚXML_CHAR_ENCODING_8859_7ÚXML_CHAR_ENCODING_8859_8ÚXML_CHAR_ENCODING_8859_9ÚXML_CHAR_ENCODING_2022_JPÚXML_CHAR_ENCODING_SHIFT_JISÚXML_CHAR_ENCODING_EUC_JPÚXML_CHAR_ENCODING_ASCIIÚXML_FROM_NONEÚXML_FROM_PARSERÚXML_FROM_TREEÚXML_FROM_NAMESPACEÚXML_FROM_DTDÚXML_FROM_HTMLÚXML_FROM_MEMORYÚXML_FROM_OUTPUTÚXML_FROM_IOÚXML_FROM_FTPÚXML_FROM_HTTPÚXML_FROM_XINCLUDEÚXML_FROM_XPATHÚXML_FROM_XPOINTERÚXML_FROM_REGEXPÚXML_FROM_DATATYPEÚXML_FROM_SCHEMASPÚXML_FROM_SCHEMASVÚXML_FROM_RELAXNGPÚXML_FROM_RELAXNGVÚXML_FROM_CATALOGÚXML_FROM_C14NÚXML_FROM_XSLTÚXML_FROM_VALIDÚXML_FROM_CHECKÚXML_FROM_WRITERÚXML_FROM_MODULEÚXML_FROM_I18NÚXML_FROM_SCHEMATRONVÚXML_FROM_BUFFERÚXML_FROM_URIÚHTML_NAÚHTML_INVALIDÚHTML_DEPRECATEDÚ
HTML_VALIDÚHTML_REQUIREDÚXML_SCHEMA_VAL_VC_I_CREATEÚXML_SCHEMA_WHITESPACE_UNKNOWNÚXML_SCHEMA_WHITESPACE_PRESERVEÚXML_SCHEMA_WHITESPACE_REPLACEÚXML_SCHEMA_WHITESPACE_COLLAPSEÚHTML_PARSE_RECOVERÚHTML_PARSE_NODEFDTDÚHTML_PARSE_NOERRORÚHTML_PARSE_NOWARNINGÚHTML_PARSE_PEDANTICÚHTML_PARSE_NOBLANKSÚHTML_PARSE_NONETÚHTML_PARSE_NOIMPLIEDÚHTML_PARSE_COMPACTÚHTML_PARSE_IGNORE_ENCÚXML_RELAXNG_OKÚXML_RELAXNG_ERR_MEMORYÚXML_RELAXNG_ERR_TYPEÚXML_RELAXNG_ERR_TYPEVALÚXML_RELAXNG_ERR_DUPIDÚXML_RELAXNG_ERR_TYPECMPÚXML_RELAXNG_ERR_NOSTATEÚXML_RELAXNG_ERR_NODEFINEÚXML_RELAXNG_ERR_LISTEXTRAÚXML_RELAXNG_ERR_LISTEMPTYÚXML_RELAXNG_ERR_INTERNODATAÚXML_RELAXNG_ERR_INTERSEQÚXML_RELAXNG_ERR_INTEREXTRAÚXML_RELAXNG_ERR_ELEMNAMEÚXML_RELAXNG_ERR_ATTRNAMEÚXML_RELAXNG_ERR_ELEMNONSÚXML_RELAXNG_ERR_ATTRNONSÚXML_RELAXNG_ERR_ELEMWRONGNSÚXML_RELAXNG_ERR_ATTRWRONGNSÚXML_RELAXNG_ERR_ELEMEXTRANSÚXML_RELAXNG_ERR_ATTREXTRANSÚXML_RELAXNG_ERR_ELEMNOTEMPTYÚXML_RELAXNG_ERR_NOELEMÚXML_RELAXNG_ERR_NOTELEMÚXML_RELAXNG_ERR_ATTRVALIDÚXML_RELAXNG_ERR_CONTENTVALIDÚXML_RELAXNG_ERR_EXTRACONTENTÚXML_RELAXNG_ERR_INVALIDATTRÚXML_RELAXNG_ERR_DATAELEMÚXML_RELAXNG_ERR_VALELEMÚXML_RELAXNG_ERR_LISTELEMÚXML_RELAXNG_ERR_DATATYPEÚXML_RELAXNG_ERR_VALUEÚXML_RELAXNG_ERR_LISTÚXML_RELAXNG_ERR_NOGRAMMARÚXML_RELAXNG_ERR_EXTRADATAÚXML_RELAXNG_ERR_LACKDATAÚXML_RELAXNG_ERR_INTERNALÚXML_RELAXNG_ERR_ELEMWRONGÚXML_RELAXNG_ERR_TEXTWRONGÚXML_CATA_ALLOW_NONEÚXML_CATA_ALLOW_GLOBALÚXML_CATA_ALLOW_DOCUMENTÚXML_CATA_ALLOW_ALLÚXML_ATTRIBUTE_CDATAÚXML_ATTRIBUTE_IDÚXML_ATTRIBUTE_IDREFÚXML_ATTRIBUTE_IDREFSÚXML_ATTRIBUTE_ENTITYÚXML_ATTRIBUTE_ENTITIESÚXML_ATTRIBUTE_NMTOKENÚXML_ATTRIBUTE_NMTOKENSÚXML_ATTRIBUTE_ENUMERATIONÚXML_ATTRIBUTE_NOTATIONÚXML_SCHEMATRON_OUT_QUIETÚXML_SCHEMATRON_OUT_TEXTÚXML_SCHEMATRON_OUT_XMLÚXML_SCHEMATRON_OUT_ERRORÚXML_SCHEMATRON_OUT_FILEÚXML_SCHEMATRON_OUT_BUFFERÚXML_SCHEMATRON_OUT_IOÚXML_SCHEMA_CONTENT_UNKNOWNÚXML_SCHEMA_CONTENT_EMPTYÚXML_SCHEMA_CONTENT_ELEMENTSÚXML_SCHEMA_CONTENT_MIXEDÚXML_SCHEMA_CONTENT_SIMPLEÚ$XML_SCHEMA_CONTENT_MIXED_OR_ELEMENTSÚXML_SCHEMA_CONTENT_BASICÚXML_SCHEMA_CONTENT_ANYÚXML_SCHEMA_TYPE_BASICÚXML_SCHEMA_TYPE_ANYÚXML_SCHEMA_TYPE_FACETÚXML_SCHEMA_TYPE_SIMPLEÚXML_SCHEMA_TYPE_COMPLEXÚXML_SCHEMA_TYPE_SEQUENCEÚXML_SCHEMA_TYPE_CHOICEÚXML_SCHEMA_TYPE_ALLÚXML_SCHEMA_TYPE_SIMPLE_CONTENTÚXML_SCHEMA_TYPE_COMPLEX_CONTENTÚXML_SCHEMA_TYPE_URÚXML_SCHEMA_TYPE_RESTRICTIONÚXML_SCHEMA_TYPE_EXTENSIONÚXML_SCHEMA_TYPE_ELEMENTÚXML_SCHEMA_TYPE_ATTRIBUTEÚXML_SCHEMA_TYPE_ATTRIBUTEGROUPÚXML_SCHEMA_TYPE_GROUPÚXML_SCHEMA_TYPE_NOTATIONÚXML_SCHEMA_TYPE_LISTÚXML_SCHEMA_TYPE_UNIONÚXML_SCHEMA_TYPE_ANY_ATTRIBUTEÚXML_SCHEMA_TYPE_IDC_UNIQUEÚXML_SCHEMA_TYPE_IDC_KEYÚXML_SCHEMA_TYPE_IDC_KEYREFÚXML_SCHEMA_TYPE_PARTICLEÚXML_SCHEMA_TYPE_ATTRIBUTE_USEÚXML_SCHEMA_FACET_MININCLUSIVEÚXML_SCHEMA_FACET_MINEXCLUSIVEÚXML_SCHEMA_FACET_MAXINCLUSIVEÚXML_SCHEMA_FACET_MAXEXCLUSIVEÚXML_SCHEMA_FACET_TOTALDIGITSÚXML_SCHEMA_FACET_FRACTIONDIGITSÚXML_SCHEMA_FACET_PATTERNÚXML_SCHEMA_FACET_ENUMERATIONÚXML_SCHEMA_FACET_WHITESPACEÚXML_SCHEMA_FACET_LENGTHÚXML_SCHEMA_FACET_MAXLENGTHÚXML_SCHEMA_FACET_MINLENGTHÚXML_SCHEMA_EXTRA_QNAMEREFÚ XML_SCHEMA_EXTRA_ATTR_USE_PROHIBÚXML_MODULE_LAZYÚXML_MODULE_LOCALÚXML_PARSE_UNKNOWNÚXML_PARSE_DOMÚXML_PARSE_SAXÚXML_PARSE_PUSH_DOMÚXML_PARSE_PUSH_SAXÚXML_PARSE_READERÚXML_C14N_1_0ÚXML_C14N_EXCLUSIVE_1_0ÚXML_C14N_1_1ÚXML_PARSE_RECOVERÚXML_PARSE_NOENTÚXML_PARSE_DTDLOADÚXML_PARSE_DTDATTRÚXML_PARSE_DTDVALIDÚXML_PARSE_NOERRORÚXML_PARSE_NOWARNINGÚXML_PARSE_PEDANTICÚXML_PARSE_NOBLANKSÚXML_PARSE_SAX1ÚXML_PARSE_XINCLUDEÚXML_PARSE_NONETÚXML_PARSE_NODICTÚXML_PARSE_NSCLEANÚXML_PARSE_NOCDATAÚXML_PARSE_NOXINCNODEÚXML_PARSE_COMPACTÚXML_PARSE_OLD10ÚXML_PARSE_NOBASEFIXÚXML_PARSE_HUGEÚXML_PARSE_OLDSAXÚXML_PARSE_IGNORE_ENCÚXML_PARSE_BIG_LINESÚXML_ELEMENT_TYPE_UNDEFINEDÚXML_ELEMENT_TYPE_EMPTYÚXML_ELEMENT_TYPE_ANYÚXML_ELEMENT_TYPE_MIXEDÚXML_ELEMENT_TYPE_ELEMENTÚXML_DOC_WELLFORMEDÚXML_DOC_NSVALIDÚXML_DOC_OLD10ÚXML_DOC_DTDVALIDÚXML_DOC_XINCLUDEÚXML_DOC_USERBUILTÚXML_DOC_INTERNALÚXML_DOC_HTMLÚXLINK_TYPE_NONEÚXLINK_TYPE_SIMPLEÚXLINK_TYPE_EXTENDEDÚXLINK_TYPE_EXTENDED_SETÚXPATH_UNDEFINEDÚXPATH_NODESETÚXPATH_BOOLEANÚXPATH_NUMBERÚXPATH_STRINGÚXPATH_POINTÚXPATH_RANGEÚXPATH_LOCATIONSETÚXPATH_USERSÚXPATH_XSLT_TREEÚXML_SCHEMAS_ERR_OKÚXML_SCHEMAS_ERR_NOROOTÚXML_SCHEMAS_ERR_UNDECLAREDELEMÚXML_SCHEMAS_ERR_NOTTOPLEVELÚXML_SCHEMAS_ERR_MISSINGÚXML_SCHEMAS_ERR_WRONGELEMÚXML_SCHEMAS_ERR_NOTYPEÚXML_SCHEMAS_ERR_NOROLLBACKÚXML_SCHEMAS_ERR_ISABSTRACTÚXML_SCHEMAS_ERR_NOTEMPTYÚXML_SCHEMAS_ERR_ELEMCONTÚXML_SCHEMAS_ERR_HAVEDEFAULTÚXML_SCHEMAS_ERR_NOTNILLABLEÚXML_SCHEMAS_ERR_EXTRACONTENTÚXML_SCHEMAS_ERR_INVALIDATTRÚXML_SCHEMAS_ERR_INVALIDELEMÚXML_SCHEMAS_ERR_NOTDETERMINISTÚXML_SCHEMAS_ERR_CONSTRUCTÚXML_SCHEMAS_ERR_INTERNALÚXML_SCHEMAS_ERR_NOTSIMPLEÚXML_SCHEMAS_ERR_ATTRUNKNOWNÚXML_SCHEMAS_ERR_ATTRINVALIDÚXML_SCHEMAS_ERR_VALUEÚXML_SCHEMAS_ERR_FACETÚXML_SCHEMAS_ERR_ÚXML_SCHEMAS_ERR_XXXr   r   r   Ú<module>r2     s‚&  ðÛ Û Û 
ô #�)Ô "òòô�ô ô�+ô ôˆ{ô ô�ô ÷)*ñ )*ôV�Iô ô$*�Yô *÷^añ a÷R~'ñ ~'÷Hñ ÷.ñ ò.ò*ò Eð €ØÐ Ø€ØÐ ð
 "#Ð  Ø Ð ØÐ ØÐ ò
÷8ñ 8÷<
Hñ 
H÷
Nñ 
N÷
Oñ 
Oò=÷
ñ òF(ð Ð ò#ò0ò& òòò
 òòòòòòòò
òòò*ò+ò+òò#òò
#ò
òòò
ò
òò
ò
ò&òòò'òòòòòòòò
òòò
òò
/ò
7ò ò
òò0ò
+òò
ò
-ò.ò1òò#ò òòòòòòòòòòòòò#ò
 ò
?ò(ò$ò!ò
)ò òòò,ò òòòòòòòòòòòòòòò òDò
ò
 ò ò ò ò ò#òòòòòò2ò
!ò"ò òòò ò4ò
ò
ò(òò(ò
ò
'ò'òòò
ò
òòòòò(ò
ò
ò
ò
òòòòò,òò
òòòòòòò
ò
òòò*ò
+ò
ò
ò
ò
òò
ò2ò3ò.òò#ò#ò#ò#ò#ò#òò&ò&ò'òò
$òòò
ò
òò
ò
òòòòòòò
òòò
ò
ò
ò
ò
òò
òó
óó
óóóóóóóôôôô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ô
ôôôôôôôô
ôô
ô
ô
ôôô
ôôô
ô
ô
ôôô
ô
ôôô
ôô
ô
ôôô
ôôô
ôô
ô
ôô
ôô
ôôôôôô
ôôôô
ôôôôôôôô
ôô
ô
ô
ô
ôô
ô
ôô
ôô
ô
ô
ôôô
ôôôôôôô
ô
ô
ô
ô
ôô
ô
ô
ô
ô
ô
ôôôô
ô
ô(ôöp#ˆgõ p#ödp‰Wõ pödR
�õ R
öhL‰gõ Lö\V‘7õ V÷:ô :öx@‰Wõ @öDT‘õ Tö5‘õ 5÷*1*ô 1*öfj2‰Gõ j2öX`�>õ `öD8�-õ 8÷t3ô 3÷8ô ÷:,ô ,ö\DÐ+õ D÷Lô ÷.(ô (öTKCÐ)õ KC÷Zô ö&vÐ%õ v÷pxô xötm�õ m÷^b#ô b#÷H~:ô ~:ðB �Ø�ØÑ ØÑ ð Ñ ØÑ ØÑ ð Ñ ØÑ ØÑ ØÑ ÙÑ ÙÑ ð ()Ñ $Ø%&Ñ "ØÑ ØÑ ð Ñ ØÑ ØÑ ØÑ ð Ñ ØÑ ØÑ ØÑ ØÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù�ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù�ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ñ �ØÑ Ø�Ø�Ø�ØÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ð  Ñ Ø%&Ñ "Ø'(Ñ $Ø !Ñ Ù !Ñ Ù!"Ñ ð �ØÑ ØÑ ÙÑ Ù�Ù�ÙÑ ÙÑ ð Ñ ØÑ ØÑ ØÑ ð �
ØÑ ØÑ ØÑ ØÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ Ù Ñ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ ÙÑ Ù$&Ñ !ÙÑ Ù "Ñ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ ÙÑ Ù!Ñ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ ÙÑ Ù "Ñ Ù!#Ñ Ù"$Ñ Ù Ñ Ù Ñ Ù!Ñ Ù!Ñ ÙÑ ÙÑ Ù!Ñ Ù "Ñ Ù Ñ Ù!Ñ ÙÑ ÙÑ Ù"$Ñ Ù#%Ñ  Ù Ñ Ù!Ñ Ù Ñ Ù!Ñ Ù"$Ñ Ù!Ñ Ù Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù "Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù�Ù"$Ñ ÙÑ ÙÑ ÙÑ Ù�ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù!Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù!$Ñ ÙÑ Ù!$Ñ ÙÑ ÙÑ ÙÑ Ù!Ñ ÙÑ ÙÑ ÙÑ Ù"%Ñ ÙÑ Ù!$Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù�Ù�ÙÑ ÙÑ Ù�Ù Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù!$Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù"Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù!%Ñ ÙÑ Ù"Ñ Ù!Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù%)Ñ "Ù $Ñ ÙÑ ÙÑ Ù#Ñ Ù"Ñ Ù"Ñ ÙÑ ÙÑ ÙÑ Ù"Ñ Ù"Ñ Ù�ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù!Ñ Ù!Ñ Ù $Ñ Ù#Ñ Ù#Ñ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ Ù#Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù$(Ñ !Ù Ñ Ù!%Ñ Ù#Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù $Ñ Ù $Ñ ÙÑ ÙÑ Ù"Ñ Ù#'Ñ  Ù"&Ñ Ù!Ñ Ù#Ñ Ù#Ñ ÙÑ Ù&*Ñ #ÙÑ ÙÑ Ù $Ñ Ù $Ñ Ù!%Ñ Ù!%Ñ Ù&*Ñ #Ù $Ñ Ù#'Ñ  Ù#Ñ Ù $Ñ ÙÑ ÙÑ Ù#Ñ ÙÑ ÙÑ ÙÑ Ù%)Ñ "Ù$(Ñ !Ù"&Ñ Ù'+Ñ $ÙÑ ÙÑ ÙÑ ÙÑ Ù $Ñ ÙÑ Ù!Ñ ÙÑ ÙÑ Ù Ñ Ù!Ñ ÙÑ Ù Ñ ÙÑ ÙÑ ÙÑ Ù'+Ñ $ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù!Ñ ÙÑ Ù!Ñ Ù Ñ ÙÑ Ù Ñ ÙÑ Ù Ñ ÙÑ Ù�ÙÑ ÙÑ Ù%)Ñ "Ù $Ñ Ù#Ñ Ù!%Ñ Ù$(Ñ !ÙÑ ÙÑ Ù#Ñ Ù Ñ ÙÑ ÙÑ Ù"Ñ Ù"&Ñ ÙÑ ÙÑ ÙÑ Ù"Ñ Ù#Ñ ÙÑ Ù#Ñ ÙÑ ÙÑ Ù#Ñ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ ÙÑ Ù�Ù�Ù�Ù�Ù�Ù�ÙÑ Ù�Ù�Ù�Ù�Ù�Ù�ÙÑ Ù�Ù�Ù�
Ù�Ù�Ù�Ù�ÙÑ Ù�Ù�Ù�Ù�Ù�Ù�Ù�Ù�Ù�ÙÑ Ù�Ù�Ù�Ù�Ù�Ù�Ù�Ù�Ù�ÙÑ Ù�ÙÑ Ù�Ù�Ù�Ù�ÙÑ ÙÑ Ù�Ù�ÙÑ ÙÑ ÙÑ Ù�ÙÑ ÙÑ ÙÑ Ù#'Ñ  ÙÑ ÙÑ ÙÑ Ù!Ñ Ù!Ñ Ù Ñ Ù Ñ Ù $Ñ Ù!Ñ ÙÑ ÙÑ Ù"&Ñ Ù$(Ñ !Ù'+Ñ $Ù!Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù#Ñ Ù$(Ñ !Ù#'Ñ  Ù $Ñ Ù'+Ñ $Ù$(Ñ !Ù $Ñ Ù $Ñ Ù!Ñ Ù"&Ñ Ù!%Ñ Ù'+Ñ $Ù%)Ñ "Ù$(Ñ !Ù"Ñ ÙÑ Ù Ñ Ù"&Ñ Ù $Ñ Ù $Ñ Ù&*Ñ #Ù"&Ñ ÙÑ Ù#Ñ ÙÑ Ù"Ñ Ù'+Ñ $Ù $Ñ Ù#Ñ Ù $Ñ Ù)-Ñ &Ù!%Ñ Ù$(Ñ !Ù&*Ñ #Ù $Ñ Ù#'Ñ  Ù+/Ñ (Ù(,Ñ %Ù!%Ñ Ù&*Ñ #Ù"&Ñ Ù!%Ñ Ù"&Ñ Ù#'Ñ  Ù!%Ñ Ù%)Ñ "Ù+/Ñ (ÙÑ Ù(,Ñ %Ù$(Ñ !Ù%)Ñ "Ù*.Ñ 'Ù'+Ñ $ÙÑ Ù"&Ñ Ù!%Ñ Ù!Ñ ÙÑ Ù#Ñ ÙÑ Ù"Ñ Ù!Ñ Ù $Ñ Ù"&Ñ Ù!Ñ Ù!%Ñ ÙÑ Ù!Ñ Ù!Ñ Ù$(Ñ !Ù%)Ñ "Ù$(Ñ !ÙÑ Ù"&Ñ Ù#Ñ ÙÑ Ù+/Ñ (Ù'+Ñ $Ù.2Ñ +Ù'+Ñ $Ù $Ñ Ù"Ñ Ù!%Ñ Ù!%Ñ Ù!%Ñ Ù!%Ñ Ù!%Ñ Ù*.Ñ 'Ù.2Ñ +Ù.2Ñ +Ù,0Ñ )Ù*.Ñ 'Ù)-Ñ &Ù+/Ñ (Ù$(Ñ !Ù!Ñ Ù!Ñ Ù,0Ñ )Ù,0Ñ )Ù,0Ñ )Ù!%Ñ ÙÑ Ù!Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù!Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù'+Ñ $Ù'+Ñ $Ù'+Ñ $Ù!Ñ Ù!Ñ Ù"Ñ Ù#Ñ Ù"&Ñ Ù"&Ñ Ù%)Ñ "Ù%)Ñ "Ù%)Ñ "Ù%)Ñ "Ù$(Ñ !Ù'+Ñ $Ù $Ñ Ù$(Ñ !Ù#'Ñ  Ù#'Ñ  Ù#'Ñ  Ù#'Ñ  ÙÑ ÙÑ ÙÑ Ù Ñ Ù Ñ ÙÑ ÙÑ ÙÑ Ù Ñ Ù Ñ Ù Ñ Ù"Ñ Ù $Ñ Ù $Ñ ÙÑ ÙÑ Ù"Ñ Ù"Ñ Ù"Ñ Ù"Ñ Ù#'Ñ  Ù%)Ñ "Ù%)Ñ "Ù!%Ñ Ù#'Ñ  Ù#'Ñ  Ù"Ñ Ù'+Ñ $Ù!%Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù"Ñ ÙÑ ÙÑ Ù�ÙÑ ÙÑ Ù�ÙÑ Ù $Ñ Ù $Ñ Ù $Ñ Ù $Ñ ÙÑ Ù15Ñ .Ù.2Ñ +Ù37Ñ 0Ù!%Ñ Ù!%Ñ Ù!%Ñ Ù#'Ñ  Ù#'Ñ  Ù%)Ñ "Ù%)Ñ "Ù#'Ñ  Ù'+Ñ $Ù'+Ñ $Ù'+Ñ $Ù'+Ñ $Ù'+Ñ $Ù'+Ñ $Ù'+Ñ $Ù#'Ñ  Ù%)Ñ "Ù'+Ñ $Ù'+Ñ $Ù'+Ñ $Ù'+Ñ $Ù'+Ñ $Ù'+Ñ $Ù$(Ñ !Ù$(Ñ !Ù#'Ñ  Ù#Ñ Ù#'Ñ  Ù#Ñ Ù%)Ñ "Ù Ñ Ù"Ñ Ù"Ñ Ù Ñ Ù $Ñ Ù"&Ñ Ù"&Ñ Ù $Ñ Ù $Ñ Ù $Ñ Ù $Ñ Ù $Ñ ÙÑ Ù"Ñ Ù"Ñ Ù $Ñ Ù $Ñ Ù"Ñ ÙÑ ÙÑ Ù"&Ñ Ù$(Ñ !Ù&*Ñ #Ù&*Ñ #Ù"Ñ Ù!%Ñ Ù!Ñ Ù!Ñ ÙÑ Ù!Ñ Ù!Ñ ÙÑ Ù $Ñ Ù$(Ñ !Ù$(Ñ !Ù$(Ñ !Ù!%Ñ Ù!%Ñ ÙÑ Ù.2Ñ +Ù!%Ñ Ù $Ñ Ù"Ñ ÙÑ ÙÑ Ù#Ñ Ù$(Ñ !Ù$(Ñ !Ù'+Ñ $Ù#Ñ Ù!%Ñ Ù#Ñ Ù $Ñ Ù"Ñ ÙÑ ÙÑ Ù�ÙÑ ÙÑ Ù Ñ ÙÑ ÙÑ Ù Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ð �Ø�Ø�Ø�Ø�
Ù�ð Ñ ØÑ ØÑ ØÑ ð Ñ ØÑ ØÑ ØÑ ð Ñ ØÑ ØÑ ØÑ ØÑ Ù#$Ñ  ÙÑ Ù)*Ñ &ÙÑ ÙÑ Ù "Ñ Ù$&Ñ !ÙÑ ÙÑ Ù)+Ñ &Ù Ñ ÙÑ Ù"$Ñ ð Ñ ØÑ ØÑ ð Ñ ØÑ Ø�ØÑ ÙÑ Ù�Ù�ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù�ÙÑ ÙÑ Ù�ÙÑ ÙÑ ÙÑ ÙÑ ð Ñ ØÑ ØÑ ð �Ø�Ø�Ø�Ù�ÙÑ Ù�Ù�Ù�Ù�Ù�Ù�Ù�Ù�ÙÑ Ù�Ù�ÙÑ Ù�ÙÑ ÙÑ Ù�ÙÑ Ù�ÙÑ ÙÑ ÙÑ Ù�ÙÑ ÙÑ Ù�Ù�Ù�Ù�ð Ñ ØÑ ØÑ ØÑ ð Ñ ØÑ Ø!"Ñ ØÑ ØÑ ÙÑ Ù !Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ ÙÑ Ù!#Ñ ð  Ñ Ø"#Ñ ØÑ ØÑ ØÑ ÙÑ ð �Ø�Ø�Ø�ñ Ñ ØÑ ØÑ ØÑ ØÑ ØÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ ÙÑ ÙÑ ð �Ø�Ø�ØÑ Ø�Ù�Ù�Ù�Ù�Ù�Ù�ÙÑ Ù�ÙÑ Ù�ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù�Ù�Ù�Ù�Ù�Ù�Ù�ÙÑ Ù�Ù�ð �Ø�Ø�Ø�
Ù�ð Ñ ð !"Ñ Ø!"Ñ Ø !Ñ Ø!"Ñ ð Ñ ØÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ð �ØÑ ØÑ ØÑ ØÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ Ù Ñ Ù Ñ Ù Ñ Ù!Ñ ÙÑ ÙÑ ÙÑ Ù!Ñ Ù!Ñ Ù Ñ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ð Ñ ØÑ ØÑ ØÑ ð Ñ ØÑ ØÑ ØÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ð Ñ ØÑ ØÑ ÙÑ ÙÑ ÙÑ ÙÑ ð Ñ ØÑ ØÑ ØÑ ØÑ Ù'(Ñ $ÙÑ ÙÑ ð Ñ ØÑ ØÑ ØÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù!"Ñ Ù"$Ñ ÙÑ Ù Ñ ÙÑ ÙÑ ÙÑ Ù!#Ñ ÙÑ ÙÑ ÙÑ ÙÑ Ù "Ñ ÙÑ ÙÑ ÙÑ ÙÑ Ù "Ñ Ù $Ñ Ù $Ñ Ù $Ñ Ù $Ñ Ù#Ñ Ù"&Ñ ÙÑ Ù#Ñ Ù"Ñ ÙÑ Ù!Ñ Ù!Ñ Ù Ñ Ù#'Ñ  ð �ØÑ ð Ñ Ø�Ø�ØÑ ØÑ ÙÑ ð �ØÑ Ø�ð Ñ Ø�ØÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù�ÙÑ Ù�ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù�ÙÑ Ù�ÙÑ ÙÑ ÙÑ ð Ñ ØÑ ØÑ ØÑ ØÑ ð Ñ Ø�Ø�ÙÑ ÙÑ ÙÑ ÙÑ Ù�ð �ØÑ ØÑ ØÑ ð �Ø�Ø�Ø�Ø�Ù�Ù�ÙÑ Ù�Ù�ð Ñ ØÑ Ø!"Ñ ØÑ ØÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ ÙÑ Ù Ñ Ù Ñ Ù!Ñ Ù Ñ Ù Ñ Ù!#Ñ ÙÑ ÙÑ ÙÑ Ù Ñ Ù Ñ ÙÑ ÙÑ ÙÑ ÙÒ r   