+
    –°³j@(  ã                   óV  a € R) t0 t R t^ RIHt ^ RIHt ^ RIHt ^ RIH	t	 ^RIH
t
 ]]R*,          ,          t] ^ k 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tR R ltR R ltR R ltR R ltR+R R lltR,R R  lltR,R! R" lltR,R# R$ lltR% R& ltR' R( ltR# )-z&
Functions for manipulating IntTuples
)Úreduce)Úchain)Ú	TypeAlias)ÚTypeIs)ÚIntegerc                óF   € V ^8„  d   QhR\         R\        \        ,          /# ©é   ÚxÚreturn)Úobjectr   Úint)Úformats   "Úd/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/distributed/_pycute/int_tuple.pyÚ__annotate__r   1   s   € ÷ "ñ "Œfð "œ¤�ñ "ó    c                 ó"   € \        V \        4      # ©N)Ú
isinstancer   ©r
   s   &r   Úis_intr   1   s   € Ü�aœÓ!Ð!r   c                óF   € V ^8„  d   QhR\         R\        \        ,          /# r   )r   r   Útuple)r   s   "r   r   r   5   s   € ÷  ñ  ”ð  œ6¤%�=ñ  r   c                 ó"   € \        V \        4      # r   )r   r   r   s   &r   Úis_tupler   5   s   € Ü�aœÓÐr   c                óJ   € V ^8„  d   QhR\         R\        \         R3,          /# )r	   r
   r   .)ÚIntTupler   )r   s   "r   r   r   9   s#   € ÷ ñ ”ð œU¤8¨S =Õ1ñ r   c                 ó.   € \        V 4      '       d   V 3# V # r   )r   r   s   &r   Úas_tupler   9   s   € Üˆa‡y‚yØˆtˆØ€Hr   c                ó<   € V ^8„  d   QhR\         R\         R\        /# ©r	   ÚaÚbr   )r   Úbool)r   s   "r   r   r   ?   s!   € ÷ ñ ”xð ¤Hð ´ñ r   c                 ó\  € \        V 4      '       d   \        V4      '       d   R # \        V 4      '       dw   \        V4      '       df   \        V 4      \        V4      8H  ;'       dG    \        ;QJ d%    R \	        W4       4       F  '       d   K   R# 	  R # ! R \	        W4       4       4      # R# )Tc              3   ó<   "  € T F  w  r\        W4      x € K  	  R # 5ir   )Úmatch_structure©Ú.0r
   Úys   &  r   Ú	<genexpr>Ú"match_structure.<locals>.<genexpr>C   s   é € Ð'TÉ)Á$À!¬¸×(=Ð(=Ë)ùó   ‚F)r   r   ÚlenÚallÚzip©r!   r"   s   &&r   r&   r&   ?   sp   € Üˆa‡y‚y”V˜A—Y’YÙÜ�‡{‚{”x —{’{Ü�1‹vœ˜Q›Ñ×TÐT§C£CÑ'TÌ#ÈaÌ)Ó'T§C¤CÐT¢CÐT CÑ'TÌ#ÈaÌ)Ó'TÓ$TÐTÙr   c                óJ   € V ^8„  d   QhR\         R\        \        R3,          /# )r	   Útr   .)r   r   r   )r   s   "r   r   r   G   s"   € ÷ ñ Œxð œE¤# s (�Oñ r   c                 ó¦   € \        V 4      '       d?   \        V 4      ^ 8X  d   R# \        ;QJ d    . R V  4       F  NK  	  5# ! R V  4       4      # V 3# )é    c              3   óH   "  € T F  p\        V4       F  q"x € K  	  K  	  R # 5ir   )Úflatten)r(   r!   Úis   &  r   r*   Úflatten.<locals>.<genexpr>L   s   é € Ð:¡A˜q¬w°q®z¨!œ©z™£Aùs   ‚ "© )r   r-   r   )r2   s   &r   r6   r6   G   sD   € Ü�‡{‚{Üˆq‹6�QŒ;ØˆIç”5Ñ:¡AÓ:—5Ð:�5Ñ:¡AÓ:Ó:Ð:àˆtˆr   c                ó0   € V ^8„  d   QhR\         R\         /# ©r	   r!   r   )r   )r   s   "r   r   r   Q   s   € ÷ %ñ %Œcð %”cñ %r   c                 óD   € \        V ^ 8„  4      \        V ^ 8  4      ,
          # )r4   )r#   ©r!   s   &r   Úsignumr>   Q   s   € Ü��A‘‹;œ˜a !™e›Õ$Ð$r   c                ó0   € V ^8„  d   QhR\         R\        /# r;   ©r   r   )r   s   "r   r   r   U   s   € ÷ ñ Œxð œCñ r   c                 óD   € \        V 4      '       d   \        R  V ^4      # V # )c                 ó&   € V \        V4      ,          # r   )Úproduct)ÚvalÚelems   &&r   Ú<lambda>Úproduct.<locals>.<lambda>W   s   € ¨¬g°d«mÖ(;r   )r   r   r=   s   &r   rC   rC   U   s    € Ü�‡{‚{ÜÑ;¸QÀÓBÐBàˆr   c                ó<   € V ^8„  d   QhR\         R\         R\        /# r    r@   )r   s   "r   r   r   \   s!   € ÷ ñ ”Xð ¤(ð ¬sñ r   c                 ó  € \        V 4      '       dL   \        V4      '       d;   \        V 4      \        V4      8w  d   \        h\        R  \	        W4       4       4      # \        V 4      '       g   \        V4      '       d   \        hW,          # )c              3   ó<   "  € T F  w  r\        W4      x € K  	  R # 5ir   )Úinner_productr'   s   &  r   r*   Ú inner_product.<locals>.<genexpr>`   s   é € Ð=±9©4¨1”= ×&Ð&³9ùr,   )r   r-   ÚAssertionErrorÚsumr/   r0   s   &&r   rK   rK   \   s\   € Ü�‡{‚{”x —{’{Üˆq‹6”S˜“VÔÜ Ð ÜÑ=´3°q´9Ó=Ó=Ð=ä�A�;Š;œ( 1Ÿ+š+Ü Ð Ø�uˆr   c                ó0   € V ^8„  d   QhR\         R\        /# r;   r@   )r   s   "r   r   r   g   s   € ÷ ñ ”ð œcñ r   c                 óL   € \        V 4      '       d   \        R  V  4       4      # V # )c              3   ó8   "  € T F  p\        V4      x € K  	  R # 5ir   )Ú	tuple_max)r(   r
   s   & r   r*   Útuple_max.<locals>.<genexpr>i   s   é € Ð+© A”9˜Q—<�<«ùó   ‚)r   Úmaxr=   s   &r   rR   rR   g   s!   € Ü�‡{‚{ÜÑ+©Ó+Ó+Ð+àˆr   c                ó<   € V ^8„  d   QhR\         R\         R\         /# r    ©r   )r   s   "r   r   r   n   s!   € ÷ ñ ”(ð œxð ¬Hñ r   c                 ór  € \        V 4      '       dz   \        V4      '       d^   \        V 4      \        V4      8w  d   \        h\        ;QJ d    . R  \	        W4       4       F  NK  	  5# ! R  \	        W4       4       4      # \        R4      h\        V4      '       d   \        V \        V4      4      # W,          # )c              3   ó<   "  € T F  w  r\        W4      x € K  	  R # 5ir   )Ú
elem_scaler'   s   &  r   r*   Úelem_scale.<locals>.<genexpr>s   s   é € Ð@±i©d¨aœ A×)Ð)³iùr,   z#Invalid combination: tuple with int)r   r-   rM   r   r/   rZ   rC   r0   s   &&r   rZ   rZ   n   s�   € Ü�‡{‚{Ü�A�;Š;Ü�1‹vœ˜Q›ÔÜ$Ð$ß”5Ñ@´c¸!´iÓ@—5Ð@�5Ñ@´c¸!´iÓ@Ó@Ð@ä Ð!FÓGÐGä�A�;Š;Ü˜a¤¨£Ó,Ð,à•5ˆLr   c                ó<   € V ^8„  d   QhR\         R\         R\         /# r    rW   )r   s   "r   r   r   ~   s!   € ÷ $ñ $”ð $œhð $¬8ñ $r   c                 óB  € \        V 4      '       d´   \        V4      '       d^   \        V 4      \        V4      8w  d   \        h\        ;QJ d    . R  \	        W4       4       F  NK  	  5# ! R  \	        W4       4       4      # . pV  F2  pVP                  \        W14      4       \        V\        V4      4      pK4  	  \        V4      # \        V4      '       d   \        V \        V4      4      # W,          ^ 8X  g   W,          ^ 8X  g   \        hW,           ^,
          V,          # )c              3   ó<   "  € T F  w  r\        W4      x € K  	  R # 5ir   )Ú	shape_divr'   s   &  r   r*   Úshape_div.<locals>.<genexpr>ƒ   s   é € Ð?±Y©T¨Qœ 1Ÿ˜³Yùr,   )r   r-   rM   r   r/   Úappendr_   rC   )r!   r"   ÚrÚvs   &&  r   r_   r_   ~   sÒ   € Ü�‡{‚{Ü�A�;Š;Ü�1‹vœ˜Q›ÔÜ$Ð$ß”5Ñ?´S¸´YÓ?—5Ð?�5Ñ?´S¸´YÓ?Ó?Ð?ð ˆAÛ�Ø—‘œ 1›Ô)Ü˜a¤¨£Ó,’ñ ô ˜“8ˆOä�A�;Š;Ü˜Q¤¨£
Ó+Ð+à•E˜Q”J !¥%¨1¤*Ü$Ð$Ø•E˜A•I !Õ#Ð#r   c                ó<   € V ^8„  d   QhR\         R\         R\         /# )r	   r!   Úinitr   rW   )r   s   "r   r   r   •   s!   € ÷ ñ ”hð ¤hð ´xñ r   c                 ó0  € \        V 4      '       dé   \        V4      '       d^   \        V 4      \        V4      8w  d   \        h\        ;QJ d    . R  \	        W4       4       F  NK  	  5# ! R  \	        W4       4       4      # . p\        \        V 4      ^,
          RR4       F<  pVP                  \        W,          V4      4       V\        W,          4      ,          pK>  	  VP                  4        \        V4      # \        V4      '       d   \        R4      hV# )c              3   ó<   "  € T F  w  r\        W4      x € K  	  R # 5ir   )Úsuffix_product)r(   r
   r7   s   &  r   r*   Ú!suffix_product.<locals>.<genexpr>›   s   é € ÐG¹,±$°!œ¨×-Ð-»,ùr,   z(Invalid combination: int with tuple initéÿÿÿÿ)
r   r-   rM   r   r/   Úrangera   rh   rC   Úreverse)r!   re   rb   r7   s   &&  r   rh   rh   •   sË   € ä�‡{‚{Ü�D�>Š>Ü�1‹vœ˜T›Ô"Ü$Ð$ß”5ÑG¼#¸a¼,ÓG—5ÐG�5ÑG¼#¸a¼,ÓGÓGÐGð
 ˆAô œ3˜q›6 A�: r¨2Ö.�Ø—‘œ¨­¨dÓ3Ô4Øœg a¥d›mÕ+’ñ /ð
 �I‰IŒKÜ˜“8ˆOä�D�>Š>Ü Ð!KÓLÐLàˆKr   Nc                óV   € V ^8„  d   QhR\         R\         R\         R,          R\         /# )r	   ÚidxÚshapeÚstrideNr   rW   )r   s   "r   r   r   ±   s,   € ÷ +ñ +”ð +¤(ð +´H¸tµOð +Ìxñ +r   c                 ó  a € Vf   \        V4      p\        S 4      '       d¦   \        V4      '       dŠ   \        V4      '       dy   \        S 4      \        V4      8X  d   \        V4      \        V4      8X  g   \        h\        ;QJ d    . R \        S W4       4       F  NK  	  5# ! R \        S W4       4       4      # \        R4      h\        V4      '       du   \        V4      '       dd   \        V4      \        V4      8w  d   \        h\        ;QJ d     . V 3R l\        W4       4       F  NK  	  5# ! V 3R l\        W4       4       4      # \        V4      '       g   \        V4      '       d   \        hS V,          V,          # )Nc              3   ó@   "  € T F  w  rp\        WV4      x € K  	  R # 5ir   ©Úidx2crd)r(   r7   ÚsÚds   &   r   r*   Úidx2crd.<locals>.<genexpr>¹   s    é € ÐQÑ9P©g¨a°Aœ  q×)Ð)Ó9Pùó   ‚z*Invalid combination: tuple with int stridec              3   ó@   <"  € T F  w  r\        SW4      x € K  	  R # 5ir   rs   )r(   ru   rv   rn   s   &  €r   r*   rw   À   s   øé € ÐKÑ8J±°œ  a×+Ð+Ó8Jùs   ƒ)rh   r   r-   rM   r   r/   )rn   ro   rp   s   f&&r   rt   rt   ±   s  ø€ Ø‚~Ü Ó&ˆä�‡}‚}Ü�E�?Š?œx¨×/Ò/Ü˜“H¤ E£
Ô*¬s°6«{¼cÀ%»jÔ/HÜ$Ð$ß”5ÑQ¼¸SÀ%Ô9PÓQ—5ÐQ�5ÑQ¼¸SÀ%Ô9PÓQÓQÐQä Ð!MÓNÐNä�E�?Š?œx¨×/Ò/Ü�5‹zœS ›[Ô(Ü$Ð$ß”5ÔK¼¸EÔ8JÓK—5ÐK�5ÔK¼¸EÔ8JÓKÓKÐKä˜�Š¤(¨6×"2Ò"2Ü$Ð$Ø˜6•M UÕ*Ð*r   c                ód   € V ^8„  d   QhR\         R,          R\         R\         R,          R\        /# )r	   ÚcrdNro   rp   r   r@   )r   s   "r   r   r   Ç   s4   € ÷  ñ  Ü	�D�ð Ü!)ð Ü3;¸dµ?ð äñ r   c           	      óŒ  € Vf   \        V4      p\        V 4      '       dˆ   \        V4      '       df   \        V4      '       dU   \        V 4      \        V4      8X  d   \        V4      \        V4      8X  g   \        h\	        R \        WV4       4       4      # \        RV  RV 24      hV f   ^ p \        V4      '       dØ   \        V4      '       dÇ   \        V4      \        V4      8w  d   \        h^ p\        \        V4      ^,
          ^ R4       FQ  pV\        V \        W,          4      ,          W,          W$,          4      ,          pV \        W,          4      ,          p KS  	  \        V4      ^ 8”  d"   V\        W^ ,          V^ ,          4      ,          pV# \        V4      '       g   \        V4      '       d   \        hW,          # )Nc              3   ó@   "  € T F  w  rp\        WV4      x € K  	  R # 5ir   )Úcrd2idx)r(   Úcru   rv   s   &   r   r*   Úcrd2idx.<locals>.<genexpr>Ñ   s    é € ÐOÑ7N©G¨A°!”w˜q Q×'Ð'Ó7Nùrx   zInvalid combination: crd=z, shape=rj   )	rh   r   r-   rM   rN   r/   rk   r~   rC   )r{   ro   rp   Úresultr7   s   &&&  r   r~   r~   Ç   sX  € ð ‚~Ü Ó&ˆä�‡}‚}Ü�E�?Š?œx¨×/Ò/Ü˜“H¤ E£
Ô*¬s°6«{¼cÀ%»jÔ/HÜ$Ð$ÜÑO´s¸3ÀvÔ7NÓOÓOÐOä Ð#<¸S¸EÀÈ%ÈÐ!QÓRÐRàŠ;ØˆCä�E�?Š?œx¨×/Ò/Ü�5‹zœS ›[Ô(Ü$Ð$ØˆFäœ3˜u›:¨�>¨1¨bÖ1�Øœ' #¬°µÓ(9Õ"9¸5½8ÀVÅYÓOÕO�ØœW U¥XÓ.Õ.’ñ 2ô �5‹z˜AŒ~Øœ' #¨Q¥x°¸µÓ;Õ;�ØˆMä˜�Š¤(¨6×"2Ò"2Ü$Ð$Ø•<Ðr   c                óV   € V ^8„  d   QhR\         R\         R\         R,          R\         /# )r	   r{   Ú	dst_shapeÚ	src_shapeNr   rW   )r   s   "r   r   r   ê   s0   € ÷ ñ Ü	ðÜ&ðÜ3;¸dµ?ðäñr   c                 ó~  € \        V 4      '       d„   \        V4      '       d^   \        V 4      \        V4      8w  d   \        h\        ;QJ d    . R  \	        W4       4       F  NK  	  5# ! R  \	        W4       4       4      # Vf   \        h\        W4      # \        V4      '       d   \        W4      # W8¼  d   \        hV # )c              3   ó<   "  € T F  w  r\        W4      x € K  	  R # 5ir   )Úcrd2crdr'   s   &  r   r*   Úcrd2crd.<locals>.<genexpr>ñ   s   é € ÐGÑ3F©4¨1œ Ÿ˜Ó3Fùr,   )r   r-   rM   r   r/   r~   rt   )r{   rƒ   r„   s   &&&r   r‡   r‡   ê   sš   € ô �‡}‚}Ü�I×ÒÜ�3‹xœ3˜y›>Ô)Ü$Ð$ß”5ÑG´3°sÔ3FÓG—5ÐG�5ÑG´3°sÔ3FÓGÓGÐGð Ò Ü$Ð$Ü˜3Ó*Ð*ä�I×ÒÜ˜3Ó*Ð*àÔÜ$Ð$ØˆJr   c                óŒ   € V ^8„  d   QhR\         \        ,          R,          R\         \        ,          R\         \        ,          /# )r	   r{   NÚtrgr   )r   r   )r   s   "r   r   r     s2   € ÷ ñ ”œ•˜dÕ"ð ¬´­ð ¼Ä½ñ r   c                 ó>  € \        V 4      '       d   \        V4      '       dc   \        V 4      \        V4      8w  d   \        h\        \	        \        R  \        W4       UUu. uF  w  r#\        W#4      NK  	  upp4      !  4      # \        R4      hV f   V3# R# u uppi )c                 ó   € V R8g  # )Nr9   r9   r   s   &r   rF   Úslice_.<locals>.<lambda>
  s   €  ! r¢'r   z+Invalid combination: tuple crd with int trgr9   )r   r-   rM   r   r   Úfilterr/   Úslice_)r{   rŠ   r   ru   s   &&  r   r�   r�     s‹   € Ü�‡}‚}Ü�C�=Š=Ü�3‹xœ3˜s›8Ô#Ü$Ð$äÜÜÙ)Ü25°c´-Ô@±-©$¨!œ ž±-Ò@óñóð ô !Ð!NÓOÐOØ	Šàˆvˆàˆ	ùó As   Á!Bc                óT   € V ^8„  d   QhR\         \        ,          R,          R\        /# )r	   r!   Nr   )r   r   r#   )r   s   "r   r   r     s#   € ÷ ñ ”œ•˜dÕ"ð ¤tñ r   c                 ó”   € \        V 4      '       d5   \        ;QJ d    R  V  4       F  '       g   K   R# 	  R# ! R  V  4       4      # V RJ # )c              3   ó8   "  € T F  p\        V4      x € K  	  R # 5ir   )Úhas_none)r(   rc   s   & r   r*   Úhas_none.<locals>.<genexpr>  s   é € Ð*© 1”8˜A—;�;«ùrT   TFN)r   Úanyr=   s   &r   r“   r“     s>   € Ü�‡{‚{ß‹sÑ*©Ó*�sŒsÐ*ŠsÐ*ˆsÑ*©Ó*Ó*Ð*à�DˆyÐr   c                ó@   € V ^8„  d   Qh/ ^ \         9   d
   \        ;R&   # )r	   r   )Ú__conditional_annotations__r   )r   s   "r   r   r   !   s   € ÷ ñ ÷ 3Ò 2Œ)Ñ 2òr   )r   .)é   r   ) r—   Ú__doc__Ú	functoolsr   Ú	itertoolsr   Útypingr   Útyping_extensionsr   r   r   r   r   r   r   r   r&   r6   r>   rC   rK   rR   rZ   r_   rh   rt   r~   r‡   r�   r“   r   )r—   s   @r   Ú<module>rž      s‡   øðöBõ Ý Ý Ý $å ð ˜E /Õ2Õ2€Ó 2õ"õ õõõõ%õõõõõ $÷.÷8+÷, ÷Fõ.÷0r   