+
    iݱ  c                   s   ^ RI t ^ RIt^ RIt^ RIt^ RI5 ^ RIHtHtHtH	t	H
t
HtHtHtHtHt ^ RIHt . R{O],           tA]P$                  ]P&                  ]P(                  ]]]3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%]R,          t&]R,          t']R,          t(]R,          t)]R,          t*]R,          t+]R,          t,]R,          t-]R,          t.]R,          t/]R,          t0]R,          t1]2! ]34      t4]5! ]4      t6]Pn                  ! 4        F  w  t8t9]8]4]9&   ]9]6]8&   K  	  ]Pn                  ! 4        U UUu/ uF  w  rV F  q"V bK  	  K  	  uppp t:R t;R}RRR RR!R"R#R"R$R"R%R"/R& llt<R}RRR!R"R#R"R$R"R%R"/R' llt=^R(^R)^R*^R+^R,^ R-^@R.^R/R0R1R2R3R4R5R6R7/t>R8 t? ! R9 R:4      t@]@! 4       tAR; tBR< tCR= tDR> tER? tFRR/R@ ltG]P                  ! RA. R~OR.^,          RB7      tI]P                  ! RC. RO. RORB7      tJRD]JPf                  nK        RE]JP                  nK        RF]JP                  nK        RG]JP                  nK        RH]JP                  nK        RI]JP                  nK        RJ]JP                  nK        RK]JP                  nK        RL]JP                  nK        RM]JP                  nK        RN]JP                  nK        RO]JP                  nK        ]P                  ! RPRQ4      tV ! RR RS]V4      tW^tX^tYRT tZRU t[ ! RV R]J4      t\ ! RW RX4      t] ! RY RZ4      t^R[RR!RR#R"/R\ lt_R] t`R^ taR_ tbR` tcRa tdRb teRRc ltfRRRR!R"R#R"R$R"R%R"/Rd lltgRRR RR!R"R#R"R$R"R%R"/Re lthRRf ltiRgtjRh tkRi tlRRj^ RkRRlRRmRRnRRoR/Rp lltmRRq ltnRr to]gtp^ tq^]q^,
          ,          trRs tsRt ttRu tuRv tvRw tw ! Rx R4      txR}Ry lty]zRz8X  d
   ]y! 4        R# R# u uppp i )    N)Z*)
__all___cache_format_inline_cache_entries_nb_ops_common_constants_intrinsic_1_descs_intrinsic_2_descs_special_method_names_specializations_specialized_opmap)get_executorInstructionBytecodeCONVERT_VALUESET_FUNCTION_ATTRIBUTEENTER_EXECUTORLOAD_GLOBALLOAD_SMALL_INT	BINARY_OPJUMP_BACKWARDFOR_ITERSEND	LOAD_ATTRLOAD_SUPER_ATTRCALL_INTRINSIC_1CALL_INTRINSIC_2LOAD_COMMON_CONSTANTLOAD_SPECIALLOAD_FAST_LOAD_FAST!LOAD_FAST_BORROW_LOAD_FAST_BORROWSTORE_FAST_LOAD_FASTSTORE_FAST_STORE_FASTIS_OPCONTAINS_OPEND_ASYNC_FORCACHEc                 sV     \        WR 4      #   \         d     Mi ; i\        YR4      # )Zevalexec)compileZSyntaxError)sourcename   &&/usr/lib64/python3.14/dis.py_try_compiler+   H   s3    vV,, 6((s    filedepthshow_cachesFadaptiveshow_offsetsshow_positionsc                s   V f   \        WVWVR7       R # \        V R4      '       d   V P                  p \        V R4      '       d   V P                  p M\\        V R4      '       d   V P                  p M=\        V R4      '       d   V P
                  p M\        V R4      '       d   V P                  p \        V R4      '       dy   \        V P                  P                  4       4      pV FM  w  r\        V	\        4      '       g   K  \        RV,          VR	7        \        WW#WEVR
7       \        VR	7       KO  	  R # \        V R4      '       d   \        WW#WEVR
7       R # \        V \         \"        34      '       d   \%        V 4      p^\'        \)        \'        V4      4      4      ,           p\+        TV'       d/   \'        \)        \-        \'        V 4      ^,
          R4      4      4      M^ VVR7      p\/        VR7      p\1        WVR7       R # \        V \(        4      '       d   \3        WW#WEVR
