
    =OgvR                     P   	 d dl Z g dZd+dZd,dZd Zd ZeZd ZeZd Z	d	e
d	d d
fdZe
d d
fdZd Zd Z G d de          Zd Zd Zd Zd Zd Zd Zd-dZ	 	 d.dZ G d de          Z G d de          ZdZefe j        dd Zd! Z	 d d"l m!Z!m"Z"m#Z#mZmZm$Z$ e"Z%e#Z&d#Z'n# e($ r g Z!d$Z%i Z&da)d% Z$d
Z'Y nw xY w ee j*                   e'sS e+e d&          sG ed$e,d'd(            ed)e,d*            ed)e-d*            ed)e.d*            ed)e/d*           ['dS )/    N)warnwarn_explicitshowwarningformatwarningfilterwarningssimplefilterresetwarningscatch_warningsc                 N    	 t          | |||||          }t          |           d S N)WarningMessage_showwarnmsg_impl)messagecategoryfilenamelinenofilelinemsgs          !/usr/lib64/python3.11/warnings.pyr   r   
   s0    A
(HfdD
I
ICc    c                 J    	 t          | |||d |          }t          |          S r   )r   _formatwarnmsg_impl)r   r   r   r   r   r   s         r   r   r      s*    8
(HfdD
I
ICs###r   c                     | j         }|t          j        }|d S t          |           }	 |                    |           d S # t
          $ r Y d S w xY wr   )r   sysstderr_formatwarnmsgwriteOSError)r   r   texts      r   r   r      sm    8D|z< F#D

