
    Rhv3                        d Z g dZ	 ddlmZ ej	                  d       dZg Zg Zg Z	g Z
g Zg Zg Zg Zg ZdZd Zeee	e
eeeeeg	Zi Zi Zd Zd	 Zd
 Zd Zd Z edd        edd        edd        edd        edd        edd        edd        edd        edd        edd        ed d!        ed"d#        ed$d%        ed&d'        ed(d)        ed*d+        ed,d-        ed.d/        ed0d1        ed2d3        ed4d5        ed6d7        ed8d9        ed:d;        ed<d=        ed>d?        ed@dA        edBdC        edDdE        edFdG        edHdI        edJdK        edLdM        edNdO        edPdQ        edRdS        edTdU        edVdW        edXdY       dZZ ed[dZ        ed\d]        ed^d_        ed`da        edbdc        eddde        edfdg        edhdi        edjdk        edldm        edndo       ej	                  do        edpdq        edrds        edtdu        edvdw        edxdy        edzd{        ed|d}       ej	                  d}        ed~d        edd        edd        edd        edd        edd        edd        edd        edd        edd        edd       ej	                  d        edd        edd        edd       ej	                  d        edd       ej	                  d        edd       ej	                  d        edd       ej	                  d        edd        edd        edd        edd        edd        edd        edd        edd       ej	                  d        edd       ej	                  d        edd       ej	                  d        edd       ej	                  d        edd       ej	                  d        edd        edd        edd        edd       ej	                  d        edd       dZ eddë        eddū        eddǫ       ej	                  dȫ        eddʫ        edd̫        eddΫ        eddЫ        eddҫ        eddԫ        edd֫        eddث        eddګ        eddܫ        eddޫ        edd        edd       ej	                  d        edd        edd        edd        edd       ej	                  d       dZ edd        edd        edd        edd        edd        edd        edd        edd        edd        edd        edd         edd        edd        edd        edd        ed	d
        edd        edd       ej;                  ej=                         D  cg c]
  } | ek\  s	|  c}        dZ edddg       ej	                  d        edddg       ej	                  d        edddg       ej	                  d        edddg        eddddg        eddddg        edddzg        edddg        edd dg        ed!d"dg        ed#d$dg       e e e      z   dz
  Z![[[[[ e"e!dz         D  cg c]
  } d%| d& c} Z#ejI                         D ]
  \  Z%Z&e%e#e&<    g d'Z'g d(Z(g d)Z)g d*g d+g d,g d-g d.d/d0gg d1d2gd3d4gd5d6gg d7d8d9gd:d;gg d<d=gd>Z*e*j=                         D cg c]  }|D ]  }|  c}}Z+ddddd?d@did@did@did@did@did@didddddAddddBdddCd@did@didDZ, e"d      D cg c]+  } e-e,j]                  e#|   i       j=                               - c}Z/yE# e$ r Y /w xY wc c} w c c} w c c}}w c c}w (F  zy
opcode module - potentially shared between dis and other modules which
operate on bytecodes (e.g. peephole optimizers).
)cmp_ophasarghasconsthasnamehasjrelhasjabshaslocal
hascomparehasfreehasexcopnameopmapHAVE_ARGUMENTEXTENDED_ARG    )stack_effectr   )<z<=z==z!=>z>=Tc                 *    | t         k\  xr	 | t        k  S N)MIN_PSEUDO_OPCODEMAX_PSEUDO_OPCODE)ops    /usr/lib/python3.12/opcode.py	is_pseudor   '   s    "">r->'>>    c                     |t         | <   y r   )r   namer   s     r   def_opr   3   s    E$Kr   c                 F    t        | |       t        j                  |       y r   )r   r   appendr   s     r   name_opr"   6       
4NN2r   c                 F    t        | |       t        j                  |       y r   )r   r   r!   r   s     r   jrel_opr%   :   r#   r   c                 F    t        | |       t        j                  |       y r   )r   r   r!   r   s     r   jabs_opr'   >   r#   r   c                     t        | |       |t        | <   t        D ]D  }|D cg c]  }t        |   |v  }}t	        |      s't        |      sJ |j                  |       F y c c}w r   )r   _pseudo_opsoplistsr   anyallr!   )r   r   real_opsoplistropress         r   	pseudo_opr1   B   sb    
4 K /78uSzV#88s8s8O8MM"	8s   A$CACHEPOP_TOP   	PUSH_NULL   INTERPRETER_EXIT   END_FOR   END_SEND   NOP	   UNARY_NEGATIVE   	UNARY_NOT   UNARY_INVERT   RESERVED   BINARY_SUBSCR   BINARY_SLICE   STORE_SLICE   GET_LEN   MATCH_MAPPING   MATCH_SEQUENCE    
MATCH_KEYS!   PUSH_EXC_INFO#   CHECK_EXC_MATCH$   CHECK_EG_MATCH%   WITH_EXCEPT_START1   	GET_AITER2   	GET_ANEXT3   BEFORE_ASYNC_WITH4   BEFORE_WITH5   END_ASYNC_FOR6   CLEANUP_THROW7   STORE_SUBSCR<   DELETE_SUBSCR=   GET_ITERD   GET_YIELD_FROM_ITERE   LOAD_BUILD_CLASSG   LOAD_ASSERTION_ERRORJ   RETURN_GENERATORK   RETURN_VALUES   SETUP_ANNOTATIONSU   LOAD_LOCALSW   
POP_EXCEPTY   Z   
STORE_NAMEDELETE_NAME[   UNPACK_SEQUENCE\   FOR_ITER]   	UNPACK_EX^   
STORE_ATTR_   DELETE_ATTR`   STORE_GLOBALa   DELETE_GLOBALb   SWAPc   
LOAD_CONSTd   	LOAD_NAMEe   BUILD_TUPLEf   
BUILD_LISTg   	BUILD_SETh   	BUILD_MAPi   	LOAD_ATTRj   
COMPARE_OPk   IMPORT_NAMEl   IMPORT_FROMm   JUMP_FORWARDn   POP_JUMP_IF_FALSEr   POP_JUMP_IF_TRUEs   LOAD_GLOBALt   IS_OPu   CONTAINS_OPv   RERAISEw   COPYx   RETURN_CONSTy   	BINARY_OPz   SEND{   	LOAD_FAST|   
STORE_FAST}   DELETE_FAST~   LOAD_FAST_CHECK   POP_JUMP_IF_NOT_NONE   POP_JUMP_IF_NONE   RAISE_VARARGS   GET_AWAITABLE   MAKE_FUNCTION   BUILD_SLICE   JUMP_BACKWARD_NO_INTERRUPT   	MAKE_CELL   LOAD_CLOSURE   
LOAD_DEREF   STORE_DEREF   DELETE_DEREF   JUMP_BACKWARD   LOAD_SUPER_ATTR   CALL_FUNCTION_EX   LOAD_FAST_AND_CLEAR   r      LIST_APPEND   SET_ADD   MAP_ADD      COPY_FREE_VARS   YIELD_VALUE   RESUME   MATCH_CLASS   FORMAT_VALUE   BUILD_CONST_KEY_MAP   BUILD_STRING   LIST_EXTEND   
SET_UPDATE   
DICT_MERGE   DICT_UPDATE   CALL   KW_NAMES   CALL_INTRINSIC_1   CALL_INTRINSIC_2   LOAD_FROM_DICT_OR_GLOBALS   LOAD_FROM_DICT_OR_DEREF      INSTRUMENTED_LOAD_SUPER_ATTRINSTRUMENTED_POP_JUMP_IF_NONE   !INSTRUMENTED_POP_JUMP_IF_NOT_NONE   INSTRUMENTED_RESUME   INSTRUMENTED_CALL   INSTRUMENTED_RETURN_VALUE   INSTRUMENTED_YIELD_VALUE   INSTRUMENTED_CALL_FUNCTION_EX   INSTRUMENTED_JUMP_FORWARD   INSTRUMENTED_JUMP_BACKWARD   INSTRUMENTED_RETURN_CONST   INSTRUMENTED_FOR_ITER   INSTRUMENTED_POP_JUMP_IF_FALSE   INSTRUMENTED_POP_JUMP_IF_TRUE   INSTRUMENTED_END_FOR   INSTRUMENTED_END_SEND   INSTRUMENTED_INSTRUCTION   INSTRUMENTED_LINE      SETUP_FINALLYSETUP_CLEANUPi  
SETUP_WITHi  	POP_BLOCKi  JUMPi  JUMP_NO_INTERRUPTi  LOAD_METHODi  LOAD_SUPER_METHODi  LOAD_ZERO_SUPER_METHODi  LOAD_ZERO_SUPER_ATTRi	  STORE_FAST_MAYBE_NULLi
  r   r   ))NB_ADD+)NB_AND&)NB_FLOOR_DIVIDEz//)	NB_LSHIFTz<<)NB_MATRIX_MULTIPLY@)NB_MULTIPLY*)NB_REMAINDER%)NB_OR|)NB_POWERz**)	NB_RSHIFTz>>)NB_SUBTRACT-)NB_TRUE_DIVIDE/)NB_XOR^)NB_INPLACE_ADDz+=)NB_INPLACE_ANDz&=)NB_INPLACE_FLOOR_DIVIDEz//=)NB_INPLACE_LSHIFTz<<=)NB_INPLACE_MATRIX_MULTIPLYz@=)NB_INPLACE_MULTIPLYz*=)NB_INPLACE_REMAINDERz%=)NB_INPLACE_ORz|=)NB_INPLACE_POWERz**=)NB_INPLACE_RSHIFTz>>=)NB_INPLACE_SUBTRACTz-=)NB_INPLACE_TRUE_DIVIDEz/=)NB_INPLACE_XORz^=)INTRINSIC_1_INVALIDINTRINSIC_PRINTINTRINSIC_IMPORT_STARINTRINSIC_STOPITERATION_ERRORINTRINSIC_ASYNC_GEN_WRAPINTRINSIC_UNARY_POSITIVEINTRINSIC_LIST_TO_TUPLEINTRINSIC_TYPEVARINTRINSIC_PARAMSPECINTRINSIC_TYPEVARTUPLEINTRINSIC_SUBSCRIPT_GENERICINTRINSIC_TYPEALIAS)INTRINSIC_2_INVALIDINTRINSIC_PREP_RERAISE_STARINTRINSIC_TYPEVAR_WITH_BOUND"INTRINSIC_TYPEVAR_WITH_CONSTRAINTS"INTRINSIC_SET_FUNCTION_TYPE_PARAMS)BINARY_OP_ADD_FLOATBINARY_OP_ADD_INTBINARY_OP_ADD_UNICODEBINARY_OP_INPLACE_ADD_UNICODEBINARY_OP_MULTIPLY_FLOATBINARY_OP_MULTIPLY_INTBINARY_OP_SUBTRACT_FLOATBINARY_OP_SUBTRACT_INT)BINARY_SUBSCR_DICTBINARY_SUBSCR_GETITEMBINARY_SUBSCR_LIST_INTBINARY_SUBSCR_TUPLE_INT)CALL_PY_EXACT_ARGSCALL_PY_WITH_DEFAULTSCALL_BOUND_METHOD_EXACT_ARGSCALL_BUILTIN_CLASSCALL_BUILTIN_FAST_WITH_KEYWORDS)CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDSCALL_NO_KW_BUILTIN_FASTCALL_NO_KW_BUILTIN_OCALL_NO_KW_ISINSTANCECALL_NO_KW_LENCALL_NO_KW_LIST_APPEND!CALL_NO_KW_METHOD_DESCRIPTOR_FAST#CALL_NO_KW_METHOD_DESCRIPTOR_NOARGSCALL_NO_KW_METHOD_DESCRIPTOR_OCALL_NO_KW_STR_1CALL_NO_KW_TUPLE_1CALL_NO_KW_TYPE_1)COMPARE_OP_FLOATCOMPARE_OP_INTCOMPARE_OP_STR)FOR_ITER_LISTFOR_ITER_TUPLEFOR_ITER_RANGEFOR_ITER_GENLOAD_SUPER_ATTR_ATTRLOAD_SUPER_ATTR_METHOD)
LOAD_ATTR_CLASS!LOAD_ATTR_GETATTRIBUTE_OVERRIDDENLOAD_ATTR_INSTANCE_VALUELOAD_ATTR_MODULELOAD_ATTR_PROPERTYLOAD_ATTR_SLOTLOAD_ATTR_WITH_HINTLOAD_ATTR_METHOD_LAZY_DICTLOAD_ATTR_METHOD_NO_DICTLOAD_ATTR_METHOD_WITH_VALUESLOAD_CONST__LOAD_FASTLOAD_FAST__LOAD_CONSTLOAD_FAST__LOAD_FASTLOAD_GLOBAL_BUILTINLOAD_GLOBAL_MODULE)STORE_ATTR_INSTANCE_VALUESTORE_ATTR_SLOTSTORE_ATTR_WITH_HINTSTORE_FAST__LOAD_FASTSTORE_FAST__STORE_FASTSTORE_SUBSCR_DICTSTORE_SUBSCR_LIST_INT)UNPACK_SEQUENCE_LISTUNPACK_SEQUENCE_TUPLEUNPACK_SEQUENCE_TWO_TUPLESEND_GEN)r   rG   r  r   r   r   r   r   r   r   r   r   ri   r   r   )counterindexmodule_keys_versionbuiltin_keys_versionr  )r  versionkeys_versiondescr)r  r  r  )r  func_version)r   r   r   r   rG   r   r   r   r   r  ri   r   N)0__doc____all___opcoder   r!   ImportErrorr   r   r   r   r   r   r   r	   r
   r   ENABLE_SPECIALIZATIONr   r*   r   r)   r   r"   r%   r'   r1   r   r   MIN_INSTRUMENTED_OPCODEextendvaluesr   lenr   ranger   itemsr   i_nb_ops_intrinsic_1_descs_intrinsic_2_descs_specializations_specialized_instructions_cache_formatsumget_inline_cache_entries)r   familyopcodes   000r   <module>r     s	  
,	$NN>" 
,	




	  ? 8WgwZ&2 	  w  y!  {A  1  y!  z1  ua    {B  ~r  z2    ~r  }b  y"      |R    "    B  {B  {B  B  }b      ~r    z2  b ! 2  r " 2  ~r  B  }b  |R  b  r  "  
B  {B  b  r      vr  |S    S  }c  |S  {C  {C  S  |S  
  #  s  s    S ! C   s  w  }c  y#  vs  ~s    {C    {C    |S    }c    #     $ C         }c  $c * {C  s  ~s  s  |S  s  }c  s  ~s  s    3  3  c "   ~s  }c  y#  y#  s    }c  x  }c  ~s  c " ~s  }c  |S  |S  }c  vs  z3    3  3  #S )  # & s    %s + & , *C 0 c " C   "C ( !3 ' & , "C ( #S ) "C (  $ ' - & , s #  $ !3 ' C   ELLNBbbM.ArB C  	/3 ( c  	/3 ( c  	,eW % c  	+sUG $ 	&#8 9 	
s^5Q$R S 	-{m , 	
s%6$7 8 	
"C*;)< = 	
 #(9': ; 	
!3 7%K(881< 
GWgy#():Q)>#?	@RB.	@[[] EBF1I:  	&
 	  	  	 
 	 	  
 	 	}a F *0027=F
    !	 	1 	1 	1 	1 	1 	1 	  
 	1 	1W.b GLCj<BC&."-4467 m  		Z C4 
Avhs/   a !
a,a!a5a0a"aa