+
    ÆÜ³j$(  ã                   óX  € ^ RI Ht ^ RIHt ^ RIt^RIHtHtHt ]	! ]R4      '       d%   ]P                  P                  4       P                  MRt]! ]]]P                  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t]P0                  tRR R lltRR R lltR# )é    )ÚSequence)ÚOptionalN)Úkernels_4bitÚkernels_8bit_quantÚkernels_optimÚacceleratorÚcudac          
      óº   € V ^8„  d   QhR\         P                  R\         P                  R\        R\        \         P                  \         P                  3,          /# )é   ÚAÚcodeÚ	blocksizeÚreturn)ÚtorchÚTensorÚintÚtuple)Úformats   "Úa/home/luca/screen-checking/.venv/lib/python3.14/site-packages/bitsandbytes/backends/triton/ops.pyÚ__annotate__r      sH   € ÷ #ñ #œ%Ÿ,™,ð #¬e¯l©lð #Äsð #ÌuÔUZ×UaÑUaÔch×coÑcoÐUoÕOpñ #ó    c                 óþ   € \         P                  V P                  4      ;_uu_ 4        \        P                  ! V P	                  4       W4      w  r4W4P                  4       3uuR R R 4       #   + '       g   i     R # ; i)N)Útorch_accelerator_moduleÚdevicer   Úquantize_blockwise_tritonÚ