7       R # \        R\5        V 4      P6                  ,          4      h  \         d   p
\        RYR	7        R p
?
ELJR p
?
ii ; i)Nr,   r.   r/   r0   r1   __func____code__gi_codeag_codecr_code__dict__zDisassembly of %s:r,   r,   r-   r.   r/   r0   r1   zSorry:co_code'  )r,   offset_widthlabel_widthr.   )
labels_map)arg_resolver	formatter(don't know how to disassemble %s objects)distbhasattrr3   r4   r5   r6   r7   sortedr8   items
isinstance
_have_codeprintdis	TypeError_disassemble_recursiveZbytesZ	bytearray_make_labels_maplenstr	FormattermaxArgResolver_disassemble_bytes_disassemble_strtype__name__)xr,   r-   r.   r/   r0   r1   rF   r(   Zx1Zmsgr?   r>   rA   r@   s   &$$$$$$        r*   rJ   rJ   U   s    	y48'	Hq*JJq*JJ	I		II	I		II	I		IIq*qzz'')*HD"j))*T1=4UV^  KY  Z 4   
I		q5\d  Q_  	`	Ay)	*	*%a(
#c#j/2334NZ3s3s1vz43H/I+J`a*5*57	 #j919M	As		UV^  KY  	ZBQ(() * 	*# ! 4(C334s   II5I00I5c          
      sf   V fd    \        \        R4      '       d   \        P                  P                  p M\        P                  p  V P                  '       d   V P                  p K   \        V P                  P                  V P                  WW4VR7       R #   \
         d    \        R4      R hi ; i)Nlast_excz no last traceback to disassembler2   )rD   sysrX   Z__traceback__Zlast_tracebackZAttributeErrorRuntimeErrortb_nextdisassembletb_framef_codetb_lasti)tbr,   r.   r/   r0   r1   s   &$$$$$r*   rC   rC      s    	z	MsJ''\\//'' jjjrzz"""BKKd^f  Sa  b  	MABL	Ms   0B B B0Z	OPTIMIZEDZ	NEWLOCALSZVARARGSZVARKEYWORDSZNESTEDZ	GENERATORZNOFREEZ	COROUTINEi   ZITERABLE_COROUTINEi   ZASYNC_GENERATORi   ZHAS_DOCSTRINGi   ZMETHODc           	      s2   . p\        ^ 4       F\  p^V,          pW,          '       g   K  VP                  \        P                  V\	        V4      4      4       W,          p V '       d   K\   M	  VP                  \	        V 4      4       RP                  V4      # )i    , )rangeappendCOMPILER_FLAG_NAMESgetZhexjoin)ZflagsnamesiZflag   &   r*   pretty_flagsrj      ss    E2Y!t<<LL,00s4yABME5  	SZ 99U    c                   s&   a  ] tR t^t o R tRtV tR# )_Unknownc                s    R # )z	<unknown> self   &r*   __repr__Z_Unknown.__repr__   s    rk   rm   N)rV   
__module____qualname____firstlineno__rq   __static_attributes____classdictcell__Z__classdict__   @r*   rl   rl      s      rk   rl   c                 s   \        V R 4      '       d   V P                  p \        V R4      '       d   V P                  p M\\        V R4      '       d   V P                  p M=\        V R4      '       d   V P                  p M\        V R4      '       d   V P
                  p \        V \        4      '       d   \        V R4      p \        V R4      '       d   V # \        R\        V 4      P                  ,          4      h)r3   r4   r5   r6   r7   z<disassembly>r;   rB   )rD   r3   r4   r5   r6   r7   rG   rO   r+   rK   rU   rV   rW   rp   r*   _get_code_objectrz      s     q*JJq*JJ	I		II	I		II	I		II!SO,q)
>G$$% & &rk   c                 sf    \         V ,          pV\        9   d   \        \        V,          ,          # T # N)_all_opnamedeoptmap
_all_opmap)opr(      & r*   _deoptopr      s&    r?D)-)9:htn%ArArk   c                 s   V'       d   V P                   p. pR p\        ^ \        V4      ^4       F  pW%,          W%^,           ,          rvV\        8X  d6    \	        W4      pV'       d"   VP                  4       VP                  4       rvRpVP                  VP                  4       4       VP                  VP                  4       4       K  	  V'       g   V# RP                  V4      # V P                  #   \
        \        3 d    Rp Li ; i)FNTrk   )Z_co_code_adaptiverb   rN   r   r   Z
ValueErrorrZ   Z
get_opcodeZ	get_opargrc   Zto_bytesrf   r;   )	cor/   codeZresZfoundrh   r   argZexs	   &&       r*   _get_code_arrayr      s    ##q#d)Q'AgtaCy^#%b,B  mmor||~ EJJr{{}%JJs||~& ( !t3chhsm3zz #L1 Bs   C11DDc                 s*    \        \        V 4      4      # r{   )_format_code_inforz   ry   rp   r*   	code_infor      s    -a011rk   c                 s   . pVP                  R V P                  ,          4       VP                  RV P                  ,          4       VP                  RV P                  ,          4       VP                  RV P                  ,          4       VP                  RV P
                  ,          4       VP                  RV P                  ,          4       VP                  RV P                  ,          4       VP                  R\        V P                  4      ,          4       V P                  '       dF   VP                  R4       \        V P                  4       F  pVP                  R	V,          4       K  	  V P                  '       dF   VP                  R
