Ë
    L²jQ&  ã                  ó   — U d Z ddlmZ ddlZddlZddlmZ ddlmZm	Z	m
Z
mZ ddlmZ e	rddlmZmZ g d	¢Z ed
«      Z ed«      Zeegef   Zded<    ed«      Z ed«      Z eej0                  d¬«      d+d„«       Z eej2                  d¬«      	 d,ddœ	 	 	 	 	 	 	 d-d„«       Z eej0                  j4                  «      d.d„«       Zee_         eej8                  d¬«      d/d„«       Z eej:                  d¬«      d0d„«       Z eej<                  d¬«      d1d„«       Z eej>                  d¬«      d1d„«       Ze	 	 	 	 	 	 d2d„«       Z e	 	 	 	 	 	 d3d„«       Z e	 	 	 	 	 	 d4d„«       Z e	 	 	 	 	 	 d5d„«       Z  eej@                  d¬«      d6d„«       Z  eejB                  d¬«      d7d„«       Z! eejD                  d¬«      d8d „«       Z" eejF                  d¬«      d9d!„«       Z# eejH                  «      d:d;d"„«       Z$ed#d$œ	 	 	 	 	 d<d%„«       Z%e	 	 	 	 	 	 d=d&„«       Z%ed#d$œ	 	 	 	 	 	 	 d>d'„«       Z%e	 	 	 	 	 	 	 	 	 	 d?d(„«       Z%ed#d$œ	 	 	 	 	 	 	 	 	 	 	 d@d)„«       Z% eejJ                  d¬«      dd$œ	 	 	 	 	 dAd*„«       Z%y)Bz 
Python polyfills for itertools
é    )ÚannotationsN)ÚCallable)ÚoverloadÚTYPE_CHECKINGÚ	TypeAliasÚTypeVaré   )Úsubstitute_in_graph)ÚIterableÚIterator)Ú
accumulateÚchainÚchain_from_iterableÚcompressÚcycleÚ	dropwhileÚfilterfalseÚisliceÚpairwiseÚstarmapÚ	takewhileÚteeÚzip_longestÚ_TÚ_Ur   Ú
_PredicateÚ_T1Ú_T2T)Úis_embedded_typec               '  ó2   K  — | D ]  }|E d {  –—†  Œ y 7 Œ­w©N© )Ú	iterablesÚiterables     ú`/var/www/html/ia-enhanced/venv/lib/python3.12/site-packages/torch/_dynamo/polyfills/itertools.pyr   r   ,   s!   è ø€ àò ˆØ×ÑñØúó   ‚�Ž)Úinitialc               ó^   ‡‡— t        | «      }‰€t        j                  Šdˆˆfd„} ||«      S )Nc              3  ó|   •K  — ‰}|€	 t        | «      }|–— | D ]  } ‰||«      }|–— Œ y # t        $ r Y y w xY w­wr!   ©ÚnextÚStopIteration)ÚiteratorÚtotalÚelementÚfuncr'   s      €€r%   Ú_accumulatezaccumulate.<locals>._accumulate?   sY   øè ø€ ØˆØˆ=ðÜ˜X›�ð ŠØò 	ˆGÙ˜ Ó(ˆEØ‹Kñ	øô	 !ò Ùðüs   ƒ<‰- ”<­	9¶<¸9¹<©r-   úIterator[_T]Úreturnr3   )ÚiterÚoperatorÚadd)r$   r0   r'   r-   r1   s    ``  r%   r   r   3   s.   ù€ ô �H‹~€HØ€|Ü�|‰|ˆöñ �xÓ Ð ó    c             #  ó2   K  — | D ]  }|E d {  –—†  Œ y 7 Œ­wr!   r"   )r$   Úits     r%   r   r   O   s!   è ø€ ð
 ò ˆØ�‰ñØúr&   c               ó(   — d„ t        | |«      D «       S )Nc              3  ó,   K  — | ]  \  }}|sŒ	|–— Œ y ­wr!   r"   )Ú.0ÚdatumÚselectors      r%   ú	<genexpr>zcompress.<locals>.<genexpr>^   s   è ø€ ÒJ‘o�e˜XÂŒEÑJùs   ‚