4   s   A 
AAc                    | j         j        }| j         d| j         d| d| j         d}| j        :	 dd l}|                    | j        | j                  }n# t          $ r d }d }Y nw xY w| j        }|r|	                                }|d|z  z  }| j
        	 dd l}	 |                                 }|                    | j
                  }n(# t          $ r d}d }Y nw xY w# t          $ r d}d }Y nw xY w|x|dz  }|D ]o}|d|j        d	|j        dz  }	 |!|                    |j        |j                  }nd }n# t          $ r d }Y nw xY w|r|	                                }|d
|z  z  }pn
|r|| dz  }|S )N:z: 
r   z  %s
Fz-Object allocated at (most recent call last):
z  File "z
", lineno z    %s
z<: Enable tracemalloc to get the object allocation traceback
)r   __name__r   r   r   r   	linecachegetline	Exceptionstripsourcetracemalloc
is_tracingget_object_traceback)	r   r   sr%   r   r*   suggest_tracemalloctbframes	            r   r   r   #   sL   |$HL	D	D3:	D	D	D	DS[	D	D	DA
x	$$S\3:>>DD 	 	 	 DIII		 x zz||	X_
z	*5*@*@*B*B&B# 55cjAA    ',#	  	 	 	"'BBB	 >AAA + +7 8  ,(00NN#       DDD  +::<<Dd**A+ ! 	-X , , , -AHsG   $A A('A(C! /C CC!C21C2%D==EEc                    	 	 t           }|t          urNt          |          st          d           || j        | j        | j        | j        | j        | j	                   d S n# t          $ r Y nw xY wt          |            d S )Nz:warnings.showwarning() must be set to a function or method)r   _showwarning_origcallable	TypeErrorr   r   r   r   r   r   	NameErrorr   )r   sws     r   _showwarnmsgr7   a   s    A &&&B<< 6 !5 6 6 6 Bs{CL#,
x# # #F '     cs   A" "
A/.A/c                     	 	 t           }|t          ur( || j        | j        | j        | j        | j                  S n# t          $ r Y nw xY wt          |           S r   )	r   _formatwarning_origr   r   r   r   r   r5   r   )r   fws     r   r   r   v   s}    8: (((2ck3<lCJ: : : )     s###s   < 
A	A	 Fc                     	 |s|rdd l }|r|                    ||j                  }nd }|r|                    |          }nd }t          | |||||           d S )Nr   append)recompileI_add_filter)actionr   r   moduler   r>   r?   s          r   r   r      s    	&  & 			 **Wbd++ F##66&IIIIIIr   c                 2    	 t          | d |d ||           d S )Nr=   )rB   )rC   r   r   r>   s       r   r   r      s*     hfVDDDDDDr   c                     | s<	 t          j        |           n# t          $ r Y nw xY wt          j        d|           n|t           vrt          j        |           t                       d S )Nr   )filtersremove
ValueErrorinsertr>   _filters_mutated)r>   items     r   rB   rB      s      !	N4     	 	 	D	q$wN4   s    
&&c                  <    	 g t           d d <   t                       d S r   )rG   rK    r   r   r	   r	      s$    KGAAAJr   c                       e Zd Z	 dS )_OptionErrorN)r$   
__module____qualname__rN   r   r   rP   rP      s        6Dr   rP   c                     | D ]E}	 t          |           # t          $ r&}t          d|t          j                   Y d }~>d }~ww xY wd S )NzInvalid -W option ignored:)r   )
_setoptionrP   printr   r   )argsargr   s      r   _processoptionsrX      s|     F F	FsOOOO 	F 	F 	F.#*EEEEEEEEE	FF Fs   
AAAc                 |   |                      d          }t          |          dk    rt          d|           t          |          dk     r(|                    d           t          |          dk     (d |D             \  }}}}}t	          |          }t          |          }|s|rdd l}|r|                    |          }|r|                    |          dz   }|rF	 t          |          }|dk     rt          n*# t          t          f$ r t          d|          d w xY wd}t          |||||           d S )	Nr"      ztoo many fields (max 5): r;   c                 6    g | ]}|                                 S rN   )r(   ).0r-   s     r   
<listcomp>z_setoption.<locals>.<listcomp>   s6     1A 1A 1A56 23 1A 1A 1Ar   r   z\Zzinvalid lineno )splitlenrP   r>   
_getaction_getcategoryr?   escapeintrI   OverflowErrorr   )rW   partsrC   r   r   rD   r   r?   s           r   rT   rT      s   IIcNNE
5zzA~~lCCABBB
e**q..R e**q..1A 1A:?1A 1A 1A-FGXvvFH%%H & 			 %))G$$ +6""U* 	J[[Fzz   M* 	J 	J 	J,ff>??TI	J 67Hff=====s   "C? ?%D$c                 z    | sdS | dk    rdS dD ]}|                     |           r|c S t          d|           )Ndefaultallalways)rg   ri   ignorerD   onceerrorzinvalid action: )
startswithrP   )rC   as     r   r`   r`      sb     yxxG  << 	HHH	
,vv7
8
88r   c                    | st           S d| vrdd l}| }nO|                     d          \  }}}	 t          |d d |g          }n!# t          $ r t          d|          d w xY w	 t          ||          }n!# t          $ r t          d|           d w xY wt          |t                     st          d|           |S )N.r   zinvalid module name: zunknown warning category: zinvalid warning category: )	Warningbuiltins
rpartition
__import__ImportErrorrP   getattrAttributeError
issubclass)r   mklassrD   _cats         r   ra   ra      s    
(#..s335	P64w77AA 	P 	P 	P,FFDEE4O	PSa S S SlXXGHHdRSc7## IlXXGHHHJs   A A!%A6 6Bc                 ,    	 | j         j        }d|v od|v S )N	importlib
_bootstrap)f_codeco_filename)r0   r   s     r   _is_internal_framer     s$    P|'H("?|x'??r   c                 h    	 | j         } | 't          |           r| j         } | t          |           | S r   )f_backr   )r0   s    r   _next_external_framer     sB    ELE

 25 9 9
 
 25 9 9
Lr      c           
         	 t          | t                    r| j        }|t          }t          |t                    rt          |t                    s4t          d                    t	          |          j                            	 |dk    s!t          t          j        d                    rt          j        |          }nAt          j        d          }t          |dz
            D ]}t          |          }|t          |j        }|j        j        }|j        }n # t          $ r t          j        }d}d}Y nw xY wd|v r	|d         }	nd}	|                    di           }
