+
    –°³jƒa  ã                  óº  € ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIH	t	 ^ RI
HtHt ]'       d   ^ RIt^RIHt ^RIHtHtHtHtHtHt ^RIHt ^RIHt ^R	IHt ^R
IHtHt ^RI H!t!H"t" ]PF                  ! ]$4      t%]PL                  R R l4       t']PP                   ! R R4      4       t)R R lt*R R lt+R R lt,R R lt-R R lt.R R lt/R R lt0R# )é    )ÚannotationsN)ÚCounter)ÚAnyÚTYPE_CHECKING)ÚInstructionTranslatorBase)Úcreate_copyÚcreate_dup_topÚcreate_instructionÚcreate_swapÚInstructionÚ	unique_id)Ú	PyCodegen)Úunimplemented)Ú
DYNAMO_BUG)ÚGraphCompileReasonÚStackLocalsMetadata)ÚNullVariableÚUnknownVariablec               ó   € V ^8„  d   QhRR/# )é   Úreturnú	list[str]© )Úformats   "Úh/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/_dynamo/comprehension_graph_break.pyÚ__annotate__r   %   s   € ÷ $ñ $¨Iñ $ó    c                 ód  € \         P                  R8  d   \        R\         P                   24      hR R lp \        P                  ! V 4       Uu. uF  qP
                  NK  	  pp\        V4      ^,
          VRRR1,          P                  R4      ,
          pVP                  R4      pW#V # u upi )	zNGet the bytecode instructions that precede BUILD_LIST in a list comprehension.z9comprehension bytecode prefix requires Python 3.12+, got c               ó   € V ^8„  d   QhRR/# )r   r   z	list[int]r   )r   s   "r   r   Ú8_get_comprehension_bytecode_prefix.<locals>.__annotate__-   s   € ÷ %ñ %�	ñ %r   c                 ó@   € \        ^4       U u. uF  q NK  	  up # u up i )é   )Úrange)Úis    r   ÚfnÚ._get_comprehension_bytecode_prefix.<locals>.fn-   s   € Ü  œ8Ó$™8�a’™8Ñ$Ð$ùÒ$s   Ž
NÚLOAD_FAST_AND_CLEARÚ
BUILD_LIST©é   é   éÿÿÿÿ)ÚsysÚversion_infoÚAssertionErrorÚdisÚget_instructionsÚopnameÚlenÚindex)r%   ÚinstÚinstsÚ	start_idxÚend_idxs        r   Ú"_get_comprehension_bytecode_prefixr9   $   sž   € ô ×Ñ˜'Ô!ÜØGÌ×HXÑHXÐGYÐZó
ð 	
õ%ô &)×%9Ò%9¸"Ô%=Ó>Ñ%=˜T�[Œ[Ñ%=€EÐ>ä�E“
˜Q• ¡t¨ t¥×!2Ñ!2Ð3HÓ!IÕI€IØ�k‰k˜,Ó'€Gà˜7Ð#Ð#ùò ?s   ÁB-c                  óX   € ] tR t^8t$ RtR]R&   R]R&   R]R&   R]R	&   R]R
&   R]R&   RtR# )ÚComprehensionAnalysisa  Metadata about a comprehension's bytecode structure.

Attributes:
    end_ip: Instruction pointer after all comprehension bytecode
    result_var: Name of result variable, or None if result stays on stack
    result_on_stack: True if result stays on stack (discarded, returned, or in expression)
    iterator_vars: Variables from LOAD_FAST_AND_CLEAR (need restoration)
    walrus_vars: Variables assigned via walrus operator (:=) inside comprehension
    captured_vars: Variables read from outer scope via LOAD_FAST inside comprehension
ÚintÚend_ipz
str | NoneÚ
result_varÚboolÚresult_on_stackr   Úiterator_varsÚwalrus_varsÚcaptured_varsr   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__annotations__Ú__static_attributes__r   r   r   r;   r;   8   s,   ‡ ñ	ð ƒKØÓØÓØÓØÓØ×r   r;   c               ó    € V ^8„  d   QhRRRR/# )r   Útxr   r   r?   r   )r   s   "r   r   r   M   s   € ÷ ñ Ð 9ð ¸dñ r   c                óP  € \         P                  R8  d   \        R\         P                   24      hV P                  f   \        R4      hV P                  ^,
          p\	        4       pV P
                  V\        V4      ,
          V  Uu. uF  q3P                  NK  	  ppWB8H  # u upi )z­Detect if we're at the start of a list/dict comprehension in 3.12+.

