+
    –°³jv  ã                   óî  € ^ RI t ^ RIHt ^ RIHt ^ RIt^ RIHt ^RI5 ^RIHtH	t	 ^RI
5 ^RI5 ^RI5 ^RI5 ^RI5 ^RI5 ^RI5 ^RI5 ^RI5 ]! R]],          4      t. RNR	NR
NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNR NR!NR"NR#NR$NR%NR&NR'NR(NR)NR*NR+NR,NR-NR.NR/NR0NR1NR2NR3NR4NR5NR6NR7NR8NR9NR:NR;NR<NR=NR>NR?NR@NRANRBNRCNRDNRENRFNRGNRHNRINRJNRKNRLNRMNRNNRONRPNRQNRRNRSNRTNRUNRVNRWNRXNRYNRZNR[NR\NR]NR^NR_NR`NRaNRbNRcNRdNReNRfNRgNRhNRiNRjNRkNRlNRmNRnNRoNRpNRqNRrNRsNRtNRuNRvNRwNRxNRyNRzNR{NR|NR}NR~NRNR€NR�NR‚NRƒNR„NR…NR†NtR‡ t ! Rˆ R‰]4      tR# )Šé    N)ÚCallable)ÚTypeAliasType©ÚTensor)Ú*)Úfuse_modulesÚfuse_modules_qatÚObserverOrFakeQuantizeÚDeQuantStubÚFakeQuantizeÚFakeQuantizeBaseÚFixedQParamsFakeQuantizeÚFixedQParamsObserverÚFusedMovingAvgObsFakeQuantizeÚHistogramObserverÚMatchAllNodeÚMinMaxObserverÚMovingAverageMinMaxObserverÚ%MovingAveragePerChannelMinMaxObserverÚNoopObserverÚObserverBaseÚPatternÚPerChannelMinMaxObserverÚPlaceholderObserverÚQConfigÚ
QConfigAnyÚQConfigDynamicÚQConfigMappingÚ	QuantStubÚ	QuantTypeÚQuantWrapperÚRecordingObserverÚReuseInputObserverÚUniformQuantizationObserverBaseÚadd_quant_dequantÚconvertÚconvert_dynamic_jitÚconvert_jitÚ'default_affine_fixed_qparams_fake_quantÚ%default_affine_fixed_qparams_observerÚdefault_debug_observerÚdefault_dynamic_fake_quantÚdefault_dynamic_quant_observerÚdefault_embedding_fake_quantÚ!default_embedding_fake_quant_4bitÚdefault_eval_fnÚdefault_fake_quantÚ+default_fixed_qparams_range_0to1_fake_quantÚ)default_fixed_qparams_range_0to1_observerÚ.default_fixed_qparams_range_neg1to1_fake_quantÚ,default_fixed_qparams_range_neg1to1_observerÚdefault_float_qparams_observerÚ#default_float_qparams_observer_4bitÚdefault_fused_act_fake_quantÚ'default_fused_per_channel_wt_fake_quantÚdefault_fused_wt_fake_quantÚdefault_histogram_fake_quantÚdefault_histogram_observerÚdefault_observerÚ%default_per_channel_weight_fake_quantÚ#default_per_channel_weight_observerÚdefault_placeholder_observerÚdefault_reuse_input_observerÚ*default_symmetric_fixed_qparams_fake_quantÚ(default_symmetric_fixed_qparams_observerÚdefault_weight_fake_quantÚdefault_weight_observerÚdisable_fake_quantÚdisable_observerÚenable_fake_quantÚenable_observerÚfuse_conv_bnÚfuse_conv_bn_jitÚfuse_conv_bn_reluÚfuse_convtranspose_bnÚfuse_linear_bnr   r	   Ú4fused_per_channel_wt_fake_quant_range_neg_127_to_127Ú(fused_wt_fake_quant_range_neg_127_to_127Úget_combined_dictÚ&get_default_compare_output_module_listÚget_default_custom_config_dictÚ)get_default_dynamic_quant_module_mappingsÚ0get_default_dynamic_sparse_quant_module_mappingsÚ0get_default_float_to_quantized_operator_mappingsÚget_default_qat_module_mappingsÚget_default_qat_qconfigÚget_default_qat_qconfig_dictÚget_default_qat_qconfig_mappingÚget_default_qconfigÚget_default_qconfig_dictÚget_default_qconfig_mappingÚ$get_default_qconfig_propagation_listÚ(get_default_static_quant_module_mappingsÚ2get_default_static_quant_reference_module_mappingsÚ/get_default_static_sparse_quant_module_mappingsÚget_dynamic_quant_module_classÚ!get_embedding_qat_module_mappingsÚ*get_embedding_static_quant_module_mappingsÚget_fuser_methodÚget_fuser_method_newÚget_observer_state_dictÚget_quantized_operatorÚget_static_quant_module_classÚload_observer_state_dictÚno_observer_setÚ0per_channel_weight_observer_range_neg_127_to_127ÚprepareÚprepare_dynamic_jitÚprepare_jitÚprepare_qatÚpropagate_qconfig_Úqconfig_equalsÚquantizeÚquantize_dynamicÚquantize_dynamic_jitÚquantize_jitÚquantize_qatÚscript_qconfigÚscript_qconfig_dictÚswap_moduleÚ$weight_observer_range_neg_127_to_127ÚAffineQuantizedObserverBaseÚGranularityÚMappingTypeÚPerAxisÚPerBlockÚPerGroupÚPerRowÚ	PerTensorÚPerTokenÚTorchAODTypeÚZeroPointDomainÚget_block_sizec                ó,   € V F  w  r#V ! V4       K  	  R# )z¢Define the default evaluation function.

