+
    ni'                         ^ RI Ht ^ RIt^ RIt^ RIt^ RIt ! R R4      t ! R R]4      t ! R R]4      t	 ! R	 R
]4      t
 ! R R]4      t ! R R]4      tR# )    )urlparseNc                      a  ] tR t^	t o R tR tV 3R lR ltV 3R lR ltV 3R lR ltV 3R	 lR
 lt	RV 3R lR llt
RV 3R lR lltRtV tR# )
Nameserverc                    R # N selfs   &hC:\Users\petid\OneDrive\Desktop\Maestro\MAESTRO\maestro-backend\venv\Lib\site-packages\dns/nameserver.py__init__Nameserver.__init__
   s        c                    \         hr   NotImplementedErrorr	   s   &r   __str__Nameserver.__str__       !!r   c                    < V ^8  d   QhRS[ /#    returnstr)format__classdict__s   "r   __annotate__Nameserver.__annotate__        " "c "r   c                    \         hr   r   r	   s   &r   kindNameserver.kind   r   r   c                    < V ^8  d   QhRS[ /# r   bool)r   r   s   "r   r   r      s     " "D "r   c                    \         hr   r   r	   s   &r   is_always_max_sizeNameserver.is_always_max_size   r   r   c                    < V ^8  d   QhRS[ /# r   r   )r   r   s   "r   r   r      s     " "3 "r   c                    \         hr   r   r	   s   &r   answer_nameserverNameserver.answer_nameserver   r   r   c                    < V ^8  d   QhRS[ /# r   int)r   r   s   "r   r   r      s     " "S "r   c                    \         hr   r   r	   s   &r   answer_portNameserver.answer_port   r   r   c                   < V ^8  d   QhRS[ P                  P                  RS[RS[R,          RS[RS[RS[RS[R	S[ P                  P                  /# 
r   requesttimeoutsourceNsource_portmax_sizeone_rr_per_rrsetignore_trailingr   dnsmessageQueryMessagefloatr   r/   r%   Message)r   r   s   "r   r   r      ss     
" 
"))
" 
" d
	
"
 
" 
" 
" 
" 
		
"r   c                    \         hr   r   r
   r5   r6   r7   r8   r9   r:   r;   s   &&&&&&&&r   queryNameserver.query   s
     "!r   c                   < V ^8  d   QhRS[ P                  P                  RS[RS[R,          RS[RS[RS[ P                  P                  RS[R	S[R
S[ P                  P                  /	# r   r5   r6   r7   Nr8   r9   backendr:   r;   r   
r=   r>   r?   r@   r   r/   r%   asyncbackendBackendrA   )r   r   s   "r   r   r   (   s     " "))" " d
	"
 " " !!))" " " 
		"r   c	                   "   \         h5ir   r   	r
   r5   r6   r7   r8   r9   rH   r:   r;   s	   &&&&&&&&&r   async_queryNameserver.async_query(   s      "!s   	r   NFF)__name__
__module____qualname____firstlineno__r   r   r!   r'   r+   r1   rD   rN   __static_attributes____classdictcell__)r   s   @r   r   r   	   sP     "" "" "" "" "
" 
"" " "r   r   c                      a a ] tR t^6t oV3R lV 3R lltV3R lR ltV3R lR ltR tV3R lR	 ltV3R
 lR lt	Rt