In Python 3.12+, comprehensions are inlined with a bytecode pattern that
precedes BUILD_LIST/BUILD_MAP.
z9comprehension start detection requires Python 3.12+, got ú$instruction_pointer must not be Noner)   )r-   r.   r/   Úinstruction_pointerr9   Úinstructionsr3   r2   )rL   ÚipÚpatternr5   Úprefixs   &    r   Ú_is_comprehension_startrT   M   s�   € ô ×Ñ˜'Ô!ÜØGÌ×HXÑHXÐGYÐZó
ð 	
ð 
×ÑÒ%ÜÐCÓDÐDØ	×	Ñ	 !Õ	#€Bä0Ó2€GØ&(§o¡o°b¼3¸w»<Õ6GÈ"Ñ&MÓNÑ&M˜d�kŒkÑ&M€FÐNàÑÐùò Os   Â	B#c               ó    € V ^8„  d   QhRRRR/# )r   rL   r   r   r<   r   )r   s   "r   r   r   b   s   € ÷ ñ Ð'@ð ÀSñ r   c                óª  € \         P                  R8  d   \        R\         P                   24      hV P                  f   \        R4      h^ p\	        V P                  \        V P                  4      4       FY  pV P                  V,          pVP                  R8X  d   V^,          pK2  VP                  R8X  g   KE  V^,          pV^ 8X  g   KW  Vu # 	  R# )zPFind the instruction pointer of the outermost END_FOR for current comprehension.z8comprehension END_FOR search requires Python 3.12+, got rN   ÚFOR_ITERÚEND_FORr)   r,   )r-   r.   r/   rO   r#   r3   rP   r2   )rL   Únesting_depthÚ	search_ipr5   s   &   r   Ú_find_comprehension_end_for_ipr[   b   s½   € ä
×Ñ˜'Ô!ÜØFÄs×GWÑGWÐFXÐYó
ð 	
ð 
×ÑÒ%ÜÐCÓDÐDà€MÜ˜2×1Ñ1´3°r·±Ó3GÖHˆ	Ø�‰˜yÕ)ˆØ�;‰;˜*Ô$Ø˜QÕŠMØ�[‰[˜IÖ%Ø˜QÕˆMØ Ö!Ø Ò ñ Ið €Ir   c               ó    € V ^8„  d   QhRRRR/# )r   rL   r   r   r;   r   )r   s   "r   r   r   w   s    € ÷ Rñ RÐ8ð RÐ=Rñ Rr   c           	     ó	  a € \         P                  R8  d   \        R\         P                   24      hS P                  f   \        R4      hS P                  ^,
          p. p. p. p\	        4       pV^,
          pV^ 8¼  di   S P
                  V,          pVP                  R8X  d(   VP                  ^ VP                  4       V^,          pKR  VP                  R9   d   V^,          pKn   VP                  V4       \        S 4      pVR8X  d   \        RRR. R7       \        V 3R	 l\        W4       4       4      p	\        V	^,           V4       EF`  p
S P
                  V
,          pVP                  R
8X  d…   VP                  ^8X  dt   V
^,           V8  df   S P
                  V
^,           ,          pVP                  R8X  d;   VP                  pWÂ9  d)   WÃ9  d#   VP                  V4       VP!                  V4       VP                  R8X  d   VP!                  VP                  4       KÚ  VP                  P#                  R4      '       g   Ký  \%        VP                  \&        4      '       d   VP                  MVP                  3pV F$  pWÅ9  g   K  WÄ9  g   K  VP                  V4       K&  	  EKc  	  . pV^,           p\         P                  R,          R8X  d
   V^,          pV\)        S P
                  4      8  dZ   S P
                  V,          P                  R8w  d8   VP                  S P
                  V,          P                  4       V^,          pKs  TpV\)        S P
                  4      8  d.   S P
                  V,          P                  R8X  d   V^,          pKG  \)        V4      p\+        V 3R l\        VV4       4       4      pRpVRR R.8X  d   RpRpM¡VP-                  4       V8”  dW   VP/                  V4       VP-                  4       ^8w  d   \        RRV RV 2R\0        R7       \        \3        V4      4      pRpM6VP-                  4       V8X  d   RpRpM\        RRV RV RV 2R\0        R7       \5        VVXVVVR7      # )zDAnalyze comprehension bytecode to determine result handling pattern.z2comprehension analysis requires Python 3.12+, got NrN   r'   z)Comprehension analysis failed: No END_FORÚ z=Could not find END_FOR instruction in comprehension bytecode.)Úgb_typeÚcontextÚexplanationÚhintsc              3  óp   <"  € T F+  pSP                   V,          P                  R 8X  g   K'  Vx € K-  	  R# 5i)rW   N)rP   r2   ©Ú.0r$   rL   s   & €r   Ú	<genexpr>Ú)_analyze_comprehension.<locals>.<genexpr>ž   s1   øé € ð á,ˆAØ�?‰?˜1Õ×$Ñ$¨
Ñ2÷ 	
ŠÛ,ùs   ƒ$6¬
6ÚCOPYÚ
STORE_FASTÚ	LOAD_FAST:Nr   Nc              3  ó^   <"  € T F"  pSP                   V,          P                  x € K$  	  R # 5i©N)rP   Úargvalrd   s   & €r   rf   rg   â   s$   øé € ð Ù+H aˆ�‰˜Õ×!Ö!Ó+Hùs   ƒ*-ÚPOP_TOPFz5Comprehension analysis failed: ambiguous result storezstore_targets=z, iterator_vars=z5Expected exactly one comprehension result assignment.Tz)Comprehension analysis failed: No matcheszpre_store_ops=z, store_targets=z8Comprehension does not match any known bytecode pattern.)r=   r>   r@   rA   rB   rC   r)   )ÚSWAPÚGET_ITERr,   )r*   é   )r-   r.   r/   rO   ÚsetrP   r2   Úinsertrm   Úupdater[   r   Únextr#   ÚargÚappendÚaddÚ
startswithÚ
isinstanceÚtupler3   r   ÚtotalÚsubtractr   Úiterr;   )rL   Ústart_iprA   rB   rC   Údefined_insideÚiter_scan_ipr5   Ú
end_for_ipÚfor_iter_ipÚbody_ipÚ	next_instÚvar_nameÚ	var_namesÚpre_store_opsÚscan_ipÚstore_fast_ipÚn_iterÚstore_targetsr>   r@   s   f                    r   Ú_analyze_comprehensionr�   w   s  ø€ ä
×Ñ˜'Ô!ÜØ@Ä×AQÑAQÐ@RÐSó
ð 	
ð 
×ÑÒ%ÜÐCÓDÐDà×%Ñ%¨Õ)€Hà!€MØ€KØ!€MÜ"›u€Nð ˜a•<€LØ
˜!Ô
Ø�‰˜|Õ,ˆØ�;‰;Ð/Ô/Ø× Ñ   D§K¡KÔ0Ø˜AÕŠLØ�[‰[Ð0Ô0Ø˜AÕŠLàØ×Ñ˜-Ô(ä/°Ó3€JØ�RÔÜØ?ØØWØõ		
ô ô ä�xÔ,óó €Kô ˜ q�¨*×5ˆØ�‰˜wÕ'ˆð �;‰;˜&Ô  T§X¡X°¤]°wÀµ{ÀZÔ7OØŸ™¨°!­Õ4ˆIØ×Ñ <Ô/Ø$×+Ñ+�ØÔ0°XÔ5PØ×&Ñ& xÔ0Ø"×&Ñ& xÔ0ð �;‰;˜,Ô&Ø×Ñ˜tŸ{™{Ö+ð �[‰[×#Ñ# K×0Ô0ä)¨$¯+©+´u×=Ò=�—’ÀDÇKÁKÀ>ð ó &�ØÖ1°hÖ6SØ!×(Ñ(¨Ö2ô &ñ+ 6ð4  "€MØ˜1�n€Gô ×Ñ˜Õ˜wÔ&Ø�1�ˆà”#�b—o‘oÓ&Ô&Ø�O‰O˜GÕ$×+Ñ+¨|Ô;à×Ñ˜RŸ_™_¨WÕ5×<Ñ<Ô=Ø�1�Šà€Mð
 	”#�b—o‘oÓ&Ô&Ø�O‰O˜GÕ$×+Ñ+¨|Ô;à�1�Šô �Ó€FÜô Ü+0°ÀÔ+Hóó €Mð "€JØ�R�SÐ˜i˜[Ô(Øˆ
Ø‰Ø	×	Ñ	Ó	 Ô	'Ø×Ñ˜}Ô-Ø×ÑÓ  AÔ%ÜØOØ(¨¨Ð7GÈÀÐWØSÜ õ	ô œ$˜}Ó-Ó.ˆ
Ø‰Ø	×	Ñ	Ó	 &Ô	(Øˆ
Ø‰äØ?Ø$ ] OÐ3CÀMÀ?ð SØ*˜Oð-àRÜõ	
ô !ØØà'Ø#ØØ#ôð r   c               ó$   € V ^8„  d   QhRRRRRR/# )r   rL   r   r5   r   r   ÚNoner   )r   s   "r   r   r     s)   € ÷ d"ñ d"Ø!ðd"Ø)4ðd"à	ñd"r   c           	     ó^  € \         P                  R8  d   \        R\         P                   24      hV P                  f   \        R4      hV P                  ^,
          p\	        V 4      p^\        VP                  4      ,           p\        RV P                  4       .4      p\        P                  R4       V P                  P                  V VVR7      p\        V4       Uu. uFE  p\        V P                  \        V P                  4      V,
          V,           ,          \         4      NKG  	  ppV P#                  V4       V^ ,          p	\%        V P                  P&                  4      p
\)        R V 4       4      p\        V P                  4      \        V	P*                  4      ,
          pV
P-                  . \/        WÄ,           ^,           4      OV
P1                  ^ 4      NV
P3                  4       N4       \5        \        V4      4       Fk  pV
P-                  \7        ^4      4       W‡,          '       d"   V
P-                  V
P9                  4       4       KL  V
P-                  V
P;                  4       4       Km  	  V
P-                  \=        R4      .4       \?        V VVVVVV	4      w  rÞV
P-                  . \/        V^,           4      OV
P1                  ^ 4      NV
P3                  4       N\=        R	^R
7      N\/        V^,           4      OV
P1                  ^ 4      NV
P3                  4       N\=        R	^R
7      N4       V PA                  V.V.V
4       V^ 8”  dž   V^,           ^,           pV
P-                  . \/        V4      OV
P1                  ^ 4      NV
P3                  4       N\C        4       NV
P1                  V) 4      NV
P1                  R4      N\=        R^R
7      N\=        R4      N\=        R4      N4       VPD                  VPF                  '       d   VPF                  .M. ,           p/ pV F‘  p\I        4       V PJ                  V&   VV	PL                  9   d   V	PL                  V,          VV&   KC  VV	PN                  9   d   V	PN                  PQ                  V4       \        V	PL                  4      V	PL                  V&   K“  	  V^,           pVPD                  '       EdB   V
P-                  . \/        V4      OV
P1                  ^ 4      NV
P3                  4       N4       \S        VPD                  4       F±  w  ppV
P-                  . \/        ^4      OV
P1                  V^,           4      NV
P3                  4       N4       VV9   dB   V
P-                  . \/        ^4      OV
P1                  VV,          4      N\=        R4      N4       K’  V
P-                  V
P;                  4       4       K³  	  V
P-                  \=        R4      V
P1                  ^ 4      V
P3                  4       .4       VPT                  '       d   V PW                  \I        4       4       MðVPF                  '       dÄ   V
P-                  . \/        V4      OV
P1                  ^ 4      NV
P3                  4       N4       VPF                  V9   d>   V
P-                  V
P1                  VVPF                  ,          4      \=        R4      .4       MSV
P-                  . \7        ^4      OV
P;                  4       O\=        R4      N4       MV
P-                  \=        R4      .4       V P                  PY                  V
P[                  4       4       V P\                  VP^                  ,          pV P                  PY                  V Pa                  VV4      4       RV n        R# u upi )zÖHandle list/dict comprehension graph break.

Builds a synthetic function wrapping the comprehension bytecode,
calls it via codegen_call_resume, then chains into the resume
function for the post-comprehension code.
z5comprehension graph break requires Python 3.12+, got NrN   Úcomprehension_graph_breakzcomprehension triggered compile)ÚreasonÚ
stack_popsc              3  ó8   "  € T F  q'       d   K  ^x € K  	  R# 5i)r"   Nr   )re   Úms   & r   rf   Ú4_handle_comprehension_graph_break.<locals>.<genexpr>8  s   é € ÐAÑ#7˜a»qŸšÓ#7ùs   ‚	�
rn   r(   ©rv   ÚBUILD_SLICEÚDELETE_SUBSCRÚSTORE_SUBSCRr)   )1r-   r.   r/   rO   r�   r3   rA   r   Úframe_summaryÚlogÚdebugÚoutputÚcompile_subgraphr#   rz   Ústackr   Úpopnr   Úroot_txÚsumÚstack_null_idxesÚextend_outputr   Úcreate_load_constÚcreate_binary_subscrÚreversedr   Úpop_nullÚcreate_list_appendr
   Ú_build_comprehension_fnÚcodegen_call_resumer	   rB   r>   r   Úsymbolic_localsÚlocals_namesÚlocals_null_keysÚremoveÚ	enumerater@   ÚpushÚadd_output_instructionsr1   rP   r=   Úcreate_call_resume_at)rL   r5   r   Úanalysisr“   r’   Úall_stack_locals_metadatar$   Ústack_pops_null_maskÚmetaÚcgÚnonnull_countÚlive_stack_depthÚnew_codeÚfn_nameÚframe_values_posÚvars_to_passÚexisting_varsr†   Úfv_depthÚjÚ
walrus_varÚresume_insts   &&                     r   Ú!_handle_comprehension_graph_breakrÅ     sl  € ô ×Ñ˜'Ô!ÜØCÄC×DTÑDTÐCUÐVó
ð 	
ð 
×ÑÒ%ÜÐCÓDÐDà×%Ñ%¨Õ)€HÜ% bÓ)€HØ”S˜×/Ñ/Ó0Õ0€JÜÐ ;¸b×>NÑ>NÓ>PÐ=QÓR€FÜ‡I�IÐ/Ô0ð !#§	¡	× :Ñ :Ø
ØØð !;ó !Ðô �zÔ"óá"ˆAô 	�2—8‘8œC §¡›M¨JÕ6¸Õ:Õ;¼\ÖJÙ"ð ð ð
 ‡G�GˆJÔØ$ QÕ'€DÜ	�2—9‘9×$Ñ$Ó	%€Bô ÑAÑ#7ÓAÓA€Mô ˜2Ÿ8™8“}¤s¨4×+@Ñ+@Ó'AÕAÐð ×Ñð	
äÐ)Õ6¸Õ:Ó;ð	
ð × Ñ  Ó#ð	
ð ×#Ñ#Ó%ð		
ôô ”e˜JÓ'Ö(ˆØ
×Ñœ Q›Ô(Ø×"Ô"Ø×Ñ˜RŸ[™[›]Ö+à×Ñ˜R×2Ñ2Ó4Ö5ñ )ð ×ÑÔ(¨Ó3Ð4Ô5ô
 0Ø
ØØØØØØóÑ€Hð ×Ñð		
ÜÐ)¨AÕ-Ó.ð		
à× Ñ  Ó#ð		
ð ×#Ñ#Ó%ð		
ô ˜|°Ô3ð			
ô
 Ð)¨AÕ-Ó.ð		
ð × Ñ  Ó#ð		
ð ×#Ñ#Ó%ð		
ô ˜|°Ô3ð		
ôð  ×Ñ˜H˜:¨ y°"Ô5ð
 �qÔØ+¨aÕ/°!Õ3ÐØ
×ÑðÜÐ-Ó.ðà×$Ñ$ QÓ'ðð ×'Ñ'Ó)ðô
 Ó ðð ×$Ñ$ m ^Ó4ðð ×$Ñ$ TÓ*ðô # =°aÔ8ðô # ?Ó3ðô # 9Ó-ðô	
ð& ×'Ñ'Ø!)×!4×!4Ð!4ˆ×	Ñ	Ñ¸"õ€Lð %'€MÛ ˆÜ'6Ó'8ˆ×Ñ˜8Ñ$Ø�t×(Ñ(Ô(Ø&*×&7Ñ&7¸Õ&AˆM˜(Ó#ð ˜4×0Ñ0Ô0Ø×%Ñ%×,Ñ,¨XÔ6Ü*-¨d×.?Ñ.?Ó*@ˆD×Ñ˜hÓ'ñ !ð   !Õ#€Hð ××Ñà
×ÑðÜ˜XÓ&ðà×$Ñ$ QÓ'ðð ×'Ñ'Ó)ðô	
ô ' x×';Ñ';Ö<‰MˆAˆzØ×ÑðÜ  “^ðà×(Ñ(¨¨Q­Ó/ðð ×+Ñ+Ó-ðôð ˜]Ô*à× Ñ ðÜ$ Q›ðà×,Ñ,¨]¸:Õ-FÓGðô +¨>Ó:ðöð × Ñ  ×!6Ñ!6Ó!8Ö9ñ' =ð* 	×Ñä" 9Ó-à×$Ñ$ QÓ'Ø×'Ñ'Ó)ð	ô	
ð ××ÐØ
�‰”Ó!Õ"Ø	×	×	Ð	Ø
×ÑðÜ˜XÓ&ðà×$Ñ$ QÓ'ðð ×'Ñ'Ó)ðô	
ð ×Ñ -Ô/Ø×Ñà×(Ñ(¨°x×7JÑ7JÕ)KÓLÜ& ~Ó6ðõð ×ÑðÜ  “^ðà×*Ñ*Ó,ðô ' yÓ1ðõð 	×ÑÔ,¨YÓ7Ð8Ô9ð ‡I�I×%Ñ% b×&9Ñ&9Ó&;Ô<ð —/‘/ (§/¡/Õ2€KØ‡I�I×%Ñ%Ø
× Ñ  Ð.GÓHôð "€BÖùòKs   Ã A^*c               ó8   € V ^8„  d   QhRRRRRRRRRR	R
RRRRR/# )r   rL   r   rµ   r;   r   r<   r“   r·   z
list[bool]rº   r¸   r   r   ztuple[types.CodeType, str]r   )r   s   "r   r   r   ó  sb   € ÷ qñ qØ!ðqà#ðqð ðqð ð	qð
 %ðqð ðqð ðqð  ñqr   c                ó&  a aaaaaaaaaaaa€ ^RI Hp ^RIHp ^RIHoHo \        ;QJ d!    . V 3R lVP                   4       F  NK  	  5M! V 3R lVP                   4       4      p	RR.\        V	4      ,           \        S4       U
u. uF  p
RV
 2NK
  	  up
,           o\        \        \        S P                  P                  ;'       g    . 4      \        S P                  P                  ;'       g    . 4      ,           4      4      oS P                  e   S P                  MS P                  P                   o\#        RS P                  P$                   R	S 24      oSP&                  SP(                  ,           SP*                  '       d   SP*                  .M. ,           SP,                  ,           oR
 VVVVVVVVVVVVV 3R llpV! S P                  V4      w  rÍV! V4       S P.                  P1                  SVS P2                  4       VS3# u up
i )ar  Build a synthetic function wrapping comprehension bytecode.

Uses the same calling convention as resume functions created by
create_resume / ContinueExecutionCache.generate: the first two args
are __nested_resume_fns and __nested_frame_values (ignored here),
followed by stack items and live locals.

Returns (code, name) where name is the global name for the function.
)Útransform_code_object)Ú	skip_code)Ú
CO_VARARGSÚCO_VARKEYWORDSc              3  óT   <"  € T F  qSP                  4       9  g   K  Vx € K  	  R # 5irl   )Úcell_and_freevars)re   ÚkrL   s   & €r   rf   Ú*_build_comprehension_fn.<locals>.<genexpr>  s#   øé € ÐUÑ 1˜1¸b×>RÑ>RÓ>TÑ5T—Q’QÓ 1ùs   ƒ(ž
(Ú__nested_resume_fnsÚ__nested_frame_valuesÚ___stackÚ__comprehension_Ú_at_c               ó$   € V ^8„  d   QhRRRRRR/# )r   rP   úlist[Instruction]Úcode_optionszdict[str, Any]r   r�   r   )r   s   "r   r   Ú-_build_comprehension_fn.<locals>.__annotate__!  s#   € ÷ ;9ñ ;9Ð.ð ;9¸nð ;9ÐQUñ ;9r   c           	     óæ  <€ SVR &   \         P                  R8¼  d   SVR&   SVR&   RVR&   SVR&   \        S4      VR&   ^ VR&   ^ VR&   \        SS Uu. uF  q"S9  g   K  VNK  	  up,           4      VR&   VR	,          S	S
,          ( ,          VR	&   . pS'       d&   VP	                  \        R
\        S4      R7      4       VP	                  \        R^ R7      4       S^,
          p\        S4       FV  pSV,          '       d   VP	                  \        R4      4       K.  VP	                  \        RRV 2R7      4       V^,          pKX  	  \        SSSP                  4      p. pSP                  '       gV   SP                  '       d(   VP	                  \        RSP                  R7      4       MVP	                  \        RRR7      4       SP                  '       df   SP                   F  pVP	                  \        RVR7      4       K!  	  VP	                  \        R^\        SP                  4      ,           R7      4       VP	                  \        R4      4       W6,           V,           V R&   R# u upi )Úco_nameÚco_qualnameÚco_firstlinenoÚco_cellvarsÚco_freevarsÚco_argcountÚco_posonlyargcountÚco_kwonlyargcountÚco_varnamesÚco_flagsÚCOPY_FREE_VARSr—   ÚRESUMEÚ	PUSH_NULLrj   rÒ   )rm   Ú
LOAD_CONSTNÚBUILD_TUPLEÚRETURN_VALUE:NNN)r*   é   r   )r-   r.   r3   r{   rw   r
   r#   Ú_copy_comprehension_bytecoder=   r@   r>   rB   )rP   r×   ÚvrS   Ú	nonnull_ir$   Ú
comp_instsÚepiloguer†   rÊ   rË   rµ   ÚargsÚcomprehension_body_varsr½   ÚfreevarsÚlinenorº   r“   r·   r   rL   s   &&       €€€€€€€€€€€€€r   rt   Ú'_build_comprehension_fn.<locals>.update!  s<  ø€ Ø")ˆ�YÑÜ×Ñ˜wÔ&Ø*1ˆL˜Ñ'Ø)/ˆÐ%Ñ&Ø&(ˆ�]Ñ#Ø&.ˆ�]Ñ#Ü&)¨$£iˆ�]Ñ#Ø-.ˆÐ)Ñ*Ø,-ˆÐ(Ñ)Ü&+ØÑ6ÓHÑ6˜!À4¹-—A�AÑ6ÑHÕHó'
ˆ�]Ñ#ð $0°
Õ#;Ø˜Õ'ð?
õ $
ˆ�ZÑ ð %'ˆßØ�M‰MÔ,Ð-=Ä3ÀxÃ=ÔQÔRØ�‰Ô(¨°qÔ9Ô:ð " AÕ%ˆ	Ü�zÖ"ˆAØ# A×&Ô&Ø—‘Ô0°Ó=Ö>à—‘Ü& {¸XÀiÀ[Ð;QÔRôð ˜Q•’	ñ #ô 2°"°hÀÇÁÓPˆ
ð ')ˆØ×'×'Ð'Ø×"×"Ð"Ø—‘Ü& {¸8×;NÑ;NÔOõð —‘Ô 2°<ÈÔ MÔNØ××ÐØ$×0Ô0�Ø—‘Ô 2°;ÀxÔ PÖQñ 1à�O‰OÜ"Ø!ØœC × 4Ñ 4Ó5Õ5ôôð 	�‰Ô*¨>Ó:Ô;à Õ-°Õ8ˆ�Q‹ùòa Is   ÁI.
ÁI.
)Úbytecode_transformationrÈ   Ú
eval_framerÉ   Úresume_executionrÊ   rË   r{   r®   Úlistr#   ÚsortedÚf_coderÝ   rÞ   ró   rÜ   r   rÚ   rA   rB   r>   rC   rž   Úinstall_resume_function_globalÚ	f_globals)rL   rµ   r   r“   r·   rº   r¸   rÈ   rÉ   Úargnamesr$   rt   r¼   Ú_rÊ   rË   rð   rñ   r½   rò   ró   s   ffffff&       @@@@@@@r   r«   r«   ó  sª  ÿü€ õ$ ?Ý%ß<÷
 ŒuÔU × 1Ò 1ÓU�u‰uÔU × 1Ò 1ÓUÓU€Hà	Ð 7Ð8Ü
ˆx‹.õ	ä#(¨Ô#7Ó
8Ñ#7˜aˆX�a�S‹>Ñ#7Ñ
8õ	9ð 	ô ÜŒt�B—I‘I×)Ñ)×/Ð/¨RÓ0´4¸¿	¹	×8MÑ8M×8SÐ8SÐQSÓ3TÕTÓUó€Hð Ÿ)™)Ò/ˆR�YŠY°R·Y±Y×5MÑ5M€FÜÐ*¨2¯9©9×+<Ñ+<Ð*=¸TÀ&ÀÐJÓK€Gð 	×ÑØ
×
Ñ
õ	à$,×$7×$7Ð$7ˆH×ÑÑ ¸Rõ	Að ×
 Ñ
 õ	!ð ÷;9÷ ;9ô ;9ñz (¨¯	©	°6Ó:�K€HÙˆhÔð ‡I�I×,Ñ,¨W°hÀÇÁÔMà�WÐÐùòi 9s   ÂHc               ó(   € V ^8„  d   QhRRRRRRRR/# )r   rL   r   r   r<   r=   r   rÖ   r   )r   s   "r   r   r   g  s,   € ÷ ñ Ø!ðØ-0ðØ:=ðàñr   c                óB  € / p. p\        W4       FH  pV P                  V,          p\        P                  ! V4      pRVn        WsV&   VP	                  V4       KJ  	  V F=  pVP
                  f   K  VP
                  V9   g   K&  W7P
                  ,          Vn        K?  	  V# )z@Copy comprehension bytecode instructions, updating jump targets.N)r#   rP   ÚcopyÚexn_tab_entryrw   Útarget)rL   r   r=   Úinst_mapÚcopied_instsrQ   Úoriginal_instÚcopied_insts   &&&     r   rë   rë   g  s•   € ð 02€HØ&(€Lä�HÖ%ˆØŸ™¨Õ+ˆÜ—i’i Ó.ˆØ$(ˆÔ!Ø"-�ÑØ×Ñ˜KÖ(ñ &ó $ˆØ×ÑÔ)¨k×.@Ñ.@ÀHÖ.LØ!)×*<Ñ*<Õ!=ˆKÖñ $ð Ðr   c               ó$   € V ^8„  d   QhRRRRRR/# )r   rL   r   r5   r   r   r?   r   )r   s   "r   r   r   |  s$   € ÷ $ñ $Ø!ð$Ø)4ð$à	ñ$r   c                ó¼  € \         P                  R8¼  d   VP                  ^ 8X  g   R# \        V 4      '       g   R# \        ;QJ d&    R V P
                   4       F  '       d   K   RM	  RM! R V P
                   4       4      ;'       d‡    V P                  '       * ;'       dn    V P                  '       * ;'       dU    V P                  '       * ;'       d<    V P                  '       * ;'       d#    V P                  P                  P                  RJ pV'       d   V P                  e   V P                  4       pV'       dL   V P                  ^ 8X  d;   V P                  4       pVP!                  V 4      '       d   \#        W4       R# W0n        \'        V 4      pV^ 8  d   \)        R4      hV P*                  P-                  V4       V ;P                  ^,          un        R# )z¡
Handle comprehension start for Python 3.12+ BUILD_LIST/BUILD_MAP with argval 0.
Returns True if a graph break was triggered and the caller should return early.
Fc              3  ó@   "  € T F  qP                  4       x € K  	  R # 5irl   )Úcan_restore)re   Úbs   & r   rf   Ú8maybe_setup_comprehension_speculation.<locals>.<genexpr>Š  s   é € Ð4¡^ �M‰M�OˆO£^ùs   ‚TNz(failed to find END_FOR for comprehensionr)   )r-   r.   rm   rT   ÚallÚblock_stackÚ	one_graphÚerror_on_graph_breakÚis_tracing_resume_prologueÚactive_generic_context_managersrž   Úcurrent_tracerÚparentÚ#_can_speculate_comprehension_nestedÚ_comprehension_depthÚ	speculateÚfailedrÅ   Úcurrent_speculationr[   r/   Ú_comprehension_end_for_ipsrx   )rL   r5   Úcan_speculateÚspeculationr‚   s   &&   r   Ú%maybe_setup_comprehension_speculationr  |  sw  € ô ×Ñ Ô'¨D¯K©K¸1Ô,<Ùä" 2×&Ò&Ù÷ 	‹Ñ4 R§^¢^Ó4��ŠÑ4 R§^¢^Ó4Ó4÷ 	4ð 	4Ø—‘Ô÷	4ð 	4à×'Ñ'Ô'÷	4ð 	4ð ×-Ñ-Ô-÷	4ð 	4ð ×2Ñ2Ô2÷		4ð 	4ð
 �I‰I×$Ñ$×+Ñ+¨tÐ3ð ÷ ˜Ÿ™Ò.Ø×>Ñ>Ó@ˆç˜×0Ñ0°AÔ5Ø—l‘l“nˆØ×Ñ˜b×!Ò!Ü-¨bÔ7ÙØ!,ÔÜ/°Ó3€JØ�A„~ÜÐGÓHÐHØ×!Ñ!×%Ñ% jÔ1Ø×Ò˜qÕ ÕÙr   )1Ú
__future__r   r  Údataclassesr0   Ú	functoolsÚloggingr-   Úcollectionsr   Útypingr   r   ÚtypesÚsymbolic_convertr   rõ   r   r	   r
   r   r   r   Úcodegenr   Úexcr   Úgraph_break_hintsr   Úoutput_graphr   r   Úvariables.miscr   r   Ú	getLoggerrD   rœ   Úcacher9   Ú	dataclassr;   rT   r[   r�   rÅ   r«   rë   r  r   r   r   Ú<module>r/     s¸   ðÝ "ã Û Û 
Û Û Û 
Ý ß %÷ Ûå;÷÷ õ Ý Ý )ß Aß 9ð ×Ò˜Ó!€ð ‡�ô$ó ð$ð& ×Ñ÷ð ó ðõ(õ*õ*Rõjd"õNqõh÷*$r   