+
    UV-j +  ã                   ó²  € ^ RI HtHt ^ RIHtHt ^RIHt ] ! R R]4      4       t] ! R R]4      4       t	] ! R R	]4      4       t
] ! R
 R]4      4       t] ! R R]4      4       t] ! R R]4      4       t] ! R R]4      4       t] ! R R]4      4       t] ! R R]4      4       t] ! R R]4      4       t] ! R R]4      4       t] ! R R]4      4       tR# )é    )Ú	dataclassÚfield)ÚListÚOptional)ÚBaseModelConfigc                   ó„   a € ] tR t^t o RtRt^ t^tRtRt	Rt
^t^t^t]! R R7      tRtR	tR
tRtRtRtRtV 3R ltRtV tR# )Ú	ViTConfigÚsam3_vit_modelé   i€  Úgeluéð  c                 ó
   € . RO# )é   )r   é   é   é   © r   ó    Úk/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/mlx_vlm/models/sam3/config.pyÚ<lambda>ÚViTConfig.<lambda>   s   € Ã?r   ©Údefault_factoryTç     ˆÃ@iP  ç�íµ ÷Æ°>Nç        c                ó  <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[ ;R&   S[;R&   S[;R&   S[;R	&   S[;R
&   S[S[,          ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[S[,          ;R&   S[;R&   S[;R&   # )é   Ú
model_typeÚhidden_sizeÚnum_hidden_layersÚnum_attention_headsÚintermediate_sizeÚ
hidden_actÚ
image_sizeÚ
patch_sizeÚnum_channelsÚwindow_sizeÚglobal_attn_indexesÚqkv_biasÚ
rope_thetaÚpretrain_image_sizeÚlayer_norm_epsÚlayer_scale_init_valueÚhidden_dropoutÚattention_dropout)ÚstrÚintr   ÚboolÚfloatr   )ÚformatÚ__classdict__s   "€r   Ú__annotate__ÚViTConfig.__annotate__   sõ   ø‡ ‚ áÑ&ñ ñ Ññ ñ Ññ	 ñ
 Ñ!ñ ñ Ñ!ñ ñ Ññ ñ Ññ ñ Ññ ñ Ññ ñ Ññ ñ ™c�ÑSñ ñ Ññ ñ Ññ ñ Ñ"ñ ñ  Ñ ñ! ñ" %¡U�OÑ2ñ# ñ$ Ññ% ñ& Ñ"ò' r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r    r!   r"   r#   r$   r%   r&   r'   r(   r   r)   r*   r+   r,   r-   r.   r/   r0   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__©r6   s   @r   r	   r	      ss   ø‡ € à&€JØ€KØÐØ!ÐØ!ÐØ€JØ€JØ€JØ€LØ€KÙ%*Ñ;RÔ%SÐØ€HØ€JØ"ÐØ €NØ.2ÐØ€NØ"Ð÷' ƒ r   r	   c                   óv   a € ] tR t^t o RtRtRt^t^t]	! R R7      t
^t]	! R R7      tRtR tV 3R	 ltR
tV tR# )ÚVisionEncoderConfigÚsam3_vision_modelNé   c                 ó
   € . RO# )ç      @)rF   g       @g      ð?ç      à?r   r   r   r   r   ÚVisionEncoderConfig.<lambda>$   s   € Ó?Sr   r   c                 ó   € R R .^�^�.^H^H..# )é   r   r   r   r   r   rH   '   s   €  # s ¨c°3¨Z¸"¸b¸Ñ Br   r   c                óÐ   € \        V P                  \        4      '       d'   \        P	                  V P                  4      V n        R # V P                  f   \        4       V n        R # R # ©N)Ú
isinstanceÚbackbone_configÚdictr	   Ú	from_dict©Úselfs   &r   Ú__post_init__Ú!VisionEncoderConfig.__post_init__+   sI   € Ü�d×*Ñ*¬D×1Ò1Ü#,×#6Ñ#6°t×7KÑ7KÓ#LˆDÖ Ø×!Ñ!Ò)Ü#,£;ˆDÖ ñ *r   c                óÆ   <€ V ^8„  d   Qh/ S[ ;R&   S[S[,          ;R&   S[;R&   S[;R&   S[;R&   S[S[,          ;R&   S[;R&   S[S[S[,          ,          ;R&   S[;R	&   # )
r   r   rN   Úfpn_hidden_sizeÚfpn_kernel_sizeÚ
fpn_strideÚscale_factorsÚnum_feature_levelsÚbackbone_feature_sizesr-   )r1   r   rO   r2   r   r4   )r5   r6   s   "€r   r7   Ú VisionEncoderConfig.__annotate__   sŠ   ø‡ ‚ áÑ)ñ ñ ™d•^Ñ*ñ ñ Ññ	 ñ
 Ññ ñ Ññ ñ ™•;ÑTñ ñ Ññ ñ !¡¡c¥�Oñ ñ ñ Ñ ò r   )rN   )r9   r:   r;   r<   r   rN   rV   rW   rX   r   rY   rZ   r[   r-   rS   r=   r>   r?   r@   s   @r   rB   rB      sP   ø‡ € à)€JØ&*€OØ€OØ€OØ€JÙ!&Ñ7SÔ!T€MØÐÙ.3ÙBô/Ðð !€Nò/÷ ƒ r   rB   c                   ód   a € ] tR t^2t o RtRt^t^tRtRt	Rt
