+
    G-j2d  ã                   óæ   € ^ RI t ^ RIHt ^ RIt^ RIt^ RIt ^ RIHt ^RI
Ht ^RIHt ^RIHtHtHtHtHtHtHtHtHtHtHtHtHt ^RIHt  ! R R	4      t ! R
 R4      tR#   ]	 d    Rt LQi ; i)é    N)ÚAny)Úto_array_extended)Ú
TensorData)Ú	ONNXModel)ÚDEQUANT_OP_NAMEÚONNX_TYPE_TO_NP_TYPEÚQUANT_OP_NAMEÚTENSOR_NAME_QUANT_SUFFIXÚfind_by_nameÚget_opset_versionÚmodel_has_infer_metadataÚnormalize_axisÚpack_bytes_to_4bitÚquantize_dataÚquantize_nparrayÚ&save_and_reload_model_with_shape_inferÚtensor_proto_to_array)ÚTensorQuantOverridesHelperc                   óT   a € ] tR t^'t o V 3R lR ltR
R ltR tR tR tR t	R	t
V tR# )ÚQuantizationParamsc                ó6   <€ V ^8„  d   QhRS[ S[S[3,          /# )é   Údata)ÚdictÚstrr   )ÚformatÚ__classdict__s   "€Úx/Volumes/fast/ai/experiments/nudenet-smoke/.venv/lib/python3.14/site-packages/onnxruntime/quantization/base_quantizer.pyÚ__annotate__ÚQuantizationParams.__annotate__(   s   ø€ ÷ ñ ™t¡C© H�~ñ ó    c                ó†  € / V n         VP                  4        EF$  w  r#\        V\        4      '       g   \	        R \        V4       RV: R24      hVR8w  dM   \        V\        \        \        P                  \        34      '       g   \	        R\        V4       RV: R24      hVR8X  d3   \        V\        4      '       g   Ve   \	        R\        V4       R24      hVR8X  dL   VP                  \        P                  \        P                  39  d   \        RVP                   RV: 24      hW0P                   V&   EK'  	  R# )	zKeys must be strings not z for k=Ú.Úaxisz1Values must be numpy arrays, int, float, str not Nz'Axis value must be an int or None, not Úscalez5scale must a float32 or float16 numpy element but is )r   ÚitemsÚ
isinstancer   Ú	TypeErrorÚtypeÚintÚnpÚndarrayÚfloatÚdtypeÚfloat32Úfloat16Ú
ValueError)Úselfr   ÚkÚvs   &,  r   Ú__init__ÚQuantizationParams.__init__(   s  € ØˆŒ	Ø—J‘J—L‰DˆAÜ˜a¤×%Ò%ÜÐ";¼DÀ»G¸9ÀGÈAÉ5ÐPQÐ RÓSÐSØ�FŒ{¤:¨a´#´s¼B¿J¹JÌÐ1N×#OÒ#OÜÐ"SÔTXÐYZÓT[ÐS\Ð\cÐdeÑchÐhiÐ jÓkÐkØ�FŒ{¤:¨a´×#5Ò#5¸!º-ÜÐ"IÌ$ÈqË'ÈÐRSÐ TÓUÐUØ�GŒ| §¡´·
±
¼B¿J¹JÐ/GÔ GÜ Ð#XÐYZ×Y`ÑY`ÐXaÐahÐijÑhmÐ!nÓoÐoØ�I‰I�aŒLó !r!   Nc                ó8   € V P                   P                  W4      # ©N)r   Úget)r2   ÚkeyÚdefault_values   &&&r   r9   ÚQuantizationParams.get5   s   € Ø�y‰y�}‰}˜SÓ0Ð0r!   c              #  ó:   "  € V P                    R j  x€L
  R #  L5ir8   ©r   ©r2   s   &r   Ú__iter__ÚQuantizationParams.__iter__8   s   é € Ø—9‘9×Ôùs   ‚’“c                ó(   € V P                   V,          # r8   r>   )r2   r:   s   &&r   Ú__getitem__ÚQuantizationParams.__getitem__;   s   € Ø�y‰y˜�~Ðr!   c                ó"   € W P                   V&   R # r8   r>   )r2   r:   Úvalues   &&&r   Ú__setitem__ÚQuantizationParams.__setitem__>   s   € Ø�	‰	�#‹r!   c                ó,   € \        V P                  4      # r8   )Úlenr   r?   s   &r   Ú__len__ÚQuantizationParams.__len__A   s   € Ü�4—9‘9‹~Ðr!   r>   r8   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r5   r9   r@   rC   rG   rK   Ú__static_attributes__Ú__classdictcell__©r   s   @r   r   r   '   s-   ø‡ € ÷ð ô1òòò÷ð r!   r   c                   ó~   a € ] tR t^Et o RR ltV 3R lR ltR tR tR tR t	R	 t
RR
 ltRR ltRR ltR tRtV tR# )ÚBaseQuantizerNc           	     óN  € \        V4      '       g   \        V4      pVP                  P                   Uu/ uF  q»P                  VbK  	  upV n        V P
                  P                  VP                  P                   Uu/ uF  qÌP                  VbK  	  up4       V P
                  P                  VP                  P                   Uu/ uF  qÝP                  VbK  	  up4       \        V4      V n
        \        V4      V n        W n        W0n        V
'       d   T
M/ V n        R V P                  9   ;'       d    V P                  R ,          V n        RV n        RV P                  9   ;'       d    V P                  R,          V n        V P                  P'                  RR4      V n        V P                  P'                  RR4      V n        V P                  P'                  R4      V n        \/        VRV4      V n        \/        VRV4      V n         Ve�   \4        ;QJ d*    R VP7                  4        4       F  '       g   K   R	M	  RM! R VP7                  4        4       4      '       d7   \9        R
VP7                  4        Uu0 uF  p\;        V4      kK  	  up R24      hW`n        Wpn        W€n         W�n!        \E        V P                  P'                  R/ 4      4      V n#        V P                  PI                  4        Uu/ uF  qÿP                  VbK  	  upV n%        V PF                  PM                  V PJ                  V P
                  PO                  4       V4      w  ppV'       g   \Q        V4      hV PF                  PS                  4       V n*        R# u upi u upi u upi u upi u upi )ÚEnableSubgraphNÚForceQuantizeNoInputCheckÚWeightSymmetricÚActivationSymmetricFÚMinimumRealRangeÚtensor_typec              3   óL   "  € T F  p\        V\        4      '       * x € K  	  R # 5ir8   )r'   r   )Ú.0Úts   & r   Ú	<genexpr>Ú)BaseQuantizer.__init__.<locals>.<genexpr>{   s   é € Ð,kÑTjÈq´¸A¼zÓ1J×-JÑ-JÓTjùs   ‚"$Tz(tensors_range contains unexpected types z, not TensorData.ÚTensorQuantOverrides)+r   r   ÚgraphÚ
value_infoÚnameÚvalue_infosÚupdateÚoutputÚinputr   Úmodelr   Úopset_versionÚper_channelÚreduce_rangeÚextra_optionsÚenable_subgraph_quantizationÚparentÚforce_quantize_no_input_checkr9   Ú_is_weight_symmetricÚis_activation_symmetricÚmin_real_rangeÚgetattrÚactivation_qTypeÚweight_qTypeÚanyÚvaluesr(   r)   Útensors_rangeÚnodes_to_quantizeÚnodes_to_excludeÚop_types_to_quantizer   Útensor_quant_overridesÚinitializerÚinitializersÚis_validÚkeysr1   Úget_quant_typesÚtensor_quant_override_qtypes)r2   rj   rl   rm   rw   rv   rz   r{   r|   r}   rn   ÚviÚotÚitr4   ÚinitzerÚoverrides_validÚoverrides_errs   &&&&&&&&&&&       r   r5   ÚBaseQuantizer.__init__F   s  € ô (¨×.Ò.Ü:¸5ÓAˆEØ27·+±+×2HÒ2HÓIÑ2H¨BŸG™G RšKÑ2HÑIˆÔØ×Ñ×Ñ°u·{±{×7IÒ7IÓ JÑ7I°§¡¨"¢Ñ7IÑ JÔKØ×Ñ×Ñ°u·{±{×7HÒ7HÓ IÑ7H°§¡¨"¢Ñ7HÑ IÔJä˜uÓ%ˆŒ
Ü.¨uÓ5ˆÔØ&ÔØ(Ôç.;™]ÀˆÔà × 2Ñ 2Ñ2×[Ð[°t×7IÑ7IÐJZÕ7[ð 	Ô)ð ˆŒà'¨4×+=Ñ+=Ñ=×qÐqÀ$×BTÑBTÐUpÕBqð 	Ô*ð 26×1CÑ1C×1GÑ1GÐHYÐ[_Ó1`ˆÔ!Ø'+×'9Ñ'9×'=Ñ'=Ð>SÐUZÓ'[ˆÔ$Ø"×0Ñ0×4Ñ4Ð5GÓHˆÔä 'Ð(8¸-ÐIYÓ ZˆÔÜ# L°-ÀÓNˆÔð
	ð Ò$¯«Ñ,kÐTa×ThÑThÔTjÓ,k¯¯ªÑ,kÐTa×ThÑThÔTjÓ,k×)kÒ)kÜØ:Èm×NbÑNbÔNdÓ<eÑNdÈ¼TÀ!¾WÑNdÑ<eÐ:gÐgxÐyóð ð +ÔØ!2ÔØ 0ÔØ$8Ô!ô 'AÀ×ASÑAS×AWÑAWÐXnÐprÓAsÓ&tˆÔ#àBFÇ*Á*×BXÑBXÔBZÓ[ÑBZ°wŸ\™\¨7Ò2ÑBZÑ[ˆÔØ)-×)DÑ)D×)MÑ)MØ×Ñ˜t×/Ñ/×4Ñ4Ó6Ð8Hó*
Ñ&ˆ˜÷ Ü˜]Ó+Ð+à,0×,GÑ,G×,WÑ,WÓ,YˆÖ)ùòs JùÚ JùÚ IùòL =fùò \s   µNÁ?NÃNÉ?N
Ë;N"c                óN   <€ V ^8„  d   QhRS[ P                  P                  RS[/# )r   Úweight_quant_typeÚreturn)ÚonnxÚTensorProtoÚDataTypeÚbool)r   r   s   "€r   r   ÚBaseQuantizer.__annotate__�   s(   ø€ ÷ 
ñ 
±T×5EÑ5E×5NÑ5Nð 
ÑSWñ 
r!   c                ó  € V P                   e   V P                   # V\        P                  P                  \        P                  P                  \        P                  P
                  \        P                  P                  39   # r8   )rr   r�   r�   ÚINT4ÚINT8ÚINT16ÚFLOAT8E4M3FN)r2   r�   s   &&r   Úis_weight_symmetricÚ!BaseQuantizer.is_weight_symmetric�   sh   € Ø×$Ñ$Ò0Ø×,Ñ,Ð,Ø Ü×Ñ×!Ñ!Ü×Ñ×!Ñ!Ü×Ñ×"Ñ"Ü×Ñ×)Ñ)ð	%
ñ 
ð 	
r!   c                ó   € \         hr8   )ÚNotImplementedErrorr?   s   &r   Úquantize_modelÚBaseQuantizer.quantize_modelš   s   € Ü!Ð!r!   c                óP   € \        WP                  P                  4       4      pVR J# r8   )r   rj   r   )r2   Ú
input_namer   s   && r   Úis_input_a_initializerÚ$BaseQuantizer.is_input_a_initializer�   s$   € Ü" :¯z©z×/EÑ/EÓ/GÓHˆØ $Ð&Ð&r!   c                ó   € V P                   # r8   )rl   r?   s   &r   Úis_per_channelÚBaseQuantizer.is_per_channel¡   s   € Ø×ÑÐr!   c                óL  € \        WP                  P                  4       4      pVeB   VP                  \        P
                  P                  \        P
                  P                  39   # V P                  '       d   V P                  f   R# V P                  P                  V4      # )NF)r   rj   r   Ú	data_typer�   r�   ÚFLOATÚFLOAT16ro   rp   Úis_valid_quantize_weight)r2   Úweight_nameÚweights   && r   rª   Ú&BaseQuantizer.is_valid_quantize_weight¤   sz   € Ü˜k¯:©:×+AÑ+AÓ+CÓDˆØÒØ×#Ñ#¬×(8Ñ(8×(>Ñ(>Ä×@PÑ@P×@XÑ@XÐ'YÑYÐYØ×1×1Ð1°t·{±{Ò7JÙØ�{‰{×3Ñ3°KÓ@Ð@r!   c                óZ  € V P                   e8   \        V P                   4      ^ 8w  d   VP                  V P                   9  d   R# VP                  V P                  9  d   R# VP                  \
        \        39   d   R# V P                  e   VP                  V P                  9   d   R# R# )NFT)r{   rJ   re   Úop_typer}   r   r	   r|   )r2   Únodes   &&r   Úshould_quantize_nodeÚ"BaseQuantizer.should_quantize_node¬   s‚   € à×"Ñ"Ò.Ü�D×*Ñ*Ó+¨qÔ0Ø—	‘	 ×!7Ñ!7Ô7áà�<‰<˜t×8Ñ8Ô8Ùà�<‰<œO¬]Ð;Ô;Ùà× Ñ Ò,°·±¸d×>SÑ>SÔ1SÙár!   c                ó  € \        WP                  P                  4       4      p\        V4      pV\        ,           pV P
                  \        P                  P                  8X  Ed6   \        P                  ! V4      pVP                  \        P                  8X  d   \        P                  P                  p	MSVP                  \        P                  8X  d   \        P                  P                  p	M\!        RVP                   R24      hVP#                  \        P                  4      p