�)Úzip)ÚdataÚ	selectorss     r%   r   r   \   s   € áJ¬¨T°9Ó)=ÔJÐJr8   c                ó6   ‡ — t        ‰ «      }dˆ fd„} ||«      S )Nc              3  ól   •K  — g }‰D ]  }|–— |j                  |«       Œ |r|D ]  }|–— Œ |rŒy y ­wr!   )Úappend)r-   Úsavedr/   r$   s      €r%   Ú_cyclezcycle.<locals>._cyclef   sJ   øè ø€ àˆØò 	"ˆGØŠMØ�L‰L˜Õ!ð	"ñ Ø ò �Ø“ðô ùs   ƒ.4²4r2   )r5   )r$   r-   rH   s   `  r%   r   r   b   s   ø€ ä�H‹~€Hõ	ñ �(ÓÐr8   c             #  ó¾   K  — t        | «      s"t        dt        | «      j                  › d�«      ‚t	        |«      }|D ]  } | |«      rŒ|–—  n |E d {  –—†  y 7 Œ­w©Nú'z' object is not callable)ÚcallableÚ	TypeErrorÚtypeÚ__name__r5   )Ú	predicater$   r-   Úxs       r%   r   r   u   sb   è ø€ ô �IÔÜ˜!œD ›O×4Ñ4Ð5Ð5MÐNÓOÐOä�H‹~€HØò ˆÙ˜�|ØŠGÙðð
 ×Òús   ‚AAÁ	AÁAÁAc             #  ó�   K  — t        | «      s"t        dt        | «      j                  › d�«      ‚|D ]  } | |«      s y |–— Œ y ­wrJ   ©rL   rM   rN   rO   )rP   r$   rQ   s      r%   r   r   …   sN   è ø€ ô �IÔÜ˜!œD ›O×4Ñ4Ð5Ð5MÐNÓOÐOàò ˆÙ˜Œ|ÙØ‹ñùs   ‚AAc                ó   — y r!   r"   ©Úfunctionr$   s     r%   r   r   ‘   ó   € ð
  r8   c                ó   — y r!   r"   rU   s     r%   r   r   ™   rW   r8   c                ó   — y r!   r"   rU   s     r%   r   r   ¡   rW   r8   c                ó   — y r!   r"   rU   s     r%   r   r   ©   rW   r8   c             #  ó‚   K  — t        | «      s"t        dt        | «      j                  › d�«      ‚|D ]	  } | |Ž –— Œ y ­wrJ   rS   )rV   r$   Úargss      r%   r   r   ²   sI   è ø€ ô �HÔÜ˜!œD ›N×3Ñ3Ð4Ð4LÐMÓNÐNàò ˆÙ˜ˆoÓñùs   ‚=?c               óp   ‡ — t        |«      }‰ €t        t        j                  |«      S t        ˆ fd„|«      S )Nc                ó   •—  ‰| «       S r!   r"   )rQ   rV   s    €r%   ú<lambda>zfilterfalse.<locals>.<lambda>Ã   s   ø€ ¡H¨Q£K € r8   )r5   Úfilterr6   Únot_)rV   r$   r:   s   `  r%   r   r   ½   s1   ø€ ä	ˆh‹€BØÐÜ”h—m‘m RÓ(Ð(äÓ/°Ó4Ð4r8   c             '  ó–  K  — t        |Ž }|j                  €dn|j                  }|j                  }|j                  €dn|j                  }|dk  s|�|dk  s|dk  rt	        d«      ‚|€%|}t        | «      D ]  \  }}||k(  sŒ|–— ||z  }Œ y t        t        ||«      «      }	|}t        |	| «      D ]  \  }}||k(  sŒ|–— ||z  }Œ y ­w)Nr   é   zGIndices for islice() must be None or an integer: 0 <= x <= sys.maxsize.)	ÚsliceÚstartÚstopÚstepÚ
ValueErrorÚ	enumerateÚrangeÚmaxrA   )
r$   r\   Úsre   rf   rg   Únext_iÚir/   Úindicess
             r%   r   r   Ç   sè   è ø€ äˆtˆ€AØ—‘�‰A a§g¡g€EØ�6‰6€DØ—‘�‰1 A§F¡F€DØˆq‚y�TÐ%¨$°ª(°t¸q²yÜØUó
ð 	
ð €|ð ˆÜ# HÓ-ò 	‰JˆAˆwØ�F‹{Ø’Ø˜$‘‘ñ	ô
 œ˜E 4Ó(Ó)ˆØˆÜ˜g xÓ0ò 	‰JˆAˆwØ�F‹{Ø’Ø˜$‘‘ñ	ùs   ‚A?C	Â:C	Â=C	c             #  ó<   K  — d }d}| D ]  }|rd}n||f–— |}Œ y ­w)NTFr"   )r$   ÚaÚfirstÚbs       r%   r   r   ä   s5   è ø€ à€AØ€EØò ˆÙØ‰Eà�Q�$ŠJØ‰ñùs   ‚c               ón   ‡‡‡— t        | «      Šd d gŠdˆfd„Št        ˆˆfd„t        |«      D «       «      S )Nc              3  óv   •K  — 	 	 | d   €t        ‰«      | d<   d d g| d<   | \  }} |–— Œ$# t        $ r Y y w xY w­w)Nrc   r   r*   )ÚlinkÚvaluer-   s     €r%   Ú_teeztee.<locals>._teeö   sX   øè ø€ ð	ØØ˜‘7�?Ü" 8›n�D˜‘GØ# T˜l�D˜‘GØ"‘��tØ’ð øô ò 	Ùð	üs   ƒ9…%* ª	6³9µ6¶9c              3  ó.   •K  — | ]  } ‰‰«      –— Œ y ­wr!   r"   )r=   Ú_rx   Úshared_links     €€r%   r@   ztee.<locals>.<genexpr>  s   øè ø€ Ò5 q‘�k×"Ñ5ùs   ƒ)r4   r3   )r5   Útuplerj   )r$   Únrx   r-   r{   s     @@@r%   r   r   ñ   s1   ú€ ä�H‹~€HØ˜�,€Kõ	ô Ô5¬E°!«HÔ5Ó5Ð5r8   .)Ú	fillvaluec               ó   — y r!   r"   )Úiter1r~   s     r%   r   r     s   € ð r8   c                ó   — y r!   r"   )r€   Úiter2s     r%   r   r     s   € ð /2r8   c               ó   — y r!   r"   )r€   r‚   r~   s      r%   r   r     s   € ð +.r8   c                ó   — y r!   r"   )r€   r‚   Úiter3r#   s       r%   r   r   "  s   € ð '*r8   c               ó   — y r!   r"   )r€   r‚   r…   r~   r#   s        r%   r   r   -  s   € ð %(r8   c              '  ó@  K  — t        t        t        |«      «      }t        |«      }|sy 	 g }t	        |«      D ]"  \  }}	 t        |«      }|j                  |«       Œ$ t        |«      –— Œ@# t        $ r' |dz  }|sY  y t        j                  | «      ||<   | }Y ŒPw xY w­w)Nrc   )ÚlistÚmapr5   Úlenri   r+   r,   Ú	itertoolsÚrepeatrF   r|   )r~   r#   Ú	iteratorsÚ
num_activeÚvaluesrn   r-   rw   s           r%   r   r   :  s­   è ø€ ô ”Sœ˜yÓ)Ó*€IÜ�Y“€JÙØà
ØˆÜ$ YÓ/ò 		!‰KˆAˆxð"Ü˜X›�ð �M‰M˜%Õ ð		!ô �F‹mÒð øô
 !ò "Ø˜a‘�
Ù!ÚÜ(×/Ñ/°	Ó:�	˜!‘Ø!’ð"üs4   ‚<B¿A+Á
!BÁ+BÁ;BÁ>BÂBÂBÂB)r#   úIterable[_T]r4   r3   r!   )r$   r�   r0   zCallable[[_T, _T], _T] | Noner'   z	_T | Noner4   r3   )r$   zIterable[Iterable[_T]]r4   r3   )rB   r�   rC   zIterable[_U]r4   r3   )r$   r�   r4   r3   )rP   ú_Predicate[_T]r$   r�   r4   r3   )rV   zCallable[[], _U]r$   zIterable[tuple[()]]r4   úitertools.starmap[_U])rV   zCallable[[_T], _U]r$   zIterable[tuple[_T]]r4   r’   )rV   zCallable[[_T, _T1], _U]r$   zIterable[tuple[_T, _T1]]r4   r’   )rV   zCallable[[_T, _T1, _T2], _U]r$   zIterable[tuple[_T, _T1, _T2]]r4   r’   )rV   zCallable[..., _T]r$   r   r4   r�   )rV   r‘   r$   r�   r4   r3   )r$   r�   r\   z
int | Noner4   r3   )r$   r�   r4   zIterator[tuple[_T, _T]])r	   )r$   r�   r}   Úintr4   ztuple[Iterator[_T], ...])r€   úIterable[_T1]r~   r   r4   zIterator[tuple[_T1]])r€   r”   r‚   úIterable[_T2]r4   z'Iterator[tuple[_T1 | None, _T2 | None]])r€   r”   r‚   r•   r~   r   r4   z#Iterator[tuple[_T1 | _U, _T2 | _U]])
r€   r�   r‚   r�   r…   r�   r#   r�   r4   zIterator[tuple[_T | None, ...]])r€   r�   r‚   r�   r…   r�   r#   r�   r~   r   r4   úIterator[tuple[_T | _U, ...]])r#   r�   r~   r   r4   r–   )&Ú__doc__Ú
__future__r   r‹   r6   Úcollections.abcr   Útypingr   r   r   r   Ú
decoratorsr
   r   r   Ú__all__r   r   Úobjectr   Ú__annotations__r   r   r   r   Úfrom_iterabler   r   r   r   r   r   r   r   r   r   r   r"   r8   r%   ú<module>r       sb  ðòõ #ã Û Ý $ß >Ó >å ,ñ ß2ò€ñ" ˆTƒ]€ÙˆTƒ]€Ø  "  v Ñ.€
