+
    UV-j/?  ã                   óv  € ^ RI HtHtHt ^ RIHt ^ RIHt ^RI	H
t
 R t ! R R]P                  4      t ! R R]P                  4      t ! R	 R
]P                  4      t ! R R]P                  4      t ! R R]P                  4      t ! R R]P                  4      t ! R R]P                  4      tR R ltR# )é    )ÚListÚOptionalÚTupleN©ÚVisionConfigc                 ót   € V P                   p\        V4      ^8w  d   R# Vw  r#rEW#8¼  d   W$8¼  d	   W48X  d   R# R# )é   FT)ÚshapeÚlen)Úarrr
   Úout_channelsÚkHÚKWÚ_s   &     Úm/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/mlx_vlm/models/mllama/vision.pyÚcheck_array_shaper   	   s<   € Ø�I‰I€Eô ˆ5ƒz�Q„Ùà#Ñ€L�bð 	Ô Ô!3¸"¼(Ùáó    c                   óT   a a€ ] tR t^t oV3R lV 3R lltRV3R lR lltRtVtV ;t# )ÚMllamaVisionAttentionc                ó    <€ V ^8„  d   QhRS[ /# ©é   Úconfigr   )ÚformatÚ__classdict__s   "€r   Ú__annotate__Ú"MllamaVisionAttention.__annotate__   s   ø€ ÷ 
ñ 
™|ñ 
r   c                óô  <€ \         SV `  4        VP                  V n        VP                  V n        VP                  VP                  ,          V n        V P                  R,          V n        \        P                  ! V P                  V P
                  V P                  ,          RR7      V n
        \        P                  ! V P                  V P
                  V P                  ,          RR7      V n        \        P                  ! V P                  V P
                  V P                  ,          RR7      V n        \        P                  ! V P
                  V P                  ,          V P                  RR7      V n        R# )g      à?F©ÚbiasNç      à¿)ÚsuperÚ__init__Úhidden_sizeÚ	embed_dimÚnum_attention_headsÚ	num_headsÚhead_dimÚscaleÚnnÚLinearÚq_projÚk_projÚv_projÚo_proj©Úselfr   Ú	__class__s   &&€r   r#   ÚMllamaVisionAttention.__init__   sö   ø€ Ü‰ÑÔØ×+Ñ+ˆŒØ×3Ñ3ˆŒØ×*Ñ*¨f×.HÑ.HÕHˆŒØ—]‘] DÕ(ˆŒ
ä—i’iØ�N‰N˜DŸN™N¨T¯]©]Õ:Àô
ˆŒô —i’iØ�N‰N˜DŸN™N¨T¯]©]Õ:Àô
ˆŒô —i’iØ�N‰N˜DŸN™N¨T¯]©]Õ:Àô
ˆŒô —i’iØ�N‰N˜TŸ]™]Õ*¨D¯N©NÀô
ˆŽr   c                óx   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[ P                  /# ©r   Úhidden_stateÚattention_maskÚreturn©ÚmxÚarrayr   )r   r   s   "€r   r   r   .   s:   ø€ ÷  (ñ  (á—h‘hð (ñ !¡§¡Õ*ð (ñ 
�‰ñ	 (r   c                ó  € V P                  V4      pV P                  V4      pV P                  V4      pVP                  w  rgpVP                  w  r‰pVP	                  WgV P
                  V P                  4      P                  ^ ^^^4      pVP	                  WiV P
                  V P                  4      P                  ^ ^^^4      pVP	                  WiV P
                  V P                  4      P                  ^ ^^^4      pVe!   VRRRVP                  R,          1R3,          p\        P                  P                  W4WPP                  VR7      p
V
P                  ^ ^^^4      p
V
P	                  WgR4      p
V P                  V
4      # )r   NºNNN)r)   Úmaskéþÿÿÿéÿÿÿÿ)r,   r-   r.   r
   Úreshaper'   r(   Ú	transposer:   ÚfastÚscaled_dot_product_attentionr)   r/   )r1   r6   r7   ÚqueryÚkeyÚvalueÚ
batch_sizeÚ	q_seq_lenr   Ú
kv_seq_lenÚattn_outputs   &&&        r   Ú__call__ÚMllamaVisionAttention.__call__.   sb  € ð
 —‘˜LÓ)ˆØ�k‰k˜,Ó'ˆØ—‘˜LÓ)ˆà#(§;¡;Ñ ˆ
˜qØŸ9™9Ñˆ�qà—‘Ø 4§>¡>°4·=±=ó
ç
‰)�A�q˜!˜QÓ
ð 	ð �k‰kØ D§N¡N°D·M±Mó
ç
‰)�A�q˜!˜QÓ
ð 	ð —‘Ø D§N¡N°D·M±Mó
ç
‰)�A�q˜!˜QÓ
ð 	ð Ò%Ø+¨A¨q°/°C·I±I¸bµM°/À1Ð,DÕEˆNä—g‘g×:Ñ:Ø˜§Z¡Z°nð ;ó 
ˆð "×+Ñ+¨A¨q°!°QÓ7ˆØ!×)Ñ)¨*ÀÓDˆà�{‰{˜;Ó'Ð'r   )r%   r(   r-   r'   r/   r,   r)   r.   ©N©	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r#   rL   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r2   r   s   @@r   r   r      s   ù‡ € ÷
ó 
÷( (÷  (ò  (r   r   c                   óP   a a€ ] tR t^Qt oV3R lV 3R lltV3R lR ltRtVtV ;t# )ÚMllamaVisionMLPc                ó    <€ V ^8„  d   QhRS[ /# r   r   )r   r   s   "€r   r   ÚMllamaVisionMLP.__annotate__R   s   ø€ ÷ ñ ™|ñ r   c                ó   <€ \         SV `  4        \        P                  ! VP                  VP
                  R R7      V n        \        P                  ! VP
                  VP                  R R7      V n        \        P                  ! 4       V n	        R# )Tr   N)
