+
     Bi                        ^ 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HtHt Rt] P                  tRsRR ltR tR tR tR tR	 tR
 tR t]P4                  ! R]P6                  4      tR t ! R R]4      t ! R R] ]4      t! ! R R]"]4      t# ! R R]$]4      t% ! R R]4      t&R t' ! R R]&4      t(](t)R t*]R3R lt+R t,R# )    N)ThreadingTCPServerStreamRequestHandleriF#  c                    ^ RI p\        V \        4      '       dg   \        P                  P                  V 4      '       g   \        V  R24      h\        P                  P                  V 4      '       g   \        V  R24      h\        WP                  4      '       d   T pM_ VP                  V4      p\        V R4      '       d   VP                  V 4       M)\        P                  ! V4      pVP                  WR7        \#        V4      p\$        P&                  ;_uu_ 4        \)        4        \+        WW4      p\-        WXV4       RRR4       R#   TP                    d   p\        T  RT 24      hRp?ii ; i  + '       g   i     R# ; i)r   Nz doesn't existz is an empty filereadline)encodingz is invalid: )configparser
isinstancestrospathexistsFileNotFoundErrorgetsizeRuntimeErrorRawConfigParserConfigParserhasattr	read_fileiotext_encodingreadParsingError_create_formatterslogging_lock_clearExistingHandlers_install_handlers_install_loggers)	fnamedefaultsdisable_existing_loggersr   r   cpe
formattershandlerss	   &&&&     %/usr/lib/python3.14/logging/config.py
fileConfigr'   5   s4    %ww~~e$$#ug^$<==''%(9:;;%5566	;**84Buj))U#++H51 $B'J 
  %R4'?@ 
 (( 	;%aS9::	; 
s*    4E (E !"E6E3E..E36F	c                     V P                  R 4      p V P                  ^ 4      p\        V4      pV  F  pVR ,           V,           p \        W#4      pK!  	  V#   \         d    \        T4       \        Y#4      p KI  i ; i).)splitpop
__import__getattrAttributeError)nameusedfoundns   &   r&   _resolver3   ^   sv    ::c?D88A;DtEczA~	&E%E  L  	&tE%E	&s   A!A:9A:c                 6    \        \        P                  V 4      # N)mapr
   strip)alists   &r&   _strip_spacesr9   l   s    syy%      c                 2   V R ,          R,          p\        V4      '       g   / # VP                  R4      p\        V4      p/ pV F  pRV,          pV P                  VRRRR7      pV P                  VRRRR7      pV P                  VR	RR
R7      pV P                  VRRRR7      p\        P
                  p	W,          P                  R4      p
V
'       d   \        V
4      p	Ve%   \        V\        \        4      4      pV	! WVWxR7      pM	V	! WVV4      pWV&   K  	  V# )r$   keys,zformatter_%sformatTN)rawfallbackdatefmtstyle%r    class)r    )	lenr*   r9   getr   	Formatterr3   evalvars)r"   flistr$   formsectnamefsdfsstlr    c
class_namefs   &           r&   r   r   o   s   |V$Eu::	KKE% EJ!D(VVHhD4V@ffXydTfBffXwD3f?66(JD46H\%%g.
$AHd7m4H"32A"3A4# $ r:   c                    V R ,          R,          p\        V4      '       g   / # VP                  R4      p\        V4      p/ p. pV EFY  pV RV,          ,          pVR,          pVP                  RR4      p \	        V\        \        4      4      pVP                  RR4      p	\	        V	\        \        4      4      p	VP                  R	R
4      p
\	        V
\        \        4      4      p
V! V	/ V
B pW[n
        RV9   d   VR,          pVP                  V4       \        V4      '       d   VP                  W,          4       \        V\        P                  P                  4      '       d6   VP                  RR4      p\        V4      '       d   VP!                  W34       WV&   EK\  	  V F  w  rVP#                  W>,          4       K  	  V#   \        \        3 d    \        T4      p ELXi ; i)r%   r<   r=   z
handler_%srD   	formatter args()kwargsz{}leveltarget)rE   r*   r9   rF   rH   rI   r   r.   	NameErrorr3   r/   setLevelsetFormatter
issubclassr%   MemoryHandlerappend	setTarget)r"   r$   hlistr%   fixupshandsectionklassfmtrV   rX   hrY   rZ   ts   &&             r&   r   r      s   zN6"Eu::	KKE% EHF\D() kk+r*	$W.E {{64(D$w-(Xt,fd7m,4"6"gG$EJJus88NN:?+eW--;;<<[[2.F6{{qk*/ 2 	HK  O+ 	* 	$UOE	$s   6GG('G(c                 ,   \         P                  pV  F}  pVP                  P                  V,          pWA9   dR   \	        V\         P
                  4      '       g0   VP                  \         P                  4       . Vn        R Vn	        Ku  Kw  W%n
        K  	  R# )TN)r   rootmanager
loggerDictr	   PlaceHolderr\   NOTSETr%   	propagatedisabled)existingchild_loggersdisable_existingrk   logloggers   &&&   r&   _handle_existing_loggersrw      so     <<D((-fg&9&9::/"$#'  ;
 /O r:   c                    V R ,          R,          pVP                  R4      p\        \        V4      4      pVP                  R4       V R,          p\        P
                  pTpRV9   d   VR,          pVP                  V4       VP                  R,           F  pVP                  V4       K  	  VR,          p	\        V	4      '       d=   V	P                  R4      p	\        V	4      p	V	 F  p
VP                  W,          4       K  	  \        VP                  P                  P                  4       4      pVP                  4        . pV EF  pV RV,          ,          pVR	,          pVP                  R
^R7      p\        P                   ! V4      pW9   d   VP#                  V4      ^,           pVR,           p\        V4      p\        V4      pVV8  d5   VV,          RV V8X  d   VP%                  VV,          4       V^,          pK;  VP                  V4       RV9   d   VR,          pVP                  V4       VP                  R,           F  pVP                  V4       K  	  Wn        ^ Vn        VR,          p	\        V	4      '       g   EKE  V	P                  R4      p	\        V	4      p	V	 F  p
VP                  W,          4       K  	  EK  	  \+        WV4       R# )loggersr<   r=   rk   logger_rootrY   NNNr%   z	logger_%squalnamerp   )r@   r)   N)r*   listr9   remover   rk   r\   r%   removeHandlerrE   
addHandlerrl   rm   r<   sortgetint	getLoggerindexr`   rp   rq   rw   )r"   r%   rt   llistre   rk   ru   rY   rh   rb   rd   rr   rs   qnrp   rv   iprefixedpflennum_existings   &&&                 r&   r   r      se    yM&!EKKEu%&E	LLG<<D
C' U]]11 JE
5zzC e$DNN8>*  DLL++0023H
 MMO M[3&'Z NN;N;	""2&>r"Q&ACxHMEx=Ll"A;v&(2!((!5QOOBgG$EOOE"##A  # $$
#u::KK$E!%(E!!(.1 5 T X6FGr:   c                      \         P                  P                  4        \         P                  ! \         P                  R ,          4       \         P                  R  R# )r{   N)r   	_handlersclearshutdown_handlerList r:   r&   r   r     s;    W))!,-Qr:   z^[a-z_][a-z0-9_]*$c                 d    \         P                  V 4      pV'       g   \        R V ,          4      hR# )z!Not a valid Python identifier: %rT)
IDENTIFIERmatch
ValueError)sms   & r&   valid_identr   )  s)    A<q@AAr:   c                   0   a  ] tR tRt o RR ltR tRtV tR# )ConvertingMixini0  c                    V P                   P                  V4      pW$Jd8   V'       d   W@V&   \        V4      \        \        \
        39   d   Wn        Wn        V# r5   )configuratorconverttypeConvertingDictConvertingListConvertingTupleparentkey)selfr   valuereplaceresults   &&&& r&   convert_with_key ConvertingMixin.convert_with_key3  sO    ""**51"S	F|. 0 0 $ 
r:   c                    V P                   P                  V4      pWJd&   \        V4      \        \        \
        39   d   Wn        V# r5   )r   r   r   r   r   r   r   )r   r   r   s   && r&   r   ConvertingMixin.convert?  s@    ""**51F|. 0 0 $r:   r   N)T)__name__
__module____qualname____firstlineno__r   r   __static_attributes____classdictcell____classdict__s   @r&   r   r   0  s     
 r:   r   c                   :   a  ] tR tRt o R tRR ltRR ltRtV tR# )r   iQ  c                N    \         P                  W4      pV P                  W4      # r5   )dict__getitem__r   r   r   r   s   && r&   r   ConvertingDict.__getitem__T  #      +$$S00r:   Nc                P    \         P                  WV4      pV P                  W4      # r5   )r   rF   r   r   r   defaultr   s   &&& r&   rF   ConvertingDict.getX  s#    G,$$S00r:   c                T    \         P                  WV4      pV P                  WR R7      # F)r   )r   r+   r   r   s   &&& r&   r+   ConvertingDict.pop\  s(    G,$$S$??r:   r   r5   )	r   r   r   r   r   rF   r+   r   r   r   s   @r&   r   r   Q  s     11@ @r:   r   c                   0   a  ] tR tRt o R tRR ltRtV tR# )r   i`  c                N    \         P                  W4      pV P                  W4      # r5   )r}   r   r   r   s   && r&   r   ConvertingList.__getitem__b  r   r:   c                N    \         P                  W4      pV P                  V4      # r5   )r}   r+   r   )r   idxr   s   && r&   r+   ConvertingList.popf  s    #||E""r:   r   N))r   r   r   r   r   r+   r   r   r   s   @r&   r   r   `  s     1# #r:   r   c                   &   a  ] tR tRt o R tRtV tR# )r   ij  c                R    \         P                  W4      pV P                  WR R7      # r   )tupler   r   r   s   && r&   r   ConvertingTuple.__getitem__l  s(    !!$,$$S$??r:   r   N)r   r   r   r   r   r   r   r   s   @r&   r   r   j  s     @ @r:   r   c                     a  ] tR tRt o ]P
                  ! R4      t]P
                  ! R4      t]P
                  ! R4      t]P
                  ! R4      t	]P
                  ! R4      t
RRR	R
/t]! ]4      tR tR tR tR tR tR tR tRtV tR# )BaseConfiguratoriq  z%^(?P<prefix>[a-z]+)://(?P<suffix>.*)$z^\s*(\w+)\s*z^\.\s*(\w+)\s*z^\[([^\[\]]*)\]\s*z^\d+$extext_convertcfgcfg_convertc                F    \        V4      V n        W P                  n        R # r5   )r   configr   )r   r   s   &&r&   __init__BaseConfigurator.__init__  s    $V,#' r:   c                d   VP                  R 4      pVP                  ^ 4      p V P                  V4      pV F  pVR V,           ,          p \        WE4      pK!  	  V#   \         d!    T P                  T4       \        YE4      p KO  i ; i  \
         d   p\        RT: RT: 24      pYvhRp?ii ; i)r)   zCannot resolve z: N)r*   r+   importerr-   r.   ImportErrorr   )r   r   r/   r0   r1   fragr#   vs   &&      r&   resolveBaseConfigurator.resolve  s    
 wws|xx{	MM$'Ed
"1#E0E  L & 1MM$'#E0E1  	a;<AN	s;   &B
 AB
 'BB
 BB
 
B/B**B/c                $    V P                  V4      # r5   )r   r   r   s   &&r&   r   BaseConfigurator.ext_convert  s    ||E""r:   c                   TpV P                   P                  V4      pVf   \        RV,          4      hW#P                  4       R  pV P                  VP                  4       ^ ,          ,          pV'       d   V P                  P                  V4      pV'       d   WCP                  4       ^ ,          ,          pMxV P                  P                  V4      pV'       dV   VP                  4       ^ ,          pV P                  P                  V4      '       g
   WE,          pM \        V4      pWF,          pV'       d   W#P                  4       R  pK  \        RV: RV: 24      hV#   \         d    YE,          p LFi ; i)NzUnable to convert %rzUnable to convert z at )WORD_PATTERNr   r   endr   groupsDOT_PATTERNINDEX_PATTERNDIGIT_PATTERNint	TypeError)r   r   restr   dr   r2   s   &&     r&   r   BaseConfigurator.cfg_convert  s0   ##D)93e;<<>DAHHJqM*A$$**40((*Q-(A**006Ahhjm#1177<< !A+$'H$%D >D$38$&@ A A  $- +$%F+s   E   E65E6c                   \        V\        4      '       g*   \        V\        4      '       d   \        V4      pWn        V# \        V\        4      '       g*   \        V\
        4      '       d   \	        V4      pWn        V# \        V\        4      '       g<   \        V\        4      '       d&   \        VR 4      '       g   \        V4      pWn        V# \        V\        4      '       d}   V P                  P                  V4      pV'       dZ   VP                  4       pVR,          pV P                  P                  VR4      pV'       d   VR,          p\        W4      pV! V4      pV# )_fieldsprefixNsuffix)r	   r   r   r   r   r}   r   r   r   r
   CONVERT_PATTERNr   	groupdictvalue_convertersrF   r-   )r   r   r   r   r   	converterr   s   &&     r&   r   BaseConfigurator.convert  s    %00Zt5L5L"5)E!%$ # E>22z%7N7N"5)E!%  E?33E5))'%2K2K#E*E!%  s##$$**51AKKM8 1155fdC	x[F ' 8I%f-Er:   c                j   VP                  R 4      p\        V4      '       g   V P                  V4      pV Uu/ uF'  q3R8w  g   K  \        V4      '       g   K  W1V,          bK)  	  ppV! R/ VB pVP                  RR4      pV'       d&   VP	                  4        F  w  rx\        WWV4       K  	  V# u upi )rW   r)   Nr   )r+   callabler   r   itemssetattr)	r   r   rP   krX   r   propsr/   r   s	   &&       r&   configure_custom!BaseConfigurator.configure_custom  s    JJt{{QA(.P18,A,!AY,PV

