§
    ù²Åj=  ã                   óÌ   — d dl mZmZmZmZ d dlZd dlmZ dej        ddfd„Zdej        de	ddfd	„Z
dej        d
eee	         eee	                  f         dee         defd„ZdS )é    )ÚAnyÚListÚOptionalÚUnionN)ÚnnÚmoduleÚreturnc                 ó@  — i }|                       ¦   «         D ]b\  }}t          |¦  «         t          |¦  «        t          j        u st          |¦  «        t          j        u rt          j        d¬¦  «        ||<   Œc|                     ¦   «         D ]\  }}|| j        |<   Œd S )NF©Úinplace)Únamed_childrenÚ_replace_reluÚtyper   ÚReLUÚReLU6ÚitemsÚ_modules)r   ÚreassignÚnameÚmodÚkeyÚvalues         úVC:\Projects\Historical\venv\Lib\site-packages\torchvision/models/quantization/utils.pyr   r      s¨   € Ø€HØ×*Ò*Ñ,Ô,ð 4ð 4‰	ˆˆcÝ�cÑÔÐõ �‰9Œ9�œÐÐ¥4¨¡9¤9µ´Ð#8Ð#8ÝœW¨UÐ3Ñ3Ô3ˆH�T‰Nøà—n’nÑ&Ô&ð %ð %‰
ˆˆUØ$ˆŒ˜ÑÐð%ð %ó    ÚmodelÚbackendc                 ó  — t          j        dddd¦  «        }|t           j        j        j        vrt          d¦  «        ‚|t           j        j        _        |                      ¦   «          |dk    rTt           j        j	         
                    t           j        j	        j        t           j        j	        j        ¬¦  «        | _        nY|dk    rSt           j        j	         
                    t           j        j	        j        t           j        j	        j        ¬¦  «        | _        |                      ¦   «          t           j        j	                             | d¬	¦  «          | |¦  «         t           j        j	                             | d¬	¦  «         d S )
Né   é   i+  z Quantized backend not supported Úfbgemm)Ú
activationÚweightÚqnnpackTr   )ÚtorchÚrandÚbackendsÚ	quantizedÚsupported_enginesÚRuntimeErrorÚengineÚevalÚaoÚquantizationÚQConfigÚdefault_observerÚ#default_per_channel_weight_observerÚqconfigÚdefault_weight_observerÚ
fuse_modelÚprepareÚconvert)r   r   Ú_dummy_input_datas      r   Úquantize_modelr7      sB  € Ýœ
 1 a¨¨cÑ2Ô2ÐØ•e”nÔ.Ô@Ð@Ð@ÝÐ=Ñ>Ô>Ð>Ø&-…E„NÔÔ#Ø	‡J‚J�L„L€Là�(ÒÐÝœÔ-×5Ò5Ý”xÔ,Ô=Ý”8Ô(ÔLð 6ñ 
ô 
ˆŒˆð 
�IÒ	Ð	ÝœÔ-×5Ò5Ý”xÔ,Ô=ÅeÄhÔF[ÔFsð 6ñ 
ô 
ˆŒð
 
×ÒÑÔÐÝ	„HÔ×!Ò! %°Ð!Ñ6Ô6Ð6Ø	€EÐ
ÑÔÐÝ	„HÔ×!Ò! %°Ð!Ñ6Ô6Ð6Ð6Ð6r   Úmodules_to_fuseÚis_qatÚkwargsc                 ó„   — |€| j         }|rt          j        j        j        nt          j        j        j        } || |fi |¤ŽS )N)Útrainingr$   r,   r-   Úfuse_modules_qatÚfuse_modules)r   r8   r9   r:   Úmethods        r   Ú_fuse_modulesr@   -   sI   € ð €~Ø”ˆØ7=Ðe�UŒXÔ"Ô3Ð3Å5Ä8ÔCXÔCe€FØˆ6�%˜Ð3Ð3¨FÐ3Ð3Ð3r   )Útypingr   r   r   r   r$   r   ÚModuler   Ústrr7   Úboolr@   © r   r   ú<module>rF      sï   ðØ -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ð -à €€€Ø Ð Ð Ð Ð Ð ð%˜"œ)ð %¨ð %ð %ð %ð %ð7˜"œ)ð 7¨cð 7°dð 7ð 7ð 7ð 7ð04ØŒ9ð4Ø',¨T°#¬Y¸¸TÀ#¼Y¼Ð-GÔ'Hð4ØRZÐ[_ÔR`ð4Øloð4ð 4ð 4ð 4ð 4ð 4r   