§
    6˜ºhÓ  ã                  óz  — U d dl mZ d dlmZ d dlmZmZmZmZm	Z	m
Z
 er4ddlmZ eee         eedf         ej        ej        f         Zeedf         ZdZdQd„ZdRd„ZdSd„Zd„ ZdTd„Zi dd“dd“dd“dd“d d!“d"d#“d$d%“d&d!“d'd(“d)d(“d*d#“d+d,“d-d,“d.d/“d0d/“d1d2“d3d4“d4d5d5d6d7d8d8d9d:d;d<d=d>d?œ¥Z ee                     ¦   «         ¦  «        D ]Zeee<   Œd@„ Zi dA„ dBD ¦   «         ¥dC„ dBD ¦   «         ¥dD„ dED ¦   «         ¥dF„ dGD ¦   «         ¥dHd dIœ¥ZdJedK<   e                     ¦   «         D ]\  Z Zee         ee <   ŒdUdO„Z!dPS )Vé    )Úannotations©Úreduce)ÚAnyÚCallableÚTYPE_CHECKINGÚUnionÚListÚDicté   ©Úcore.i   ÚiterableÚIterableTypeÚpathÚObjPathÚreturnr   c                ó&   — t          d„ || ¦  «        S )Nc                ó   — | |         S ©N© )ÚaÚidxs     úU/var/www/html/services/rag-service/venv/lib/python3.11/site-packages/triton/_utils.pyú<lambda>z#get_iterable_path.<locals>.<lambda>   s
   €   3¤€ ó    r   )r   r   s     r   Úget_iterable_pathr      s   € ÝÐ'Ð'¨¨xÑ8Ô8Ð8r   útuple[int, ...]Úvalc                ó    — t          |¦  «        dk    sJ ‚t          |¦  «        dk    r| nt          | |d d…         ¦  «        }|||d         <   d S )Nr   r   éÿÿÿÿ)Úlenr   )r   r   r   Úprevs       r   Úset_iterable_pathr$      sP   € Ýˆt‰9Œ9˜Š>ˆ>ˆ>ˆ>Ý˜4‘y”y A’~�~ˆ8ˆ8Õ+<¸XÀtÈCÈRÈCÄyÑ+QÔ+Q€DØ€DˆˆbŒ�N€N€Nr   úUnion[IterableType, Any]ÚpredúCallable[[ObjPath, Any], bool]úlist[ObjPath]c                ó’   ‡‡‡‡‡— ddl mŠ ˆfd„Ši Šd
