+
     °³j5  ã                   óô  € ^ RI t ^ RIHt ^ RIHtHtHt ^ RIt^ RIHt ^RI	H
t
Ht ]P                  P                  P                  t ! R R]P                  P                  4      t ! R R	]P                  P"                  4      t ! R
 R]4      t ! R R]4      t ! R R]P                  P                  4      t ! R R]P                  P"                  4      t ! R R]P                  P                  4      tR# )é    N)ÚSequence)ÚCallableÚOptionalÚUnion©ÚTensor)Ú_log_api_usage_onceÚ_make_ntuplec                   ó‚   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V 3R lltV3R lR ltV3R lR	 ltR
t	Vt
V ;t# )ÚFrozenBatchNorm2da  
BatchNorm2d where the batch statistics and the affine parameters are fixed

Args:
    num_features (int): Number of features ``C`` from an expected input of size ``(N, C, H, W)``
    eps (float): a value added to the denominator for numerical stability. Default: 1e-5
c                ó&   <€ V ^8„  d   QhRS[ RS[/# )é   Únum_featuresÚeps)ÚintÚfloat)ÚformatÚ__classdict__s   "€ÚU/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torchvision/ops/misc.pyÚ__annotate__ÚFrozenBatchNorm2d.__annotate__   s#   ø€ ÷ Fñ FáðFñ ñFó    c                óv  <€ \         SV `  4        \        V 4       W n        V P	                  R \
        P                  ! V4      4       V P	                  R\
        P                  ! V4      4       V P	                  R\
        P                  ! V4      4       V P	                  R\
        P                  ! V4      4       R# )ÚweightÚbiasÚrunning_meanÚrunning_varN)ÚsuperÚ__init__r	   r   Úregister_bufferÚtorchÚonesÚzeros)Úselfr   r   Ú	__class__s   &&&€r   r   ÚFrozenBatchNorm2d.__init__   s�   ø€ ô
 	‰ÑÔÜ˜DÔ!ØŒØ×Ñ˜X¤u§z¢z°,Ó'?Ô@Ø×Ñ˜V¤U§[¢[°Ó%>Ô?Ø×Ñ˜^¬U¯[ª[¸Ó-FÔGØ×Ñ˜]¬E¯JªJ°|Ó,DÖEr   c                ót   <€ V ^8„  d   QhRS[ RS[RS[ RS[RS[S[,          RS[S[,          RS[S[,          /# )r   Ú
state_dictÚprefixÚlocal_metadataÚstrictÚmissing_keysÚunexpected_keysÚ
error_msgs)ÚdictÚstrÚboolÚlist)r   r   s   "€r   r   r   $   s]   ø€ ÷ 
ñ 
áð
ñ ð
ñ ð	
ñ
 ð