4       \        V P                  4       F  pVP                  RV,          4       K  	  V P                  '       dF   VP                  R4       \        V P                  4       F  pVP                  RV,          4       K  	  V P                  '       dF   VP                  R4       \        V P                  4       F  pVP                  RV,          4       K  	  V P                  '       dF   VP                  R4       \        V P                  4       F  pVP                  RV,          4       K  	  RP!                  V4      # )zName:              %szFilename:          %szArgument count:    %szPositional-only arguments: %szKw-only arguments: %szNumber of locals:  %szStack size:        %szFlags:             %sz
Constants:z%4d: %rzNames:z%4d: %szVariable names:zFree variables:zCell variables:Z
)rc   Zco_nameZco_filenameZco_argcountZco_posonlyargcountZco_kwonlyargcountZ
co_nlocalsZco_stacksizerj   Zco_flags	co_consts	enumerateco_namesZco_varnamesZco_freevarsZco_cellvarsrf   )r   ZlinesZi_cZi_nri   r*   r   r      s   E	LL(2::56	LL(2>>9:	LL(2>>9:	LL023H3HHI	LL(2+?+??@	LL(2==89	LL(2??:;	LL(<+DDE	|||\"R\\*CLLS) +	{{{XR[[)CLLS) *	~~~&'R^^,CLLS) -	~~~&'R^^,CLLS) -	~~~&'R^^,CLLS) -99Urk   c                s2    \        \        V 4      VR 7       R# )r9   N)rI   r   )r   r,   s   &$r*   	show_coder     s    
 
)B-d#rk   	Positions)defaults_Instructionz!Human readable name for operationzNumeric code for operationz6Numeric argument to operation (if any), otherwise Nonez4Resolved arg value (if known), otherwise same as argz0Human readable description of operation argumentz1Start index of operation within bytecode sequencez|Start index of operation within bytecode sequence, including extended args if present; otherwise equal to Instruction.offsetz9True if this opcode starts a source line, otherwise FalsezGsource line number associated with this opcode (if any), otherwise NonezFA label (int > 0) if this instruction is a jump target, otherwise NonezPdis.Positions object holding the span of source code covered by this instructionzGlist of (name, size, data), one for each cache entry of the instruction_ExceptionTableEntryBasezstart end target depth lastic                   s    ] tR tRtRtR# )_ExceptionTableEntryiM  rm   N)rV   rr   rs   rt   ru   rm   rk   r*   r   r   M  s    rk   r   c                 s0    \         P                  ! V ^ 4      # )r    )r   re   opnamerp   r*   _get_cache_sizer   S  s     $$VQ//rk   c                 s   \        V 4      p\        \        V,          4      pV\        9   d>   \	        V4      '       d   V) pV^,           V^,          ,           pV^V,          ,          pV# V\
        9   d   V^,          pV# RpV#    N)r   r   r|   hasjrel_is_backward_jumphasjabs)r   r   offsetdeopcachestargets   &&&   r*   _get_jump_targetr   V  s    
 B<D[./FwT""$C!c!e#!f*
 M	 
Q M Mrk   c                   s   a  ] tR tRt o ]RR l4       t]R 4       t]R 4       t]R 4       t	]R 4       t
]R 4       t]R	 4       t]R
 4       tR tRtV tR# )r   ih  Nc                s:    \        V \        V ,          WW4WVWxW4      # r{   )r   r~   )r   r   argvalargreprr   start_offsetstarts_lineline_numberlabel	positions
cache_infos   &&&&&&&&&&&r*   makeZInstruction.make}  s'    
 6:f#5sG'k)a 	ark   c                s    V P                   # r{   )r   rn   rp   r*   opargZInstruction.oparg  s     xxrk   c                ,    \        V P                  4      # r{   )r   opcodern   rp   r*   