t+          | ||||	|
||           d S )Nz/category must be a Warning subclass, not '{:s}'r   r   r$   z<string>__warningregistry__)
isinstancerq   	__class__UserWarningtyperx   r4   formatr$   r   r   	_getframeranger   rI   	f_globalsr   r   f_lineno__dict__
setdefaultr   )r   r   
stacklevelr)   r0   xglobalsr   r   rD   registrys              r   r   r      s   D'7## %$x&& F:h+H+H F %%+VDNN,C%D%DF F 	F ??0q1A1ABB? M*--EEM!$$E:a<(( % %,U33=$$ ! /<+    , W$!!"7<<H'8Xvvx6# # # # #s   A=D D;:D;c                 (   t          |          }|.|pd}|dd                                          dk    r
|d d         }|i }|                    dd          t          k    r|                                 t          |d<   t          | t                    rt          |           }| j        }n| } ||           } |||f}	|                    |	          rd S t          D ]V}
|
\  }}}}}||
                    |          r5t          ||          r%||
                    |          r|dk    s||k    r nWt          }|dk    rd S dd l}|                    ||           |dk    r| |dk    r0d	||	<   ||f}t                              |          rd S d	t          |<   nU|d
k    rnN|dk    r'd	||	<   ||df}|                    |          rd S d	||<   n!|dk    rd	||	<   nt!          d|d|
          t#          | ||||          }t%          |           d S )Nz	<unknown>z.pyversionr   rj   rl   rk   r   ri   rD   rg   zUnrecognized action (z) in warnings.filters:
 )rc   lowerget_filters_versionclearr   rq   strr   rG   matchrx   defaultactionr%   getlinesonceregistryRuntimeErrorr   r7   )r   r   r   r   rD   r   module_globalsr)   r    keyrL   rC   r   r|   modlnr%   oncekeyaltkeys                      r   r   r   H  s    [[F~(["##;%''CRC[F||Iq!!%555.'7## $7||$(7##6
"C||C   $(!S#r[CIIdOO[x%% [CIIf--[1WW"E x000"G$$ 	F !W	8			8		!$<< 	F	9		 lvvtt  	 (Hff
E
ECr   c                   $    e Zd ZdZ	 	 ddZd ZdS )r   )r   r   r   r   r   r   r)   Nc                     || _         || _        || _        || _        || _        || _        || _        |r|j        nd | _        d S r   )	r   r   r   r   r   r   r)   r$   _category_name)selfr   r   r   r   r   r   r)   s           r   __init__zWarningMessage.__init__  sN      		3;Eh//r   c                 X    d| j         d| j        d| j        d| j        d| j        dS )Nz{message : z, category : z, filename : z, lineno : z	, line : })r   r   r   r   r   )r   s    r   __str__zWarningMessage.__str__  s=     $(LLL$2E2E2E$(MMM4;;;			K 	Lr   )NNN)r$   rQ   rR   _WARNING_DETAILSr   r   rN   r   r   r   r     sR        * BF#'	F 	F 	F 	FL L L L Lr   r   c                   8    e Zd Z	 dddeddddZd Zd Zd ZdS )	r
   FNr   )recordrD   rC   r   r   r>   c                    	 || _         |t          j        d         n|| _        d| _        |	d | _        d S ||||f| _        d S )NwarningsF)_recordr   modules_module_entered_filter)r   r   rD   rC   r   r   r>   s          r   r   zcatch_warnings.__init__  sR    	 28.s{:..f>DLLL"Hff=DLLLr   c                    g }| j         r|                    d           | j        t          j        d         ur|                    d| j        z             t          |           j        }|dd                    |          dS )Nzrecord=Truer   z	module=%r(z, ))r   r>   r   r   r   r   r$   join)r   rV   names      r   __repr__zcatch_warnings.__repr__  s{    < 	'KK&&&<s{:666KKdl2333Dzz"44411r   c                    | j         rt          d| z            d| _         | j        j        | _        | j        d d          | j        _        | j                                         | j        j        | _        | j        j        | _        | j	        t          | j	          | j        r+g }|j        | j        _        | j        j        | j        _        |S d S )NzCannot enter %r twiceT)r   r   r   rG   _filtersrK   r   _showwarningr   r   r   r   r>   r2   )r   logs     r   	__enter__zcatch_warnings.__enter__  s    = 	?6=>>>,#}QQQ/%%''' L4!%!?<#$,''< 	C-0ZDL* (,|'EDL$J4r   c                     | j         st          d| z            | j        | j        _        | j                                         | j        | j        _        | j        | j        _        d S )Nz%Cannot exit %r without entering first)	r   r   r   r   rG   rK   r   r   r   )r   exc_infos     r   __exit__zcatch_warnings.__exit__  sa    } 	OFMNNN#}%%'''#'#4 )-)?&&&r   )r$   rQ   rR   rq   r   r   r   r   rN   r   r   r
   r
     st        $ "'twq> > > > >"2 2 2  *@ @ @ @ @r   r
   z@{name!r} is deprecated and slated for removal in Python {remove})_versionc                   	 |d          d|d          }|d d         |k    s|d d         |k    r#|d         dk    r| d| d}t          |          |                    | |	          }t          |t          d
           d S )Nr   rp   r         alphaz% was slated for removal after Python z alpha)r   rH   )r   )r   r   r   DeprecationWarning)r   r   rH   r   remove_formattedr   s         r   _deprecatedr     s     !)11fQi11!v8BQB<6#9#9hqkW>T>TVV>NVVV3nn$/?n@@S$333333r   c                 P    d j          dg} j        Pdd ldd l} fd}|                    d           ||                    t           |                                z  }d                    |                              d          }t          |t          d 	           d S )