ñ ™3•ið
ñ ™c�ð
ñ ™•Iñ
r   c           	     óN   <€ VR ,           pW�9   d   W \         S	V `  WW4WVV4       R# )Únum_batches_trackedN)r   Ú_load_from_state_dict)
r$   r(   r)   r*   r+   r,   r-   r.   Únum_batches_tracked_keyr%   s
   &&&&&&&& €r   r5   Ú'FrozenBatchNorm2d._load_from_state_dict$   s4   ø€ ð #)Ð+@Õ"@ÐØ"Ô0ØÐ3ä‰Ñ%Ø ¸ÐWaö	
r   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# ©r   ÚxÚreturnr   )r   r   s   "€r   r   r   6   s   ø€ ÷ 	 ñ 	 ™ð 	 ¡Fñ 	 r   c                ó|  € V P                   P                  ^R^^4      pV P                  P                  ^R^^4      pV P                  P                  ^R^^4      pV P                  P                  ^R^^4      pW$V P
                  ,           P                  4       ,          pW5V,          ,
          pW,          V,           # )é   éÿÿÿÿ)r   Úreshaper   r   r   r   Úrsqrt)r$   r:   ÚwÚbÚrvÚrmÚscaler   s   &&      r   ÚforwardÚFrozenBatchNorm2d.forward6   s¡   € ð �K‰K×Ñ  2 q¨!Ó,ˆØ�I‰I×Ñ˜a  Q¨Ó*ˆØ×Ñ×%Ñ% a¨¨Q°Ó2ˆØ×Ñ×&Ñ& q¨"¨a°Ó3ˆØ˜$Ÿ(™(•]×)Ñ)Ó+Õ+ˆØ˜•:�~ˆØ�y˜4ÕÐr   c                ó    <€ V ^8„  d   QhRS[ /# )r   r;   )r0   )r   r   s   "€r   r   r   A   s   ø€ ÷ Tñ T™#ñ Tr   c                óŠ   € V P                   P                   R V P                  P                  ^ ,           RV P                   R2# )Ú(z, eps=Ú))r%   Ú__name__r   Úshaper   )r$   s   &r   Ú__repr__ÚFrozenBatchNorm2d.__repr__A   s;   € Ø—.‘.×)Ñ)Ð*¨!¨D¯K©K×,=Ñ,=¸aÕ,@Ð+AÀÈÏÉÀzÐQRÐSÐSr   )r   )gñhãˆµøä>)rL   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r5   rF   rN   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r%   r   s   @@r   r   r      s<   ù‡ € ñ÷Fõ F÷
ó 
÷$	 ð 	 ÷T÷ Tð Tr   r   c            
       óÎ   a a€ ] tR t^Et o^^R^]P
                  P                  ]P
                  P                  ^RR]P
                  P                  3
V3R lV 3R lllt	Rt
VtV ;t# )ÚConvNormActivationNTc                ó  <€ V ^8„  d   QhRS[ RS[ RS[S[ S[S[ R3,          3,          RS[S[ S[S[ R3,          3,          RS[S[S[ S[S[ R3,          S[3,          ,          RS[ RS[S[RS[P                  P                  3,          ,          R	S[S[RS[P                  P                  3,          ,          R
S[S[ S[S[ R3,          3,          RS[S[	,          RS[S[	,          RS[RS[P                  P                  3,          RR/# )r   Úin_channelsÚout_channelsÚkernel_size.ÚstrideÚpaddingÚgroupsÚ
norm_layerÚactivation_layerÚdilationÚinplacer   Ú
conv_layerr;   N©
r   r   Útupler   r0   r   r!   ÚnnÚModuler1   )r   r   s   "€r   r   ÚConvNormActivation.__annotate__F   s$  ø€ ÷ 5ñ 5áð5ñ ð5ñ ™3¡¡c¨3 h¥Ð/Õ0ð	5ñ
 ‘c™5¡ c �?Ð*Õ+ð5ñ ™%¡¡U©3°¨8¥_±cÐ 9Õ:Õ;ð5ñ ð5ñ ™X c©5¯8©8¯?©?Ð&:Õ;Õ<ð5ñ #¡8¨C±·±·±Ð,@Õ#AÕBð5ñ ™™U¡3¨ 8�_Ð,Õ-ð5ñ ™$•ð5ñ ‘t�nð5ñ ˜S¡%§(¡(§/¡/Ð1Õ2ð5ð 
ñ5r   c                óú  <aa	€ VfÏ   \        S\        4      '       d/   \        S	\        4      '       d   S^,
          ^,          S	,          pMŠ\        S\        4      '       d   \        S4      M
\        S	4      p\	        SV4      o\	        S	V4      o	\
        ;QJ d!    . V	V3R l\        V4       4       F  NK  	  5M! V	V3R l\        V4       4       4      pVf   VR J pV! VVSVVS	VVR7      .pVe   VP                  V! V4      4       Ve"   V
f   / MRV
/pVP                  V! R/ VB 4       \        SV `$  ! V!   \        V 4       W n        V P                  \        8X  d   \        P                  ! R4       R # R # )Nc              3   ón   <"  € T F*  pSV,          ^,
          ^,          SV,          ,          x € K,  	  R# 5i©r=   N© )Ú.0Úirc   r]   s   & €€r   Ú	<genexpr>Ú.ConvNormActivation.__init__.<locals>.<genexpr>]   s-   øé € ÐbÑQaÈA ¨Q¥°!Õ!3¸Õ 9¸HÀQ½K× GÒ GÓQaùs   ƒ25)rc   r`   r   rd   zhDon't use ConvNormActivation directly, please use Conv2dNormActivation and Conv3dNormActivation instead.rn   )Ú
isinstancer   r   Úlenr
   rg   ÚrangeÚappendr   r   r	   r\   r%   rY   ÚwarningsÚwarn)r$   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   r   re   Ú	_conv_dimÚlayersÚparamsr%   s   &&&f&&&&&f&&&   €r   r   ÚConvNormActivation.__init__F   sQ  ú€ ð  Š?Ü˜+¤s×+Ò+´