baseopcodeZInstruction.baseopcode  s     $$rk   c                s0    \         V P                  ,          # r{   )r   r   rn   rp   r*   
baseopnameZInstruction.baseopname  s     doo&&rk   c                s(    V P                   ^,           # r   )r   rn   rp   r*   cache_offsetZInstruction.cache_offset  s     {{Qrk   c                sr    V P                   \        \        V P                  ,          4      ^,          ,           # r   )r   r   r|   r   rn   rp   r*   
end_offsetZInstruction.end_offset  s(       ?;t{{3K#LQ#NNNrk   c                sX    \        V P                  V P                  V P                  4      # r{   )r   r   r   r   rn   rp   r*   jump_targetZInstruction.jump_target  s      TXXt{{CCrk   c                s    V P                   R J# r{   )r   rn   rp   r*   is_jump_targetZInstruction.is_jump_target  s     zz%%rk   c                s    \         P                  ! 4       p\        VR 7      pVP                  V R4       VP	                  4       # )r9   F)ioStringIOrP   print_instructiongetvalue)ro   outputrA      &  r*   __str__ZInstruction.__str__  s4    6*	##D%0  rk   rm   NNN)rV   rr   rs   rt   staticmethodr   Zpropertyr   r   r   r   r   r   r   r   ru   rv   rw   rx   r*   r   r   h  s     * a a   % % ' '   O O D D & &! !rk   c                   sH   a  ] tR tRt o R
RR/R lltRR ltR tR tR	tV t	R# )rP   i  NFr1   c               sN    Wn         W n        W0n        W@n        W`n        Wpn        R # r{   r,   lineno_widthr=   r>   r.   r1   )ro   r,   r   r=   r>   line_offsetr.   r1   s   &&&&&&&$r*   __init__ZFormatter.__init__  s'     	((&&,rk   c                s   V P                  W4       V P                  '       d   VP                  '       d   VP                  pVP                   F  w  rEp\	        V4       Fq  pV^,          pV^ 8X  d+   V R\
        P                  V\        P                  4       2pMRpV P                  \        R\        ^ RWVRRRVP                  4      R4       Ks  	  K  	  R# R# R# )r   z:  r$   NF)print_instruction_liner.   r   r   rb   intZ
from_bytesrY   Z	byteorderr   r$   r   )	ro   instrmark_as_currentr   r(   sizedatarh   r   s	   &&&      r*   r   ZFormatter.print_instruction  s    ##E; 0 0 0\\F$)$4$4 DtAaKF Av%)F"S^^D#---P,Q"R"$//#GUAtWf$)4uH % %5 !1rk   c                sn   V P                   pV P                  pV P                  pV^ 8  ;'       d$    VP                  ;'       d    VP                  ^ 8  pV'       d   \        V P                  R7       . pV'       Edf   V P                  '       d   VP                  ;p'       d   \        ;QJ d    R V 4       F  '       d   K   RM	  RM! R V 4       4      '       d   \        p	MU\        ;QJ d    . R V 4       F  NK  	  5M! R V 4       4      p
V
^ ,           RV
^,           RV
^,           RV
^,           2p	VP                  W  4       MVP                  RV,          4       M|VP                  '       dS   VP                  e   R
MRpW,          pVP                  f   \        MVP                  pVP                  W,          4       MVP                  RV,          4       VP                  e(   RVP                   R2pVP                  VRV 2 4       MVP                  RV,          4       V^ 8  d,   VP                  \        VP                  4      RV 2 R24       V'       d   VP                  R4       MVP                  R4       VP                  VP                   P#                  \$        4      4       VP&                  e   \        VP&                  4      p\)        ^ \+        VP                   4      \$        ,
          4      pVP                  \        VP&                  4      P-                  \.        V,
          4      4       VP0                  '       d*   VP                  RVP0                  ,           R,           4       \        RP3                  V4      P5                  4       V P                  R7       R	# )r    r9   c              3   s(   "   T F  qR J x  K
  	  R # 5ir{   rm   .0Zpr   r*   	<genexpr>3Formatter.print_instruction_line.<locals>.<genexpr>  s     >o9os   FTc              3   s0   "   T F  qf   RMTx  K  	  R # 5i)N?rm   r   r   r*   r   r     s     "TOq)3#:Os   :-Z Nz%%%ddz%%%dsZLZ>z  z-->z   Z())r   r=   r>   r   r   rI   r,   r1   r   Zall
_NO_LINENOZtuplerc   r   r   reprr   Zljust_OPNAME_WIDTHr   rQ   rN   Zrjust_OPARG_WIDTHr   rf   Zrstrip)ro   r   r   r   r=   r>   Znew_source_lineZfieldsZinstr_positionsZpositions_strZpsZ
lineno_fmtlinenolblr   Zopname_excesss   &&&             r*   r   Z Formatter.print_instruction_line  s   ((((&&'!+ , , ,,, , <<!+ 	 tyy!<"""&+oo5?5s>o>sss>o>>>(2"U"TO"TUU"TO"TT+-a5'2a5'2a5'2a5'(JMM]>$BDMM#"45$$$,1,=,=,IwJ!+!:J+0+<+<+DZ%J[J[FMM*"56MM#"45;;"ekk]!$CMMS;-02MM#+,!MMT%,,/,/?@CDMM% MM% ell((7899 uyy/C  3u||#4}#DEMMM$uyy///}0LMN}}}cEMM1C78chhv%%'dii8rk   c                s   V P                   pV'       dy   \        R VR7       V Fc  pVP                  '       d   RMRpVP                  pVP                  pVP
                  p\        RV RV RV RVP                   RV 2
VR7       Ke  	  R	# R	# )
zExceptionTable:r9   z lastir   z  Lz to Lz -> Lz [Z]N)r,   rI   lastistart_label	end_labeltarget_labelr-   )ro   exception_entriesr,   Zentryr   startendr   s   &&      r*   print_exception_tableZFormatter.print_exception_table   s    yy#$/*$)KKKR))oo++E7%uE&EKK=%QX\] + rk   )r,   r>   r   r=   r.   r1   )Nr    r    r    r    F)F)
rV   rr   rs   rt   r   r   r   r   ru   rv   rw   rx   r*   rP   rP     s)     -EJ-*$=9~	^ 	^rk   rP   c                   s<   a  ] tR tRt o RR ltR tR tR tRtV t	R# )	rR   i,  Nc                sL    Wn         W n        W0n        T;'       g    / V n        R # r{   r   rg   varname_from_opargr?   )ro   r   rg   r   r?   s   &&&&&r*   r   ZArgResolver.__init__-  s!    "
"4$**rk   c                s   \        V4      pV\        9   d
   V^,          # V\        9   dV   \        V4      '       d   V) MTpV^,           V^,          ,           p\	        \
        V,          4      pV^V,          ,          pV# R# r   )r   r   r   r   r   r|   )ro   r   r   r   r   Z
signed_argr   r   s   &&&&    r*   offset_from_jump_argZ ArgResolver.offset_from_jump_arg3  sl    |7?7NW_!24!8!8#cJaZ*Q,.F$[%67Fa&j FMrk   c                s:    V P                   P                  VR 4      # r{   )r?   re   )ro   r   r)   r*   get_label_for_offsetZ ArgResolver.get_label_for_offset?  s    ""6400rk   c                s  a V P                   f   R MV P                   P                  pR pRp\        V4      pSEe   SpV\        9   d   \	        VSV P
                  4      w  rVWV3# V\        9   d   V\        8X  d5   \        S^,          V4      w  rVS^,          '       d   V'       d   V R2pWV3# V\        8X  d5   \        S^,          V4      w  rVS^,          '       d   V'       d   V R2pWV3# V\        8X  d5   \        S^,          V4      w  rVS^,          '       d   V'       d   V R2pWV3# \        SV4      w  rV WV3# V\        9   g   V\        9   d>   V P                  VSV4      pV P                  V4      pV\        8X  d   RMRp	V	 RV 2pWV3# V\         \"        \$        \&        39   dW   S^,	          p
S^,          p\        WP(                  4      w  r\        WP(                  4      w  rVR,           V,           pW3pWV3# V\*        9   g   V\,        9   d   \        SV P(                  4      w  rVWV3# V\.        9   d/   \0        S^,	          ,          pTpS^,          '       d   RV R	2pWV3# V\2        8X  d&   R \4        \6        \8        3S,          pRS,          pWV3# V\:        8X  d,   RP=                  V3R
 l\?        \@        4       4       4      pWV3# V\B        8X  d   \D        S,          w  ppWV3# V\F        8X  d   \H        S,          pWV3# V\J        8X  d   \L        S,          pWV3# V\N        8X  dB   \P        S,          p\S        V\T        4      '       d   VPV                  pWV3# \7        V4      p WV3# V\X        8X  d   \Z        S,          pWV3# V\\        8X  d   V'       d   RMRpWV3# V\^        8X  d   V'       d   RMRpWV3# )Nr   z + NULLz + NULL|selfZfromZtoz Lra   zbool(r   c              3   s\   <"   T F!  w  rS^V,          ,          '       g   K  Vx  K#  	  R# 5i)   Nrm   )r   rh   Zsr   s   &  r*   r   Z1ArgResolver.get_argval_argrepr.<locals>.<genexpr>v  s)      $52P$!'*ad|| %&A2Ps   ,
,zis notZisznot inZin)r   rO   r   ascii)0rg   Z__getitem__r   hasconst_get_const_infor   Zhasnamer   _get_name_infor   r   ZhasjumpZhasexcr   r   r#   r   r   r   r    r   ZhaslocalZhasfreeZ
hascompareZcmp_opr   rO   r   r   r   rf   r   FUNCTION_ATTR_FLAGSr   r   r   r   r   r   r   r   rG   rU   rV   r   r   r!   r"   )ro   r   r   r   get_namer   r   r   r   ZprepositionZarg1Zarg2Zval1Zargrepr1Zval2Zargrepr2_Zobjs   &&f&              r*   get_argval_argreprZArgResolver.get_argval_argreprB  s   ::-44::3I3I|?
 Fx"1$T^^"Lx w ;&&4S!VX&FOFaW%,IW"5n m Y&&4S!VX&FOFaW%,I\":f e _,&4S!VX&FOFaW%,I\":^ [ '5S(&COFGZ Y DFN222sFC//7(,(=f4(MC51N M -/PRfh}~~axRx!/6M6M!N!/6M6M!N"T/H4@ ? !TW_"0d6M6M"N< ; #q) 88 %gYa0G2 1 &T51#66s;, + //)) $5)<O2P $5 5( % "$S\
7" ! )),S1  )),S1  --',c4((!llG  #3iG  %/4
 	 &,($  $&,($rk   )r   r?   rg   r   )NNNN)
rV   rr   rs   rt   r   r   r   r   ru   rv   rw   rx   r*   rR   rR   ,  s      +
1H Hrk   rR   
first_linec          	      sF   \        V 4      p\        \        V4      4      pVe   WP                  ,
          pM^ pVP                  p\        VP                  VP                  VP                  \        V4      R7      p\        \        WC4      VVVP                  4       VVR7      # )Nr   
linestartsr   co_positionsoriginal_coder@   )rz   dictfindlinestartsco_firstlinenor;   rR   r   r   _varname_from_opargrM   _get_instructions_bytesr   r   )	rW   r   r.   r/   r   r   r   r   r@   s	   &$$$     r*   get_instructionsr     s     
!	BnR()J #4#44JJM%'[[242H2H*:=*IKL #?2#@.8/:020A1>0<> >rk   c                 sD    V \         8X  d   V# \        pVe	   W!,          pV# r{   )r   UNKNOWN)r   r   r   r   s   &&& r*   _get_const_valuer     s(     
^
FMrk   c                 sN    \        WV4      pV\        Jd   \        V4      MR pW43# )r   )r   r   r   )r   r   r   r   r   s   &&&  r*   r   r     s*     by1F$G3d6lG?rk   c                 s2    Ve   V! V 3/ VB pW33# \         R3# )Nr   )r   )Z
name_indexr   Z	extrainfor   s   &&, r*   r   r     s+     *2	2~{rk   c                 s    \        V 4      pV^?,          pV^@,          '       d&   V^,          p\        V 4      pW!^?,          ,          pK4  V# )i?   )next)iteratorZbZvalr   r*   _parse_varintr     s?    XA
b&C
B$$	NtJrk   c           	      s^   \        V P                  4      p. p  \        V4      ^,          p\        V4      ^,          pW4,           p\        V4      ^,          p\        V4      pV^,	          p\        V^,          4      p	VP	                  \        W5WhV	4      4       K    \         d    Tu # i ; i)T)iterZco_exceptiontabler   Zboolrc   r   ZStopIteration)
r   r   Zentriesr   Zlengthr   r   Zdlr-   r   s
   &         r*   _parse_exception_tabler     s    D**+HG!(+A-E"8,Q.F.C"8,Q.Fx(B!GEAJENN/F5QR s   BB B,+B,c                 s"    \         V ,          R9   # )r   )r   ZJUMP_BACKWARD_NO_INTERRUPTr#   r   )r   rp   r*   r   r     s    ": + + +rk   c              #   s`  "   T;'       g    T pT;'       g    \        R4      pR pRpRp\        V4       EFr  w  rrVe$   W9   pV'       d	   W,          pVe
   Wr,           pMRp\        \        VR4      !  p\	        V4      pW	,          pV'       d   VP                  WV	4      w  ppMT\        V4      pp\        \        V,          4      p\        V4       F  p\        VR4       K  	  V'       d{   . pT	p\        \        V,          ,          P                  4        FK  w  ppV V^,           V^,           ^V,          ,            pVV^,          ,          pVP                  VVV34       KM  	  MRpV'       d   VP                  V	4      MRp\        \        V,          WVVWWhVVV4      x  EKu  	  R# 5i)FNrm   )r   _unpack_opargsr   r   r   r   r   r   r|   rb   r   r   rF   rc   r   r   )r   r   r   r   r   r@   r   Zlocal_line_numberr   r   r   r   r   r   r   r   r   r   r   r   r   r(   r   r   r   s   &&&&&&                   r*   r   r     s     "))TM++48LKK)7)F%b! .K$.$6! ,/="tL"56	|\*==bvNOFG!49GF T!23vAr"  J!L+F4L9??A
dL1,lQ.>T.IJq(!!4t"45 B
 J=I11&9t+b/2FG J8 	8E *Gs   F.CF.0BF.4:F.c                sV   \        \        V 4      4      p\        V 4      pV'       d   \        V 4      p	M\	        V4      p	\        V P                  VR 7      p
^\        \        \        V
4      4      4      ,           p\        TT	V'       d9   \        \        \        \        V P                  4      ^,
          R4      4      4      M^ VVVR7      p\        V P                  V P                  V P                  V
R7      p\        \!        W4      WWP#                  4       V P                  WR7       R# ))r   r<   r   r   )r   r   r   r@   rA   N)r   r   r   _get_positions_width_get_lineno_widthrM   r;   rN   rO   rP   rQ   rR   r   r   r   rS   r   r   )r   r   r,   r.   r/   r0   r1   r   r   r   r?   r>   rA   r@   s   &&$$$$$       r*   r\   r\   *  s     nR()J.r2+B/(4!"**@QRJc#c*o.//Kt'3S_s3s3rzz?Q3F/M+N'Oef&1&1)79I %'[[242H2H*46L r4e):IZ%'ZZlark   c                s    \        WW4WVR 7       Ve   V^ 8  dd   Ve
   V^,
          pV P                   FD  p\        VR4      '       g   K  \        VR7       \        RV: R2VR7       \	        WqW#WEVR7       KF  	  R# R# )r2   Nr;   r9   zDisassembly of r   r:   )r\   r   rD   rI   rL   )r   r,   r-   r.   r/   r0   r1   rW   s   &$$$$$$ r*   rL   rL   C  st    ;Xd  E}	AIEAq)$$4 a1=&%Q_	  "rk   c                 s   \        \        V 4      4      p\        V4      pV F;  w  rEp pVP                  V4       VP                  V4       VP                  V4       K=  	  \        V4      p\	        \        V4      4       UU	u/ uF  w  rW^,           bK  	  p
pp	V FH  pWP
                  ,          Vn        WP                  ,          Vn        WP                  ,          Vn
        KJ  	  V
# u up	pi )r   )Zset
findlabelsZaddrE   r   r   r   r   r   r   r   )r   r   Zjump_targetslabelsr   r   r   r   rh   r   r?   Zes   &&          r*   rM   rM   R  s    z-01LF$5 FAq

5

3

6 %6 F^F1:6&>1JK1J+1&A#+1JJK"77+ '#HH-   Ls   C*z  --c                 s   V f   ^ # \        \        R V P                  4       4      RR7      pVR8X  d   ^ # \        ^\        \	        V4      4      4      pV\        \
        4      8  d%   R V P                  4       9   d   \        \
        4      pV# )N)default)rQ   ZfilterZvaluesrN   rO   r   )r   Z	maxlinenor   r   r*   r   r   c  sq    F4!2!2!45rBIBq#c)n-.Lc*o%$*2C2C2E*E:rk   c                 sJ   R p^ pV P                  4        F[  pT\        ;QJ d    R V 4       F  '       g   K   RM	  R M! R V 4       4      ,          p\        R V 4       4      p\        WB4      pK]  	  V'       d(   ^\        \	        \
        4      ^V,           4      ,           # ^ # )Fc              3   sB   "   T F  p\        V\        4      x  K  	  R # 5ir{   )rG   r   r   r   r*   r   '_get_positions_width.<locals>.<genexpr>x  s     ?YAs++Ys   Tc              3   sT   "   T F  qf   ^M\        \        V4      4      x  K   	  R # 5ir{   )rN   rO   r   r   r*   r   r  y  s     GYACF3Ys   &()r   ZanyZsumrQ   rN   r   )r   Z	has_valueZvalues_widthr   Zwidth   &    r*   r   r   o  s     IL&&(	SS?Y?SSS?Y???	GYGG5/ ) 3s:L(8999rk   r   r   r   r   r@   rA   c          	      s@    \        WVVVVR 7      p	\        WWR7       R# )r   )r   N)r   print_instructions)
r   r   r   r   r   r   r   r@   rA   instrss
   &&&$$$$$$ r*   rS   rS     s)     %T7B8D9F8D	FF v)Irk   c           
      s   V  Fs  pVP                   Tu;8*  ;'       dE    VP                   ^\        \        \        VP                  4      ,          4      ,          ,           8*  Mu pVP                  WE4       Ku  	  VP                  V4       R# r   )r   r   r|   r   r   r   r   )r  r   rA   r   r   Zis_current_instrs   &&&&  r*   r  r    sm     <<5 W W||a/+hu||>T2U"VVVW##E<	  ##$56rk   c                 s2    \        \        V R 4      3/ VB  R# )z<dis>N)rL   r+   )r'   Zkwargss   &,r*   rT   rT     s    <8CFCrk   c              #   s  "   ^ p^ p^ p\        ^ \        V 4      ^4       F  pV'       d   V^,          pK  W,          p\        V4      p\        \        V,          4      pV\
        9   dM   W^,           ,          V,          pV\        8X  d
   V^,          M^ pV\        8  d   V^\        ,          ,          pMRp^ pV\        8X  d   V^,          pWDWW3x  K  WB^,          ,
          pWHWW3x  ^ pK  	  R# 5i)r    N)rb   rN   r   r   r|   ZhasargEXTENDED_ARG_INT_OVERFLOW)	r   Zextended_argZextended_args_offsetr   rh   r   r   r   r   s	   &        r*   r   r     s     LF1c$i#aKFW| T!236>s)l*C)-)=C1H1L },M 11CL< A% /!A55LB,,#$ 3 $s   C0C2c                 s    . p\        V 4       F7  w  r#rEVf   K  \        WEV4      pVf   K  Wa9  g   K&  VP                  V4       K9  	  V# r{   )r   r   rc   )r   r   r   r   r   r   r      &      r*   r   r     sO     F,T22?$Rf5E}"e$ 3 Mrk   c              #   sb   "   R pV P                  4        F  w  r#pWAJg   K  TpW$3x  K  	  R# 5i)FN)Zco_lines)r   Zlastliner   r   Zliner  r*   r   r     s9      H MMODH+ , s   //c           	   #   s^  "   \         R ,          pV P                  pV P                  p\        V P                  4       UUUu. uF  w   rEpV\
        8w  g   K  WV3NK  	  pppp\        V4       F  w  pw  rYWQ8X  g   K  V^8  g   K  Wx^,
          ,          p
Wx^,
          ,          pV
^ ,          \        9   g   KK  V^ ,          \        9   g   V^ ,          \        8X  g   Kq  \        V^ ,          V^,          V4      p\        V
^ ,          V
^,          V4      pW9,          W3x  K  	  R# u upppi 5i)IMPORT_NAMEN)
opmapr   r   r   r;   r  r   r   r   r   )r   r  Zconstsrg   r   r   r   Zopargsrh   r   Zfrom_opZlevel_opZlevelZfromlists   &             r*   _find_importsr
    s      &K\\FKKE-;BJJ-G )-GMAqc<' ri-GF )#F+;BaqSkGc{H
h&!(HQK>,I(!hqk6J+GAJ
FK|U55 ,)s0   ?D-D&D&D-=D--D-8!D-AD-c              #   s   "   \         R ,          \         R,          0pV P                  p\        V P                  4       F  w   r4pWA9   g   K  W%,          x  K  	  R# 5i)Z
STORE_NAMEZSTORE_GLOBALN)r	  r   r   r;   )r   Z	STORE_OPSrg   r   r   r   s   &     r*   _find_store_namesr    sO      	lnI
 KKE'