Default evaluation function takes a torch.utils.data.Dataset or a list of
input Tensors and run the model on the dataset
N© )ÚmodelÚ
calib_dataÚdataÚ_targets   &&  Ú_/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/ao/quantization/__init__.pyr0   r0   ¦   s   € ó $‰ˆÙˆdŽó $ó    c                   ó^   a a€ ] tR t^°t oRtRV3R lV 3R llltV3R lR ltR tRtVt	V ;t
# )	Ú_DerivedObserverOrFakeQuantizezmThis observer is used to describe an observer whose quantization parameters
are derived from other observers
c                óò   <€ V ^8„  d   QhRS[ P                  RS[S[,          RS[S[S[,          .S[S[S[3,          3,          RS[R,          RS[R,          RS[ P                  R,          RS[R,          /# )	é   ÚdtypeÚ
obs_or_fqsÚderive_qparams_fnÚ	quant_minNÚ	quant_maxÚqschemeÚch_axis)	Útorchr”   Úlistr
   r   Útupler   Úintr™   )ÚformatÚ__classdict__s   "€rŽ   Ú__annotate__Ú+_DerivedObserverOrFakeQuantize.__annotate__µ   s�   ø€ ÷ ñ á�{‰{ðñ Ñ/Õ0ðñ $ÙÑ(Õ)Ð*©E±&¹&°.Õ,AÐAõ
ð	ñ ˜•:ðñ ˜•:ðñ —‘ Õ%ðñ �t•ñr�   c                óà   <€ \         S	V `  V4       W n        W0n        W@n        WPn        W`n        Wpn        ^RIH	p V! V P                  4      '       d   V P                  f   \        R4      hR# R# )é   )Úis_per_channelNz6Must provide a valid ch_axis if qscheme is per channel)ÚsuperÚ__init__r•   r–   r—   r˜   r™   rš   Úutilsr¥   ÚAssertionError)
Úselfr”   r•   r–   r—   r˜   r™   rš   r¥   Ú	__class__s
   &&&&&&&& €rŽ   r§   Ú'_DerivedObserverOrFakeQuantize.__init__µ   sg   ø€ ô 	‰Ñ˜ÔØ$ŒØ!2ÔØ"ŒØ"ŒØŒØŒå)á˜$Ÿ,™,×'Ò'Ø�|‰|Ò#Ü$ØLóð ñ $ñ (r�   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# )r“   ÚxÚreturnr   )rŸ   r    s   "€rŽ   r¡   r¢   Ñ   s   ø€ ÷ ñ ™ð ¡Fñ r�   c                ó   € V# ©Nr‰   )rª   r®   s   &&rŽ   ÚforwardÚ&_DerivedObserverOrFakeQuantize.forwardÑ   s   € Øˆr�   c                ó8   € V P                  V P                  4      # r±   )r–   r•   )rª   s   &rŽ   Úcalculate_qparamsÚ0_DerivedObserverOrFakeQuantize.calculate_qparamsÔ   s   € Ø×%Ñ% d§o¡oÓ6Ð6r�   )rš   r–   r•   r™   r˜   r—   )NNNN)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r§   r²   rµ   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r«   r    s   @@rŽ   r‘   r‘   °   s(   ù‡ € ñ÷õ ÷8ð ÷7ò 7r�   r‘   )ÚsysÚcollections.abcr   Útyping_extensionsr   r›   r   Úfake_quantizer   r	   Úfuser_method_mappingsÚobserverÚqconfigÚqconfig_mappingÚ
quant_typeÚquantization_mappingsrs   rv   Ústubsr   r   r
   Ú__all__r0   r‘   r‰   r�   rŽ   Ú<module>rË      s«  ðó Ý $Ý +ã Ý ä ß 8Ü $Ü Ü Ü Ü Ü $Ü Ü Ü ñ 'Ø˜lÐ-=Õ=óÐ ð
FØðFàðFð ðFð ð	Fð
 ðFð $ðFð ðFð ðFð ðFð "ðFð ,ðFð ðFð ðFð ðFð" ð#Fð$ ð%Fð& ð'Fð( ð)Fð* ð+Fð, ð-Fð. ð/Fð0 ð1Fð2 ð3Fð4 ð5Fð6 ð7Fð8 ð9Fð: &ð;Fð< ð=Fð> ð?Fð@ ðAFðB ðCFðD .ðEFðF ,ðGFðH ðIFðJ !ðKFðL %ðMFðN #ðOFðP (ðQFðR ðSFðT ðUFðV 2ðWFðX 0ðYFðZ 5ð[Fð\ 3ð]Fð^ %ð_Fð` *ðaFðb #ðcFðd .ðeFðf "ðgFðh #ðiFðj !ðkFðl ðmFðn ,ðoFðp *ðqFðr #ðsFðt #ðuFðv 1ðwFðx /ðyFðz  ð{Fð| ð}Fð~ ðFð@ ðAFðB ðCFðD ðEFðF ðGFðH ðIFðJ ðKFðL ðMFðN ðOFðP ðQFðR ðSFðT ;ðUFðV /ðWFðZ ð[Fð\ -ð]Fð^ %ð_Fð` 0ðaFðb 7ðcFðd 7ðeFðf &ðgFðh ðiFðj #ðkFðl &ðmFðn ðoFðp ðqFðr "ðsFðt +ðuFðv /ðwFðx 9ðyFðz 6ð{Fð| %ð}Fð~ (ðFð@ 1ðAFðB ðCFðD ðEFðF ðGFðH ðIFðJ $ðKFðL ðMFðN ðOFðP 7ðQFðR ðSFðT ðUFðV ðWFðX ðYFðZ ð[Fð\ ð]Fð^ ð_Fð` ðaFðb ðcFðd ðeFðf ðgFðh ðiFðj ðkFðl ðmFðn +ðoFðt "ðuFðv ðwFðx ðyFðz ð{Fð| ð}Fð~ ðFð@ ðAFðB ðCFðD ðEFðF ðGFðH ðIFðJ ðKF€òRô%7 \ö %7r�   