Nzcoroutine 'z' was never awaited
r   c               3   ~   K   t          j                  D ]$\  } }}                    | |          }| |||fV  %d S r   )reversed	cr_originr&   )r   r   funcnamer   coror%   s       r   extractz*_warn_unawaited_coroutine.<locals>.extract  s^      .6t~.F.F 9 9*&( ((6::4888889 9r   z-Coroutine created at (most recent call last)
r;   r#   r   )r   r   r)   )rR   r   r%   	tracebackr>   format_listlistr   rstripr   RuntimeWarning)r   	msg_linesr   r   r   r%   s   `    @r   _warn_unawaited_coroutiner     s    >d'>>>I ~!########	9 	9 	9 	9 	9 	9 	IJJJY**4		??;;;	
'')


#
#D
)
)C 	~!DAAAAAAr   )rG   _defaultaction_onceregistryr   r   rK   Trg   c                      t           dz  a d S )Nr   )r   rN   r   r   rK   rK   2  s    Ar   gettotalrefcount__main__)r   rD   r>   rj   )r   r>   )NNr   )Nr   N)NNNN)0r   __all__r   r   r   r   r2   r7   r9   r   rq   r   r   rB   r	   r'   rP   rX   rT   r`   ra   r   r   r   r   objectr   r
   _DEPRECATED_MSGversion_infor   r   	_warningsrG   r   r   rK   r   r   _warnings_defaultsru   r   warnoptionshasattrr   PendingDeprecationWarningImportWarningResourceWarningrN   r   r   <module>r      s   , 



. . .   
$ $ $ $
  9 9 9x     & $ $ $ $ $&1!J !J !J !JF #*!E E E E E     
	 	 	 	 	9 	 	 	
F F F> > >89 9 9  *@ @ @  &# &# &# &#R >BD D D DNL L L L LV L L L,I@ I@ I@ I@ I@V I@ I@ I@X U- 43CS 4 4 4 4 4(B B B<B B B B B B B B B B B B B B B B"M L   GML           C73*++ Cy+=(	4 	4 	4 	4X(:1EEEEX(A!LLLLXa@@@@XBBBBs   B( (B=<B=