contiguousÚfloat)r   r   r   ÚoutÚabsmaxs   &&&  r   Úquantize_blockwiser       sM   € ä	!×	(Ñ	(¨¯©×	2Õ	2Ü(×BÒBÀ1Ç<Á<Ã>ÐSWÓc‰ˆØ—L‘L“NÐ"÷ 
3×	2×	2Ó	2ús   ¨8A+Á+A<	c                óÄ   € V ^8„  d   QhR\         P                  R\         P                  R\         P                  R\        R\         P                  R\         P                  /# )r   r   r   r   r   Údtyper   ©r   r   r   r"   )r   s   "r   r   r      sR   € ÷ ñ Ü‡|�|ðÜ"Ÿ\™\ðÜ16·±ðÜJMðÜV[×VaÑVaðä
‡\�\ñr   c           
      óN  € V P                   \        P                  8w  d   \        R V P                    24      h\        P                  V P
                  4      ;_uu_ 4        \        P                  ! V P                  4       VVVVR7      pRRR4       V#   + '       g   i     X# ; i)úA must be uint8, got )r"   N)	r"   r   Úuint8Ú
ValueErrorr   r   r   Údequant_8bit_blockwiser   ©r   r   r   r   r"   r   s   &&&&& r   Údequantize_blockwiser*      s�   € ð 	‡w�w”%—+‘+ÔÜÐ0°·±°	Ð:Ó;Ð;ä	!×	(Ñ	(¨¯©×	2Õ	2Ü ×7Ò7Ø�L‰L‹NØØØØô
ˆ÷ 
3ð €J÷ 
3Ö	2ð €Jús   Á*BÂB$	c                óÈ   € V ^8„  d   QhR\         P                  R\         P                  R\         P                  R\        R\         P                  R\         P                  RR/# )	r   r   r   r   r   r"   r   r   Nr#   )r   s   "r   r   r   )   sb   € ÷ 
ñ 
Ü‡|�|ð
ä�L‰Lð
ô �,‰,ð
ô ð	
ô
 �;‰;ð
ô 
�‰ð
ð 
ñ
r   c                 óŒ  € V P                   \        P                  8w  d   \        R V P                    24      hVP                  V P                  8w  d&   \        RV P                   RVP                   24      hVP
                  V P
                  8w  d&   \        RV P
                   RVP
                   24      hVP                   V8w  d   \        RV RVP                    24      h\        P                  V P
                  4      ;_uu_ 4        \        P                  ! V VVVVVR7       RRR4       R#   + '       g   i     R# ; i)r%   úExpected out.shape == ú, got zExpected out.device == úExpected out.dtype == ©r"   r   N)	r"   r   r&   r'   Úshaper   r   r   r(   r)   s   &&&&&&r   Údequantize_blockwise_inplacer2   )   sú   € ð 	‡w�w”%—+‘+ÔÜÐ0°·±°	Ð:Ó;Ð;Ø
‡y�y�A—G‘GÔÜÐ1°!·'±'°¸&ÀÇÁÀÐLÓMÐMØ
‡z�z�Q—X‘XÔÜÐ2°1·8±8°*¸FÀ3Ç:Á:À,ÐOÓPÐPØ
‡y�y�EÔÜÐ1°%°¸¸s¿y¹y¸kÐJÓKÐKä	!×	(Ñ	(¨¯©×	2Õ	2Ü×1Ò1ØØØØØØõ	
÷ 
3×	2×	2Ò	2ús   ÄD2Ä2E	c                óÆ   € V ^8„  d   QhR\         P                  R\        R\        R\         P                  R\
        \         P                  \         P                  3,          /# )r   r   r   Ú
quant_typeÚquant_storager   )r   r   r   Ústrr"   r   )r   s   "r   r   r   E   sN   € ÷ "ñ "Ü‡|�|ð"Ü #ð"Ü14ð"ÜEJÇ[Á[ð"ä
Œ5�<‰<œŸ™Ð%Õ&ñ"r   c                 ó  € V P                   \        P                  \        P                  \        P                  39  d   \        R V P                    24      hV P                  4       pWA,          pV^ 8w  dV   W,
          p\        P                  P                  P                  V P                  R4      ^ V3RR7      p V P                  4       pWA^,          ) ,          ) p\        P                  ! V^,          3V P                  V P                   R7      p\        P                  ! WD^,          ,
          ^3V P                  \        P                  R7      p	\        P                  V P                  4      ;_uu_ 4        \        P                   ! WW'W„V	R7       RRR4       T	p
V\        P                  8w  d/   V	P#                  4       P                  V4      P%                  ^4      p
W¨P'                  4       3#   + '       g   i     Lf; i)zDBlockwise 4bit quantization only supports 16/32-bit floats, but got ç        )Úvalue)r   r"   )Únum_elementsÚquantized_outNéÿÿÿÿ)r"   r   Úbfloat16Úfloat16Úfloat32r'   ÚnumelÚnnÚ
functionalÚpadÚviewÚemptyr   r&   r   r   Úquantize_4bit_blockwise_tritonÚsqueezeÚ	unsqueezer   )r   r   r4   r5   ÚnÚ	remainderÚpaddingÚblocksr   r   Úpackeds   &&&&       r   Úquantize_4bitrN   E   sm  € ð 	‡w�w”u—~‘~¤u§}¡}´e·m±mÐDÔDÜÐ_Ð`a×`gÑ`gÐ_hÐiÓjÐjà	�‰‹	€Að •€IØ�A„~ØÕ'ˆÜ�H‰H×Ñ×#Ñ# A§F¡F¨2£J°°G°ÀCÐ#ÓHˆØ�G‰G‹Iˆà !•mÐ$Õ$Ð%€Fä�[Š[˜& 1�*˜¨q¯x©x¸q¿w¹wÔG€Fä
�+Š+�q �6•z 1�o¨a¯h©h¼e¿k¹kÔ
J€Cä	!×	(Ñ	(¨¯©×	2Õ	2Ü×3Ò3Ø˜*¨fÐTWõ	
÷ 
3ð €FàœŸ™Ô#Ø—‘“×#Ñ# MÓ2×<Ñ<¸QÓ?ˆà—<‘<“>Ð!Ð!÷ 
3×	2ús   Å8G1Ç1H	c                óÒ   € V ^8„  d   QhR\         P                  R\         P                  R\        R\        R\        \        ,          R\         P
                  R\         P                  /# )r   r   r   r   r4   r1   r"   r   ©r   r   r   r6   r   r"   )r   s   "r   r   r   g   sb   € ÷ ñ Ü‡|�|ðä�L‰Lðô ðô ð	ô
 ”C�=ðô �;‰;ðô ‡\�\ñr   c                 ó>  € V\         P                  \         P                  \         P                  39  d   \	        R V 24      hV P
                  \         P                  8w  d=   V P                  4       P                  \         P                  4      P                  ^4      p \         P                  ! WEV P                  R7      p\        P                  V P                  4      ;_uu_ 4        \        P                  ! WW#WVR7       RRR4       V#   + '       g   i     T# ; i)zFBlockwise 4bit dequantization only supports 16/32-bit floats, but got ©r"   r   ©r   N)r   r=   r>   r?   r'   r"   r&   rG   rD   rH   rE   r   r   r   Údequantize_4bit_impl©r   r   r   r4   r1   r"   r   s   &&&&&& r   Údequantize_4bitrV   g   sÂ   € ð ”U—^‘^¤U§]¡]´E·M±MÐBÔBÜÐaÐbgÐahÐiÓjÐjð 	‡w�w”%—+‘+ÔØ�I‰I‹K×ÑœUŸ[™[Ó)×3Ñ3°AÓ6ˆä
�+Š+�e°·±Ô
:€CÜ	!×	(Ñ	(¨¯©×	2Õ	2Ü×)Ò)¨!°YÈEÕ[÷ 
3ð €J÷ 
3Ö	2ð €Jús   Ã'DÄD	c                óÖ   € V ^8„  d   QhR\         P                  R\         P                  R\        R\        R\        \        ,          R\         P
                  R\         P                  RR	/# )
r   r   r   r   r4   r1   r"   r   r   NrP   )r   s   "r   r   r   �   sv   € ÷ \ñ \Ü‡|�|ð\ä�L‰Lð\ô ð\ô ð	\ô
 ”C�=ð\ô �;‰;ð\ô 
�‰ð\ð 
ñ\r   c                 ó‚  € VP                   \        V4      8w  d   \        R V RVP                    24      hVP                  V8w  d   \        RV RVP                   24      h\        P                  V P
                  4      ;_uu_ 4        \        P                  ! WW#WVR7       RRR4       R#   + '       g   i     R# ; i)r-   r.   r/   rS   N)r1   r   r'   r"   r   r   r   rT   rU   s   &&&&&&&r   Údequantize_4bit_inplacerY   �   s�   € ð ‡y�y”E˜%“LÔ ÜÐ1°%°¸¸s¿y¹y¸kÐJÓKÐKØ
‡y�y�EÔÜÐ1°%°¸¸s¿y¹y¸kÐJÓKÐKÜ	!×	(Ñ	(¨¯©×	2Õ	2Ü×)Ò)¨!°YÈEÕ[÷ 
3×	2×	2Ò	2ús   Â	B-Â-B>	c                óæ   € V ^8„  d   QhR\         P                  R\         P                  R\        \        ,          R\         P                  R\         P                  R\        R\         P                  /# )r   r   ÚBÚshapeBr   r   r   r   )r   r   r   r   )r   s   "r   r   r   ’   sf   € ÷ 
ñ 
Ü‡|�|ð
ä‡|�|ð
ô ”S�Mð
ô �L‰Lð	
ô
 �,‰,ð
ô ð
ô ‡\�\ñ
r   c                 ó@  € VP                   \        P                  8w  d=   VP                  4       P	                  \        P                  4      P                  ^4      p\        P                  ! W P                   V P                  R7      p\        P                  V P                  4      ;_uu_ 4        \        P                  ! VVVVV P                   VR7       \        P                  P                  P                  V VRR7      uuRRR4       #   + '       g   i     R# ; i)é   rR   r0   N)Úbias)r"   r   r&   rG   rD   rH   rE   r   r   r   Ú!dequantize_4bit_impl_passing_coderA   rB   Úlinear)r   r[   r\   r   r   r   ÚB_dq_tritons   &&&&&& r   Ú	gemv_4bitrc   ’   sÁ   € ð 	‡w�w”%—+‘+ÔØ�I‰I‹K×ÑœUŸ[™[Ó)×3Ñ3°AÓ6ˆä—+’+˜f¯G©G¸A¿H¹HÔE€Kä	!×	(Ñ	(¨¯©×	2Õ	2Ü×6Ò6ØØØØØ—'‘'Øõ	
ô �x‰x×"Ñ"×)Ñ)ØØØð *ó 
÷ 
3×	2×	2Ó	2ús   Â/ADÄD	c          &      óÖ  € V ^8„  d   QhR\         R\        P                  R\        P                  R\        P                  R\        \        P                  ,          R\        R\        R\        R	\        R
\        R\
        R\        R\        P                  R\        \        P                  ,          R\        P                  R\        \        P                  ,          R\        R\        RR/# )r   Úoptimizer_nameÚgÚpÚstate1Ústate2Úbeta1Úbeta2Úbeta3ÚalphaÚepsÚstepÚlrÚqmap1Úqmap2Úabsmax1Úabsmax2Úweight_decayÚgnorm_scaler   N©r6   r   r   r   r   r   )r   s   "r   r   r   ·   s
  € ÷ L
ñ L
ÜðL
ä‡|�|ðL
ô ‡|�|ðL
ô �L‰Lð	L
ô
 ”U—\‘\Õ"ðL
ô ðL
ô ðL
ô ðL
ô ðL
ô 
ðL
ô ðL
ô 	ðL
ô �<‰<ðL
ô ”E—L‘LÕ!ðL
ô �\‰\ðL
ô  ”e—l‘lÕ#ð!L
ô" ð#L
ô$ ð%L
ð( 
ñ)L
r   c                 ó  € \         P                  VP                  4      ;_uu_ 4        \        R/ R V bRVbRVbRVbRVbRVbRVbRVbRVbR	V	bR
V
bRVbRVbRVbRVbRVbRVbRVbRVb  RRR4       R#   + '       g   i     R# ; i)re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   Ú
skip_zerosN© )r   r   Ú$optimizer_update_8bit_blockwise_impl)re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   ry   s   &&&&&&&&&&&&&&&&&&&r   Úoptimizer_update_8bit_blockwiser|   ·   së   € ôn 
"×	(Ñ	(¨¯©×	2Õ	2Ü,ò 	
Ù)ð	
áð	
ñ ð	
ñ ð		
ñ
 ð	
ñ ð	
ñ ð	
ñ ð	
ñ ð	
ñ ð	
ñ ð	
ñ ð	
ñ ð	
ñ ð	
ñ ð	
ñ  ð!	
ñ" &ð#	
ñ$ $ð%	
ñ& "ñ'	
÷ 
3×	2×	2Ò	2ús   ¨AA5Á5B	c          $      óx  € V ^8„  d   QhR\         R\        P                  R\        P                  R\        P                  R\        \        P                  ,          R\        \        P                  ,          R\        R\        R	\        R
\        R\        R\        R\        R\        R\
        R\        R\        RR/# )r   re   rf   rg   rh   ri   Ú	unorm_vecÚ	max_unormÚ
param_normrj   rk   rl   rm   rn   ru   ro   rp   rv   r   Nrw   )r   s   "r   r   r     sÚ   € ÷ *
ñ *
Üð*
ä‡|�|ð*
ô ‡|�|ð*
ô �L‰Lð	*
ô
 ”U—\‘\Õ"ð*
ô œŸ™Õ%ð*
ô ð*
ô ð*
ô ð*
ô ð*
ô ð*
ô ð*
ô 
ð*
ô ð*
ô ð*
ô  	ð!*
ô" ð#*
ð& 
ñ'*
r   c                 ó"  € \         P                  VP                  4      ;_uu_ 4        \        P                  ! R/ R V bRVbRVbRVbRVbRVbRVbRVbRVbR	V	bR
V
bRVbRVbRVbRVbRVbRVbRVb  RRR4       R#   + '       g   i     R# ; i)re   rf   rg   rh   ri   r~   r   r€   rj   rk   rl   rm   rn   ru   ro   rp   rv   ry   Nrz   )r   r   r   Úoptimizer_update_32bit_impl)re   rf   rg   rh   ri   r~   r   r€   rj   rk   rl   rm   rn   ru   ro   rp   rv   ry   s   &&&&&&&&&&&&&&&&&&r   Úoptimizer_update_32bitrƒ     sæ   € ô, 
"×	(Ñ	(¨¯©×	2Õ	2Ü×1Ò1ò 	
Ù)ð	
áð	
ñ ð	
ñ ð		
ñ
 ð	
ñ  ð	
ñ  ð	
ñ "ð	
ñ ð	
ñ ð	
ñ ð	
ñ ð	
ñ ð	
ñ &ð	
ñ ð	
ñ  ð!	
ñ" $ð#	
ñ$ "ñ%	
÷ 
3×	2×	2Ò	2ús   ¨AA=Á=B	)r8   g      ð?F)F)Úcollections.abcr   Útypingr   r   Ú r   r   r   Úhasattrr   Úcurrent_acceleratorÚtypeÚdevice_typeÚgetattrr	   r   r    r*   r2   rN   rV   rY   rc   r{   r|   rƒ   rz   r   r   Ú<module>rŒ      s˜   ðÝ $Ý ã ç =Ñ =ñ ?FÀeÈ]×>[Ò>[ˆe×Ñ×3Ñ3Ó5×:Ò:Ðag€Ù" 5¨+°u·z±zÓBÐ õ#õõ"
õ8"õDõ4\õ"
ðD (5×'YÑ'YÐ $÷L
÷^*
ñ *
r   