r"   r#   r*   r+   r$   Úintermediate_sizeÚfc1Úfc2ÚGELUÚgelur0   s   &&€r   r#   ÚMllamaVisionMLP.__init__R   s]   ø€ Ü‰ÑÔÜ—9’9˜V×/Ñ/°×1IÑ1IÐPTÔUˆŒÜ—9’9˜V×5Ñ5°v×7IÑ7IÐPTÔUˆŒÜ—G’G“IˆŽ	r   c                óN   <€ V ^8„  d   QhRS[ P                  RS[ P                  /# )r   Úhidden_statesr8   ©r:   r;   )r   r   s   "€r   r   r[   X   s#   ø€ ÷ ñ ¡b§h¡hð ±2·8±8ñ r   c                ól   € V P                  V4      pV P                  V4      pV P                  V4      pV# rN   )r^   ra   r_   )r1   rd   s   &&r   rL   ÚMllamaVisionMLP.__call__X   s2   € ØŸ™ Ó/ˆØŸ	™	 -Ó0ˆØŸ™ Ó/ˆØÐr   )r^   r_   ra   rO   rW   s   @@r   rY   rY   Q   s   ù‡ € ÷ó ÷÷ ð r   rY   c                   óX   a a€ ] tR t^_t oRV3R lV 3R llltRV3R lR lltRtVtV ;t# )ÚMllamaVisionEncoderLayerc                ó&   <€ V ^8„  d   QhRS[ RS[/# ©r   r   Úis_gated©r   Úbool)r   r   s   "€r   r   Ú%MllamaVisionEncoderLayer.__annotate__`   s   ø€ ÷ (ñ (™|ð (±tñ (r   c                óø  <€ \         SV `  4        VP                  V n        VP                  V n        W n        \        V4      V n        \        V4      V n        \        P                  ! V P                  VP                  R 7      V n        \        P                  ! V P                  VP                  R 7      V n        V'       d9   \        P                  ! ^4      V n        \        P                  ! ^4      V n        R# R# )©ÚepsN)r"   r#   r$   r&   rl   r   Ú	self_attnrY   Úmlpr*   Ú	LayerNormÚnorm_epsÚinput_layernormÚpost_attention_layernormr:   ÚzerosÚ	gate_attnÚgate_ffn©r1   r   rl   r2   s   &&&€r   r#   Ú!MllamaVisionEncoderLayer.__init__`   s¬   ø€ Ü‰ÑÔØ!×-Ñ-ˆÔØ#)×#=Ñ#=ˆÔ Ø Œä.¨vÓ6ˆŒÜ" 6Ó*ˆŒä!Ÿ|š|¨D×,<Ñ,<À&Ç/Á/ÔRˆÔÜ(*¯ªØ×Ñ &§/¡/ô)
ˆÔ%÷ ÜŸXšX a›[ˆDŒNÜŸHšH Q›KˆDŽMñ r   c                óx   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[ P                  /# r5   r9   )r   r   s   "€r   r   ro   r   s:   ø€ ÷ ñ á—h‘hðñ !¡§¡Õ*ðñ 
�‰ñ	r   c                óœ  € TpV P                  V4      pV P                  WR 7      pV P                  '       d(   \        P                  ! V P
                  4      V,          pW1,           pTpV P                  V4      pV P                  V4      pV P                  '       d(   \        P                  ! V P                  4      V,          pW1,           pV# )©r7   )	rw   rs   rl   r:   Útanhrz   rx   rt   r{   )r1   r6   r7   Úresiduals   &&& r   rL   Ú!MllamaVisionEncoderLayer.__call__r   s¤   € ð  ˆØ×+Ñ+¨LÓ9ˆØ—~‘~ l�~ÓRˆØ�=�=ˆ=ÜŸ7š7 4§>¡>Ó2°\ÕAˆLØÕ.ˆð  ˆØ×4Ñ4°\ÓBˆØ—x‘x Ó-ˆØ�=�=ˆ=ÜŸ7š7 4§=¡=Ó1°LÕ@ˆLØÕ.ˆàÐr   )	rz   r{   r$   rw   rl   rt   r&   rx   rs   )FrN   rO   rW   s   @@r   ri   ri   _   s   ù‡ € ÷(õ (÷$÷ ò r   ri   c                   óX   a a€ ] tR t^Št oRV3R lV 3R llltRV3R lR lltRtVtV ;t# )ÚMllamaVisionEncoderc                ó    <€ V ^8„  d   QhRS[ /# r   r   )r   r   s   "€r   r   Ú MllamaVisionEncoder.__annotate__‹   s   ø€ ÷ 
ñ 
™|ñ 
r   c                ó€   <€ \         SV `  4        \        V4       Uu. uF  p\        W4      NK  	  upV n        R # u upi rN   )r"   r#   Úrangeri   Úlayers)r1   r   Ú
num_layersrl   r   r2   s   &&&& €r   r#   ÚMllamaVisionEncoder.__init__‹   s:   ø€ Ü‰ÑÔä@EÀjÔ@Qó
Ù@Q¸1Ô$ VÖ6Ñ@Qñ
ˆŽùò 
s   �;c          	      ó²   <€ V ^8„  d   QhRS[ P                  RS[S[ P                  ,          RS[S[ P                  S[S[ P                  ,          3,          /# )r   rd   r7   r8   )r:   r;   r   r   r   )r   r   s   "€r   r   r‡   ‘   sL   ø€ ÷ 	-ñ 	-á—x‘xð	-ñ !¡§¡Õ*ð	-ñ 
‰r�x‰x™™bŸh™h�Ð'Õ	(ñ		-r   c                óV   € RpV P                    F  pV! WR 7      pW13,           pK  	  W3# )r€   © ©rŠ   )r1   rd   r7   Úencoder_statesÚlayers   &&&  r   rL   ÚMllamaVisionEncoder.__call__‘   s7   € ð
 ˆØ—[”[ˆEÙ! -ÔOˆMØ+Ð.>Õ>ŠNñ !ð Ð,Ð,r   r�   )é    FrN   rO   rW   s   @@r   r…   r…   Š   s   ù‡ € ÷
õ 
÷	-÷ 	-ò 	-r   r…   c                   óT   a a€ ] tR t^�t oRV3R lV 3R llltV3R lR ltRtVtV ;t# )Ú%MllamaPrecomputedAspectRatioEmbeddingc                ó&   <€ V ^8„  d   QhRS[ RS[/# rk   rm   )r   r   s   "€r   r   Ú2MllamaPrecomputedAspectRatioEmbedding.__annotate__ž   s   ø€ ÷ $ñ $™|ð $±tñ $r   c                óp  <€ \         SV `  4        VP                  V n        VP                  V n        VP                  V n        W n        \        P                  ! V P                  ^,           V P                  V P                  ,          4      V n        V'       d   \        P                  ! ^4      V n        R# R# )é   N)r"   r#   Úmax_num_tilesr$   Úmax_aspect_ratio_idrl   r*   Ú	EmbeddingÚ	embeddingr:   ry   Úgater|   s   &&&€r   r#   Ú.MllamaPrecomputedAspectRatioEmbedding.__init__ž   s‡   ø€ Ü‰ÑÔØ#×1Ñ1ˆÔØ!×-Ñ-ˆÔØ#)×#=Ñ#=ˆÔ Ø ŒäŸšØ×$Ñ$ qÕ(¨$×*<Ñ*<¸t×?OÑ?OÕ*Oó
ˆŒ÷ ÜŸš ›ˆDŽIñ r   c                óh   <€ V ^8„  d   QhRS[ P                  RS[ P                  RS[ P                  /# ©r   r6   Úaspect_ratio_idsr8   re   )r   r   s   "€r   r   r˜   «   s.   ø€ ÷ ñ ¡R§X¡Xð ÁÇÁð ÉbÏhÉhñ r   c                óú   € V P                  V4      pVP                  RV P                  ^V P                  4      pV P                  '       d(   V\
        P                  ! V P                  4      ,          pW,           pV# )rš   r@   )rž   rA   r›   r$   rl   r:   r�   rŸ   )r1   r6   r£   Ú
embeddingss   &&& r   rL   Ú.MllamaPrecomputedAspectRatioEmbedding.__call__«   sa   € Ø—^‘^Ð$4Ó5ˆ
Ø×'Ñ'¨¨D×,>Ñ,>ÀÀ4×CSÑCSÓTˆ
à�=�=ˆ=Ø#¤b§g¢g¨d¯i©iÓ&8Õ8ˆJà#Õ0ˆØÐr   )rž   rŸ   r$   rl   rœ   r›   )TrO   rW   s   @@r   r–   r–   �   s   ù‡ € ÷$õ $÷÷ ð r   r–   c                   óP   a a€ ] tR t^¶t oV3R lV 3R lltV3R lR ltRtVtV ;t# )Ú"MllamaPrecomputedPositionEmbeddingc                ó    <€ V ^8„  d   QhRS[ /# r   r   )r   r   s   "€r   r   Ú/MllamaPrecomputedPositionEmbedding.__annotate__·   s   ø€ ÷ 
ñ 
™|ñ 
r   c                ó˜  <€ \         SV `  4        VP                  V n        VP                  V n        VP                  VP
                  ,          ^,          ^,           V n        VP                  V n        VP                  R,          V n        \        P                  ! ^4      V n        \        P                  P                  V P                  V P                  34      V P                  ,          V n        \        P                   ! V P                  ^,           V P                  V P                  ,          V P                  ,          4      V n        R# )r   Nr!   )r"   r#   r›   rœ   Ú
image_sizeÚ
patch_sizeÚnum_patchesr$   r)   r:   ry   rŸ   ÚrandomÚnormalrž   r*   r�   Útile_embeddingr0   s   &&€r   r#   Ú+MllamaPrecomputedPositionEmbedding.__init__·   sñ   ø€ Ü‰ÑÔØ#×1Ñ1ˆÔØ#)×#=Ñ#=ˆÔ Ø"×-Ñ-°×1BÑ1BÕBÀqÕHÈ1ÕLˆÔØ!×-Ñ-ˆÔØ×'Ñ'¨Õ-ˆŒ
ä—H’H˜Q“KˆŒ	ô �I‰I×Ñ˜d×.Ñ.°×0@Ñ0@ÐAÓBÀTÇZÁZÕOð 	Œô
 !ŸlšlØ×$Ñ$ qÕ(Ø×Ñ ×!1Ñ!1Õ1°D×4DÑ4DÕDó
ˆÖr   c                óh   <€ V ^8„  d   QhRS[ P                  RS[ P                  RS[ P                  /# r¢   re   )r   r   s   "€r   r   rª   Ì   s.   ø€ ÷ ñ ¡R§X¡Xð ÁÇÁð ÉbÏhÉhñ r   c                óÚ  € ^\         P                  ! V P                  4      ,
          V P                  ,          pWP	                  ^^V P
                  V P                  4      ,           pV P                  V4      pVP                  ^ ,          pVP	                  WPP                  V P
                  V P                  4      p\         P                  ! V P                  4      V,          pW,           pV# )rš   )
r:   r�   rŸ   rž   rA   r®   r$   r±   r
   r›   )r1   r6   r£   Úgated_position_embeddingÚtile_position_embeddingrH   Úgated_tile_position_embeddings   &&&    r   rL   Ú+MllamaPrecomputedPositionEmbedding.__call__Ì   sÄ   € à$%¬¯ª°·	±	Ó(:Õ$:¸d¿n¹nÕ#LÐ Ø#×&FÑ&FØˆq�$×"Ñ" D×$4Ñ$4ó'
õ 
ˆð
 #'×"5Ñ"5Ð6FÓ"GÐØ!×'Ñ'¨Õ*ˆ
Ø"9×"AÑ"AØ×*Ñ*¨D×,<Ñ,<¸d×>NÑ>Nó#
Ðô )+¯ª°·	±	Ó(:Ð=TÕ(TÐ%Ø#ÕCˆàÐr   )rž   rŸ   r$   rœ   r›   r®   r)   r±   rO   rW   s   @@r   r¨   r¨   ¶   s   ù‡ € ÷
ó 
÷*÷ ð r   r¨   c                   ó`   a a€ ] tR t^ßt oV3R lV 3R lltV3R lR lt]R 4       tRtVt	V ;t
# )ÚVisionModelc                ó    <€ V ^8„  d   QhRS[ /# r   r   )r   r   s   "€r   r   ÚVisionModel.__annotate__à   s   ø€ ÷ (
ñ (
™|ñ (
r   c                ó,  <€ \         SV `  4        VP                  V n        VP                  V n        VP                  V n        VP
                  V n        VP                  V n        VP                  V n        V P                  V P                  ,          ^,          ^,           V n        VP
                  R,          V n	        \        P                  ! VP                  V P
                  V P                  V P                  RR7      V n        \        P                  P                  V P
                  34      V P                  ,          V n        \#        V4      V n        \'        VRR7      V n        \'        VRR7      V n        \        P,                  ! V P
                  VP.                  R7      V n        \        P,                  ! V P
                  VP.                  R7      V n        \5        WP6                  RR7      V n        \5        WP:                  RR7      V n        R# )r   F)Úin_channelsr   Úkernel_sizeÚstrider    T)rl   rq   Nr!   )r"   r#   r¬   r­   r›   r$   Únum_channelsÚintermediate_layers_indicesr®   r)   r*   ÚConv2dÚpatch_embeddingr:   r¯   r°   Úclass_embeddingr¨   Úgated_positional_embeddingr–   Úpre_tile_positional_embeddingÚpost_tile_positional_embeddingru   rv   Úlayernorm_preÚlayernorm_postr…   Únum_hidden_layersÚtransformerÚnum_global_layersÚglobal_transformerr0   s   &&€r   r#   ÚVisionModel.__init__à   s”  ø€ Ü‰ÑÔØ ×+Ñ+ˆŒØ ×+Ñ+ˆŒØ#×1Ñ1ˆÔØ!×-Ñ-ˆÔØ"×/Ñ/ˆÔØ+1×+MÑ+MˆÔ(à ŸO™O¨t¯©Õ>À1ÕDÀqÕHˆÔØ×'Ñ'¨Õ-ˆŒ
ä!ŸyšyØ×+Ñ+Ø×)Ñ)ØŸ™Ø—?‘?Øô 
ˆÔô  "Ÿy™y×/Ñ/°×1AÑ1AÐ0CÓDÀtÇzÁzÕQˆÔÜ*LÈVÓ*TˆÔ'ä-RØ˜Tô.
ˆÔ*ô /TØ˜Tô/
ˆÔ+ô
  Ÿ\š\¨$×*:Ñ*:ÀÇÁÔPˆÔÜ Ÿlšl¨4×+;Ñ+;ÀÇÁÔQˆÔô /Ø×,Ñ,°uô
ˆÔô #6Ø×,Ñ,°tô#
ˆÖr   c                ó‚   <€ V ^8„  d   QhRS[ P                  RS[ P                  RS[ P                  RS[ P                  /# )r   Úpixel_valuesr£   Úaspect_ratio_maskr8   re   )r   r   s   "€r   r   r¼   
  sI   ø€ ÷ Hñ Há—h‘hðHñ Ÿ(™(ðHñ Ÿ8™8ð	Hñ
 
�‰ñHr   c                óÒ  € VP                   w  rErgr‰VP                  WE,          R4      pVP                  WE,          V,          WxV	4      pV P                  VP                  ^^4      4      P                  ^^4      p
V
P                  V
P                   ^ ,          V
P                   ^,          R4      P	                  ^ ^^4      pVP                   w  rÍpVP                  WE,          VRV4      pV P                  W²4      pVP                  WE,          V,          WÞ4      p\        P                  ! V P                  WE,          V,          ^V34      p\        P                  ! Wû.^R7      pV^,          pVP                  WE,          WmV4      pV P                  W²4      pV P                  V4      p^VP                   R,          ^,          ,
          ^,          pR	R	^ V3R	.p\        P                  ! VV4      pV^ 8”  d   V) MRpVP                  WE,          R4      p\        VV P                  VP                   ^,          R7      pVP                  WE,          RV P                  4      pV P!                  VVR7      pV^ ,          pV P#                  V4      pVP                  WE,          VVV,           V P                  4      pV P%                  W²4      pVP                  WE,          WmV,           ,          V P                  4      pV P'                  VVR7      pV^ ,          pVP                  WE,          VVV,           V4      pVRRRV13,          pVP                  WEWmV4      pV^,          p\        P(                  ! VRR7      pVRV P*                  3,          pVP                  WE,          VVV,           R4      pVRRRV13,          pVP                  WEWmR4      p\        P                  ! VV.RR7      pV# )
rš   )ÚaxisN)rÒ   r®   Útarget_lengthr€   r=   .r@   r?   )r   r   )r
   rA   rÄ   ÚmoveaxisrB   rÇ   r:   Úbroadcast_torÅ   ÚconcatenaterÆ   rÉ   ÚpadÚ$_prepare_aspect_ratio_attention_maskr®   r$   rÌ   rÊ   rÈ   rÎ   ÚstackrÂ   )r1   rÑ   r£   rÒ   rH   Únum_concurrent_mediaÚ	num_tilesrÁ   ÚheightÚwidthÚpatch_embedsr6   r   r®   ÚdimrÅ   Únum_padding_patchesÚpaddingÚslice_indexr7   ÚoutputÚglobal_outputÚall_intermediate_hidden_statesÚintermediate_hidden_statess   &&&&                    r   rL   ÚVisionModel.__call__
  s7  € ð ×Ññ 	Qˆ
¨)À6ð ,×3Ñ3ØÕ-¨ró
Ðð $×+Ñ+ØÕ-°	Õ9¸<ÐQVó
ˆð ×+Ñ+¨L×,AÑ,AÀ!ÀQÓ,GÓH×QÑQÐRSÐUVÓWˆà#×+Ñ+Ø×Ñ˜qÕ! <×#5Ñ#5°aÕ#8¸"ó
ç
‰)�A�q˜!Ó
ð 	ð
 +×0Ñ0Ñˆ˜Ø#×+Ñ+ØÕ-¨y¸"¸có
ˆð ×9Ñ9Øó
ˆð
 $×+Ñ+ØÕ-°	Õ9¸;ó
ˆô Ÿ/š/Ø× Ñ ØÕ.°Õ:¸A¸sÐCó
ˆô —~’~ Ð&EÈAÔNˆØ�qÕˆð $×+Ñ+ØÕ-¨yÀsó
ˆð ×6Ñ6°|ÓVˆà×)Ñ)¨,Ó7ˆð  ! L×$6Ñ$6°rÕ$:¸QÕ$>Õ?À1ÕDÐð ˜6 AÐ':Ð#;¸VÐDˆÜ—v’v˜l¨GÓ4ˆØ.AÀAÔ.EÐ*Ñ*È4ˆð +×2Ñ2ØÕ-¨ró
ˆô >Ø,Ø×(Ñ(Ø&×,Ñ,¨QÕ/ô
ˆð $×+Ñ+ØÕ-¨r°4×3CÑ3Có
ˆð ×!Ñ! ,¸~Ð!ÓNˆà˜a•yˆà×*Ñ*¨<Ó8ˆð $×+Ñ+ØÕ-ØØÐ-Õ-Ø×Ñó	
ˆð ×:Ñ:Øó
ˆð $×+Ñ+ØÕ-ØÐ':Õ:Õ;Ø×Ñó
ˆð
 ×/Ñ/Ø¨ð 0ó 
ˆð % QÕ'ˆà#×+Ñ+ØÕ-ØØÐ-Õ-Øó	
ˆð $ A q¨,¨;¨,Ð$6Õ7ˆØ#×+Ñ+Ø¨iÀcó
ˆð
 *0°­Ð&Ü%'§X¢XÐ.LÐSUÔ%VÐ"Ø%?Ø�×1Ñ1Ð1õ&
Ð"ð
 &@×%GÑ%GØÕ-ØØÐ-Õ-Øó	&
Ð"ð &@ÀÀ1ÀlÀ{ÀlÐ@RÕ%SÐ"Ø%?×%GÑ%GØ¨iÀbó&
Ð"ô
 —~’~ØÐ5Ð6¸Rô
ˆð Ðr   c                óÂ   € / pV P                  4        FH  w  r#R V9   d   K  RV9   d0   \        V4      '       d   W1V&   K,  VP                  ^ ^^^4      W&   KD  W1V&   KJ  	  V# )Úposition_idszpatch_embedding.weight)Úitemsr   rB   )ÚweightsÚsanitized_weightsÚkÚvs   &   r   ÚsanitizeÚVisionModel.sanitize”  sj   € àÐØ—M‘M–O‰DˆAØ Ô"áØ)¨QÔ.ô
 % Q×'Ò'Ø+, aÓ(à+,¯;©;°q¸!¸QÀÓ+BÐ%Ó(à'( !Ó$ñ $ð  !Ð r   )rÅ   rÆ   rÎ   r$   r¬   rÂ   rÊ   rÉ   r›   rÁ   r®   rÄ   r­   rÈ   rÇ   r)   rÌ   )rP   rQ   rR   rS   r#   rL   Ústaticmethodrñ   rT   rU   rV   rW   s   @@r   rº   rº   ß   s6   ù‡ € ÷(
ó (
÷THð HðT ñ!ó ÷!ð !r   rº   c                óp   € V ^8„  d   QhR\         P                  R\        R\        R\         P                  /# )r   rÒ   r®   rÕ   r8   )r:   r;   Úint)r   s   "r   r   r   ª  s8   € ÷  ñ  Ü—x‘xð äð ô ð ô ‡X�Xñ	 r   c                 óž  € \         P                  pV P                  V4      p V P                  w  rEV P	                  WE^^4      P                  V4      p\         P
                  ! V^^V^34      pW!,
          p^ VRRV) R13&   ^V,
          pVP	                  WEV,          ^4      pRpWfP                  ^ ^^4      ,          V,          pVR,          pV# )rš   r=   Ng    eÍÍÁ)r=   Nr=   r=   )r:   Úfloat32Úastyper
   rA   ÚtilerB   )	rÒ   r®   rÕ   ÚdtyperH   r›   r7   Úpad_patchesÚ	min_values	   &&&      r   rÚ   rÚ   ª  så   € ô
 �J‰J€EØ)×0Ñ0°Ó7Ðð !2× 7Ñ 7Ñ€JØ&×.Ñ.¨zÈ!ÈQÓO×VÑVØó€Nô —W’W˜^¨a°°MÀ1Ð-EÓF€Nð  Õ-€KØ*+€N�1�a˜+˜™Ð&Ñ'ð ˜Õ'€Nð $×+Ñ+Ø MÕ1°1ó€Nð €IØ#×&>Ñ&>¸qÀ!ÀQÓ&GÕGÈ)ÕS€NØ# MÕ2€NàÐr   )Útypingr   r   r   Úmlx.coreÚcorer:   Úmlx.nnr*   r   r   r   ÚModuler   rY   ri   r…   r–   r¨   rº   rÚ   r�   r   r   Ú<module>r     s”   ðß (Ñ (å Ý å  òô 5(˜BŸI™Iô 5(ôp�b—i‘iô ô(˜rŸy™yô (ôV-˜"Ÿ)™)ô -ô&¨B¯I©Iô ô2&¨¯©ô &ôRH!�"—)‘)ô H!÷V r   