3%${{}e,  - Qs   B0B0B0c                H    \        V\        4      '       d   \        V4      pV# r5   )r	   r}   r   r   s   &&r&   as_tupleBaseConfigurator.as_tuple  s    eT""%LEr:   r   N)r   r   r   r   recompiler   r   r   r   r   r   staticmethodr,   r   r   r   r   r   r   r   r   r   r   r   s   @r&   r   r   q  s     
 jj!IJO::o.L**./KJJ45MJJx(M 	 J'H(*# D8 r:   r   c                   a  \        S \        P                  \        P                  34      '       d   R # ^ RIHp \        S V4      '       d   R # RR.p\
        ;QJ d    V 3R lV 4       F  '       d   K   R# 	  R # ! V 3R lV 4       4      # )T)Queue
put_nowaitrF   c              3   P   <"   T F  p\        \        SVR 4      4      x  K  	  R # 5ir5   )r   r-   ).0methodobjs   & r&   	<genexpr>(_is_queue_like_object.<locals>.<genexpr>  s)      646 VT2334s   #&F)r	   queuer  SimpleQueuemultiprocessing.queuesall)r
  MPQueueminimal_queue_interfaces   f  r&   _is_queue_like_objectr    s}    #U%6%67887#w   ,U33 64633 63 63 646 6 6r:   c                   h   a  ] tR tRt o R tR tR tR tR tR t	R t
RR	 ltRR
 ltRR ltRtV tR# )DictConfiguratori  c                
   V P                   pR V9  d   \        R4      hVR ,          ^8w  d   \        RVR ,          ,          4      hVP                  RR4      p/ p\        P                  ;_uu_ 4        V'       Ed
   VP                  RV4      pV F  pV\        P                  9  d   \        RV,          4      h \        P                  V,          pWE,          pVP                  RR4      pV'       d(   VP                  \        P                  ! V4      4       K  K  	  VP                  R
V4      p
V
 F  p V P                  WZV,          R4       K  	  VP                  RR4      pV'       d    V P                  VR4       EMAEM?VP                  RR4      p\        4        VP                  RV4      pV F  p V P                  W,          4      W&   K  	  VP                  RV4      pV F  p V P                  W,          4      W&   K  	  VP                  RV4      p. p\        V4       F%  p V P!                  WE,          4      pWVn        WdV&   K'  	  V F%  p V P!                  WE,          4      pWVn        WdV&   K'  	  \        P*                  p\-        VP.                  P0                  P3                  4       4      pVP5                  4        . pVP                  R
V4      p
V
 F  pVV9   d   VP7                  V4      ^,           pVR,           p\9        V4      p\9        V4      pVV8  d5   VV,          RV V8X  d   VP)                  VV,          4       V^,          pK;  VP;                  V4        V P                  WZV,          4       K  	  \=        VVV4       VP                  RR4      pV'       d    V P                  V4       RRR4       R#   \         d   p	\        R	T,          4      T	hRp	?	ii ; i  \         d   p	\        RT,          4      T	hRp	?	ii ; i  \         d   p	\        R4      T	hRp	?	ii ; i  \         d   p	\        RT,          4      T	hRp	?	ii ; i  \         d   p	\        RT,          4      T	hRp	?	ii ; i  \         dK   p	R\%        T	P&                  4      9   d   TP)                  T4        Rp	?	EK  \        R	T,          4      T	hRp	?	ii ; i  \         d   p	\        R	T,          4      T	hRp	?	ii ; i  \         d   p	\        RT,          4      T	hRp	?	ii ; i  \         d   p	\        R4      T	hRp	?	ii ; i  + '       g   i     R# ; i)versionz$dictionary doesn't specify a versionzUnsupported version: %sincrementalFr%   zNo handler found with name %rrY   NzUnable to configure handler %rry   TzUnable to configure logger %rrk   zUnable to configure root loggerr!   r$   z Unable to configure formatter %rfilterszUnable to configure filter %rz not configured yetr)   )r   r   r+   r   r   rF   r   r\   _checkLevel	Exceptionconfigure_loggerconfigure_rootr   configure_formatterconfigure_filtersortedconfigure_handlerr/   r
   	__cause__r`   rk   r}   rl   rm   r<   r   r   rE   r~   rw   )r   r   r  
EMPTY_DICTr%   r/   handlerhandler_configrY   r#   ry   rk   rt   r$   r  deferredrr   rs   r   r   r   r   s   &                     r&   	configureDictConfigurator.configure  sN    F"CDD)!6	9JJKKjj6
]]]{!::j*=$D7#4#44( *36:*; < <A&-&7&7&=G-5^N$2$6$6w$EE$ ' 0 01D1DU1K L  % % !**Y
;#D=--dDM4H $ zz&$/:++D$7  $*::.H$#O &( $ZZjA
&DG+/+C+C<F<L,N
( ' !**Y
;#DD(,(=(=gm(L $ "::j*="8,D	A"&"8"8"H'+)0	 - %D="&"8"8"H'+)0	 %& || 7 7 < < >?
  !# **Y
;#Dx'$NN4014#'#: #H'*8},.'{6E2h> - 4 4Xa[ AFA -=--dDMB $< )=)9; zz&$/:++D1Y ]  ) A", .248.9 #:?@AA % =( *.04*5 6;<== % :( *2 389:: % G( *8:>*? @EFGG % D( *57;*< =BCDD % A0C4DD$OOD11", .248.9 #:?@A	A % =( *.04*5 6;<==N % =( *.04*5 6;<==2 % :( *2 389::[ ]]sY  2AU;AOU7O4U/P7U9P9U.Q&U.!R	U!S:C4U/T+U3T)O1	O,	,O1	1U4P	?P	P	UP6%P11P66U9Q	Q	Q	UR	*Q=	=R	US	+S	;US	S	UT 	(S;	;T 	 UT&	T!	!T&	&U)U4U  UUU	c                L   R V9   d   VR ,          p V P                  V4      pV# VP	                  RR4      pVP	                  RR4      pVP	                  RR4      pVP	                  RR4      pVP	                  R	R4      p	V'       g   \
        P                  p
M\        V4      p
/ pV	e   WR	&   R
V9   d   V
! WVWqR
,          3/ VB pV# V
! WVV3/ VB pV#   \         dF   pR\        T4      9  d   h TP                  R4      TR&   Y!R &   T P                  T4      p Rp?T# Rp?ii ; i)rW   z'format'r>   rg   NrA   rB   rC   rD   r    validate)r   r   r
   r+   rF   r   rG   r3   )r   r   factoryr   terg   dfmtrB   cnamer    rP   rX   s   &&          r&   r  $DictConfigurator.configure_formatter  sA   6>TlG
7..v6J 5 **Xt,C::i.DJJw,EJJw-Ezz*d3H%%UOF
 #%-z" V#3eJ-?J6J  3e6v6I  7SW, !'

8 4u&t..v68 I7s   C D#:DD#c                    R V9   d   V P                  V4      pV# VP                  RR4      p\        P                  ! V4      pV# )rW   r/   rU   )r   rF   r   Filter)r   r   r   r/   s   &&  r&   r  !DictConfigurator.configure_filter  sE    6>**62F  ::fb)D^^D)Fr:   c                   V F_  p \        V4      '       g   \        \        VR R4      4      '       d   TpMV P                  R,          V,          pVP                  V4       Ka  	  R#   \         d   p\        RT,          4      ThRp?ii ; i)filterNr  zUnable to add filter %r)r   r-   r   	addFilterr  r   )r   filtererr  rR   filter_r#   s   &&&   r&   add_filtersDictConfigurator.add_filters  s{    AGA;;(71h+E"F"FG"kk)4Q7G""7+   G !:Q!>?QFGs   AA((B3BBc                4   R V9   d   VP                  R 4      pM\        P                  ! 4       pVP                  RR4      pVP                  R\        P                  P
                  4      pVP                  R. 4      pV! V.VO5RV/ pV! V3/ VB pWxn        V# )r  respect_handler_levelFlistenerr%   )r+   r  r  r   r%   QueueListenerr<  )	r   rf   rX   qrhllklassr%   r<  r$  s	   &&,      r&   _configure_queue_handler)DictConfigurator._configure_queue_handler  s    f

7#AAjj0%8J(8(8(F(FG::j"-!BhBcB$V$#r:   c                L   \        V4      pVP                  R R4      pV'       d    V P                  R,          V,          pVP                  RR4      pVP                  RR4      pRV9   d8   VP                  R4      p\        V4      '       g   V P                  V4      pTpEMVP                  R4      p	\        V	4      '       d   T	p
MV P                  V	4      p
\        V
\        P                  P                  4      '       d   RV9   d!   \        P                  ! VR,          4      VR&   R	V9   dg    VR	,          pV P                  R
,          V,          p\        V\        P                  4      '       g   VP                  V4       \        R4      hWR	&   EMEM\        V
\        P                  P                   4      '       Ed   RV9   d   VR,          p\        V\"        4      '       d@   V P                  V4      p\        V4      '       g   \        RV,          4      hV! 4       VR&   Mp\        V\         4      '       d8   RV9  d   \        RV,          4      hV P%                  \        V4      4      VR&   M#\'        V4      '       g   \        RV,          4      hRV9   Ed[   VR,          p\        V\(        4      '       d>   \        V\        P                  P*                  4      '       g   \        RV,          4      hM\        V\"        4      '       de   V P                  V4      p\        V\(        4      '       d=   \        V\        P                  P*                  4      '       g   \        RV,          4      hM\\        V\         4      '       d5   RV9  d   \        RV,          4      hV P%                  \        V4      4      pM\        RV,          4      h\        V4      '       g   \        RV,          4      hVVR&   R
V9   d   . p VR
,           Fq  pV P                  R
,          V,          p\        V\        P                  4      '       g$   VP                  V4       \        RV,          4      hVP-                  V4       Ks  	  TTR
&   M\        V
\        P                  P.                  4      '       d$   RV9   d   V P1                  VR,          4      VR&   ML\        V
\        P                  P2                  4      '       d#   RV9   d   V P1                  VR,          4      VR&   \        V
\        P                  P                   4      '       d#   \4        P6                  ! V P8                  V
4      pMT
pV Uu/ uF)  pVR8w  g   K  \;        V4      '       g   K  VVV,          bK+  	  pp V! R/ VB pV'       d   VPC                  V4       Ve&   VPE                  \        P                  ! V4      4       V'       d   V PG                  VV4       VP                  RR4      pV'       d(   VPI                  4        F  w  pp\K        VVV4       K  	  V#   \         d   p\	        RT,          4      ThRp?ii ; i  \         d   p\	        RX,          4      ThRp?ii ; i  \         d   p\	        RX,          4      ThRp?ii ; iu upi   \         dU   pR\#        T4      9  d   h TP                  R4      TR&   T! R/ TB p^ RIpTP?                  R\@        ^R7        Rp?ELpRp?ii ; i)rT   Nr$   zUnable to set formatter %rrY   r  rW   rD   
flushLevelrZ   r%   ztarget not configured yetzUnable to set target handler %rr  zInvalid queue specifier %rr<  zInvalid listener specifier %rz)Required handler %r is not configured yetz!Unable to set required handler %rmailhostaddressr)   z'stream'streamstrmzSupport for custom logging handlers with the 'strm' argument is deprecated and scheduled for removal in Python 3.16. Define handlers with the 'stream' argument instead.)
stacklevelr   )&r   r+   r   r  r   r   r   r^   r   r%   r_   r  r	   Handlerupdater   QueueHandlerr
   r   r  r   r=  r`   SMTPHandlerr   SysLogHandler	functoolspartialrA  r   warningswarnDeprecationWarningr]   r\   r8  r   r   )r   r   config_copyrT   r#   rY   r  rP   r+  r.  rf   tnthqspecr>  lspecr<  rb   hnrh   r   rX   r   r,  rQ  r   r/   r   s   &&                          r&   r!  "DictConfigurator.configure_handler   s   6lJJ{D1	: KK5i@	 