ˆIÓ .Ùˆeƒn€Ùˆeƒn€ñ �Y—_‘_°tÔ<òó =ðñ �Y×)Ñ)¸DÔAð +/ð!ð ñ	!Øð!à
'ð!ð ð	!ð
 ò!ó Bð!ñ6 �Y—_‘_×2Ñ2Ó3òó 4ðð *€Ô ñ �Y×'Ñ'¸$Ô?òKó @ðKñ
 �Y—_‘_°tÔ<òó =ðñ$ �Y×(Ñ(¸4Ô@òó Aðñ �Y×(Ñ(¸4Ô@òó Aðð 
ð Øð à!ð ð ò	 ó 
ð ð 
ð Ø ð à!ð ð ò	 ó 
ð ð 
ð Ø%ð à&ð ð ò	 ó 
ð ð 
ð Ø*ð à+ð ð ò	 ó 
ð ñ �Y×&Ñ&¸Ô>òó ?ðñ �Y×*Ñ*¸TÔBò5ó Cð5ñ �Y×%Ñ%¸Ô=òó >ðñ8 �Y×'Ñ'¸$Ô?òó @ðñ �Y—]‘]Ó#ó6ó $ð6ð$ 
ð ñ	Øðð ð	ð
 òó 
ðð 
ð2Øð2àð2ð -ò	2ó 
ð2ð 
ð ñ.Øð.àð.ð
 ð.ð )ò.ó 
ð.ð 
ð*Øð*àð*ð ð*ð
 ð*ð %ò*ó 
ð*ð 
ð ñ(Øð(àð(ð ð(ð
 ð(ð ð(ð #ò(ó 
ð(ñ �Y×*Ñ*¸TÔBð ñØðàðð #òó Cñr8   