¸8ÄS×0IÒ0IØ&¨�?¨qÕ0°8Õ;‘ä0:¸;Ì×0QÒ0QœC Ô,ÔWZÐ[cÓWd�	Ü*¨;¸	ÓB�Ü'¨°)Ó<�ßœ%ÕbÔQVÐW`ÔQaÓbŸ%™%ÕbÔQVÐW`ÔQaÓbÓb�ØŠ<Ø Ð%ˆDñ ØØØØØØ!ØØô	ð
ˆð Ò!Ø�M‰M™* \Ó2Ô3àÒ'Ø"š?‘R°¸GÐ0DˆFØ�M‰MÑ*Ñ4¨VÑ4Ô5Ü‰Ò˜&Ò!Ü˜DÔ!Ø(Ôà�>‰>Ô/Ô/Ü�MŠMØzöñ 0r   )r\   )rL   rP   rQ   rR   r!   rh   ÚBatchNorm2dÚReLUÚConv2dr   rT   rU   rV   rW   s   @@r   rY   rY   E   sN   ù‡ € ð
 45Ø./Ø>BØØ?D¿x¹x×?SÑ?SØEJÇXÁXÇ]Á]Ø01Ø"&Ø#Ø5:·X±X·_±_÷5÷ 5õ 5r   rY   c            	       ó¨   a a€ ] tR t^~t oRt^^R^]P                  P                  ]P                  P                  ^RR3	V3R lV 3R lllt	Rt
VtV ;t# )ÚConv2dNormActivationa³  
Configurable block used for Convolution2d-Normalization-Activation blocks.

Args:
    in_channels (int): Number of channels in the input image
    out_channels (int): Number of channels produced by the Convolution-Normalization-Activation block
    kernel_size: (int, optional): Size of the convolving kernel. Default: 3
    stride (int, optional): Stride of the convolution. Default: 1
    padding (int, tuple or str, optional): Padding added to all four sides of the input. Default: None, in which case it will be calculated as ``padding = (kernel_size - 1) // 2 * dilation``
    groups (int, optional): Number of blocked connections from input channels to output channels. Default: 1
    norm_layer (Callable[..., torch.nn.Module], optional): Norm layer that will be stacked on top of the convolution layer. If ``None`` this layer won't be used. Default: ``torch.nn.BatchNorm2d``
    activation_layer (Callable[..., torch.nn.Module], optional): Activation function which will be stacked on top of the normalization layer (if not None), otherwise on top of the conv layer. If ``None`` this layer won't be used. Default: ``torch.nn.ReLU``
    dilation (int): Spacing between kernel elements. Default: 1
    inplace (bool): Parameter for the activation layer, which can optionally do the operation in-place. Default ``True``
    bias (bool, optional): Whether to use bias in the convolution layer. By default, biases are included if ``norm_layer is None``.

