+
    +O|jeo  ã            	       ó  € R t ^ RIt^ RIt^ RIHtHtHtHtHtH	t	 ^ RI
t^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt ! R R]P.                  P0                  4      t ! R R]P.                  P0                  4      tR t]]P8                  P:                  ]P<                  P>                  R,          ]P<                  P>                  R,          ]R,          ] ]!] ]!3,          t"R t# ! R	 R
4      t$ ! R R]PJ                  PL                  4      t' ! R R]PJ                  PP                  4      t)RR]PT                  PV                  ]PT                  PV                  RRR]P<                  PX                  R3	R R llt-R# )z
DNS Zones.N)ÚAnyÚIterableÚListÚSetÚTupleÚcastc                   ó   € ] tR t^&tRtRtR# )ÚUnknownOriginzUnknown origin© N©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__static_attributes__r
   ó    ÚEC:\Users\alokc\chatbot\backend\venv\Lib\site-packages\dns/zonefile.pyr	   r	   &   s   † Ýr   r	   c                   ó   € ] tR t^*tRtRtR# )ÚCNAMEAndOtherDataz!A node has a CNAME and other datar
   Nr   r
   r   r   r   r   *   s   † Ý+r   r   c                 ó  € \         P                  P                  P                  V4      pV P	                  V4      pVf   R # VP                  4       pV\         P                  P                  P                  8X  d5   V\         P                  P                  P                  8X  d   \        R4      hV\         P                  P                  P                  8X  d7   V\         P                  P                  P                  8X  d   \        R4      hR # R # )Nz1rdataset type is not compatible with a CNAME nodez9CNAME rdataset is not compatible with a regular data node)	ÚdnsÚnodeÚNodeKindÚclassify_rdatasetÚget_nodeÚclassifyÚCNAMEÚREGULARr   )ÚtxnÚnameÚrdatasetÚrdataset_kindr   Ú	node_kinds   &&&   r   Ú_check_cname_and_other_datar$   .   sÃ   € Ü—H‘H×%Ñ%×7Ñ7¸ÓA€MØ�<‰<˜Ó€DØ‚|áØ—‘“€Ià”S—X‘X×&Ñ&×,Ñ,Ô,ØœSŸX™X×.Ñ.×6Ñ6Ô6äÐ SÓTÐTà”S—X‘X×&Ñ&×.Ñ.Ô.ØœSŸX™X×.Ñ.×4Ñ4Ô4äØGó
ð 	
ñ 5ñ 	/r   c                 óf   € V P                  4       p V P                  R 4      '       g
   R V ,           p V # )Ú$)ÚupperÚ
startswith)Úss   &r   Ú_upper_dollarizer*   Q   s*   € Ø	�‰‹	€AØ�<‰<˜×ÒØ�!�GˆØ€Hr   c                   óv   a € ] tR t^Xt o RtRV 3R lR lltR tR tR tV 3R lR	 lt	R
 t
