NL ihdZddlmZddlZddlmZddlmZddlm Z m Z m Z m Z m Z mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.ddl/m0Z0m1Z1m2Z2m3Z3m4Z4ddl5m6Z6dd l7m8Z8dd l9m:Z:m;Z;dd lZ>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZIdd lJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUdd lVmWZWmXZXddlYmZZZm[Z[ddl\m]Z]ddl^m_Z_m`Z`maZambZbddlcmdZdmeZemfZfmgZgmhZhddlimjZjmkZkddllmmZmddlnmoZompZpmqZqddlrmsZsmtZtddlumvZvmwZwmxZxddlymzZzm{Z{m|Z|m}Z}ddl~mZddlmZmZmZddlmZddlmZmZdIdZdJdZ dKdZdLdZdMd ZdNd!ZdOd"ZdPd#ZdQd$ZdRd%ZdSd&ZdTd'ZdUd(ZdVd)ZdWd*ZdXd+ZdYd,ZdZd-Zd[d.Zd\d/Zd]d0Z d^d1Zd_d2Z d`d3Z dad4Zdbd5Zdcd6Zddd7Zded8Zdfd9Zdgd:Zdhd;Zdid<Zdjd=Zdjd>Zdkd?Zdld@Z dmdAZdndBZdodCZdpdDZdqdEZdrdFZdsdGZdtdHZy)uzTransform mypy expression ASTs to mypyc IR (Intermediate Representation). The top-level AST transformation logic is implemented in mypyc.irbuild.visitor and mypyc.irbuild.builder. ) annotationsN)Sequence)Callable)& ARG_NAMEDARG_POSLDEFAssertTypeExprAssignmentExpr BytesExprCallExprCastExprComparisonExpr ComplexExprConditionalExprDictExprDictionaryComprehension EllipsisExpr Expression FloatExpr GeneratorExpr IndexExprIntExprListComprehensionListExpr MemberExprMypyFileNameExprOpExprRefExprSetComprehensionSetExpr SliceExprStarExprStrExpr SuperExpr TupleExprTypeApplicationTypeInfoTypeVarLikeExpr UnaryExprVar)Instance ProperType TupleTypeTypeTypeget_proper_type) MAX_SHORT_INT)ClassIR)FUNC_CLASSMETHODFUNC_STATICMETHOD) Assign BasicBlockCall ComparisonOpInteger LoadAddress LoadLiteralPrimitiveDescriptionRaiseStandardErrorRegisterTupleGetTupleSetValue) RInstanceRTuplebool_rprimitiveint_rprimitiveis_fixed_width_rtypeis_int_rprimitiveis_list_rprimitiveis_none_rprimitiveis_object_rprimitiveobject_rprimitiveset_rprimitive)is_borrow_friendly_exprprocess_conditional) IRBuilderint_borrow_friendly_op)constant_fold_expr)comprehension_helper)raise_error_if_contains_unreachable_namestranslate_list_comprehensiontranslate_set_comprehension)convert_format_expr_to_bytesconvert_format_expr_to_strjoin_formatted_bytesjoin_formatted_stringstokenizer_printf_style)apply_function_specializationapply_method_specialization)bytes_slice_op)dict_get_item_op dict_new_opexact_dict_set_item_op)iter_opname_op)list_append_oplist_extend_op list_slice_op) ellipsis_opget_module_dict_op new_slice_optype_op) builtin_names) set_add_op set_in_op set_update_op) str_slice_op) list_tuple_optuple_slice_opct|jtrP|jjr:|j |jj |jj S|jR|jttjd|j d|j |jS|jj}|tvr2t|\}}|jt|||j S|dk(r|jS|dk(r|jS|dk(r|jS|dvr|jSt!||}||St|jt"rj|jj$rT|j'|j||j |j)||j*||j }||St|jt,rG|jj|j.vr%|j1|jjS|j2t4k(rtt|jt"r|jj6sCt|jt"ryt9|j;|r_|jj<rI|j?djA|jj |jj t|jt,ri|jCtDg|j }|jGtH||jK|jjg|j }|S|jM|jO|d |j S|jQ|S) Nzname "z" is not defined builtins.None builtins.Truebuiltins.Falseztyping.TYPE_CHECKINGztyping_extensions.TYPE_CHECKINGz=Local variable "{}" has inferred type None; add an annotationT)for_read)) isinstancenoder) is_new_style load_type_varnamelineaddr= NAME_ERRORnonefullnamerjr:truefalsetransform_math_literalr+is_finalemit_load_finalis_native_ref_exprtypesrimports load_modulekindris_suppressed_importrI node_type is_inferrederrorformatcall_crg primitive_opr^load_strreadget_assignment_target load_global) builderexprrtypsrc math_literalvaluemod_dictobjs ^/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/mypyc/irbuild/expression.pytransform_name_exprrss $))_-$))2H2H$$TYY^^TYY^^DD yy "-- {BR/SUYU^U^  ||~yy!!H=  *S{{;sC;<<?"||~?"||~##}}NN}})'8P>P-Q"RTXT]T]CJ<< = =dT = RTXT]T]^ ^   t $$c|jdvr|jS|j|}|A|\}}}|j|||j||j ||j }||St||j}||St|jtrG|jj|jvr%|j|jjS|j|}|j|j|} |j!|} t#| j$rJ|jdk(r;|j&j(dk\r"|j+t,| g|j St| j$t.r1|jdk(r"|j+t0| g|j St3|j j5|j} t| t6r| j8j$j:r| j8j$j<dd} |j| vrT|j>jA| jC|j} |jE| d| g| |j StG||| |xr |jH}|j>jK| |j| |j | S) Nru can_borrow__name__) __class__ namedtuplefields __getitem__)borrow)&rr get_final_refrr{rr|rrwrxrrris_native_attr_refacceptrrrJtypeoptions capi_versionrrbrBrir0getr.partial_fallbackis_named_tuplemetadatarload_intindexgen_method_call-check_instance_attribute_access_through_classrget_attr)rrfinalr final_varnativerrrrrtyperrrrs rtransform_member_exprrsu }}SS}}  ! !$ 'E &+#)V'' xt9Ldii   L)'4==AL$))X&499+=+=+P""499#5#566++D1J ..z. :C   d #E SXX& II # OO ( (G 3##GcUDII>>#((I&499 +C##GcUDII>> '--++DII6 7C#y!c&:&:&?&?&N&N%%**33LA(K 99 OO,,V\\$))-DEE**3 wtyyY Y1'4E  .G..F ?? # #CE499V # TTrct|jtrU|jj}t|tr0t|j t r|j j}t|tr|jjj|}||jr|j|j}|t|jtr|jjsi|jj sR|j#dj%|j|j&|j)d|j&yyyyyyyyy)zEReport error if accessing an instance attribute through class object.Nz:Cannot access instance attribute "{}" through class objectzO(Hint: Use "x: Final = ..." or "x: ClassVar = ..." to define a class attribute))rwrrrxr/itemr,rr(mapper type_to_irr is_ext_classr{r+ is_classvarrrrr|note)rrrrxclass_irsyms rrrs$))W%yy~~ c8 $CHHh)G88==D dH %~~0044T:H#(=(=hhtyy)O"388S1HH00HH--MMT[[ II  LL- .12$)># & &rcv|jd|j}|jjr4|jjDcgc]}|j |}}n |j J|j |j j}|jj|j }t|jj}t|}|jjrZt|j dj#d} |j%| |jj&j}n|j(s t|}||g}|j+|||j} |j-| |j.|jScc}w)Nzbuiltins.super)load_module_attr_by_fullnamer|callargsrinfoload_native_type_objectrrriterrnextfn_info is_generatorlist symtablesvaluesrfitemrpy_call py_get_attrr{) rosup_valargrririter_envvself self_targress rtransform_super_exprrsF223CQVVLGvv{{/0vv{{;s#;;vv!!!--affoo> ^^ & &qvv .,,-H~ ?? ' 'W..r299; 2~~dmm00116Hj12 v{{H - KK " "~~diil++&)$FOO_)U%%&*% fkk7 + 6;;;K;KX0V!'48 8*7D&A EZ T6F   FI &*7D&AAgtV44rc>t|trt|||xs t|||S|j |}|j Dcgc]}|j |}}|j |||j|j|jScc}w)N arg_kinds arg_names) rwrr[translate_refexpr_callrrrr|rr)rrrfunctionrrs rrrSs&'",WdFC G] T6H  ~~f%H+/99 5CGNN3  5D 5 ??$ T^^t~~   6s Bc|jDcgc]}|j|}}|j|||Scc}w)zTranslate a non-method call.)rrcall_refexpr_with_args)rrrr arg_valuess rrras>26;#'..%;J;  ) )$ CCz(translate_method_call..vsH),,Hsr)!rrrwrrrxr(rr has_methodr{allrcall_classmethodis_module_member_exprrrrr|rr+is_clsr0rr/rr,rrhas_no_subclassesrr\r) rrrrrrrrxrr receiver_typvalrs rrris !!&)gtV446;;( v{{'' 2 KK   9 9 9 NN % %fkk&6&6 7 B B6;; O HH H&++**H5Gv{{7G7GG5 ^^ & &v{{'7'7 8T6::  & &v .>>&)/3yy9s#99 dDII4>>   fkk7 +;;##D$$%dii0c8,CHHh1O&~~88<X>X>Z 04PP((5 *'4N ?JnnV[[)/3yy9s#99&&  KK    d # II NN NN  5:2:s N+Nc $|j|j}g}|jj|jj}}|j t k(r^|jrR|j|j|j|jdt|jdd||jDcgc]}|j|c}z }|jr)|jj!|||||j"S|j|j$} |j'| |j||j)||j"|j|jScc}wr) method_declr{rcopyrrr3rappendrrinsertrrrrrr|rrr) rrrrdeclrrrrrs rrrs. >>&++ &D D>>..0$..2E2E2GyI yy$$ G33BKK@AG$D!DII 6SW^^C 66D ##D$ 9diiPPnnV[[)&&  KK    d # II NN NN  7sF c4 |jDt|jjdk7r/t|jjdk7r t |||St|jjdk(r|jjd}t |t r0t |jtr|jjs t |||S|jjd}t |t r2t |jtr|j|jur t |||S|jj|j}|jddD]}|j|jvsn|j rC|j"6|j$s)|jdk(r(t|jdk(r|j'S|jdk(rt|jdk(sJdt|j|jd}|j(j*j,}t |t rot|dkDra|d|jk(rO|j/|jd}|j1t3|j4|g|j6S|jdk(rXd} |j s|j9| d|j6|j$r|j9| d |j6t |||S|j;|j} |jD cgc]} |j/| } } |j<j?|j,j?}} | j@tBk7r| jdk7r|jE}| j@tFk(r#|jItJ|g|j6}no|j(jLrYtO|jPd jSd }|jU||j(j*j6}| jWd|| jWdtX|jWdd|jZj| | | ||j6Scc} w) Nr__init____new__z?Expected object.__new__() call to have exactly 1 argument, got zsuper().__new__()z( not supported for non-extension classesz= not supported for classes inheriting from non-native classesrr).rlenrrrrwrrxr+is_selfr(rrmror{ method_declsr builtin_baseinherits_pythonrrrrrr}r7setupr|rrrrrr4selfr3rrirrrrrrrr)rrrself_argtyp_argrbase method_argssubtyperr rrrrrrs rrrs {{s6;;#3#349c&++BRBR>SWX>XgtV44 6;;  !;;##A&8X.hmmS1==((!'48 8++""1%7H-gllH5{{',,.!'48 8  " "6;; /Bqr !5 ;;$++ + !5 ??r6r?Q?Q{{j(S^q-@||~% ) Na'fTUXY]YbYbUcTdef'))A,%oo33== w1K(1,#A',,6%nnTYYq\:G";;tBHHwi'KLL ;;) #&D?? &NOQUQZQZ[!! fYZIIgtV44   FKK (D15;#'..%;J;>>..0$..2E2E2GyI yy%%$))y*@||~ 99( (((5'499EE __ ) ) W..r299;>#{DII 66rct||}|r|S|j|j|j|j|j Sr)try_constant_foldunary_oprropr|)rrfoldeds rtransform_unary_exprr%s@ w -F    GNN4995tww JJrcR|jdvr|j|S|jdk(rEt|jtt fr%t ||j|j}||St||}|r|Sd}d}|j|j}|j|j}t|rPt|rE|jdk(r t|}|jtvrGt||j}d}n.t|r#t|rt||j}d}|j|j|}|j|j|} |j!|| |j|j"S)N)andor%Fz//Tr)r#shortcircuit_exprrwleftr$r !translate_printf_style_formattingrightr!rrGtry_optimize_int_floor_dividerPrMrFr binary_opr|) rrretr$ borrow_left borrow_rightltyperr+r-s rtransform_op_exprr4$s] ww-((.. ww#~*TYY)0DE/DJJO ?J w -F  KL   dii (E   djj )E$5e$< 77d?06D 77, ,1'4::FKL e $)=e)D-gtzzB  >>$)) > >)rwr-rr bit_lengthrr+)rdivisorshifts rr.r.Hsq djj' * jjG    1 $E5~2~ K"a5j1dDIIwu~66 KrcN|j}|j|j}t|}|xr t ||}|j |j|}t |jtr@t |tr0|jt||j|jSt |trt|||}|r|S|j |j|}|j!|d|g|j||jS)Nrr)rrrrHrMrrwrrCrr}r?rr|r"try_gen_slice_opr) rrr base_typeis_listcan_borrow_baserr index_regs rtransform_index_exprr@Ss JJE!!$)),I +GI"9'5"IO >>$))> @D$))V$E7)C{{8D%++tyyABB%# $6 Ltzzg>I  " " mi['*;*;D*A499 rcBt||}||j|Sy)zXReturn the constant value of an expression if possible. Return None otherwise. N)rQload_literal_value)rrrs rr!r!is* w -E ))%00 rcn|jry|jr|j|j}nt}|jr|j|j}nt}t |rt |r|jr|j |j}n|jd}|jr|j |j}n|jt}ttttg}|jj||||g|jSy)zGenerate specialized slice op for some index expressions. Return None if a specialized op isn't available. This supports obj[x:y], obj[:x], and obj[x:] for a few types. Nr)stride begin_indexrrE end_indexrGrrr1rerprnr]rmatching_call_cr|)rrr begin_typeend_typebeginend candidatess rr;r;ts || &&u'8'89 #  $$U__5!$):8)D   NN5#4#45E$$Q'E ??..1C""=1C#^\>R ..zD%;MuzzZZ rcttt}}}t||j|||j|}t |}|j ||j |j}|j|||j}|jt|||j||j ||j |j}|j|||j}|jt|||j||j ||Sr)r6rNcondrr>activate_blockrif_exprrr|r}r5goto else_expr) rrif_body else_body next_block expr_typetarget true_value false_values rtransform_conditional_exprrZs%/\:< YGGY?!!$'I i F 7# -J ItyyAJ KKvz*+ LL 9%..0K..iCK KKv{+, LL :& Mrcg}|D]}t||}||j|#t|trd|jdk(r|jdT|jdk(r|jdu|jdk(s|jdt|t st ||j}||jt|t|t|k7ry|S)NrrrsTrtF) rQrrwrrr&set_literal_valuesitemstupler)rr]rr const_value tuple_valuess rr\r\sF3($7  " MM+ &  dG $}}/ d#/1 d#"22 e$ i (-gtzzBL' eL12!3$ 6{c%j  Mrct||j}|(|jtt |t Sy)aTry to pre-compute a frozenset literal during module initialization. Return None if it's not possible. Supported items: - Anything supported by irbuild.constant_fold.constant_fold_expr() - None, True, and False - Tuple literals with only items listed above N)r\r]r}r; frozensetrL)rsrs rprecompute_set_literalrds8  1F {{;y'8.IJJ rcp jd}|dvrOtjdk(r7t|jdjdj}||Stjdk(r|dvrLjd}t |t r-|jdk(rtjd|dk7Sjd}tj|rjd}tj|rX|tvrPt|}j||}j|d }j|||jSj d  fd  djjdS) Nr)innot inr )isis notrrrh)negatedrTc vtjdz k(rEtjjjdzj Sjjdzj jdfdfdj S)Nr r'cPtjjSr)transform_basic_comparison operatorsr|)reirprevsrz7transform_comparison_expr..go.. s$.w AdTUTZTZ[rcdzS)Nr )gorprsrrrz7transform_comparison_expr..go.. sBq1udOr)rrnrmroperandsr|rshortcircuit_helper)rprqrrrorVrus``@rruz%transform_comparison_expr..gos AKK 1$ $-Qw~~ajjQ>O/PRSRXRX ~~ajjQ/022   [ # FF   r)rpintrqrAreturnrA)rnrtry_specialize_in_exprrvr|rwrrtranslate_is_nonerGrrPrMrr/) rrofirst_opresult right_expr left_exprr1r+r-rVrus `` @@rtransform_comparison_exprrs{{1~H##AKK(8A(='1::a=!**UV-YZY_Y_`  M 1;;1 ' 'AJ*h/J4G4G?4Z(!**Q-UYIYZZJJqM W..y9 :AJ !2!2:!>?55"9':"NK">>) >LD#NN:$NGE",,T5(AFFKK !!!$I    a 1 . //rc xd}d}t|ttfr:|j|}|jDcgc]}|j|}}nt|j |t r|j|}|j|}t|jt sJtt|jjD cgc]} |jt|| }} ||Jt|} | dkDr]|dk(rd} nd} t} |D]s}t|| |||} |jj!| }t}|dk(r|j#|| |n|j#||| |j%|ut't(}t}|dk(r!|j+|j-f}n |j-|j+f}|j/||d||j1||j%| |j/||d||j1||j%||S| dk(r|dk(rd} nd} |d}t|| |||S| dk(r%|dk(r|j+S|j-St|t2r_t5||}|Q|jj7t8|j||g|t(}|dk(r|j;|d|S|Sycc}wcc} w)Nr rfz==z!=rrgnot)rwr&rrr]rrCrrangerrr}r?r6rmr bool_valueadd_bool_branchrOr>rDrrassignrQr!rdrrlr")rr#lhsrhsr|r+r]r tuple_valrpn_itemscmp_opoutcmpbool_valrU result_regrKrr- set_literalr}s rrzrzsD $E# 8,-~~c"25))<$%<< G%%c*F 3~~c"NN3' )..&111>CC H\H\D]>^_Xi34__ e* Q;Tz,C 30&$dS"??55c:'\ :++Hc:F++Hj#F&&z2 3"/2J,CTz ',,.8 8 NN:vay$ 7 LL   " "3 ' NN:vay$ 7 LL   " "3 ' \Tz!HE-gvtUDQ Q\Tz}}&||~%#w,Wc:  "__11GNN3/=t_FX~''t<<M K= `s L2"L7c|j|d}|j||j|rd|jSd|jS)NTrrirh)rr/ none_objectr|)rrrjvs rr{r{bsOt-A   Q 3 3 57xVZV_V_ ``PTVZV_V_ ``rc&t|jr |tjvr|j|jk(r[|jjrtj|}ntj |}|j j||||St|tr#|jjrtj|}ntj |}|j j||j||j|||St|jr|tjvrt|trv|jjrtj|}ntj |}|j j|j||j||||Sd}|dk(rd\}}n |dk(rd\}}|j||||}|r|j|d|}|S)NFri)rhTrg)rfTr) rFrr8 signed_ops is_signed unsigned_opsr comparison_oprwr9rr/r")rr#r+r-r|op_idnegaterWs rrmrmgsDII&21H1H+H :: "yy""$//3$11"5??00ueTJ J w 'yy""$//3$11"5??00gnnUDIIt>rc Ht|||jtt|dS)NT)_visit_display new_list_oprcrd)rr]r|s rrrs% ++^^TSW rctd|jDr t||S|j|}t |t r |j ntgt|jz}g}t|j|D]B\}}|j|}|j|j|||jD|jt||jS)Nc3<K|]}t|tywr)rwr#)rrs rrz'transform_tuple_expr..s =$:dH % =s)anyr]_visit_tuple_displayrrwrCrrKrziprrrr|r}r@)rr tuple_typerr] item_expr item_typeregs rtransform_tuple_exprrs =$** ==#GT22""4(J j& )  3tzz? 2 E #DJJ 6E 9nnY' W^^CINNCDE ;;xtyy1 22rct||j|j}|jt|g|jS)z)Create a list, then turn it into a tuple.)rr]r|rro)rr val_as_lists rrrs3%gtzz499EK    }dii HHrcg}|jD]>\}}||j|nd}|j|}|j||f@|jj ||j S)zAFirst accepts all keys and values, then makes a dict out of them.N)r]rrr make_dictr|)rrkey_value_pairskey_expr value_exprkeyrs rtransform_dict_exprrsqO $ -**2*>gnnX&Dz*U|,- ?? $ $_dii @@rc pt||j|jtt|j dS)NF)rr] new_set_oprkrmr|rs rtransform_set_exprrs- W//]DIIW\ rcg}|D]a}t|tr-|jd|j|jf@|jd|j|fcd} g} |D]A\} } | | s|r| j| | || |} |j | r|n|| | g|C| || |} | S)NTF)rwr#rrrr) rr]constructor_op append_op extend_opr|r=accepted_itemsrr} initial_itemsstarredrs rrrsNA dH %  ! !4 )B"C D  ! !5'..*>"? @ A  FM(Y >'g   '  >#M48F'Yy65/SWXY~ t4 Mrc.t||jSr)rT generatorrs rtransform_list_comprehensionr*s ' ==rc.t||jSr)rUrrs rtransform_set_comprehensionr.s &w <.gen_inner_stmts9sK NN155 ! NN177 #- QA/FOr)ryNone)rSr maybe_spillrr_r|rrindices sequences condlistsis_asyncrRr)rr loop_paramsrrs`` @r"transform_dictionary_comprehensionr2s0!<||~GNN;AFFCDAs199akk1;; KLKP +G <<?rcdfd }||j||j||jg}jt||j S)NcJ|jSj|Sr)rr)rrs rget_argz%transform_slice_expr..get_argFs& ;&&( (>>#& &r)rzExpression | NoneryrA)rErFrDrrhr|)rrrrs` rtransform_slice_exprrEsL' D$$ %wt~~'> @T UD    dDII >>rc|jd|j|jtt ||g|jS)Nz(Treating generator comprehension as list)warningr|rrarTrs rtransform_generator_exprrPs= OO>G   *FwPQ*R)SUVU[U[ \\rc|j|j}|j|j}|j |||j |Sr)rrrrWrr|)rrrrWs rtransform_assignment_exprrUsA NN177 #E  * *188 4F NN65!&&) Lrcl|dk(r|jtjS|dk(r|jtjS|dk(r|jtjS|dk(r|jtj S|dk(r|jtj Sy)Nzmath.ezmath.pizmath.infzmath.nanzmath.tau)rmathropiinfnantau)rrs rrr\s8!!$&&))9!!$''**:!!$((++:!!$((++:!!$((++ r)rrOrrryrA)rrOrrryrA)rrOrrrzProperType | Noneryr)rrOrr%ryrA)rrOrr ryrA)rrOrr rrryrA)rrOrr rrryrA)rrOrr rrryrA) rrOrr2rr rrryrA)rrOrr rr%ryrA)rrOrr ryrA)rrOrr*ryrA)rrOrrryrA)rrryr)rrOrrryrA)rrOrrry Value | None)rrOrrArr"ryr)rrOrrryrA)rrOr]zSequence[Expression]ryzlist[object] | None)rrOrcr!ryr)rrOrorryrA) rrOr#strrrrrr|rxryr)rrOrrrjboolryrA) rrOr#rr+rAr-rAr|rxryrA)rrOrzStrExpr | BytesExprrrryr)rrOrrryrA)rrOrrryrA)rrOrrryrA)rrOrr$ryrA)rrOrr ryrA)rrOrrryrA)rrOrrryrA)rrOr]list[Expression]r|rxryrA)rrOrr&ryrA)rrOrrryrA)rrOrr!ryrA)rrOr]rrz#Callable[[list[Value], int], Value]rr<rr<r|rxr=rryrA)rrOrrryrA)rrOrr ryrA)rrOrrryrA)rrOrr"ryrA)rrOrrryrA)rrOrr ryrA)rrOrrryr)__doc__ __future__rrcollections.abcrtypingr mypy.nodesrrrr r r r r rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)r*r+ mypy.typesr,r-r.r/r0 mypyc.commonr1mypyc.ir.class_irr2mypyc.ir.func_irr3r4 mypyc.ir.opsr5r6r7r8r9r:r;r<r=r>r?r@rAmypyc.ir.rtypesrBrCrDrErFrGrHrIrJrKrLmypyc.irbuild.ast_helpersrMrNmypyc.irbuild.builderrOrPmypyc.irbuild.constant_foldrQmypyc.irbuild.for_helpersrRrSrTrU"mypyc.irbuild.format_str_tokenizerrVrWrXrYrZmypyc.irbuild.specializer[r\mypyc.primitives.bytes_opsr]mypyc.primitives.dict_opsr^r_r`mypyc.primitives.generic_opsrarbmypyc.primitives.list_opsrcrdremypyc.primitives.misc_opsrfrgrhrimypyc.primitives.registryrjmypyc.primitives.set_opsrkrlrmmypyc.primitives.str_opsrnmypyc.primitives.tuple_opsrorprrrrrrrrrrrr%r4r.r@r!r;rZr\rdrrzr{rmr,rrrrrrrrrrrrrrrrrrrrrtrrrs # $''''''''''PRQ&%@    SC: `5[[9SS\\3II1D P%f1Uh (/@ @445> D8 v 4RSj7K!>H,#L24"10hM MM&0M7AMILMM`a ) ))',)5:)BE) )X %8?I@024(;O? 3,I A   8$  $    J>= &?]  r