NTc                óÜ  <€ V ^8„  d   QhRS[ RS[ RS[S[ S[S[ S[ 3,          3,          RS[S[ S[S[ S[ 3,          3,          RS[S[S[ S[S[ S[ 3,          S[3,          ,          RS[ RS[S[RS[P                  P                  3,          ,          R	S[S[RS[P                  P                  3,          ,          R
S[S[ S[S[ S[ 3,          3,          RS[S[	,          RS[S[	,          RR/# ©r   r[   r\   r]   r^   r_   r`   ra   .rb   rc   rd   r   r;   Nrf   )r   r   s   "€r   r   Ú!Conv2dNormActivation.__annotate__‘   s  ø€ ÷ 
ñ 
áð
ñ ð
ñ ™3¡¡c©3 h¥Ð/Õ0ð	
ñ
 ‘c™5¡¡c �?Ð*Õ+ð
ñ ™%¡¡U©3±¨8¥_±cÐ 9Õ:Õ;ð
ñ ð
ñ ™X c©5¯8©8¯?©?Ð&:Õ;Õ<ð
ñ #¡8¨C±·±·±Ð,@Õ#AÕBð
ñ ™™U¡3© 8�_Ð,Õ-ð
ñ ™$•ð
ñ ‘t�nð
ð 
ñ
r   c                ól   <€ \         SV `  VVVVVVVVV	V
V\        P                  P                  4       R # ©N)r   r   r!   rh   r   ©r$   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   r   r%   s   &&&&&&&&&&&&€r   r   ÚConv2dNormActivation.__init__‘   ó>   ø€ ô 	‰ÑØØØØØØØØØØØÜ�H‰H�O‰Oö	
r   rn   )rL   rP   rQ   rR   rS   r!   rh   r}   r~   r   rT   rU   rV   rW   s   @@r   r�   r�   ~   sH   ù‡ € ñð, 45Ø./Ø>BØØ?D¿x¹x×?SÑ?SØEJÇXÁXÇ]Á]Ø01Ø"&Ø#÷
÷ 
õ 
r   r�   c            	       ó¨   a a€ ] tR t^°t oRt^^R^]P                  P                  ]P                  P                  ^RR3	V3R lV 3R lllt	Rt
VtV ;t# )ÚConv3dNormActivationa³  
Configurable block used for Convolution3d-Normalization-Activation blocks.

Args:
    in_channels (int): Number of channels in the input video.
    out_channels (int): Number of channels produced by the Convolution-Normalization-Activation block
    kernel_size: (int, optional): Size of the convolving kernel. Default: 3
    stride (int, optional): Stride of the convolution. Default: 1
    padding (int, tuple or str, optional): Padding added to all four sides of the input. Default: None, in which case it will be calculated as ``padding = (kernel_size - 1) // 2 * dilation``
    groups (int, optional): Number of blocked connections from input channels to output channels. Default: 1
    norm_layer (Callable[..., torch.nn.Module], optional): Norm layer that will be stacked on top of the convolution layer. If ``None`` this layer won't be used. Default: ``torch.nn.BatchNorm3d``
    activation_layer (Callable[..., torch.nn.Module], optional): Activation function which will be stacked on top of the normalization layer (if not None), otherwise on top of the conv layer. If ``None`` this layer won't be used. Default: ``torch.nn.ReLU``
    dilation (int): Spacing between kernel elements. Default: 1
    inplace (bool): Parameter for the activation layer, which can optionally do the operation in-place. Default ``True``
    bias (bool, optional): Whether to use bias in the convolution layer. By default, biases are included if ``norm_layer is None``.
NTc                óì  <€ V ^8„  d   QhRS[ RS[ RS[S[ S[S[ S[ S[ 3,          3,          RS[S[ S[S[ S[ S[ 3,          3,          RS[S[S[ S[S[ S[ S[ 3,          S[3,          ,          RS[ RS[S[RS[P                  P                  3,          ,          R	S[S[RS[P                  P                  3,          ,          R
S[S[ S[S[ S[ S[ 3,          3,          RS[S[	,          RS[S[	,          RR/# rƒ   rf   )r   r   s   "€r   r   Ú!Conv3dNormActivation.__annotate__Â   s  ø€ ÷ 
ñ 
áð
ñ ð
ñ ™3¡¡c©3± mÕ 4Ð4Õ5ð	
ñ
 ‘c™5¡¡c©3 Õ/Ð/Õ0ð
ñ ™%¡¡U©3±±S¨=Õ%9¹3Ð >Õ?Õ@ð
ñ ð
ñ ™X c©5¯8©8¯?©?Ð&:Õ;Õ<ð
ñ #¡8¨C±·±·±Ð,@Õ#AÕBð
ñ ™™U¡3©©S =Õ1Ð1Õ2ð
ñ ™$•ð
ñ ‘t�nð
ð 
ñ
r   c                ól   <€ \         SV `  VVVVVVVVV	V
V\        P                  P                  4       R # r†   )r   r   r!   rh   ÚConv3dr‡   s   &&&&&&&&&&&&€r   r   ÚConv3dNormActivation.__init__Â   r‰   r   rn   )rL   rP   rQ   rR   rS   r!   rh   ÚBatchNorm3dr~   r   rT   rU   rV   rW   s   @@r   r‹   r‹   °   sH   ù‡ € ñð* 9:Ø34ØCGØØ?D¿x¹x×?SÑ?SØEJÇXÁXÇ]Á]Ø56Ø"&Ø#÷
÷ 
õ 
r   r‹   c                   ó¾   a a€ ] tR t^át oRt]P                  P                  ]P                  P                  3V3R lV 3R lllt	V3R lR lt
V3R lR ltRtVtV ;t# )	ÚSqueezeExcitationa%  
This block implements the Squeeze-and-Excitation block from https://arxiv.org/abs/1709.01507 (see Fig. 1).
Parameters ``activation``, and ``scale_activation`` correspond to ``delta`` and ``sigma`` in eq. 3.

Args:
    input_channels (int): Number of channels in the input image
    squeeze_channels (int): Number of squeeze channels
    activation (Callable[..., torch.nn.Module], optional): ``delta`` activation. Default: ``torch.nn.ReLU``
    scale_activation (Callable[..., torch.nn.Module]): ``sigma`` activation. Default: ``torch.nn.Sigmoid``
c          
      ó®   <€ V ^8„  d   QhRS[ RS[ RS[RS[P                  P                  3,          RS[RS[P                  P                  3,          RR/# )r   Úinput_channelsÚsqueeze_channelsÚ
activation.Úscale_activationr;   N)r   r   r!   rh   ri   )r   r   s   "€r   r   ÚSqueezeExcitation.__annotate__í   sa   ø€ ÷ 3ñ 3áð3ñ ð3ñ ˜S¡%§(¡(§/¡/Ð1Õ2ð	3ñ
 # 3©¯©¯©Ð#7Õ8ð3ð 
ñ3r   c                óF  <€ \         SV `  4        \        V 4       \        P                  P                  ^4      V n        \        P                  P                  W^4      V n        \        P                  P                  W!^4      V n	        V! 4       V n
        V! 4       V n        R# rm   )r   r   r	   r!   rh   ÚAdaptiveAvgPool2dÚavgpoolr   Úfc1Úfc2r—   r˜   )r$   r•   r–   r—   r˜   r%   s   &&&&&€r   r   ÚSqueezeExcitation.__init__í   so   ø€ ô 	‰ÑÔÜ˜DÔ!Ü—x‘x×1Ñ1°!Ó4ˆŒÜ—8‘8—?‘? >ÀQÓGˆŒÜ—8‘8—?‘?Ð#3ÀQÓGˆŒÙ$›,ˆŒÙ 0Ó 2ˆÖr   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# ©r   Úinputr;   r   )r   r   s   "€r   r   r™   ü   s   ø€ ÷ ,ñ ,™Fð ,¡vñ ,r   c                ó¬   € V P                  V4      pV P                  V4      pV P                  V4      pV P                  V4      pV P	                  V4      # r†   )rœ   r�   r—   rž   r˜   ©r$   r¢   rE   s   && r   Ú_scaleÚSqueezeExcitation._scaleü   sI   € Ø—‘˜UÓ#ˆØ—‘˜“ˆØ—‘ Ó&ˆØ—‘˜“ˆØ×$Ñ$ UÓ+Ð+r   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r¡   r   )r   r   s   "€r   r   r™     s   ø€ ÷ ñ ™Vð ©ñ r   c                ó4   € V P                  V4      pW!,          # r†   )r¥   r¤   s   && r   rF   ÚSqueezeExcitation.forward  s   € Ø—‘˜EÓ"ˆØ�}Ðr   )r—   rœ   r�   rž   r˜   )rL   rP   rQ   rR   rS   r!   rh   r~   ÚSigmoidr   r¥   rF   rT   rU   rV   rW   s   @@r   r“   r“   á   sG   ù‡ € ñ	ð 6;·X±X·]±]Ø;@¿8¹8×;KÑ;K÷3õ 3÷,ð ,÷÷ ð r   r“   c                   óx   a a€ ] tR tRt oRtR]P                  P                  RRR3V3R lV 3R llltRt	Vt
V ;t# )	ÚMLPi  añ  This block implements the multi-layer perceptron (MLP) module.

Args:
    in_channels (int): Number of channels of the input
    hidden_channels (List[int]): List of the hidden channel dimensions
    norm_layer (Callable[..., torch.nn.Module], optional): Norm layer that will be stacked on top of the linear layer. If ``None`` this layer won't be used. Default: ``None``
    activation_layer (Callable[..., torch.nn.Module], optional): Activation function which will be stacked on top of the normalization layer (if not None), otherwise on top of the linear layer. If ``None`` this layer won't be used. Default: ``torch.nn.ReLU``
    inplace (bool, optional): Parameter for the activation layer, which can optionally do the operation in-place.
        Default is ``None``, which uses the respective default values of the ``activation_layer`` and Dropout layer.
    bias (bool): Whether to use bias in the linear layer. Default ``True``
    dropout (float): The probability for the dropout layer. Default: 0.0
NTg        c                óü   <€ V ^8„  d   QhRS[ RS[S[ ,          RS[S[RS[P
                  P                  3,          ,          RS[S[RS[P
                  P                  3,          ,          RS[S[,          RS[RS[/# )	r   r[   Úhidden_channelsra   .rb   rd   r   Údropout)	r   r2   r   r   r!   rh   ri   r1   r   )r   r   s   "€r   r   ÚMLP.__annotate__  s‡   ø€ ÷ "ñ "áð"ñ ™c�ð"ñ ™X c©5¯8©8¯?©?Ð&:Õ;Õ<ð	"ñ
 #¡8¨C±·±·±Ð,@Õ#AÕBð"ñ ™$•ð"ñ ð"ñ ñ"r   c           	     ód  <€ Vf   / MRV/p. p	Tp
VR R  F—  pV	P                  \        P                  P                  W«VR7      4       Ve   V	P                  V! V4      4       V	P                  V! R/ VB 4       V	P                  \        P                  P                  ! V3/ VB 4       Tp
K™  	  V	P                  \        P                  P                  W¢R,          VR7      4       V	P                  \        P                  P                  ! V3/ VB 4       \
        SV `  ! V	!   \        V 4       R # )Nrd   )r   r>   rn   )rv   r!   rh   ÚLinearÚDropoutr   r   r	   )r$   r[   r®   ra   rb   rd   r   r¯   r{   rz   Úin_dimÚ
hidden_dimr%   s   &&&&&&&&    €r   r   ÚMLP.__init__  s÷   ø€ ð ’‘¨Y¸Ð,@ˆàˆØˆØ)¨#¨2Ó.ˆJØ�M‰Mœ%Ÿ(™(Ÿ/™/¨&À4˜/ÓHÔIØÒ%Ø—‘™j¨Ó4Ô5Ø�M‰MÑ*Ñ4¨VÑ4Ô5Ø�M‰Mœ%Ÿ(™(×*Ò*¨7Ñ=°fÑ=Ô>ØŠFñ /ð 	�‰”e—h‘h—o‘o f¸bÕ.AÈ�oÓMÔNØ�‰”e—h‘h×&Ò& wÑ9°&Ñ9Ô:ä‰Ò˜&Ò!Ü˜DÖ!r   rn   )rL   rP   rQ   rR   rS   r!   rh   r~   r   rT   rU   rV   rW   s   @@r   r¬   r¬     s4   ù‡ € ñð" @DØEJÇXÁXÇ]Á]Ø"&ØØ÷"÷ "õ "r   r¬   c                   óT   a a€ ] tR tRt oRtV3R lV 3R lltV3R lR ltRtVtV ;t	# )ÚPermutei5  z�This module returns a view of the tensor input with its dimensions permuted.

Args:
    dims (List[int]): The desired ordering of dimensions
c                ó0   <€ V ^8„  d   QhRS[ S[,          /# )r   Údims)r2   r   )r   r   s   "€r   r   ÚPermute.__annotate__<  s   ø€ ÷ ñ ™T¡#�Yñ r   c                ó0   <€ \         SV `  4        Wn        R # r†   )r   r   rº   )r$   rº   r%   s   &&€r   r   ÚPermute.__init__<  s   ø€ Ü‰ÑÔØŽ	r   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r9   r   )r   r   s   "€r   r   r»   @  s   ø€ ÷ +ñ +™ð +¡Fñ +r   c                óB   € \         P                  ! WP                  4      # r†   )r!   Úpermuterº   )r$   r:   s   &&r   rF   ÚPermute.forward@  s   € Ü�}Š}˜Q§	¡	Ó*Ð*r   )rº   )
rL   rP   rQ   rR   rS   r   rF   rT   rU   rV   rW   s   @@r   r¸   r¸   5  s#   ù‡ € ñ÷ó ÷+÷ +ð +r   r¸   )rw   Úcollections.abcr   Útypingr   r   r   r!   r   Úutilsr	   r
   rh   Ú
functionalÚinterpolateri   r   Ú
SequentialrY   r�   r‹   r“   r¬   r¸   rn   r   r   Ú<module>rÈ      s»   ðÛ Ý $ß ,Ñ ,ã Ý ç 5ð �h‰h×!Ñ!×-Ñ-€ô4T˜Ÿ™Ÿ™ô 4Tôn6˜Ÿ™×,Ñ,ô 6ôr/
Ð-ô /
ôd.
Ð-ô .
ôb$˜Ÿ™Ÿ™ô $ôN*"ˆ%�(‰(×
Ñ
ô *"ôZ+ˆe�h‰h�o‰oö +r   