VtV ;t# )AddressAndPortNameserverc                &   < V ^8  d   QhRS[ RS[/# r   addressportr   r/   )r   r   s   "r   r   %AddressAndPortNameserver.__annotate__7   s       3 r   c                <   < \         SV `  4        Wn        W n        R # r   )superr   r[   r\   r
   r[   r\   	__class__s   &&&r   r   !AddressAndPortNameserver.__init__7   s    	r   c                    < V ^8  d   QhRS[ /# r   r   )r   r   s   "r   r   r^   <   r   r   c                    \         hr   r   r	   s   &r   r!   AddressAndPortNameserver.kind<   r   r   c                    < V ^8  d   QhRS[ /# r   r$   )r   r   s   "r   r   r^   ?   s      D r   c                    R # )Fr   r	   s   &r   r'   +AddressAndPortNameserver.is_always_max_size?       r   c                ^    V P                  4       pV R V P                   RV P                   2# ):@)r!   r[   r\   )r
   ns_kinds   & r   r    AddressAndPortNameserver.__str__B   s,    ))+!DLL>499+66r   c                    < V ^8  d   QhRS[ /# r   r   )r   r   s   "r   r   r^   F   s      3 r   c                    V P                   # r   )r[   r	   s   &r   r+   *AddressAndPortNameserver.answer_nameserverF   s    ||r   c                    < V ^8  d   QhRS[ /# r   r.   )r   r   s   "r   r   r^   I   s      S r   c                    V P                   # r   )r\   r	   s   &r   r1   $AddressAndPortNameserver.answer_portI   s    yyr   )r[   r\   )rQ   rR   rS   rT   r   r!   r'   r   r+   r1   rU   rV   __classcell__rb   r   s   @@r   rX   rX   6   sA      
" " 7   r   rX   c                   t   a a ] tR t^Mt oR	V3R lV 3R llltR tR
V3R lR lltR
V3R lR lltRtVt	V ;t
# )Do53Nameserverc                &   < V ^8  d   QhRS[ RS[/# rZ   r]   )r   r   s   "r   r   Do53Nameserver.__annotate__N   s     ( ( (3 (r   c                &   < \         SV `  W4       R # r   )r`   r   ra   s   &&&r   r   Do53Nameserver.__init__N   s    'r   c                    R # )Do53r   r	   s   &r   r!   Do53Nameserver.kindQ   s    r   c                   < V ^8  d   QhRS[ P                  P                  RS[RS[R,          RS[RS[RS[RS[R	S[ P                  P                  /# r4   r<   )r   r   s   "r   r   r{   T   ss     # #))# # d
	#
 # # # # 
		#r   c                   V'       d>   \         P                  P                  VV P                  VV P                  VVVVR 7      pV# \         P                  P                  VV P                  VV P                  VVRVVRRR7      pV# ))r6   r\   r7   r8   r:   r;   T)	r6   r\   r7   r8   raise_on_truncationr:   r;   ignore_errorsignore_unexpected)r=   rD   tcpr[   r\   udp)	r
   r5   r6   r7   r8   r9   r:   r;   responses	   &&&&&&&& r   rD   Do53Nameserver.queryT   s     yy}}YY'!1 / % 	H0  yy}}YY'$(!1 /""& % H r   c                   < V ^8  d   QhRS[ P                  P                  RS[RS[R,          RS[RS[RS[ P                  P                  RS[R	S[R
S[ P                  P                  /	# rG   rI   )r   r   s   "r   r   r{   y   s     & &))& & d
	&
 & & !!))& & & 
		&r   c	                @  "   V'       dG   \         P                  P                  VV P                  VV P                  VVVVVR 7	      G Rj  xL
 p	V	# \         P                  P                  VV P                  VV P                  VVRVVVRRR7      G Rj  xL
 p	V	#  LO L5i))r6   r\   r7   r8   rH   r:   r;   NT)
r6   r\   r7   r8   r   rH   r:   r;   r   r   )r=   
asyncqueryr   r[   r\   r   )
r
   r5   r6   r7   r8   r9   rH   r:   r;   r   s
   &&&&&&&&& r   rN   Do53Nameserver.async_queryy   s       ^^//YY'!1 / 0 
 
H4  !^^//YY'$(!1 /""& 0  H 5
s%   AB
BABBBBr   )5   rP   rQ   rR   rS   rT   r   r!   rD   rN   rU   rV   rv   rw   s   @@r   ry   ry   M   s.     ( (# #J& & &r   ry   c                      a a ] tR t^t oRRR]P
                  P                  P                  3V3R lV 3R llltR t	V3R lR lt
R	 tV3R
 lR ltV3R lR ltRV3R lR lltRV3R lR lltRtVtV ;t# )DoHNameserverNTFc          
      ~   < V ^8  d   QhRS[ RS[ R,          RS[S[ ,          RS[RS[P                  P                  /# )r   urlbootstrap_addressNverifywant_gethttp_version)r   r%   r=   rD   HTTPVersion)r   r   s   "r   r   DoHNameserver.__annotate__   sO     ) )) :) s
	)
 ) ii++)r   c                `   < \         SV `  4        Wn        W n        W0n        W@n        WPn        R # r   )r`   r   r   r   r   r   r   )r
   r   r   r   r   r   rb   s   &&&&&&r   r   DoHNameserver.__init__   s+     	!2 (r   c                    R # )DoHr   r	   s   &r   r!   DoHNameserver.kind   rj   r   c                    < V ^8  d   QhRS[ /# r   r$   )r   r   s   "r   r   r      s      D r   c                    R # )Tr   r	   s   &r   r'    DoHNameserver.is_always_max_size   s    r   c                    V P                   # r   r   r	   s   &r   r   DoHNameserver.__str__       xxr   c                    < V ^8  d   QhRS[ /# r   r   )r   r   s   "r   r   r      s      3 r   c                    V P                   # r   r   r	   s   &r   r+   DoHNameserver.answer_nameserver   r   r   c                    < V ^8  d   QhRS[ /# r   r.   )r   r   s   "r   r   r      s      S r   c                P    \        V P                  4      P                  pVf   RpV# )Ni  )r   r   r\   )r
   r\   s   & r   r1   DoHNameserver.answer_port   s%    !&&<Dr   c                   < V ^8  d   QhRS[ P                  P                  RS[RS[R,          RS[RS[RS[RS[R	S[ P                  P                  /# r4   r<   )r   r   s   "r   r   r      ss     
 
))
 
 d
	

 
 
 
 
 
		
r   c                    \         P                  P                  VV P                  VVVV P                  VVV P
                  V P                  '       * V P                  R 7      # )	r6   r7   r8   r   r:   r;   r   postr   )r=   rD   httpsr   r   r   r   r   rC   s   &&&&&&&&r   rD   DoHNameserver.query   sZ     yyHH#"44-+;;mm#**  
 	
r   c                   < V ^8  d   QhRS[ P                  P                  RS[RS[R,          RS[RS[RS[ P                  P                  RS[R	S[R
S[ P                  P                  /	# rG   rI   )r   r   s   "r   r   r      s     
 
))
 
 d
	

 
 
 !!))
 
 
 
		
r   c	                   "   \         P                  P                  VV P                  VVVV P                  VVV P
                  V P                  '       * V P                  R 7      G Rj  xL
 #  L5i)r   N)r=   r   r   r   r   r   r   r   rM   s	   &&&&&&&&&r   rN   DoHNameserver.async_query   si      ^^))HH#"44-+;;mm#** * 
 
 	
 
s   A%A.'A,(A.)r   r   r   r   r   FFFrP   )rQ   rR   rS   rT   r=   rD   r   DEFAULTr   r!   r'   r   r+   r1   rN   rU   rV   rv   rw   s   @@r   r   r      sn      )-!.1ii.C.C.K.K) )   
 
0
 
 
r   r   c                   t   a a ] tR t^t oR	V3R lV 3R llltR tR
V3R lR lltRV3R lR lltRtVt	V ;t
# )DoTNameserverc          	      P   < V ^8  d   QhRS[ RS[RS[ R,          RS[S[ ,          /# )r   r[   r\   hostnameNr   r   r/   r%   )r   r   s   "r   r   DoTNameserver.__annotate__   s;     	 		 	 *		
 s
	r   c                >   < \         SV `  W4       W0n        W@n        R # r   )r`   r   r   r   )r
   r[   r\   r   r   rb   s   &&&&&r   r   DoTNameserver.__init__   s     	' r   c                    R # )DoTr   r	   s   &r   r!   DoTNameserver.kind  rj   r   c                   < V ^8  d   QhRS[ P                  P                  RS[RS[R,          RS[RS[RS[RS[R	S[ P                  P                  /# r4   r<   )r   r   s   "r   r   r     s     
 
))
 
 d
	

 
 
 
 
 
		
r   c                    \         P                  P                  VV P                  V P                  VVVV P
                  V P                  R 7      # )r\   r6   r:   r;   server_hostnamer   )r=   rD   tlsr[   r\   r   r   rC   s   &&&&&&&&r   rD   DoTNameserver.query  sF     yy}}LL-+ MM;;  	
 		
r   c                   < V ^8  d   QhRS[ P                  P                  RS[RS[R,          RS[RS[RS[ P                  P                  RS[R	S[R
S[ P                  P                  /	# rG   rI   )r   r   s   "r   r   r          
 
))
 
 d
	

 
 
 !!))
 
 
 
		
r   c	                   "   \         P                  P                  VV P                  V P                  VVVV P
                  V P                  R 7      G Rj  xL
 #  L5i)r   N)r=   r   r   r[   r\   r   r   rM   s	   &&&&&&&&&r   rN   DoTNameserver.async_query  sU      ^^''LL-+ MM;; ( 	
 	
 		
 	
   AAAA)r   r   )U  NTr   rP   r   rw   s   @@r   r   r      s-     	 	
 
*
 
 
r   r   c                   t   a a ] tR tRt oR
V3R lV 3R llltR tRV3R lR lltRV3R lR lltR	tVt	V ;t
# )DoQNameserveri1  c          	      P   < V ^8  d   QhRS[ RS[RS[S[ ,          RS[ R,          /# )r   r[   r\   r   r   Nr   )r   r   s   "r   r   DoQNameserver.__annotate__2  s;     	/ 	/	/ 	/ s
		/
 t	/r   c                >   < \         SV `  W4       W0n        W@n        R # r   )r`   r   r   r   )r
   r[   r\   r   r   rb   s   &&&&&r   r   DoQNameserver.__init__2  s     	'.r   c                    R # )DoQr   r	   s   &r   r!   DoQNameserver.kind=  rj   r   c                   < V ^8  d   QhRS[ P                  P                  RS[RS[R,          RS[RS[RS[RS[R	S[ P                  P                  /# r4   r<   )r   r   s   "r   r   r   @  r   r   c                    \         P                  P                  VV P                  V P                  VVVV P
                  V P                  R 7      # )r\   r6   r:   r;   r   r   )r=   rD   quicr[   r\   r   r   rC   s   &&&&&&&&r   rD   DoQNameserver.query@  sH     yy~~LL-+;; 00  	
 		
r   c                   < V ^8  d   QhRS[ P                  P                  RS[RS[R,          RS[RS[RS[ P                  P                  RS[R	S[R
S[ P                  P                  /	# rG   rI   )r   r   s   "r   r   r   U  r   r   c	                   "   \         P                  P                  VV P                  V P                  VVVV P
                  V P                  R 7      G Rj  xL
 #  L5i)r   N)r=   r   r   r[   r\   r   r   rM   s	   &&&&&&&&&r   rN   DoQNameserver.async_queryU  sW      ^^((LL-+;; 00 ) 	
 	
 		
 	
r   )r   r   )r   TNr   rP   r   rw   s   @@r   r   r   1  s-     	/ 	/
 
*
 
 
r   r   )urllib.parser   dns.asyncbackendr=   dns.asyncquerydns.message	dns.queryr   rX   ry   r   r   r   r   r   r   <module>r      se    !    *" *"Zz .R- RjQ
J Q
h8
, 8
v8
, 8
r   