ˆˆˆˆfd„Š ‰d	| ¦  «         t          ‰                     ¦   «         ¦  «        S )Nr   r   c                óT   •— t          | t          t          ‰j        ‰j        f¦  «        S r   )Ú
isinstanceÚlistÚtupleÚ
tuple_type)Úxr   s    €r   r   zfind_paths_if.<locals>.<lambda>   s    ø€ µ:¸aÅ$ÍÈtÌzÐ[_Ô[jÐAkÑ3lÔ3l€ r   r   r   Úcurrentr   c                ó”   •—  ‰|¦  «        r(t          |¦  «        D ]\  }} ‰g | ¢|‘R |¦  «         Œd S  ‰| |¦  «        rd ‰| <   d S d S r   )Ú	enumerate)r   r0   r   ÚitemÚ_implÚis_iterabler&   Úrets       €€€€r   r4   zfind_paths_if.<locals>._impl   s„   ø€ Øˆ;�wÑÔð 	Ý& wÑ/Ô/ð *ð *‘	��TØ��l˜�l˜c�l�l DÑ)Ô)Ð)Ð)ð*ð *àˆT�$˜Ñ Ô ð 	ØˆC�‰IˆIˆIð	ð 	r   r   )r   r   r0   r   )Úlanguager   r,   Úkeys)r   r&   r4   r   r5   r6   s    `@@@@r   Úfind_paths_ifr9      sƒ   øøøøø€ ØÐÐÐÐÐØ)lÐ)lÐ)lÐ)l€Kà!€Cðð ð ð ð ð ð ð ð ð 
€Eˆ"ˆhÑÔÐå�—’‘
”
ÑÔÐr   c                ó   — | | dz
  z  dk    S )Nr   r   r   )r/   s    r   Úis_power_of_twor;   *   s   € Ø��Q‘‰K˜AÒÐr   Úshapeú	List[int]c           	     ó>  — d}t          | ¦  «        D ]d\  }}t          |t          ¦  «        s#t          d|› dt	          |¦  «        › d�¦  «        ‚t          |¦  «        st          d|› d�¦  «        ‚||z  }Œe|t          k    rt          d|› dt          › d�¦  «        ‚|S )	Nr   zShape element z1 must have type `constexpr[int]`, got `constexpr[ú]z must be a power of 2znumel (z') exceeds triton maximum tensor numel (ú))r2   r+   ÚintÚ	TypeErrorÚtyper;   Ú
ValueErrorÚTRITON_MAX_TENSOR_NUMEL)r<   ÚnumelÚiÚds       r   Úvalidate_block_shaperI   .   sË   € Ø€EÝ˜%Ñ Ô ð ð ‰ˆˆ1Ý˜!�SÑ!Ô!ð 	mÝÐk¨QÐkÐkÕaeÐfgÑahÔahÐkÐkÐkÑlÔlÐlÝ˜qÑ!Ô!ð 	HÝÐF¨aÐFÐFÐFÑGÔGÐGØ�‰
ˆˆàÕ&Ò&Ð&ÝÐk 5ÐkÐkÕQhÐkÐkÐkÑlÔlÐlØ€Lr   ÚboolÚu1Úint1Úuint1Úi1Ú
float8e4nvÚfp8e4nvÚfloat8e5Úfp8e5Úfloat8e4b15Úfp8e4b15Úfloat8_e4m3fnÚ
float8e4b8Úfp8e4b8Úfloat8_e4m3fnuzÚfloat8_e5m2Úfloat8e5b16Úfp8e5b16Úfloat8_e5m2fnuzÚhalfÚfp16Úfloat16Úbfloat16Úbf16ÚfloatÚfp32Úfp64Úi8Úi16Úi32Úi64Úu8Úu16Úu32Úu64Úvoid)Úfloat32ÚdoubleÚfloat64Úint8Úint16rA   Úint32Úint64Úuint8Úuint16Úuint32Úuint64rm   c                ól   — t          | ¦  «                             d¦  «        d         }t          |         S )Nú.r!   )ÚstrÚsplitÚtype_canonicalisation_dict)ÚdtypeÚ	dtype_strs     r   Úcanonicalize_dtyper€   e   s+   € Ý�E‘
”
× Ò  Ñ%Ô% bÔ)€IÝ% iÔ0Ð0r   c                ó   — i | ]}d |› �|“Œ	S )Úur   ©Ú.0Úns     r   ú
<dictcomp>r†   k   ó0   € ð $ð $ð $Øð ˆ1€w€w�ð $ð $ð $r   )r   é   é   é    é@   c                ó   — i | ]}d |› �|“Œ	S )rG   r   rƒ   s     r   r†   r†   m   r‡   r   c                ó   — i | ]}d |› �|“Œ	S )Úfpr   rƒ   s     r   r†   r†   o   s0   € ð ð ð Øð ˆA€x€x�ð ð ð r   )r‰   rŠ   r‹   c                ó   — i | ]}d |› �d“Œ	S )Úfp8rˆ   r   )r„   Úsuffixs     r   r†   r†   q   s0   € ð ?ð ?ð ?Øð ˆV€~€~�qð ?ð ?ð ?r   )Úe4nvÚe4b15Úe4b8Úe5Úe5b16r‰   )ra   rm   zDict[str, int]ÚBITWIDTH_DICTr~   r{   rA   c                ó   — t           |          S r   )r—   )r~   s    r   Úget_primitive_bitwidthr™   {   s   € Ý˜ÔÐr   N)r   r   r   r   r   r   )r   r   r   r   r   r   )r   r%   r&   r'   r   r(   )r<   r=   )r~   r{   r   rA   )"Ú
__future__r   Ú	functoolsr   Útypingr   r   r   r	   r
   r   r7   r   r,   r-   r.   r   rA   r   rE   r   r$   r9   r;   rI   r}   ÚvaluesÚvr€   r—   Ú__annotations__ÚitemsÚkr™   r   r   r   ú<module>r¢      sc  ðØ "Ð "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð Ø BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ Bàð ØÐÐÐÐÐØ˜˜cœ E¨#¨s¨(¤O°T´ZÀÄÐPÔQ€LØ�C˜�HŒo€Gà!Ð ð9ð 9ð 9ð 9ðð ð ð ðð ð ð ð$ð ð ðð ð ð ð#à
ˆDð#ð ˆDð#ð ˆTð	#ð
 	ˆ$ð#ð �)ð#ð �ð#ð �:ð#ð �Yð#ð �)ð#ð �yð#ð �7ð#ð �:ð#ð �zð#ð  ˆFð!#ð" ˆvð##ð$ �ð%#ð& ˆVð'#ð( ØØàØØØØàØØØØðE#ð #ð #Ð ðJ 
ˆÐ(×/Ò/Ñ1Ô1Ñ	2Ô	2ð &ð &€AØ$%Ð˜qÑ!Ð!ð1ð 1ð 1ð
!ð$ð $Ø"ð$ñ $ô $ð!ð$ð $Ø"ð$ñ $ô $ð!ð
ð Øðñ ô ð!ð?ð ?Ø=ð?ñ ?ô ?ð!ð Øð!ð !ð !€ð ð ð ñ ð '×,Ò,Ñ.Ô.ð (ð (�D€A€qØ$ QÔ'€M�!ÑÐð ð  ð  ð  ð  ð  r   