\        P$                  ! ^.V
P                  R7      pVP'                  R4      p\        P(                  P+                  W§4      pV P                  P-                  V.4       RpEM8W#,          V,          p\        P                  ! V\        P.                  R7      \        P                  ! V\        P.                  R7      ,          p
V
P1                  4       p
\        P.                  ! \        P2                  ! \        P4                  4      P6                  4      p\        P.                  ! \        P2                  ! \        P4                  4      P8                  4      p\        P:                  ! W¯8  4      '       g    \        P:                  ! V
V8„  4      '       d   \<        P>                  ! RV R24       \        P@                  ! W¯V4      P#                  \        P4                  4      p
\        P                  ! V
\        P4                  R7      P'                  VPB                  4      p\        P(                  P+                  VV4      pV P                  P-                  V.4       \        P                  ! W¶P                  R7      P'                  R4      pRpV P
                  p	VR,           p\        P(                  P+                  VV4      pV P                  P-                  V.4       V P
                  \        P                  P                  8X  d   V P
                  pM\        P                  PD                  pVR	,           pV P
                  \        P                  P                  8X  d0   \        PF                  PI                  VV P
                  ^.R
.4      pM”VPJ                  ^8”  da   \        PL                  ! VPN                  \        P4                  R7      P'                  R4      p\        P(                  P+                  VV4      pM#\        PF                  PI                  VV. ^ .4      pV P                  P-                  V.4       VVVVVV	3# )zM
Quantized the bias. Zero Point == 0 and Scale == Input_Scale * Weight_Scale
zEOnly float16 or float32 are supported with float 8 but bias dtype is r#   ©r.   ÚCastzQuantized bias `z<` exceeds the range of a int32. The bias scale is too small.ÚDequantizeLinearÚ_scaleÚ_zero_pointç        éÿÿÿÿ)(r   rj   r   r   r
   rw   r�   r�   r˜   r+   Úasarrayr.   r0   r©   r/   r¨   r(   ÚastypeÚarrayÚreshapeÚnumpy_helperÚ
from_arrayÚinitializer_extendÚfloat64ÚroundÚiinfoÚint32ÚminÚmaxrx   ÚloggingÚwarningÚclipÚdimsÚINT32ÚhelperÚmake_tensorÚsizeÚzerosÚshape)r2   Ú	bias_nameÚinput_scaleÚweight_scaleÚbetaÚbias_initializerÚ	bias_dataÚquantized_bias_namer   Ú
node_qtypeÚquantized_dataÚ
bias_scaleÚbias_scale_dataÚpacked_bias_initializerÚ	node_typeÚ	int32_minÚ	int32_maxÚbias_np_dataÚquantized_bias_scale_nameÚpacked_bias_scale_initializerr\   Úquantized_bias_zp_nameÚpacked_bias_zp_initializerÚbias_zp_datas   &&&&&                   r   Úquantize_bias_static_implÚ'BaseQuantizer.quantize_bias_static_impl¿   s  € ô (¨	·:±:×3IÑ3IÓ3KÓLÐÜ)Ð*:Ó;ˆ	Ø'Ô*BÕBÐð ×Ñ¤× 0Ñ 0× =Ñ =Õ=Ü—:’:˜iÓ(ˆDØ�z‰zœRŸZ™ZÔ'Ü!×-Ñ-×5Ñ5‘
Ø—‘œrŸz™zÔ)Ü!×-Ñ-×3Ñ3‘
äÐ"gÐhl×hrÑhrÐgsÐstÐ uÓvÐvØ!Ÿ[™[¬¯©Ó4ˆNÜŸš 1 #¨^×-AÑ-AÔBˆJØ(×0Ñ0°Ó4ˆOÜ&*×&7Ñ&7×&BÑ&BÀ>Ó&gÐ#Ø�J‰J×)Ñ)Ð+BÐ*CÔDØŠIð %Õ3°dÕ:ˆJô  ŸZšZ¨	¼¿¹ÔDÄrÇzÂzÐR\Ôdf×dnÑdnÔGoÕoˆNØ+×1Ñ1Ó3ˆNô Ÿ
š
¤2§8¢8¬B¯H©HÓ#5×#9Ñ#9Ó:ˆIÜŸ
š
¤2§8¢8¬B¯H©HÓ#5×#9Ñ#9Ó:ˆIÜ�vŠv�nÑ0×1Ò1´R·V²V¸NÈYÑ<V×5WÒ5WÜ—’Ø& y kÐ1mÐnôô  ŸWšW ^À	ÓJ×QÑQÔRT×RZÑRZÓ[ˆNô Ÿ:š: n¼B¿H¹HÔE×MÑMÐN^×NcÑNcÓdˆLÜ&*×&7Ñ&7×&BÑ&BÀ<ÐQdÓ&eÐ#Ø�J‰J×)Ñ)Ð+BÐ*CÔDô !Ÿjšj¨¿?¹?ÔK×SÑSÐTVÓWˆOØ*ˆIØ×*Ñ*ˆJð %8¸(Õ$BÐ!Ü(,×(9Ñ(9×(DÑ(DÀ_ÐVoÓ(pÐ%Ø�
‰
×%Ñ%Ð'DÐ&EÔFð ×Ñ¤× 0Ñ 0× =Ñ =Ô=Ø×+Ñ+‰Kä×*Ñ*×0Ñ0ˆKà!4°}Õ!DÐØ×Ñ¤× 0Ñ 0× =Ñ =Ô=Ü)-¯©×)@Ñ)@ÐAWÐY]×YjÑYjÐmnÐloÐruÐqvÓ)wÑ&Ø�_‰_˜qÔ ÜŸ8š8 J×$4Ñ$4¼B¿H¹HÔE×MÑMÈbÓQˆLÜ)-×):Ñ):×)EÑ)EÀlÐTjÓ)kÑ&ä)-¯©×)@Ñ)@ÐAWÐYdÐfhÐklÐjmÓ)nÐ&Ø�
‰
×%Ñ%Ð'AÐ&BÔCð  Ø%Ø"ØØØð
ð 	
r!   c                ó  € VP                   \        ,           pVP                   R,           pVP                   R,           p\        V4      pV P                  P	                  VP                   / R7      p	RV	9   d   V	R,          P
                  pRV	9   Ed$   RV	9   Ed   \        P                  ! V	R,          \        V,          R7      p
\        P                  ! V	R,          4      p\        W(P                  4       Wº4      p\        V
\        P                  4      '       g   Q R\        V
4       24       hV
P                  \        P                  8w  d    V
P                  \        P                   8w  g   Q R	V
P                   24       h\        V\        P                  4      '       g   Q R\        V4       24       hEMdW P"                  8X  d   V P%                  V4      MV P&                  p\)        VP                  4       TV	P+                  R
V4      T	P+                  RV P,                  ;'       d    T4      V P.                  V	P+                  R4      V	P+                  R4      R7      w  r«p\        V
\        P                  4      '       g   Q R\        V
4       24       hV
P                  \        P                  8w  d    V
P                  \        P                   8w  g   Q R	V
P                   24       h\        V\        P                  4      '       g   Q R\        V4       24       hVP0                  p\2        P4                  P7                  W~. VP9                  R4      P;                  4       4      p\2        P4                  P7                  Wb. V
P9                  R4      P;                  4       4      pV P<                  P?                  VV.4       V'       Egº   V P"                  \2        P@                  PB                  8X  Ed@   \2        P@                  ! 4       pV P"                  Vn        VPD                  PG                  VPD                  4       VVn         VP                  4       PI                  4       PK                  4       Vn&        \N        e³   \O        V4      pVPP                  VPP                  8w  g$   VPK                  4       VPK                  4       8w  dj   \S        RVPP                   RVPK                  4       R,           RVPK                  4       R,           RVPP                   R\U        V4      R,           R24      hEM4V\2        P@                  PV                  \2        P@                  PX                  39   d�   VP                  \        PZ                  \        P\                  39  d   \S        RV R24      h\_        \a        VPK                  4       4      4      p\2        P4                  P7                  WRVPD                  VRR7      pMm\        Pb                  ! V\2        P4                  Pe                  V4      R7      P9                  VPD                  4      p\2        Pf                  Pi                  WÅ4      pV P<                  P?                  V.4       WVV3# )aj  
:param weight: TensorProto initializer
:param qType: type to quantize to
:param keep_float_weight: Whether to quantize the weight. In some cases, we only want to qunatize scale and zero point.
                          If keep_float_weight is False, quantize the weight, or don't quantize the weight.
:return: quantized weight name, zero point name, scale name
r¸   r·   ©Údefault_valÚ
quant_typer%   Ú
zero_pointr´   úUnexpected type úUnexpected dtype Ú	symmetricrm   ÚrminÚrmax©rm   rt   Úrmin_overrideÚrmax_overridezThe initializer of shape z! could not be created, expecting :Né
   Nz, got z and shape=z
raw=:NéÈ   Nr#   úQuantized weights for ú. must be 8-bit before packing as 4-bit values.T©Úraw)rº   )5re   r
   r   r~   Úget_per_tensor_overridesr\   r+   r½   r   r   Úflattenr'   r,   r)   r.   r/   r0   rw   r™   rs   r   r9   rm   rt   r§   r�   rÍ   rÎ   r¾   Útolistrj   rÁ   r�   r˜   rË   ÚextendÚcopyÚtobytesÚraw_datar   rÑ   ÚRuntimeErrorr   r•   ÚUINT4Úint8Úuint8Úbytesr   r»   Útensor_dtype_to_np_dtyper¿   rÀ   )r2   r¬   ÚqTyperm   Úkeep_float_weightÚq_weight_nameÚzp_nameÚ
scale_nameÚweight_dataÚquant_overridesrí   r%   Úq_weight_datarð   Úscale_dtypeÚscale_initializerÚzero_initializerÚq_weight_initializerÚcheckÚpacked_datas   &&&&&               r   Úquantize_initializer_implÚ'BaseQuantizer.quantize_initializer_impl  sF  € ð Ÿ™Ô&>Õ>ˆØ—+‘+ Õ-ˆØ—[‘[ 8Õ+ˆ
ô ,¨FÓ3ˆØ×5Ñ5×NÑNÈvÏ{É{ÐhjÐNÓkˆØ˜?Ô*Ø# LÕ1×=Ñ=ˆEà�oÕ%¨,¸/Õ*IÜŸš /°,Õ"?ÔG[Ð\aÕGbÔcˆJÜ—H’H˜_¨WÕ5Ó6ˆEÜ,¨U×4GÑ4GÓ4IÈ5Ó]ˆMÜ˜j¬"¯*©*×5Ò5Ð\Ð9IÌ$ÈzÓJZÐI[Ð7\Ó\Ð5Ø×#Ñ#¤r§z¡zÔ1°j×6FÑ6FÌ"Ï*É*Ô6Tð Ø# J×$4Ñ$4Ð#5Ð6óÐTô ˜e¤R§Z¡Z×0Ò0ÐRÐ4DÄTÈ%Ã[ÀMÐ2RÓRÒ0ð <A×DUÑDUÔ;U˜×0Ñ0°Ô7Ð[_×[wÑ[wˆIÜ/<Ø×#Ñ#Ó%ØØ×#Ñ# K°Ó;Ø,×0Ñ0°À×ARÑAR×AcÐAcÐWcÓdØ#×2Ñ2Ø-×1Ñ1°&Ó9Ø-×1Ñ1°&Ó9ô0Ñ,ˆJ˜}ô ˜j¬"¯*©*×5Ò5Ð\Ð9IÌ$ÈzÓJZÐI[Ð7\Ó\Ð5Ø×#Ñ#¤r§z¡zÔ1°j×6FÑ6FÌ"Ï*É*Ô6Tð Ø# J×$4Ñ$4Ð#5Ð6óÐTô ˜e¤R§Z¡Z×0Ò0ÐRÐ4DÄTÈ%Ã[ÀMÐ2RÓRÐ0à×&Ñ&ˆÜ ŸK™K×3Ñ3°JÈRÐQV×Q^ÑQ^Ð_dÓQe×QlÑQlÓQnÓoÐÜŸ;™;×2Ñ2°7À2Àz×GYÑGYÐZ_ÓG`×GgÑGgÓGiÓjÐØ�
‰
×%Ñ%Ð'8Ð:JÐ&KÔLç Ð Ø× Ñ ¤D×$4Ñ$4×$AÑ$AÕAÜ'+×'7Ò'7Ó'9Ð$Ø15×1BÑ1BÐ$Ô.Ø$×)Ñ)×0Ñ0°·±Ô=Ø,9Ð$Ô)à0=×0EÑ0EÓ0G×0LÑ0LÓ0N×0VÑ0VÓ0XÐ$Ô-Ü$Ò0ô .Ð.BÓC�EØ—{‘{ k×&7Ñ&7Ô7¸5¿=¹=»?Èm×NcÑNcÓNeÔ;eÜ*Ø7¸×8IÑ8IÐ7JÐJkØ,×4Ñ4Ó6°sÕ;Ð<¸FÀ5Ç=Á=Ã?ÐSVÕCWÐBXÐXcÐdj×dpÑdpÐcqØ$¤SÐ)=Ó%>¸tÕ%DÐ$EÀQðHóð ùð
 œ4×+Ñ+×0Ñ0´$×2BÑ2B×2HÑ2HÐIÔIØ ×&Ñ&¬r¯w©w¼¿¹Ð.AÔAÜ&Ø0°°Ð?mÐnóð ô $Ô$6°}×7LÑ7LÓ7NÓ$OÓP�ô (,§{¡{×'>Ñ'>¸}ÐU[×U`ÑU`ÐbmÐswÐ'>Ó'xÑ$ä "§
¢
¨=ÄÇÁ×@dÑ@dÐejÓ@kÔ l× tÑ tØ—K‘Kó!�ô (,×'8Ñ'8×'CÑ'CÀMÓ'aÐ$Ø�J‰J×)Ñ)Ð+?Ð*@ÔAà zÐ1Ð1r!   c                óÆ  € \        WP                  P                  4       4      pVf   \        RV4      h\	        V4      p\        VP                  4      p\        W84      w  ršV	'       g   \        RV RV RV 24      hT
pVP                  V,          pV P                  P                  VRV/.R7      p\        V4      pV^8w  d   WÛ8w  d   \        RV RV R	24      h\        V^ ,          R,          V4      w  rïV'       d   Wó8w  d$   \        R
V RV RV^ ,          R,           R24      hRV^ ,          9   d   V^ ,          R,          P                  pV^ ,          P                  RV P                  V4      4      pV^ ,          P                  RV P                  ;'       d    T4      p. p. p. p\        VP                  4      p\        V4      p^VV&   \        V4       EF  pVP!                  VV4      pVV8  d   TM^ pVV,          pRV9   EdY   RV9   EdQ   \"        P$                  ! VR,          \&        V,          R7      p\"        P$                  ! VR,          4      p\)        VVP+                  4       VV4      p\-        V\"        P.                  4      '       g   Q R\1        V4       24       hVP2                  \"        P4                  8w  d    VP2                  \"        P6                  8w  g   Q RVP2                   24       h\-        V\"        P.                  4      '       g   Q R\1        V4       24       h\-        V\"        P.                  4      '       g   Q R\1        V4       24       hEM7\9        VP+                  4       VVVV P:                  VP                  R4      VP                  R4      R7      w  ppp\-        V\"        P.                  4      '       g   Q R\1        V4       24       hVP2                  \"        P4                  8w  d    VP2                  \"        P6                  8w  g   Q RVP2                   24       h\-        V\"        P.                  4      '       g   Q R\1        V4       24       h\-        V\"        P.                  4      '       g   Q R\1        V4       24       hVP=                  V4       VP=                  V4       VP=                  \"        P>                  ! V4      PA                  V4      4       EK  	  \"        PB                  ! VV4      pV\D        ,           pVR,           pVR,           p VPF                  V,          .p!\H        PJ                  PM                  V VPN                  V!\"        PP                  ! V4      PS                  4       4      p"\H        PJ                  PM                  VVV!\"        PP                  ! V4      PS                  4       4      p#V P                  PU                  V"V#.4       V'       Ege   V\H        PV                  PX                  \H        PV                  PZ                  39   d¢   VP2                  \"        P\                  \"        P^                  39  d   \a        RV R24      h\c        \e        VPg                  4       4      4      p$\H        PJ                  PM                  VVVV$RR7      p%V P                  PU                  V%.4       MŠ\"        P>                  ! V\H        PJ                  Pi                  V4      R7      PA                  VPF                  4      p\H        Pj                  Pm                  VV4      p%V P                  PU                  V%.4       VVV 3# )Nz{} is not an initializerzWeight z# has a per-channel axis with value z  that is out-of-bounds for rank r$   rê   z.Per-channel tensor quantization overrides for z must have either 1 or z& elements in the list of dictionaries.z"Tensor quantization overrides for z& specify an unexpected axis. Expected z
, but got r#   rì   rð   rm   r%   rí   r´   rî   rï   rñ   rò   ró   r¸   r·   rø   rù   Trú   )7r   rj   r   r1   r   rJ   rÑ   r   r~   Úget_per_channel_overridesr\   r9   r™   rm   ÚlistÚrangeÚtaker+   r½   r   r   rý   r'   r,   r)   r.   r/   r0   r   rt   Úappendr»   r¾   Úconcatenater
   rË   r�   rÍ   rÎ   r§   Úhstackrþ   rÁ   r�   r•   r  r  r  r  r  r   r  r  r¿   rÀ   )&r2   r«   rw   Úchannel_axisrm   r
  r   ÚweightsÚweights_rankÚis_axis_validÚ	axis_normÚchannel_countÚquant_overrides_for_channelsÚnum_channel_overridesÚis_axis_override_validÚaxis_overriderð   Úzero_point_listÚ
scale_listÚquantized_per_channel_data_listÚweights_shapeÚreshape_dimsÚiÚper_channel_dataÚchannel_override_indexÚchannel_quant_overridesrí   r%   Úquantized_per_channel_dataÚquantized_weightsr  r  r  Úzero_scale_shaper  r  r  r  s&   &&&&&&                                r   Ú quantize_weight_per_channel_implÚ.BaseQuantizer.quantize_weight_per_channel_impln  sÌ  € ô # ;·
±
×0FÑ0FÓ0HÓIˆØÒÜÐ7¸ÓEÐEä'¨Ó4ˆÜ˜7Ÿ=™=Ó)ˆÜ#1°,Ó#MÑ ˆßÜØ˜+˜Ð&IÈ,Èð X*Ø*6¨ð9óð ð
 !ˆØŸ™ lÕ3ˆØ'+×'BÑ'B×'\Ñ'\Ø v¨|Ð&<Ð%=ð (]ó (
Ð$ô !$Ð$@Ó AÐØ  AÔ%Ð*?Ô*PÜØ@ÀÀð NØ,˜oÐ-SðUóð ô
 1?Ð?[Ð\]Õ?^Ð_eÕ?fÐhtÓ0uÑ-Ðß%¨Ô)FÜØ4°[°Mð BØ(˜>¨Ð4PÐQRÕ4SÐTZÕ4[Ð3\Ð\]ð_óð ð Ð7¸Õ:Ô:Ø7¸Õ:¸<ÕH×TÑTˆLà0°Õ3×7Ñ7¸ÀT×E]ÑE]Ð^jÓEkÓlˆ	Ø3°AÕ6×:Ñ:¸>È4×K\ÑK\×KmÐKmÐamÓnˆØˆØˆ
Ø*,Ð'Ü˜WŸ]™]Ó+ˆÜ˜MÓ*ˆØ%&ˆ�\Ñ"Ü�}×%ˆAØ&Ÿ|™|¨A¨|Ó<ÐØ*+Ð.CÔ*C¡QÈÐ"Ø&BÐCYÕ&ZÐ#àÐ1Õ1°lÐF]Õ6]ÜŸXšXÐ&=¸lÕ&KÔSgÐhtÕSuÔv�
ÜŸšÐ!8¸Õ!AÓB�Ü-=Ø Ð"2×":Ñ":Ó"<¸eÀZó.Ð*ô " *¬b¯j©j×9Ò9Ð`Ð=MÌdÐS]ÓN^ÐM_Ð;`Ó`Ð9Ø!×'Ñ'¬2¯:©:Ô5¸*×:JÑ:JÌbÏjÉjÔ:Xð Ø'¨
×(8Ñ(8Ð'9Ð:óÐXô " %¬¯©×4Ò4ÐVÐ8HÌÈeËÈÐ6VÓVÐ4Ü!Ð"<¼b¿j¹j×IÒIð Ø&¤tÐ,FÓ'GÐ&HÐIóÒIô
 ANØ$×,Ñ,Ó.Ø ØØ!-Ø#'×#6Ñ#6Ø"9×"=Ñ"=¸fÓ"EØ"9×"=Ñ"=¸fÓ"EôAÑ=�
˜EÐ#=ô " *¬b¯j©j×9Ò9Ð`Ð=MÌdÐS]ÓN^ÐM_Ð;`Ó`Ð9Ø!×'Ñ'¬2¯:©:Ô5¸*×:JÑ:JÌbÏjÉjÔ:Xð Ø'¨
×(8Ñ(8Ð'9Ð:óÐXô " %¬¯©×4Ò4ÐVÐ8HÌÈeËÈÐ6VÓVÐ4Ü!Ð"<¼b¿j¹j×IÒIð Ø&¤tÐ,FÓ'GÐ&HÐIóÐIð ×"Ñ" :Ô.Ø×Ñ˜eÔ$Ø+×2Ñ2´2·:²:Ð>XÓ3Y×3aÑ3aÐbnÓ3o×pñU &ôZ ŸNšNÐ+JÈLÓYÐØ#Ô&>Õ>ˆØ Õ-ˆØ  8Õ+ˆ
ð (×,Ñ,¨\Õ:Ð;ÐÜ ŸK™K×3Ñ3Ø˜×-Ñ-Ð/?ÄÇÂÈ:ÓAV×A]ÑA]ÓA_ó
Ðô  Ÿ;™;×2Ñ2Ø�\Ð#3´R·Y²Y¸Ó5O×5VÑ5VÓ5Xó
Ðð 	�
‰
×%Ñ%Ð'8Ð:JÐ&KÔLç Ð Ø¤× 0Ñ 0× 5Ñ 5´t×7GÑ7G×7MÑ7MÐNÔNØ$×*Ñ*´2·7±7¼B¿H¹HÐ2EÔEÜ&Ø0°°Ð?mÐnóð ô $Ô$6Ð7H×7PÑ7PÓ7RÓ$SÓT�ô (,§{¡{×'>Ñ'>Ø! <°ÀÐQUð (?ó (Ð$ð —
‘
×-Ñ-Ð/CÐ.DÕEä$&§J¢JØ%ÜŸ+™+×>Ñ>¸|ÓLô%÷ ‘'˜+×*Ñ*Ó+ð "ô (,×'8Ñ'8×'CÑ'CÐDUÐWdÓ'eÐ$Ø—
‘
×-Ñ-Ð/CÐ.DÔEà˜g zÐ1Ð1r!   c                óæ  € V P                   f   R # V P                  P                  4        EFÁ  pVP                  R9   Ed+   V P	                  V4      '       g   K/  \        V P                  P                  4       VP                  ^ ,          ,          4      ^8w  d   Kq  VP                  ^ ,          V P                   9  g#   VP                  ^ ,          V P                   9  d   K·  V P                   VP                  ^ ,          ,          p\        V\        4      '       g.   \        R\        V4       RVP                  ^ ,          : R24      hW P                   VP                  ^ ,          &   EK@  VP                  R8X  g   EKT  V P	                  V4      '       g   EKn  \        \        P                  ! R4      \        P                  ! R4      R7      V P                   VP                  ^ ,          &   EKÄ  	  R # )	Nrî   z for r#   ÚSoftmaxr¹   ç      ð?)ÚlowestÚhighest)ÚClipÚRelu)rz   rj   Únodesr¯   r±   rJ   Úinput_name_to_nodesri   rh   r'   r   r(   r)   r+   r/   )r2   r°   Útds   &  r   Úadjust_tensor_rangesÚ"BaseQuantizer.adjust_tensor_rangesü  s\  € Ø×ÑÒ%Ùà—J‘J×$Ñ$×&ˆDà�|‰|Ð/Õ/Ø×0Ñ0°×6Ò6ÙÜ�t—z‘z×5Ñ5Ó7¸¿
¹
À1½ÕFÓGÈ1ÔLÙØ—:‘:˜a•=¨×(:Ñ(:Ô:¸d¿k¹kÈ!½nÐTX×TfÑTfÔ>fÙØ×'Ñ'¨¯©°A­Õ7�Ü! "¤j×1Ò1Ü#Ð&6´t¸B³x°jÀÀdÇkÁkÐRSÅnÑEWÐWXÐ$YÓZÐZØ46×"Ñ" 4§:¡:¨a¥=Ô1à—‘ ×*Ø×0Ñ0°×6Ò6ÚÜ5?ÄrÇzÂzÐRUÃÔ`b×`jÒ`jÐknÓ`oÔ5p�×"Ñ" 4§;¡;¨q¥>Ô2ó# 'r!   )rr   rv   ro   rn   rq   r€   rs   rt   rj   r|   r{   r}   rk   rp   rl   rm   r„   r~   rz   rf   rw   r8   )r;  )FF)TF)rM   rN   rO   rP   r5   r™   r�   r¡   r¤   rª   r±   rç   r  r7  rC  rQ   rR   rS   s   @r   rU   rU   E   sR   ø‡ € ôHZ÷T
ð 
ò"ò'ò òAòô&R
ôhY2ôvL2÷\qð qr!   rU   ) rÈ   Útypingr   Únumpyr+   r�   Úonnx.numpy_helperÚonnx.reference.op_runr   ÚImportErrorÚ	calibrater   Ú
onnx_modelr   Úquant_utilsr   r   r	   r
   r   r   r   r   r   r   r   r   r   r~   r   r   rU   © r!   r   Ú<module>rN     so   ðó Ý ã Û Û ðÝ7õ
 "Ý !÷÷ ÷ õ õ ?÷ñ ÷<Lqó Lqøðm ô àÒðús   ˜A$ Á$	A0Á/A0