^ tRtRtRtR	tR
t^tV 3R ltRtV tR# )ÚTextEncoderConfigÚclip_text_modelr   i   r   i Á  i   gñhãˆµøä>r   iþÀ  iÿÀ  c                óÂ   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[ ;R&   S[;R&   S[;R&   S[;R	&   S[;R
&   S[;R&   S[;R&   S[;R&   S[;R&   # )r   r   r    r!   r"   r#   r$   Ú
vocab_sizeÚmax_position_embeddingsÚprojection_dimr-   r0   Úbos_token_idÚeos_token_idÚpad_token_id©r1   r2   r4   )r5   r6   s   "€r   r7   ÚTextEncoderConfig.__annotate__2   s¹   ø‡ ‚ áÑ'ñ ñ Ññ ñ Ññ	 ñ
 Ñ!ñ ñ Ñ!ñ ñ Ññ ñ Ññ ñ !Ñ%ñ ñ Ññ ñ Ñ ñ ñ Ñ"ñ ñ Ññ ñ Ññ ñ Ñò r   r   N)r9   r:   r;   r<   r   r    r!   r"   r#   r$   ra   rb   rc   r-   r0   rd   re   rf   r=   r>   r?   r@   s   @r   r^   r^   2   sW   ø‡ € à'€JØ€KØÐØ!ÐØ!ÐØ€JØ€JØ#%ÐØ€NØ €NØ"ÐØ€LØ€LØ€L÷ ƒ r   r^   c                   óL   a € ] tR t^Dt o RtRt^t^tRtRt	Rt
RtV 3R ltRtV tR	# )
ÚDETREncoderConfigÚsam3_detr_encoderrD   é   Úreluçš™™™™™¹?r   c                óz   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[ ;R&   S[;R&   S[;R&   # )	r   r   r    Ú
num_layersr"   r#   r$   Údropoutr-   rg   )r5   r6   s   "€r   r7   ÚDETREncoderConfig.__annotate__D   sk   ø‡ ‚ áÑ)ñ ñ Ññ ñ Ññ	 ñ
 Ñ ñ ñ Ñ!ñ ñ Ññ ñ Ññ ñ Ñ ò r   r   N)r9   r:   r;   r<   r   r    rp   r"   r#   r$   rq   r-   r=   r>   r?   r@   s   @r   rj   rj   D   s6   ø‡ € à)€JØ€KØ€JØ ÐØ!ÐØ€JØ€GØ €N÷ ƒ r   rj   c                   óX   a € ] tR t^Pt o RtRt^t^t^ÈtRt	Rt
RtRtRtRtV 3R	 ltR
tV tR# )ÚDETRDecoderConfigÚsam3_detr_decoderrD   rl   rm   rn   r   ÚlogTc                óž   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[ ;R&   S[;R&   S[;R	&   S[ ;R
&   S[;R&   # )r   r   r    rp   r"   Únum_queriesr#   r$   rq   r-   Úbox_rpb_modeÚuse_presence_token)r1   r2   r4   r3   )r5   r6   s   "€r   r7   ÚDETRDecoderConfig.__annotate__P   s’   ø‡ ‚ áÑ)ñ ñ Ññ ñ Ññ	 ñ
 Ñ ñ ñ Ññ ñ Ñ!ñ ñ Ññ ñ Ññ ñ Ñ ñ ñ Ññ ñ Ñ#ò r   r   N)r9   r:   r;   r<   r   r    rp   r"   rx   r#   r$   rq   r-   ry   rz   r=   r>   r?   r@   s   @r   rt   rt   P   sF   ø‡ € à)€JØ€KØ€JØ ÐØ€KØ!ÐØ€JØ€GØ €NØ€LØ#Ð÷ ƒ r   rt   c                   óP   a € ] tR t^_t o RtRt^t^tRtRt	Rt
^tRtV 3R ltRtV tR	# )
ÚGeometryEncoderConfigÚsam3_geometry_encoderrD   rl   rm   rn   r   c                ó†   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[ ;R&   S[;R&   S[;R&   S[;R	&   # )
r   r   r    rp   r"   r#   r$   rq   Úroi_sizer-   rg   )r5   r6   s   "€r   r7   Ú"GeometryEncoderConfig.__annotate___   sx   ø‡ ‚ áÑ-ñ ñ Ññ ñ Ññ	 ñ
 Ñ ñ ñ Ñ!ñ ñ Ññ ñ Ññ ñ Ññ ñ Ñ ò r   r   N)r9   r:   r;   r<   r   r    rp   r"   r#   r$   rq   r€   r-   r=   r>   r?   r@   s   @r   r}   r}   _   s;   ø‡ € à-€JØ€KØ€JØ ÐØ!ÐØ€JØ€GØ€HØ €N÷ ƒ r   r}   c                   óD   a € ] tR t^lt o RtRt^t^tRtRt	V 3R lt
RtV tR# )ÚDetectorMaskDecoderConfigÚsam3_mask_decoderrD   r   r   c                ób   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   # )r   r   r    r"   Únum_upsampling_stagesrq   r-   rg   )r5   r6   s   "€r   r7   Ú&DetectorMaskDecoderConfig.__annotate__l   sQ   ø‡ ‚ áÑ)ñ ñ Ññ ñ Ñ ñ	 ñ
 Ñ"ñ ñ Ññ ñ Ñ ò r   r   N)r9   r:   r;   r<   r   r    r"   r†   rq   r-   r=   r>   r?   r@   s   @r   rƒ   rƒ   l   s,   ø‡ € à)€JØ€KØ ÐØ!"ÐØ€GØ €N÷ ƒ r   rƒ   c                   óR   a € ] tR t^vt o RtRtRtRtRtRt	Rt
RtR tV 3R ltRtV tR# )ÚDetectorConfigÚsam3Nç{®Gáz”?c                ó¤  € \        V P                  \        4      '       d&   \        P	                  V P                  4      V n        MV P                  f   \        4       V n        \        V P
                  \        4      '       d&   \        P	                  V P
                  4      V n        MV P
                  f   \        4       V n        \        V P                  \        4      '       d&   \        P	                  V P                  4      V n        MV P                  f   \        4       V n        \        V P                  \        4      '       d&   \        P	                  V P                  4      V n	        MV P                  f   \        4       V n	        \        V P                  \        4      '       d&   \        P	                  V P                  4      V n        MV P                  f   \        4       V n        \        V P                  \        4      '       d'   \        P	                  V P                  4      V n        R # V P                  f   \        4       V n        R # R # rL   )rM   Úvision_configrO   rB   rP   Útext_configr^   Údetr_encoder_configrj   Údetr_decoder_configrt   Úgeometry_encoder_configr}   Úmask_decoder_configrƒ   rQ   s   &r   rS   ÚDetectorConfig.__post_init__�   s­  € Ü�d×(Ñ(¬$×/Ò/Ü!4×!>Ñ!>¸t×?QÑ?QÓ!RˆDÕØ×ÑÒ'Ü!4Ó!6ˆDÔä�d×&Ñ&¬×-Ò-Ü0×:Ñ:¸4×;KÑ;KÓLˆDÕØ×ÑÒ%Ü0Ó2ˆDÔä�d×.Ñ.´×5Ò5Ü'8×'BÑ'BØ×(Ñ(ó(ˆDÕ$ð ×%Ñ%Ò-Ü'8Ó':ˆDÔ$ä�d×.Ñ.´×5Ò5Ü'8×'BÑ'BØ×(Ñ(ó(ˆDÕ$ð ×%Ñ%Ò-Ü'8Ó':ˆDÔ$ä�d×2Ñ2´D×9Ò9Ü+@×+JÑ+JØ×,Ñ,ó,ˆDÕ(ð ×)Ñ)Ò1Ü+@Ó+BˆDÔ(ä�d×.Ñ.´×5Ò5Ü'@×'JÑ'JØ×(Ñ(ó(ˆDÖ$ð ×%Ñ%Ò-Ü'@Ó'BˆDÖ$ñ .r   c                óÚ   <€ V ^8„  d   Qh/ S[ ;R&   S[S[,          ;R&   S[S[,          ;R&   S[S[,          ;R&   S[S[,          ;R&   S[S[,          ;R&   S[S[,          ;R&   S[;R&   # )	r   r   r�   rŽ   r�   r�   r‘   r’   Úinitializer_range)r1   r   rO   r4   )r5   r6   s   "€r   r7   ÚDetectorConfig.__annotate__v   sƒ   ø‡ ‚ áÑñ ñ ™D•>Ñ(ñ ñ ™$•Ñ&ñ	 ñ
 "¡$�Ñ.ñ ñ "¡$�Ñ.ñ ñ &¡d�^Ñ2ñ ñ "¡$�Ñ.ñ ñ Ñ#ò r   )r�   r�   r‘   r’   rŽ   r�   )r9   r:   r;   r<   r   r�   rŽ   r�   r�   r‘   r’   r•   rS   r=   r>   r?   r@   s   @r   r‰   r‰   v   s?   ø‡ € à€JØ$(€MØ"&€KØ*.ÐØ*.ÐØ.2ÐØ*.ÐØ#Ðò%C÷ ƒ r   r‰   c                   ó\   a € ] tR t^©t o Rt^t^t^t^t^t	Rt
RtRtRtRtRtV 3R ltRtV tR	# )
ÚTrackerMaskDecoderConfigrD   rl   r   Tgš™™™™™©?g\�Âõ(\ï?c                óª   <€ V ^8„  d   Qh/ S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[;R	&   S[;R
&   S[;R&   S[;R&   # )r   r    r!   r"   Úattention_downsample_rateÚnum_multimask_outputsÚiou_head_depthÚiou_head_hidden_dimÚmlp_dimr$   Údynamic_multimask_via_stabilityÚ!dynamic_multimask_stability_deltaÚ"dynamic_multimask_stability_thresh)r2   r1   r3   r4   )r5   r6   s   "€r   r7   Ú%TrackerMaskDecoderConfig.__annotate__©   sŸ   ø‡ ‚ áÑñ ñ Ññ ñ Ñ ñ	 ñ
  #Ñ&ñ ñ Ñ"ñ ñ Ññ ñ Ñ"ñ ñ Ññ ñ Ññ ñ &*Ñ0ñ ñ (-Ñ3ñ ñ ).Ñ4ò r   r   N)r9   r:   r;   r<   r    r!   r"   rš   r›   rœ   r�   rž   r$   rŸ   r    r¡   r=   r>   r?   r@   s   @r   r˜   r˜   ©   sP   ø‡ € à€KØÐØ ÐØ%&ÐØ!"ÐØ€NØ"ÐØ€GØ€JØ,0Ð#Ø/3Ð%Ø04Ð&÷ ƒ r   r˜   c                   óH   a € ] tR t^¹t o RtRt^t^t^tRt	^t
V 3R ltRtV tR# )ÚPromptEncoderConfigrD   r   r   c                ón   <€ V ^8„  d   Qh/ S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[;R&   S[ ;R&   # )r   r    r%   r&   Úmask_input_channelsÚnum_point_embeddingsr$   Úscale)r2   r1   )r5   r6   s   "€r   r7   Ú PromptEncoderConfig.__annotate__¹   s]   ø‡ ‚ áÑñ ñ Ññ ñ Ññ	 ñ
 Ñ!ñ ñ Ñ!ñ ñ Ññ ñ �Nò r   r   N)r9   r:   r;   r<   r    r%   r&   r¦   r§   r$   r¨   r=   r>   r?   r@   s   @r   r¤   r¤   ¹   s1   ø‡ € à€KØ€JØ€JØ!ÐØ !ÐØ€JØ€E÷ ƒ r   r¤   c                   óæ   a € ] tR t^Ät o RtRtRtRtRtRt	^t
^tRtRtRtRtRt]! R	 R
7      t^tRt^@tRt^t^t^t^tRtRt^t^t^tRt Rt!Rt"^t#^t$^t%Rt&Rt'^ t(^t)Rt*Rt+Rt,Rt-R t.V 3R lt/Rt0V t1R# )ÚTrackerConfigÚsam3_tracker_videor   NrD   rl   rm   rn   r   c                 ó
   € ^H^H.# )éH   r   r   r   r   r   ÚTrackerConfig.<lambda>Ö   s   €   R¡r   r   r   r   r   Tg      4@c                óX  € \        V P                  \        4      '       d&   \        P	                  V P                  4      V n        MV P                  f   \        4       V n        \        V P
                  \        4      '       d&   \        P	                  V P
                  4      V n        MV P
                  f   \        4       V n        \        V P                  \        4      '       d'   \        P	                  V P                  4      V n        R # V P                  f   \        4       V n        R # R # rL   )	rM   r�   rO   rB   rP   r’   r˜   Úprompt_encoder_configr¤   rQ   s   &r   rS   ÚTrackerConfig.__post_init__   sÚ   € Ü�d×(Ñ(¬$×/Ò/Ü!4×!>Ñ!>¸t×?QÑ?QÓ!RˆDÕØ×ÑÒ'Ü!4Ó!6ˆDÔä�d×.Ñ.´×5Ò5Ü'?×'IÑ'IØ×(Ñ(ó(ˆDÕ$ð ×%Ñ%Ò-Ü'?Ó'AˆDÔ$ä�d×0Ñ0´$×7Ò7Ü)<×)FÑ)FØ×*Ñ*ó*ˆDÖ&ð ×'Ñ'Ò/Ü)<Ó)>ˆDÖ&ñ 0r   c                óF  <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[S[,          ;R&   S[S[,          ;R&   S[S[,          ;R&   S[;R&   S[;R&   S[;R&   S[;R	&   S[ ;R
&   S[;R&   S[;R&   S[;R&   S[S[,          ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[ ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[ ;R&   S[;R&   S[;R &   S[;R!&   S[;R"&   S[;R#&   S[;R$&   S[;R%&   S[;R&&   S[;R'&   S[;R(&   S[;R)&   # )*r   r   r%   r�   r’   r±   Úmemory_attention_hidden_sizeÚmemory_attention_num_layersÚ$memory_attention_num_attention_headsÚ)memory_attention_feed_forward_hidden_sizeÚ(memory_attention_feed_forward_hidden_actÚmemory_attention_dropoutÚmemory_attention_rope_dropoutÚmemory_attention_rope_thetaÚ memory_attention_rope_feat_sizesÚ memory_attention_downsample_rateÚmemory_encoder_hidden_sizeÚmemory_encoder_output_channelsÚmask_downsampler_embed_dimÚmask_downsampler_kernel_sizeÚmask_downsampler_strideÚmask_downsampler_paddingÚmask_downsampler_total_strideÚmask_downsampler_hidden_actÚmemory_fuser_embed_dimÚmemory_fuser_kernel_sizeÚmemory_fuser_paddingÚmemory_fuser_num_layersÚmemory_fuser_intermediate_dimÚ#memory_fuser_layer_scale_init_valueÚmemory_fuser_hidden_actÚnum_maskmemÚmax_cond_frame_numÚmax_object_pointers_in_encoderÚmultimask_output_in_samÚmultimask_output_for_trackingÚmultimask_min_pt_numÚmultimask_max_pt_numÚsigmoid_bias_for_mem_encÚsigmoid_scale_for_mem_encÚ"enable_occlusion_spatial_embeddingÚ0enable_temporal_pos_encoding_for_object_pointers)r1   r2   r   rO   r4   r   r3   )r5   r6   s   "€r   r7   ÚTrackerConfig.__annotate__Ä   sP  ø‡ ‚ áÑ*ñ ñ Ññ ñ ™D•>Ñ(ñ	 ñ
 "¡$�Ñ.ñ ñ $¡D�>Ñ0ñ ñ #&Ñ+ñ ñ "%Ñ(ñ ñ +.Ñ1ñ ñ 03Ñ9ñ ñ /2Ñ:ñ ñ $Ñ)ñ ñ $)Ñ.ñ ñ  "'Ñ0ñ! ñ" '+©3¥iñ ñ# ñ( '*Ñ-ñ) ñ. !$Ñ)ñ/ ñ0 %(Ñ,ñ1 ñ6 !$Ñ)ñ7 ñ8 #&Ñ)ñ9 ñ: !Ñ$ñ; ñ< "Ñ%ñ= ñ> $'Ñ+ñ? ñ@ "%Ñ-ñA ñF  Ñ%ñG ñH "Ñ%ñI ñJ Ñ!ñK ñL !Ñ$ñM ñN $'Ñ-ñO ñP */Ñ5ñQ ñR !Ñ)ñS ñX ÑñY ñZ Ññ[ ñ\ %(Ñ,ñ] ñ^ "Ñ(ñ_ ñ` $(Ñ.ña ñb Ñ!ñc ñd Ñ!ñe ñj $Ñ+ñk ñl  %Ñ+ñm ñr )-Ñ3ñs ñt 7;ÑAòu r   )r’   r±   r�   g      $À)2r9   r:   r;   r<   r   r%   r�   r’   r±   r´   rµ   r¶   r·   r¸   r¹   rº   r»   r   r¼   r½   r¾   r¿   rÀ   rÁ   rÂ   rÃ   rÄ   rÅ   rÆ   rÇ   rÈ   rÉ   rÊ   rË   rÌ   rÍ   rÎ   rÏ   rÐ   rÑ   rÒ   rÓ   rÔ   rÕ   rÖ   r×   rS   r=   r>   r?   r@   s   @r   r«   r«   Ä   s  ø‡ € à*€JØ€JØ$(€MØ*.ÐØ,0Ðð ),Ð Ø'(ÐØ01Ð(Ø59Ð-Ø4:Ð,Ø&)ÐØ+.Ð!Ø)0ÐÙ27Ù(ô3Ð$ð -.Ð$ð '*ÐØ*,Ð"ð '*ÐØ()Ð Ø#$ÐØ$%ÐØ)+Ð!Ø'-Ðð #&ÐØ$%ÐØ !ÐØ#$ÐØ)-Ð!Ø15Ð'Ø#)Ðð €KØÐØ*,Ð"Ø$(ÐØ*.Ð!Ø !ÐØ !Ðð ',ÐØ'+Ðð 04Ð&Ø=AÐ4ò?÷y ƒ r   r«   c                   óž   a € ] tR tRt o RtRtRtRtRtRt	Rt
RtRtRtR	tRt^tR
t^t^tRt^t^t^t^tRtRtRtR	tRtRtR tV 3R lt Rt!V t"R# )ÚModelConfigi  Ú
sam3_videoNr‹   rJ   rn   rG   gš™™™™™é?gffffffæ?i'  FTc                ó6  € \        V P                  \        4      '       d&   \        P	                  V P                  4      V n        MV P                  f   \        4       V n        \        V P
                  \        4      '       d&   \        P	                  V P
                  4      V n        MV P
                  f   \        4       V n        V P                  f   V P                  P                  V n        V P                  f   V P                  P                  V n        R # R # rL   )	rM   Údetector_configrO   r‰   rP   Útracker_configr«   rŽ   r�   rQ   s   &r   rS   ÚModelConfig.__post_init__9  sÎ   € Ü�d×*Ñ*¬D×1Ò1Ü#1×#;Ñ#;¸D×<PÑ<PÓ#QˆDÕ Ø×!Ñ!Ò)Ü#1Ó#3ˆDÔ ä�d×)Ñ)¬4×0Ò0Ü"/×"9Ñ"9¸$×:MÑ:MÓ"NˆDÕØ× Ñ Ò(Ü"/£/ˆDÔð ×ÑÒ#Ø#×3Ñ3×?Ñ?ˆDÔØ×ÑÒ%Ø!%×!5Ñ!5×!CÑ!CˆDÖñ &r   c                óž  <€ V ^8„  d   Qh/ S[ ;R&   S[S[,          ;R&   S[S[,          ;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R	&   S[;R
&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[S[,          ;R&   S[S[,          ;R&   # )r   r   rÝ   rÞ   r•   Úlow_res_mask_sizeÚdet_nms_threshÚassoc_iou_threshÚtrk_assoc_iou_threshÚhigh_conf_threshÚhigh_iou_threshÚnew_det_threshÚscore_threshold_detectionÚfill_hole_areaÚmax_num_objectsÚinit_trk_keep_aliveÚmax_trk_keep_aliveÚmin_trk_keep_aliveÚhotstart_delayÚhotstart_dup_threshÚhotstart_unmatch_threshÚrecondition_every_nth_frameÚrecondition_on_trk_masksÚ*decrease_trk_keep_alive_for_empty_maskletsÚ'suppress_unmatched_only_within_hotstartÚ8suppress_overlapping_based_on_recent_occlusion_thresholdrŽ   r�   )r1   r   rO   r4   r2   r3   )r5   r6   s   "€r   r7   ÚModelConfig.__annotate__  sw  ø‡ ‚ áÑ"ñ ñ ™d•^Ñ*ñ ñ ™T•NÑ)ñ	 ñ
 Ñ#ñ ñ Ñ ñ ñ Ññ ñ Ñ!ñ ñ  Ñ%ñ ñ Ñ!ñ ñ Ñ ñ ñ Ññ ñ  %Ñ*ñ ñ  Ññ! ñ" Ñ ñ# ñ( Ñ!ñ) ñ* Ñ ñ+ ñ, Ñ ñ- ñ. Ññ/ ñ0 Ñ ñ1 ñ2 !Ñ$ñ3 ñ4 "%Ñ)ñ5 ñ6 #Ñ*ñ7 ñ8 15Ñ<ñ9 ñ: .2Ñ8ñ; ñ< ?DÑIñ= ñB ™$•Ñ&ñC ñD ™D•>Ñ(òE r   )rÝ   rŽ   rÞ   r�   éÿÿÿÿ)#r9   r:   r;   r<   r   rÝ   rÞ   r•   rá   râ   rã   rä   rå   ræ   rç   rè   ré   rê   rë   rì   rí   rî   rï   rð   rñ   rò   ró   rô   rõ   rŽ   r�   rS   r=   r>   r?   r@   s   @r   rÚ   rÚ     s°   ø‡ € à"€JØ&*€OØ%)€NØ#ÐØ Ðð  €NØ!ÐØ"%ÐØ!ÐØ €OØ€NØ'*ÐØ€NØ €Oð  "ÐØ ÐØ ÐØ€NØ ÐØ#$ÐØ')ÐØ%*ÐØ7<Ð.Ø48Ð+ØFIÐ<ð #'€KØ$(€MòD÷I ƒ r   rÚ   N)Údataclassesr   r   Útypingr   r   Úbaser   r	   rB   r^   rj   rt   r}   rƒ   r‰   r˜   r¤   r«   rÚ   r   r   r   Ú<module>rû      s]  ðß (ß !å "ð ô#�ó #ó ð#ð* ô/˜/ó /ó ð/ð( ô˜ó ó ðð" ô!˜ó !ó ð!ð ô$˜ó $ó ð$ð ô	!˜Oó 	!ó ð	!ð ô! ó !ó ð!ð ô/C�_ó /Có ð/Cðd ô5˜ó 5ó ð5ð ô˜/ó ó ðð ôM?�Oó M?ó ðM?ð` ô2D�/ó 2Dó ò2Dr   