V 3R lR ltRtV tR# )ÚReaderz(Read a DNS zone file into a transaction.Nc                ó¬  <€ V ^8„  d   QhRS[ P                  P                  RS[ P                  P                  RS[ P
                  P                  RS[RS[S[S[	,          ,          RS[ P                  P                  R,          RS[R,          R	S[ P                  P                  R,          R
S[ P                  P                  R,          RS[R,          /
# )é   ÚtokÚrdclassr   Úallow_includeÚallow_directivesÚ
force_nameNÚ	force_ttlÚforce_rdclassÚforce_rdtypeÚdefault_ttl)r   Ú	tokenizerÚ	TokenizerÚ
rdataclassÚ
RdataClassÚtransactionÚTransactionÚboolr   Ústrr    ÚNameÚintÚ	rdatatypeÚ	RdataType)ÚformatÚ__classdict__s   "€r   Ú__annotate__ÚReader.__annotate__[   sÕ   ø€ ÷ 0Añ 0Aá�]‰]×$Ñ$ð0Añ —‘×*Ñ*ð0Añ �_‰_×(Ñ(ð	0Añ
 ð0Añ ¡©#¥Õ.ð0Añ —H‘H—M‘M DÕ(ð0Añ ˜•:ð0Añ —~‘~×0Ñ0°4Õ7ð0Añ —m‘m×-Ñ-°Õ4ð0Añ ˜4•Zñ0Ar   c                ót  € Wn         VP                  P                  4       w  V n        V n        pV P                  V n        ^ V n        RV n        Ve   Tp
V
f   ^ V n        RV n	        MW n        RV n	        V P
                  V n
        W n        W0n        . V n        RV n        V  VRJ d.   0 RmV n        V'       d   V P                  P!                  R4       M-VRJ d   \#        4       V n        M\#        R V 4       4      V n        W`n        Wpn        W€n        W�n        V P                  P-                  \.        4       R# )é    FNTú$INCLUDEc              3   ó8   "  € T F  p\        V4      x € K  	  R # 5i©N)r*   )Ú.0Úds   & r   Ú	<genexpr>Ú"Reader.__init__.<locals>.<genexpr>†   s   é € Ð)XÑGWÀ!Ô*:¸1×*=Ð*=ÓGWùs   ‚>   ú$TTLú$ORIGINú	$GENERATE)r/   ÚmanagerÚorigin_informationÚzone_originÚ
relativizeÚcurrent_originÚlast_ttlÚlast_ttl_knownr7   Údefault_ttl_knownÚ	last_nameÚzone_rdclassr   Úsaved_stateÚcurrent_fileÚallowed_directivesÚaddÚsetr3   r4   r5   r6   Úcheck_put_rdatasetr$   )Úselfr/   r0   r   r1   r2   r3   r4   r5   r6   r7   Ú_s   &&&&&&&&&&& r   Ú__init__ÚReader.__init__[   s  € ð ŒØ14·±×1OÑ1OÓ1QÑ.ˆÔ	˜4œ?¨AØ"×.Ñ.ˆÔØˆŒØ#ˆÔØÒ Ø#ˆKØÒØ ˆDÔØ%*ˆDÕ"à*ÔØ%)ˆDÔ"Ø×,Ñ,ˆŒØ#ÔØŒØ13ˆÔØ(,ˆÔÙØ˜tÓ#Ú&FˆDÔ#ßØ×'Ñ'×+Ñ+¨JÔ7øØ Ó&ô '*£eˆDÕ#ô '*Ñ)XÑGWÓ)XÓ&XˆDÔ#Ø$ŒØ"ŒØ*ÔØ(ÔØ�‰×#Ñ#Ô$?Ö@r   c                ól   €  V P                   P                  4       pVP                  4       '       g   K3  R# )é   N)r/   ÚgetÚis_eol_or_eof©rd   Útokens   & r   Ú	_eat_lineÚReader._eat_line�   s&   € ØØ—H‘H—L‘L“NˆEØ×"Ñ"×$Ô$Ùr   c                óš   € V P                   P                  4       pVP                  4       '       g   \        P                  P
                  hV# rL   )r/   rj   Úis_identifierr   Ú	exceptionÚSyntaxErrorrl   s   & r   Ú_get_identifierÚReader._get_identifier“   s5   € Ø—‘—‘“ˆØ×"Ñ"×$Ò$Ü—-‘-×+Ñ+Ð+Øˆr   c           	     ó  € RpV P                   e   V P                   pEM]V P                  f   \        hV P                  P	                  RR7      pVP                  4       '       g,   V P                  P                  WP                  4      V n        MMV P                  P	                  4       pVP                  4       '       d   R# V P                  P                  V4       V P                  pVf    \        P                  P                  R4      hV P                  f   Q hVP                  V P                  4      '       g   V P                  4        R# V P                   '       d   VP!                  V P                  4      pV P"                  e   V P"                  pW0n        RV n        MKV P)                  4       pRp \        P*                  P-                  VP.                  4      pW0n        RV n        RpV P2                  e   V P2                  pMiV P)                  4       p \        P4                  P-                  VP.                  4      pY@P8                  8w  d    \        P                  P                  R4      hVfL   V P)                  4       pRp \        P*                  P-                  VP.                  4      pW0n        RV n        RpV P>                  e   V P>                  pM:V P)                  4       p \        P@                  P-                  VP.                  4      p \        PB                  P-                  VVV P                  V P                  V P                   V P                  4      pT P:                  '       g€   T\        P@                  PJ                  8X  da   \M        \        PN                  PP                  PJ                  PJ                  T4      p	T	PR                  T n        RT n        Tf   T	PR                  pTf    \        P                  P                  R4      hT PT                  PW                  Y#T4       R#   \        P*                  P0                   d     T P                  P                  T4        EL„i ; i  \        P                  P                   d    h \6         d,    T P8                  pT P                  P                  T4        EL‡i ; i  \        P*                  P0                   d]    T P:                  '       d   T P<                  pMT P&                  '       d   T P$                  pT P                  P                  T4        EL‡i ; i  \6         d/    \        P                  P                  RTP.                   R24      hi ; i  \        P                  P                   d    h \6         dW    \D        PF                  ! 4       R,          w  rx\        P                  P                  R	\I        T4       R
\I        T4       24      hi ; i)z&Process one line from a DNS zone file.NT)Úwant_leadingzthe last used name is undefinedúRR class is not zone's classúunknown rdatatype 'Ú'ºNr.   Núcaught exception ú: úMissing default TTL value),r3   rX   r	   r/   rj   Úis_whitespaceÚas_namer\   rk   Úungetr   rr   rs   rV   Úis_subdomainrn   rW   r4   rY   rZ   rt   ÚttlÚ	from_textÚvalueÚBadTTLr5   r:   Ú	Exceptionr]   r[   r7   r6   rB   ÚrdataÚsysÚexc_infor?   ÚSOAr   ÚrdtypesÚANYÚminimumr   ra   )
rd   rm   r    rƒ   r0   ÚrdtypeÚrdÚtyÚvaÚsoa_rds
   &         r   Ú_rr_lineÚReader._rr_line™   s—  € àˆà�?‰?Ò&Ø—?‘?ŠDà×"Ñ"Ò*Ü#Ð#Ø—H‘H—L‘L¨d�LÓ3ˆEØ×&Ñ&×(Ò(Ø!%§¡×!1Ñ!1°%×9LÑ9LÓ!M�•àŸ™Ÿ™›�Ø×&Ñ&×(Ò(áØ—‘—‘˜uÔ%Ø—>‘>ˆDØŠ|Ü—m‘m×/Ñ/Ð0QÓRÐRØ×#Ñ#Ò/Ð/Ð/Ø×$Ñ$ T×%5Ñ%5×6Ò6Ø—‘Ô ÙØ��ˆØ—‘ t×'7Ñ'7Ó8�ð �>‰>Ò%Ø—.‘.ˆCØŒMØ"&ˆDÕà×(Ñ(Ó*ˆEØˆCð&Ü—g‘g×'Ñ'¨¯©Ó4�Ø #”Ø&*�Ô#Ø�ð
 ×ÑÒ)Ø×(Ñ(‰Gà×(Ñ(Ó*ˆEð&ÜŸ.™.×2Ñ2°5·;±;Ó?�ð ×+Ñ+Ô+Ü—m‘m×/Ñ/Ð0NÓOÐOàŠ;à×(Ñ(Ó*ˆEØˆCð
&Ü—g‘g×'Ñ'¨¯©Ó4�Ø #”Ø&*�Ô#Ø�ð ×ÑÒ(Ø×&Ñ&‰Fà×(Ñ(Ó*ˆEðVÜŸ™×0Ñ0°·±Ó=�ð	VÜ—‘×$Ñ$ØØØ—‘Ø×#Ñ#Ø—‘Ø× Ñ óˆBð( ×%×%Ð%¨&´C·M±M×4EÑ4EÔ*Eô œ#Ÿ+™+Ÿ/™/×-Ñ-×1Ñ1°2Ó6ˆFØ%Ÿ~™~ˆDÔØ%)ˆDÔ"ØŠ{à—n‘n�ð Š;Ü—-‘-×+Ñ+Ð,GÓHÐHà�‰�‰�T Ö#øôc —7‘7—>‘>ô &Ø—‘—‘˜u×%ð&ûô —=‘=×,Ñ,ô ØÜô &Ø×+Ñ+�Ø—‘—‘˜u×%ð&ûô —7‘7—>‘>ô &Ø×)×)Ð)Ø×*Ñ*‘CØ×(×(Ð(ØŸ-™-�CØ—‘—‘˜u×%ð&ûô ô VÜ—m‘m×/Ñ/Ð2EÀeÇkÁkÀ]ÐRSÐ0TÓUÐUðVûô �}‰}×(Ñ(ô 	àÜô 	Vô —|’|“~ bÕ)‰HˆRÜ—-‘-×+Ñ+Ð.?ÄÀBÃ¸yÈÌ3ÈrË7È)Ð,TÓUÐUð	Vúsh   Æ78P6 È)Q7 Ê
8S Ë.)U ÌAV	 Ð6:Q4Ñ3Q4Ñ7(SÒ (SÓSÓ0U
Ô U
Ô'U
Õ	U
Õ9VÖ	(X	Ö2AX	c          	      óH   <€ V ^8„  d   QhRS[ RS[S[ S[ S[S[S[ 3,          /# )r.   ÚsideÚreturn)r?   r   rA   )rD   rE   s   "€r   rF   rG     s+   ø€ ÷ +0ñ +0¡#ð +0©%±±S¹#¹sÁCÐ0GÕ*Hñ +0r   c                óÄ  € \         P                  ! R 4      p\         P                  ! R4      p\         P                  ! R4      pRpRpRpRpRp	VP                  V4      p
V
'       d   V
P                  4       w  rVrxp	VR8X  d   RpMqVP                  V4      pV'       d"   VP                  4       w  rVpVR8X  d   RpRpRp	M7VP                  V4      pV'       d   VP                  4       w  rVrxVR8X  d   RpRp	\	        V4      p\	        V4      pVR	9  d#   \
        P                  P                  RV 24      hV	R
9  d#   \
        P                  P                  RV	 24      hWVWÞV	3# )z"^.*\$({(\+|-?)(\d+),(\d+),(.)}).*$z^.*\$({(\+|-?)(\d+)}).*$z^.*\$({(\+|-?)(\d+),(\d+)}).*$Ú Ú+Ú0rN   zinvalid offset sign zinvalid type )r›   Ú-)rN   ÚoÚxÚXÚnÚN)ÚreÚcompileÚmatchÚgroupsrA   r   rr   rs   )rd   r—   Úis_generate1Úis_generate2Úis_generate3ÚmodÚsignÚoffsetÚwidthÚbaseÚg1Úg2Úg3ÚioffsetÚiwidths   &&             r   Ú_parse_modifyÚReader._parse_modify  sT  € ô —z’zÐ"GÓHˆÜ—z’zÐ"=Ó>ˆÜ—z’zÐ"CÓDˆð ˆØˆØˆØˆØˆØ×Ñ Ó%ˆßØ-/¯Y©Y«[Ñ*ˆC�v dØ�rŒzØ�øà×#Ñ# DÓ)ˆBßØ$&§I¡I£KÑ!�˜6Ø˜2”:Ø�DØ�Ø‘à!×'Ñ'¨Ó-�ßØ/1¯y©y«{Ñ,�C˜vØ˜r”zØ"˜Ø�Dä�f“+ˆÜ�U“ˆà�zÔ!Ü—-‘-×+Ñ+Ð.BÀ4À&Ð,IÓJÐJØÐ5Ô5Ü—-‘-×+Ñ+¨m¸D¸6Ð,BÓCÐCà˜'¨4Ð/Ð/r   c           
     ó@  a€ V P                   f   \        hV P                  P                  4       p \        P
                  P                  VP                  4      w  r#pV P                  P                  4       pVP                  4       '       g   \        P                  P                  h  TP                  pT P                  P                  4       pTP                  4       '       g   \        P                  P                  h  \        P                  P                  TP                  4      pY`n        RT n        T P                  P                  4       pTP                  4       '       g   \        P                  P                  h  \        P$                  P                  TP                  4      pT P                  P                  4       pTP                  4       '       g   \        P                  P                  h YpP&                  8w  d    \        P                  P                  R4      h \        P(                  P                  TP                  4      pT P                  P                  4       pTP                  4       '       g   \        P                  P                  h TP                  p	R R lp
R	 T3R
 lloT P+                  T4      w  r¼rÞpT P+                  T	4      w  ppppp\-        Y#^,           T4       EFu  pT
! TYÍ4      pT
! TTT4      pS! TYþ4      pS! TTT4      pTP/                  RT 2T4      pT	P/                  RT 2T4      p\        P0                  P                  TT P                   T P                  P2                  4      T n        T P4                  pT P6                  f   Q hTP9                  T P6                  4      '       g   T P;                  4         R# T P<                  '       d   TP=                  T P6                  4      p \        P>                  P                  TTTT P                   T P<                  T P6                  4      pT PF                  PI                  TTT4       EKx  	  R#   \         d    \        P                  P                  hi ; i  \         d    \        P                  P                  hi ; i  \        P                  P                   d¦    T P                  '       g2   T P                   '       g    \        P                  P                  R4      hT P                   '       d   T P"                  p ELÄT P                  '       d   T P                  p ELå\        P                  P                  R4      hi ; i  \        P                  P                   d    \        P                  P                  h\         d    T P&                  p ELåi ; i  \         d/    \        P                  P                  RTP                   R24      hi ; i  \        P                  P                   d    h \         dX    \@        PB                  ! 4       R,          w  pp\        P                  P                  R\E        T4       R\E        T4       24      hi ; i)zHProcess one line containing the GENERATE statement from a DNS
zone file.NTr~   rx   ry   rz   c                óH   € V ^8„  d   QhR\         R\        R\         R\         /# )r.   ÚcounterÚoffset_signr¬   r˜   ©rA   r?   )rD   s   "r   rF   Ú+Reader._generate_line.<locals>.__annotate__‰  s(   € ÷ 	$ñ 	$¤cð 	$¼ð 	$ÄSð 	$ÌSñ 	$r   c                ó2   € VR8X  d
   VR,          pW,           # )z0Calculate the index from the counter and offset.r�   éÿÿÿÿr
   )r¸   r¹   r¬   s   &&&r   Ú_calculate_indexÚ/Reader._generate_line.<locals>._calculate_index‰  s   € à˜cÔ!Ø˜"•�ØÕ#Ð#r   c                óH   € V ^8„  d   QhR\         R\        R\         R\        /# )r.   Úindexr®   r­   r˜   rº   )rD   s   "r   rF   r»   �  s(   € ÷ 	ñ 	¤ð 	¬Cð 	¼ð 	Äñ 	r   c                óÈ   <€ VR9   d   \        W4      P                  V4      # S! V RV4      pRP                  VRRR1,          4      RV pVR8X  d   VP                  4       pV# )zJFormat the index with the given base, and zero-fill it
to the given width.rŸ   Ú.Nr¢   )rN   rž   rŸ   r    r½   )rD   ÚzfillÚjoinr'   )rÁ   r®   r­   ÚhexaÚnibblesÚ_format_indexs   &&&  €r   rÈ   Ú,Reader._generate_line.<locals>._format_index�  sh   ø€ ð Ð+Ô+Ü˜eÓ*×0Ñ0°Ó7Ð7ñ ! ¨¨UÓ3ˆDØ—h‘h˜t¡D b D�zÓ*¨6¨EÐ2ˆGØ�sŒ{Ø!Ÿ-™-›/�ØˆNr   r&   r{   r|   r}   )%rX   r	   r/   rj   r   Úgranger„   r…   rq   rr   rs   r‡   rƒ   rY   rZ   r†   r[   r7   r:   r]   rB   r´   ÚrangeÚreplacer    Ú
idna_codecr\   rV   r‚   rn   rW   rˆ   r‰   rŠ   r?   r   ra   ) rd   rm   ÚstartÚstopÚstepÚlhsrƒ   r0   r�   Úrhsr¾   ÚlmodÚlsignÚloffsetÚlwidthÚlbaseÚrmodÚrsignÚroffsetÚrwidthÚrbaseÚiÚlindexÚrindexÚlzfindexÚrzfindexr    rˆ   r�   r‘   r’   rÈ   s    &                              @r   Ú_generate_lineÚReader._generate_lineB  s+  ø€ ð ×ÑÒ&ÜÐà—‘—‘“ˆð	,Ü #§
¡
× 4Ñ 4°U·[±[Ó AÑˆE˜Ø—H‘H—L‘L“NˆEØ×&Ñ&×(Ò(Ü—m‘m×/Ñ/Ð/ð )ð	,Ø—+‘+ˆCØ—H‘H—L‘L“NˆEØ×&Ñ&×(Ò(Ü—m‘m×/Ñ/Ð/ð )ð	MÜ—'‘'×#Ñ# E§K¡KÓ0ˆCØŒMØ"&ˆDÔØ—H‘H—L‘L“NˆEØ×&Ñ&×(Ò(Ü—m‘m×/Ñ/Ð/ð )ð 	(Ü—n‘n×.Ñ.¨u¯{©{Ó;ˆGØ—H‘H—L‘L“NˆEØ×&Ñ&×(Ò(Ü—m‘m×/Ñ/Ð/ð )ð ×'Ñ'Ô'Ü—-‘-×+Ñ+Ð,JÓKÐKð	RÜ—]‘]×,Ñ,¨U¯[©[Ó9ˆFØ—H‘H—L‘L“NˆEØ×&Ñ&×(Ò(Ü—m‘m×/Ñ/Ð/ð )ð �k‰kˆõ	$÷	ð 	ð /3×.@Ñ.@ÀÓ.EÑ+ˆ�W eØ.2×.@Ñ.@ÀÓ.EÑ+ˆˆe�W˜f eÜ�u Q�h¨×-ˆAñ & a¨Ó8ˆFÙ% a¨°Ó8ˆFá$ V¨UÓ;ˆHÙ$ V¨U°FÓ;ˆHà—;‘;  4 &˜z¨8Ó4ˆDØ—K‘K ! D 6 
¨HÓ5ˆEä ŸX™X×/Ñ/Ø�d×)Ñ)¨4¯8©8×+>Ñ+>óˆDŒNð —>‘>ˆDØ×#Ñ#Ò/Ð/Ð/Ø×$Ñ$ T×%5Ñ%5×6Ò6Ø—‘Ô ÚØ��ˆØ—‘ t×'7Ñ'7Ó8�ðÜ—Y‘Y×(Ñ(ØØØØ×'Ñ'Ø—O‘OØ×$Ñ$ó�ð, �H‰H�L‰L˜˜s B×'ó] .øô] ô 	,Ü—-‘-×+Ñ+Ð+ð	,ûô ô 	,Ü—-‘-×+Ñ+Ð+ð	,ûô �w‰w�~‰~ô 	MØ×'×'Ð'¨4×+A×+AÐ+AÜ—m‘m×/Ñ/Ð0KÓLÐLØ×%×%Ð%Ø×&Ñ&“Ø×$×$Ð$Ø—m‘m“ô
 —m‘m×/Ñ/Ð0KÓLÐLð	Mûô& �}‰}×(Ñ(ô 	,Ü—-‘-×+Ñ+Ð+Üô 	(Ø×'Ñ'‹Gð	(ûô ô 	RÜ—-‘-×+Ñ+Ð.AÀ%Ç+Á+ÀÈaÐ,PÓQÐQð	Rûôv —=‘=×,Ñ,ô àÜô 	ô Ÿ<š<›>¨"Õ-‘��RÜ—m‘m×/Ñ/Ø'¬¨B« y°´3°r³7°)Ð<óð ð	ús–   ±A6Q1 Â);R Ã%R ÄB S ÆAV
 ÇV
 È'AW  Ê W  ÐAXÑ1&RÒ&S Ó0VÓ4VÔ0VÔ7VÕVÕVÕ' VÖ
AW×W×W× 9XØ(ZÙAZc                ó   <€ V ^8„  d   QhRR/# )r.   r˜   Nr
   )rD   rE   s   "€r   rF   rG   Î  s   ø€ ÷ `2ñ `2�dñ `2r   c           
     ó  €   V P                   P                  RR4      pVP                  4       '       d“   V P                  e   V P                  P	                  4        \        V P                  4      ^ 8”  dO   V P                  P                  R4      w  V n         V n        V n	        V n        V n
        V n        V n        V n        KÃ  R# VP                  4       '       d   KÝ  VP                  4       '       d   V P                   P!                  4        EK  VP"                  ^ ,          R8X  Ed’   \        V P$                  4      ^ 8”  Edw   VP"                  P'                  4       pW P$                  9  d$   \(        P*                  P-                  RV R24      hVR8X  d¡   V P                   P                  4       pVP/                  4       '       g    \(        P*                  P-                  R4      h\(        P0                  P3                  VP"                  4      V n        RV n        V P                   P!                  4        EMVR8X  d€   V P                   P5                  4       V n        V P                   P!                  4        V P6                  f   V P                  V n        V P8                  P;                  V P                  4       EMùVR	8X  Ed·   V P                   P                  4       pVP"                  pV P                   P                  4       pVP/                  4       '       de   \(        P<                  P3                  VP"                  V P                  V P                   P>                  4      pV P                   P!                  4        MAVPA                  4       '       g    \(        P*                  P-                  R
4      hV P                  pV P                  PC                  V P                   V P                  V P                  V P                  V P                  V P                  V P                  V P                  34       \E        VRR7      V n        \(        PF                  PI                  V P                  V4      V n         W@n        M;VR8X  d   V PK                  4        M#\(        P*                  P-                  RV R24      hEKº  V P                   PM                  V4       V PO                  4        EKè    \(        P*                  P,                   d}   pT P                   PQ                  4       w  r6Tf   Rp\(        P*                  P-                  T RT RT 24      p\R        PT                  ! 4       ^,          pTPW                  T4      RhRp?ii ; i)z®Read a DNS zone file and build a zone object.

@raises dns.zone.NoSOA: No SOA RR was found at the zone origin
@raises dns.zone.NoNS: No NS RRset was found at the zone origin
TNr&   zzone file directive 'z' is not allowedrQ   zbad $TTLrR   rJ   zbad origin in $INCLUDEzutf-8)ÚencodingrS   zUnknown zone file directive 'rz   zsyntax errorÚ:r}   r½   ),r/   rj   Úis_eofr_   ÚcloseÚlenr^   ÚpoprX   r\   rY   rZ   r7   r[   Úis_eolÚ
is_commentÚget_eolr…   r`   r'   r   rr   rs   rq   rƒ   r„   Úget_namerV   r   Ú_set_originr    rÍ   rk   ÚappendÚopenr8   r9   râ   r�   r”   Úwherer‰   rŠ   Úwith_traceback)	rd   rm   ÚcÚfilenameÚ
new_originÚdetailÚline_numberÚexÚtbs	   &        r   ÚreadÚReader.readÎ  s  € ðY	2ØØŸ™Ÿ™ T¨4Ó0�Ø—<‘<—>’>Ø×(Ñ(Ò4Ø×)Ñ)×/Ñ/Ô1Ü˜4×+Ñ+Ó,¨qÔ0ð !×,Ñ,×0Ñ0°Ó4ñ	Ø œHØ Ô/Ø œNØ Ô-Ø œMØ Ô/Ø Ô,Ø Ô2á ÙØ—\‘\—^’^ÙØ×%Ñ%×'Ò'Ø—H‘H×$Ñ$Ô&ÚØ—[‘[ •^ sÕ*¬s°4×3JÑ3JÓ/KÈaÕ/Oð Ÿ™×)Ñ)Ó+�AØ× 7Ñ 7Ô7Ü!Ÿm™m×7Ñ7Ø3°A°3Ð6FÐGóð ð ˜F”{Ø $§¡§¡£˜Ø$×2Ñ2×4Ò4Ü"%§-¡-×";Ñ";¸JÓ"GÐGÜ+.¯7©7×+<Ñ+<¸U¿[¹[Ó+I˜Ô(Ø15˜Ô.ØŸ™×(Ñ(Ö*Ø˜iœØ.2¯h©h×.?Ñ.?Ó.A˜Ô+ØŸ™×(Ñ(Ô*Ø×+Ñ+Ò3Ø/3×/BÑ/B˜DÔ,ØŸ™×,Ñ,¨T×-@Ñ-@ÖAØ˜j�Ø $§¡§¡£˜Ø#(§;¡;˜Ø $§¡§¡£˜à ×.Ñ.×0Ò0Ü),¯©×);Ñ);Ø %§¡¨T×-@Ñ-@À$Ç(Á(×BUÑBUó*˜Jð !ŸH™H×,Ñ,Õ.Ø!&×!4Ñ!4×!6Ò!6Ü"%§-¡-×";Ñ";Ð<TÓ"UÐUà)-×)<Ñ)<˜JØ×(Ñ(×/Ñ/à $§¡Ø $× 3Ñ 3Ø $§¡Ø $× 1Ñ 1Ø $§¡Ø $× 3Ñ 3Ø $× 0Ñ 0Ø $× 6Ñ 6ð	ôô -1°ÀGÔ,L˜Ô)Ü#&§=¡=×#:Ñ#:¸4×;LÑ;LÈhÓ#W˜œØ.8Õ+Ø˜kÔ)Ø×+Ñ+Õ-ä!Ÿm™m×7Ñ7Ø;¸A¸3¸aÐ@óð ò Ø—‘—‘˜uÔ%Ø—‘—øÜ�}‰}×(Ñ(ô 	2Ø&*§h¡h§n¡nÓ&6Ñ#ˆXØŠ~Ø'�Ü—‘×*Ñ*¨h¨Z°q¸¸ÀRÈÀxÐ+PÓQˆBÜ—’“ Õ"ˆBØ×#Ñ# BÓ'¨TÐ1ûð	2úsF   ‚2S* µBS* ÃS* ÃS* Ã5CS* Ç
ES* ÌA9S* ÎES* Ó*VÔ	A7V Ö V)r`   r_   rX   r7   r[   r3   r5   r6   r4   r\   rY   rZ   rW   r^   r/   r   rV   r]   )FTNNNNN)r   r   r   r   r   rf   rn   rt   r”   r´   râ   rü   r   Ú__classdictcell__©rE   s   @r   r,   r,   X   sD   ø‡ € Ù2÷0Aò 0Aòdòòz$÷x+0ð +0òZJ(÷X`2ö `2r   r,   c                   ót   a a€ ] tR tRt oV 3R ltR tR tR tR tR t	R t
R	 tR
 tR tR tR tRtVtV ;t# )ÚRRsetsReaderTransactioni1  c                óJ   <€ V'       d   Q h\         SV `  WV4       / V n        R # rL   )Úsuperrf   Ú	rdatasets)rd   rT   ÚreplacementÚ	read_onlyÚ	__class__s   &&&&€r   rf   Ú RRsetsReaderTransaction.__init__2  s!   ø€ ßÐˆ}Ü‰Ñ˜¨yÔ9ØˆŽr   c                ó<   € V P                   P                  WV34      # rL   )r  rj   ©rd   r    r�   Úcoverss   &&&&r   Ú_get_rdatasetÚ%RRsetsReaderTransaction._get_rdataset7  s   € Ø�~‰~×!Ñ! 4°Ð"8Ó9Ð9r   c                óö   € . pV P                   P                  4        F"  w  w  p rEW8X  g   K  VP                  V4       K$  	  \        V4      ^ 8X  d   R# \        P
                  P                  4       pW&n         V# ©rI   N)r  Úitemsrñ   rê   r   r   ÚNode)rd   r    r  Úrdataset_namere   r!   r   s   &&     r   Ú	_get_nodeÚ!RRsetsReaderTransaction._get_node:  sg   € Øˆ	Ø/3¯~©~×/CÑ/CÖ/EÑ+Ñ!ˆ]˜A˜qØÖ$Ø× Ñ  Ö*ñ 0Fô ˆy‹>˜QÔÙÜ�x‰x�}‰}‹ˆØ"ŒØˆr   c                óN   € W P                   WP                  VP                  3&   R # rL   )r  r�   r  )rd   r    r!   s   &&&r   Ú_put_rdatasetÚ%RRsetsReaderTransaction._put_rdatasetE  s   € ØCK�‰˜Ÿo™o¨x¯©Ð?Ó@r   c                óÂ   € . pV P                    F$  pV^ ,          V8X  g   K  VP                  V4       K&  	  \        V4      ^ 8”  d   V F  pV P                   V K  	  R# R# r  )r  rñ   rê   )rd   r    ÚremoveÚkeys   &&  r   Ú_delete_nameÚ$RRsetsReaderTransaction._delete_nameH  sT   € àˆØ—>”>ˆCØ�1�v˜Ž~Ø—‘˜cÖ"ñ "ô ˆv‹;˜Œ?Û�Ø—N‘N 3Ò'ó ñ r   c                óJ   €  V P                   WV3 R #   \         d     R # i ; irL   )r  ÚKeyErrorr
  s   &&&&r   Ú_delete_rdatasetÚ(RRsetsReaderTransaction._delete_rdatasetR  s*   € ð	Ø—‘ ¨fÐ5Ò6øÜô 	Úð	ús   ‚ “"¡"c                óF   € V P                    F  w  p pW!8X  g   K   R # 	  R# ©TF©r  )rd   r    r¡   re   s   &&  r   Ú_name_existsÚ$RRsetsReaderTransaction._name_existsX  s#   € Ø—~”~‰GˆAˆq�!ØŽyÚñ &ñ r   c                ó2   € \        V P                  4      ^ 8„  # )rI   )rê   r  ©rd   s   &r   Ú_changedÚ RRsetsReaderTransaction._changed^  s   € Ü�4—>‘>Ó" QÑ&Ð&r   c                ó”  € V'       dÀ   V P                  4       '       d¨   . pV P                  P                  4        Fj  w  w  p rE\        P                  P                  W5P                  VP                  VP                  4      pVP                  V4       VP                  V4       Kl  	  V P                  P                  V4       R # R # R # rL   )r(  r  r  r   ÚrrsetÚRRsetr0   r�   r  Úupdaterñ   rT   Ú
set_rrsets)rd   ÚcommitÚrrsetsr    re   r!   r+  s   &&     r   Ú_end_transactionÚ(RRsetsReaderTransaction._end_transactiona  s‘   € ß�d—m‘m—o’oØˆFØ*.¯.©.×*>Ñ*>Ö*@Ñ&‘��q˜!ÜŸ	™	Ÿ™Ø×*Ñ*¨H¯O©O¸X¿_¹_ó�ð —‘˜XÔ&Ø—‘˜eÖ$ñ +Að �L‰L×#Ñ# FÖ+ñ &‰6r   c                ó   € R # rL   r
   )rd   Úorigins   &&r   rð   Ú#RRsetsReaderTransaction._set_originl  s   € Ùr   c                ó   € \         hrL   ©ÚNotImplementedErrorr'  s   &r   Ú_iterate_rdatasetsÚ*RRsetsReaderTransaction._iterate_rdatasetso  ó   € Ü!Ð!r   c                ó   € \         hrL   r7  r'  s   &r   Ú_iterate_namesÚ&RRsetsReaderTransaction._iterate_namesr  r;  r   r#  )r   r   r   r   rf   r  r  r  r  r  r$  r(  r1  rð   r9  r=  r   rþ   Ú__classcell__)r  rE   s   @@r   r  r  1  sG   ù‡ € õò
:ò	òLò(òòò'ò	,òò"÷"ò "r   r  c                   óº   a € ] tR tRt o ]P
                  P                  R]P                  P                  3V 3R lR llt	R t
RR ltR tR tV 3R	 lR
 ltRtV tR# )ÚRRSetsReaderManageriv  Fc                óŠ   <€ V ^8„  d   QhRS[ P                  P                  R,          RS[RS[ P                  P
                  /# )r.   r4  NrW   r0   )r   r    r@   r>   r:   r;   )rD   rE   s   "€r   rF   Ú RRSetsReaderManager.__annotate__w  s@   ø€ ÷ 	0ñ 	0á—‘—‘ Õ$ð	0ñ ð	0ñ —‘×*Ñ*ñ		0r   c                ó8   € Wn         W n        W0n        . V n        R # rL   )r4  rW   r0   r0  )rd   r4  rW   r0   s   &&&&r   rf   ÚRRSetsReaderManager.__init__w  s   € ð ŒØ$ŒØŒØ-/ˆŽr   c                ó   € \         hrL   r7  r'  s   &r   ÚreaderÚRRSetsReaderManager.reader‚  r;  r   c                ó,   € VR J g   Q h\        V R R4      # r"  )r  )rd   r  s   &&r   ÚwriterÚRRSetsReaderManager.writer…  s   € Ø˜dÓ"Ð"Ð"Ü& t¨T°5Ó9Ð9r   c                ó   € V P                   # rL   )r0   r'  s   &r   Ú	get_classÚRRSetsReaderManager.get_class‰  s   € Ø�|‰|Ðr   c                ó¦   € V P                   '       d   \        P                  P                  pMV P                  pV P                  V P                   V3# rL   )rW   r   r    Úemptyr4  )rd   Ú	effectives   & r   rU   Ú&RRSetsReaderManager.origin_informationŒ  s6   € Ø�?�?ˆ?ÜŸ™Ÿ™‰IàŸ™ˆIØ—‘˜TŸ_™_¨iÐ8Ð8r   c                ó\   <€ V ^8„  d   QhRS[ S[P                  P                  ,          RR/# )r.   r0  r˜   N)r   r   r+  r,  )rD   rE   s   "€r   rF   rC  “  s(   ø€ ÷ ñ ¡¡c§i¡i§o¡oÕ!6ð ¸4ñ r   c                ó   € Wn         R # rL   )r0  )rd   r0  s   &&r   r.  ÚRRSetsReaderManager.set_rrsets“  s   € ØŽr   )r4  r0   rW   r0  N)F)r   r   r   r   r   r    Úrootr:   ÚINrf   rG  rJ  rM  rU   r.  r   rþ   rÿ   s   @r   rA  rA  v  sJ   ø‡ € ð (+§x¡x§}¡}Ø Ø-0¯^©^×->Ñ->÷		0ò 	0ò"ô:òò9÷ö r   rA  Fc                ó°  € V ^8„  d   QhR\         R\        P                  P                  \        ,          R,          R\
        R,          R\        P                  P                  \        ,          R,          R\        P                  P                  \        ,          R\        P                  P                  \        ,          R,          R\
        \        ,          R,          R	\        P                  P                  R,          R
\        P                  P                  \        ,          R,          R\        R\        \        P                  P                  ,          /# )r.   Útextr    Nrƒ   r0   Údefault_rdclassr�   r7   rÍ   r4  rW   r˜   )r   r   r    r@   r?   rA   r:   r;   rB   rC   Ú	IDNACodecr>   r   r+  r,  )rD   s   "r   rF   rF   —  s  € ÷ ]ñ ]Ü
ð]ä
�(‰(�-‰-œ#Õ
 Õ
$ð]ô 
ˆt�ð]ô �^‰^×&Ñ&¬Õ,¨tÕ3ð	]ô
 —^‘^×.Ñ.´Õ4ð]ô �M‰M×#Ñ#¤cÕ)¨DÕ0ð]ô ”s•˜TÕ!ð]ô —‘×"Ñ" TÕ)ð]ô �H‰H�M‰MœCÕ $Õ&ð]ô ð]ô 
Œ#�)‰)�/‰/Õñ]r   c
                ó.  € \        V\        4      '       d:   \        P                  P	                  V\        P                  P
                  V4      p\        V\        4      '       d!   \        P                  P	                  WV4      p\        V\        4      '       d    \        P                  P	                  V4      p\        V\        4      '       d    \        P                  P	                  V4      pVe+   \        P                  P                  P                  V4      pMRp\        P                  P                  P                  V4      pVe+   \        P                  P                  P                  V4      pMRp\        W‰V4      p
V
P                  R4      ;_uu_ 4       p\        P                  P                  V RVR7      p\!        VVVRVVVVVR7	      pVP#                  4        RRR4       V
P$                  #   + '       g   i     T
P$                  # ; i)aù  Read one or more rrsets from the specified text, possibly subject
to restrictions.

*text*, a file object or a string, is the input to process.

*name*, a string, ``dns.name.Name``, or ``None``, is the owner name of
the rrset.  If not ``None``, then the owner name is "forced", and the
input must not specify an owner name.  If ``None``, then any owner names
are allowed and must be present in the input.

*ttl*, an ``int``, string, or None.  If not ``None``, the the TTL is
forced to be the specified value and the input must not specify a TTL.
If ``None``, then a TTL may be specified in the input.  If it is not
specified, then the *default_ttl* will be used.

*rdclass*, a ``dns.rdataclass.RdataClass``, string, or ``None``.  If
not ``None``, then the class is forced to the specified value, and the
input must not specify a class.  If ``None``, then the input may specify
a class that matches *default_rdclass*.  Note that it is not possible to
return rrsets with differing classes; specifying ``None`` for the class
simply allows the user to optionally type a class as that may be convenient
when cutting and pasting.

*default_rdclass*, a ``dns.rdataclass.RdataClass`` or string.  The class
of the returned rrsets.

*rdtype*, a ``dns.rdatatype.RdataType``, string, or ``None``.  If not
``None``, then the type is forced to the specified value, and the
input must not specify a type.  If ``None``, then a type must be present
for each RR.

*default_ttl*, an ``int``, string, or ``None``.  If not ``None``, then if
the TTL is not forced and is not specified, then this value will be used.
if ``None``, then if the TTL is not forced an error will occur if the TTL
is not specified.

*idna_codec*, a ``dns.name.IDNACodec``, specifies the IDNA
encoder/decoder.  If ``None``, the default IDNA 2003 encoder/decoder
is used.  Note that codecs only apply to the owner name; dnspython does
not do IDNA for names in rdata, as there is no IDNA zonefile format.

*origin*, a string, ``dns.name.Name``, or ``None``, is the origin for any
relative names in the input, and also the origin to relativize to if
*relativize* is ``True``.

*relativize*, a bool.  If ``True``, names are relativized to the *origin*;
if ``False`` then any relative names in the input are made absolute by
appending the *origin*.
NTz<input>)rÍ   F)r2   r3   r4   r5   r6   r7   )Ú
isinstancer?   r   r    r„   rV  rƒ   r:   r;   ÚmakerB   rC   rA  rJ  r8   r9   r,   rü   r0  )rY  r    rƒ   r0   rZ  r�   r7   rÍ   r4  rW   rT   r   r/   rG  s   &&&&&&&&&&    r   Úread_rrsetsr_  —  s‰  € ôz �&œ#×ÒÜ—‘×#Ñ# F¬C¯H©H¯M©M¸:ÓFˆÜ�$œ×ÒÜ�x‰x×!Ñ! $°
Ó;ˆÜ�#”s×ÒÜ�g‰g×Ñ Ó$ˆÜ�+œs×#Ò#Ü—g‘g×'Ñ'¨Ó4ˆØÒÜ—.‘.×+Ñ+×0Ñ0°Ó9‰àˆÜ—n‘n×/Ñ/×4Ñ4°_ÓE€OØÒÜ—‘×(Ñ(×-Ñ-¨fÓ5‰àˆÜ! &°oÓF€GØ	�‰˜×	Ô	 Ü�m‰m×%Ñ% d¨IÀ*Ð%ÓMˆÜØØØØ"ØØØ!ØØ#ô

ˆð 	�‰Œ÷ 
ð �>‰>Ð÷ 
Ö	ð �>‰>Ðús   ÆAG9Ç9H	).r   r£   r‰   Útypingr   r   r   r   r   r   Údns.exceptionr   Ú
dns.grangeÚdns.nameÚdns.nodeÚ	dns.rdataÚdns.rdataclassÚdns.rdatatypeÚdns.rdtypes.ANY.SOAÚ	dns.rrsetÚdns.tokenizerÚdns.transactionÚdns.ttlrr   ÚDNSExceptionr	   r   r$   r8   r9   r    r@   rA   r>   ÚSavedStateTyper*   r,   r<   r=   r  ÚTransactionManagerrA  r:   rW  rV  r_  r
   r   r   Ú<module>rp     sC  ðñ$ ã 	Û 
ß 8× 8ã Û Û Û Û Û Û Û Û Û Û Û ô�C—M‘M×.Ñ.ô ô,˜Ÿ™×2Ñ2ô ,ò
ð. Ø‡M�M×ÑØ‡H�H‡M�M�DÕØ‡H�H‡M�M�DÕØˆ$…JØØØØð
õ	€ò÷V2ñ V2ôrB"˜cŸo™o×9Ñ9ô B"ôJ˜#Ÿ/™/×<Ñ<ô ðF (,ØØ69·n±n×6GÑ6GØ7:·~±~×7HÑ7HØ37Ø$(Ø,0Ø),¯©¯©Ø÷]ñ ]r   