7D)**Y-6>

4 AA;;LLOGJJw'EU+%!1!1!?!?@@6)+2+>+>vl?S+TF<(v%X#H-![[4R8)"goo>>"MM+6"+,G"HH+-x( & E7#3#3#@#@AA f$"7OE!%-- LL/'{{"+,H5,P"QQ*+#w#E400u,"+,H5,P"QQ*.*?*?U*Lw2599'(Du(LMM'":.E!%..)%1A1A1O1OPP"+,Ke,S"TT  Q &eS11'+||E':H)(D99$.x9I9I9W9W$X$X&/0ORW0W&X X't44#50&/0ORW0W&X X'+'<'<T%['IH"+,Ke,S"TT'11"+,Ke,S"TT-5z*'E	Z"("4"4B $J 7 ;A#-a#A#A &k :&/ 1HJL1M 'N !N!LLO #5 */F:&E7#3#3#?#?@@f$%)]]6*3E%Fz"E7#3#3#A#ABBV#$(MM&2C$Dy!%!1!1!>!>??#++D,I,I5Q(.P118,A,!VAY,P	&v&F& 	*OOG//67VW-

3%${{}ee,  -{  :  "&(1"2 389::8 % X()JR)OPVWWXf % Z()Lr)QRXYYZ Q
  	R(
 $ZZ1F6N&v&FMMF #   	st   Y 2A#Y3 A>Z 4	Z?Z?Z?&[ Y0Y++Y03Z>ZZZ<$Z77Z<\#A	\\#c                    V F-  p VP                  V P                  R ,          V,          4       K/  	  R#   \         d   p\        RT,          4      ThRp?ii ; i)r%   zUnable to add handler %rN)r   r   r  r   )r   rv   r%   rh   r#   s   &&&  r&   add_handlersDictConfigurator.add_handlers  sU    AH!!$++j"9!"<=   H !;a!?@aGHs   )6AAAc                   VP                  R R4      pVe&   VP                  \        P                  ! V4      4       V'       g   VP                  R,           F  pVP                  V4       K  	  VP                  RR4      pV'       d   V P                  W4       VP                  RR4      pV'       d   V P                  W4       R# R# R# )rY   Nr{   r%   r  )rF   r\   r   r  r%   r   r\  r8  )r   rv   r   r  rY   rh   r%   r  s   &&&&    r&   common_logger_config%DictConfigurator.common_logger_config  s     

7D)OOG//67__Q''$$Q' (zz*d3H!!&3jjD1G  1  r:   c                    \         P                  ! V4      pV P                  WBV4       R Vn        VP	                  RR4      pVe	   WTn        R# R# )Frp   N)r   r   r_  rq   rF   rp   )r   r/   r   r  rv   rp   s   &&&&  r&   r  !DictConfigurator.configure_logger  sJ    ""4(!!&+>JJ{D1	 ( !r:   c                T    \         P                  ! 4       pV P                  W1V4       R # r5   )r   r   r_  )r   r   r  rk   s   &&& r&   r  DictConfigurator.configure_root  s       "!!$<r:   r   N)F)r   r   r   r   r'  r  r  r8  rA  r!  r\  r_  r  r  r   r   r   s   @r&   r  r    sC     Y:v*X
GDLH2$)= =r:   r  c                 8    \        V 4      P                  4        R # r5   )dictConfigClassr'  r   s   &r&   
dictConfigrg    s    F%%'r:   c                    a  ! R  R\         4      p ! R R\        4      p ! V3R lR\        P                  4      oS! W2W4      # )c                   &   a  ] tR tRt o R tRtV tR# )#listen.<locals>.ConfigStreamHandleri  c                    V P                   pVP                  ^4      p\        V4      ^8X  Ed    \        P                  ! RV4      ^ ,          pV P                   P                  V4      p\        V4      V8  d*   W!P                  V\        V4      ,
          4      ,           pK9  V P
                  P                  e   V P
                  P                  V4      pVe3   VP                  R4      p ^ RIpVP                  V4      p\        V4       V P
                  P"                  '       d'   V P
                  P"                  P%                  4        R# R# R#   \         dM    \        P                  ! T4      p \        T4        Lu  \         d    \        P                   ! 4          Li ; ii ; i  \&         d"   pTP(                  \*        8w  d   h  Rp?R# Rp?ii ; i)   z>LNzutf-8)
connectionrecvrE   structunpackserververifydecodejsonloadsrg  r  r   StringIOr'   	traceback	print_excreadysetOSErrorerrnoRESET_ERROR)r   connchunkslenrt  r   filer#   s   &       r&   handle*listen.<locals>.ConfigStreamHandler.handle  sl   		!u:?!==u5a8D OO006Ee*t+ %		$U2C(D D{{))5 $ 2 25 9( %W 56'#zz%0A&qM {{((())--/ )- #  ) 6 $&;;u#5D6 *4 0#, 6 ) 3 3 566  77k) *s`   C(F+ + E F+ '$F+ !F(3F >F+   F$ F(!F+ #F$$F((F+ +G6GGr   N)r   r   r   r   r  r   r   r   s   @r&   ConfigStreamHandlerrj    s     %	 %	r:   r  c                   B   a  ] tR tRt o RtRtR]RRR3R ltR tRt	V t
R# )	$listen.<locals>.ConfigSocketReceiveri  TF	localhostNc                    \         P                  ! WV3V4       \        P                  ;_uu_ 4        ^ V n        RRR4       ^V n        W@n        WPn        R#   + '       g   i     L%; ir   N)r   r   r   r   aborttimeoutry  rr  )r   hostportr$  ry  rr  s   &&&&&&r&   r   -listen.<locals>.ConfigSocketReceiver.__init__  sD    ''TlGD
 DLJ K	 s   AA'	c                l   ^ RI p^ pV'       g   VP                  V P                  P                  4       .. . V P                  4      w  r4pV'       d   V P	                  4        \
        P                  ;_uu_ 4        V P                  pRRR4       K  V P                  4        R#   + '       g   i     K  ; ir  )	selectsocketfilenor  handle_requestr   r   r  server_close)r   r  r  rdwrexs   &     r&   serve_until_stopped8listen.<locals>.ConfigSocketReceiver.serve_until_stopped  s}    E#]]DKK,>,>,@+A+-r+/<<9
 '')]]] JJE #] #]]s   9B""B3	)r  ry  r  rr  )r   r   r   r   allow_reuse_addressallow_reuse_portDEFAULT_LOGGING_CONFIG_PORTr   r  r   r   r   s   @r&   ConfigSocketReceiverr    s/     
 #  +2M!d	!	  	 r:   r  c                   <   <a a ] tR tRt oVV 3R ltR tRtVtV ;t# )listen.<locals>.Serveri  c                   < \         SV `  4        Wn        W n        W0n        W@n        \        P                  ! 4       V n        R # r5   )	superr   rcvrhdlrr  rr  	threadingEventry  )r   r  r  r  rr  Server	__class__s   &&&&&r&   r   listen.<locals>.Server.__init__  s2    &$(*III K"*DJr:   c                   V P                  V P                  V P                  V P                  V P                  R 7      pV P                  ^ 8X  d   VP
                  ^,          V n        V P                  P                  4        \        P                  ;_uu_ 4        Vs	RRR4       VP                  4        R#   + '       g   i     L"; i))r  r$  ry  rr  N)r  r  r  ry  rr  server_addressrz  r   r   	_listenerr  )r   rq  s   & r&   runlisten.<locals>.Server.run  s    YYDIItyy%)ZZ&*kk  3F yyA~"11!4	JJNN"	 &&( s   B66C	)r  r  r  ry  rr  )	r   r   r   r   r   r  r   r   __classcell__)r  r   r  s   @@r&   r  r    s     	+
	) 
	)r:   r  )r   r   r  Thread)r  rr  r  r  r  s   &&  @r&   listenr    s@    (,2 ,\ 1  <)!! ), &TJJr:   c                      \         P                  ;_uu_ 4        \        '       d   ^\        n        RsRRR4       R#   + '       g   i     R# ; i)   N)r   r   r  r  r   r:   r&   stopListeningr  -  s*    
 
9IOI 
s	   =A	)NTN)-r|  rO  r   r   logging.handlersr   r  r  ro  r  rw  socketserverr   r   r  
ECONNRESETr}  r  r'   r3   r9   r   r   rw   r   r   r  Ir   r   objectr   r   r   r}   r   r   r   r   r  r  rf  rg  r  r  r   r:   r&   <module>r     s  6   	   	  	    A #  	&AR!:$L/,THn  ZZ,bdd3
f B@T? @#T? #@e_ @Av AF66]=' ]=~ #(
 ,D vKpr:   