31#?* 4s   AAAc                   sv   a  ] tR tRt o RRRRRRRRRRR	R/R
 ltR tR t]RRRR/R l4       tR t	R t
RtV tR# )r   i
  r   Ncurrent_offsetr.   Fr/   r0   r1   c               s8   \        V4      ;V n        pVf   VP                  V n        ^ V n        MW n        W(P                  ,
          V n        \        \        V4      4      V n        Wn        W0n	        \        V4      V n        W@n        WPn        W`n        Wpn        R # r{   )rz   codeobjr   r   _line_offsetr   r   _linestarts_original_objectr  r   r   r.   r/   r0   r1   )	ro   rW   r   r  r.   r/   r0   r1   r   s	   &&$$$$$$ r*   r   ZBytecode.__init__  s    ,Q//r //DO !D(O *->-> >Dr 23 !,!7!;& (,rk   c           	     sB   V P                   pVP                  p\        W P                  4      p\	        VP
                  VP                  VP                  VR 7      p\        \        WP                  4      V P                  V P                  VP                  4       VVR7      # )r   r   )r  r;   rM   r   rR   r   r   r   r   r   r/   r  r  r   )ro   r   r   r?   r@   r  r*   __iter__ZBytecode.__iter__#  s    \\

%m5K5KL
"R\\)+686L6L.8: 'r=='I262B2B373D3D46OO4E5B4@B 	Brk   c                sb    R P                  V P                  P                  V P                  4      # )z{}({!r}))ZformatZ	__class__rV   r  rn   rp   r*   rq   ZBytecode.__repr__2  s*      !8!8!%!6!68 	8rk   c               s    VP                   '       d   VP                   pK   V ! VP                  P                  VP                  W#R 7      # ))r  r.   r/   )r[   r]   r^   r_   )Zclsr`   r.   r/   s   &&$$r*   from_tracebackZBytecode.from_traceback6  s8     jjjBKKr{{
 	
rk   c                r   r{   )r   r  rn   rp   r*   infoZBytecode.info?  s     ..rk   c                s   V P                   pV P                  e   V P                  pMRp\        P                  ! 4       ;_uu_ 4       p\	        WP
                  4      pV P                  '       d/   \        \        \        \        V4      ^,
          R4      4      4      M^ pV P                  '       d   \        V4      pM\        V P                  4      p\        VP                  V P                   4      p^\        \        \        V4      4      4      ,           p\#        VVVVV P$                  V P&                  V P                  R7      p	\)        VP*                  VP,                  VP.                  VR7      p
\1        VV P                  V P$                  VV P                   VP3                  4       VP                  V
V	R7	       VP5                  4       uuR R R 4       #   + '       g   i     R # ; i)Nr<   )r,   r   r=   r>   r   r.   r1   r   )r   r   r   r   r   r   r@   rA   r   )r  r  r   r   r   r/   r0   rN   rO   rQ   r1   r   r   r  rM   r;   r   rP   r  r.   rR   r   r   r   rS   r   r   )ro   r   r   r   r   r=   r   r?   r>   rA   r@   s   &          r*   rJ   ZBytecode.disC  sq   \\*((FF[[]]f"2}}5DAEARARAR3s3s4y1}d#;<=XYL"""3B701A1AB)"**d6L6LMJc#c*o"677K!v/;/;.9.2.?.?.2.>.>151D1DFI '-/[[:<:P:P2<>L t*.*:*:+/+<+<%+151G1G,.OO,=-/ZZ,8)24 ??$= ]]]s   A)G1DGG(	)r  r  r  r/   r  r  r   r   r.   r0   r1   )rV   rr   rs   rt   r   r  rq   classmethodr  r  rJ   ru   rv   rw   rx   r*   r   r   
  sw     - -T -u -_d -sx -  JO -"B8 
u 
u 
 
/%% %%rk   c                 s   ^ RI pVP                  RR7      pVP                  RRRRR7       VP                  R	R
RRR7       VP                  RRRRR7       VP                  RRRRR7       VP                  RRRR7       VP                  V R7      p V P                  R8X  d,   Rp\
        P                  P                  P                  4       pMCV P                  p\        V P                  R4      ;_uu_ 4       pVP                  4       pRRR4       \        XVR4      p\        W`P                  V P                  V P                  V P                  R7       R#   + '       g   i     LV; i)r    NT)Zcolorz-Cz--show-cachesZ
store_truezshow inline caches)ZactionZhelpz-Oz--show-offsetszshow instruction offsetsz-Pz--show-positionszshow instruction positionsz-Sz--specializedzshow specialized bytecodeinfiler   r   )Znargsr   )argsz<stdin>Zrbr%   )r.   r/   r0   r1   )argparseZArgumentParserZadd_argumentZ
parse_argsr  rY   ZstdinZbufferZreadZopenr&   rJ   r.   specializedr0   r1   )r  r  Zparserr(   r'   r  r   r  r*   mainr  k  sH   $$4$0F
ol1  3
.|7  9
09  ;
ol8  :
S9$'D{{c!!&&({{$++t$$[[]F %64(D**T5E5E&&t7J7JL %$s   7EE&	Z__main__)r   rJ   r\   rC   discor   r   r   r   r   r   )r   Z
kwdefaultsZannotationsZclosureZannotater{   )r   Z
end_linenoZ
col_offsetZend_col_offset)r   r   r   r   r   r   r   r   r   r   r   r   r   )Nr    NNN)r   rm   )rm   )r   N){rY   ZtypesZcollectionsr   r   r   Z_opcodes_allr   r   r   r   r   r   r   r	   r
   Z_opcoder   Z
MethodTypeZFunctionTypeZCodeTyper  r   rU   rH   r	  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   Zlistr   r|   r   r~   rF   r(   r   r}   r+   rJ   rC   rd   rj   rl   r   rz   r   r   r   r   r   Z
namedtupler   r   Z__doc__r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rP   rR   r   r   r   r   r   r   r   r   r\   rL   rM   r   r   r   rS   r  rT   r  Z	_INT_BITSr  r   r   r   r
  r  r   r  rV   )ZbaseZfamilyr  s   000r*   <module>r     s      	    !:<HI  2 2ENN</
 o&78 V '(M"'(+	o&V}+	)*+, +, 34 ^$12 $)*M$N !34 56 gM"o&g6l%[
"((*HD" KOJt	 + +;*@*@*B*B,$V\{V\K*B)4* 4*D 4*e 4*e 4*4*+04*lb4 bU bU bQV bgl b" {{y}x{x
{
#
 x  
 *&.B.2@$$ $ "" VaZ		 %%  !& B   :   S   T   Q   Q   ,    ! $_    #l    e   !s   "k   &112L"$ 	3 	 0$M!, M!`q^ q^h^ ^@>d > >u >< 
 +
58pad a a a"a38a2t 4 U UZ in   @E  

"J&'J;=J$(J8<J %)J 59J"7D 	 	i!m$%> 6. ^% ^%BL2 zF A"s   P