@huggingface/transformers 4.0.0-next.5 → 4.0.0-next.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (197) hide show
  1. package/README.md +12 -4
  2. package/dist/ort-wasm-simd-threaded.jsep.mjs +24 -24
  3. package/dist/transformers.js +2189 -1015
  4. package/dist/transformers.min.js +16 -16
  5. package/dist/transformers.node.cjs +2234 -1029
  6. package/dist/transformers.node.min.cjs +20 -20
  7. package/dist/transformers.node.min.mjs +20 -20
  8. package/dist/transformers.node.mjs +2194 -1017
  9. package/dist/transformers.web.js +2175 -1001
  10. package/dist/transformers.web.min.js +18 -18
  11. package/package.json +4 -4
  12. package/src/backends/onnx.js +77 -58
  13. package/src/backends/utils/cacheWasm.js +22 -43
  14. package/src/cache_utils.js +62 -0
  15. package/src/configs.js +32 -5
  16. package/src/env.js +36 -6
  17. package/src/image_processors_utils.js +3 -3
  18. package/src/models/auto/modeling_auto.js +14 -1
  19. package/src/models/chatterbox/modeling_chatterbox.js +1 -1
  20. package/src/models/detr/image_processing_detr.js +1 -1
  21. package/src/models/feature_extractors.js +2 -0
  22. package/src/models/gemma3n/modeling_gemma3n.js +2 -0
  23. package/src/models/granite_speech/feature_extraction_granite_speech.js +58 -0
  24. package/src/models/granite_speech/modeling_granite_speech.js +5 -0
  25. package/src/models/granite_speech/processing_granite_speech.js +62 -0
  26. package/src/models/grounding_dino/image_processing_grounding_dino.js +1 -1
  27. package/src/models/idefics3/modeling_idefics3.js +5 -32
  28. package/src/models/image_processors.js +1 -0
  29. package/src/models/lfm2_vl/image_processing_lfm2_vl.js +305 -0
  30. package/src/models/lfm2_vl/modeling_lfm2_vl.js +13 -0
  31. package/src/models/lfm2_vl/processing_lfm2_vl.js +77 -0
  32. package/src/models/llava/modeling_llava.js +1 -1
  33. package/src/models/mistral3/modeling_mistral3.js +2 -2
  34. package/src/models/modeling_utils.js +234 -292
  35. package/src/models/models.js +9 -0
  36. package/src/models/olmo_hybrid/modeling_olmo_hybrid.js +5 -0
  37. package/src/models/paligemma/modeling_paligemma.js +2 -25
  38. package/src/models/processors.js +3 -0
  39. package/src/models/qwen2_5_vl/modeling_qwen2_5_vl.js +5 -1
  40. package/src/models/qwen2_moe/modeling_qwen2_moe.js +5 -0
  41. package/src/models/qwen2_vl/image_processing_qwen2_vl.js +1 -41
  42. package/src/models/qwen2_vl/modeling_qwen2_vl.js +36 -3
  43. package/src/models/qwen3_5/modeling_qwen3_5.js +1 -0
  44. package/src/models/qwen3_5_moe/modeling_qwen3_5_moe.js +2 -1
  45. package/src/models/qwen3_moe/modeling_qwen3_moe.js +5 -0
  46. package/src/models/qwen3_next/modeling_qwen3_next.js +5 -0
  47. package/src/models/qwen3_vl/modeling_qwen3_vl.js +2 -1
  48. package/src/models/qwen3_vl_moe/modeling_qwen3_vl_moe.js +4 -0
  49. package/src/models/registry.js +39 -4
  50. package/src/models/sam/image_processing_sam.js +1 -1
  51. package/src/models/session.js +17 -6
  52. package/src/models/smolvlm/modeling_smolvlm.js +7 -0
  53. package/src/models/ultravox/modeling_ultravox.js +1 -3
  54. package/src/models/voxtral/modeling_voxtral.js +3 -0
  55. package/src/models/voxtral_realtime/feature_extraction_voxtral_realtime.js +71 -0
  56. package/src/models/voxtral_realtime/modeling_voxtral_realtime.js +239 -0
  57. package/src/models/voxtral_realtime/processing_voxtral_realtime.js +113 -0
  58. package/src/models/whisper/feature_extraction_whisper.js +2 -12
  59. package/src/pipelines/index.js +2 -84
  60. package/src/pipelines.js +40 -77
  61. package/src/transformers.js +2 -0
  62. package/src/utils/audio.js +18 -2
  63. package/src/utils/cache/CrossOriginStorageCache.js +251 -0
  64. package/src/utils/cache/FileCache.js +128 -0
  65. package/src/utils/cache/cross-origin-storage.d.ts +38 -0
  66. package/src/utils/cache.js +8 -3
  67. package/src/utils/hub/{files.js → FileResponse.js} +0 -105
  68. package/src/utils/hub/utils.js +35 -1
  69. package/src/utils/hub.js +6 -5
  70. package/src/utils/image.js +12 -13
  71. package/src/utils/lru_cache.js +67 -0
  72. package/src/utils/memoize_promise.js +45 -0
  73. package/src/utils/model_registry/ModelRegistry.js +70 -23
  74. package/src/utils/model_registry/get_file_metadata.js +14 -2
  75. package/src/utils/model_registry/get_model_files.js +63 -78
  76. package/src/utils/model_registry/get_pipeline_files.js +15 -24
  77. package/src/utils/model_registry/is_cached.js +81 -4
  78. package/src/utils/tensor.js +18 -2
  79. package/types/backends/onnx.d.ts.map +1 -1
  80. package/types/backends/utils/cacheWasm.d.ts +3 -17
  81. package/types/backends/utils/cacheWasm.d.ts.map +1 -1
  82. package/types/cache_utils.d.ts +29 -0
  83. package/types/cache_utils.d.ts.map +1 -0
  84. package/types/configs.d.ts.map +1 -1
  85. package/types/env.d.ts +18 -3
  86. package/types/env.d.ts.map +1 -1
  87. package/types/image_processors_utils.d.ts +17 -1
  88. package/types/image_processors_utils.d.ts.map +1 -1
  89. package/types/models/auto/modeling_auto.d.ts +6 -0
  90. package/types/models/auto/modeling_auto.d.ts.map +1 -1
  91. package/types/models/detr/image_processing_detr.d.ts +1 -1
  92. package/types/models/feature_extractors.d.ts +2 -0
  93. package/types/models/gemma3n/modeling_gemma3n.d.ts +2 -0
  94. package/types/models/gemma3n/modeling_gemma3n.d.ts.map +1 -1
  95. package/types/models/granite_speech/feature_extraction_granite_speech.d.ts +16 -0
  96. package/types/models/granite_speech/feature_extraction_granite_speech.d.ts.map +1 -0
  97. package/types/models/granite_speech/modeling_granite_speech.d.ts +4 -0
  98. package/types/models/granite_speech/modeling_granite_speech.d.ts.map +1 -0
  99. package/types/models/granite_speech/processing_granite_speech.d.ts +19 -0
  100. package/types/models/granite_speech/processing_granite_speech.d.ts.map +1 -0
  101. package/types/models/grounding_dino/image_processing_grounding_dino.d.ts +1 -1
  102. package/types/models/idefics3/modeling_idefics3.d.ts +2 -18
  103. package/types/models/idefics3/modeling_idefics3.d.ts.map +1 -1
  104. package/types/models/image_processors.d.ts +1 -0
  105. package/types/models/lfm2_vl/image_processing_lfm2_vl.d.ts +41 -0
  106. package/types/models/lfm2_vl/image_processing_lfm2_vl.d.ts.map +1 -0
  107. package/types/models/lfm2_vl/modeling_lfm2_vl.d.ts +4 -0
  108. package/types/models/lfm2_vl/modeling_lfm2_vl.d.ts.map +1 -0
  109. package/types/models/lfm2_vl/processing_lfm2_vl.d.ts +18 -0
  110. package/types/models/lfm2_vl/processing_lfm2_vl.d.ts.map +1 -0
  111. package/types/models/mistral3/modeling_mistral3.d.ts +2 -2
  112. package/types/models/mistral3/modeling_mistral3.d.ts.map +1 -1
  113. package/types/models/modeling_utils.d.ts +44 -24
  114. package/types/models/modeling_utils.d.ts.map +1 -1
  115. package/types/models/models.d.ts +9 -0
  116. package/types/models/olmo_hybrid/modeling_olmo_hybrid.d.ts +8 -0
  117. package/types/models/olmo_hybrid/modeling_olmo_hybrid.d.ts.map +1 -0
  118. package/types/models/paligemma/modeling_paligemma.d.ts +2 -8
  119. package/types/models/paligemma/modeling_paligemma.d.ts.map +1 -1
  120. package/types/models/processors.d.ts +3 -0
  121. package/types/models/qwen2_5_vl/modeling_qwen2_5_vl.d.ts +3 -0
  122. package/types/models/qwen2_5_vl/modeling_qwen2_5_vl.d.ts.map +1 -1
  123. package/types/models/qwen2_moe/modeling_qwen2_moe.d.ts +8 -0
  124. package/types/models/qwen2_moe/modeling_qwen2_moe.d.ts.map +1 -0
  125. package/types/models/qwen2_vl/image_processing_qwen2_vl.d.ts.map +1 -1
  126. package/types/models/qwen2_vl/modeling_qwen2_vl.d.ts +2 -0
  127. package/types/models/qwen2_vl/modeling_qwen2_vl.d.ts.map +1 -1
  128. package/types/models/qwen3_5/modeling_qwen3_5.d.ts +2 -0
  129. package/types/models/qwen3_5/modeling_qwen3_5.d.ts.map +1 -1
  130. package/types/models/qwen3_5_moe/modeling_qwen3_5_moe.d.ts +3 -0
  131. package/types/models/qwen3_5_moe/modeling_qwen3_5_moe.d.ts.map +1 -1
  132. package/types/models/qwen3_moe/modeling_qwen3_moe.d.ts +8 -0
  133. package/types/models/qwen3_moe/modeling_qwen3_moe.d.ts.map +1 -0
  134. package/types/models/qwen3_next/modeling_qwen3_next.d.ts +8 -0
  135. package/types/models/qwen3_next/modeling_qwen3_next.d.ts.map +1 -0
  136. package/types/models/qwen3_vl/modeling_qwen3_vl.d.ts +3 -0
  137. package/types/models/qwen3_vl/modeling_qwen3_vl.d.ts.map +1 -1
  138. package/types/models/qwen3_vl_moe/modeling_qwen3_vl_moe.d.ts +7 -0
  139. package/types/models/qwen3_vl_moe/modeling_qwen3_vl_moe.d.ts.map +1 -0
  140. package/types/models/registry.d.ts +2 -1
  141. package/types/models/registry.d.ts.map +1 -1
  142. package/types/models/sam/image_processing_sam.d.ts +1 -1
  143. package/types/models/session.d.ts +3 -2
  144. package/types/models/session.d.ts.map +1 -1
  145. package/types/models/smolvlm/modeling_smolvlm.d.ts +8 -0
  146. package/types/models/smolvlm/modeling_smolvlm.d.ts.map +1 -0
  147. package/types/models/ultravox/modeling_ultravox.d.ts +0 -2
  148. package/types/models/ultravox/modeling_ultravox.d.ts.map +1 -1
  149. package/types/models/voxtral/modeling_voxtral.d.ts +4 -0
  150. package/types/models/voxtral/modeling_voxtral.d.ts.map +1 -0
  151. package/types/models/voxtral_realtime/feature_extraction_voxtral_realtime.d.ts +28 -0
  152. package/types/models/voxtral_realtime/feature_extraction_voxtral_realtime.d.ts.map +1 -0
  153. package/types/models/voxtral_realtime/modeling_voxtral_realtime.d.ts +17 -0
  154. package/types/models/voxtral_realtime/modeling_voxtral_realtime.d.ts.map +1 -0
  155. package/types/models/voxtral_realtime/processing_voxtral_realtime.d.ts +44 -0
  156. package/types/models/voxtral_realtime/processing_voxtral_realtime.d.ts.map +1 -0
  157. package/types/models/whisper/feature_extraction_whisper.d.ts.map +1 -1
  158. package/types/pipelines/index.d.ts +0 -34
  159. package/types/pipelines/index.d.ts.map +1 -1
  160. package/types/pipelines.d.ts.map +1 -1
  161. package/types/transformers.d.ts +1 -0
  162. package/types/transformers.d.ts.map +1 -1
  163. package/types/utils/audio.d.ts +5 -2
  164. package/types/utils/audio.d.ts.map +1 -1
  165. package/types/utils/cache/CrossOriginStorageCache.d.ts +120 -0
  166. package/types/utils/cache/CrossOriginStorageCache.d.ts.map +1 -0
  167. package/types/utils/cache/FileCache.d.ts +39 -0
  168. package/types/utils/cache/FileCache.d.ts.map +1 -0
  169. package/types/utils/cache.d.ts +4 -4
  170. package/types/utils/cache.d.ts.map +1 -1
  171. package/types/utils/dtypes.d.ts +1 -1
  172. package/types/utils/hub/{files.d.ts → FileResponse.d.ts} +1 -38
  173. package/types/utils/hub/FileResponse.d.ts.map +1 -0
  174. package/types/utils/hub/utils.d.ts +17 -2
  175. package/types/utils/hub/utils.d.ts.map +1 -1
  176. package/types/utils/hub.d.ts +7 -7
  177. package/types/utils/hub.d.ts.map +1 -1
  178. package/types/utils/image.d.ts +1 -1
  179. package/types/utils/image.d.ts.map +1 -1
  180. package/types/utils/lru_cache.d.ts +38 -0
  181. package/types/utils/lru_cache.d.ts.map +1 -0
  182. package/types/utils/memoize_promise.d.ts +14 -0
  183. package/types/utils/memoize_promise.d.ts.map +1 -0
  184. package/types/utils/model_registry/ModelRegistry.d.ts +66 -6
  185. package/types/utils/model_registry/ModelRegistry.d.ts.map +1 -1
  186. package/types/utils/model_registry/get_file_metadata.d.ts.map +1 -1
  187. package/types/utils/model_registry/get_model_files.d.ts +1 -0
  188. package/types/utils/model_registry/get_model_files.d.ts.map +1 -1
  189. package/types/utils/model_registry/get_pipeline_files.d.ts +2 -1
  190. package/types/utils/model_registry/get_pipeline_files.d.ts.map +1 -1
  191. package/types/utils/model_registry/is_cached.d.ts +47 -4
  192. package/types/utils/model_registry/is_cached.d.ts.map +1 -1
  193. package/types/utils/tensor.d.ts.map +1 -1
  194. package/src/utils/data-structures.js +0 -572
  195. package/types/utils/data-structures.d.ts +0 -294
  196. package/types/utils/data-structures.d.ts.map +0 -1
  197. package/types/utils/hub/files.d.ts.map +0 -1
@@ -1,27 +1,27 @@
1
- var GS=Object.create;var wu=Object.defineProperty;var qS=Object.getOwnPropertyDescriptor;var WS=Object.getOwnPropertyNames;var VS=Object.getPrototypeOf,HS=Object.prototype.hasOwnProperty;var ks=(t,e)=>{for(var r in e)wu(t,r,{get:e[r],enumerable:!0})},Wv=(t,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of WS(e))!HS.call(t,n)&&n!==r&&wu(t,n,{get:()=>e[n],enumerable:!(s=qS(e,n))||s.enumerable});return t};var Xr=(t,e,r)=>(r=t!=null?GS(VS(t)):{},Wv(e||!t||!t.__esModule?wu(r,"default",{value:t,enumerable:!0}):r,t)),XS=t=>Wv(wu({},"__esModule",{value:!0}),t);var Qz={};ks(Qz,{ASTFeatureExtractor:()=>Wp,ASTForAudioClassification:()=>Lf,ASTModel:()=>zf,ASTPreTrainedModel:()=>Zn,AfmoeForCausalLM:()=>If,AfmoeModel:()=>Of,AfmoePreTrainedModel:()=>Qn,AlbertForMaskedLM:()=>Mf,AlbertForQuestionAnswering:()=>Af,AlbertForSequenceClassification:()=>Ef,AlbertModel:()=>kf,AlbertPreTrainedModel:()=>ls,AlbertTokenizer:()=>Zu,ApertusForCausalLM:()=>Sf,ApertusModel:()=>Tf,ApertusPreTrainedModel:()=>Yn,ArceeForCausalLM:()=>Pf,ArceeModel:()=>Cf,ArceePreTrainedModel:()=>Jn,AudioClassificationPipeline:()=>hi,AutoConfig:()=>hr,AutoFeatureExtractor:()=>et,AutoImageProcessor:()=>$e,AutoModel:()=>wr,AutoModelForAudioClassification:()=>eu,AutoModelForAudioFrameClassification:()=>zb,AutoModelForAudioTextToText:()=>Db,AutoModelForCTC:()=>Zc,AutoModelForCausalLM:()=>Vc,AutoModelForDepthEstimation:()=>su,AutoModelForDocumentQuestionAnswering:()=>tu,AutoModelForImageClassification:()=>Yc,AutoModelForImageFeatureExtraction:()=>nu,AutoModelForImageMatting:()=>Lb,AutoModelForImageSegmentation:()=>ni,AutoModelForImageTextToText:()=>Rb,AutoModelForImageToImage:()=>ru,AutoModelForMaskGeneration:()=>Cb,AutoModelForMaskedLM:()=>Hc,AutoModelForNormalEstimation:()=>Nb,AutoModelForObjectDetection:()=>Qc,AutoModelForPoseEstimation:()=>$b,AutoModelForQuestionAnswering:()=>Xc,AutoModelForSemanticSegmentation:()=>oi,AutoModelForSeq2SeqLM:()=>hn,AutoModelForSequenceClassification:()=>si,AutoModelForSpeechSeq2Seq:()=>Gc,AutoModelForTextToSpectrogram:()=>qc,AutoModelForTextToWaveform:()=>Wc,AutoModelForTokenClassification:()=>jc,AutoModelForUniversalSegmentation:()=>ai,AutoModelForVision2Seq:()=>Kc,AutoModelForXVector:()=>Pb,AutoModelForZeroShotObjectDetection:()=>Jc,AutoProcessor:()=>it,AutoTokenizer:()=>Z,AutomaticSpeechRecognitionPipeline:()=>gi,BackgroundRemovalPipeline:()=>bi,BartForConditionalGeneration:()=>$f,BartForSequenceClassification:()=>Rf,BartModel:()=>Nf,BartPretrainedModel:()=>Ks,BartTokenizer:()=>ep,BaseStreamer:()=>yy,BeitFeatureExtractor:()=>ld,BeitForImageClassification:()=>Uf,BeitModel:()=>Df,BeitPreTrainedModel:()=>eo,BertForMaskedLM:()=>Ff,BertForQuestionAnswering:()=>qf,BertForSequenceClassification:()=>jf,BertForTokenClassification:()=>Gf,BertModel:()=>Bf,BertPreTrainedModel:()=>Cr,BertTokenizer:()=>tp,BitImageProcessor:()=>cd,BlenderbotForConditionalGeneration:()=>Vf,BlenderbotModel:()=>Wf,BlenderbotPreTrainedModel:()=>to,BlenderbotSmallForConditionalGeneration:()=>Xf,BlenderbotSmallModel:()=>Hf,BlenderbotSmallPreTrainedModel:()=>ro,BlenderbotSmallTokenizer:()=>rp,BlenderbotTokenizer:()=>sp,BloomForCausalLM:()=>Yf,BloomModel:()=>Kf,BloomPreTrainedModel:()=>so,BloomTokenizer:()=>np,CLIPFeatureExtractor:()=>pd,CLIPImageProcessor:()=>cl,CLIPModel:()=>nm,CLIPPreTrainedModel:()=>nr,CLIPSegForImageSegmentation:()=>cm,CLIPSegModel:()=>lm,CLIPSegPreTrainedModel:()=>lo,CLIPTextModel:()=>om,CLIPTextModelWithProjection:()=>io,CLIPTokenizer:()=>ap,CLIPVisionModel:()=>am,CLIPVisionModelWithProjection:()=>im,CamembertForMaskedLM:()=>Jf,CamembertForQuestionAnswering:()=>tm,CamembertForSequenceClassification:()=>Zf,CamembertForTokenClassification:()=>em,CamembertModel:()=>Qf,CamembertPreTrainedModel:()=>Pr,CamembertTokenizer:()=>op,ChatterboxFeatureExtractor:()=>Vp,ChatterboxModel:()=>no,ChatterboxPreTrainedModel:()=>Gl,ChatterboxProcessor:()=>sd,ChineseCLIPFeatureExtractor:()=>ud,ChineseCLIPModel:()=>rm,ChineseCLIPPreTrainedModel:()=>ql,ClapAudioModelWithProjection:()=>ao,ClapFeatureExtractor:()=>Hp,ClapModel:()=>sm,ClapPreTrainedModel:()=>Ys,ClapTextModelWithProjection:()=>oo,ClassifierFreeGuidanceLogitsProcessor:()=>Nl,CodeGenForCausalLM:()=>pm,CodeGenModel:()=>um,CodeGenPreTrainedModel:()=>co,CodeGenTokenizer:()=>lp,CodeLlamaTokenizer:()=>ip,Cohere2ForCausalLM:()=>hm,Cohere2Model:()=>mm,Cohere2PreTrainedModel:()=>po,CohereForCausalLM:()=>fm,CohereModel:()=>dm,CoherePreTrainedModel:()=>uo,CohereTokenizer:()=>cp,ConvBertForMaskedLM:()=>gm,ConvBertForQuestionAnswering:()=>ym,ConvBertForSequenceClassification:()=>wm,ConvBertForTokenClassification:()=>xm,ConvBertModel:()=>_m,ConvBertPreTrainedModel:()=>zr,ConvBertTokenizer:()=>up,ConvNextFeatureExtractor:()=>dd,ConvNextForImageClassification:()=>vm,ConvNextImageProcessor:()=>ul,ConvNextModel:()=>bm,ConvNextPreTrainedModel:()=>fo,ConvNextV2ForImageClassification:()=>Em,ConvNextV2Model:()=>km,ConvNextV2PreTrainedModel:()=>mo,DFineForObjectDetection:()=>Sm,DFineModel:()=>Tm,DFinePreTrainedModel:()=>_o,DINOv3ConvNextModel:()=>Jm,DINOv3ConvNextPreTrainedModel:()=>Ql,DINOv3ViTImageProcessor:()=>hd,DINOv3ViTModel:()=>Zm,DINOv3ViTPreTrainedModel:()=>Jl,DPTFeatureExtractor:()=>gd,DPTForDepthEstimation:()=>ih,DPTImageProcessor:()=>fl,DPTModel:()=>ah,DPTPreTrainedModel:()=>vo,DacDecoderModel:()=>wo,DacDecoderOutput:()=>Vl,DacEncoderModel:()=>go,DacEncoderOutput:()=>Wl,DacFeatureExtractor:()=>Dn,DacModel:()=>Om,DacPreTrainedModel:()=>Qs,DebertaForMaskedLM:()=>Cm,DebertaForQuestionAnswering:()=>Lm,DebertaForSequenceClassification:()=>Pm,DebertaForTokenClassification:()=>zm,DebertaModel:()=>Im,DebertaPreTrainedModel:()=>Lr,DebertaTokenizer:()=>dp,DebertaV2ForMaskedLM:()=>$m,DebertaV2ForQuestionAnswering:()=>Um,DebertaV2ForSequenceClassification:()=>Rm,DebertaV2ForTokenClassification:()=>Dm,DebertaV2Model:()=>Nm,DebertaV2PreTrainedModel:()=>Nr,DebertaV2Tokenizer:()=>pp,DecisionTransformerModel:()=>Bm,DecisionTransformerPreTrainedModel:()=>Hl,DeiTFeatureExtractor:()=>fd,DeiTForImageClassification:()=>jm,DeiTImageProcessor:()=>pl,DeiTModel:()=>Fm,DeiTPreTrainedModel:()=>xo,DepthAnythingForDepthEstimation:()=>Gm,DepthAnythingPreTrainedModel:()=>Xl,DepthEstimationPipeline:()=>Ti,DepthProForDepthEstimation:()=>qm,DepthProPreTrainedModel:()=>Kl,DetrFeatureExtractor:()=>md,DetrForObjectDetection:()=>Vm,DetrForSegmentation:()=>Hm,DetrImageProcessor:()=>dl,DetrModel:()=>Wm,DetrObjectDetectionOutput:()=>Zs,DetrPreTrainedModel:()=>Js,DetrSegmentationOutput:()=>Yl,Dinov2ForImageClassification:()=>Km,Dinov2Model:()=>Xm,Dinov2PreTrainedModel:()=>yo,Dinov2WithRegistersForImageClassification:()=>Qm,Dinov2WithRegistersModel:()=>Ym,Dinov2WithRegistersPreTrainedModel:()=>bo,DistilBertForMaskedLM:()=>nh,DistilBertForQuestionAnswering:()=>sh,DistilBertForSequenceClassification:()=>th,DistilBertForTokenClassification:()=>rh,DistilBertModel:()=>eh,DistilBertPreTrainedModel:()=>$r,DistilBertTokenizer:()=>fp,DocumentQuestionAnsweringPipeline:()=>Ai,DonutFeatureExtractor:()=>_d,DonutImageProcessor:()=>js,DonutSwinModel:()=>oh,DonutSwinPreTrainedModel:()=>Zl,EdgeTamModel:()=>qw,EfficientNetForImageClassification:()=>ch,EfficientNetImageProcessor:()=>wd,EfficientNetModel:()=>lh,EfficientNetPreTrainedModel:()=>ko,ElectraForMaskedLM:()=>ph,ElectraForQuestionAnswering:()=>mh,ElectraForSequenceClassification:()=>dh,ElectraForTokenClassification:()=>fh,ElectraModel:()=>uh,ElectraPreTrainedModel:()=>Rr,ElectraTokenizer:()=>mp,EncodecFeatureExtractor:()=>Rn,EosTokenCriteria:()=>Ul,Ernie4_5ForCausalLM:()=>_h,Ernie4_5Model:()=>hh,Ernie4_5PretrainedModel:()=>Eo,EsmForMaskedLM:()=>wh,EsmForSequenceClassification:()=>xh,EsmForTokenClassification:()=>yh,EsmModel:()=>gh,EsmPreTrainedModel:()=>cs,EsmTokenizer:()=>hp,ExaoneForCausalLM:()=>vh,ExaoneModel:()=>bh,ExaonePreTrainedModel:()=>Ao,FalconForCausalLM:()=>Eh,FalconH1ForCausalLM:()=>Mh,FalconH1Model:()=>Ah,FalconH1PreTrainedModel:()=>To,FalconModel:()=>kh,FalconPreTrainedModel:()=>Mo,FalconTokenizer:()=>_p,FastViTForImageClassification:()=>Sh,FastViTModel:()=>Th,FastViTPreTrainedModel:()=>So,FeatureExtractionPipeline:()=>Si,FeatureExtractor:()=>Ne,FillMaskPipeline:()=>ui,Florence2ForConditionalGeneration:()=>Oh,Florence2PreTrainedModel:()=>ec,Florence2Processor:()=>Hd,ForcedBOSTokenLogitsProcessor:()=>Tl,ForcedEOSTokenLogitsProcessor:()=>Sl,GLPNFeatureExtractor:()=>xd,GLPNForDepthEstimation:()=>Uh,GLPNModel:()=>Dh,GLPNPreTrainedModel:()=>Lo,GPT2LMHeadModel:()=>Kh,GPT2Model:()=>Xh,GPT2PreTrainedModel:()=>Uo,GPT2Tokenizer:()=>xp,GPTBigCodeForCausalLM:()=>Fh,GPTBigCodeModel:()=>Bh,GPTBigCodePreTrainedModel:()=>No,GPTJForCausalLM:()=>Qh,GPTJModel:()=>Yh,GPTJPreTrainedModel:()=>Bo,GPTNeoForCausalLM:()=>Gh,GPTNeoModel:()=>jh,GPTNeoPreTrainedModel:()=>$o,GPTNeoXForCausalLM:()=>Wh,GPTNeoXModel:()=>qh,GPTNeoXPreTrainedModel:()=>Ro,GPTNeoXTokenizer:()=>wp,Gemma2ForCausalLM:()=>zh,Gemma2Model:()=>Ph,Gemma2PreTrainedModel:()=>Io,Gemma3ForCausalLM:()=>Nh,Gemma3Model:()=>Lh,Gemma3PreTrainedModel:()=>Co,Gemma3nAudioFeatureExtractor:()=>Xp,Gemma3nForConditionalGeneration:()=>Po,Gemma3nPreTrainedModel:()=>tc,Gemma3nProcessor:()=>Xd,GemmaForCausalLM:()=>Ch,GemmaModel:()=>Ih,GemmaPreTrainedModel:()=>Oo,GemmaTokenizer:()=>gp,GlmForCausalLM:()=>Rh,GlmModel:()=>$h,GlmPreTrainedModel:()=>zo,GptOssForCausalLM:()=>Hh,GptOssModel:()=>Vh,GptOssPreTrainedModel:()=>Do,GraniteForCausalLM:()=>Zh,GraniteModel:()=>Jh,GraniteMoeHybridForCausalLM:()=>t_,GraniteMoeHybridModel:()=>e_,GraniteMoeHybridPreTrainedModel:()=>jo,GranitePreTrainedModel:()=>Fo,GroundingDinoForObjectDetection:()=>r_,GroundingDinoImageProcessor:()=>yd,GroundingDinoPreTrainedModel:()=>rc,GroundingDinoProcessor:()=>Kd,GroupViTModel:()=>s_,GroupViTPreTrainedModel:()=>sc,HeliumForCausalLM:()=>o_,HeliumModel:()=>n_,HeliumPreTrainedModel:()=>Go,HerbertTokenizer:()=>yp,HieraForImageClassification:()=>i_,HieraModel:()=>a_,HieraPreTrainedModel:()=>qo,HubertForCTC:()=>m_,HubertForSequenceClassification:()=>h_,HubertModel:()=>f_,HubertPreTrainedModel:()=>d_,HunYuanDenseV1ForCausalLM:()=>g_,HunYuanDenseV1Model:()=>__,HunYuanDenseV1PreTrainedModel:()=>Wo,IJepaForImageClassification:()=>y_,IJepaModel:()=>x_,IJepaPreTrainedModel:()=>Vo,Idefics3ForConditionalGeneration:()=>oc,Idefics3ImageProcessor:()=>ml,Idefics3PreTrainedModel:()=>nc,Idefics3Processor:()=>El,ImageClassificationPipeline:()=>yi,ImageFeatureExtractionPipeline:()=>Oi,ImageFeatureExtractor:()=>W,ImageProcessor:()=>W,ImageSegmentationPipeline:()=>_s,ImageToImagePipeline:()=>Mi,ImageToTextPipeline:()=>xi,InterruptableStoppingCriteria:()=>vb,JAISLMHeadModel:()=>v_,JAISModel:()=>b_,JAISPreTrainedModel:()=>Ho,JinaCLIPImageProcessor:()=>vd,JinaCLIPModel:()=>k_,JinaCLIPPreTrainedModel:()=>en,JinaCLIPProcessor:()=>Qd,JinaCLIPTextModel:()=>Xo,JinaCLIPVisionModel:()=>E_,Lfm2ForCausalLM:()=>M_,Lfm2Model:()=>A_,Lfm2MoeForCausalLM:()=>S_,Lfm2MoeModel:()=>T_,Lfm2MoePreTrainedModel:()=>Yo,Lfm2PreTrainedModel:()=>Ko,LiteWhisperForConditionalGeneration:()=>ry,Llama4ForCausalLM:()=>C_,Llama4PreTrainedModel:()=>ac,LlamaForCausalLM:()=>I_,LlamaModel:()=>O_,LlamaPreTrainedModel:()=>Qo,LlamaTokenizer:()=>bp,LlavaForConditionalGeneration:()=>tn,LlavaOnevisionForConditionalGeneration:()=>tn,LlavaOnevisionImageProcessor:()=>kd,LlavaPreTrainedModel:()=>ic,LlavaProcessor:()=>Jd,LlavaQwen2ForCausalLM:()=>z_,LogLevel:()=>kt,LogitsProcessor:()=>Ut,LogitsProcessorList:()=>is,LogitsWarper:()=>Xn,LongT5ForConditionalGeneration:()=>N_,LongT5Model:()=>L_,LongT5PreTrainedModel:()=>Jo,M2M100ForConditionalGeneration:()=>R_,M2M100Model:()=>$_,M2M100PreTrainedModel:()=>Zo,M2M100Tokenizer:()=>vp,MBart50Tokenizer:()=>Ep,MBartForCausalLM:()=>W_,MBartForConditionalGeneration:()=>G_,MBartForSequenceClassification:()=>q_,MBartModel:()=>j_,MBartPreTrainedModel:()=>us,MBartTokenizer:()=>Nn,MPNetForMaskedLM:()=>Og,MPNetForQuestionAnswering:()=>Pg,MPNetForSequenceClassification:()=>Ig,MPNetForTokenClassification:()=>Cg,MPNetModel:()=>Sg,MPNetPreTrainedModel:()=>Dr,MPNetTokenizer:()=>Tp,MT5ForConditionalGeneration:()=>$g,MT5Model:()=>Ng,MT5PreTrainedModel:()=>pa,MarianMTModel:()=>U_,MarianModel:()=>D_,MarianPreTrainedModel:()=>ea,MarianTokenizer:()=>kp,Mask2FormerImageProcessor:()=>Ad,MaskFormerFeatureExtractor:()=>Ed,MaskFormerForInstanceSegmentation:()=>F_,MaskFormerImageProcessor:()=>Gs,MaskFormerModel:()=>B_,MaskFormerPreTrainedModel:()=>ta,MaxLengthCriteria:()=>Dl,Metric3DForDepthEstimation:()=>V_,Metric3DPreTrainedModel:()=>lc,Metric3Dv2ForDepthEstimation:()=>H_,Metric3Dv2PreTrainedModel:()=>cc,MgpstrForSceneTextRecognition:()=>X_,MgpstrModelOutput:()=>uc,MgpstrPreTrainedModel:()=>pc,MgpstrProcessor:()=>Zd,MgpstrTokenizer:()=>Ap,MimiDecoderModel:()=>sa,MimiDecoderOutput:()=>fc,MimiEncoderModel:()=>ra,MimiEncoderOutput:()=>dc,MimiModel:()=>K_,MimiPreTrainedModel:()=>rn,MinLengthLogitsProcessor:()=>Pl,MinNewTokensLengthLogitsProcessor:()=>zl,MistralForCausalLM:()=>Q_,MistralModel:()=>Y_,MistralPreTrainedModel:()=>na,MobileBertForMaskedLM:()=>Z_,MobileBertForQuestionAnswering:()=>tg,MobileBertForSequenceClassification:()=>eg,MobileBertModel:()=>J_,MobileBertPreTrainedModel:()=>ps,MobileBertTokenizer:()=>Mp,MobileLLMForCausalLM:()=>sg,MobileLLMModel:()=>rg,MobileLLMPreTrainedModel:()=>oa,MobileNetV1FeatureExtractor:()=>Md,MobileNetV1ForImageClassification:()=>og,MobileNetV1ForSemanticSegmentation:()=>ag,MobileNetV1ImageProcessor:()=>hl,MobileNetV1Model:()=>ng,MobileNetV1PreTrainedModel:()=>sn,MobileNetV2FeatureExtractor:()=>Td,MobileNetV2ForImageClassification:()=>lg,MobileNetV2ForSemanticSegmentation:()=>cg,MobileNetV2ImageProcessor:()=>_l,MobileNetV2Model:()=>ig,MobileNetV2PreTrainedModel:()=>nn,MobileNetV3FeatureExtractor:()=>Sd,MobileNetV3ForImageClassification:()=>pg,MobileNetV3ForSemanticSegmentation:()=>dg,MobileNetV3ImageProcessor:()=>gl,MobileNetV3Model:()=>ug,MobileNetV3PreTrainedModel:()=>on,MobileNetV4FeatureExtractor:()=>Od,MobileNetV4ForImageClassification:()=>mg,MobileNetV4ForSemanticSegmentation:()=>hg,MobileNetV4ImageProcessor:()=>wl,MobileNetV4Model:()=>fg,MobileNetV4PreTrainedModel:()=>an,MobileViTFeatureExtractor:()=>Id,MobileViTForImageClassification:()=>gg,MobileViTImageProcessor:()=>xl,MobileViTModel:()=>_g,MobileViTPreTrainedModel:()=>aa,MobileViTV2ForImageClassification:()=>xg,MobileViTV2Model:()=>wg,MobileViTV2PreTrainedModel:()=>ia,ModelRegistry:()=>vy,ModernBertDecoderForCausalLM:()=>Ag,ModernBertDecoderModel:()=>Eg,ModernBertDecoderPreTrainedModel:()=>la,ModernBertForMaskedLM:()=>bg,ModernBertForSequenceClassification:()=>vg,ModernBertForTokenClassification:()=>kg,ModernBertModel:()=>yg,ModernBertPreTrainedModel:()=>ds,Moondream1ForConditionalGeneration:()=>P_,MoonshineFeatureExtractor:()=>Kp,MoonshineForConditionalGeneration:()=>Tg,MoonshineModel:()=>Mg,MoonshinePreTrainedModel:()=>ca,MoonshineProcessor:()=>ef,MptForCausalLM:()=>Lg,MptModel:()=>zg,MptPreTrainedModel:()=>ua,MultiModalityCausalLM:()=>Rg,MultiModalityPreTrainedModel:()=>mc,MusicgenForCausalLM:()=>Ug,MusicgenForConditionalGeneration:()=>fa,MusicgenModel:()=>Dg,MusicgenPreTrainedModel:()=>da,NanoChatForCausalLM:()=>Fg,NanoChatModel:()=>Bg,NanoChatPreTrainedModel:()=>ma,NeoBertForMaskedLM:()=>Gg,NeoBertForQuestionAnswering:()=>Vg,NeoBertForSequenceClassification:()=>qg,NeoBertForTokenClassification:()=>Wg,NeoBertModel:()=>jg,NeoBertPreTrainedModel:()=>Ur,NllbTokenizer:()=>Sp,NoBadWordsLogitsProcessor:()=>Ll,NoRepeatNGramLogitsProcessor:()=>Il,NomicBertModel:()=>Hg,NomicBertPreTrainedModel:()=>hc,NougatImageProcessor:()=>Cd,NougatTokenizer:()=>Op,OPTForCausalLM:()=>sw,OPTModel:()=>rw,OPTPreTrainedModel:()=>xa,ObjectDetectionPipeline:()=>ki,Olmo2ForCausalLM:()=>Qg,Olmo2Model:()=>Yg,Olmo2PreTrainedModel:()=>_a,Olmo3ForCausalLM:()=>Zg,Olmo3Model:()=>Jg,Olmo3PreTrainedModel:()=>ga,OlmoForCausalLM:()=>Kg,OlmoModel:()=>Xg,OlmoPreTrainedModel:()=>ha,OpenELMForCausalLM:()=>tw,OpenELMModel:()=>ew,OpenELMPreTrainedModel:()=>wa,OwlViTFeatureExtractor:()=>Pd,OwlViTForObjectDetection:()=>iw,OwlViTImageProcessor:()=>qs,OwlViTModel:()=>aw,OwlViTPreTrainedModel:()=>ba,OwlViTProcessor:()=>tf,Owlv2ForObjectDetection:()=>ow,Owlv2ImageProcessor:()=>zd,Owlv2Model:()=>nw,Owlv2PreTrainedModel:()=>ya,PaliGemmaForConditionalGeneration:()=>lw,PaliGemmaPreTrainedModel:()=>_c,PaliGemmaProcessor:()=>rf,ParakeetFeatureExtractor:()=>Yp,ParakeetForCTC:()=>cw,ParakeetPreTrainedModel:()=>gc,PatchTSMixerForPrediction:()=>pw,PatchTSMixerModel:()=>uw,PatchTSMixerPreTrainedModel:()=>va,PatchTSTForPrediction:()=>fw,PatchTSTModel:()=>dw,PatchTSTPreTrainedModel:()=>ka,Phi3ForCausalLM:()=>gw,Phi3Model:()=>_w,Phi3PreTrainedModel:()=>Aa,Phi3VForCausalLM:()=>Ma,Phi3VImageProcessor:()=>Ld,Phi3VPreTrainedModel:()=>wc,Phi3VProcessor:()=>sf,PhiForCausalLM:()=>hw,PhiModel:()=>mw,PhiPreTrainedModel:()=>Ea,PixtralImageProcessor:()=>Nd,PixtralProcessor:()=>nf,PreTrainedModel:()=>y,PreTrainedTokenizer:()=>q,PretrainedConfig:()=>Ml,Processor:()=>oe,PvtForImageClassification:()=>xw,PvtImageProcessor:()=>$d,PvtModel:()=>ww,PvtPreTrainedModel:()=>Ta,PyAnnoteFeatureExtractor:()=>Un,PyAnnoteForAudioFrameClassification:()=>bw,PyAnnoteModel:()=>yw,PyAnnotePreTrainedModel:()=>Sa,PyAnnoteProcessor:()=>of,QuestionAnsweringPipeline:()=>ci,Qwen2ForCausalLM:()=>kw,Qwen2Model:()=>vw,Qwen2PreTrainedModel:()=>Oa,Qwen2Tokenizer:()=>Ip,Qwen2VLForConditionalGeneration:()=>Ia,Qwen2VLImageProcessor:()=>Rd,Qwen2VLPreTrainedModel:()=>xc,Qwen2VLProcessor:()=>qn,Qwen2_5_VLForConditionalGeneration:()=>Ca,Qwen2_5_VLProcessor:()=>Wn,Qwen3ForCausalLM:()=>Aw,Qwen3Model:()=>Ew,Qwen3PreTrainedModel:()=>Pa,Qwen3VLForConditionalGeneration:()=>za,Qwen3VLProcessor:()=>af,Qwen3_5ForConditionalGeneration:()=>La,Qwen3_5MoeForConditionalGeneration:()=>Mw,RFDetrForObjectDetection:()=>Iw,RFDetrModel:()=>Ow,RFDetrObjectDetectionOutput:()=>yc,RFDetrPreTrainedModel:()=>$a,RTDetrForObjectDetection:()=>Mm,RTDetrImageProcessor:()=>Dd,RTDetrModel:()=>Am,RTDetrObjectDetectionOutput:()=>or,RTDetrPreTrainedModel:()=>ho,RTDetrV2ForObjectDetection:()=>jw,RTDetrV2Model:()=>Fw,RTDetrV2ObjectDetectionOutput:()=>bc,RTDetrV2PreTrainedModel:()=>Ra,RawAudio:()=>$n,RawImage:()=>Ke,RawVideo:()=>au,RawVideoFrame:()=>Ci,RepetitionPenaltyLogitsProcessor:()=>Cl,ResNetForImageClassification:()=>Sw,ResNetModel:()=>Tw,ResNetPreTrainedModel:()=>Na,RoFormerForMaskedLM:()=>Rw,RoFormerForQuestionAnswering:()=>Bw,RoFormerForSequenceClassification:()=>Dw,RoFormerForTokenClassification:()=>Uw,RoFormerModel:()=>$w,RoFormerPreTrainedModel:()=>Fr,RoFormerTokenizer:()=>Pp,RobertaForMaskedLM:()=>Pw,RobertaForQuestionAnswering:()=>Nw,RobertaForSequenceClassification:()=>zw,RobertaForTokenClassification:()=>Lw,RobertaModel:()=>Cw,RobertaPreTrainedModel:()=>Br,RobertaTokenizer:()=>Cp,Sam2ImageProcessor:()=>Fn,Sam2ImageSegmentationOutput:()=>Ec,Sam2Model:()=>Da,Sam2PreTrainedModel:()=>Ac,Sam2Processor:()=>Al,Sam2VideoProcessor:()=>lf,Sam3ImageProcessor:()=>Fn,Sam3TrackerModel:()=>Ww,SamImageProcessor:()=>Fn,SamImageSegmentationOutput:()=>vc,SamModel:()=>Gw,SamPreTrainedModel:()=>kc,SamProcessor:()=>Vn,SapiensFeatureExtractor:()=>Ud,SapiensForDepthEstimation:()=>Hw,SapiensForNormalEstimation:()=>Xw,SapiensForSemanticSegmentation:()=>Vw,SapiensImageProcessor:()=>yl,SapiensPreTrainedModel:()=>ln,SeamlessM4TFeatureExtractor:()=>Qp,SegformerFeatureExtractor:()=>Bd,SegformerForImageClassification:()=>Yw,SegformerForSemanticSegmentation:()=>Qw,SegformerImageProcessor:()=>bl,SegformerModel:()=>Kw,SegformerPreTrainedModel:()=>cn,SiglipImageProcessor:()=>Fd,SiglipModel:()=>Jw,SiglipPreTrainedModel:()=>Ua,SiglipTextModel:()=>Ba,SiglipTokenizer:()=>zp,SiglipVisionModel:()=>Zw,SmolLM3ForCausalLM:()=>tx,SmolLM3Model:()=>ex,SmolLM3PreTrainedModel:()=>Fa,SmolVLMForConditionalGeneration:()=>w_,SmolVLMImageProcessor:()=>ml,SmolVLMProcessor:()=>El,SnacDecoderModel:()=>Ga,SnacEncoderModel:()=>ja,SnacFeatureExtractor:()=>Jp,SnacModel:()=>rx,SnacPreTrainedModel:()=>un,SpeechT5FeatureExtractor:()=>Zp,SpeechT5ForSpeechToText:()=>nx,SpeechT5ForTextToSpeech:()=>ox,SpeechT5HifiGan:()=>ax,SpeechT5Model:()=>sx,SpeechT5PreTrainedModel:()=>pn,SpeechT5Processor:()=>cf,SpeechT5Tokenizer:()=>Lp,SqueezeBertForMaskedLM:()=>lx,SqueezeBertForQuestionAnswering:()=>ux,SqueezeBertForSequenceClassification:()=>cx,SqueezeBertModel:()=>ix,SqueezeBertPreTrainedModel:()=>fs,SqueezeBertTokenizer:()=>Np,StableLmForCausalLM:()=>dx,StableLmModel:()=>px,StableLmPreTrainedModel:()=>qa,Starcoder2ForCausalLM:()=>mx,Starcoder2Model:()=>fx,Starcoder2PreTrainedModel:()=>Wa,StoppingCriteria:()=>Vs,StoppingCriteriaList:()=>Rl,StyleTextToSpeech2Model:()=>hx,StyleTextToSpeech2PreTrainedModel:()=>Mc,SummarizationPipeline:()=>pi,SupertonicForConditionalGeneration:()=>Va,SupertonicPreTrainedModel:()=>Tc,SuppressTokensAtBeginLogitsProcessor:()=>Ws,Swin2SRForImageSuperResolution:()=>yx,Swin2SRImageProcessor:()=>jd,Swin2SRModel:()=>xx,Swin2SRPreTrainedModel:()=>Ha,SwinForImageClassification:()=>gx,SwinForSemanticSegmentation:()=>wx,SwinModel:()=>_x,SwinPreTrainedModel:()=>dn,T5ForConditionalGeneration:()=>vx,T5Model:()=>bx,T5PreTrainedModel:()=>Xa,T5Tokenizer:()=>$p,TableTransformerForObjectDetection:()=>Ex,TableTransformerModel:()=>kx,TableTransformerObjectDetectionOutput:()=>Sc,TableTransformerPreTrainedModel:()=>Ka,TemperatureLogitsWarper:()=>$l,Tensor:()=>D,Text2TextGenerationPipeline:()=>xr,TextClassificationPipeline:()=>ii,TextGenerationPipeline:()=>fi,TextStreamer:()=>by,TextToAudioPipeline:()=>wi,TokenClassificationPipeline:()=>li,TokenizersBackend:()=>q,TopKLogitsWarper:()=>bb,TopPLogitsWarper:()=>yb,TrOCRForCausalLM:()=>Ax,TrOCRPreTrainedModel:()=>Oc,TranslationPipeline:()=>di,UltravoxModel:()=>Cc,UltravoxPreTrainedModel:()=>Ic,UltravoxProcessor:()=>uf,UniSpeechForCTC:()=>Sx,UniSpeechForSequenceClassification:()=>Ox,UniSpeechModel:()=>Tx,UniSpeechPreTrainedModel:()=>fn,UniSpeechSatForAudioFrameClassification:()=>zx,UniSpeechSatForCTC:()=>Cx,UniSpeechSatForSequenceClassification:()=>Px,UniSpeechSatModel:()=>Ix,UniSpeechSatPreTrainedModel:()=>ms,VLChatProcessor:()=>Yd,VLMImageProcessor:()=>bd,VaultGemmaForCausalLM:()=>Nx,VaultGemmaModel:()=>Lx,VaultGemmaPreTrainedModel:()=>Ya,ViTFeatureExtractor:()=>Gd,ViTForImageClassification:()=>Dx,ViTImageProcessor:()=>vl,ViTMAEModel:()=>Ux,ViTMAEPreTrainedModel:()=>Pc,ViTMSNForImageClassification:()=>Fx,ViTMSNModel:()=>Bx,ViTMSNPreTrainedModel:()=>Ja,ViTModel:()=>Rx,ViTPreTrainedModel:()=>Qa,VisionEncoderDecoderModel:()=>$x,VitMatteForImageMatting:()=>jx,VitMatteImageProcessor:()=>qd,VitMattePreTrainedModel:()=>zc,VitPoseForPoseEstimation:()=>Gx,VitPoseImageProcessor:()=>Wd,VitPosePreTrainedModel:()=>Lc,VitsModel:()=>qx,VitsModelOutput:()=>Nc,VitsPreTrainedModel:()=>$c,VitsTokenizer:()=>Rp,VoxtralForConditionalGeneration:()=>Mx,VoxtralProcessor:()=>df,Wav2Vec2BertForCTC:()=>Vx,Wav2Vec2BertForSequenceClassification:()=>Hx,Wav2Vec2BertModel:()=>Wx,Wav2Vec2BertPreTrainedModel:()=>mn,Wav2Vec2CTCTokenizer:()=>Dp,Wav2Vec2FeatureExtractor:()=>ed,Wav2Vec2ForAudioFrameClassification:()=>p_,Wav2Vec2ForCTC:()=>c_,Wav2Vec2ForSequenceClassification:()=>u_,Wav2Vec2Model:()=>l_,Wav2Vec2PreTrainedModel:()=>Ht,Wav2Vec2Processor:()=>ff,Wav2Vec2ProcessorWithLM:()=>mf,WavLMForAudioFrameClassification:()=>Jx,WavLMForCTC:()=>Kx,WavLMForSequenceClassification:()=>Yx,WavLMForXVector:()=>Qx,WavLMModel:()=>Xx,WavLMPreTrainedModel:()=>jr,WeSpeakerFeatureExtractor:()=>td,WeSpeakerResNetModel:()=>Zx,WeSpeakerResNetPreTrainedModel:()=>Dc,WhisperFeatureExtractor:()=>rd,WhisperForConditionalGeneration:()=>Uc,WhisperModel:()=>ty,WhisperPreTrainedModel:()=>Za,WhisperProcessor:()=>hf,WhisperTextStreamer:()=>Ub,WhisperTimeStampLogitsProcessor:()=>Ol,WhisperTokenizer:()=>Up,XLMForQuestionAnswering:()=>iy,XLMForSequenceClassification:()=>oy,XLMForTokenClassification:()=>ay,XLMModel:()=>sy,XLMPreTrainedModel:()=>Gr,XLMRobertaForMaskedLM:()=>cy,XLMRobertaForQuestionAnswering:()=>dy,XLMRobertaForSequenceClassification:()=>uy,XLMRobertaForTokenClassification:()=>py,XLMRobertaModel:()=>ly,XLMRobertaPreTrainedModel:()=>qr,XLMRobertaTokenizer:()=>Bp,XLMTokenizer:()=>Fp,XLMWithLMHeadModel:()=>ny,XVectorOutput:()=>Rc,YolosFeatureExtractor:()=>Vd,YolosForObjectDetection:()=>my,YolosImageProcessor:()=>kl,YolosModel:()=>fy,YolosObjectDetectionOutput:()=>Bc,YolosPreTrainedModel:()=>ei,YoutuForCausalLM:()=>_y,YoutuModel:()=>hy,YoutuPreTrainedModel:()=>ti,ZeroShotAudioClassificationPipeline:()=>_i,ZeroShotClassificationPipeline:()=>mi,ZeroShotImageClassificationPipeline:()=>vi,ZeroShotObjectDetectionPipeline:()=>Ei,cat:()=>Ee,cos_sim:()=>Gk,dot:()=>a0,env:()=>fe,full:()=>qe,full_like:()=>Pn,interpolate:()=>Ku,interpolate_4d:()=>$t,layer_norm:()=>YP,load_image:()=>HA,load_video:()=>$2,log_softmax:()=>Ou,matmul:()=>nb,mean:()=>nl,mean_pooling:()=>ob,ones:()=>st,ones_like:()=>ol,permute:()=>zA,pipeline:()=>Xz,quantize_embeddings:()=>lb,rand:()=>QP,randn:()=>ib,random:()=>ss,read_audio:()=>qp,rfft:()=>KP,slice:()=>sl,softmax:()=>Ie,stack:()=>Rt,std_mean:()=>Yu,topk:()=>Wt,zeros:()=>Qu,zeros_like:()=>Ju});module.exports=XS(Qz);var Xv=Xr(require("fs"),1),Es=Xr(require("path"),1),Kv=Xr(require("url"),1),oO={},KS="4.0.0-next.5",bn=!rk(Xv.default),Yv=!rk(Es.default),xu=typeof self<"u"&&"caches"in self,YS=typeof globalThis.Deno<"u",Zz=typeof globalThis.Bun<"u",Qv=YS&&xu&&!bn,Jv=typeof process<"u",Zv=Jv&&process?.release?.name==="node"&&!Qv,ek=typeof window<"u"&&typeof window.document<"u",tk=typeof self<"u"&&["DedicatedWorkerGlobalScope","ServiceWorkerGlobalScope","SharedWorkerGlobalScope"].includes(self.constructor?.name),QS=Zv||typeof navigator<"u"&&"gpu"in navigator,JS=typeof navigator<"u"&&"ml"in navigator,ZS=typeof crypto<"u"&&typeof crypto.getRandomValues=="function",eO=()=>{if(typeof navigator>"u")return!1;let t=navigator.userAgent,r=(navigator.vendor||"").indexOf("Apple")>-1,s=!t.match(/CriOS|FxiOS|EdgiOS|OPiOS|mercury|brave/i)&&!t.includes("Chrome")&&!t.includes("Android");return r&&s},tO=eO(),ge=Object.freeze({IS_BROWSER_ENV:ek,IS_WEBWORKER_ENV:tk,IS_WEB_CACHE_AVAILABLE:xu,IS_WEBGPU_AVAILABLE:QS,IS_WEBNN_AVAILABLE:JS,IS_SAFARI:tO,IS_PROCESS_AVAILABLE:Jv,IS_NODE_ENV:Zv,IS_FS_AVAILABLE:bn,IS_PATH_AVAILABLE:Yv,IS_CRYPTO_AVAILABLE:ZS}),Yy=bn&&Yv,yu="./";if(Yy){let t=Object(oO).url;t?yu=Es.default.dirname(Es.default.dirname(Kv.default.fileURLToPath(t))):typeof __dirname<"u"&&(yu=Es.default.dirname(__dirname))}var rO=Yy?Es.default.join(yu,"/.cache/"):null,Vv="/models/",sO=Yy?Es.default.join(yu,Vv):Vv,nO=typeof globalThis.fetch=="function"?globalThis.fetch.bind(globalThis):void 0,kt=Object.freeze({DEBUG:10,INFO:20,WARNING:30,ERROR:40,NONE:50}),Hv=kt.WARNING,fe={version:KS,backends:{onnx:{}},get logLevel(){return Hv},set logLevel(t){Hv=t,fe.backends.onnx?.setLogLevel?.(t)},allowRemoteModels:!0,remoteHost:"https://huggingface.co/",remotePathTemplate:"{model}/resolve/{revision}/",allowLocalModels:!(ek||tk||Qv),localModelPath:sO,useFS:bn,useBrowserCache:xu,useFSCache:bn,cacheDir:rO,useCustomCache:!1,customCache:null,useWasmCache:xu||bn,cacheKey:"transformers-cache",fetch:nO};function rk(t){return Object.keys(t).length===0}function Mr(t,e){t&&t(e)}function sk(t){return Number.isInteger(t)||typeof t=="bigint"}function Qy(t){return t==null||t===-1}function Jy(t){let e=[],r=t;for(;Array.isArray(r);)e.push(r.length),r=r[0];return e}function ft(...t){return Array.prototype.concat.apply([],t)}function nk(...t){return t.reduce((e,r)=>e.flatMap(s=>r.map(n=>[s,n])))}function vn(t,e){return Math.abs((t+e)%(2*e)-e)}function ot(t,e){return Object.assign({},...e.map(r=>{if(t[r]!==void 0)return{[r]:t[r]}}))}function ok(t,e){let r=0;for(let s of t)s===e&&++r;return r}var Q={error(...t){fe.logLevel<=kt.ERROR&&console.error(...t)},warn(...t){fe.logLevel<=kt.WARNING&&console.warn(...t)},info(...t){fe.logLevel<=kt.INFO&&console.log(...t)},debug(...t){fe.logLevel<=kt.DEBUG&&console.log(...t)},log(...t){this.info(...t)}};var aO=class{constructor(t){this.trie=this._build_trie(t)}_build_trie(t){let e=Object.create(null);for(let r of t){let s=e;for(let n=0;n<r.length;++n){let o=r[n];s=s[o]??=Object.create(null)}s.end=r}return e}split(t){let e=[],r=t.length,s=0,n=0;for(;n<r;){let o=this.trie,a=null,i=n;for(;i<r&&(o=o[t[i]]);)o.end&&(a=o.end),++i;a?(n>s&&e.push(t.slice(s,n)),e.push(a),n+=a.length,s=n):++n}return s<r&&e.push(t.slice(s)),e}},ak=aO,iO=class{constructor(t){this.content=t.content,this.id=t.id,this.single_word=t.single_word??!1,this.lstrip=t.lstrip??!1,this.rstrip=t.rstrip??!1,this.special=t.special??!1,this.normalized=t.normalized??!this.special}},lO=iO,fk=(()=>{let t=[...Array.from({length:94},(n,o)=>o+33),...Array.from({length:12},(n,o)=>o+161),...Array.from({length:82},(n,o)=>o+174)],e=t.slice(),r=0;for(let n=0;n<256;++n)t.includes(n)||(t.push(n),e.push(256+r),r+=1);let s=e.map(n=>String.fromCharCode(n));return Object.fromEntries(t.map((n,o)=>[n,s[o]]))})(),cO=t=>Object.fromEntries(Object.entries(t).map(([e,r])=>[r,e])),uO=cO(fk),ik=".,!?\u2026\u3002\uFF0C\u3001\u0964\u06D4\u060C",pO=new Map([["(?i:'s|'t|'re|'ve|'m|'ll|'d)","(?:'([sS]|[tT]|[rR][eE]|[vV][eE]|[mM]|[lL][lL]|[dD]))"],["(?i:[sdmt]|ll|ve|re)","(?:[sS]|[dD]|[mM]|[tT]|[lL][lL]|[vV][eE]|[rR][eE])"],["[^\\r\\n\\p{L}\\p{N}]?+","[^\\r\\n\\p{L}\\p{N}]?"],["[^\\s\\p{L}\\p{N}]++","[^\\s\\p{L}\\p{N}]+"],["(?>\\p{Nd}{510})","(?:\\p{Nd}{510})"],["\\p{Nd}{3}+","(?:\\p{Nd}{3})+"],["\\G",""],[` ?[^(\\s|[${ik}])]+`,` ?[^\\s${ik}]+`]]),bu="\\p{P}\\u0021-\\u002F\\u003A-\\u0040\\u005B-\\u0060\\u007B-\\u007E",e0=t=>t.replace(/ \./g,".").replace(/ \?/g,"?").replace(/ \!/g,"!").replace(/ ,/g,",").replace(/ \' /g,"'").replace(/ n't/g,"n't").replace(/ 'm/g,"'m").replace(/ 's/g,"'s").replace(/ 've/g,"'ve").replace(/ 're/g,"'re"),vu=(t,e=!0)=>{if(t.Regex!==void 0){let r=t.Regex.replace(/\\([#&~])/g,"$1");r=r.replace(/\\A/g,"^").replace(/\\z/g,"$").replace(/\\Z/g,"(?=\\r?\\n?$)");for(let[s,n]of pO)r=r.replaceAll(s,n);try{return new RegExp(r,"gu")}catch(s){if(!(s instanceof SyntaxError)||!s.message.toLowerCase().includes("invalid property name"))throw s;let n=!1,o=r.replace(/(\\[pP])\{([^}=]+)\}/g,(a,i,l)=>{try{return new RegExp(`\\p{${l}}`,"u"),`${i}{${l}}`}catch{return n=!0,`${i}{Script=${l}}`}});if(!n)throw s;try{return new RegExp(o,"gu")}catch{throw s}}}else if(t.String!==void 0){let r=dO(t.String);return new RegExp(e?r:`(${r})`,"gu")}else return console.warn("Unknown pattern type:",t),null},dO=t=>t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),fO=(t,e,r)=>{let s=[],n=0;for(;n<t.length;){if(s.push(t[n]),(e.get(t[n])??r)!==r){++n;continue}for(;++n<t.length&&(e.get(t[n])??r)===r;)e.get(s.at(-1))!==r&&(s[s.length-1]+=t[n])}return s},mO=t=>t>=19968&&t<=40959||t>=13312&&t<=19903||t>=131072&&t<=173791||t>=173824&&t<=177983||t>=177984&&t<=178207||t>=178208&&t<=183983||t>=63744&&t<=64255||t>=194560&&t<=195103,hO=t=>Number.isInteger(t)||typeof t=="bigint",_O=t=>{let e=0;for(let r of t)++e;return e},gO=t=>mk(t.toLowerCase()),Yt=(...t)=>Array.prototype.concat.apply([],t),t0=t=>new Map(Object.entries(t)),wO=(t,e)=>{let r=[],s=0;for(let n of t.matchAll(e)){let o=n[0];s<n.index&&r.push(t.slice(s,n.index)),o.length>0&&r.push(o),s=n.index+o.length}return s<t.length&&r.push(t.slice(s)),r},mk=t=>t.replace(/\p{M}/gu,""),lk=(t,e,r=[])=>{if(!t||Array.isArray(t)||typeof t!="object")return`${e} must be a valid object`;for(let s of r)if(!(s in t))return`${e} must contain a "${s}" property`;return null},xO=t=>t.match(/\S+/g)||[],yO=class{constructor(){let t=function(...e){return t._call(...e)};return Object.setPrototypeOf(t,new.target.prototype)}},Ri=yO,bO=class extends Ri{constructor(t){super(),this.config=t}_call(t){return this.normalize(t)}},Tr=bO,vO=class extends Tr{tokenize_chinese_chars(t){let e=[];for(let r=0;r<t.length;++r){let s=t[r],n=s.charCodeAt(0);mO(n)?(e.push(" "),e.push(s),e.push(" ")):e.push(s)}return e.join("")}strip_accents(t){return t.normalize("NFD").replace(/\p{Mn}/gu,"")}is_control(t){switch(t){case" ":case`
2
- `:case"\r":return!1;default:return/^\p{Cc}|\p{Cf}|\p{Co}|\p{Cs}$/u.test(t)}}clean_text(t){let e=[];for(let r of t){let s=r.charCodeAt(0);s===0||s===65533||this.is_control(r)||(/^\s$/.test(r)?e.push(" "):e.push(r))}return e.join("")}normalize(t){return this.config.clean_text&&(t=this.clean_text(t)),this.config.handle_chinese_chars&&(t=this.tokenize_chinese_chars(t)),this.config.lowercase?(t=t.toLowerCase(),this.config.strip_accents!==!1&&(t=this.strip_accents(t))):this.config.strip_accents&&(t=this.strip_accents(t)),t}},kO=vO,EO=class extends Tr{constructor(t){super(t),this.charsmap=t.precompiled_charsmap??null}normalize(t){return t=t.replace(/[\u0001-\u0008\u000B\u000E-\u001F\u007F\u008F\u009F]/gm,""),t=t.replace(/[\u0009\u000A\u000C\u000D\u00A0\u1680\u2000-\u200F\u2028\u2029\u202F\u205F\u2581\u3000\uFEFF\uFFFD]/gm," "),t.includes("\uFF5E")?t=t.split("\uFF5E").map(r=>r.normalize("NFKC")).join("\uFF5E"):t=t.normalize("NFKC"),t}},AO=EO,MO=class extends Tr{constructor(t){super(t),this.normalizers=(t.normalizers??[]).map(e=>hk(e))}normalize(t){return this.normalizers.reduce((e,r)=>r?r.normalize(e):e,t)}},TO=MO,SO=class extends Tr{normalize(t){let e=vu(this.config.pattern??{});return e===null?t:t.replaceAll(e,this.config.content??"")}},OO=SO,IO=class extends Tr{constructor(){super(...arguments),this.form="NFC"}normalize(t){return t=t.normalize(this.form),t}},ku=IO,CO=class extends ku{constructor(){super(...arguments),this.form="NFC"}},PO=CO,zO=class extends ku{constructor(){super(...arguments),this.form="NFD"}},LO=zO,NO=class extends ku{constructor(){super(...arguments),this.form="NFKC"}},$O=NO,RO=class extends ku{constructor(){super(...arguments),this.form="NFKD"}},DO=RO,UO=class extends Tr{normalize(t){return this.config.strip_left&&this.config.strip_right?t=t.trim():(this.config.strip_left&&(t=t.trimStart()),this.config.strip_right&&(t=t.trimEnd())),t}},BO=UO,FO=class extends Tr{normalize(t){return mk(t)}},jO=FO,GO=class extends Tr{normalize(t){return t.toLowerCase()}},qO=GO,WO=class extends Tr{normalize(t){return t=this.config.prepend+t,t}},VO=WO;function HO(t){if(t===null)return null;switch(t.type){case"BertNormalizer":return new kO(t);case"Precompiled":return new AO(t);case"Sequence":return new TO(t);case"Replace":return new OO(t);case"NFC":return new PO(t);case"NFD":return new LO(t);case"NFKC":return new $O(t);case"NFKD":return new DO(t);case"Strip":return new BO(t);case"StripAccents":return new jO(t);case"Lowercase":return new qO(t);case"Prepend":return new VO(t);default:throw new Error(`Unknown Normalizer type: ${t.type}`)}}var hk=HO,XO=class extends Ri{pre_tokenize(t,e){return(Array.isArray(t)?t.map(r=>this.pre_tokenize_text(r,e)):this.pre_tokenize_text(t,e)).flat()}_call(t,e){return this.pre_tokenize(t,e)}},Qt=XO,KO=class extends Qt{constructor(t){super(),this.config=t,this.add_prefix_space=this.config.add_prefix_space??!1,this.trim_offsets=this.config.trim_offsets??!1,this.use_regex=this.config.use_regex??!0,this.pattern=/'s|'t|'re|'ve|'m|'ll|'d| ?\p{L}+| ?\p{N}+| ?[^\s\p{L}\p{N}]+|\s+(?!\S)|\s+/gu,this.byte_encoder=fk,this.text_encoder=new TextEncoder}pre_tokenize_text(t,e){return this.add_prefix_space&&!t.startsWith(" ")&&(t=" "+t),(this.use_regex?t.match(this.pattern)||[]:[t]).map(s=>Array.from(this.text_encoder.encode(s),n=>this.byte_encoder[n]).join(""))}},YO=KO,QO=class extends Qt{pre_tokenize_text(t,e){return t.match(/\w+|[^\w\s]+/g)||[]}},JO=QO,ZO=class extends Qt{constructor(t){super(),this.replacement=t.replacement??"\u2581",this.str_rep=t.str_rep||this.replacement,this.prepend_scheme=t.prepend_scheme??"always"}pre_tokenize_text(t,e){let{section_index:r=void 0}=e??{},s=t.replaceAll(" ",this.str_rep);return!s.startsWith(this.replacement)&&(this.prepend_scheme==="always"||this.prepend_scheme==="first"&&r===0)&&(s=this.str_rep+s),[s]}},eI=ZO,tI=class extends Qt{constructor(t){super(),this.config=t,this.pattern=vu(this.config.pattern??{},this.config.invert??!0)}pre_tokenize_text(t){return this.pattern===null?[]:this.config.invert?t.match(this.pattern)||[]:this.config.behavior?.toLowerCase()==="removed"?t.split(this.pattern).filter(e=>e):wO(t,this.pattern)}},rI=tI,sI=class extends Qt{constructor(t){super(),this.config=t,this.pattern=new RegExp(`[^${bu}]+|[${bu}]+`,"gu")}pre_tokenize_text(t){return t.match(this.pattern)||[]}},nI=sI,oI=class extends Qt{constructor(t){super(),this.config=t;let e=`[^\\d]+|\\d${this.config.individual_digits?"":"+"}`;this.pattern=new RegExp(e,"gu")}pre_tokenize_text(t){return t.match(this.pattern)||[]}},aI=oI,iI=class extends Qt{constructor(){super(),this.pattern=new RegExp(`[^\\s${bu}]+|[${bu}]`,"gu")}pre_tokenize_text(t,e){return t.trim().match(this.pattern)||[]}},lI=iI,cI=class extends Qt{constructor(t){super(),this.config=t,this.pattern=vu(this.config.pattern??{}),this.content=this.config.content??""}pre_tokenize_text(t){return this.pattern===null?[t]:[t.replaceAll(this.pattern,this.config.content??"")]}},uI=cI,pI=class extends Qt{constructor(t){super(),this.tokenizers=(t.pretokenizers??[]).map(e=>_k(e))}pre_tokenize_text(t,e){return this.tokenizers.reduce((r,s)=>s?s.pre_tokenize(r,e):r,[t])}},dI=pI,fI=class extends Qt{pre_tokenize_text(t){return xO(t)}},mI=fI,hI=class extends Qt{constructor(t){super(),this.config=t,this._length=t.length}pre_tokenize_text(t){let e=[];for(let r=0;r<t.length;r+=this._length)e.push(t.slice(r,r+this._length));return e}},_I=hI;function gI(t){if(t===null)return null;switch(t.type){case"BertPreTokenizer":return new lI;case"Sequence":return new dI(t);case"Whitespace":return new JO;case"WhitespaceSplit":return new mI;case"Metaspace":return new eI(t);case"ByteLevel":return new YO(t);case"Split":return new rI(t);case"Punctuation":return new nI(t);case"Digits":return new aI(t);case"Replace":return new uI(t);case"FixedLength":return new _I(t);default:throw new Error(`Unknown PreTokenizer type: ${t.type}`)}}var _k=gI,wI=class extends Ri{constructor(t){super(),this.config=t,this.vocab=[],this.tokens_to_ids=new Map,this.unk_token_id=void 0,this.unk_token=void 0,this.end_of_word_suffix=void 0,this.fuse_unk=this.config.fuse_unk??!1}_call(t){let e=this.encode(t);return this.fuse_unk&&(e=fO(e,this.tokens_to_ids,this.unk_token_id)),e}},Eu=wI,xI=class extends Eu{constructor(t){super(t),this.max_input_chars_per_word=100,this.tokens_to_ids=t0(t.vocab),this.unk_token_id=this.tokens_to_ids.get(t.unk_token),this.unk_token=t.unk_token,this.max_input_chars_per_word=t.max_input_chars_per_word??100,this.vocab=new Array(this.tokens_to_ids.size);for(let[e,r]of this.tokens_to_ids)this.vocab[r]=e}encode(t){let e=[];for(let r of t){let s=[...r];if(s.length>this.max_input_chars_per_word){e.push(this.unk_token);continue}let n=!1,o=0,a=[];for(;o<s.length;){let i=s.length,l=null;for(;o<i;){let u=s.slice(o,i).join("");if(o>0&&(u=this.config.continuing_subword_prefix+u),this.tokens_to_ids.has(u)){l=u;break}--i}if(l===null){n=!0;break}a.push(l),o=i}n?e.push(this.unk_token):e.push(...a)}return e}},ck=xI,uk=class gk{constructor(e,r){this.is_leaf=e,this.children=r}static default(){return new gk(!1,new Map)}},yI=class{constructor(){this.root=uk.default()}extend(t){for(let e of t)this.push(e)}push(t){let e=this.root;for(let r of t){let s=e.children.get(r);s===void 0&&(s=uk.default(),e.children.set(r,s)),e=s}e.is_leaf=!0}*common_prefix_search(t){let e=this.root;if(e===void 0)return;let r="";for(let s of t){if(r+=s,e=e.children.get(s),e===void 0)return;e.is_leaf&&(yield r)}}},bI=yI,Zy=class wk{constructor(e,r,s,n,o){this.token_id=e,this.node_id=r,this.pos=s,this.length=n,this.score=o,this.prev=null,this.backtrace_score=0}clone(){let e=new wk(this.token_id,this.node_id,this.pos,this.length,this.score);return e.prev=this.prev,e.backtrace_score=this.backtrace_score,e}},vI=class{constructor(t,e,r){this.chars=Array.from(t),this.len=this.chars.length,this.bos_token_id=e,this.eos_token_id=r,this.nodes=[],this.begin_nodes=Array.from({length:this.len+1},()=>[]),this.end_nodes=Array.from({length:this.len+1},()=>[]);let s=new Zy(this.bos_token_id??0,0,0,0,0),n=new Zy(this.eos_token_id??0,1,this.len,0,0);this.nodes.push(s.clone()),this.nodes.push(n.clone()),this.begin_nodes[this.len].push(n),this.end_nodes[0].push(s)}insert(t,e,r,s){let n=this.nodes.length,o=new Zy(s,n,t,e,r);this.begin_nodes[t].push(o),this.end_nodes[t+e].push(o),this.nodes.push(o)}viterbi(){let t=this.len,e=0;for(;e<=t;){if(this.begin_nodes[e].length==0)return[];for(let a of this.begin_nodes[e]){a.prev=null;let i=0,l=null;for(let u of this.end_nodes[e]){let p=u.backtrace_score+a.score;(l===null||p>i)&&(l=u.clone(),i=p)}if(l!==null)a.prev=l,a.backtrace_score=i;else return[]}++e}let r=[],n=this.begin_nodes[t][0].prev;if(n===null)return[];let o=n.clone();for(;o.prev!==null;)r.push(o.clone()),o=o.clone().prev.clone();return r.reverse(),r}piece(t){return this.chars.slice(t.pos,t.pos+t.length).join("")}tokens(){return this.viterbi().map(e=>this.piece(e))}token_ids(){return this.viterbi().map(e=>e.token_id)}},kI=vI;function EI(t){if(t.length===0)throw new Error("Array must not be empty");let e=t[0],r=0;for(let s=1;s<t.length;++s)t[s]<e&&(e=t[s],r=s);return[e,r]}var AI=class extends Eu{constructor(t,e){super(t);let r=t.vocab.length;this.vocab=new Array(r),this.scores=new Array(r);for(let s=0;s<r;++s)[this.vocab[s],this.scores[s]]=t.vocab[s];this.unk_token_id=t.unk_id,this.unk_token=this.vocab[t.unk_id],this.tokens_to_ids=new Map(this.vocab.map((s,n)=>[s,n])),this.bos_token=" ",this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=e,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.unk_token=this.vocab[this.unk_token_id],this.min_score=EI(this.scores)[0],this.unk_score=this.min_score-10,this.scores[this.unk_token_id]=this.unk_score,this.trie=new bI,this.trie.extend(this.vocab),this.fuse_unk=!0}populate_nodes(t){let e=t.chars,r=1,s=0;for(;s<e.length;){let n=!1,o=[],a=e.slice(s).join(""),i=this.trie.common_prefix_search(a);for(let l of i){o.push(l);let u=this.tokens_to_ids.get(l),p=this.scores[u],f=_O(l);t.insert(s,f,p,u),!n&&f===r&&(n=!0)}n||t.insert(s,r,this.unk_score,this.unk_token_id),s+=r}}tokenize(t){let e=new kI(t,this.bos_token_id,this.eos_token_id);return this.populate_nodes(e),e.tokens()}encode(t){let e=[];for(let r of t){let s=this.tokenize(r);e.push(...s)}return e}},pk=AI,MI=class{constructor(t=(r,s)=>r>s,e=1/0){this._heap=[],this._comparator=t,this._max_size=e}get size(){return this._heap.length}is_empty(){return this.size===0}peek(){return this._heap[0]}push(...t){return this.extend(t)}extend(t){for(let e of t)if(this.size<this._max_size)this._heap.push(e),this._sift_up();else{let r=this._smallest();this._comparator(e,this._heap[r])&&(this._heap[r]=e,this._sift_up_from(r))}return this.size}pop(){let t=this.peek(),e=this.size-1;return e>0&&this._swap(0,e),this._heap.pop(),this._sift_down(),t}replace(t){let e=this.peek();return this._heap[0]=t,this._sift_down(),e}_parent(t){return(t+1>>>1)-1}_left(t){return(t<<1)+1}_right(t){return t+1<<1}_greater(t,e){return this._comparator(this._heap[t],this._heap[e])}_swap(t,e){let r=this._heap[t];this._heap[t]=this._heap[e],this._heap[e]=r}_sift_up(){this._sift_up_from(this.size-1)}_sift_up_from(t){for(;t>0&&this._greater(t,this._parent(t));)this._swap(t,this._parent(t)),t=this._parent(t)}_sift_down(){let t=0;for(;this._left(t)<this.size&&this._greater(this._left(t),t)||this._right(t)<this.size&&this._greater(this._right(t),t);){let e=this._right(t)<this.size&&this._greater(this._right(t),this._left(t))?this._right(t):this._left(t);this._swap(t,e),t=e}}_smallest(){return 2**Math.floor(Math.log2(this.size))-1}},TI=MI,SI=class{constructor(t){this.capacity=t,this.cache=new Map}get(t){if(!this.cache.has(t))return;let e=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,e),e}put(t,e){this.cache.has(t)&&this.cache.delete(t),this.cache.set(t,e),this.cache.size>this.capacity&&this.cache.delete(this.cache.keys().next().value)}clear(){this.cache.clear()}},OI=SI,II=class extends Eu{constructor(t){super(t),this.tokens_to_ids=t0(t.vocab),this.unk_token_id=this.tokens_to_ids.get(t.unk_token),this.unk_token=t.unk_token,this.vocab=new Array(this.tokens_to_ids.size);for(let[r,s]of this.tokens_to_ids)this.vocab[s]=r;let e=Array.isArray(t.merges[0]);this.merges=e?t.merges:t.merges.map(r=>r.split(" ",2)),this.bpe_ranks=new Map(this.merges.map((r,s)=>[JSON.stringify(r),s])),this.end_of_word_suffix=t.end_of_word_suffix,this.continuing_subword_suffix=t.continuing_subword_suffix??null,this.byte_fallback=this.config.byte_fallback??!1,this.byte_fallback&&(this.text_encoder=new TextEncoder),this.ignore_merges=this.config.ignore_merges??!1,this.max_length_to_cache=256,this.cache_capacity=1e4,this.cache=new OI(this.cache_capacity)}clear_cache(){this.cache.clear()}bpe(t){if(t.length===0)return[];let e=this.cache.get(t);if(e!==void 0)return e;let r=Array.from(t);this.end_of_word_suffix&&(r[r.length-1]+=this.end_of_word_suffix);let s=[];if(r.length>1){let n=new TI((i,l)=>i.score<l.score),o={token:r[0],bias:0,prev:null,next:null},a=o;for(let i=1;i<r.length;++i){let l={bias:i/r.length,token:r[i],prev:a,next:null};a.next=l,this.add_node(n,a),a=l}for(;!n.is_empty();){let i=n.pop();if(i.deleted||!i.next||i.next.deleted)continue;if(i.deleted=!0,i.next.deleted=!0,i.prev){let u={...i.prev};i.prev.deleted=!0,i.prev=u,u.prev?u.prev.next=u:o=u}let l={token:i.token+i.next.token,bias:i.bias,prev:i.prev,next:i.next.next};l.prev?(l.prev.next=l,this.add_node(n,l.prev)):o=l,l.next&&(l.next.prev=l,this.add_node(n,l))}for(let i=o;i!==null;i=i.next)s.push(i.token)}else s=r;if(this.continuing_subword_suffix)for(let n=0;n<s.length-1;++n)s[n]+=this.continuing_subword_suffix;return t.length<this.max_length_to_cache&&this.cache.put(t,s),s}add_node(t,e){let r=this.bpe_ranks.get(JSON.stringify([e.token,e.next.token]));r!==void 0&&(e.score=r+e.bias,t.push(e))}encode(t){let e=[];for(let r of t){if(this.ignore_merges&&this.tokens_to_ids.has(r)){e.push(r);continue}let s=this.bpe(r);for(let n of s)if(this.tokens_to_ids.has(n))e.push(n);else if(this.byte_fallback){let o=Array.from(this.text_encoder.encode(n)).map(a=>`<0x${a.toString(16).toUpperCase().padStart(2,"0")}>`);o.every(a=>this.tokens_to_ids.has(a))?e.push(...o):e.push(this.unk_token)}else e.push(this.unk_token)}return e}},dk=II,CI=class extends Eu{constructor(t,e){super(t);let r=t.vocab;this.tokens_to_ids=t0(e.target_lang?r[e.target_lang]:r),this.bos_token=e.bos_token,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=e.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.pad_token=e.pad_token,this.pad_token_id=this.tokens_to_ids.get(this.pad_token),this.unk_token=e.unk_token,this.unk_token_id=this.tokens_to_ids.get(this.unk_token),this.vocab=new Array(this.tokens_to_ids.size);for(let[s,n]of this.tokens_to_ids)this.vocab[n]=s}encode(t){return t}},PI=CI;function zI(t,e){switch(t.type){case"WordPiece":return new ck(t);case"Unigram":return new pk(t,e.eos_token);case"BPE":return new dk(t);default:if(t.vocab)return Array.isArray(t.vocab)?new pk(t,e.eos_token):Object.hasOwn(t,"continuing_subword_prefix")&&Object.hasOwn(t,"unk_token")?Object.hasOwn(t,"merges")?new dk(t):new ck(t):new PI(t,{target_lang:e.target_lang,bos_token:e.bos_token,eos_token:e.eos_token,pad_token:e.pad_token,unk_token:e.unk_token});throw new Error(`Unknown TokenizerModel type: ${t?.type}`)}}var LI=zI,NI=class extends Ri{constructor(t){super(),this.config=t}_call(t,...e){return this.post_process(t,...e)}},Di=NI,$I=class extends Di{post_process(t,e=null,r=!0){let s=e===null?this.config.single:this.config.pair,n=[],o=[];for(let a of s)"SpecialToken"in a?r&&(n.push(a.SpecialToken.id),o.push(a.SpecialToken.type_id)):"Sequence"in a&&(a.Sequence.id==="A"?(n=Yt(n,t),o=Yt(o,new Array(t.length).fill(a.Sequence.type_id))):a.Sequence.id==="B"&&(n=Yt(n,e),o=Yt(o,new Array(e.length).fill(a.Sequence.type_id))));return{tokens:n,token_type_ids:o}}},RI=$I,DI=class extends Di{post_process(t,e=null){return{tokens:t,tokens_pair:e}}},UI=DI,BI=class extends Di{constructor(t){super(t),this.sep=t.sep,this.cls=t.cls}post_process(t,e=null,r=!0){r&&(t=Yt([this.cls[0]],t,[this.sep[0]]));let s=new Array(t.length).fill(0);if(e){let n=[],o=r?[this.sep[0]]:[];t=Yt(t,n,e,o),s=Yt(s,new Array(e.length+n.length+o.length).fill(1))}return{tokens:t,token_type_ids:s}}},FI=BI,jI=class extends Di{constructor(t){super(t),this.sep=t.sep,this.cls=t.cls}post_process(t,e,r=!0){r&&(t=Yt([this.cls[0]],t,[this.sep[0]]));let s=new Array(t.length).fill(0);if(e){let n=r?[this.sep[0]]:[],o=r?[this.sep[0]]:[];t=Yt(t,n,e,o),s=Yt(s,new Array(e.length+n.length+o.length).fill(1))}return{tokens:t,token_type_ids:s}}},GI=jI,qI=class extends Di{constructor(t){super(t),this.processors=(t.processors??[]).map(e=>xk(e))}post_process(t,e=null,r=!0){let s={tokens:t,tokens_pair:e};for(let n of this.processors)s=n.post_process(s.tokens,s.tokens_pair,r);return s}},WI=qI;function VI(t){if(t===null)return null;switch(t.type){case"TemplateProcessing":return new RI(t);case"ByteLevel":return new UI(t);case"BertProcessing":return new FI(t);case"RobertaProcessing":return new GI(t);case"Sequence":return new WI(t);default:throw new Error(`Unknown PostProcessor type: ${t.type}`)}}var xk=VI,HI=class extends Ri{constructor(t){super(),this.config=t,this.added_tokens=[],this.end_of_word_suffix=null,this.trim_offsets="trim_offsets"in t?t.trim_offsets:!1}_call(t){return this.decode(t)}decode(t){return this.decode_chain(t).join("")}},Ft=HI,XI=class extends Ft{constructor(t){super(t),this.byte_decoder=uO,this.text_decoder=new TextDecoder("utf-8",{fatal:!1,ignoreBOM:!0}),this.end_of_word_suffix=null}convert_tokens_to_string(t){let e=t.join(""),r=new Uint8Array([...e].map(s=>this.byte_decoder[s]));return this.text_decoder.decode(r)}decode_chain(t){let e=[],r=[];for(let s of t)this.added_tokens.find(n=>n.content===s)!==void 0?(r.length>0&&(e.push(this.convert_tokens_to_string(r)),r=[]),e.push(s)):r.push(s);return r.length>0&&e.push(this.convert_tokens_to_string(r)),e}},KI=XI,YI=class extends Ft{constructor(t){super(t),this.cleanup=t.cleanup}decode_chain(t){return t.map((e,r)=>{if(r!==0){let s=this.config.prefix;s&&e.startsWith(s)?e=e.replace(s,""):e=" "+e}return this.cleanup&&(e=e0(e)),e})}},QI=YI,JI=class extends Ft{constructor(t){super(t),this.replacement=t.replacement??"\u2581"}decode_chain(t){let e=[];for(let r=0;r<t.length;++r){let s=t[r].replaceAll(this.replacement," ");r==0&&s.startsWith(" ")&&(s=s.substring(1)),e.push(s)}return e}},ZI=JI,eC=class extends Ft{constructor(t){super(t),this.suffix=t.suffix??""}decode_chain(t){return t.map((e,r)=>e.replaceAll(this.suffix,r===t.length-1?"":" "))}},tC=eC,rC=class extends Ft{constructor(t){super(t),this.pad_token=t.pad_token??"",this.word_delimiter_token=t.word_delimiter_token??"",this.cleanup=t.cleanup}convert_tokens_to_string(t){if(t.length===0)return"";let e=[t[0]];for(let n=1;n<t.length;++n)t[n]!==e.at(-1)&&e.push(t[n]);let s=e.filter(n=>n!==this.pad_token).join("");return this.cleanup&&(s=e0(s).replaceAll(this.word_delimiter_token," ").trim()),s}decode_chain(t){return[this.convert_tokens_to_string(t)]}},sC=rC,nC=class extends Ft{constructor(t){super(t),this.decoders=(t.decoders??[]).map(e=>yk(e))}decode_chain(t){return this.decoders.reduce((e,r)=>r.decode_chain(e),t)}},oC=nC,aC=class extends Ft{decode_chain(t){let e=vu(this.config.pattern),r=this.config.content??"";return e===null?t:t.map(s=>s.replaceAll(e,r))}},iC=aC,lC=class extends Ft{decode_chain(t){return[t.join("")]}},cC=lC,uC=class extends Ft{constructor(t){super(t),this.content=t.content??"",this.start=t.start??0,this.stop=t.stop??0}decode_chain(t){return t.map(e=>{let r=0;for(let n=0;n<this.start&&e[n]===this.content;++n){r=n+1;continue}let s=e.length;for(let n=0;n<this.stop;++n){let o=e.length-n-1;if(e[o]===this.content){s=o;continue}else break}return e.slice(r,s)})}},pC=uC,dC=class extends Ft{constructor(t){super(t),this.text_decoder=new TextDecoder}decode_chain(t){let e=[],r=[];for(let s of t){let n=null;if(s.length===6&&s.startsWith("<0x")&&s.endsWith(">")){let o=parseInt(s.slice(3,5),16);isNaN(o)||(n=o)}if(n!==null)r.push(n);else{if(r.length>0){let o=this.text_decoder.decode(Uint8Array.from(r));e.push(o),r=[]}e.push(s)}}if(r.length>0){let s=this.text_decoder.decode(Uint8Array.from(r));e.push(s),r=[]}return e}},fC=dC;function mC(t){if(t===null)return null;switch(t.type){case"ByteLevel":return new KI(t);case"WordPiece":return new QI(t);case"Metaspace":return new ZI(t);case"BPEDecoder":return new tC(t);case"CTC":return new sC(t);case"Sequence":return new oC(t);case"Replace":return new iC(t);case"Fuse":return new cC(t);case"Strip":return new pC(t);case"ByteFallback":return new fC(t);default:throw new Error(`Unknown Decoder type: ${t.type}`)}}var yk=mC,hC=class{constructor(t,e){let r=lk(t,"Tokenizer",["model","decoder","post_processor","pre_tokenizer","normalizer"]);if(r)throw new Error(r);let s=lk(e,"Config");if(s)throw new Error(s);this.tokenizer=t,this.config=e,this.normalizer=hk(this.tokenizer.normalizer),this.pre_tokenizer=_k(this.tokenizer.pre_tokenizer),this.model=LI(this.tokenizer.model,this.config),this.post_processor=xk(this.tokenizer.post_processor),this.decoder=yk(this.tokenizer.decoder),this.special_tokens=[],this.all_special_ids=[],this.added_tokens=[];let n=[],o=[];this.added_tokens_map=new Map;for(let a of this.tokenizer.added_tokens){let i=new lO(a);if(this.added_tokens.push(i),this.model.tokens_to_ids.set(i.content,i.id),this.model.vocab[i.id]=i.content,i.special&&(this.special_tokens.push(i.content),this.all_special_ids.push(i.id)),this.added_tokens_map.set(i.content,i),i.normalized&&this.normalizer!==null){let l=this.normalizer(i.content);o.push(l),this.added_tokens_map.set(l,i)}else n.push(i.content)}(this.config.additional_special_tokens??[]).forEach(a=>{this.special_tokens.includes(a)||this.special_tokens.push(a)}),this.decoder&&(this.decoder.added_tokens=this.added_tokens,this.decoder.end_of_word_suffix=this.model.end_of_word_suffix),this.splitter_unnormalized=new ak(n),this.splitter_normalized=new ak(o),this.remove_space=this.config.remove_space,this.clean_up_tokenization_spaces=this.config.clean_up_tokenization_spaces??!0,this.do_lowercase_and_remove_accent=this.config.do_lowercase_and_remove_accent??!1}encode(t,{text_pair:e=null,add_special_tokens:r=!0,return_token_type_ids:s=null}={}){let{tokens:n,token_type_ids:o}=this.tokenize_helper(t,{text_pair:e,add_special_tokens:r}),a=n.map(l=>this.added_tokens_map.get(l)?.id??this.model.tokens_to_ids.get(l)??this.model.unk_token_id),i={ids:a,tokens:n,attention_mask:new Array(a.length).fill(1)};return s&&o&&(i.token_type_ids=o),i}decode(t,e={}){if(!Array.isArray(t)||t.length===0||!hO(t[0]))throw Error("token_ids must be a non-empty array of integers.");let r=t.map(n=>this.model.vocab[Number(n)]??this.model.unk_token);e.skip_special_tokens&&(r=r.filter(n=>!this.special_tokens.includes(n)));let s=this.decoder?this.decoder(r):r.join(" ");return this.decoder&&this.decoder.end_of_word_suffix&&(s=s.replaceAll(this.decoder.end_of_word_suffix," "),e.skip_special_tokens&&(s=s.trim())),(e.clean_up_tokenization_spaces??this.clean_up_tokenization_spaces)&&(s=e0(s)),s}tokenize(t,{text_pair:e=null,add_special_tokens:r=!1}={}){return this.tokenize_helper(t,{text_pair:e,add_special_tokens:r}).tokens}encode_text(t){if(t===null)return null;let e=this.splitter_unnormalized.split(t);return e.forEach((r,s)=>{let n=this.added_tokens_map.get(r);n&&(n.lstrip&&s>0&&(e[s-1]=e[s-1].trimEnd()),n.rstrip&&s<e.length-1&&(e[s+1]=e[s+1].trimStart()))}),e.flatMap((r,s)=>{if(r.length===0)return[];if(this.added_tokens_map.has(r))return[r];if(this.remove_space===!0&&(r=r.trim().split(/\s+/).join(" ")),this.do_lowercase_and_remove_accent&&(r=gO(r)),this.normalizer!==null&&(r=this.normalizer(r)),r.length===0)return[];let n=this.splitter_normalized.split(r);return n.forEach((o,a)=>{let i=this.added_tokens_map.get(o);i&&(i.lstrip&&a>0&&(n[a-1]=n[a-1].trimEnd()),i.rstrip&&a<n.length-1&&(n[a+1]=n[a+1].trimStart()))}),n.flatMap(o=>{if(o.length===0)return[];if(this.added_tokens_map.has(o))return[o];let a=this.pre_tokenizer!==null?this.pre_tokenizer(o,{section_index:s}):[o];return this.model(a)})})}tokenize_helper(t,{text_pair:e=null,add_special_tokens:r=!0}){let s=this.encode_text(t),n=this.encode_text(e||null);return this.post_processor?this.post_processor(s,n,r):{tokens:Yt(s??[],n??[])}}token_to_id(t){return this.model.tokens_to_ids.get(t)}id_to_token(t){return this.model.vocab[t]}get_added_tokens_decoder(){let t=new Map;for(let e of this.added_tokens)t.set(e.id,e);return t}get_vocab(t=!0){let e=new Map;for(let r=0;r<this.model.vocab.length;++r){let s=this.model.vocab[r];(t||!this.added_tokens_map.has(s))&&e.set(s,r)}return e}},bk=hC;var $=Object.freeze({Text:"Text",NumericLiteral:"NumericLiteral",StringLiteral:"StringLiteral",Identifier:"Identifier",Equals:"Equals",OpenParen:"OpenParen",CloseParen:"CloseParen",OpenStatement:"OpenStatement",CloseStatement:"CloseStatement",OpenExpression:"OpenExpression",CloseExpression:"CloseExpression",OpenSquareBracket:"OpenSquareBracket",CloseSquareBracket:"CloseSquareBracket",OpenCurlyBracket:"OpenCurlyBracket",CloseCurlyBracket:"CloseCurlyBracket",Comma:"Comma",Dot:"Dot",Colon:"Colon",Pipe:"Pipe",CallOperator:"CallOperator",AdditiveBinaryOperator:"AdditiveBinaryOperator",MultiplicativeBinaryOperator:"MultiplicativeBinaryOperator",ComparisonBinaryOperator:"ComparisonBinaryOperator",UnaryOperator:"UnaryOperator",Comment:"Comment"}),jt=class{constructor(t,e){this.value=t,this.type=e}};function vk(t){return/\w/.test(t)}function Ui(t){return/[0-9]/.test(t)}function kk(t){return/\s/.test(t)}var _C=[["{%",$.OpenStatement],["%}",$.CloseStatement],["{{",$.OpenExpression],["}}",$.CloseExpression],["(",$.OpenParen],[")",$.CloseParen],["{",$.OpenCurlyBracket],["}",$.CloseCurlyBracket],["[",$.OpenSquareBracket],["]",$.CloseSquareBracket],[",",$.Comma],[".",$.Dot],[":",$.Colon],["|",$.Pipe],["<=",$.ComparisonBinaryOperator],[">=",$.ComparisonBinaryOperator],["==",$.ComparisonBinaryOperator],["!=",$.ComparisonBinaryOperator],["<",$.ComparisonBinaryOperator],[">",$.ComparisonBinaryOperator],["+",$.AdditiveBinaryOperator],["-",$.AdditiveBinaryOperator],["~",$.AdditiveBinaryOperator],["*",$.MultiplicativeBinaryOperator],["/",$.MultiplicativeBinaryOperator],["%",$.MultiplicativeBinaryOperator],["=",$.Equals]],gC=new Map([["n",`
3
- `],["t"," "],["r","\r"],["b","\b"],["f","\f"],["v","\v"],["'","'"],['"','"'],["\\","\\"]]);function wC(t,e={}){return t.endsWith(`
4
- `)&&(t=t.slice(0,-1)),e.lstrip_blocks&&(t=t.replace(/^[ \t]*({[#%-])/gm,"$1")),e.trim_blocks&&(t=t.replace(/([#%-]})\n/g,"$1")),t.replace(/{%\s*(end)?generation\s*%}/gs,"")}function xC(t,e={}){let r=[],s=wC(t,e),n=0,o=0,a=u=>{let p="";for(;u(s[n]);){if(s[n]==="\\"){if(++n,n>=s.length)throw new SyntaxError("Unexpected end of input");let f=s[n++],m=gC.get(f);if(m===void 0)throw new SyntaxError(`Unexpected escaped character: ${f}`);p+=m;continue}if(p+=s[n++],n>=s.length)throw new SyntaxError("Unexpected end of input")}return p},i=()=>{let u=r.at(-1);u&&u.type===$.Text&&(u.value=u.value.trimEnd(),u.value===""&&r.pop())},l=()=>{for(;n<s.length&&kk(s[n]);)++n};e:for(;n<s.length;){let u=r.at(-1)?.type;if(u===void 0||u===$.CloseStatement||u===$.CloseExpression||u===$.Comment){let f="";for(;n<s.length&&!(s[n]==="{"&&(s[n+1]==="%"||s[n+1]==="{"||s[n+1]==="#"));)f+=s[n++];if(f.length>0){r.push(new jt(f,$.Text));continue}}if(s[n]==="{"&&s[n+1]==="#"){n+=2;let f=s[n]==="-";f&&++n;let m="";for(;s[n]!=="#"||s[n+1]!=="}";){if(n+2>=s.length)throw new SyntaxError("Missing end of comment tag");m+=s[n++]}let h=m.endsWith("-");h&&(m=m.slice(0,-1)),f&&i(),r.push(new jt(m,$.Comment)),n+=2,h&&l();continue}if(s.slice(n,n+3)==="{%-"){i(),r.push(new jt("{%",$.OpenStatement)),n+=3;continue}if(s.slice(n,n+3)==="{{-"){i(),r.push(new jt("{{",$.OpenExpression)),o=0,n+=3;continue}if(a(kk),s.slice(n,n+3)==="-%}"){r.push(new jt("%}",$.CloseStatement)),n+=3,l();continue}if(s.slice(n,n+3)==="-}}"){r.push(new jt("}}",$.CloseExpression)),n+=3,l();continue}let p=s[n];if(p==="-"||p==="+"){let f=r.at(-1)?.type;if(f===$.Text||f===void 0)throw new SyntaxError(`Unexpected character: ${p}`);switch(f){case $.Identifier:case $.NumericLiteral:case $.StringLiteral:case $.CloseParen:case $.CloseSquareBracket:break;default:{++n;let m=a(Ui);r.push(new jt(`${p}${m}`,m.length>0?$.NumericLiteral:$.UnaryOperator));continue}}}for(let[f,m]of _C){if(f==="}}"&&o>0)continue;if(s.slice(n,n+f.length)===f){r.push(new jt(f,m)),m===$.OpenExpression?o=0:m===$.OpenCurlyBracket?++o:m===$.CloseCurlyBracket&&--o,n+=f.length;continue e}}if(p==="'"||p==='"'){++n;let f=a(m=>m!==p);r.push(new jt(f,$.StringLiteral)),++n;continue}if(Ui(p)){let f=a(Ui);if(s[n]==="."&&Ui(s[n+1])){++n;let m=a(Ui);f=`${f}.${m}`}r.push(new jt(f,$.NumericLiteral));continue}if(vk(p)){let f=a(vk);r.push(new jt(f,$.Identifier));continue}throw new SyntaxError(`Unexpected character: ${p}`)}return r}var Zt=class{type="Statement"},yC=class extends Zt{constructor(t){super(),this.body=t}type="Program"},bC=class extends Zt{constructor(t,e,r){super(),this.test=t,this.body=e,this.alternate=r}type="If"},vC=class extends Zt{constructor(t,e,r,s){super(),this.loopvar=t,this.iterable=e,this.body=r,this.defaultBlock=s}type="For"},kC=class extends Zt{type="Break"},EC=class extends Zt{type="Continue"},AC=class extends Zt{constructor(t,e,r){super(),this.assignee=t,this.value=e,this.body=r}type="Set"},MC=class extends Zt{constructor(t,e,r){super(),this.name=t,this.args=e,this.body=r}type="Macro"},TC=class extends Zt{constructor(t){super(),this.value=t}type="Comment"},Pt=class extends Zt{type="Expression"},SC=class extends Pt{constructor(t,e,r){super(),this.object=t,this.property=e,this.computed=r}type="MemberExpression"},Ek=class extends Pt{constructor(t,e){super(),this.callee=t,this.args=e}type="CallExpression"},kn=class extends Pt{constructor(t){super(),this.value=t}type="Identifier"},En=class extends Pt{constructor(t){super(),this.value=t}type="Literal"},OC=class extends En{type="IntegerLiteral"},IC=class extends En{type="FloatLiteral"},Ak=class extends En{type="StringLiteral"},CC=class extends En{type="ArrayLiteral"},Mk=class extends En{type="TupleLiteral"},PC=class extends En{type="ObjectLiteral"},Bi=class extends Pt{constructor(t,e,r){super(),this.operator=t,this.left=e,this.right=r}type="BinaryExpression"},zC=class extends Pt{constructor(t,e){super(),this.operand=t,this.filter=e}type="FilterExpression"},LC=class extends Zt{constructor(t,e){super(),this.filter=t,this.body=e}type="FilterStatement"},NC=class extends Pt{constructor(t,e){super(),this.lhs=t,this.test=e}type="SelectExpression"},$C=class extends Pt{constructor(t,e,r){super(),this.operand=t,this.negate=e,this.test=r}type="TestExpression"},RC=class extends Pt{constructor(t,e){super(),this.operator=t,this.argument=e}type="UnaryExpression"},DC=class extends Pt{constructor(t=void 0,e=void 0,r=void 0){super(),this.start=t,this.stop=e,this.step=r}type="SliceExpression"},UC=class extends Pt{constructor(t,e){super(),this.key=t,this.value=e}type="KeywordArgumentExpression"},BC=class extends Pt{constructor(t){super(),this.argument=t}type="SpreadExpression"},FC=class extends Zt{constructor(t,e,r){super(),this.call=t,this.callerArgs=e,this.body=r}type="CallStatement"},jC=class extends Pt{constructor(t,e,r){super(),this.condition=t,this.trueExpr=e,this.falseExpr=r}type="Ternary"};function GC(t){let e=new yC([]),r=0;function s(I,L){let R=t[r++];if(!R||R.type!==I)throw new Error(`Parser Error: ${L}. ${R.type} !== ${I}.`);return R}function n(I){if(!l(I))throw new SyntaxError(`Expected ${I}`);++r}function o(){switch(t[r].type){case $.Comment:return new TC(t[r++].value);case $.Text:return u();case $.OpenStatement:return p();case $.OpenExpression:return f();default:throw new SyntaxError(`Unexpected token type: ${t[r].type}`)}}function a(...I){return r+I.length<=t.length&&I.every((L,R)=>L===t[r+R].type)}function i(...I){return t[r]?.type===$.OpenStatement&&t[r+1]?.type===$.Identifier&&I.includes(t[r+1]?.value)}function l(...I){return r+I.length<=t.length&&I.every((L,R)=>t[r+R].type==="Identifier"&&L===t[r+R].value)}function u(){return new Ak(s($.Text,"Expected text token").value)}function p(){if(s($.OpenStatement,"Expected opening statement token"),t[r].type!==$.Identifier)throw new SyntaxError(`Unknown statement, got ${t[r].type}`);let I=t[r].value,L;switch(I){case"set":++r,L=m();break;case"if":++r,L=h(),s($.OpenStatement,"Expected {% token"),n("endif"),s($.CloseStatement,"Expected %} token");break;case"macro":++r,L=w(),s($.OpenStatement,"Expected {% token"),n("endmacro"),s($.CloseStatement,"Expected %} token");break;case"for":++r,L=k(),s($.OpenStatement,"Expected {% token"),n("endfor"),s($.CloseStatement,"Expected %} token");break;case"call":{++r;let R=null;a($.OpenParen)&&(R=V());let te=ae();if(te.type!=="Identifier")throw new SyntaxError("Expected identifier following call statement");let pe=V();s($.CloseStatement,"Expected closing statement token");let Fe=[];for(;!i("endcall");)Fe.push(o());s($.OpenStatement,"Expected '{%'"),n("endcall"),s($.CloseStatement,"Expected closing statement token");let ze=new Ek(te,pe);L=new FC(ze,R,Fe);break}case"break":++r,s($.CloseStatement,"Expected closing statement token"),L=new kC;break;case"continue":++r,s($.CloseStatement,"Expected closing statement token"),L=new EC;break;case"filter":{++r;let R=ae();R instanceof kn&&a($.OpenParen)&&(R=H(R)),s($.CloseStatement,"Expected closing statement token");let te=[];for(;!i("endfilter");)te.push(o());s($.OpenStatement,"Expected '{%'"),n("endfilter"),s($.CloseStatement,"Expected '%}'"),L=new LC(R,te);break}default:throw new SyntaxError(`Unknown statement type: ${I}`)}return L}function f(){s($.OpenExpression,"Expected opening expression token");let I=E();return s($.CloseExpression,"Expected closing expression token"),I}function m(){let I=x(),L=null,R=[];if(a($.Equals))++r,L=x();else{for(s($.CloseStatement,"Expected %} token");!i("endset");)R.push(o());s($.OpenStatement,"Expected {% token"),n("endset")}return s($.CloseStatement,"Expected closing statement token"),new AC(I,L,R)}function h(){let I=E();s($.CloseStatement,"Expected closing statement token");let L=[],R=[];for(;!i("elif","else","endif");)L.push(o());if(i("elif")){++r,++r;let te=h();R.push(te)}else if(i("else"))for(++r,++r,s($.CloseStatement,"Expected closing statement token");!i("endif");)R.push(o());return new bC(I,L,R)}function w(){let I=ae();if(I.type!=="Identifier")throw new SyntaxError("Expected identifier following macro statement");let L=V();s($.CloseStatement,"Expected closing statement token");let R=[];for(;!i("endmacro");)R.push(o());return new MC(I,L,R)}function x(I=!1){let L=I?ae:E,R=[L()],te=a($.Comma);for(;te&&(++r,R.push(L()),!!a($.Comma)););return te?new Mk(R):R[0]}function k(){let I=x(!0);if(!(I instanceof kn||I instanceof Mk))throw new SyntaxError(`Expected identifier/tuple for the loop variable, got ${I.type} instead`);if(!l("in"))throw new SyntaxError("Expected `in` keyword following loop variable");++r;let L=E();s($.CloseStatement,"Expected closing statement token");let R=[];for(;!i("endfor","else");)R.push(o());let te=[];if(i("else"))for(++r,++r,s($.CloseStatement,"Expected closing statement token");!i("endfor");)te.push(o());return new vC(I,L,R,te)}function E(){return A()}function A(){let I=S();if(l("if")){++r;let L=S();if(l("else")){++r;let R=A();return new jC(L,I,R)}else return new NC(I,L)}return I}function S(){let I=T();for(;l("or");){let L=t[r];++r;let R=T();I=new Bi(L,I,R)}return I}function T(){let I=P();for(;l("and");){let L=t[r];++r;let R=P();I=new Bi(L,I,R)}return I}function P(){let I;for(;l("not");){let L=t[r];++r;let R=P();I=new RC(L,R)}return I??C()}function C(){let I=v();for(;;){let L;if(l("not","in"))L=new jt("not in",$.Identifier),r+=2;else if(l("in"))L=t[r++];else if(a($.ComparisonBinaryOperator))L=t[r++];else break;let R=v();I=new Bi(L,I,R)}return I}function v(){let I=U();for(;a($.AdditiveBinaryOperator);){let L=t[r];++r;let R=U();I=new Bi(L,I,R)}return I}function F(){let I=Y(ae());return a($.OpenParen)?H(I):I}function H(I){let L=new Ek(I,V());return L=Y(L),a($.OpenParen)&&(L=H(L)),L}function V(){s($.OpenParen,"Expected opening parenthesis for arguments list");let I=J();return s($.CloseParen,"Expected closing parenthesis for arguments list"),I}function J(){let I=[];for(;!a($.CloseParen);){let L;if(t[r].type===$.MultiplicativeBinaryOperator&&t[r].value==="*"){++r;let R=E();L=new BC(R)}else if(L=E(),a($.Equals)){if(++r,!(L instanceof kn))throw new SyntaxError("Expected identifier for keyword argument");let R=E();L=new UC(L,R)}I.push(L),a($.Comma)&&++r}return I}function X(){let I=[],L=!1;for(;!a($.CloseSquareBracket);)a($.Colon)?(I.push(void 0),++r,L=!0):(I.push(E()),a($.Colon)&&(++r,L=!0));if(I.length===0)throw new SyntaxError("Expected at least one argument for member/slice expression");if(L){if(I.length>3)throw new SyntaxError("Expected 0-3 arguments for slice expression");return new DC(...I)}return I[0]}function Y(I){for(;a($.Dot)||a($.OpenSquareBracket);){let L=t[r];++r;let R,te=L.type===$.OpenSquareBracket;if(te)R=X(),s($.CloseSquareBracket,"Expected closing square bracket");else if(R=ae(),R.type!=="Identifier")throw new SyntaxError("Expected identifier following dot operator");I=new SC(I,R,te)}return I}function U(){let I=z();for(;a($.MultiplicativeBinaryOperator);){let L=t[r++],R=z();I=new Bi(L,I,R)}return I}function z(){let I=ne();for(;l("is");){++r;let L=l("not");L&&++r;let R=ae();if(!(R instanceof kn))throw new SyntaxError("Expected identifier for the test");I=new $C(I,L,R)}return I}function ne(){let I=F();for(;a($.Pipe);){++r;let L=ae();if(!(L instanceof kn))throw new SyntaxError("Expected identifier for the filter");a($.OpenParen)&&(L=H(L)),I=new zC(I,L)}return I}function ae(){let I=t[r++];switch(I.type){case $.NumericLiteral:{let L=I.value;return L.includes(".")?new IC(Number(L)):new OC(Number(L))}case $.StringLiteral:{let L=I.value;for(;a($.StringLiteral);)L+=t[r++].value;return new Ak(L)}case $.Identifier:return new kn(I.value);case $.OpenParen:{let L=x();return s($.CloseParen,"Expected closing parenthesis, got ${tokens[current].type} instead."),L}case $.OpenSquareBracket:{let L=[];for(;!a($.CloseSquareBracket);)L.push(E()),a($.Comma)&&++r;return++r,new CC(L)}case $.OpenCurlyBracket:{let L=new Map;for(;!a($.CloseCurlyBracket);){let R=E();s($.Colon,"Expected colon between key and value in object literal");let te=E();L.set(R,te),a($.Comma)&&++r}return++r,new PC(L)}default:throw new SyntaxError(`Unexpected token: ${I.type}`)}}for(;r<t.length;)e.body.push(o());return e}function qC(t,e,r=1){if(e===void 0&&(e=t,t=0),r===0)throw new Error("range() step must not be zero");let s=[];if(r>0)for(let n=t;n<e;n+=r)s.push(n);else for(let n=t;n>e;n+=r)s.push(n);return s}function Tk(t,e,r,s=1){let n=Math.sign(s);n>=0?(e=(e??=0)<0?Math.max(t.length+e,0):Math.min(e,t.length),r=(r??=t.length)<0?Math.max(t.length+r,0):Math.min(r,t.length)):(e=(e??=t.length-1)<0?Math.max(t.length+e,-1):Math.min(e,t.length-1),r=(r??=-1)<-1?Math.max(t.length+r,-1):Math.min(r,t.length-1));let o=[];for(let a=e;n*a<n*r;a+=s)o.push(t[a]);return o}function WC(t){return t.replace(/\b\w/g,e=>e.toUpperCase())}function VC(t){return HC(new Date,t)}function HC(t,e){let r=new Intl.DateTimeFormat(void 0,{month:"long"}),s=new Intl.DateTimeFormat(void 0,{month:"short"}),n=o=>o<10?"0"+o:o.toString();return e.replace(/%[YmdbBHM%]/g,o=>{switch(o){case"%Y":return t.getFullYear().toString();case"%m":return n(t.getMonth()+1);case"%d":return n(t.getDate());case"%b":return s.format(t);case"%B":return r.format(t);case"%H":return n(t.getHours());case"%M":return n(t.getMinutes());case"%%":return"%";default:return o}})}function XC(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function KC(t,e,r,s){if(s===0)return t;let n=s==null||s<0?1/0:s,o=e.length===0?new RegExp("(?=)","gu"):new RegExp(XC(e),"gu");return t.replaceAll(o,a=>n>0?(--n,r):a)}var Sk=class extends Error{},Ok=class extends Error{},cr=class{type="RuntimeValue";value;builtins=new Map;constructor(t=void 0){this.value=t}__bool__(){return new ce(!!this.value)}toString(){return String(this.value)}},me=class extends cr{type="IntegerValue"},Ye=class extends cr{type="FloatValue";toString(){return this.value%1===0?this.value.toFixed(1):this.value.toString()}},ee=class extends cr{type="StringValue";builtins=new Map([["upper",new Ge(()=>new ee(this.value.toUpperCase()))],["lower",new Ge(()=>new ee(this.value.toLowerCase()))],["strip",new Ge(()=>new ee(this.value.trim()))],["title",new Ge(()=>new ee(WC(this.value)))],["capitalize",new Ge(()=>new ee(this.value.charAt(0).toUpperCase()+this.value.slice(1)))],["length",new me(this.value.length)],["rstrip",new Ge(()=>new ee(this.value.trimEnd()))],["lstrip",new Ge(()=>new ee(this.value.trimStart()))],["startswith",new Ge(t=>{if(t.length===0)throw new Error("startswith() requires at least one argument");let e=t[0];if(e instanceof ee)return new ce(this.value.startsWith(e.value));if(e instanceof ve){for(let r of e.value){if(!(r instanceof ee))throw new Error("startswith() tuple elements must be strings");if(this.value.startsWith(r.value))return new ce(!0)}return new ce(!1)}throw new Error("startswith() argument must be a string or tuple of strings")})],["endswith",new Ge(t=>{if(t.length===0)throw new Error("endswith() requires at least one argument");let e=t[0];if(e instanceof ee)return new ce(this.value.endsWith(e.value));if(e instanceof ve){for(let r of e.value){if(!(r instanceof ee))throw new Error("endswith() tuple elements must be strings");if(this.value.endsWith(r.value))return new ce(!0)}return new ce(!1)}throw new Error("endswith() argument must be a string or tuple of strings")})],["split",new Ge(t=>{let e=t[0]??new Ve;if(!(e instanceof ee||e instanceof Ve))throw new Error("sep argument must be a string or null");let r=t[1]??new me(-1);if(!(r instanceof me))throw new Error("maxsplit argument must be a number");let s=[];if(e instanceof Ve){let n=this.value.trimStart();for(let{0:o,index:a}of n.matchAll(/\S+/g)){if(r.value!==-1&&s.length>=r.value&&a!==void 0){s.push(o+n.slice(a+o.length));break}s.push(o)}}else{if(e.value==="")throw new Error("empty separator");s=this.value.split(e.value),r.value!==-1&&s.length>r.value&&s.push(s.splice(r.value).join(e.value))}return new ve(s.map(n=>new ee(n)))})],["replace",new Ge(t=>{if(t.length<2)throw new Error("replace() requires at least two arguments");let e=t[0],r=t[1];if(!(e instanceof ee&&r instanceof ee))throw new Error("replace() arguments must be strings");let s;if(t.length>2?t[2].type==="KeywordArgumentsValue"?s=t[2].value.get("count")??new Ve:s=t[2]:s=new Ve,!(s instanceof me||s instanceof Ve))throw new Error("replace() count argument must be a number or null");return new ee(KC(this.value,e.value,r.value,s.value))})]])},ce=class extends cr{type="BooleanValue"},YC=/[\x7f-\uffff]/g;function Ik(t){return t.replace(YC,e=>"\\u"+e.charCodeAt(0).toString(16).padStart(4,"0"))}function Ms(t,e={},r=0,s=!0){let{indent:n=null,ensureAscii:o=!1,separators:a=null,sortKeys:i=!1}=e,l,u;switch(a?[l,u]=a:n?(l=",",u=": "):(l=", ",u=": "),t.type){case"NullValue":return"null";case"UndefinedValue":return s?"null":"undefined";case"IntegerValue":case"FloatValue":case"BooleanValue":return JSON.stringify(t.value);case"StringValue":{let p=JSON.stringify(t.value);return o&&(p=Ik(p)),p}case"ArrayValue":case"ObjectValue":{let p=n?" ".repeat(n):"",f=`
5
- `+p.repeat(r),m=f+p;if(t.type==="ArrayValue"){let h=t.value.map(w=>Ms(w,e,r+1,s));return n?`[${m}${h.join(`${l}${m}`)}${f}]`:`[${h.join(l)}]`}else{let h=Array.from(t.value.entries());i&&(h=h.sort(([x],[k])=>x.localeCompare(k)));let w=h.map(([x,k])=>{let E=JSON.stringify(x);o&&(E=Ik(E));let A=`${E}${u}${Ms(k,e,r+1,s)}`;return n?`${m}${A}`:A});return n?`{${w.join(l)}${f}}`:`{${w.join(l)}}`}}default:throw new Error(`Cannot convert to JSON: ${t.type}`)}}var gt=class extends cr{type="ObjectValue";__bool__(){return new ce(this.value.size>0)}builtins=new Map([["get",new Ge(([t,e])=>{if(!(t instanceof ee))throw new Error(`Object key must be a string: got ${t.type}`);return this.value.get(t.value)??e??new Ve})],["items",new Ge(()=>this.items())],["keys",new Ge(()=>this.keys())],["values",new Ge(()=>this.values())],["dictsort",new Ge(t=>{let e=new Map,r=t.filter(i=>i instanceof Fi?(e=i.value,!1):!0),s=r.at(0)??e.get("case_sensitive")??new ce(!1);if(!(s instanceof ce))throw new Error("case_sensitive must be a boolean");let n=r.at(1)??e.get("by")??new ee("key");if(!(n instanceof ee))throw new Error("by must be a string");if(!["key","value"].includes(n.value))throw new Error("by must be either 'key' or 'value'");let o=r.at(2)??e.get("reverse")??new ce(!1);if(!(o instanceof ce))throw new Error("reverse must be a boolean");let a=Array.from(this.value.entries()).map(([i,l])=>new ve([new ee(i),l])).sort((i,l)=>{let u=n.value==="key"?0:1,p=i.value[u],f=l.value[u],m=r0(p,f,s.value);return o.value?-m:m});return new ve(a)})]]);items(){return new ve(Array.from(this.value.entries()).map(([t,e])=>new ve([new ee(t),e])))}keys(){return new ve(Array.from(this.value.keys()).map(t=>new ee(t)))}values(){return new ve(Array.from(this.value.values()))}toString(){return Ms(this,{},0,!1)}},Fi=class extends gt{type="KeywordArgumentsValue"},ve=class extends cr{type="ArrayValue";builtins=new Map([["length",new me(this.value.length)]]);__bool__(){return new ce(this.value.length>0)}toString(){return Ms(this,{},0,!1)}},Ck=class extends ve{type="TupleValue"},Ge=class extends cr{type="FunctionValue"},Ve=class extends cr{type="NullValue"},je=class extends cr{type="UndefinedValue"},As=class{constructor(t){this.parent=t}variables=new Map([["namespace",new Ge(t=>{if(t.length===0)return new gt(new Map);if(t.length!==1||!(t[0]instanceof gt))throw new Error("`namespace` expects either zero arguments or a single object argument");return t[0]})]]);tests=new Map([["boolean",t=>t.type==="BooleanValue"],["callable",t=>t instanceof Ge],["odd",t=>{if(!(t instanceof me))throw new Error(`cannot odd on ${t.type}`);return t.value%2!==0}],["even",t=>{if(!(t instanceof me))throw new Error(`cannot even on ${t.type}`);return t.value%2===0}],["false",t=>t.type==="BooleanValue"&&!t.value],["true",t=>t.type==="BooleanValue"&&t.value],["none",t=>t.type==="NullValue"],["string",t=>t.type==="StringValue"],["number",t=>t instanceof me||t instanceof Ye],["integer",t=>t instanceof me],["iterable",t=>t.type==="ArrayValue"||t.type==="StringValue"],["mapping",t=>t.type==="ObjectValue"],["lower",t=>{let e=t.value;return t.type==="StringValue"&&e===e.toLowerCase()}],["upper",t=>{let e=t.value;return t.type==="StringValue"&&e===e.toUpperCase()}],["none",t=>t.type==="NullValue"],["defined",t=>t.type!=="UndefinedValue"],["undefined",t=>t.type==="UndefinedValue"],["equalto",(t,e)=>t.value===e.value],["eq",(t,e)=>t.value===e.value]]);set(t,e){return this.declareVariable(t,Au(e))}declareVariable(t,e){if(this.variables.has(t))throw new SyntaxError(`Variable already declared: ${t}`);return this.variables.set(t,e),e}setVariable(t,e){return this.variables.set(t,e),e}resolve(t){if(this.variables.has(t))return this;if(this.parent)return this.parent.resolve(t);throw new Error(`Unknown variable: ${t}`)}lookupVariable(t){try{return this.resolve(t).variables.get(t)??new je}catch{return new je}}};function QC(t){t.set("false",!1),t.set("true",!0),t.set("none",null),t.set("raise_exception",e=>{throw new Error(e)}),t.set("range",qC),t.set("strftime_now",VC),t.set("True",!0),t.set("False",!1),t.set("None",null)}function Pk(t,e){let r=e.split("."),s=t;for(let n of r)if(s instanceof gt)s=s.value.get(n)??new je;else if(s instanceof ve){let o=parseInt(n,10);if(!isNaN(o)&&o>=0&&o<s.value.length)s=s.value[o];else return new je}else return new je;return s}function r0(t,e,r=!1){if(t instanceof Ve&&e instanceof Ve)return 0;if(t instanceof Ve||e instanceof Ve)throw new Error(`Cannot compare ${t.type} with ${e.type}`);if(t instanceof je&&e instanceof je)return 0;if(t instanceof je||e instanceof je)throw new Error(`Cannot compare ${t.type} with ${e.type}`);let s=o=>o instanceof me||o instanceof Ye||o instanceof ce,n=o=>o instanceof ce?o.value?1:0:o.value;if(s(t)&&s(e)){let o=n(t),a=n(e);return o<a?-1:o>a?1:0}if(t.type!==e.type)throw new Error(`Cannot compare different types: ${t.type} and ${e.type}`);if(t.type==="StringValue"){let o=t.value,a=e.value;return r||(o=o.toLowerCase(),a=a.toLowerCase()),o<a?-1:o>a?1:0}else throw new Error(`Cannot compare type: ${t.type}`)}var JC=class{global;constructor(t){this.global=t??new As}run(t){return this.evaluate(t,this.global)}evaluateBinaryExpression(t,e){let r=this.evaluate(t.left,e);switch(t.operator.value){case"and":return r.__bool__().value?this.evaluate(t.right,e):r;case"or":return r.__bool__().value?r:this.evaluate(t.right,e)}let s=this.evaluate(t.right,e);switch(t.operator.value){case"==":return new ce(r.value==s.value);case"!=":return new ce(r.value!=s.value)}if(r instanceof je||s instanceof je){if(s instanceof je&&["in","not in"].includes(t.operator.value))return new ce(t.operator.value==="not in");throw new Error(`Cannot perform operation ${t.operator.value} on undefined values`)}else{if(r instanceof Ve||s instanceof Ve)throw new Error("Cannot perform operation on null values");if(t.operator.value==="~")return new ee(r.value.toString()+s.value.toString());if((r instanceof me||r instanceof Ye)&&(s instanceof me||s instanceof Ye)){let n=r.value,o=s.value;switch(t.operator.value){case"+":case"-":case"*":{let a=t.operator.value==="+"?n+o:t.operator.value==="-"?n-o:n*o;return r instanceof Ye||s instanceof Ye?new Ye(a):new me(a)}case"/":return new Ye(n/o);case"%":{let a=n%o;return r instanceof Ye||s instanceof Ye?new Ye(a):new me(a)}case"<":return new ce(n<o);case">":return new ce(n>o);case">=":return new ce(n>=o);case"<=":return new ce(n<=o)}}else if(r instanceof ve&&s instanceof ve){if(t.operator.value==="+")return new ve(r.value.concat(s.value))}else if(s instanceof ve){let n=s.value.find(o=>o.value===r.value)!==void 0;switch(t.operator.value){case"in":return new ce(n);case"not in":return new ce(!n)}}}if((r instanceof ee||s instanceof ee)&&t.operator.value==="+")return new ee(r.value.toString()+s.value.toString());if(r instanceof ee&&s instanceof ee)switch(t.operator.value){case"in":return new ce(s.value.includes(r.value));case"not in":return new ce(!s.value.includes(r.value))}if(r instanceof ee&&s instanceof gt)switch(t.operator.value){case"in":return new ce(s.value.has(r.value));case"not in":return new ce(!s.value.has(r.value))}throw new SyntaxError(`Unknown operator "${t.operator.value}" between ${r.type} and ${s.type}`)}evaluateArguments(t,e){let r=[],s=new Map;for(let n of t)if(n.type==="SpreadExpression"){let o=n,a=this.evaluate(o.argument,e);if(!(a instanceof ve))throw new Error(`Cannot unpack non-iterable type: ${a.type}`);for(let i of a.value)r.push(i)}else if(n.type==="KeywordArgumentExpression"){let o=n;s.set(o.key.value,this.evaluate(o.value,e))}else{if(s.size>0)throw new Error("Positional arguments must come before keyword arguments");r.push(this.evaluate(n,e))}return[r,s]}applyFilter(t,e,r){if(e.type==="Identifier"){let s=e;if(s.value==="tojson")return new ee(Ms(t,{}));if(t instanceof ve)switch(s.value){case"list":return t;case"first":return t.value[0];case"last":return t.value[t.value.length-1];case"length":return new me(t.value.length);case"reverse":return new ve(t.value.slice().reverse());case"sort":return new ve(t.value.slice().sort((n,o)=>r0(n,o,!1)));case"join":return new ee(t.value.map(n=>n.value).join(""));case"string":return new ee(Ms(t,{},0,!1));case"unique":{let n=new Set,o=[];for(let a of t.value)n.has(a.value)||(n.add(a.value),o.push(a));return new ve(o)}default:throw new Error(`Unknown ArrayValue filter: ${s.value}`)}else if(t instanceof ee)switch(s.value){case"length":case"upper":case"lower":case"title":case"capitalize":{let n=t.builtins.get(s.value);if(n instanceof Ge)return n.value([],r);if(n instanceof me)return n;throw new Error(`Unknown StringValue filter: ${s.value}`)}case"trim":return new ee(t.value.trim());case"indent":return new ee(t.value.split(`
1
+ var $O=Object.create;var Lu=Object.defineProperty;var RO=Object.getOwnPropertyDescriptor;var DO=Object.getOwnPropertyNames;var FO=Object.getPrototypeOf,BO=Object.prototype.hasOwnProperty;var Os=(t,e)=>{for(var r in e)Lu(t,r,{get:e[r],enumerable:!0})},Lk=(t,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of DO(e))!BO.call(t,n)&&n!==r&&Lu(t,n,{get:()=>e[n],enumerable:!(s=RO(e,n))||s.enumerable});return t};var vr=(t,e,r)=>(r=t!=null?$O(FO(t)):{},Lk(e||!t||!t.__esModule?Lu(r,"default",{value:t,enumerable:!0}):r,t)),UO=t=>Lk(Lu({},"__esModule",{value:!0}),t);var aN={};Os(aN,{ASTFeatureExtractor:()=>id,ASTForAudioClassification:()=>r_,ASTModel:()=>t_,ASTPreTrainedModel:()=>_o,AfmoeForCausalLM:()=>Jf,AfmoeModel:()=>Yf,AfmoePreTrainedModel:()=>po,AlbertForMaskedLM:()=>Xf,AlbertForQuestionAnswering:()=>Hf,AlbertForSequenceClassification:()=>Vf,AlbertModel:()=>Wf,AlbertPreTrainedModel:()=>us,AlbertTokenizer:()=>mp,ApertusForCausalLM:()=>Qf,ApertusModel:()=>Kf,ApertusPreTrainedModel:()=>uo,ArceeForCausalLM:()=>e_,ArceeModel:()=>Zf,ArceePreTrainedModel:()=>fo,AudioClassificationPipeline:()=>Pi,AutoConfig:()=>Rt,AutoFeatureExtractor:()=>Ve,AutoImageProcessor:()=>Oe,AutoModel:()=>_r,AutoModelForAudioClassification:()=>_u,AutoModelForAudioFrameClassification:()=>y1,AutoModelForAudioTextToText:()=>A1,AutoModelForCTC:()=>fu,AutoModelForCausalLM:()=>au,AutoModelForDepthEstimation:()=>gu,AutoModelForDocumentQuestionAnswering:()=>mu,AutoModelForImageClassification:()=>uu,AutoModelForImageFeatureExtraction:()=>wu,AutoModelForImageMatting:()=>b1,AutoModelForImageSegmentation:()=>vi,AutoModelForImageTextToText:()=>E1,AutoModelForImageToImage:()=>hu,AutoModelForMaskGeneration:()=>w1,AutoModelForMaskedLM:()=>iu,AutoModelForNormalEstimation:()=>v1,AutoModelForObjectDetection:()=>pu,AutoModelForPoseEstimation:()=>k1,AutoModelForQuestionAnswering:()=>lu,AutoModelForSemanticSegmentation:()=>ki,AutoModelForSeq2SeqLM:()=>En,AutoModelForSequenceClassification:()=>bi,AutoModelForSpeechSeq2Seq:()=>su,AutoModelForTextToSpectrogram:()=>nu,AutoModelForTextToWaveform:()=>ou,AutoModelForTokenClassification:()=>ru,AutoModelForUniversalSegmentation:()=>Ei,AutoModelForVision2Seq:()=>cu,AutoModelForXVector:()=>x1,AutoModelForZeroShotObjectDetection:()=>du,AutoProcessor:()=>Wl,AutoTokenizer:()=>oe,AutomaticSpeechRecognitionPipeline:()=>Ni,BackgroundRemovalPipeline:()=>Fi,BartForConditionalGeneration:()=>n_,BartForSequenceClassification:()=>o_,BartModel:()=>s_,BartPretrainedModel:()=>rn,BartTokenizer:()=>hp,BaseStreamer:()=>Zy,BeitFeatureExtractor:()=>Sd,BeitForImageClassification:()=>i_,BeitModel:()=>a_,BeitPreTrainedModel:()=>mo,BertForMaskedLM:()=>c_,BertForQuestionAnswering:()=>d_,BertForSequenceClassification:()=>u_,BertForTokenClassification:()=>p_,BertModel:()=>l_,BertPreTrainedModel:()=>Tr,BertTokenizer:()=>gp,BitImageProcessor:()=>Td,BlenderbotForConditionalGeneration:()=>__,BlenderbotModel:()=>f_,BlenderbotPreTrainedModel:()=>ho,BlenderbotSmallForConditionalGeneration:()=>h_,BlenderbotSmallModel:()=>m_,BlenderbotSmallPreTrainedModel:()=>go,BlenderbotSmallTokenizer:()=>wp,BlenderbotTokenizer:()=>xp,BloomForCausalLM:()=>w_,BloomModel:()=>g_,BloomPreTrainedModel:()=>wo,BloomTokenizer:()=>yp,CLIPFeatureExtractor:()=>Id,CLIPImageProcessor:()=>Tl,CLIPModel:()=>M_,CLIPPreTrainedModel:()=>nr,CLIPSegForImageSegmentation:()=>C_,CLIPSegModel:()=>I_,CLIPSegPreTrainedModel:()=>ko,CLIPTextModel:()=>S_,CLIPTextModelWithProjection:()=>vo,CLIPTokenizer:()=>vp,CLIPVisionModel:()=>T_,CLIPVisionModelWithProjection:()=>O_,CamembertForMaskedLM:()=>y_,CamembertForQuestionAnswering:()=>k_,CamembertForSequenceClassification:()=>b_,CamembertForTokenClassification:()=>v_,CamembertModel:()=>x_,CamembertPreTrainedModel:()=>Or,CamembertTokenizer:()=>bp,ChatterboxFeatureExtractor:()=>ld,ChatterboxModel:()=>xo,ChatterboxPreTrainedModel:()=>ac,ChatterboxProcessor:()=>bd,ChineseCLIPFeatureExtractor:()=>Od,ChineseCLIPModel:()=>E_,ChineseCLIPPreTrainedModel:()=>ic,ClapAudioModelWithProjection:()=>bo,ClapFeatureExtractor:()=>cd,ClapModel:()=>A_,ClapPreTrainedModel:()=>sn,ClapTextModelWithProjection:()=>yo,ClassifierFreeGuidanceLogitsProcessor:()=>ec,CodeGenForCausalLM:()=>P_,CodeGenModel:()=>L_,CodeGenPreTrainedModel:()=>Eo,CodeGenTokenizer:()=>Ep,CodeLlamaTokenizer:()=>kp,Cohere2ForCausalLM:()=>R_,Cohere2Model:()=>$_,Cohere2PreTrainedModel:()=>Mo,CohereForCausalLM:()=>N_,CohereModel:()=>z_,CoherePreTrainedModel:()=>Ao,CohereTokenizer:()=>Ap,ConvBertForMaskedLM:()=>F_,ConvBertForQuestionAnswering:()=>j_,ConvBertForSequenceClassification:()=>B_,ConvBertForTokenClassification:()=>U_,ConvBertModel:()=>D_,ConvBertPreTrainedModel:()=>Ir,ConvBertTokenizer:()=>Mp,ConvNextFeatureExtractor:()=>Cd,ConvNextForImageClassification:()=>q_,ConvNextImageProcessor:()=>Ol,ConvNextModel:()=>G_,ConvNextPreTrainedModel:()=>So,ConvNextV2ForImageClassification:()=>V_,ConvNextV2Model:()=>W_,ConvNextV2PreTrainedModel:()=>To,DFineForObjectDetection:()=>Q_,DFineModel:()=>K_,DFinePreTrainedModel:()=>Io,DINOv3ConvNextModel:()=>ym,DINOv3ConvNextPreTrainedModel:()=>_c,DINOv3ViTImageProcessor:()=>zd,DINOv3ViTModel:()=>bm,DINOv3ViTPreTrainedModel:()=>mc,DPTFeatureExtractor:()=>$d,DPTForDepthEstimation:()=>Om,DPTImageProcessor:()=>Ll,DPTModel:()=>Tm,DPTPreTrainedModel:()=>$o,DacDecoderModel:()=>Lo,DacDecoderOutput:()=>cc,DacEncoderModel:()=>Co,DacEncoderOutput:()=>lc,DacFeatureExtractor:()=>Xn,DacModel:()=>Y_,DacPreTrainedModel:()=>nn,DebertaForMaskedLM:()=>Z_,DebertaForQuestionAnswering:()=>rm,DebertaForSequenceClassification:()=>em,DebertaForTokenClassification:()=>tm,DebertaModel:()=>J_,DebertaPreTrainedModel:()=>Cr,DebertaTokenizer:()=>Tp,DebertaV2ForMaskedLM:()=>nm,DebertaV2ForQuestionAnswering:()=>im,DebertaV2ForSequenceClassification:()=>om,DebertaV2ForTokenClassification:()=>am,DebertaV2Model:()=>sm,DebertaV2PreTrainedModel:()=>Lr,DebertaV2Tokenizer:()=>Sp,DecisionTransformerModel:()=>lm,DecisionTransformerPreTrainedModel:()=>uc,DeiTFeatureExtractor:()=>Ld,DeiTForImageClassification:()=>um,DeiTImageProcessor:()=>Il,DeiTModel:()=>cm,DeiTPreTrainedModel:()=>Po,DepthAnythingForDepthEstimation:()=>pm,DepthAnythingPreTrainedModel:()=>pc,DepthEstimationPipeline:()=>Wi,DepthProForDepthEstimation:()=>dm,DepthProPreTrainedModel:()=>dc,DetrFeatureExtractor:()=>Pd,DetrForObjectDetection:()=>_m,DetrForSegmentation:()=>mm,DetrImageProcessor:()=>Cl,DetrModel:()=>fm,DetrObjectDetectionOutput:()=>an,DetrPreTrainedModel:()=>on,DetrSegmentationOutput:()=>fc,Dinov2ForImageClassification:()=>gm,Dinov2Model:()=>hm,Dinov2PreTrainedModel:()=>zo,Dinov2WithRegistersForImageClassification:()=>xm,Dinov2WithRegistersModel:()=>wm,Dinov2WithRegistersPreTrainedModel:()=>No,DistilBertForMaskedLM:()=>Mm,DistilBertForQuestionAnswering:()=>Am,DistilBertForSequenceClassification:()=>km,DistilBertForTokenClassification:()=>Em,DistilBertModel:()=>vm,DistilBertPreTrainedModel:()=>Pr,DistilBertTokenizer:()=>Op,DocumentQuestionAnsweringPipeline:()=>Gi,DonutFeatureExtractor:()=>Nd,DonutImageProcessor:()=>Vs,DonutSwinModel:()=>Sm,DonutSwinPreTrainedModel:()=>hc,DynamicCache:()=>ao,EdgeTamModel:()=>kx,EfficientNetForImageClassification:()=>Cm,EfficientNetImageProcessor:()=>Rd,EfficientNetModel:()=>Im,EfficientNetPreTrainedModel:()=>Ro,ElectraForMaskedLM:()=>Pm,ElectraForQuestionAnswering:()=>$m,ElectraForSequenceClassification:()=>zm,ElectraForTokenClassification:()=>Nm,ElectraModel:()=>Lm,ElectraPreTrainedModel:()=>zr,ElectraTokenizer:()=>Ip,EncodecFeatureExtractor:()=>Hn,EosTokenCriteria:()=>sc,Ernie4_5ForCausalLM:()=>Dm,Ernie4_5Model:()=>Rm,Ernie4_5PretrainedModel:()=>Do,EsmForMaskedLM:()=>Bm,EsmForSequenceClassification:()=>Um,EsmForTokenClassification:()=>jm,EsmModel:()=>Fm,EsmPreTrainedModel:()=>ps,EsmTokenizer:()=>Cp,ExaoneForCausalLM:()=>qm,ExaoneModel:()=>Gm,ExaonePreTrainedModel:()=>Fo,FalconForCausalLM:()=>Vm,FalconH1ForCausalLM:()=>Xm,FalconH1Model:()=>Hm,FalconH1PreTrainedModel:()=>Uo,FalconModel:()=>Wm,FalconPreTrainedModel:()=>Bo,FalconTokenizer:()=>Lp,FastViTForImageClassification:()=>Qm,FastViTModel:()=>Km,FastViTPreTrainedModel:()=>jo,FeatureExtractionPipeline:()=>Vi,FeatureExtractor:()=>Ae,FillMaskPipeline:()=>Ti,Florence2ForConditionalGeneration:()=>Ym,Florence2PreTrainedModel:()=>gc,Florence2Processor:()=>_f,ForcedBOSTokenLogitsProcessor:()=>Vl,ForcedEOSTokenLogitsProcessor:()=>Hl,GLPNFeatureExtractor:()=>Dd,GLPNForDepthEstimation:()=>ih,GLPNModel:()=>ah,GLPNPreTrainedModel:()=>Xo,GPT2LMHeadModel:()=>gh,GPT2Model:()=>hh,GPT2PreTrainedModel:()=>Zo,GPT2Tokenizer:()=>Np,GPTBigCodeForCausalLM:()=>ch,GPTBigCodeModel:()=>lh,GPTBigCodePreTrainedModel:()=>Ko,GPTJForCausalLM:()=>xh,GPTJModel:()=>wh,GPTJPreTrainedModel:()=>ea,GPTNeoForCausalLM:()=>ph,GPTNeoModel:()=>uh,GPTNeoPreTrainedModel:()=>Qo,GPTNeoXForCausalLM:()=>fh,GPTNeoXModel:()=>dh,GPTNeoXPreTrainedModel:()=>Yo,GPTNeoXTokenizer:()=>zp,Gemma2ForCausalLM:()=>th,Gemma2Model:()=>eh,Gemma2PreTrainedModel:()=>qo,Gemma3ForCausalLM:()=>sh,Gemma3Model:()=>rh,Gemma3PreTrainedModel:()=>Wo,Gemma3nAudioFeatureExtractor:()=>ud,Gemma3nForCausalLM:()=>Vo,Gemma3nForConditionalGeneration:()=>ln,Gemma3nPreTrainedModel:()=>wc,Gemma3nProcessor:()=>mf,GemmaForCausalLM:()=>Zm,GemmaModel:()=>Jm,GemmaPreTrainedModel:()=>Go,GemmaTokenizer:()=>Pp,GlmForCausalLM:()=>oh,GlmModel:()=>nh,GlmPreTrainedModel:()=>Ho,GptOssForCausalLM:()=>mh,GptOssModel:()=>_h,GptOssPreTrainedModel:()=>Jo,GraniteForCausalLM:()=>bh,GraniteModel:()=>yh,GraniteMoeHybridForCausalLM:()=>kh,GraniteMoeHybridModel:()=>vh,GraniteMoeHybridPreTrainedModel:()=>ra,GranitePreTrainedModel:()=>ta,GraniteSpeechFeatureExtractor:()=>pd,GraniteSpeechForConditionalGeneration:()=>Eh,GraniteSpeechProcessor:()=>hf,GroundingDinoForObjectDetection:()=>Ah,GroundingDinoImageProcessor:()=>Fd,GroundingDinoPreTrainedModel:()=>yc,GroundingDinoProcessor:()=>gf,GroupViTModel:()=>Mh,GroupViTPreTrainedModel:()=>bc,HeliumForCausalLM:()=>Th,HeliumModel:()=>Sh,HeliumPreTrainedModel:()=>sa,HerbertTokenizer:()=>$p,HieraForImageClassification:()=>Ih,HieraModel:()=>Oh,HieraPreTrainedModel:()=>na,HubertForCTC:()=>Rh,HubertForSequenceClassification:()=>Dh,HubertModel:()=>$h,HubertPreTrainedModel:()=>Nh,HunYuanDenseV1ForCausalLM:()=>Bh,HunYuanDenseV1Model:()=>Fh,HunYuanDenseV1PreTrainedModel:()=>oa,IJepaForImageClassification:()=>Wh,IJepaModel:()=>qh,IJepaPreTrainedModel:()=>aa,Idefics3ForConditionalGeneration:()=>Gh,Idefics3ImageProcessor:()=>Pl,Idefics3Processor:()=>Gl,ImageClassificationPipeline:()=>Di,ImageFeatureExtractionPipeline:()=>Hi,ImageFeatureExtractor:()=>X,ImageProcessor:()=>X,ImageSegmentationPipeline:()=>Es,ImageToImagePipeline:()=>qi,ImageToTextPipeline:()=>Ri,InterruptableStoppingCriteria:()=>i1,JAISLMHeadModel:()=>Hh,JAISModel:()=>Vh,JAISPreTrainedModel:()=>ia,JinaCLIPImageProcessor:()=>Ud,JinaCLIPModel:()=>Xh,JinaCLIPPreTrainedModel:()=>cn,JinaCLIPProcessor:()=>xf,JinaCLIPTextModel:()=>la,JinaCLIPVisionModel:()=>Kh,Lfm2ForCausalLM:()=>Yh,Lfm2Model:()=>Qh,Lfm2MoeForCausalLM:()=>Zh,Lfm2MoeModel:()=>Jh,Lfm2MoePreTrainedModel:()=>ua,Lfm2PreTrainedModel:()=>ca,Lfm2VlForConditionalGeneration:()=>eg,Lfm2VlImageProcessor:()=>jd,Lfm2VlProcessor:()=>yf,LiteWhisperForConditionalGeneration:()=>Ny,Llama4ForCausalLM:()=>sg,Llama4PreTrainedModel:()=>kc,LlamaForCausalLM:()=>rg,LlamaModel:()=>tg,LlamaPreTrainedModel:()=>pa,LlamaTokenizer:()=>Rp,LlavaForConditionalGeneration:()=>Ft,LlavaOnevisionForConditionalGeneration:()=>Ft,LlavaOnevisionImageProcessor:()=>Gd,LlavaPreTrainedModel:()=>vc,LlavaProcessor:()=>bf,LlavaQwen2ForCausalLM:()=>jh,LogLevel:()=>St,LogitsProcessor:()=>Dt,LogitsProcessorList:()=>cs,LogitsWarper:()=>no,LongT5ForConditionalGeneration:()=>og,LongT5Model:()=>ng,LongT5PreTrainedModel:()=>da,M2M100ForConditionalGeneration:()=>ig,M2M100Model:()=>ag,M2M100PreTrainedModel:()=>fa,M2M100Tokenizer:()=>Dp,MBart50Tokenizer:()=>Bp,MBartForCausalLM:()=>mg,MBartForConditionalGeneration:()=>fg,MBartForSequenceClassification:()=>_g,MBartModel:()=>dg,MBartPreTrainedModel:()=>fs,MBartTokenizer:()=>Wn,MPNetForMaskedLM:()=>Zg,MPNetForQuestionAnswering:()=>rw,MPNetForSequenceClassification:()=>ew,MPNetForTokenClassification:()=>tw,MPNetModel:()=>Jg,MPNetPreTrainedModel:()=>Nr,MPNetTokenizer:()=>Gp,MT5ForConditionalGeneration:()=>aw,MT5Model:()=>ow,MT5PreTrainedModel:()=>Aa,MarianMTModel:()=>cg,MarianModel:()=>lg,MarianPreTrainedModel:()=>_a,MarianTokenizer:()=>Fp,Mask2FormerImageProcessor:()=>Wd,MaskFormerFeatureExtractor:()=>qd,MaskFormerForInstanceSegmentation:()=>pg,MaskFormerImageProcessor:()=>Hs,MaskFormerModel:()=>ug,MaskFormerPreTrainedModel:()=>ma,MaxLengthCriteria:()=>rc,Metric3DForDepthEstimation:()=>hg,Metric3DPreTrainedModel:()=>Ec,Metric3Dv2ForDepthEstimation:()=>gg,Metric3Dv2PreTrainedModel:()=>Ac,MgpstrForSceneTextRecognition:()=>wg,MgpstrModelOutput:()=>Mc,MgpstrPreTrainedModel:()=>Sc,MgpstrProcessor:()=>vf,MgpstrTokenizer:()=>Up,MimiDecoderModel:()=>ga,MimiDecoderOutput:()=>Oc,MimiEncoderModel:()=>ha,MimiEncoderOutput:()=>Tc,MimiModel:()=>xg,MimiPreTrainedModel:()=>un,MinLengthLogitsProcessor:()=>Yl,MinNewTokensLengthLogitsProcessor:()=>Jl,MistralForCausalLM:()=>bg,MistralModel:()=>yg,MistralPreTrainedModel:()=>wa,MobileBertForMaskedLM:()=>kg,MobileBertForQuestionAnswering:()=>Ag,MobileBertForSequenceClassification:()=>Eg,MobileBertModel:()=>vg,MobileBertPreTrainedModel:()=>_s,MobileBertTokenizer:()=>jp,MobileLLMForCausalLM:()=>Sg,MobileLLMModel:()=>Mg,MobileLLMPreTrainedModel:()=>xa,MobileNetV1FeatureExtractor:()=>Vd,MobileNetV1ForImageClassification:()=>Og,MobileNetV1ForSemanticSegmentation:()=>Ig,MobileNetV1ImageProcessor:()=>zl,MobileNetV1Model:()=>Tg,MobileNetV1PreTrainedModel:()=>pn,MobileNetV2FeatureExtractor:()=>Hd,MobileNetV2ForImageClassification:()=>Lg,MobileNetV2ForSemanticSegmentation:()=>Pg,MobileNetV2ImageProcessor:()=>Nl,MobileNetV2Model:()=>Cg,MobileNetV2PreTrainedModel:()=>dn,MobileNetV3FeatureExtractor:()=>Xd,MobileNetV3ForImageClassification:()=>Ng,MobileNetV3ForSemanticSegmentation:()=>$g,MobileNetV3ImageProcessor:()=>$l,MobileNetV3Model:()=>zg,MobileNetV3PreTrainedModel:()=>fn,MobileNetV4FeatureExtractor:()=>Kd,MobileNetV4ForImageClassification:()=>Dg,MobileNetV4ForSemanticSegmentation:()=>Fg,MobileNetV4ImageProcessor:()=>Rl,MobileNetV4Model:()=>Rg,MobileNetV4PreTrainedModel:()=>_n,MobileViTFeatureExtractor:()=>Qd,MobileViTForImageClassification:()=>Ug,MobileViTImageProcessor:()=>Dl,MobileViTModel:()=>Bg,MobileViTPreTrainedModel:()=>ya,MobileViTV2ForImageClassification:()=>Gg,MobileViTV2Model:()=>jg,MobileViTV2PreTrainedModel:()=>ba,ModelRegistry:()=>r0,ModernBertDecoderForCausalLM:()=>Kg,ModernBertDecoderModel:()=>Xg,ModernBertDecoderPreTrainedModel:()=>va,ModernBertForMaskedLM:()=>Wg,ModernBertForSequenceClassification:()=>Vg,ModernBertForTokenClassification:()=>Hg,ModernBertModel:()=>qg,ModernBertPreTrainedModel:()=>ms,Moondream1ForConditionalGeneration:()=>Uh,MoonshineFeatureExtractor:()=>dd,MoonshineForConditionalGeneration:()=>Yg,MoonshineModel:()=>Qg,MoonshinePreTrainedModel:()=>ka,MoonshineProcessor:()=>kf,MptForCausalLM:()=>nw,MptModel:()=>sw,MptPreTrainedModel:()=>Ea,MultiModalityCausalLM:()=>iw,MultiModalityPreTrainedModel:()=>Ic,MusicgenForCausalLM:()=>cw,MusicgenForConditionalGeneration:()=>Sa,MusicgenModel:()=>lw,MusicgenPreTrainedModel:()=>Ma,NanoChatForCausalLM:()=>pw,NanoChatModel:()=>uw,NanoChatPreTrainedModel:()=>Ta,NeoBertForMaskedLM:()=>fw,NeoBertForQuestionAnswering:()=>hw,NeoBertForSequenceClassification:()=>_w,NeoBertForTokenClassification:()=>mw,NeoBertModel:()=>dw,NeoBertPreTrainedModel:()=>$r,NllbTokenizer:()=>qp,NoBadWordsLogitsProcessor:()=>Zl,NoRepeatNGramLogitsProcessor:()=>Kl,NomicBertModel:()=>gw,NomicBertPreTrainedModel:()=>Cc,NougatImageProcessor:()=>Yd,NougatTokenizer:()=>Wp,OPTForCausalLM:()=>Ow,OPTModel:()=>Tw,OPTPreTrainedModel:()=>za,ObjectDetectionPipeline:()=>Ui,Olmo2ForCausalLM:()=>bw,Olmo2Model:()=>yw,Olmo2PreTrainedModel:()=>Ia,Olmo3ForCausalLM:()=>kw,Olmo3Model:()=>vw,Olmo3PreTrainedModel:()=>Ca,OlmoForCausalLM:()=>xw,OlmoHybridForCausalLM:()=>Aw,OlmoHybridModel:()=>Ew,OlmoHybridPreTrainedModel:()=>La,OlmoModel:()=>ww,OlmoPreTrainedModel:()=>Oa,OpenELMForCausalLM:()=>Sw,OpenELMModel:()=>Mw,OpenELMPreTrainedModel:()=>Pa,OwlViTFeatureExtractor:()=>Jd,OwlViTForObjectDetection:()=>Pw,OwlViTImageProcessor:()=>Xs,OwlViTModel:()=>Lw,OwlViTPreTrainedModel:()=>$a,OwlViTProcessor:()=>Ef,Owlv2ForObjectDetection:()=>Cw,Owlv2ImageProcessor:()=>Zd,Owlv2Model:()=>Iw,Owlv2PreTrainedModel:()=>Na,PaliGemmaForConditionalGeneration:()=>zw,PaliGemmaProcessor:()=>Af,ParakeetFeatureExtractor:()=>fd,ParakeetForCTC:()=>Nw,ParakeetPreTrainedModel:()=>Lc,PatchTSMixerForPrediction:()=>Rw,PatchTSMixerModel:()=>$w,PatchTSMixerPreTrainedModel:()=>Ra,PatchTSTForPrediction:()=>Fw,PatchTSTModel:()=>Dw,PatchTSTPreTrainedModel:()=>Da,Phi3ForCausalLM:()=>Gw,Phi3Model:()=>jw,Phi3PreTrainedModel:()=>Ba,Phi3VForCausalLM:()=>Ua,Phi3VImageProcessor:()=>ef,Phi3VPreTrainedModel:()=>Pc,Phi3VProcessor:()=>Mf,PhiForCausalLM:()=>Uw,PhiModel:()=>Bw,PhiPreTrainedModel:()=>Fa,PixtralImageProcessor:()=>tf,PixtralProcessor:()=>Sf,PreTrainedModel:()=>y,PreTrainedTokenizer:()=>W,PretrainedConfig:()=>Ks,Processor:()=>re,PvtForImageClassification:()=>Ww,PvtImageProcessor:()=>rf,PvtModel:()=>qw,PvtPreTrainedModel:()=>ja,PyAnnoteFeatureExtractor:()=>Kn,PyAnnoteForAudioFrameClassification:()=>Hw,PyAnnoteModel:()=>Vw,PyAnnotePreTrainedModel:()=>Ga,PyAnnoteProcessor:()=>Tf,QuestionAnsweringPipeline:()=>Si,Qwen2ForCausalLM:()=>Kw,Qwen2Model:()=>Xw,Qwen2MoeForCausalLM:()=>Yw,Qwen2MoeModel:()=>Qw,Qwen2MoePreTrainedModel:()=>Wa,Qwen2PreTrainedModel:()=>qa,Qwen2Tokenizer:()=>Vp,Qwen2VLForCausalLM:()=>hs,Qwen2VLForConditionalGeneration:()=>mn,Qwen2VLImageProcessor:()=>sf,Qwen2VLPreTrainedModel:()=>zc,Qwen2VLProcessor:()=>eo,Qwen2_5_VLForCausalLM:()=>gs,Qwen2_5_VLForConditionalGeneration:()=>Va,Qwen2_5_VLProcessor:()=>to,Qwen3ForCausalLM:()=>Zw,Qwen3Model:()=>Jw,Qwen3MoeForCausalLM:()=>tx,Qwen3MoeModel:()=>ex,Qwen3MoePreTrainedModel:()=>Xa,Qwen3NextForCausalLM:()=>sx,Qwen3NextModel:()=>rx,Qwen3NextPreTrainedModel:()=>Ka,Qwen3PreTrainedModel:()=>Ha,Qwen3VLForCausalLM:()=>xs,Qwen3VLForConditionalGeneration:()=>ws,Qwen3VLMoeForCausalLM:()=>Qa,Qwen3VLMoeForConditionalGeneration:()=>nx,Qwen3VLProcessor:()=>Of,Qwen3_5ForCausalLM:()=>ys,Qwen3_5ForConditionalGeneration:()=>hn,Qwen3_5MoeForCausalLM:()=>Ya,Qwen3_5MoeForConditionalGeneration:()=>ox,RFDetrForObjectDetection:()=>cx,RFDetrModel:()=>lx,RFDetrObjectDetectionOutput:()=>Nc,RFDetrPreTrainedModel:()=>Za,RTDetrForObjectDetection:()=>X_,RTDetrImageProcessor:()=>nf,RTDetrModel:()=>H_,RTDetrObjectDetectionOutput:()=>or,RTDetrPreTrainedModel:()=>Oo,RTDetrV2ForObjectDetection:()=>bx,RTDetrV2Model:()=>yx,RTDetrV2ObjectDetectionOutput:()=>$c,RTDetrV2PreTrainedModel:()=>ei,RawAudio:()=>Vn,RawImage:()=>Qe,RawVideo:()=>yu,RawVideoFrame:()=>Ki,RepetitionPenaltyLogitsProcessor:()=>Ql,ResNetForImageClassification:()=>ix,ResNetModel:()=>ax,ResNetPreTrainedModel:()=>Ja,RoFormerForMaskedLM:()=>hx,RoFormerForQuestionAnswering:()=>xx,RoFormerForSequenceClassification:()=>gx,RoFormerForTokenClassification:()=>wx,RoFormerModel:()=>mx,RoFormerPreTrainedModel:()=>Dr,RoFormerTokenizer:()=>Xp,RobertaForMaskedLM:()=>px,RobertaForQuestionAnswering:()=>_x,RobertaForSequenceClassification:()=>dx,RobertaForTokenClassification:()=>fx,RobertaModel:()=>ux,RobertaPreTrainedModel:()=>Rr,RobertaTokenizer:()=>Hp,Sam2ImageProcessor:()=>Yn,Sam2ImageSegmentationOutput:()=>Fc,Sam2Model:()=>ti,Sam2PreTrainedModel:()=>Bc,Sam2Processor:()=>ql,Sam2VideoProcessor:()=>If,Sam3ImageProcessor:()=>Yn,Sam3TrackerModel:()=>Ex,SamImageProcessor:()=>Yn,SamImageSegmentationOutput:()=>Rc,SamModel:()=>vx,SamPreTrainedModel:()=>Dc,SamProcessor:()=>ro,SapiensFeatureExtractor:()=>of,SapiensForDepthEstimation:()=>Mx,SapiensForNormalEstimation:()=>Sx,SapiensForSemanticSegmentation:()=>Ax,SapiensImageProcessor:()=>Fl,SapiensPreTrainedModel:()=>gn,SeamlessM4TFeatureExtractor:()=>_d,SegformerFeatureExtractor:()=>af,SegformerForImageClassification:()=>Ox,SegformerForSemanticSegmentation:()=>Ix,SegformerImageProcessor:()=>Bl,SegformerModel:()=>Tx,SegformerPreTrainedModel:()=>wn,SiglipImageProcessor:()=>lf,SiglipModel:()=>Cx,SiglipPreTrainedModel:()=>ri,SiglipTextModel:()=>si,SiglipTokenizer:()=>Kp,SiglipVisionModel:()=>Lx,SmolLM3ForCausalLM:()=>zx,SmolLM3Model:()=>Px,SmolLM3PreTrainedModel:()=>ni,SmolVLMImageProcessor:()=>Pl,SmolVLMProcessor:()=>Gl,SnacDecoderModel:()=>ai,SnacEncoderModel:()=>oi,SnacFeatureExtractor:()=>md,SnacModel:()=>Nx,SnacPreTrainedModel:()=>xn,SpeechT5FeatureExtractor:()=>hd,SpeechT5ForSpeechToText:()=>Rx,SpeechT5ForTextToSpeech:()=>Dx,SpeechT5HifiGan:()=>Fx,SpeechT5Model:()=>$x,SpeechT5PreTrainedModel:()=>yn,SpeechT5Processor:()=>Cf,SpeechT5Tokenizer:()=>Qp,SqueezeBertForMaskedLM:()=>Ux,SqueezeBertForQuestionAnswering:()=>Gx,SqueezeBertForSequenceClassification:()=>jx,SqueezeBertModel:()=>Bx,SqueezeBertPreTrainedModel:()=>bs,SqueezeBertTokenizer:()=>Yp,StableLmForCausalLM:()=>Wx,StableLmModel:()=>qx,StableLmPreTrainedModel:()=>ii,Starcoder2ForCausalLM:()=>Hx,Starcoder2Model:()=>Vx,Starcoder2PreTrainedModel:()=>li,StoppingCriteria:()=>Sr,StoppingCriteriaList:()=>Js,StyleTextToSpeech2Model:()=>Xx,StyleTextToSpeech2PreTrainedModel:()=>Uc,SummarizationPipeline:()=>Oi,SupertonicForConditionalGeneration:()=>ci,SupertonicPreTrainedModel:()=>jc,SuppressTokensAtBeginLogitsProcessor:()=>Ys,Swin2SRForImageSuperResolution:()=>Zx,Swin2SRImageProcessor:()=>cf,Swin2SRModel:()=>Jx,Swin2SRPreTrainedModel:()=>ui,SwinForImageClassification:()=>Qx,SwinForSemanticSegmentation:()=>Yx,SwinModel:()=>Kx,SwinPreTrainedModel:()=>bn,T5ForConditionalGeneration:()=>ty,T5Model:()=>ey,T5PreTrainedModel:()=>pi,T5Tokenizer:()=>Jp,TableTransformerForObjectDetection:()=>sy,TableTransformerModel:()=>ry,TableTransformerObjectDetectionOutput:()=>Gc,TableTransformerPreTrainedModel:()=>di,TemperatureLogitsWarper:()=>tc,Tensor:()=>$,Text2TextGenerationPipeline:()=>mr,TextClassificationPipeline:()=>Ai,TextGenerationPipeline:()=>Ci,TextStreamer:()=>e0,TextToAudioPipeline:()=>$i,TokenClassificationPipeline:()=>Mi,TokenizersBackend:()=>W,TopKLogitsWarper:()=>a1,TopPLogitsWarper:()=>o1,TrOCRForCausalLM:()=>ny,TrOCRPreTrainedModel:()=>qc,TranslationPipeline:()=>Ii,UltravoxModel:()=>ds,UltravoxPreTrainedModel:()=>xc,UltravoxProcessor:()=>Lf,UniSpeechForCTC:()=>ay,UniSpeechForSequenceClassification:()=>iy,UniSpeechModel:()=>oy,UniSpeechPreTrainedModel:()=>vn,UniSpeechSatForAudioFrameClassification:()=>py,UniSpeechSatForCTC:()=>cy,UniSpeechSatForSequenceClassification:()=>uy,UniSpeechSatModel:()=>ly,UniSpeechSatPreTrainedModel:()=>vs,VLChatProcessor:()=>wf,VLMImageProcessor:()=>Bd,VaultGemmaForCausalLM:()=>fy,VaultGemmaModel:()=>dy,VaultGemmaPreTrainedModel:()=>fi,ViTFeatureExtractor:()=>uf,ViTForImageClassification:()=>hy,ViTImageProcessor:()=>Ul,ViTMAEModel:()=>gy,ViTMAEPreTrainedModel:()=>Wc,ViTMSNForImageClassification:()=>xy,ViTMSNModel:()=>wy,ViTMSNPreTrainedModel:()=>mi,ViTModel:()=>my,ViTPreTrainedModel:()=>_i,VisionEncoderDecoderModel:()=>_y,VitMatteForImageMatting:()=>yy,VitMatteImageProcessor:()=>pf,VitMattePreTrainedModel:()=>Vc,VitPoseForPoseEstimation:()=>by,VitPoseImageProcessor:()=>df,VitPosePreTrainedModel:()=>Hc,VitsModel:()=>vy,VitsModelOutput:()=>Xc,VitsPreTrainedModel:()=>Kc,VitsTokenizer:()=>Zp,VoxtralForConditionalGeneration:()=>ky,VoxtralProcessor:()=>zf,VoxtralRealtimeFeatureExtractor:()=>xd,VoxtralRealtimeForConditionalGeneration:()=>hi,VoxtralRealtimePreTrainedModel:()=>Qc,VoxtralRealtimeProcessor:()=>$f,Wav2Vec2BertForCTC:()=>Ay,Wav2Vec2BertForSequenceClassification:()=>My,Wav2Vec2BertModel:()=>Ey,Wav2Vec2BertPreTrainedModel:()=>kn,Wav2Vec2CTCTokenizer:()=>ed,Wav2Vec2FeatureExtractor:()=>gd,Wav2Vec2ForAudioFrameClassification:()=>zh,Wav2Vec2ForCTC:()=>Lh,Wav2Vec2ForSequenceClassification:()=>Ph,Wav2Vec2Model:()=>Ch,Wav2Vec2PreTrainedModel:()=>Ht,Wav2Vec2Processor:()=>Rf,Wav2Vec2ProcessorWithLM:()=>Df,WavLMForAudioFrameClassification:()=>Cy,WavLMForCTC:()=>Ty,WavLMForSequenceClassification:()=>Oy,WavLMForXVector:()=>Iy,WavLMModel:()=>Sy,WavLMPreTrainedModel:()=>Fr,WeSpeakerFeatureExtractor:()=>wd,WeSpeakerResNetModel:()=>Ly,WeSpeakerResNetPreTrainedModel:()=>Jc,WhisperFeatureExtractor:()=>yd,WhisperForConditionalGeneration:()=>Zc,WhisperModel:()=>zy,WhisperPreTrainedModel:()=>gi,WhisperProcessor:()=>Ff,WhisperTextStreamer:()=>M1,WhisperTimeStampLogitsProcessor:()=>Xl,WhisperTokenizer:()=>td,XLMForQuestionAnswering:()=>By,XLMForSequenceClassification:()=>Dy,XLMForTokenClassification:()=>Fy,XLMModel:()=>$y,XLMPreTrainedModel:()=>Br,XLMRobertaForMaskedLM:()=>jy,XLMRobertaForQuestionAnswering:()=>Wy,XLMRobertaForSequenceClassification:()=>Gy,XLMRobertaForTokenClassification:()=>qy,XLMRobertaModel:()=>Uy,XLMRobertaPreTrainedModel:()=>Ur,XLMRobertaTokenizer:()=>rd,XLMTokenizer:()=>sd,XLMWithLMHeadModel:()=>Ry,XVectorOutput:()=>Yc,YolosFeatureExtractor:()=>ff,YolosForObjectDetection:()=>Hy,YolosImageProcessor:()=>jl,YolosModel:()=>Vy,YolosObjectDetectionOutput:()=>eu,YolosPreTrainedModel:()=>wi,YoutuForCausalLM:()=>Ky,YoutuModel:()=>Xy,YoutuPreTrainedModel:()=>xi,ZeroShotAudioClassificationPipeline:()=>zi,ZeroShotClassificationPipeline:()=>Li,ZeroShotImageClassificationPipeline:()=>Bi,ZeroShotObjectDetectionPipeline:()=>ji,cat:()=>ve,cos_sim:()=>CE,dot:()=>H0,env:()=>fe,full:()=>We,full_like:()=>jn,interpolate:()=>pp,interpolate_4d:()=>bt,layer_norm:()=>QP,load_image:()=>C2,load_video:()=>SM,log_softmax:()=>Vu,matmul:()=>jb,mean:()=>kl,mean_pooling:()=>Gb,ones:()=>et,ones_like:()=>El,permute:()=>g2,pipeline:()=>nN,quantize_embeddings:()=>Vb,rand:()=>YP,randn:()=>Wb,random:()=>Xr,read_audio:()=>ad,rfft:()=>KP,slice:()=>vl,softmax:()=>Le,stack:()=>Tt,std_mean:()=>dp,topk:()=>Wt,zeros:()=>fp,zeros_like:()=>_p});module.exports=UO(aN);var Nk=vr(require("fs"),1),Is=vr(require("path"),1),$k=vr(require("url"),1),tI={},jO="4.0.0-next.7",I0=typeof self<"u",In=!Bk(Nk.default),Rk=!Bk(Is.default),Pu=I0&&"caches"in self,GO=typeof globalThis.Deno<"u",lN=typeof globalThis.Bun<"u",Nu=GO&&Pu&&!In,Dk=typeof process<"u",Fk=Dk&&process?.release?.name==="node"&&!Nu,C0=typeof window<"u"&&typeof window.document<"u",L0=I0&&["DedicatedWorkerGlobalScope","ServiceWorkerGlobalScope","SharedWorkerGlobalScope"].includes(self.constructor?.name),qO=C0||L0||Nu,WO=Fk||typeof navigator<"u"&&"gpu"in navigator,VO=typeof navigator<"u"&&"ml"in navigator,HO=typeof crypto<"u"&&typeof crypto.getRandomValues=="function",XO=typeof chrome<"u"&&typeof chrome.runtime<"u"&&typeof chrome.runtime.id=="string",KO=typeof ServiceWorkerGlobalScope<"u"&&I0&&self instanceof ServiceWorkerGlobalScope,QO=()=>{if(typeof navigator>"u")return!1;let t=navigator.userAgent,r=(navigator.vendor||"").indexOf("Apple")>-1,s=!t.match(/CriOS|FxiOS|EdgiOS|OPiOS|mercury|brave/i)&&!t.includes("Chrome")&&!t.includes("Android");return r&&s},YO=QO(),ie=Object.freeze({IS_BROWSER_ENV:C0,IS_WEBWORKER_ENV:L0,IS_WEB_ENV:qO,IS_SERVICE_WORKER_ENV:KO,IS_DENO_WEB_RUNTIME:Nu,IS_WEB_CACHE_AVAILABLE:Pu,IS_WEBGPU_AVAILABLE:WO,IS_WEBNN_AVAILABLE:VO,IS_SAFARI:YO,IS_PROCESS_AVAILABLE:Dk,IS_NODE_ENV:Fk,IS_FS_AVAILABLE:In,IS_PATH_AVAILABLE:Rk,IS_CRYPTO_AVAILABLE:HO,IS_CHROME_AVAILABLE:XO}),P0=In&&Rk,zu="./";if(P0){let t=Object(tI).url;t?zu=Is.default.dirname(Is.default.dirname($k.default.fileURLToPath(t))):typeof __dirname<"u"&&(zu=Is.default.dirname(__dirname))}var JO=P0?Is.default.join(zu,"/.cache/"):null,Pk="/models/",ZO=P0?Is.default.join(zu,Pk):Pk,eI=typeof globalThis.fetch=="function"?globalThis.fetch.bind(globalThis):void 0,St=Object.freeze({DEBUG:10,INFO:20,WARNING:30,ERROR:40,NONE:50}),zk=St.WARNING,fe={version:jO,backends:{onnx:{}},get logLevel(){return zk},set logLevel(t){zk=t,fe.backends.onnx?.setLogLevel?.(t)},allowRemoteModels:!0,remoteHost:"https://huggingface.co/",remotePathTemplate:"{model}/resolve/{revision}/",allowLocalModels:!(C0||L0||Nu),localModelPath:ZO,useFS:In,useBrowserCache:Pu,useFSCache:In,cacheDir:JO,useCustomCache:!1,customCache:null,useWasmCache:Pu||In,cacheKey:"transformers-cache",experimental_useCrossOriginStorage:!1,fetch:eI};function Bk(t){return Object.keys(t).length===0}function kr(t,e){t&&t(e)}function Uk(t){return Number.isInteger(t)||typeof t=="bigint"}function z0(t){return t==null||t===-1}function N0(t){let e=[],r=t;for(;Array.isArray(r);)e.push(r.length),r=r[0];return e}function wt(...t){return Array.prototype.concat.apply([],t)}function jk(...t){return t.reduce((e,r)=>e.flatMap(s=>r.map(n=>[s,n])))}function Cn(t,e){return Math.abs((t+e)%(2*e)-e)}function Ye(t,e){return Object.assign({},...e.map(r=>{if(t[r]!==void 0)return{[r]:t[r]}}))}function Gk(t,e){let r=0;for(let s of t)s===e&&++r;return r}var Z={error(...t){fe.logLevel<=St.ERROR&&console.error(...t)},warn(...t){fe.logLevel<=St.WARNING&&console.warn(...t)},info(...t){fe.logLevel<=St.INFO&&console.log(...t)},debug(...t){fe.logLevel<=St.DEBUG&&console.log(...t)},log(...t){this.info(...t)}};var rI=class{constructor(t){this.trie=this._build_trie(t)}_build_trie(t){let e=Object.create(null);for(let r of t){let s=e;for(let n=0;n<r.length;++n){let o=r[n];s=s[o]??=Object.create(null)}s.end=r}return e}split(t){let e=[],r=t.length,s=0,n=0;for(;n<r;){let o=this.trie,a=null,i=n;for(;i<r&&(o=o[t[i]]);)o.end&&(a=o.end),++i;a?(n>s&&e.push(t.slice(s,n)),e.push(a),n+=a.length,s=n):++n}return s<r&&e.push(t.slice(s)),e}},qk=rI,sI=class{constructor(t){this.content=t.content,this.id=t.id,this.single_word=t.single_word??!1,this.lstrip=t.lstrip??!1,this.rstrip=t.rstrip??!1,this.special=t.special??!1,this.normalized=t.normalized??!this.special}},nI=sI,Yk=(()=>{let t=[...Array.from({length:94},(n,o)=>o+33),...Array.from({length:12},(n,o)=>o+161),...Array.from({length:82},(n,o)=>o+174)],e=t.slice(),r=0;for(let n=0;n<256;++n)t.includes(n)||(t.push(n),e.push(256+r),r+=1);let s=e.map(n=>String.fromCharCode(n));return Object.fromEntries(t.map((n,o)=>[n,s[o]]))})(),oI=t=>Object.fromEntries(Object.entries(t).map(([e,r])=>[r,e])),aI=oI(Yk),Wk=".,!?\u2026\u3002\uFF0C\u3001\u0964\u06D4\u060C",iI=new Map([["(?i:'s|'t|'re|'ve|'m|'ll|'d)","(?:'([sS]|[tT]|[rR][eE]|[vV][eE]|[mM]|[lL][lL]|[dD]))"],["(?i:[sdmt]|ll|ve|re)","(?:[sS]|[dD]|[mM]|[tT]|[lL][lL]|[vV][eE]|[rR][eE])"],["[^\\r\\n\\p{L}\\p{N}]?+","[^\\r\\n\\p{L}\\p{N}]?"],["[^\\s\\p{L}\\p{N}]++","[^\\s\\p{L}\\p{N}]+"],["(?>\\p{Nd}{510})","(?:\\p{Nd}{510})"],["\\p{Nd}{3}+","(?:\\p{Nd}{3})+"],["\\G",""],[` ?[^(\\s|[${Wk}])]+`,` ?[^\\s${Wk}]+`]]),$u="\\p{P}\\u0021-\\u002F\\u003A-\\u0040\\u005B-\\u0060\\u007B-\\u007E",R0=t=>t.replace(/ \./g,".").replace(/ \?/g,"?").replace(/ \!/g,"!").replace(/ ,/g,",").replace(/ \' /g,"'").replace(/ n't/g,"n't").replace(/ 'm/g,"'m").replace(/ 's/g,"'s").replace(/ 've/g,"'ve").replace(/ 're/g,"'re"),Ru=(t,e=!0)=>{if(t.Regex!==void 0){let r=t.Regex.replace(/\\([#&~])/g,"$1");r=r.replace(/\\A/g,"^").replace(/\\z/g,"$").replace(/\\Z/g,"(?=\\r?\\n?$)");for(let[s,n]of iI)r=r.replaceAll(s,n);try{return new RegExp(r,"gu")}catch(s){if(!(s instanceof SyntaxError)||!s.message.toLowerCase().includes("invalid property name"))throw s;let n=!1,o=r.replace(/(\\[pP])\{([^}=]+)\}/g,(a,i,l)=>{try{return new RegExp(`\\p{${l}}`,"u"),`${i}{${l}}`}catch{return n=!0,`${i}{Script=${l}}`}});if(!n)throw s;try{return new RegExp(o,"gu")}catch{throw s}}}else if(t.String!==void 0){let r=lI(t.String);return new RegExp(e?r:`(${r})`,"gu")}else return console.warn("Unknown pattern type:",t),null},lI=t=>t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),cI=(t,e,r)=>{let s=[],n=0;for(;n<t.length;){if(s.push(t[n]),(e.get(t[n])??r)!==r){++n;continue}for(;++n<t.length&&(e.get(t[n])??r)===r;)e.get(s.at(-1))!==r&&(s[s.length-1]+=t[n])}return s},uI=t=>t>=19968&&t<=40959||t>=13312&&t<=19903||t>=131072&&t<=173791||t>=173824&&t<=177983||t>=177984&&t<=178207||t>=178208&&t<=183983||t>=63744&&t<=64255||t>=194560&&t<=195103,pI=t=>Number.isInteger(t)||typeof t=="bigint",dI=t=>{let e=0;for(let r of t)++e;return e},fI=t=>Jk(t.toLowerCase()),Qt=(...t)=>Array.prototype.concat.apply([],t),D0=t=>new Map(Object.entries(t)),_I=(t,e)=>{let r=[],s=0;for(let n of t.matchAll(e)){let o=n[0];s<n.index&&r.push(t.slice(s,n.index)),o.length>0&&r.push(o),s=n.index+o.length}return s<t.length&&r.push(t.slice(s)),r},Jk=t=>t.replace(/\p{M}/gu,""),Vk=(t,e,r=[])=>{if(!t||Array.isArray(t)||typeof t!="object")return`${e} must be a valid object`;for(let s of r)if(!(s in t))return`${e} must contain a "${s}" property`;return null},mI=t=>t.match(/\S+/g)||[],hI=class{constructor(){let t=function(...e){return t._call(...e)};return Object.setPrototypeOf(t,new.target.prototype)}},tl=hI,gI=class extends tl{constructor(t){super(),this.config=t}_call(t){return this.normalize(t)}},Er=gI,wI=class extends Er{tokenize_chinese_chars(t){let e=[];for(let r=0;r<t.length;++r){let s=t[r],n=s.charCodeAt(0);uI(n)?(e.push(" "),e.push(s),e.push(" ")):e.push(s)}return e.join("")}strip_accents(t){return t.normalize("NFD").replace(/\p{Mn}/gu,"")}is_control(t){switch(t){case" ":case`
2
+ `:case"\r":return!1;default:return/^\p{Cc}|\p{Cf}|\p{Co}|\p{Cs}$/u.test(t)}}clean_text(t){let e=[];for(let r of t){let s=r.charCodeAt(0);s===0||s===65533||this.is_control(r)||(/^\s$/.test(r)?e.push(" "):e.push(r))}return e.join("")}normalize(t){return this.config.clean_text&&(t=this.clean_text(t)),this.config.handle_chinese_chars&&(t=this.tokenize_chinese_chars(t)),this.config.lowercase?(t=t.toLowerCase(),this.config.strip_accents!==!1&&(t=this.strip_accents(t))):this.config.strip_accents&&(t=this.strip_accents(t)),t}},xI=wI,yI=class extends Er{constructor(t){super(t),this.charsmap=t.precompiled_charsmap??null}normalize(t){return t=t.replace(/[\u0001-\u0008\u000B\u000E-\u001F\u007F\u008F\u009F]/gm,""),t=t.replace(/[\u0009\u000A\u000C\u000D\u00A0\u1680\u2000-\u200F\u2028\u2029\u202F\u205F\u2581\u3000\uFEFF\uFFFD]/gm," "),t.includes("\uFF5E")?t=t.split("\uFF5E").map(r=>r.normalize("NFKC")).join("\uFF5E"):t=t.normalize("NFKC"),t}},bI=yI,vI=class extends Er{constructor(t){super(t),this.normalizers=(t.normalizers??[]).map(e=>Zk(e))}normalize(t){return this.normalizers.reduce((e,r)=>r?r.normalize(e):e,t)}},kI=vI,EI=class extends Er{normalize(t){let e=Ru(this.config.pattern??{});return e===null?t:t.replaceAll(e,this.config.content??"")}},AI=EI,MI=class extends Er{constructor(){super(...arguments),this.form="NFC"}normalize(t){return t=t.normalize(this.form),t}},Du=MI,SI=class extends Du{constructor(){super(...arguments),this.form="NFC"}},TI=SI,OI=class extends Du{constructor(){super(...arguments),this.form="NFD"}},II=OI,CI=class extends Du{constructor(){super(...arguments),this.form="NFKC"}},LI=CI,PI=class extends Du{constructor(){super(...arguments),this.form="NFKD"}},zI=PI,NI=class extends Er{normalize(t){return this.config.strip_left&&this.config.strip_right?t=t.trim():(this.config.strip_left&&(t=t.trimStart()),this.config.strip_right&&(t=t.trimEnd())),t}},$I=NI,RI=class extends Er{normalize(t){return Jk(t)}},DI=RI,FI=class extends Er{normalize(t){return t.toLowerCase()}},BI=FI,UI=class extends Er{normalize(t){return t=this.config.prepend+t,t}},jI=UI;function GI(t){if(t===null)return null;switch(t.type){case"BertNormalizer":return new xI(t);case"Precompiled":return new bI(t);case"Sequence":return new kI(t);case"Replace":return new AI(t);case"NFC":return new TI(t);case"NFD":return new II(t);case"NFKC":return new LI(t);case"NFKD":return new zI(t);case"Strip":return new $I(t);case"StripAccents":return new DI(t);case"Lowercase":return new BI(t);case"Prepend":return new jI(t);default:throw new Error(`Unknown Normalizer type: ${t.type}`)}}var Zk=GI,qI=class extends tl{pre_tokenize(t,e){return(Array.isArray(t)?t.map(r=>this.pre_tokenize_text(r,e)):this.pre_tokenize_text(t,e)).flat()}_call(t,e){return this.pre_tokenize(t,e)}},Yt=qI,WI=class extends Yt{constructor(t){super(),this.config=t,this.add_prefix_space=this.config.add_prefix_space??!1,this.trim_offsets=this.config.trim_offsets??!1,this.use_regex=this.config.use_regex??!0,this.pattern=/'s|'t|'re|'ve|'m|'ll|'d| ?\p{L}+| ?\p{N}+| ?[^\s\p{L}\p{N}]+|\s+(?!\S)|\s+/gu,this.byte_encoder=Yk,this.text_encoder=new TextEncoder}pre_tokenize_text(t,e){return this.add_prefix_space&&!t.startsWith(" ")&&(t=" "+t),(this.use_regex?t.match(this.pattern)||[]:[t]).map(s=>Array.from(this.text_encoder.encode(s),n=>this.byte_encoder[n]).join(""))}},VI=WI,HI=class extends Yt{pre_tokenize_text(t,e){return t.match(/\w+|[^\w\s]+/g)||[]}},XI=HI,KI=class extends Yt{constructor(t){super(),this.replacement=t.replacement??"\u2581",this.str_rep=t.str_rep||this.replacement,this.prepend_scheme=t.prepend_scheme??"always"}pre_tokenize_text(t,e){let{section_index:r=void 0}=e??{},s=t.replaceAll(" ",this.str_rep);return!s.startsWith(this.replacement)&&(this.prepend_scheme==="always"||this.prepend_scheme==="first"&&r===0)&&(s=this.str_rep+s),[s]}},QI=KI,YI=class extends Yt{constructor(t){super(),this.config=t,this.pattern=Ru(this.config.pattern??{},this.config.invert??!0)}pre_tokenize_text(t){return this.pattern===null?[]:this.config.invert?t.match(this.pattern)||[]:this.config.behavior?.toLowerCase()==="removed"?t.split(this.pattern).filter(e=>e):_I(t,this.pattern)}},JI=YI,ZI=class extends Yt{constructor(t){super(),this.config=t,this.pattern=new RegExp(`[^${$u}]+|[${$u}]+`,"gu")}pre_tokenize_text(t){return t.match(this.pattern)||[]}},eC=ZI,tC=class extends Yt{constructor(t){super(),this.config=t;let e=`[^\\d]+|\\d${this.config.individual_digits?"":"+"}`;this.pattern=new RegExp(e,"gu")}pre_tokenize_text(t){return t.match(this.pattern)||[]}},rC=tC,sC=class extends Yt{constructor(){super(),this.pattern=new RegExp(`[^\\s${$u}]+|[${$u}]`,"gu")}pre_tokenize_text(t,e){return t.trim().match(this.pattern)||[]}},nC=sC,oC=class extends Yt{constructor(t){super(),this.config=t,this.pattern=Ru(this.config.pattern??{}),this.content=this.config.content??""}pre_tokenize_text(t){return this.pattern===null?[t]:[t.replaceAll(this.pattern,this.config.content??"")]}},aC=oC,iC=class extends Yt{constructor(t){super(),this.tokenizers=(t.pretokenizers??[]).map(e=>eE(e))}pre_tokenize_text(t,e){return this.tokenizers.reduce((r,s)=>s?s.pre_tokenize(r,e):r,[t])}},lC=iC,cC=class extends Yt{pre_tokenize_text(t){return mI(t)}},uC=cC,pC=class extends Yt{constructor(t){super(),this.config=t,this._length=t.length}pre_tokenize_text(t){let e=[];for(let r=0;r<t.length;r+=this._length)e.push(t.slice(r,r+this._length));return e}},dC=pC;function fC(t){if(t===null)return null;switch(t.type){case"BertPreTokenizer":return new nC;case"Sequence":return new lC(t);case"Whitespace":return new XI;case"WhitespaceSplit":return new uC;case"Metaspace":return new QI(t);case"ByteLevel":return new VI(t);case"Split":return new JI(t);case"Punctuation":return new eC(t);case"Digits":return new rC(t);case"Replace":return new aC(t);case"FixedLength":return new dC(t);default:throw new Error(`Unknown PreTokenizer type: ${t.type}`)}}var eE=fC,_C=class extends tl{constructor(t){super(),this.config=t,this.vocab=[],this.tokens_to_ids=new Map,this.unk_token_id=void 0,this.unk_token=void 0,this.end_of_word_suffix=void 0,this.fuse_unk=this.config.fuse_unk??!1}_call(t){let e=this.encode(t);return this.fuse_unk&&(e=cI(e,this.tokens_to_ids,this.unk_token_id)),e}},Fu=_C,mC=class extends Fu{constructor(t){super(t),this.max_input_chars_per_word=100,this.tokens_to_ids=D0(t.vocab),this.unk_token_id=this.tokens_to_ids.get(t.unk_token),this.unk_token=t.unk_token,this.max_input_chars_per_word=t.max_input_chars_per_word??100,this.vocab=new Array(this.tokens_to_ids.size);for(let[e,r]of this.tokens_to_ids)this.vocab[r]=e}encode(t){let e=[];for(let r of t){let s=[...r];if(s.length>this.max_input_chars_per_word){e.push(this.unk_token);continue}let n=!1,o=0,a=[];for(;o<s.length;){let i=s.length,l=null;for(;o<i;){let c=s.slice(o,i).join("");if(o>0&&(c=this.config.continuing_subword_prefix+c),this.tokens_to_ids.has(c)){l=c;break}--i}if(l===null){n=!0;break}a.push(l),o=i}n?e.push(this.unk_token):e.push(...a)}return e}},Hk=mC,Xk=class tE{constructor(e,r){this.is_leaf=e,this.children=r}static default(){return new tE(!1,new Map)}},hC=class{constructor(){this.root=Xk.default()}extend(t){for(let e of t)this.push(e)}push(t){let e=this.root;for(let r of t){let s=e.children.get(r);s===void 0&&(s=Xk.default(),e.children.set(r,s)),e=s}e.is_leaf=!0}*common_prefix_search(t){let e=this.root;if(e===void 0)return;let r="";for(let s of t){if(r+=s,e=e.children.get(s),e===void 0)return;e.is_leaf&&(yield r)}}},gC=hC,$0=class rE{constructor(e,r,s,n,o){this.token_id=e,this.node_id=r,this.pos=s,this.length=n,this.score=o,this.prev=null,this.backtrace_score=0}clone(){let e=new rE(this.token_id,this.node_id,this.pos,this.length,this.score);return e.prev=this.prev,e.backtrace_score=this.backtrace_score,e}},wC=class{constructor(t,e,r){this.chars=Array.from(t),this.len=this.chars.length,this.bos_token_id=e,this.eos_token_id=r,this.nodes=[],this.begin_nodes=Array.from({length:this.len+1},()=>[]),this.end_nodes=Array.from({length:this.len+1},()=>[]);let s=new $0(this.bos_token_id??0,0,0,0,0),n=new $0(this.eos_token_id??0,1,this.len,0,0);this.nodes.push(s.clone()),this.nodes.push(n.clone()),this.begin_nodes[this.len].push(n),this.end_nodes[0].push(s)}insert(t,e,r,s){let n=this.nodes.length,o=new $0(s,n,t,e,r);this.begin_nodes[t].push(o),this.end_nodes[t+e].push(o),this.nodes.push(o)}viterbi(){let t=this.len,e=0;for(;e<=t;){if(this.begin_nodes[e].length==0)return[];for(let a of this.begin_nodes[e]){a.prev=null;let i=0,l=null;for(let c of this.end_nodes[e]){let p=c.backtrace_score+a.score;(l===null||p>i)&&(l=c.clone(),i=p)}if(l!==null)a.prev=l,a.backtrace_score=i;else return[]}++e}let r=[],n=this.begin_nodes[t][0].prev;if(n===null)return[];let o=n.clone();for(;o.prev!==null;)r.push(o.clone()),o=o.clone().prev.clone();return r.reverse(),r}piece(t){return this.chars.slice(t.pos,t.pos+t.length).join("")}tokens(){return this.viterbi().map(e=>this.piece(e))}token_ids(){return this.viterbi().map(e=>e.token_id)}},xC=wC;function yC(t){if(t.length===0)throw new Error("Array must not be empty");let e=t[0],r=0;for(let s=1;s<t.length;++s)t[s]<e&&(e=t[s],r=s);return[e,r]}var bC=class extends Fu{constructor(t,e){super(t);let r=t.vocab.length;this.vocab=new Array(r),this.scores=new Array(r);for(let s=0;s<r;++s)[this.vocab[s],this.scores[s]]=t.vocab[s];this.unk_token_id=t.unk_id,this.unk_token=this.vocab[t.unk_id],this.tokens_to_ids=new Map(this.vocab.map((s,n)=>[s,n])),this.bos_token=" ",this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=e,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.unk_token=this.vocab[this.unk_token_id],this.min_score=yC(this.scores)[0],this.unk_score=this.min_score-10,this.scores[this.unk_token_id]=this.unk_score,this.trie=new gC,this.trie.extend(this.vocab),this.fuse_unk=!0}populate_nodes(t){let e=t.chars,r=1,s=0;for(;s<e.length;){let n=!1,o=[],a=e.slice(s).join(""),i=this.trie.common_prefix_search(a);for(let l of i){o.push(l);let c=this.tokens_to_ids.get(l),p=this.scores[c],f=dI(l);t.insert(s,f,p,c),!n&&f===r&&(n=!0)}n||t.insert(s,r,this.unk_score,this.unk_token_id),s+=r}}tokenize(t){let e=new xC(t,this.bos_token_id,this.eos_token_id);return this.populate_nodes(e),e.tokens()}encode(t){let e=[];for(let r of t){let s=this.tokenize(r);e.push(...s)}return e}},Kk=bC,vC=class{constructor(t=(r,s)=>r>s,e=1/0){this._heap=[],this._comparator=t,this._max_size=e}get size(){return this._heap.length}is_empty(){return this.size===0}peek(){return this._heap[0]}push(...t){return this.extend(t)}extend(t){for(let e of t)if(this.size<this._max_size)this._heap.push(e),this._sift_up();else{let r=this._smallest();this._comparator(e,this._heap[r])&&(this._heap[r]=e,this._sift_up_from(r))}return this.size}pop(){let t=this.peek(),e=this.size-1;return e>0&&this._swap(0,e),this._heap.pop(),this._sift_down(),t}replace(t){let e=this.peek();return this._heap[0]=t,this._sift_down(),e}_parent(t){return(t+1>>>1)-1}_left(t){return(t<<1)+1}_right(t){return t+1<<1}_greater(t,e){return this._comparator(this._heap[t],this._heap[e])}_swap(t,e){let r=this._heap[t];this._heap[t]=this._heap[e],this._heap[e]=r}_sift_up(){this._sift_up_from(this.size-1)}_sift_up_from(t){for(;t>0&&this._greater(t,this._parent(t));)this._swap(t,this._parent(t)),t=this._parent(t)}_sift_down(){let t=0;for(;this._left(t)<this.size&&this._greater(this._left(t),t)||this._right(t)<this.size&&this._greater(this._right(t),t);){let e=this._right(t)<this.size&&this._greater(this._right(t),this._left(t))?this._right(t):this._left(t);this._swap(t,e),t=e}}_smallest(){return 2**Math.floor(Math.log2(this.size))-1}},kC=vC,EC=class{constructor(t){this.capacity=t,this.cache=new Map}get(t){if(!this.cache.has(t))return;let e=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,e),e}put(t,e){this.cache.has(t)&&this.cache.delete(t),this.cache.set(t,e),this.cache.size>this.capacity&&this.cache.delete(this.cache.keys().next().value)}clear(){this.cache.clear()}},AC=EC,MC=class extends Fu{constructor(t){super(t),this.tokens_to_ids=D0(t.vocab),this.unk_token_id=this.tokens_to_ids.get(t.unk_token),this.unk_token=t.unk_token,this.vocab=new Array(this.tokens_to_ids.size);for(let[r,s]of this.tokens_to_ids)this.vocab[s]=r;let e=Array.isArray(t.merges[0]);this.merges=e?t.merges:t.merges.map(r=>r.split(" ",2)),this.bpe_ranks=new Map(this.merges.map((r,s)=>[JSON.stringify(r),s])),this.end_of_word_suffix=t.end_of_word_suffix,this.continuing_subword_suffix=t.continuing_subword_suffix??null,this.byte_fallback=this.config.byte_fallback??!1,this.byte_fallback&&(this.text_encoder=new TextEncoder),this.ignore_merges=this.config.ignore_merges??!1,this.max_length_to_cache=256,this.cache_capacity=1e4,this.cache=new AC(this.cache_capacity)}clear_cache(){this.cache.clear()}bpe(t){if(t.length===0)return[];let e=this.cache.get(t);if(e!==void 0)return e;let r=Array.from(t);this.end_of_word_suffix&&(r[r.length-1]+=this.end_of_word_suffix);let s=[];if(r.length>1){let n=new kC((i,l)=>i.score<l.score),o={token:r[0],bias:0,prev:null,next:null},a=o;for(let i=1;i<r.length;++i){let l={bias:i/r.length,token:r[i],prev:a,next:null};a.next=l,this.add_node(n,a),a=l}for(;!n.is_empty();){let i=n.pop();if(i.deleted||!i.next||i.next.deleted)continue;if(i.deleted=!0,i.next.deleted=!0,i.prev){let c={...i.prev};i.prev.deleted=!0,i.prev=c,c.prev?c.prev.next=c:o=c}let l={token:i.token+i.next.token,bias:i.bias,prev:i.prev,next:i.next.next};l.prev?(l.prev.next=l,this.add_node(n,l.prev)):o=l,l.next&&(l.next.prev=l,this.add_node(n,l))}for(let i=o;i!==null;i=i.next)s.push(i.token)}else s=r;if(this.continuing_subword_suffix)for(let n=0;n<s.length-1;++n)s[n]+=this.continuing_subword_suffix;return t.length<this.max_length_to_cache&&this.cache.put(t,s),s}add_node(t,e){let r=this.bpe_ranks.get(JSON.stringify([e.token,e.next.token]));r!==void 0&&(e.score=r+e.bias,t.push(e))}encode(t){let e=[];for(let r of t){if(this.ignore_merges&&this.tokens_to_ids.has(r)){e.push(r);continue}let s=this.bpe(r);for(let n of s)if(this.tokens_to_ids.has(n))e.push(n);else if(this.byte_fallback){let o=Array.from(this.text_encoder.encode(n)).map(a=>`<0x${a.toString(16).toUpperCase().padStart(2,"0")}>`);o.every(a=>this.tokens_to_ids.has(a))?e.push(...o):e.push(this.unk_token)}else e.push(this.unk_token)}return e}},Qk=MC,SC=class extends Fu{constructor(t,e){super(t);let r=t.vocab;this.tokens_to_ids=D0(e.target_lang?r[e.target_lang]:r),this.bos_token=e.bos_token,this.bos_token_id=this.tokens_to_ids.get(this.bos_token),this.eos_token=e.eos_token,this.eos_token_id=this.tokens_to_ids.get(this.eos_token),this.pad_token=e.pad_token,this.pad_token_id=this.tokens_to_ids.get(this.pad_token),this.unk_token=e.unk_token,this.unk_token_id=this.tokens_to_ids.get(this.unk_token),this.vocab=new Array(this.tokens_to_ids.size);for(let[s,n]of this.tokens_to_ids)this.vocab[n]=s}encode(t){return t}},TC=SC;function OC(t,e){switch(t.type){case"WordPiece":return new Hk(t);case"Unigram":return new Kk(t,e.eos_token);case"BPE":return new Qk(t);default:if(t.vocab)return Array.isArray(t.vocab)?new Kk(t,e.eos_token):Object.hasOwn(t,"continuing_subword_prefix")&&Object.hasOwn(t,"unk_token")?Object.hasOwn(t,"merges")?new Qk(t):new Hk(t):new TC(t,{target_lang:e.target_lang,bos_token:e.bos_token,eos_token:e.eos_token,pad_token:e.pad_token,unk_token:e.unk_token});throw new Error(`Unknown TokenizerModel type: ${t?.type}`)}}var IC=OC,CC=class extends tl{constructor(t){super(),this.config=t}_call(t,...e){return this.post_process(t,...e)}},rl=CC,LC=class extends rl{post_process(t,e=null,r=!0){let s=e===null?this.config.single:this.config.pair,n=[],o=[];for(let a of s)"SpecialToken"in a?r&&(n.push(a.SpecialToken.id),o.push(a.SpecialToken.type_id)):"Sequence"in a&&(a.Sequence.id==="A"?(n=Qt(n,t),o=Qt(o,new Array(t.length).fill(a.Sequence.type_id))):a.Sequence.id==="B"&&(n=Qt(n,e),o=Qt(o,new Array(e.length).fill(a.Sequence.type_id))));return{tokens:n,token_type_ids:o}}},PC=LC,zC=class extends rl{post_process(t,e=null){return{tokens:t,tokens_pair:e}}},NC=zC,$C=class extends rl{constructor(t){super(t),this.sep=t.sep,this.cls=t.cls}post_process(t,e=null,r=!0){r&&(t=Qt([this.cls[0]],t,[this.sep[0]]));let s=new Array(t.length).fill(0);if(e){let n=[],o=r?[this.sep[0]]:[];t=Qt(t,n,e,o),s=Qt(s,new Array(e.length+n.length+o.length).fill(1))}return{tokens:t,token_type_ids:s}}},RC=$C,DC=class extends rl{constructor(t){super(t),this.sep=t.sep,this.cls=t.cls}post_process(t,e,r=!0){r&&(t=Qt([this.cls[0]],t,[this.sep[0]]));let s=new Array(t.length).fill(0);if(e){let n=r?[this.sep[0]]:[],o=r?[this.sep[0]]:[];t=Qt(t,n,e,o),s=Qt(s,new Array(e.length+n.length+o.length).fill(1))}return{tokens:t,token_type_ids:s}}},FC=DC,BC=class extends rl{constructor(t){super(t),this.processors=(t.processors??[]).map(e=>sE(e))}post_process(t,e=null,r=!0){let s={tokens:t,tokens_pair:e};for(let n of this.processors)s=n.post_process(s.tokens,s.tokens_pair,r);return s}},UC=BC;function jC(t){if(t===null)return null;switch(t.type){case"TemplateProcessing":return new PC(t);case"ByteLevel":return new NC(t);case"BertProcessing":return new RC(t);case"RobertaProcessing":return new FC(t);case"Sequence":return new UC(t);default:throw new Error(`Unknown PostProcessor type: ${t.type}`)}}var sE=jC,GC=class extends tl{constructor(t){super(),this.config=t,this.added_tokens=[],this.end_of_word_suffix=null,this.trim_offsets="trim_offsets"in t?t.trim_offsets:!1}_call(t){return this.decode(t)}decode(t){return this.decode_chain(t).join("")}},Ut=GC,qC=class extends Ut{constructor(t){super(t),this.byte_decoder=aI,this.text_decoder=new TextDecoder("utf-8",{fatal:!1,ignoreBOM:!0}),this.end_of_word_suffix=null}convert_tokens_to_string(t){let e=t.join(""),r=new Uint8Array([...e].map(s=>this.byte_decoder[s]));return this.text_decoder.decode(r)}decode_chain(t){let e=[],r=[];for(let s of t)this.added_tokens.find(n=>n.content===s)!==void 0?(r.length>0&&(e.push(this.convert_tokens_to_string(r)),r=[]),e.push(s)):r.push(s);return r.length>0&&e.push(this.convert_tokens_to_string(r)),e}},WC=qC,VC=class extends Ut{constructor(t){super(t),this.cleanup=t.cleanup}decode_chain(t){return t.map((e,r)=>{if(r!==0){let s=this.config.prefix;s&&e.startsWith(s)?e=e.replace(s,""):e=" "+e}return this.cleanup&&(e=R0(e)),e})}},HC=VC,XC=class extends Ut{constructor(t){super(t),this.replacement=t.replacement??"\u2581"}decode_chain(t){let e=[];for(let r=0;r<t.length;++r){let s=t[r].replaceAll(this.replacement," ");r==0&&s.startsWith(" ")&&(s=s.substring(1)),e.push(s)}return e}},KC=XC,QC=class extends Ut{constructor(t){super(t),this.suffix=t.suffix??""}decode_chain(t){return t.map((e,r)=>e.replaceAll(this.suffix,r===t.length-1?"":" "))}},YC=QC,JC=class extends Ut{constructor(t){super(t),this.pad_token=t.pad_token??"",this.word_delimiter_token=t.word_delimiter_token??"",this.cleanup=t.cleanup}convert_tokens_to_string(t){if(t.length===0)return"";let e=[t[0]];for(let n=1;n<t.length;++n)t[n]!==e.at(-1)&&e.push(t[n]);let s=e.filter(n=>n!==this.pad_token).join("");return this.cleanup&&(s=R0(s).replaceAll(this.word_delimiter_token," ").trim()),s}decode_chain(t){return[this.convert_tokens_to_string(t)]}},ZC=JC,eL=class extends Ut{constructor(t){super(t),this.decoders=(t.decoders??[]).map(e=>nE(e))}decode_chain(t){return this.decoders.reduce((e,r)=>r.decode_chain(e),t)}},tL=eL,rL=class extends Ut{decode_chain(t){let e=Ru(this.config.pattern),r=this.config.content??"";return e===null?t:t.map(s=>s.replaceAll(e,r))}},sL=rL,nL=class extends Ut{decode_chain(t){return[t.join("")]}},oL=nL,aL=class extends Ut{constructor(t){super(t),this.content=t.content??"",this.start=t.start??0,this.stop=t.stop??0}decode_chain(t){return t.map(e=>{let r=0;for(let n=0;n<this.start&&e[n]===this.content;++n){r=n+1;continue}let s=e.length;for(let n=0;n<this.stop;++n){let o=e.length-n-1;if(e[o]===this.content){s=o;continue}else break}return e.slice(r,s)})}},iL=aL,lL=class extends Ut{constructor(t){super(t),this.text_decoder=new TextDecoder}decode_chain(t){let e=[],r=[];for(let s of t){let n=null;if(s.length===6&&s.startsWith("<0x")&&s.endsWith(">")){let o=parseInt(s.slice(3,5),16);isNaN(o)||(n=o)}if(n!==null)r.push(n);else{if(r.length>0){let o=this.text_decoder.decode(Uint8Array.from(r));e.push(o),r=[]}e.push(s)}}if(r.length>0){let s=this.text_decoder.decode(Uint8Array.from(r));e.push(s),r=[]}return e}},cL=lL;function uL(t){if(t===null)return null;switch(t.type){case"ByteLevel":return new WC(t);case"WordPiece":return new HC(t);case"Metaspace":return new KC(t);case"BPEDecoder":return new YC(t);case"CTC":return new ZC(t);case"Sequence":return new tL(t);case"Replace":return new sL(t);case"Fuse":return new oL(t);case"Strip":return new iL(t);case"ByteFallback":return new cL(t);default:throw new Error(`Unknown Decoder type: ${t.type}`)}}var nE=uL,pL=class{constructor(t,e){let r=Vk(t,"Tokenizer",["model","decoder","post_processor","pre_tokenizer","normalizer"]);if(r)throw new Error(r);let s=Vk(e,"Config");if(s)throw new Error(s);this.tokenizer=t,this.config=e,this.normalizer=Zk(this.tokenizer.normalizer),this.pre_tokenizer=eE(this.tokenizer.pre_tokenizer),this.model=IC(this.tokenizer.model,this.config),this.post_processor=sE(this.tokenizer.post_processor),this.decoder=nE(this.tokenizer.decoder),this.special_tokens=[],this.all_special_ids=[],this.added_tokens=[];let n=[],o=[];this.added_tokens_map=new Map;for(let a of this.tokenizer.added_tokens){let i=new nI(a);if(this.added_tokens.push(i),this.model.tokens_to_ids.set(i.content,i.id),this.model.vocab[i.id]=i.content,i.special&&(this.special_tokens.push(i.content),this.all_special_ids.push(i.id)),this.added_tokens_map.set(i.content,i),i.normalized&&this.normalizer!==null){let l=this.normalizer(i.content);o.push(l),this.added_tokens_map.set(l,i)}else n.push(i.content)}(this.config.additional_special_tokens??[]).forEach(a=>{this.special_tokens.includes(a)||this.special_tokens.push(a)}),this.decoder&&(this.decoder.added_tokens=this.added_tokens,this.decoder.end_of_word_suffix=this.model.end_of_word_suffix),this.splitter_unnormalized=new qk(n),this.splitter_normalized=new qk(o),this.remove_space=this.config.remove_space,this.clean_up_tokenization_spaces=this.config.clean_up_tokenization_spaces??!0,this.do_lowercase_and_remove_accent=this.config.do_lowercase_and_remove_accent??!1}encode(t,{text_pair:e=null,add_special_tokens:r=!0,return_token_type_ids:s=null}={}){let{tokens:n,token_type_ids:o}=this.tokenize_helper(t,{text_pair:e,add_special_tokens:r}),a=n.map(l=>this.added_tokens_map.get(l)?.id??this.model.tokens_to_ids.get(l)??this.model.unk_token_id),i={ids:a,tokens:n,attention_mask:new Array(a.length).fill(1)};return s&&o&&(i.token_type_ids=o),i}decode(t,e={}){if(!Array.isArray(t)||t.length===0||!pI(t[0]))throw Error("token_ids must be a non-empty array of integers.");let r=t.map(n=>this.model.vocab[Number(n)]??this.model.unk_token);e.skip_special_tokens&&(r=r.filter(n=>!this.special_tokens.includes(n)));let s=this.decoder?this.decoder(r):r.join(" ");return this.decoder&&this.decoder.end_of_word_suffix&&(s=s.replaceAll(this.decoder.end_of_word_suffix," "),e.skip_special_tokens&&(s=s.trim())),(e.clean_up_tokenization_spaces??this.clean_up_tokenization_spaces)&&(s=R0(s)),s}tokenize(t,{text_pair:e=null,add_special_tokens:r=!1}={}){return this.tokenize_helper(t,{text_pair:e,add_special_tokens:r}).tokens}encode_text(t){if(t===null)return null;let e=this.splitter_unnormalized.split(t);return e.forEach((r,s)=>{let n=this.added_tokens_map.get(r);n&&(n.lstrip&&s>0&&(e[s-1]=e[s-1].trimEnd()),n.rstrip&&s<e.length-1&&(e[s+1]=e[s+1].trimStart()))}),e.flatMap((r,s)=>{if(r.length===0)return[];if(this.added_tokens_map.has(r))return[r];if(this.remove_space===!0&&(r=r.trim().split(/\s+/).join(" ")),this.do_lowercase_and_remove_accent&&(r=fI(r)),this.normalizer!==null&&(r=this.normalizer(r)),r.length===0)return[];let n=this.splitter_normalized.split(r);return n.forEach((o,a)=>{let i=this.added_tokens_map.get(o);i&&(i.lstrip&&a>0&&(n[a-1]=n[a-1].trimEnd()),i.rstrip&&a<n.length-1&&(n[a+1]=n[a+1].trimStart()))}),n.flatMap(o=>{if(o.length===0)return[];if(this.added_tokens_map.has(o))return[o];let a=this.pre_tokenizer!==null?this.pre_tokenizer(o,{section_index:s}):[o];return this.model(a)})})}tokenize_helper(t,{text_pair:e=null,add_special_tokens:r=!0}){let s=this.encode_text(t),n=this.encode_text(e||null);return this.post_processor?this.post_processor(s,n,r):{tokens:Qt(s??[],n??[])}}token_to_id(t){return this.model.tokens_to_ids.get(t)}id_to_token(t){return this.model.vocab[t]}get_added_tokens_decoder(){let t=new Map;for(let e of this.added_tokens)t.set(e.id,e);return t}get_vocab(t=!0){let e=new Map;for(let r=0;r<this.model.vocab.length;++r){let s=this.model.vocab[r];(t||!this.added_tokens_map.has(s))&&e.set(s,r)}return e}},oE=pL;var D=Object.freeze({Text:"Text",NumericLiteral:"NumericLiteral",StringLiteral:"StringLiteral",Identifier:"Identifier",Equals:"Equals",OpenParen:"OpenParen",CloseParen:"CloseParen",OpenStatement:"OpenStatement",CloseStatement:"CloseStatement",OpenExpression:"OpenExpression",CloseExpression:"CloseExpression",OpenSquareBracket:"OpenSquareBracket",CloseSquareBracket:"CloseSquareBracket",OpenCurlyBracket:"OpenCurlyBracket",CloseCurlyBracket:"CloseCurlyBracket",Comma:"Comma",Dot:"Dot",Colon:"Colon",Pipe:"Pipe",CallOperator:"CallOperator",AdditiveBinaryOperator:"AdditiveBinaryOperator",MultiplicativeBinaryOperator:"MultiplicativeBinaryOperator",ComparisonBinaryOperator:"ComparisonBinaryOperator",UnaryOperator:"UnaryOperator",Comment:"Comment"}),jt=class{constructor(t,e){this.value=t,this.type=e}};function aE(t){return/\w/.test(t)}function sl(t){return/[0-9]/.test(t)}function iE(t){return/\s/.test(t)}var dL=[["{%",D.OpenStatement],["%}",D.CloseStatement],["{{",D.OpenExpression],["}}",D.CloseExpression],["(",D.OpenParen],[")",D.CloseParen],["{",D.OpenCurlyBracket],["}",D.CloseCurlyBracket],["[",D.OpenSquareBracket],["]",D.CloseSquareBracket],[",",D.Comma],[".",D.Dot],[":",D.Colon],["|",D.Pipe],["<=",D.ComparisonBinaryOperator],[">=",D.ComparisonBinaryOperator],["==",D.ComparisonBinaryOperator],["!=",D.ComparisonBinaryOperator],["<",D.ComparisonBinaryOperator],[">",D.ComparisonBinaryOperator],["+",D.AdditiveBinaryOperator],["-",D.AdditiveBinaryOperator],["~",D.AdditiveBinaryOperator],["*",D.MultiplicativeBinaryOperator],["/",D.MultiplicativeBinaryOperator],["%",D.MultiplicativeBinaryOperator],["=",D.Equals]],fL=new Map([["n",`
3
+ `],["t"," "],["r","\r"],["b","\b"],["f","\f"],["v","\v"],["'","'"],['"','"'],["\\","\\"]]);function _L(t,e={}){return t.endsWith(`
4
+ `)&&(t=t.slice(0,-1)),e.lstrip_blocks&&(t=t.replace(/^[ \t]*({[#%-])/gm,"$1")),e.trim_blocks&&(t=t.replace(/([#%-]})\n/g,"$1")),t.replace(/{%\s*(end)?generation\s*%}/gs,"")}function mL(t,e={}){let r=[],s=_L(t,e),n=0,o=0,a=c=>{let p="";for(;c(s[n]);){if(s[n]==="\\"){if(++n,n>=s.length)throw new SyntaxError("Unexpected end of input");let f=s[n++],_=fL.get(f);if(_===void 0)throw new SyntaxError(`Unexpected escaped character: ${f}`);p+=_;continue}if(p+=s[n++],n>=s.length)throw new SyntaxError("Unexpected end of input")}return p},i=()=>{let c=r.at(-1);c&&c.type===D.Text&&(c.value=c.value.trimEnd(),c.value===""&&r.pop())},l=()=>{for(;n<s.length&&iE(s[n]);)++n};e:for(;n<s.length;){let c=r.at(-1)?.type;if(c===void 0||c===D.CloseStatement||c===D.CloseExpression||c===D.Comment){let f="";for(;n<s.length&&!(s[n]==="{"&&(s[n+1]==="%"||s[n+1]==="{"||s[n+1]==="#"));)f+=s[n++];if(f.length>0){r.push(new jt(f,D.Text));continue}}if(s[n]==="{"&&s[n+1]==="#"){n+=2;let f=s[n]==="-";f&&++n;let _="";for(;s[n]!=="#"||s[n+1]!=="}";){if(n+2>=s.length)throw new SyntaxError("Missing end of comment tag");_+=s[n++]}let m=_.endsWith("-");m&&(_=_.slice(0,-1)),f&&i(),r.push(new jt(_,D.Comment)),n+=2,m&&l();continue}if(s.slice(n,n+3)==="{%-"){i(),r.push(new jt("{%",D.OpenStatement)),n+=3;continue}if(s.slice(n,n+3)==="{{-"){i(),r.push(new jt("{{",D.OpenExpression)),o=0,n+=3;continue}if(a(iE),s.slice(n,n+3)==="-%}"){r.push(new jt("%}",D.CloseStatement)),n+=3,l();continue}if(s.slice(n,n+3)==="-}}"){r.push(new jt("}}",D.CloseExpression)),n+=3,l();continue}let p=s[n];if(p==="-"||p==="+"){let f=r.at(-1)?.type;if(f===D.Text||f===void 0)throw new SyntaxError(`Unexpected character: ${p}`);switch(f){case D.Identifier:case D.NumericLiteral:case D.StringLiteral:case D.CloseParen:case D.CloseSquareBracket:break;default:{++n;let _=a(sl);r.push(new jt(`${p}${_}`,_.length>0?D.NumericLiteral:D.UnaryOperator));continue}}}for(let[f,_]of dL){if(f==="}}"&&o>0)continue;if(s.slice(n,n+f.length)===f){r.push(new jt(f,_)),_===D.OpenExpression?o=0:_===D.OpenCurlyBracket?++o:_===D.CloseCurlyBracket&&--o,n+=f.length;continue e}}if(p==="'"||p==='"'){++n;let f=a(_=>_!==p);r.push(new jt(f,D.StringLiteral)),++n;continue}if(sl(p)){let f=a(sl);if(s[n]==="."&&sl(s[n+1])){++n;let _=a(sl);f=`${f}.${_}`}r.push(new jt(f,D.NumericLiteral));continue}if(aE(p)){let f=a(aE);r.push(new jt(f,D.Identifier));continue}throw new SyntaxError(`Unexpected character: ${p}`)}return r}var Zt=class{type="Statement"},hL=class extends Zt{constructor(t){super(),this.body=t}type="Program"},gL=class extends Zt{constructor(t,e,r){super(),this.test=t,this.body=e,this.alternate=r}type="If"},wL=class extends Zt{constructor(t,e,r,s){super(),this.loopvar=t,this.iterable=e,this.body=r,this.defaultBlock=s}type="For"},xL=class extends Zt{type="Break"},yL=class extends Zt{type="Continue"},bL=class extends Zt{constructor(t,e,r){super(),this.assignee=t,this.value=e,this.body=r}type="Set"},vL=class extends Zt{constructor(t,e,r){super(),this.name=t,this.args=e,this.body=r}type="Macro"},kL=class extends Zt{constructor(t){super(),this.value=t}type="Comment"},Lt=class extends Zt{type="Expression"},EL=class extends Lt{constructor(t,e,r){super(),this.object=t,this.property=e,this.computed=r}type="MemberExpression"},lE=class extends Lt{constructor(t,e){super(),this.callee=t,this.args=e}type="CallExpression"},Ln=class extends Lt{constructor(t){super(),this.value=t}type="Identifier"},Pn=class extends Lt{constructor(t){super(),this.value=t}type="Literal"},AL=class extends Pn{type="IntegerLiteral"},ML=class extends Pn{type="FloatLiteral"},cE=class extends Pn{type="StringLiteral"},SL=class extends Pn{type="ArrayLiteral"},uE=class extends Pn{type="TupleLiteral"},TL=class extends Pn{type="ObjectLiteral"},nl=class extends Lt{constructor(t,e,r){super(),this.operator=t,this.left=e,this.right=r}type="BinaryExpression"},OL=class extends Lt{constructor(t,e){super(),this.operand=t,this.filter=e}type="FilterExpression"},IL=class extends Zt{constructor(t,e){super(),this.filter=t,this.body=e}type="FilterStatement"},CL=class extends Lt{constructor(t,e){super(),this.lhs=t,this.test=e}type="SelectExpression"},LL=class extends Lt{constructor(t,e,r){super(),this.operand=t,this.negate=e,this.test=r}type="TestExpression"},PL=class extends Lt{constructor(t,e){super(),this.operator=t,this.argument=e}type="UnaryExpression"},zL=class extends Lt{constructor(t=void 0,e=void 0,r=void 0){super(),this.start=t,this.stop=e,this.step=r}type="SliceExpression"},NL=class extends Lt{constructor(t,e){super(),this.key=t,this.value=e}type="KeywordArgumentExpression"},$L=class extends Lt{constructor(t){super(),this.argument=t}type="SpreadExpression"},RL=class extends Zt{constructor(t,e,r){super(),this.call=t,this.callerArgs=e,this.body=r}type="CallStatement"},DL=class extends Lt{constructor(t,e,r){super(),this.condition=t,this.trueExpr=e,this.falseExpr=r}type="Ternary"};function FL(t){let e=new hL([]),r=0;function s(L,z){let R=t[r++];if(!R||R.type!==L)throw new Error(`Parser Error: ${z}. ${R.type} !== ${L}.`);return R}function n(L){if(!l(L))throw new SyntaxError(`Expected ${L}`);++r}function o(){switch(t[r].type){case D.Comment:return new kL(t[r++].value);case D.Text:return c();case D.OpenStatement:return p();case D.OpenExpression:return f();default:throw new SyntaxError(`Unexpected token type: ${t[r].type}`)}}function a(...L){return r+L.length<=t.length&&L.every((z,R)=>z===t[r+R].type)}function i(...L){return t[r]?.type===D.OpenStatement&&t[r+1]?.type===D.Identifier&&L.includes(t[r+1]?.value)}function l(...L){return r+L.length<=t.length&&L.every((z,R)=>t[r+R].type==="Identifier"&&z===t[r+R].value)}function c(){return new cE(s(D.Text,"Expected text token").value)}function p(){if(s(D.OpenStatement,"Expected opening statement token"),t[r].type!==D.Identifier)throw new SyntaxError(`Unknown statement, got ${t[r].type}`);let L=t[r].value,z;switch(L){case"set":++r,z=_();break;case"if":++r,z=m(),s(D.OpenStatement,"Expected {% token"),n("endif"),s(D.CloseStatement,"Expected %} token");break;case"macro":++r,z=w(),s(D.OpenStatement,"Expected {% token"),n("endmacro"),s(D.CloseStatement,"Expected %} token");break;case"for":++r,z=k(),s(D.OpenStatement,"Expected {% token"),n("endfor"),s(D.CloseStatement,"Expected %} token");break;case"call":{++r;let R=null;a(D.OpenParen)&&(R=B());let J=le();if(J.type!=="Identifier")throw new SyntaxError("Expected identifier following call statement");let Ce=B();s(D.CloseStatement,"Expected closing statement token");let ae=[];for(;!i("endcall");)ae.push(o());s(D.OpenStatement,"Expected '{%'"),n("endcall"),s(D.CloseStatement,"Expected closing statement token");let Ue=new lE(J,Ce);z=new RL(Ue,R,ae);break}case"break":++r,s(D.CloseStatement,"Expected closing statement token"),z=new xL;break;case"continue":++r,s(D.CloseStatement,"Expected closing statement token"),z=new yL;break;case"filter":{++r;let R=le();R instanceof Ln&&a(D.OpenParen)&&(R=H(R)),s(D.CloseStatement,"Expected closing statement token");let J=[];for(;!i("endfilter");)J.push(o());s(D.OpenStatement,"Expected '{%'"),n("endfilter"),s(D.CloseStatement,"Expected '%}'"),z=new IL(R,J);break}default:throw new SyntaxError(`Unknown statement type: ${L}`)}return z}function f(){s(D.OpenExpression,"Expected opening expression token");let L=E();return s(D.CloseExpression,"Expected closing expression token"),L}function _(){let L=x(),z=null,R=[];if(a(D.Equals))++r,z=x();else{for(s(D.CloseStatement,"Expected %} token");!i("endset");)R.push(o());s(D.OpenStatement,"Expected {% token"),n("endset")}return s(D.CloseStatement,"Expected closing statement token"),new bL(L,z,R)}function m(){let L=E();s(D.CloseStatement,"Expected closing statement token");let z=[],R=[];for(;!i("elif","else","endif");)z.push(o());if(i("elif")){++r,++r;let J=m();R.push(J)}else if(i("else"))for(++r,++r,s(D.CloseStatement,"Expected closing statement token");!i("endif");)R.push(o());return new gL(L,z,R)}function w(){let L=le();if(L.type!=="Identifier")throw new SyntaxError("Expected identifier following macro statement");let z=B();s(D.CloseStatement,"Expected closing statement token");let R=[];for(;!i("endmacro");)R.push(o());return new vL(L,z,R)}function x(L=!1){let z=L?le:E,R=[z()],J=a(D.Comma);for(;J&&(++r,R.push(z()),!!a(D.Comma)););return J?new uE(R):R[0]}function k(){let L=x(!0);if(!(L instanceof Ln||L instanceof uE))throw new SyntaxError(`Expected identifier/tuple for the loop variable, got ${L.type} instead`);if(!l("in"))throw new SyntaxError("Expected `in` keyword following loop variable");++r;let z=E();s(D.CloseStatement,"Expected closing statement token");let R=[];for(;!i("endfor","else");)R.push(o());let J=[];if(i("else"))for(++r,++r,s(D.CloseStatement,"Expected closing statement token");!i("endfor");)J.push(o());return new wL(L,z,R,J)}function E(){return A()}function A(){let L=T();if(l("if")){++r;let z=T();if(l("else")){++r;let R=A();return new DL(z,L,R)}else return new CL(L,z)}return L}function T(){let L=S();for(;l("or");){let z=t[r];++r;let R=S();L=new nl(z,L,R)}return L}function S(){let L=P();for(;l("and");){let z=t[r];++r;let R=P();L=new nl(z,L,R)}return L}function P(){let L;for(;l("not");){let z=t[r];++r;let R=P();L=new PL(z,R)}return L??O()}function O(){let L=v();for(;;){let z;if(l("not","in"))z=new jt("not in",D.Identifier),r+=2;else if(l("in"))z=t[r++];else if(a(D.ComparisonBinaryOperator))z=t[r++];else break;let R=v();L=new nl(z,L,R)}return L}function v(){let L=F();for(;a(D.AdditiveBinaryOperator);){let z=t[r];++r;let R=F();L=new nl(z,L,R)}return L}function j(){let L=Q(le());return a(D.OpenParen)?H(L):L}function H(L){let z=new lE(L,B());return z=Q(z),a(D.OpenParen)&&(z=H(z)),z}function B(){s(D.OpenParen,"Expected opening parenthesis for arguments list");let L=V();return s(D.CloseParen,"Expected closing parenthesis for arguments list"),L}function V(){let L=[];for(;!a(D.CloseParen);){let z;if(t[r].type===D.MultiplicativeBinaryOperator&&t[r].value==="*"){++r;let R=E();z=new $L(R)}else if(z=E(),a(D.Equals)){if(++r,!(z instanceof Ln))throw new SyntaxError("Expected identifier for keyword argument");let R=E();z=new NL(z,R)}L.push(z),a(D.Comma)&&++r}return L}function q(){let L=[],z=!1;for(;!a(D.CloseSquareBracket);)a(D.Colon)?(L.push(void 0),++r,z=!0):(L.push(E()),a(D.Colon)&&(++r,z=!0));if(L.length===0)throw new SyntaxError("Expected at least one argument for member/slice expression");if(z){if(L.length>3)throw new SyntaxError("Expected 0-3 arguments for slice expression");return new zL(...L)}return L[0]}function Q(L){for(;a(D.Dot)||a(D.OpenSquareBracket);){let z=t[r];++r;let R,J=z.type===D.OpenSquareBracket;if(J)R=q(),s(D.CloseSquareBracket,"Expected closing square bracket");else if(R=le(),R.type!=="Identifier")throw new SyntaxError("Expected identifier following dot operator");L=new EL(L,R,J)}return L}function F(){let L=C();for(;a(D.MultiplicativeBinaryOperator);){let z=t[r++],R=C();L=new nl(z,L,R)}return L}function C(){let L=te();for(;l("is");){++r;let z=l("not");z&&++r;let R=le();if(!(R instanceof Ln))throw new SyntaxError("Expected identifier for the test");L=new LL(L,z,R)}return L}function te(){let L=j();for(;a(D.Pipe);){++r;let z=le();if(!(z instanceof Ln))throw new SyntaxError("Expected identifier for the filter");a(D.OpenParen)&&(z=H(z)),L=new OL(L,z)}return L}function le(){let L=t[r++];switch(L.type){case D.NumericLiteral:{let z=L.value;return z.includes(".")?new ML(Number(z)):new AL(Number(z))}case D.StringLiteral:{let z=L.value;for(;a(D.StringLiteral);)z+=t[r++].value;return new cE(z)}case D.Identifier:return new Ln(L.value);case D.OpenParen:{let z=x();return s(D.CloseParen,"Expected closing parenthesis, got ${tokens[current].type} instead."),z}case D.OpenSquareBracket:{let z=[];for(;!a(D.CloseSquareBracket);)z.push(E()),a(D.Comma)&&++r;return++r,new SL(z)}case D.OpenCurlyBracket:{let z=new Map;for(;!a(D.CloseCurlyBracket);){let R=E();s(D.Colon,"Expected colon between key and value in object literal");let J=E();z.set(R,J),a(D.Comma)&&++r}return++r,new TL(z)}default:throw new SyntaxError(`Unexpected token: ${L.type}`)}}for(;r<t.length;)e.body.push(o());return e}function BL(t,e,r=1){if(e===void 0&&(e=t,t=0),r===0)throw new Error("range() step must not be zero");let s=[];if(r>0)for(let n=t;n<e;n+=r)s.push(n);else for(let n=t;n>e;n+=r)s.push(n);return s}function pE(t,e,r,s=1){let n=Math.sign(s);n>=0?(e=(e??=0)<0?Math.max(t.length+e,0):Math.min(e,t.length),r=(r??=t.length)<0?Math.max(t.length+r,0):Math.min(r,t.length)):(e=(e??=t.length-1)<0?Math.max(t.length+e,-1):Math.min(e,t.length-1),r=(r??=-1)<-1?Math.max(t.length+r,-1):Math.min(r,t.length-1));let o=[];for(let a=e;n*a<n*r;a+=s)o.push(t[a]);return o}function UL(t){return t.replace(/\b\w/g,e=>e.toUpperCase())}function jL(t){return GL(new Date,t)}function GL(t,e){let r=new Intl.DateTimeFormat(void 0,{month:"long"}),s=new Intl.DateTimeFormat(void 0,{month:"short"}),n=o=>o<10?"0"+o:o.toString();return e.replace(/%[YmdbBHM%]/g,o=>{switch(o){case"%Y":return t.getFullYear().toString();case"%m":return n(t.getMonth()+1);case"%d":return n(t.getDate());case"%b":return s.format(t);case"%B":return r.format(t);case"%H":return n(t.getHours());case"%M":return n(t.getMinutes());case"%%":return"%";default:return o}})}function qL(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function WL(t,e,r,s){if(s===0)return t;let n=s==null||s<0?1/0:s,o=e.length===0?new RegExp("(?=)","gu"):new RegExp(qL(e),"gu");return t.replaceAll(o,a=>n>0?(--n,r):a)}var dE=class extends Error{},fE=class extends Error{},cr=class{type="RuntimeValue";value;builtins=new Map;constructor(t=void 0){this.value=t}__bool__(){return new pe(!!this.value)}toString(){return String(this.value)}},me=class extends cr{type="IntegerValue"},Ze=class extends cr{type="FloatValue";toString(){return this.value%1===0?this.value.toFixed(1):this.value.toString()}},ee=class extends cr{type="StringValue";builtins=new Map([["upper",new qe(()=>new ee(this.value.toUpperCase()))],["lower",new qe(()=>new ee(this.value.toLowerCase()))],["strip",new qe(()=>new ee(this.value.trim()))],["title",new qe(()=>new ee(UL(this.value)))],["capitalize",new qe(()=>new ee(this.value.charAt(0).toUpperCase()+this.value.slice(1)))],["length",new me(this.value.length)],["rstrip",new qe(()=>new ee(this.value.trimEnd()))],["lstrip",new qe(()=>new ee(this.value.trimStart()))],["startswith",new qe(t=>{if(t.length===0)throw new Error("startswith() requires at least one argument");let e=t[0];if(e instanceof ee)return new pe(this.value.startsWith(e.value));if(e instanceof ye){for(let r of e.value){if(!(r instanceof ee))throw new Error("startswith() tuple elements must be strings");if(this.value.startsWith(r.value))return new pe(!0)}return new pe(!1)}throw new Error("startswith() argument must be a string or tuple of strings")})],["endswith",new qe(t=>{if(t.length===0)throw new Error("endswith() requires at least one argument");let e=t[0];if(e instanceof ee)return new pe(this.value.endsWith(e.value));if(e instanceof ye){for(let r of e.value){if(!(r instanceof ee))throw new Error("endswith() tuple elements must be strings");if(this.value.endsWith(r.value))return new pe(!0)}return new pe(!1)}throw new Error("endswith() argument must be a string or tuple of strings")})],["split",new qe(t=>{let e=t[0]??new Xe;if(!(e instanceof ee||e instanceof Xe))throw new Error("sep argument must be a string or null");let r=t[1]??new me(-1);if(!(r instanceof me))throw new Error("maxsplit argument must be a number");let s=[];if(e instanceof Xe){let n=this.value.trimStart();for(let{0:o,index:a}of n.matchAll(/\S+/g)){if(r.value!==-1&&s.length>=r.value&&a!==void 0){s.push(o+n.slice(a+o.length));break}s.push(o)}}else{if(e.value==="")throw new Error("empty separator");s=this.value.split(e.value),r.value!==-1&&s.length>r.value&&s.push(s.splice(r.value).join(e.value))}return new ye(s.map(n=>new ee(n)))})],["replace",new qe(t=>{if(t.length<2)throw new Error("replace() requires at least two arguments");let e=t[0],r=t[1];if(!(e instanceof ee&&r instanceof ee))throw new Error("replace() arguments must be strings");let s;if(t.length>2?t[2].type==="KeywordArgumentsValue"?s=t[2].value.get("count")??new Xe:s=t[2]:s=new Xe,!(s instanceof me||s instanceof Xe))throw new Error("replace() count argument must be a number or null");return new ee(WL(this.value,e.value,r.value,s.value))})]])},pe=class extends cr{type="BooleanValue"},VL=/[\x7f-\uffff]/g;function _E(t){return t.replace(VL,e=>"\\u"+e.charCodeAt(0).toString(16).padStart(4,"0"))}function Ls(t,e={},r=0,s=!0){let{indent:n=null,ensureAscii:o=!1,separators:a=null,sortKeys:i=!1}=e,l,c;switch(a?[l,c]=a:n?(l=",",c=": "):(l=", ",c=": "),t.type){case"NullValue":return"null";case"UndefinedValue":return s?"null":"undefined";case"IntegerValue":case"FloatValue":case"BooleanValue":return JSON.stringify(t.value);case"StringValue":{let p=JSON.stringify(t.value);return o&&(p=_E(p)),p}case"ArrayValue":case"ObjectValue":{let p=n?" ".repeat(n):"",f=`
5
+ `+p.repeat(r),_=f+p;if(t.type==="ArrayValue"){let m=t.value.map(w=>Ls(w,e,r+1,s));return n?`[${_}${m.join(`${l}${_}`)}${f}]`:`[${m.join(l)}]`}else{let m=Array.from(t.value.entries());i&&(m=m.sort(([x],[k])=>x.localeCompare(k)));let w=m.map(([x,k])=>{let E=JSON.stringify(x);o&&(E=_E(E));let A=`${E}${c}${Ls(k,e,r+1,s)}`;return n?`${_}${A}`:A});return n?`{${w.join(l)}${f}}`:`{${w.join(l)}}`}}default:throw new Error(`Cannot convert to JSON: ${t.type}`)}}var dt=class extends cr{type="ObjectValue";__bool__(){return new pe(this.value.size>0)}builtins=new Map([["get",new qe(([t,e])=>{if(!(t instanceof ee))throw new Error(`Object key must be a string: got ${t.type}`);return this.value.get(t.value)??e??new Xe})],["items",new qe(()=>this.items())],["keys",new qe(()=>this.keys())],["values",new qe(()=>this.values())],["dictsort",new qe(t=>{let e=new Map,r=t.filter(i=>i instanceof ol?(e=i.value,!1):!0),s=r.at(0)??e.get("case_sensitive")??new pe(!1);if(!(s instanceof pe))throw new Error("case_sensitive must be a boolean");let n=r.at(1)??e.get("by")??new ee("key");if(!(n instanceof ee))throw new Error("by must be a string");if(!["key","value"].includes(n.value))throw new Error("by must be either 'key' or 'value'");let o=r.at(2)??e.get("reverse")??new pe(!1);if(!(o instanceof pe))throw new Error("reverse must be a boolean");let a=Array.from(this.value.entries()).map(([i,l])=>new ye([new ee(i),l])).sort((i,l)=>{let c=n.value==="key"?0:1,p=i.value[c],f=l.value[c],_=F0(p,f,s.value);return o.value?-_:_});return new ye(a)})]]);items(){return new ye(Array.from(this.value.entries()).map(([t,e])=>new ye([new ee(t),e])))}keys(){return new ye(Array.from(this.value.keys()).map(t=>new ee(t)))}values(){return new ye(Array.from(this.value.values()))}toString(){return Ls(this,{},0,!1)}},ol=class extends dt{type="KeywordArgumentsValue"},ye=class extends cr{type="ArrayValue";builtins=new Map([["length",new me(this.value.length)]]);__bool__(){return new pe(this.value.length>0)}toString(){return Ls(this,{},0,!1)}},mE=class extends ye{type="TupleValue"},qe=class extends cr{type="FunctionValue"},Xe=class extends cr{type="NullValue"},Ge=class extends cr{type="UndefinedValue"},Cs=class{constructor(t){this.parent=t}variables=new Map([["namespace",new qe(t=>{if(t.length===0)return new dt(new Map);if(t.length!==1||!(t[0]instanceof dt))throw new Error("`namespace` expects either zero arguments or a single object argument");return t[0]})]]);tests=new Map([["boolean",t=>t.type==="BooleanValue"],["callable",t=>t instanceof qe],["odd",t=>{if(!(t instanceof me))throw new Error(`cannot odd on ${t.type}`);return t.value%2!==0}],["even",t=>{if(!(t instanceof me))throw new Error(`cannot even on ${t.type}`);return t.value%2===0}],["false",t=>t.type==="BooleanValue"&&!t.value],["true",t=>t.type==="BooleanValue"&&t.value],["none",t=>t.type==="NullValue"],["string",t=>t.type==="StringValue"],["number",t=>t instanceof me||t instanceof Ze],["integer",t=>t instanceof me],["iterable",t=>t.type==="ArrayValue"||t.type==="StringValue"],["mapping",t=>t instanceof dt],["sequence",t=>t instanceof ye||t instanceof dt||t instanceof ee],["lower",t=>{let e=t.value;return t.type==="StringValue"&&e===e.toLowerCase()}],["upper",t=>{let e=t.value;return t.type==="StringValue"&&e===e.toUpperCase()}],["none",t=>t.type==="NullValue"],["defined",t=>t.type!=="UndefinedValue"],["undefined",t=>t.type==="UndefinedValue"],["equalto",(t,e)=>t.value===e.value],["eq",(t,e)=>t.value===e.value]]);set(t,e){return this.declareVariable(t,Bu(e))}declareVariable(t,e){if(this.variables.has(t))throw new SyntaxError(`Variable already declared: ${t}`);return this.variables.set(t,e),e}setVariable(t,e){return this.variables.set(t,e),e}resolve(t){if(this.variables.has(t))return this;if(this.parent)return this.parent.resolve(t);throw new Error(`Unknown variable: ${t}`)}lookupVariable(t){try{return this.resolve(t).variables.get(t)??new Ge}catch{return new Ge}}};function HL(t){t.set("false",!1),t.set("true",!0),t.set("none",null),t.set("raise_exception",e=>{throw new Error(e)}),t.set("range",BL),t.set("strftime_now",jL),t.set("True",!0),t.set("False",!1),t.set("None",null)}function hE(t,e){let r=e.split("."),s=t;for(let n of r)if(s instanceof dt)s=s.value.get(n)??new Ge;else if(s instanceof ye){let o=parseInt(n,10);if(!isNaN(o)&&o>=0&&o<s.value.length)s=s.value[o];else return new Ge}else return new Ge;return s}function F0(t,e,r=!1){if(t instanceof Xe&&e instanceof Xe)return 0;if(t instanceof Xe||e instanceof Xe)throw new Error(`Cannot compare ${t.type} with ${e.type}`);if(t instanceof Ge&&e instanceof Ge)return 0;if(t instanceof Ge||e instanceof Ge)throw new Error(`Cannot compare ${t.type} with ${e.type}`);let s=o=>o instanceof me||o instanceof Ze||o instanceof pe,n=o=>o instanceof pe?o.value?1:0:o.value;if(s(t)&&s(e)){let o=n(t),a=n(e);return o<a?-1:o>a?1:0}if(t.type!==e.type)throw new Error(`Cannot compare different types: ${t.type} and ${e.type}`);if(t.type==="StringValue"){let o=t.value,a=e.value;return r||(o=o.toLowerCase(),a=a.toLowerCase()),o<a?-1:o>a?1:0}else throw new Error(`Cannot compare type: ${t.type}`)}var XL=class{global;constructor(t){this.global=t??new Cs}run(t){return this.evaluate(t,this.global)}evaluateBinaryExpression(t,e){let r=this.evaluate(t.left,e);switch(t.operator.value){case"and":return r.__bool__().value?this.evaluate(t.right,e):r;case"or":return r.__bool__().value?r:this.evaluate(t.right,e)}let s=this.evaluate(t.right,e);switch(t.operator.value){case"==":return new pe(r.value==s.value);case"!=":return new pe(r.value!=s.value)}if(r instanceof Ge||s instanceof Ge){if(s instanceof Ge&&["in","not in"].includes(t.operator.value))return new pe(t.operator.value==="not in");throw new Error(`Cannot perform operation ${t.operator.value} on undefined values`)}else{if(r instanceof Xe||s instanceof Xe)throw new Error("Cannot perform operation on null values");if(t.operator.value==="~")return new ee(r.value.toString()+s.value.toString());if((r instanceof me||r instanceof Ze)&&(s instanceof me||s instanceof Ze)){let n=r.value,o=s.value;switch(t.operator.value){case"+":case"-":case"*":{let a=t.operator.value==="+"?n+o:t.operator.value==="-"?n-o:n*o;return r instanceof Ze||s instanceof Ze?new Ze(a):new me(a)}case"/":return new Ze(n/o);case"%":{let a=n%o;return r instanceof Ze||s instanceof Ze?new Ze(a):new me(a)}case"<":return new pe(n<o);case">":return new pe(n>o);case">=":return new pe(n>=o);case"<=":return new pe(n<=o)}}else if(r instanceof ye&&s instanceof ye){if(t.operator.value==="+")return new ye(r.value.concat(s.value))}else if(s instanceof ye){let n=s.value.find(o=>o.value===r.value)!==void 0;switch(t.operator.value){case"in":return new pe(n);case"not in":return new pe(!n)}}}if((r instanceof ee||s instanceof ee)&&t.operator.value==="+")return new ee(r.value.toString()+s.value.toString());if(r instanceof ee&&s instanceof ee)switch(t.operator.value){case"in":return new pe(s.value.includes(r.value));case"not in":return new pe(!s.value.includes(r.value))}if(r instanceof ee&&s instanceof dt)switch(t.operator.value){case"in":return new pe(s.value.has(r.value));case"not in":return new pe(!s.value.has(r.value))}throw new SyntaxError(`Unknown operator "${t.operator.value}" between ${r.type} and ${s.type}`)}evaluateArguments(t,e){let r=[],s=new Map;for(let n of t)if(n.type==="SpreadExpression"){let o=n,a=this.evaluate(o.argument,e);if(!(a instanceof ye))throw new Error(`Cannot unpack non-iterable type: ${a.type}`);for(let i of a.value)r.push(i)}else if(n.type==="KeywordArgumentExpression"){let o=n;s.set(o.key.value,this.evaluate(o.value,e))}else{if(s.size>0)throw new Error("Positional arguments must come before keyword arguments");r.push(this.evaluate(n,e))}return[r,s]}applyFilter(t,e,r){if(e.type==="Identifier"){let s=e;if(s.value==="safe")return t;if(s.value==="tojson")return new ee(Ls(t,{}));if(t instanceof ye)switch(s.value){case"list":return t;case"first":return t.value[0];case"last":return t.value[t.value.length-1];case"length":return new me(t.value.length);case"reverse":return new ye(t.value.slice().reverse());case"sort":return new ye(t.value.slice().sort((n,o)=>F0(n,o,!1)));case"join":return new ee(t.value.map(n=>n.value).join(""));case"string":return new ee(Ls(t,{},0,!1));case"unique":{let n=new Set,o=[];for(let a of t.value)n.has(a.value)||(n.add(a.value),o.push(a));return new ye(o)}default:throw new Error(`Unknown ArrayValue filter: ${s.value}`)}else if(t instanceof ee)switch(s.value){case"length":case"upper":case"lower":case"title":case"capitalize":{let n=t.builtins.get(s.value);if(n instanceof qe)return n.value([],r);if(n instanceof me)return n;throw new Error(`Unknown StringValue filter: ${s.value}`)}case"trim":return new ee(t.value.trim());case"indent":return new ee(t.value.split(`
6
6
  `).map((n,o)=>o===0||n.length===0?n:" "+n).join(`
7
- `));case"join":case"string":return t;case"int":{let n=parseInt(t.value,10);return new me(isNaN(n)?0:n)}case"float":{let n=parseFloat(t.value);return new Ye(isNaN(n)?0:n)}default:throw new Error(`Unknown StringValue filter: ${s.value}`)}else if(t instanceof me||t instanceof Ye)switch(s.value){case"abs":return t instanceof me?new me(Math.abs(t.value)):new Ye(Math.abs(t.value));case"int":return new me(Math.floor(t.value));case"float":return new Ye(t.value);default:throw new Error(`Unknown NumericValue filter: ${s.value}`)}else if(t instanceof gt)switch(s.value){case"items":return new ve(Array.from(t.value.entries()).map(([n,o])=>new ve([new ee(n),o])));case"length":return new me(t.value.size);default:{let n=t.builtins.get(s.value);if(n)return n instanceof Ge?n.value([],r):n;throw new Error(`Unknown ObjectValue filter: ${s.value}`)}}else if(t instanceof ce)switch(s.value){case"bool":return new ce(t.value);case"int":return new me(t.value?1:0);case"float":return new Ye(t.value?1:0);case"string":return new ee(t.value?"true":"false");default:throw new Error(`Unknown BooleanValue filter: ${s.value}`)}throw new Error(`Cannot apply filter "${s.value}" to type: ${t.type}`)}else if(e.type==="CallExpression"){let s=e;if(s.callee.type!=="Identifier")throw new Error(`Unknown filter: ${s.callee.type}`);let n=s.callee.value;if(n==="tojson"){let[,o]=this.evaluateArguments(s.args,r),a=o.get("indent")??new Ve;if(!(a instanceof me||a instanceof Ve))throw new Error("If set, indent must be a number");let i=o.get("ensure_ascii")??new ce(!1);if(!(i instanceof ce))throw new Error("If set, ensure_ascii must be a boolean");let l=o.get("sort_keys")??new ce(!1);if(!(l instanceof ce))throw new Error("If set, sort_keys must be a boolean");let u=o.get("separators")??new Ve,p=null;if(u instanceof ve||u instanceof Ck){if(u.value.length!==2)throw new Error("separators must be a tuple of two strings");let[f,m]=u.value;if(!(f instanceof ee)||!(m instanceof ee))throw new Error("separators must be a tuple of two strings");p=[f.value,m.value]}else if(!(u instanceof Ve))throw new Error("If set, separators must be a tuple of two strings");return new ee(Ms(t,{indent:a.value,ensureAscii:i.value,sortKeys:l.value,separators:p}))}else if(n==="join"){let o;if(t instanceof ee)o=Array.from(t.value);else if(t instanceof ve)o=t.value.map(u=>u.value);else throw new Error(`Cannot apply filter "${n}" to type: ${t.type}`);let[a,i]=this.evaluateArguments(s.args,r),l=a.at(0)??i.get("separator")??new ee("");if(!(l instanceof ee))throw new Error("separator must be a string");return new ee(o.join(l.value))}else if(n==="int"||n==="float"){let[o,a]=this.evaluateArguments(s.args,r),i=o.at(0)??a.get("default")??(n==="int"?new me(0):new Ye(0));if(t instanceof ee){let l=n==="int"?parseInt(t.value,10):parseFloat(t.value);return isNaN(l)?i:n==="int"?new me(l):new Ye(l)}else{if(t instanceof me||t instanceof Ye)return t;if(t instanceof ce)return n==="int"?new me(t.value?1:0):new Ye(t.value?1:0);throw new Error(`Cannot apply filter "${n}" to type: ${t.type}`)}}else if(n==="default"){let[o,a]=this.evaluateArguments(s.args,r),i=o[0]??new ee(""),l=o[1]??a.get("boolean")??new ce(!1);if(!(l instanceof ce))throw new Error("`default` filter flag must be a boolean");return t instanceof je||l.value&&!t.__bool__().value?i:t}if(t instanceof ve){switch(n){case"sort":{let[o,a]=this.evaluateArguments(s.args,r),i=o.at(0)??a.get("reverse")??new ce(!1);if(!(i instanceof ce))throw new Error("reverse must be a boolean");let l=o.at(1)??a.get("case_sensitive")??new ce(!1);if(!(l instanceof ce))throw new Error("case_sensitive must be a boolean");let u=o.at(2)??a.get("attribute")??new Ve;if(!(u instanceof ee||u instanceof me||u instanceof Ve))throw new Error("attribute must be a string, integer, or null");let p=f=>{if(u instanceof Ve)return f;let m=u instanceof me?String(u.value):u.value;return Pk(f,m)};return new ve(t.value.slice().sort((f,m)=>{let h=p(f),w=p(m),x=r0(h,w,l.value);return i.value?-x:x}))}case"selectattr":case"rejectattr":{let o=n==="selectattr";if(t.value.some(f=>!(f instanceof gt)))throw new Error(`\`${n}\` can only be applied to array of objects`);if(s.args.some(f=>f.type!=="StringLiteral"))throw new Error(`arguments of \`${n}\` must be strings`);let[a,i,l]=s.args.map(f=>this.evaluate(f,r)),u;if(i){let f=r.tests.get(i.value);if(!f)throw new Error(`Unknown test: ${i.value}`);u=f}else u=(...f)=>f[0].__bool__().value;let p=t.value.filter(f=>{let m=f.value.get(a.value),h=m?u(m,l):!1;return o?h:!h});return new ve(p)}case"map":{let[,o]=this.evaluateArguments(s.args,r);if(o.has("attribute")){let a=o.get("attribute");if(!(a instanceof ee))throw new Error("attribute must be a string");let i=o.get("default"),l=t.value.map(u=>{if(!(u instanceof gt))throw new Error("items in map must be an object");let p=Pk(u,a.value);return p instanceof je?i??new je:p});return new ve(l)}else throw new Error("`map` expressions without `attribute` set are not currently supported.")}}throw new Error(`Unknown ArrayValue filter: ${n}`)}else if(t instanceof ee){switch(n){case"indent":{let[o,a]=this.evaluateArguments(s.args,r),i=o.at(0)??a.get("width")??new me(4);if(!(i instanceof me))throw new Error("width must be a number");let l=o.at(1)??a.get("first")??new ce(!1),u=o.at(2)??a.get("blank")??new ce(!1),p=t.value.split(`
8
- `),f=" ".repeat(i.value),m=p.map((h,w)=>!l.value&&w===0||!u.value&&h.length===0?h:f+h);return new ee(m.join(`
9
- `))}case"replace":{let o=t.builtins.get("replace");if(!(o instanceof Ge))throw new Error("replace filter not available");let[a,i]=this.evaluateArguments(s.args,r);return o.value([...a,new Fi(i)],r)}}throw new Error(`Unknown StringValue filter: ${n}`)}else if(t instanceof gt){let o=t.builtins.get(n);if(o&&o instanceof Ge){let[a,i]=this.evaluateArguments(s.args,r);return i.size>0&&a.push(new Fi(i)),o.value(a,r)}throw new Error(`Unknown ObjectValue filter: ${n}`)}else throw new Error(`Cannot apply filter "${n}" to type: ${t.type}`)}throw new Error(`Unknown filter: ${e.type}`)}evaluateFilterExpression(t,e){let r=this.evaluate(t.operand,e);return this.applyFilter(r,t.filter,e)}evaluateTestExpression(t,e){let r=this.evaluate(t.operand,e),s=e.tests.get(t.test.value);if(!s)throw new Error(`Unknown test: ${t.test.value}`);let n=s(r);return new ce(t.negate?!n:n)}evaluateSelectExpression(t,e){return this.evaluate(t.test,e).__bool__().value?this.evaluate(t.lhs,e):new je}evaluateUnaryExpression(t,e){let r=this.evaluate(t.argument,e);if(t.operator.value==="not")return new ce(!r.value);throw new SyntaxError(`Unknown operator: ${t.operator.value}`)}evaluateTernaryExpression(t,e){return this.evaluate(t.condition,e).__bool__().value?this.evaluate(t.trueExpr,e):this.evaluate(t.falseExpr,e)}evalProgram(t,e){return this.evaluateBlock(t.body,e)}evaluateBlock(t,e){let r="";for(let s of t){let n=this.evaluate(s,e);n.type!=="NullValue"&&n.type!=="UndefinedValue"&&(r+=n.toString())}return new ee(r)}evaluateIdentifier(t,e){return e.lookupVariable(t.value)}evaluateCallExpression(t,e){let[r,s]=this.evaluateArguments(t.args,e);s.size>0&&r.push(new Fi(s));let n=this.evaluate(t.callee,e);if(n.type!=="FunctionValue")throw new Error(`Cannot call something that is not a function: got ${n.type}`);return n.value(r,e)}evaluateSliceExpression(t,e,r){if(!(t instanceof ve||t instanceof ee))throw new Error("Slice object must be an array or string");let s=this.evaluate(e.start,r),n=this.evaluate(e.stop,r),o=this.evaluate(e.step,r);if(!(s instanceof me||s instanceof je))throw new Error("Slice start must be numeric or undefined");if(!(n instanceof me||n instanceof je))throw new Error("Slice stop must be numeric or undefined");if(!(o instanceof me||o instanceof je))throw new Error("Slice step must be numeric or undefined");return t instanceof ve?new ve(Tk(t.value,s.value,n.value,o.value)):new ee(Tk(Array.from(t.value),s.value,n.value,o.value).join(""))}evaluateMemberExpression(t,e){let r=this.evaluate(t.object,e),s;if(t.computed){if(t.property.type==="SliceExpression")return this.evaluateSliceExpression(r,t.property,e);s=this.evaluate(t.property,e)}else s=new ee(t.property.value);let n;if(r instanceof gt){if(!(s instanceof ee))throw new Error(`Cannot access property with non-string: got ${s.type}`);n=r.value.get(s.value)??r.builtins.get(s.value)}else if(r instanceof ve||r instanceof ee)if(s instanceof me)n=r.value.at(s.value),r instanceof ee&&(n=new ee(r.value.at(s.value)));else if(s instanceof ee)n=r.builtins.get(s.value);else throw new Error(`Cannot access property with non-string/non-number: got ${s.type}`);else{if(!(s instanceof ee))throw new Error(`Cannot access property with non-string: got ${s.type}`);n=r.builtins.get(s.value)}return n instanceof cr?n:new je}evaluateSet(t,e){let r=t.value?this.evaluate(t.value,e):this.evaluateBlock(t.body,e);if(t.assignee.type==="Identifier"){let s=t.assignee.value;e.setVariable(s,r)}else if(t.assignee.type==="TupleLiteral"){let s=t.assignee;if(!(r instanceof ve))throw new Error(`Cannot unpack non-iterable type in set: ${r.type}`);let n=r.value;if(n.length!==s.value.length)throw new Error(`Too ${s.value.length>n.length?"few":"many"} items to unpack in set`);for(let o=0;o<s.value.length;++o){let a=s.value[o];if(a.type!=="Identifier")throw new Error(`Cannot unpack to non-identifier in set: ${a.type}`);e.setVariable(a.value,n[o])}}else if(t.assignee.type==="MemberExpression"){let s=t.assignee,n=this.evaluate(s.object,e);if(!(n instanceof gt))throw new Error("Cannot assign to member of non-object");if(s.property.type!=="Identifier")throw new Error("Cannot assign to member with non-identifier property");n.value.set(s.property.value,r)}else throw new Error(`Invalid LHS inside assignment expression: ${JSON.stringify(t.assignee)}`);return new Ve}evaluateIf(t,e){let r=this.evaluate(t.test,e);return this.evaluateBlock(r.__bool__().value?t.body:t.alternate,e)}evaluateFor(t,e){let r=new As(e),s,n;if(t.iterable.type==="SelectExpression"){let u=t.iterable;n=this.evaluate(u.lhs,r),s=u.test}else n=this.evaluate(t.iterable,r);if(!(n instanceof ve||n instanceof gt))throw new Error(`Expected iterable or object type in for loop: got ${n.type}`);n instanceof gt&&(n=n.keys());let o=[],a=[];for(let u=0;u<n.value.length;++u){let p=new As(r),f=n.value[u],m;if(t.loopvar.type==="Identifier")m=h=>h.setVariable(t.loopvar.value,f);else if(t.loopvar.type==="TupleLiteral"){let h=t.loopvar;if(f.type!=="ArrayValue")throw new Error(`Cannot unpack non-iterable type: ${f.type}`);let w=f;if(h.value.length!==w.value.length)throw new Error(`Too ${h.value.length>w.value.length?"few":"many"} items to unpack`);m=x=>{for(let k=0;k<h.value.length;++k){if(h.value[k].type!=="Identifier")throw new Error(`Cannot unpack non-identifier type: ${h.value[k].type}`);x.setVariable(h.value[k].value,w.value[k])}}}else throw new Error(`Invalid loop variable(s): ${t.loopvar.type}`);s&&(m(p),!this.evaluate(s,p).__bool__().value)||(o.push(f),a.push(m))}let i="",l=!0;for(let u=0;u<o.length;++u){let p=new Map([["index",new me(u+1)],["index0",new me(u)],["revindex",new me(o.length-u)],["revindex0",new me(o.length-u-1)],["first",new ce(u===0)],["last",new ce(u===o.length-1)],["length",new me(o.length)],["previtem",u>0?o[u-1]:new je],["nextitem",u<o.length-1?o[u+1]:new je]]);r.setVariable("loop",new gt(p)),a[u](r);try{let f=this.evaluateBlock(t.body,r);i+=f.value}catch(f){if(f instanceof Ok)continue;if(f instanceof Sk)break;throw f}l=!1}if(l){let u=this.evaluateBlock(t.defaultBlock,r);i+=u.value}return new ee(i)}evaluateMacro(t,e){return e.setVariable(t.name.value,new Ge((r,s)=>{let n=new As(s);r=r.slice();let o;r.at(-1)?.type==="KeywordArgumentsValue"&&(o=r.pop());for(let a=0;a<t.args.length;++a){let i=t.args[a],l=r[a];if(i.type==="Identifier"){let u=i;if(!l)throw new Error(`Missing positional argument: ${u.value}`);n.setVariable(u.value,l)}else if(i.type==="KeywordArgumentExpression"){let u=i,p=l??o?.value.get(u.key.value)??this.evaluate(u.value,n);n.setVariable(u.key.value,p)}else throw new Error(`Unknown argument type: ${i.type}`)}return this.evaluateBlock(t.body,n)})),new Ve}evaluateCallStatement(t,e){let r=new Ge((i,l)=>{let u=new As(l);if(t.callerArgs)for(let p=0;p<t.callerArgs.length;++p){let f=t.callerArgs[p];if(f.type!=="Identifier")throw new Error(`Caller parameter must be an identifier, got ${f.type}`);u.setVariable(f.value,i[p]??new je)}return this.evaluateBlock(t.body,u)}),[s,n]=this.evaluateArguments(t.call.args,e);s.push(new Fi(n));let o=this.evaluate(t.call.callee,e);if(o.type!=="FunctionValue")throw new Error(`Cannot call something that is not a function: got ${o.type}`);let a=new As(e);return a.setVariable("caller",r),o.value(s,a)}evaluateFilterStatement(t,e){let r=this.evaluateBlock(t.body,e);return this.applyFilter(r,t.filter,e)}evaluate(t,e){if(!t)return new je;switch(t.type){case"Program":return this.evalProgram(t,e);case"Set":return this.evaluateSet(t,e);case"If":return this.evaluateIf(t,e);case"For":return this.evaluateFor(t,e);case"Macro":return this.evaluateMacro(t,e);case"CallStatement":return this.evaluateCallStatement(t,e);case"Break":throw new Sk;case"Continue":throw new Ok;case"IntegerLiteral":return new me(t.value);case"FloatLiteral":return new Ye(t.value);case"StringLiteral":return new ee(t.value);case"ArrayLiteral":return new ve(t.value.map(r=>this.evaluate(r,e)));case"TupleLiteral":return new Ck(t.value.map(r=>this.evaluate(r,e)));case"ObjectLiteral":{let r=new Map;for(let[s,n]of t.value){let o=this.evaluate(s,e);if(!(o instanceof ee))throw new Error(`Object keys must be strings: got ${o.type}`);r.set(o.value,this.evaluate(n,e))}return new gt(r)}case"Identifier":return this.evaluateIdentifier(t,e);case"CallExpression":return this.evaluateCallExpression(t,e);case"MemberExpression":return this.evaluateMemberExpression(t,e);case"UnaryExpression":return this.evaluateUnaryExpression(t,e);case"BinaryExpression":return this.evaluateBinaryExpression(t,e);case"FilterExpression":return this.evaluateFilterExpression(t,e);case"FilterStatement":return this.evaluateFilterStatement(t,e);case"TestExpression":return this.evaluateTestExpression(t,e);case"SelectExpression":return this.evaluateSelectExpression(t,e);case"Ternary":return this.evaluateTernaryExpression(t,e);case"Comment":return new Ve;default:throw new SyntaxError(`Unknown node type: ${t.type}`)}}};function Au(t){switch(typeof t){case"number":return Number.isInteger(t)?new me(t):new Ye(t);case"string":return new ee(t);case"boolean":return new ce(t);case"undefined":return new je;case"object":return t===null?new Ve:Array.isArray(t)?new ve(t.map(Au)):new gt(new Map(Object.entries(t).map(([e,r])=>[e,Au(r)])));case"function":return new Ge((e,r)=>{let s=t(...e.map(n=>n.value))??null;return Au(s)});default:throw new Error(`Cannot convert to runtime value: ${t}`)}}var at=`
10
- `,ZC="{%- ",eP=" -%}";function tP(t){switch(t.operator.type){case"MultiplicativeBinaryOperator":return 4;case"AdditiveBinaryOperator":return 3;case"ComparisonBinaryOperator":return 2;case"Identifier":return t.operator.value==="and"?1:t.operator.value==="in"||t.operator.value==="not in"?2:0}return 0}function rP(t,e=" "){let r=typeof e=="number"?" ".repeat(e):e;return Jt(t.body,0,r).replace(/\n$/,"")}function mt(...t){return ZC+t.join(" ")+eP}function Jt(t,e,r){return t.map(s=>sP(s,e,r)).join(at)}function sP(t,e,r){let s=r.repeat(e);switch(t.type){case"Program":return Jt(t.body,e,r);case"If":return nP(t,e,r);case"For":return oP(t,e,r);case"Set":return aP(t,e,r);case"Macro":return iP(t,e,r);case"Break":return s+mt("break");case"Continue":return s+mt("continue");case"CallStatement":return lP(t,e,r);case"FilterStatement":return cP(t,e,r);case"Comment":return s+"{# "+t.value+" #}";default:return s+"{{- "+ke(t)+" -}}"}}function nP(t,e,r){let s=r.repeat(e),n=[],o=t;for(;o&&(n.push({test:o.test,body:o.body}),o.alternate.length===1&&o.alternate[0].type==="If");)o=o.alternate[0];let a=s+mt("if",ke(n[0].test))+at+Jt(n[0].body,e+1,r);for(let i=1;i<n.length;++i)a+=at+s+mt("elif",ke(n[i].test))+at+Jt(n[i].body,e+1,r);return o&&o.alternate.length>0&&(a+=at+s+mt("else")+at+Jt(o.alternate,e+1,r)),a+=at+s+mt("endif"),a}function oP(t,e,r){let s=r.repeat(e),n="";if(t.iterable.type==="SelectExpression"){let a=t.iterable;n=`${ke(a.lhs)} if ${ke(a.test)}`}else n=ke(t.iterable);let o=s+mt("for",ke(t.loopvar),"in",n)+at+Jt(t.body,e+1,r);return t.defaultBlock.length>0&&(o+=at+s+mt("else")+at+Jt(t.defaultBlock,e+1,r)),o+=at+s+mt("endfor"),o}function aP(t,e,r){let s=r.repeat(e),n=ke(t.assignee),o=t.value?ke(t.value):"",a=s+mt("set",`${n}${t.value?" = "+o:""}`);return t.body.length===0?a:a+at+Jt(t.body,e+1,r)+at+s+mt("endset")}function iP(t,e,r){let s=r.repeat(e),n=t.args.map(ke).join(", ");return s+mt("macro",`${t.name.value}(${n})`)+at+Jt(t.body,e+1,r)+at+s+mt("endmacro")}function lP(t,e,r){let s=r.repeat(e),n=t.callerArgs&&t.callerArgs.length>0?`(${t.callerArgs.map(ke).join(", ")})`:"",o=ke(t.call),a=s+mt(`call${n}`,o)+at;return a+=Jt(t.body,e+1,r)+at,a+=s+mt("endcall"),a}function cP(t,e,r){let s=r.repeat(e),n=t.filter.type==="Identifier"?t.filter.value:ke(t.filter),o=s+mt("filter",n)+at;return o+=Jt(t.body,e+1,r)+at,o+=s+mt("endfilter"),o}function ke(t,e=-1){switch(t.type){case"SpreadExpression":return`*${ke(t.argument)}`;case"Identifier":return t.value;case"IntegerLiteral":return`${t.value}`;case"FloatLiteral":return`${t.value}`;case"StringLiteral":return JSON.stringify(t.value);case"BinaryExpression":{let r=t,s=tP(r),n=ke(r.left,s),o=ke(r.right,s+1),a=`${n} ${r.operator.value} ${o}`;return s<e?`(${a})`:a}case"UnaryExpression":{let r=t;return r.operator.value+(r.operator.value==="not"?" ":"")+ke(r.argument,1/0)}case"CallExpression":{let r=t,s=r.args.map(ke).join(", ");return`${ke(r.callee)}(${s})`}case"MemberExpression":{let r=t,s=ke(r.object);["Identifier","MemberExpression","CallExpression","StringLiteral","IntegerLiteral","FloatLiteral","ArrayLiteral","TupleLiteral","ObjectLiteral"].includes(r.object.type)||(s=`(${s})`);let n=ke(r.property);return!r.computed&&r.property.type!=="Identifier"&&(n=`(${n})`),r.computed?`${s}[${n}]`:`${s}.${n}`}case"FilterExpression":{let r=t,s=ke(r.operand,1/0);return r.filter.type==="CallExpression"?`${s} | ${ke(r.filter)}`:`${s} | ${r.filter.value}`}case"SelectExpression":{let r=t;return`${ke(r.lhs)} if ${ke(r.test)}`}case"TestExpression":{let r=t;return`${ke(r.operand)} is${r.negate?" not":""} ${r.test.value}`}case"ArrayLiteral":case"TupleLiteral":{let r=t.value.map(ke),s=t.type==="ArrayLiteral"?"[]":"()";return`${s[0]}${r.join(", ")}${s[1]}`}case"ObjectLiteral":return`{${Array.from(t.value.entries()).map(([s,n])=>`${ke(s)}: ${ke(n)}`).join(", ")}}`;case"SliceExpression":{let r=t,s=r.start?ke(r.start):"",n=r.stop?ke(r.stop):"",o=r.step?`:${ke(r.step)}`:"";return`${s}:${n}${o}`}case"KeywordArgumentExpression":{let r=t;return`${r.key.value}=${ke(r.value)}`}case"Ternary":{let r=t,s=`${ke(r.trueExpr)} if ${ke(r.condition,0)} else ${ke(r.falseExpr)}`;return e>-1?`(${s})`:s}default:throw new Error(`Unknown expression type: ${t.type}`)}}var zk=class{parsed;constructor(t){let e=xC(t,{lstrip_blocks:!0,trim_blocks:!0});this.parsed=GC(e)}render(t){let e=new As;if(QC(e),t)for(let[n,o]of Object.entries(t))e.set(n,o);return new JC(e).run(this.parsed).value}format(t){return rP(this.parsed,t?.indent||" ")}};var Ze=class{constructor(){let t=function(...e){return t._call(...e)};return Object.setPrototypeOf(t,new.target.prototype)}_call(...t){throw Error("Must implement _call method in subclass")}};var er=Xr(require("fs"),1),ji=Xr(require("path"),1),uP={txt:"text/plain",html:"text/html",css:"text/css",js:"text/javascript",json:"application/json",png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif"},Ts=class t{constructor(e){if(this.filePath=e,this.headers=new Headers,this.exists=er.default.existsSync(e),this.exists){this.status=200,this.statusText="OK";let r=er.default.statSync(e);this.headers.set("content-length",r.size.toString()),this.updateContentType();let s=er.default.createReadStream(e);this.body=new ReadableStream({start(n){s.on("data",o=>n.enqueue(o)),s.on("end",()=>n.close()),s.on("error",o=>n.error(o))},cancel(){s.destroy()}})}else this.status=404,this.statusText="Not Found",this.body=null}updateContentType(){let e=this.filePath.toString().split(".").pop().toLowerCase();this.headers.set("content-type",uP[e]??"application/octet-stream")}clone(){let e=new t(this.filePath);return e.exists=this.exists,e.status=this.status,e.statusText=this.statusText,e.headers=new Headers(this.headers),e}async arrayBuffer(){return(await er.default.promises.readFile(this.filePath)).buffer}async blob(){let e=await er.default.promises.readFile(this.filePath);return new Blob([e],{type:this.headers.get("content-type")})}async text(){return await er.default.promises.readFile(this.filePath,"utf8")}async json(){return JSON.parse(await this.text())}},An=class{constructor(e){this.path=e}async match(e){let r=ji.default.join(this.path,e),s=new Ts(r);if(s.exists)return s}async put(e,r,s=void 0){let n=ji.default.join(this.path,e);try{let o=r.headers.get("Content-Length"),a=parseInt(o??"0"),i=0;await er.default.promises.mkdir(ji.default.dirname(n),{recursive:!0});let l=er.default.createWriteStream(n),u=r.body.getReader();for(;;){let{done:p,value:f}=await u.read();if(p)break;await new Promise((h,w)=>{l.write(f,x=>{if(x){w(x);return}h()})}),i+=f.length;let m=a?i/a*100:0;s?.({progress:m,loaded:i,total:a})}l.close()}catch(o){try{await er.default.promises.unlink(n)}catch{}throw o}}async delete(e){let r=ji.default.join(this.path,e);try{return await er.default.promises.unlink(r),!0}catch{return!1}}};var Lk={400:"Bad request error occurred while trying to load file",401:"Unauthorized access to file",403:"Forbidden access to file",404:"Could not locate file",408:"Request timeout error occurred while trying to load file",500:"Internal server error error occurred while trying to load file",502:"Bad gateway error occurred while trying to load file",503:"Service unavailable error occurred while trying to load file",504:"Gateway timeout error occurred while trying to load file"},Mu=100,Nk=/^(\b[\w\-.]+\b\/)?\b[\w\-.]{1,96}\b$/;function Gi(...t){return t=t.map((e,r)=>(r&&(e=e.replace(new RegExp("^/"),"")),r!==t.length-1&&(e=e.replace(new RegExp("/$"),"")),e)),t.join("/")}function Sr(t,e=null,r=null){let s;try{s=new URL(t)}catch{return!1}return!(e&&!e.includes(s.protocol)||r&&!r.includes(s.hostname))}function $k(t){return!(!Nk.test(t)||t.includes("..")||t.includes("--")||t.endsWith(".git")||t.endsWith(".ipynb"))}function Rk(t,e,r){if(!r)return null;let s=Lk[t]??`Error (${t}) occurred while trying to load file`;throw Error(`${s}: "${e}".`)}async function Dk(t,e,r){let s=t.headers.get("Content-Length"),n=s?parseInt(s,10):r??0;s===null&&!r&&Q.warn("Unable to determine content-length from response headers. Will expand buffer when needed.");let o=new Uint8Array(n),a=0,i=t.body.getReader();async function l(){let{done:u,value:p}=await i.read();if(u)return;let f=a+p.length;if(f>n){n=f;let h=new Uint8Array(n);h.set(o),o=h}o.set(p,a),a=f;let m=a/n*100;return e({progress:m,loaded:a,total:n}),l()}return await l(),o}async function ur(t=null){let e=null;if(fe.useCustomCache){if(!fe.customCache)throw Error("`env.useCustomCache=true`, but `env.customCache` is not defined.");if(!fe.customCache.match||!fe.customCache.put)throw new Error("`env.customCache` must be an object which implements the `match` and `put` functions of the Web Cache API. For more information, see https://developer.mozilla.org/en-US/docs/Web/API/Cache");e=fe.customCache}if(!e&&fe.useBrowserCache){if(typeof caches>"u")throw Error("Browser cache is not available in this environment.");try{e=await caches.open(fe.cacheKey)}catch(r){Q.warn("An error occurred while opening the browser cache:",r)}}if(!e&&fe.useFSCache){if(!ge.IS_FS_AVAILABLE)throw Error("File System Cache is not available in this environment.");e=new An(t??fe.cacheDir)}return e}async function Uk(t,...e){for(let r of e)try{let s=await t.match(r);if(s)return s}catch{continue}}async function pP(t){if(!Sr(t,["http:","https:"]))return null;let e=s0(t);return e.set("Range","bytes=0-0"),fe.fetch(t,{method:"GET",headers:e})}async function pr(t,e,r={}){let s=await ur(r?.cache_dir),{localPath:n,remoteURL:o,proposedCacheKey:a,validModelId:i}=Ss(t,e,r,s),l=await Os(s,n,a);if(l!==void 0&&typeof l!="string"){let u=l.headers.get("content-length"),p=l.headers.get("content-type");return{exists:!0,size:u?parseInt(u,10):void 0,contentType:p||void 0,fromCache:!0}}if(fe.allowLocalModels&&!Sr(n,["http:","https:"]))try{let p=await Kr(n);if(typeof p!="string"&&p.status!==404){let f=p.headers.get("content-length"),m=p.headers.get("content-type");return{exists:!0,size:f?parseInt(f,10):void 0,contentType:m||void 0,fromCache:!1}}}catch{}if(fe.allowRemoteModels&&!r.local_files_only&&i)try{let u=await pP(o);if(u&&u.status>=200&&u.status<300){let p,f=u.headers.get("content-type");if(u.status===206){let m=u.headers.get("content-range");if(m){let h=m.match(/bytes \d+-\d+\/(\d+)/);h&&(p=parseInt(h[1],10))}}else if(u.status===200)try{await u.body?.cancel()}catch{}if(p===void 0){let m=u.headers.get("content-length");p=m?parseInt(m,10):void 0}return{exists:!0,size:p,contentType:f||void 0,fromCache:!1}}}catch(u){Q.warn(`Unable to fetch file metadata for "${o}": ${u}`)}return{exists:!1,fromCache:!1}}async function Kr(t){return fe.useFS&&!Sr(t,["http:","https:","blob:"])?new Ts(t instanceof URL?t.protocol==="file:"?t.pathname:t.toString():t):fe.fetch(t,{headers:s0(t)})}function s0(t){let e=typeof process<"u"&&process?.release?.name==="node",r=new Headers;if(e){let s=!!process.env?.TESTING_REMOTELY,n=fe.version;if(r.set("User-Agent",`transformers.js/${n}; is_ci/${s};`),Sr(t,["http:","https:"],["huggingface.co","hf.co"])){let a=process.env?.HF_TOKEN??process.env?.HF_ACCESS_TOKEN;a&&r.set("Authorization",`Bearer ${a}`)}}return r}function Ss(t,e,r={},s=null){let n=r.revision??"main",o=Gi(t,e),a=$k(t),i=a?Gi(fe.localModelPath,o):o,l=Gi(fe.remoteHost,fe.remotePathTemplate.replaceAll("{model}",t).replaceAll("{revision}",encodeURIComponent(n)),e),u=s instanceof An?n==="main"?o:Gi(t,n,e):l;return{requestURL:o,localPath:i,remoteURL:l,proposedCacheKey:u,validModelId:a}}async function Os(t,e,r){if(t)return await Uk(t,e,r)}async function dP(t,e,r,s,n,o,a={}){if(await r.match(s)===void 0)if(o)typeof n!="string"&&await r.put(s,new Response(o,{headers:n.headers})).catch(i=>{Q.warn(`Unable to add response to browser cache: ${i}.`)});else{let i=a.progress_callback?l=>Mr(a.progress_callback,{status:"progress",name:t,file:e,...l}):void 0;await r.put(s,n,i)}}async function fP(t,e,r=!0,s={},n=!1,o=null){let{requestURL:a,localPath:i,remoteURL:l,proposedCacheKey:u,validModelId:p}=Ss(t,e,s,o),f,m=!1,h;h=await Os(o,i,u);let w=h!==void 0;if(!w){if(fe.allowLocalModels)if(Sr(a,["http:","https:"])){if(s.local_files_only)throw new Error(`\`local_files_only=true\`, but attempted to load a remote file from: ${a}.`);if(!fe.allowRemoteModels)throw new Error(`\`env.allowRemoteModels=false\`, but attempted to load a remote file from: ${a}.`)}else try{h=await Kr(i),f=i}catch(A){Q.warn(`Unable to load from local path "${i}": "${A}"`)}if(h===void 0||typeof h!="string"&&h.status===404){if(s.local_files_only||!fe.allowRemoteModels){if(r)throw Error(`\`local_files_only=true\` or \`env.allowRemoteModels=false\` and file was not found locally at "${i}".`);return null}if(!p)throw Error(`Local file missing at "${i}" and download aborted due to invalid model ID "${t}".`);if(h=await Kr(l),h.status!==200)return Rk(h.status,l,r);f=u}m=o&&typeof Response<"u"&&h instanceof Response&&h.status===200}Mr(s.progress_callback,{status:"download",name:t,file:e});let x;if(!(ge.IS_NODE_ENV&&n)){let E;if(typeof h!="string")if(!s.progress_callback)E=new Uint8Array(await h.arrayBuffer());else if(w&&typeof navigator<"u"&&/firefox/i.test(navigator.userAgent))E=new Uint8Array(await h.arrayBuffer()),Mr(s.progress_callback,{status:"progress",name:t,file:e,progress:100,loaded:E.length,total:E.length});else{let A,S=h.headers.get("content-length");if(S)A=parseInt(S,10);else try{let T=await pr(t,e,s);T.size&&(A=T.size)}catch{}E=await Dk(h,T=>{Mr(s.progress_callback,{status:"progress",name:t,file:e,...T})},A)}x=E}if(m&&f&&typeof h!="string"&&await dP(t,e,o,f,h,x,s),Mr(s.progress_callback,{status:"done",name:t,file:e}),x){if(!ge.IS_NODE_ENV&&n)throw new Error("Cannot return path in a browser environment.");return x}if(h instanceof Ts)return h.filePath;let k=await o?.match(f);if(k instanceof Ts)return k.filePath;if(k instanceof Response)return new Uint8Array(await k.arrayBuffer());if(typeof k=="string")return k;throw new Error("Unable to get model file path or buffer.")}async function qi(t,e,r=!0,s={},n=!1){if(!fe.allowLocalModels){if(s.local_files_only)throw Error("Invalid configuration detected: local models are disabled (`env.allowLocalModels=false`) but you have requested to only use local models (`local_files_only=true`).");if(!fe.allowRemoteModels)throw Error("Invalid configuration detected: both local and remote models are disabled. Fix by setting `env.allowLocalModels` or `env.allowRemoteModels` to `true`.")}Mr(s.progress_callback,{status:"initiate",name:t,file:e});let o=await ur(s?.cache_dir);return await fP(t,e,r,s,n,o)}async function n0(t,e,r=!0,s={}){let n=await qi(t,e,r,s,!1);return n===null?null:new TextDecoder("utf-8").decode(n)}async function ut(t,e,r=!0,s={}){let n=await n0(t,e,r,s);return n===null?{}:JSON.parse(n)}function Fk(t,[e,r,s],[n,o],a="bilinear",i=!1){let l=o/s,u=n/r,p=new t.constructor(n*o*e),f=r*s,m=n*o;for(let h=0;h<n;++h)for(let w=0;w<o;++w){let x=h*o+w,k=(w+.5)/l-.5,E=(h+.5)/u-.5,A=Math.floor(k),S=Math.floor(E),T=Math.min(A+1,s-1),P=Math.min(S+1,r-1);A=Math.max(A,0),S=Math.max(S,0);let C=k-A,v=E-S,F=(1-C)*(1-v),H=C*(1-v),V=(1-C)*v,J=C*v,X=S*s,Y=P*s,U=X+A,z=X+T,ne=Y+A,ae=Y+T;for(let I=0;I<e;++I){let L=I*f;p[I*m+x]=F*t[L+U]+H*t[L+z]+V*t[L+ne]+J*t[L+ae]}}return p}function jk(t,e,r){let s=new Array(r.length),n=new Array(r.length);for(let i=r.length-1,l=1;i>=0;--i)n[i]=l,s[i]=e[r[i]],l*=s[i];let o=r.map((i,l)=>n[r.indexOf(l)]),a=new t.constructor(t.length);for(let i=0;i<t.length;++i){let l=0;for(let u=e.length-1,p=i;u>=0;--u)l+=p%e[u]*o[u],p=Math.floor(p/e[u]);a[l]=t[i]}return[a,s]}function Ie(t){let e=Se(t)[0],r=t.map(o=>Math.exp(o-e)),s=r.reduce((o,a)=>o+a,0);return r.map(o=>o/s)}function Ou(t){let e=Se(t)[0],r=0;for(let o=0;o<t.length;++o)r+=Math.exp(t[o]-e);let s=Math.log(r);return t.map(o=>o-e-s)}function a0(t,e){let r=0;for(let s=0;s<t.length;++s)r+=t[s]*e[s];return r}function Gk(t,e){let r=a0(t,e),s=Bk(t),n=Bk(e);return r/(s*n)}function Bk(t){return Math.sqrt(t.reduce((e,r)=>e+r*r,0))}function Wi(t){if(t.length===0)throw Error("Array must not be empty");let e=t[0],r=0;for(let s=1;s<t.length;++s)t[s]<e&&(e=t[s],r=s);return[e,r]}function Se(t){if(t.length===0)throw Error("Array must not be empty");let e=t[0],r=0;for(let s=1;s<t.length;++s)t[s]>e&&(e=t[s],r=s);return[e,r]}function qk(t){return t>0&&(t&t-1)===0}var Tu=class{constructor(e){if(this.size=e|0,this.size<=1||!qk(this.size))throw new Error("FFT size must be a power of two larger than 1");this._csize=e<<1,this.table=new Float64Array(this.size*2);for(let s=0;s<this.table.length;s+=2){let n=Math.PI*s/this.size;this.table[s]=Math.cos(n),this.table[s+1]=-Math.sin(n)}let r=0;for(let s=1;this.size>s;s<<=1)++r;this._width=r%2===0?r-1:r,this._bitrev=new Int32Array(1<<this._width);for(let s=0;s<this._bitrev.length;++s){this._bitrev[s]=0;for(let n=0;n<this._width;n+=2){let o=this._width-n-2;this._bitrev[s]|=(s>>>n&3)<<o}}}createComplexArray(){return new Float64Array(this._csize)}fromComplexArray(e,r){let s=r||new Array(e.length>>>1);for(let n=0;n<e.length;n+=2)s[n>>>1]=e[n];return s}toComplexArray(e,r){let s=r||this.createComplexArray();for(let n=0;n<s.length;n+=2)s[n]=e[n>>>1],s[n+1]=0;return s}transform(e,r){if(e===r)throw new Error("Input and output buffers must be different");this._transform4(e,r,1)}realTransform(e,r){if(e===r)throw new Error("Input and output buffers must be different");this._realTransform4(e,r,1)}inverseTransform(e,r){if(e===r)throw new Error("Input and output buffers must be different");this._transform4(e,r,-1);for(let s=0;s<e.length;++s)e[s]/=this.size}_transform4(e,r,s){let n=this._csize,a=1<<this._width,i=n/a<<1,l,u,p=this._bitrev;if(i===4)for(l=0,u=0;l<n;l+=i,++u){let m=p[u];this._singleTransform2(r,e,l,m,a)}else for(l=0,u=0;l<n;l+=i,++u){let m=p[u];this._singleTransform4(r,e,l,m,a,s)}let f=this.table;for(a>>=2;a>=2;a>>=2){i=n/a<<1;let m=i>>>2;for(l=0;l<n;l+=i){let h=l+m-1;for(let w=l,x=0;w<h;w+=2,x+=a){let k=w,E=k+m,A=E+m,S=A+m,T=e[k],P=e[k+1],C=e[E],v=e[E+1],F=e[A],H=e[A+1],V=e[S],J=e[S+1],X=f[x],Y=s*f[x+1],U=C*X-v*Y,z=C*Y+v*X,ne=f[2*x],ae=s*f[2*x+1],I=F*ne-H*ae,L=F*ae+H*ne,R=f[3*x],te=s*f[3*x+1],pe=V*R-J*te,Fe=V*te+J*R,ze=T+I,Mt=P+L,Je=T-I,tt=P-L,nt=U+pe,Me=z+Fe,xe=s*(U-pe),We=s*(z-Fe);e[k]=ze+nt,e[k+1]=Mt+Me,e[E]=Je+We,e[E+1]=tt-xe,e[A]=ze-nt,e[A+1]=Mt-Me,e[S]=Je-We,e[S+1]=tt+xe}}}}_singleTransform2(e,r,s,n,o){let a=e[n],i=e[n+1],l=e[n+o],u=e[n+o+1];r[s]=a+l,r[s+1]=i+u,r[s+2]=a-l,r[s+3]=i-u}_singleTransform4(e,r,s,n,o,a){let i=o*2,l=o*3,u=e[n],p=e[n+1],f=e[n+o],m=e[n+o+1],h=e[n+i],w=e[n+i+1],x=e[n+l],k=e[n+l+1],E=u+h,A=p+w,S=u-h,T=p-w,P=f+x,C=m+k,v=a*(f-x),F=a*(m-k);r[s]=E+P,r[s+1]=A+C,r[s+2]=S+F,r[s+3]=T-v,r[s+4]=E-P,r[s+5]=A-C,r[s+6]=S-F,r[s+7]=T+v}_realTransform4(e,r,s){let n=this._csize,a=1<<this._width,i=n/a<<1,l,u,p=this._bitrev;if(i===4)for(l=0,u=0;l<n;l+=i,++u){let h=p[u];this._singleRealTransform2(r,e,l,h>>>1,a>>>1)}else for(l=0,u=0;l<n;l+=i,++u){let h=p[u];this._singleRealTransform4(r,e,l,h>>>1,a>>>1,s)}let f=this.table;for(a>>=2;a>=2;a>>=2){i=n/a<<1;let h=i>>>1,w=h>>>1,x=w>>>1;for(l=0;l<n;l+=i)for(let k=0,E=0;k<=x;k+=2,E+=a){let A=l+k,S=A+w,T=S+w,P=T+w,C=e[A],v=e[A+1],F=e[S],H=e[S+1],V=e[T],J=e[T+1],X=e[P],Y=e[P+1],U=C,z=v,ne=f[E],ae=s*f[E+1],I=F*ne-H*ae,L=F*ae+H*ne,R=f[2*E],te=s*f[2*E+1],pe=V*R-J*te,Fe=V*te+J*R,ze=f[3*E],Mt=s*f[3*E+1],Je=X*ze-Y*Mt,tt=X*Mt+Y*ze,nt=U+pe,Me=z+Fe,xe=U-pe,We=z-Fe,Tt=I+Je,be=L+tt,De=s*(I-Je),Wr=s*(L-tt);if(e[A]=nt+Tt,e[A+1]=Me+be,e[S]=xe+Wr,e[S+1]=We-De,k===0){e[T]=nt-Tt,e[T+1]=Me-be;continue}if(k===x)continue;let xs=l+w-k,St=l+h-k;e[xs]=xe-s*Wr,e[xs+1]=-We-s*De,e[St]=nt-s*Tt,e[St+1]=-Me+s*be}}let m=n>>>1;for(let h=2;h<m;h+=2)e[n-h]=e[h],e[n-h+1]=-e[h+1]}_singleRealTransform2(e,r,s,n,o){let a=e[n],i=e[n+o];r[s]=a+i,r[s+1]=0,r[s+2]=a-i,r[s+3]=0}_singleRealTransform4(e,r,s,n,o,a){let i=o*2,l=o*3,u=e[n],p=e[n+o],f=e[n+i],m=e[n+l],h=u+f,w=u-f,x=p+m,k=a*(p-m);r[s]=h+x,r[s+1]=0,r[s+2]=w,r[s+3]=-k,r[s+4]=h-x,r[s+5]=0,r[s+6]=w,r[s+7]=k}},o0=class{constructor(e){let r=2*(e-1),s=2*(2*e-1),n=2**Math.ceil(Math.log2(s));this.bufferSize=n,this._a=r;let o=new Float64Array(s),a=new Float64Array(n);this._chirpBuffer=new Float64Array(n),this._buffer1=new Float64Array(n),this._buffer2=new Float64Array(n),this._outBuffer1=new Float64Array(n),this._outBuffer2=new Float64Array(n);let i=-2*Math.PI/e,l=Math.cos(i),u=Math.sin(i);for(let p=0;p<s>>1;++p){let f=(p+1-e)**2/2,m=Math.sqrt(l**2+u**2)**f,h=f*Math.atan2(u,l),w=2*p;o[w]=m*Math.cos(h),o[w+1]=m*Math.sin(h),a[w]=o[w],a[w+1]=-o[w+1]}this._slicedChirpBuffer=o.subarray(r,s),this._f=new Tu(n>>1),this._f.transform(this._chirpBuffer,a)}_transform(e,r,s){let n=this._buffer1,o=this._buffer2,a=this._outBuffer1,i=this._outBuffer2,l=this._chirpBuffer,u=this._slicedChirpBuffer,p=this._a;if(s)for(let f=0;f<u.length;f+=2){let m=f+1,h=f>>1,w=r[h];n[f]=w*u[f],n[m]=w*u[m]}else for(let f=0;f<u.length;f+=2){let m=f+1;n[f]=r[f]*u[f]-r[m]*u[m],n[m]=r[f]*u[m]+r[m]*u[f]}this._f.transform(a,n);for(let f=0;f<l.length;f+=2){let m=f+1;o[f]=a[f]*l[f]-a[m]*l[m],o[m]=a[f]*l[m]+a[m]*l[f]}this._f.inverseTransform(i,o);for(let f=0;f<i.length;f+=2){let m=i[f+p],h=i[f+p+1],w=u[f],x=u[f+1];e[f]=m*w-h*x,e[f+1]=m*x+h*w}}transform(e,r){this._transform(e,r,!1)}realTransform(e,r){this._transform(e,r,!0)}},Su=class{constructor(e){this.fft_length=e,this.isPowerOfTwo=qk(e),this.isPowerOfTwo?(this.fft=new Tu(e),this.outputBufferSize=2*e):(this.fft=new o0(e),this.outputBufferSize=this.fft.bufferSize)}realTransform(e,r){this.fft.realTransform(e,r)}transform(e,r){this.fft.transform(e,r)}};function Wk(t,e){if(e%2===0||e<=0)throw new Error("Window size must be a positive odd number");let r=new t.constructor(t.length),s=new t.constructor(e),n=Math.floor(e/2);for(let o=0;o<t.length;++o){let a=0;for(let i=-n;i<=n;++i){let l=o+i;l<0?l=Math.abs(l):l>=t.length&&(l=2*(t.length-1)-l),s[a++]=t[l]}s.sort(),r[o]=s[n]}return r}function Is(t,e){let r=Math.pow(10,e);return Math.round(t*r)/r}function Vk(t){let e=Math.round(t);return Math.abs(t)%1===.5?e%2===0?e:e-1:e}function Hk(t){let e=t.length,r=t[0].length,s=[e+1,r+1],n=Array.from({length:s[0]},()=>Array(s[1]).fill(1/0));n[0][0]=0;let o=Array.from({length:s[0]},()=>Array(s[1]).fill(-1));for(let p=1;p<s[1];++p)for(let f=1;f<s[0];++f){let m=n[f-1][p-1],h=n[f-1][p],w=n[f][p-1],x,k;m<h&&m<w?(x=m,k=0):h<m&&h<w?(x=h,k=1):(x=w,k=2),n[f][p]=t[f-1][p-1]+x,o[f][p]=k}for(let p=0;p<s[1];++p)o[0][p]=2;for(let p=0;p<s[0];++p)o[p][0]=1;let a=e,i=r,l=[],u=[];for(;a>0||i>0;)switch(l.push(a-1),u.push(i-1),o[a][i]){case 0:--a,--i;break;case 1:--a;break;case 2:--i;break;default:throw new Error(`Internal error in dynamic time warping. Unexpected trace[${a}, ${i}]. Please file a bug report.`)}return l.reverse(),u.reverse(),[l,u]}var Xk=(function(){let t=null;return function(e){if(!t){t=new Float32Array(65536);let o=new ArrayBuffer(4),a=new Uint32Array(o),i=new Float32Array(o);for(let l=0;l<t.length;++l){let u=0,p=(l&32768)<<16,f=(l&31744)>>10,m=l&1023;if(f===31)u=p|2139095040|m<<13;else if(f===0)if(m===0)u=p;else{let h=113;for(;(m&1024)===0;)m<<=1,--h;m&=-1025,u=p|h<<23|m<<13}else u=p|f+112<<23|m<<13;a[0]=u,t[l]=i[0]}}let r=e.length,s=t,n=new Float32Array(r);for(let o=0;o<r;++o)n[o]=s[e[o]];return n}})();var GP=Xr(require("onnxruntime-node"),1);var Y0={};ks(Y0,{InferenceSession:()=>N0,TRACE:()=>Du,TRACE_EVENT_BEGIN:()=>es,TRACE_EVENT_END:()=>ts,TRACE_FUNC_BEGIN:()=>$s,TRACE_FUNC_END:()=>Rs,Tensor:()=>rr,default:()=>jP,env:()=>He,registerBackend:()=>Ns});var tr={};var z0=Object.defineProperty,mP=Object.getOwnPropertyDescriptor,hP=Object.getOwnPropertyNames,_P=Object.prototype.hasOwnProperty,gP=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')}),ye=(t,e)=>()=>(t&&(e=t(t=0)),e),Zi=(t,e)=>{for(var r in e)z0(t,r,{get:e[r],enumerable:!0})},wP=(t,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of hP(e))!_P.call(t,n)&&n!==r&&z0(t,n,{get:()=>e[n],enumerable:!(s=mP(e,n))||s.enumerable});return t},Ru=t=>wP(z0({},"__esModule",{value:!0}),t),Vi,Yr,Ns,Kk,vE,kE=ye(()=>{"use strict";Vi=new Map,Yr=[],Ns=(t,e,r)=>{if(e&&typeof e.init=="function"&&typeof e.createInferenceSessionHandler=="function"){let s=Vi.get(t);if(s===void 0)Vi.set(t,{backend:e,priority:r});else{if(s.priority>r)return;if(s.priority===r&&s.backend!==e)throw new Error(`cannot register backend "${t}" using priority ${r}`)}if(r>=0){let n=Yr.indexOf(t);n!==-1&&Yr.splice(n,1);for(let o=0;o<Yr.length;o++)if(Vi.get(Yr[o]).priority<=r){Yr.splice(o,0,t);return}Yr.push(t)}return}throw new TypeError("not a valid backend")},Kk=async t=>{let e=Vi.get(t);if(!e)return"backend not found.";if(e.initialized)return e.backend;if(e.aborted)return e.error;{let r=!!e.initPromise;try{return r||(e.initPromise=e.backend.init(t)),await e.initPromise,e.initialized=!0,e.backend}catch(s){return r||(e.error=`${s}`,e.aborted=!0),e.error}finally{delete e.initPromise}}},vE=async t=>{let e=t.executionProviders||[],r=e.map(l=>typeof l=="string"?l:l.name),s=r.length===0?Yr:r,n,o=[],a=new Set;for(let l of s){let u=await Kk(l);typeof u=="string"?o.push({name:l,err:u}):(n||(n=u),n===u&&a.add(l))}if(!n)throw new Error(`no available backend found. ERR: ${o.map(l=>`[${l.name}] ${l.err}`).join(", ")}`);for(let{name:l,err:u}of o)r.includes(l)&&console.warn(`removing requested execution provider "${l}" from session options because it is not available: ${u}`);let i=e.filter(l=>a.has(typeof l=="string"?l:l.name));return[n,new Proxy(t,{get:(l,u)=>u==="executionProviders"?i:Reflect.get(l,u)})]}}),xP=ye(()=>{"use strict";kE()}),EE,yP=ye(()=>{"use strict";EE="1.24.0-dev.20251116-b39e144322"}),i0,pt,AE=ye(()=>{"use strict";yP(),i0="warning",pt={wasm:{},webgl:{},webgpu:{},versions:{common:EE},set logLevel(t){if(t!==void 0){if(typeof t!="string"||["verbose","info","warning","error","fatal"].indexOf(t)===-1)throw new Error(`Unsupported logging level: ${t}`);i0=t}},get logLevel(){return i0}},Object.defineProperty(pt,"logLevel",{enumerable:!0})}),He,bP=ye(()=>{"use strict";AE(),He=pt}),ME,TE,vP=ye(()=>{"use strict";ME=(t,e)=>{let r=typeof document<"u"?document.createElement("canvas"):new OffscreenCanvas(1,1);r.width=t.dims[3],r.height=t.dims[2];let s=r.getContext("2d");if(s!=null){let n,o;e?.tensorLayout!==void 0&&e.tensorLayout==="NHWC"?(n=t.dims[2],o=t.dims[3]):(n=t.dims[3],o=t.dims[2]);let a=e?.format!==void 0?e.format:"RGB",i=e?.norm,l,u;i===void 0||i.mean===void 0?l=[255,255,255,255]:typeof i.mean=="number"?l=[i.mean,i.mean,i.mean,i.mean]:(l=[i.mean[0],i.mean[1],i.mean[2],0],i.mean[3]!==void 0&&(l[3]=i.mean[3])),i===void 0||i.bias===void 0?u=[0,0,0,0]:typeof i.bias=="number"?u=[i.bias,i.bias,i.bias,i.bias]:(u=[i.bias[0],i.bias[1],i.bias[2],0],i.bias[3]!==void 0&&(u[3]=i.bias[3]));let p=o*n,f=0,m=p,h=p*2,w=-1;a==="RGBA"?(f=0,m=p,h=p*2,w=p*3):a==="RGB"?(f=0,m=p,h=p*2):a==="RBG"&&(f=0,h=p,m=p*2);for(let x=0;x<o;x++)for(let k=0;k<n;k++){let E=(t.data[f++]-u[0])*l[0],A=(t.data[m++]-u[1])*l[1],S=(t.data[h++]-u[2])*l[2],T=w===-1?255:(t.data[w++]-u[3])*l[3];s.fillStyle="rgba("+E+","+A+","+S+","+T+")",s.fillRect(k,x,1,1)}if("toDataURL"in r)return r.toDataURL();throw new Error("toDataURL is not supported")}else throw new Error("Can not access image data")},TE=(t,e)=>{let r=typeof document<"u"?document.createElement("canvas").getContext("2d"):new OffscreenCanvas(1,1).getContext("2d"),s;if(r!=null){let n,o,a;e?.tensorLayout!==void 0&&e.tensorLayout==="NHWC"?(n=t.dims[2],o=t.dims[1],a=t.dims[3]):(n=t.dims[3],o=t.dims[2],a=t.dims[1]);let i=e!==void 0&&e.format!==void 0?e.format:"RGB",l=e?.norm,u,p;l===void 0||l.mean===void 0?u=[255,255,255,255]:typeof l.mean=="number"?u=[l.mean,l.mean,l.mean,l.mean]:(u=[l.mean[0],l.mean[1],l.mean[2],255],l.mean[3]!==void 0&&(u[3]=l.mean[3])),l===void 0||l.bias===void 0?p=[0,0,0,0]:typeof l.bias=="number"?p=[l.bias,l.bias,l.bias,l.bias]:(p=[l.bias[0],l.bias[1],l.bias[2],0],l.bias[3]!==void 0&&(p[3]=l.bias[3]));let f=o*n;if(e!==void 0&&(e.format!==void 0&&a===4&&e.format!=="RGBA"||a===3&&e.format!=="RGB"&&e.format!=="BGR"))throw new Error("Tensor format doesn't match input tensor dims");let m=4,h=0,w=1,x=2,k=3,E=0,A=f,S=f*2,T=-1;i==="RGBA"?(E=0,A=f,S=f*2,T=f*3):i==="RGB"?(E=0,A=f,S=f*2):i==="RBG"&&(E=0,S=f,A=f*2),s=r.createImageData(n,o);for(let P=0;P<o*n;h+=m,w+=m,x+=m,k+=m,P++)s.data[h]=(t.data[E++]-p[0])*u[0],s.data[w]=(t.data[A++]-p[1])*u[1],s.data[x]=(t.data[S++]-p[2])*u[2],s.data[k]=T===-1?255:(t.data[T++]-p[3])*u[3]}else throw new Error("Can not access image data");return s}}),Iu,SE,OE,IE,CE,PE,kP=ye(()=>{"use strict";L0(),Iu=(t,e)=>{if(t===void 0)throw new Error("Image buffer must be defined");if(e.height===void 0||e.width===void 0)throw new Error("Image height and width must be defined");if(e.tensorLayout==="NHWC")throw new Error("NHWC Tensor layout is not supported yet");let{height:r,width:s}=e,n=e.norm??{mean:255,bias:0},o,a;typeof n.mean=="number"?o=[n.mean,n.mean,n.mean,n.mean]:o=[n.mean[0],n.mean[1],n.mean[2],n.mean[3]??255],typeof n.bias=="number"?a=[n.bias,n.bias,n.bias,n.bias]:a=[n.bias[0],n.bias[1],n.bias[2],n.bias[3]??0];let i=e.format!==void 0?e.format:"RGBA",l=e.tensorFormat!==void 0&&e.tensorFormat!==void 0?e.tensorFormat:"RGB",u=r*s,p=l==="RGBA"?new Float32Array(u*4):new Float32Array(u*3),f=4,m=0,h=1,w=2,x=3,k=0,E=u,A=u*2,S=-1;i==="RGB"&&(f=3,m=0,h=1,w=2,x=-1),l==="RGBA"?S=u*3:l==="RBG"?(k=0,A=u,E=u*2):l==="BGR"&&(A=0,E=u,k=u*2);for(let T=0;T<u;T++,m+=f,w+=f,h+=f,x+=f)p[k++]=(t[m]+a[0])/o[0],p[E++]=(t[h]+a[1])/o[1],p[A++]=(t[w]+a[2])/o[2],S!==-1&&x!==-1&&(p[S++]=(t[x]+a[3])/o[3]);return l==="RGBA"?new Nt("float32",p,[1,4,r,s]):new Nt("float32",p,[1,3,r,s])},SE=async(t,e)=>{let r=typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement,s=typeof ImageData<"u"&&t instanceof ImageData,n=typeof ImageBitmap<"u"&&t instanceof ImageBitmap,o=typeof t=="string",a,i=e??{},l=()=>{if(typeof document<"u")return document.createElement("canvas");if(typeof OffscreenCanvas<"u")return new OffscreenCanvas(1,1);throw new Error("Canvas is not supported")},u=p=>typeof HTMLCanvasElement<"u"&&p instanceof HTMLCanvasElement||p instanceof OffscreenCanvas?p.getContext("2d"):null;if(r){let p=l();p.width=t.width,p.height=t.height;let f=u(p);if(f!=null){let m=t.height,h=t.width;if(e!==void 0&&e.resizedHeight!==void 0&&e.resizedWidth!==void 0&&(m=e.resizedHeight,h=e.resizedWidth),e!==void 0){if(i=e,e.tensorFormat!==void 0)throw new Error("Image input config format must be RGBA for HTMLImageElement");i.tensorFormat="RGBA",i.height=m,i.width=h}else i.tensorFormat="RGBA",i.height=m,i.width=h;f.drawImage(t,0,0),a=f.getImageData(0,0,h,m).data}else throw new Error("Can not access image data")}else if(s){let p,f;if(e!==void 0&&e.resizedWidth!==void 0&&e.resizedHeight!==void 0?(p=e.resizedHeight,f=e.resizedWidth):(p=t.height,f=t.width),e!==void 0&&(i=e),i.format="RGBA",i.height=p,i.width=f,e!==void 0){let m=l();m.width=f,m.height=p;let h=u(m);if(h!=null)h.putImageData(t,0,0),a=h.getImageData(0,0,f,p).data;else throw new Error("Can not access image data")}else a=t.data}else if(n){if(e===void 0)throw new Error("Please provide image config with format for Imagebitmap");let p=l();p.width=t.width,p.height=t.height;let f=u(p);if(f!=null){let m=t.height,h=t.width;return f.drawImage(t,0,0,h,m),a=f.getImageData(0,0,h,m).data,i.height=m,i.width=h,Iu(a,i)}else throw new Error("Can not access image data")}else{if(o)return new Promise((p,f)=>{let m=l(),h=u(m);if(!t||!h)return f();let w=new Image;w.crossOrigin="Anonymous",w.src=t,w.onload=()=>{m.width=w.width,m.height=w.height,h.drawImage(w,0,0,m.width,m.height);let x=h.getImageData(0,0,m.width,m.height);i.height=m.height,i.width=m.width,p(Iu(x.data,i))}});throw new Error("Input data provided is not supported - aborted tensor creation")}if(a!==void 0)return Iu(a,i);throw new Error("Input data provided is not supported - aborted tensor creation")},OE=(t,e)=>{let{width:r,height:s,download:n,dispose:o}=e,a=[1,s,r,4];return new Nt({location:"texture",type:"float32",texture:t,dims:a,download:n,dispose:o})},IE=(t,e)=>{let{dataType:r,dims:s,download:n,dispose:o}=e;return new Nt({location:"gpu-buffer",type:r??"float32",gpuBuffer:t,dims:s,download:n,dispose:o})},CE=(t,e)=>{let{dataType:r,dims:s,download:n,dispose:o}=e;return new Nt({location:"ml-tensor",type:r??"float32",mlTensor:t,dims:s,download:n,dispose:o})},PE=(t,e,r)=>new Nt({location:"cpu-pinned",type:t,data:e,dims:r??[e.length]})}),zs,Qi,l0,zE,EP=ye(()=>{"use strict";zs=new Map([["float32",Float32Array],["uint8",Uint8Array],["int8",Int8Array],["uint16",Uint16Array],["int16",Int16Array],["int32",Int32Array],["bool",Uint8Array],["float64",Float64Array],["uint32",Uint32Array],["int4",Uint8Array],["uint4",Uint8Array]]),Qi=new Map([[Float32Array,"float32"],[Uint8Array,"uint8"],[Int8Array,"int8"],[Uint16Array,"uint16"],[Int16Array,"int16"],[Int32Array,"int32"],[Float64Array,"float64"],[Uint32Array,"uint32"]]),l0=!1,zE=()=>{if(!l0){l0=!0;let t=typeof BigInt64Array<"u"&&BigInt64Array.from,e=typeof BigUint64Array<"u"&&BigUint64Array.from,r=globalThis.Float16Array,s=typeof r<"u"&&r.from;t&&(zs.set("int64",BigInt64Array),Qi.set(BigInt64Array,"int64")),e&&(zs.set("uint64",BigUint64Array),Qi.set(BigUint64Array,"uint64")),s?(zs.set("float16",r),Qi.set(r,"float16")):zs.set("float16",Uint16Array)}}}),LE,NE,AP=ye(()=>{"use strict";L0(),LE=t=>{let e=1;for(let r=0;r<t.length;r++){let s=t[r];if(typeof s!="number"||!Number.isSafeInteger(s))throw new TypeError(`dims[${r}] must be an integer, got: ${s}`);if(s<0)throw new RangeError(`dims[${r}] must be a non-negative integer, got: ${s}`);e*=s}return e},NE=(t,e)=>{switch(t.location){case"cpu":return new Nt(t.type,t.data,e);case"cpu-pinned":return new Nt({location:"cpu-pinned",data:t.data,type:t.type,dims:e});case"texture":return new Nt({location:"texture",texture:t.texture,type:t.type,dims:e});case"gpu-buffer":return new Nt({location:"gpu-buffer",gpuBuffer:t.gpuBuffer,type:t.type,dims:e});case"ml-tensor":return new Nt({location:"ml-tensor",mlTensor:t.mlTensor,type:t.type,dims:e});default:throw new Error(`tensorReshape: tensor location ${t.location} is not supported`)}}}),Nt,L0=ye(()=>{"use strict";vP(),kP(),EP(),AP(),Nt=class{constructor(t,e,r){zE();let s,n;if(typeof t=="object"&&"location"in t)switch(this.dataLocation=t.location,s=t.type,n=t.dims,t.location){case"cpu-pinned":{let a=zs.get(s);if(!a)throw new TypeError(`unsupported type "${s}" to create tensor from pinned buffer`);if(!(t.data instanceof a))throw new TypeError(`buffer should be of type ${a.name}`);this.cpuData=t.data;break}case"texture":{if(s!=="float32")throw new TypeError(`unsupported type "${s}" to create tensor from texture`);this.gpuTextureData=t.texture,this.downloader=t.download,this.disposer=t.dispose;break}case"gpu-buffer":{if(s!=="float32"&&s!=="float16"&&s!=="int32"&&s!=="int64"&&s!=="uint32"&&s!=="uint8"&&s!=="bool"&&s!=="uint4"&&s!=="int4")throw new TypeError(`unsupported type "${s}" to create tensor from gpu buffer`);this.gpuBufferData=t.gpuBuffer,this.downloader=t.download,this.disposer=t.dispose;break}case"ml-tensor":{if(s!=="float32"&&s!=="float16"&&s!=="int32"&&s!=="int64"&&s!=="uint32"&&s!=="uint64"&&s!=="int8"&&s!=="uint8"&&s!=="bool"&&s!=="uint4"&&s!=="int4")throw new TypeError(`unsupported type "${s}" to create tensor from MLTensor`);this.mlTensorData=t.mlTensor,this.downloader=t.download,this.disposer=t.dispose;break}default:throw new Error(`Tensor constructor: unsupported location '${this.dataLocation}'`)}else{let a,i;if(typeof t=="string")if(s=t,i=r,t==="string"){if(!Array.isArray(e))throw new TypeError("A string tensor's data must be a string array.");a=e}else{let l=zs.get(t);if(l===void 0)throw new TypeError(`Unsupported tensor type: ${t}.`);if(Array.isArray(e)){if(t==="float16"&&l===Uint16Array||t==="uint4"||t==="int4")throw new TypeError(`Creating a ${t} tensor from number array is not supported. Please use ${l.name} as data.`);t==="uint64"||t==="int64"?a=l.from(e,BigInt):a=l.from(e)}else if(e instanceof l)a=e;else if(e instanceof Uint8ClampedArray)if(t==="uint8")a=Uint8Array.from(e);else throw new TypeError("A Uint8ClampedArray tensor's data must be type of uint8");else if(t==="float16"&&e instanceof Uint16Array&&l!==Uint16Array)a=new globalThis.Float16Array(e.buffer,e.byteOffset,e.length);else throw new TypeError(`A ${s} tensor's data must be type of ${l}`)}else if(i=e,Array.isArray(t)){if(t.length===0)throw new TypeError("Tensor type cannot be inferred from an empty array.");let l=typeof t[0];if(l==="string")s="string",a=t;else if(l==="boolean")s="bool",a=Uint8Array.from(t);else throw new TypeError(`Invalid element type of data array: ${l}.`)}else if(t instanceof Uint8ClampedArray)s="uint8",a=Uint8Array.from(t);else{let l=Qi.get(t.constructor);if(l===void 0)throw new TypeError(`Unsupported type for tensor data: ${t.constructor}.`);s=l,a=t}if(i===void 0)i=[a.length];else if(!Array.isArray(i))throw new TypeError("A tensor's dims must be a number array");n=i,this.cpuData=a,this.dataLocation="cpu"}let o=LE(n);if(this.cpuData&&o!==this.cpuData.length&&!((s==="uint4"||s==="int4")&&Math.ceil(o/2)===this.cpuData.length))throw new Error(`Tensor's size(${o}) does not match data length(${this.cpuData.length}).`);this.type=s,this.dims=n,this.size=o}static async fromImage(t,e){return SE(t,e)}static fromTexture(t,e){return OE(t,e)}static fromGpuBuffer(t,e){return IE(t,e)}static fromMLTensor(t,e){return CE(t,e)}static fromPinnedBuffer(t,e,r){return PE(t,e,r)}toDataURL(t){return ME(this,t)}toImageData(t){return TE(this,t)}get data(){if(this.ensureValid(),!this.cpuData)throw new Error("The data is not on CPU. Use `getData()` to download GPU data to CPU, or use `texture` or `gpuBuffer` property to access the GPU data directly.");return this.cpuData}get location(){return this.dataLocation}get texture(){if(this.ensureValid(),!this.gpuTextureData)throw new Error("The data is not stored as a WebGL texture.");return this.gpuTextureData}get gpuBuffer(){if(this.ensureValid(),!this.gpuBufferData)throw new Error("The data is not stored as a WebGPU buffer.");return this.gpuBufferData}get mlTensor(){if(this.ensureValid(),!this.mlTensorData)throw new Error("The data is not stored as a WebNN MLTensor.");return this.mlTensorData}async getData(t){switch(this.ensureValid(),this.dataLocation){case"cpu":case"cpu-pinned":return this.data;case"texture":case"gpu-buffer":case"ml-tensor":{if(!this.downloader)throw new Error("The current tensor is not created with a specified data downloader.");if(this.isDownloading)throw new Error("The current tensor is being downloaded.");try{this.isDownloading=!0;let e=await this.downloader();return this.downloader=void 0,this.dataLocation="cpu",this.cpuData=e,t&&this.disposer&&(this.disposer(),this.disposer=void 0),e}finally{this.isDownloading=!1}}default:throw new Error(`cannot get data from location: ${this.dataLocation}`)}}dispose(){if(this.isDownloading)throw new Error("The current tensor is being downloaded.");this.disposer&&(this.disposer(),this.disposer=void 0),this.cpuData=void 0,this.gpuTextureData=void 0,this.gpuBufferData=void 0,this.mlTensorData=void 0,this.downloader=void 0,this.isDownloading=void 0,this.dataLocation="none"}ensureValid(){if(this.dataLocation==="none")throw new Error("The tensor is disposed.")}reshape(t){if(this.ensureValid(),this.downloader||this.disposer)throw new Error("Cannot reshape a tensor that owns GPU resource.");return NE(this,t)}}}),rr,$E=ye(()=>{"use strict";L0(),rr=Nt}),Du,c0,$s,Rs,es,ts,RE=ye(()=>{"use strict";AE(),Du=(t,e)=>{(typeof pt.trace>"u"?!pt.wasm.trace:!pt.trace)||console.timeStamp(`${t}::ORT::${e}`)},c0=(t,e)=>{let r=new Error().stack?.split(/\r\n|\r|\n/g)||[],s=!1;for(let n=0;n<r.length;n++){if(s&&!r[n].includes("TRACE_FUNC")){let o=`FUNC_${t}::${r[n].trim().split(" ")[1]}`;e&&(o+=`::${e}`),Du("CPU",o);return}r[n].includes("TRACE_FUNC")&&(s=!0)}},$s=t=>{(typeof pt.trace>"u"?!pt.wasm.trace:!pt.trace)||c0("BEGIN",t)},Rs=t=>{(typeof pt.trace>"u"?!pt.wasm.trace:!pt.trace)||c0("END",t)},es=t=>{(typeof pt.trace>"u"?!pt.wasm.trace:!pt.trace)||console.time(`ORT::${t}`)},ts=t=>{(typeof pt.trace>"u"?!pt.wasm.trace:!pt.trace)||console.timeEnd(`ORT::${t}`)}}),DE,MP=ye(()=>{"use strict";kE(),$E(),RE(),DE=class UE{constructor(e){this.handler=e}async run(e,r,s){$s(),es("InferenceSession.run");let n={},o={};if(typeof e!="object"||e===null||e instanceof rr||Array.isArray(e))throw new TypeError("'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.");let a=!0;if(typeof r=="object"){if(r===null)throw new TypeError("Unexpected argument[1]: cannot be null.");if(r instanceof rr)throw new TypeError("'fetches' cannot be a Tensor");if(Array.isArray(r)){if(r.length===0)throw new TypeError("'fetches' cannot be an empty array.");a=!1;for(let u of r){if(typeof u!="string")throw new TypeError("'fetches' must be a string array or an object.");if(this.outputNames.indexOf(u)===-1)throw new RangeError(`'fetches' contains invalid output name: ${u}.`);n[u]=null}if(typeof s=="object"&&s!==null)o=s;else if(typeof s<"u")throw new TypeError("'options' must be an object.")}else{let u=!1,p=Object.getOwnPropertyNames(r);for(let f of this.outputNames)if(p.indexOf(f)!==-1){let m=r[f];(m===null||m instanceof rr)&&(u=!0,a=!1,n[f]=m)}if(u){if(typeof s=="object"&&s!==null)o=s;else if(typeof s<"u")throw new TypeError("'options' must be an object.")}else o=r}}else if(typeof r<"u")throw new TypeError("Unexpected argument[1]: must be 'fetches' or 'options'.");for(let u of this.inputNames)if(typeof e[u]>"u")throw new Error(`input '${u}' is missing in 'feeds'.`);if(a)for(let u of this.outputNames)n[u]=null;let i=await this.handler.run(e,n,o),l={};for(let u in i)if(Object.hasOwnProperty.call(i,u)){let p=i[u];p instanceof rr?l[u]=p:l[u]=new rr(p.type,p.data,p.dims)}return ts("InferenceSession.run"),Rs(),l}async release(){return this.handler.dispose()}static async create(e,r,s,n){$s(),es("InferenceSession.create");let o,a={};if(typeof e=="string"){if(o=e,typeof r=="object"&&r!==null)a=r;else if(typeof r<"u")throw new TypeError("'options' must be an object.")}else if(e instanceof Uint8Array){if(o=e,typeof r=="object"&&r!==null)a=r;else if(typeof r<"u")throw new TypeError("'options' must be an object.")}else if(e instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer){let p=e,f=0,m=e.byteLength;if(typeof r=="object"&&r!==null)a=r;else if(typeof r=="number"){if(f=r,!Number.isSafeInteger(f))throw new RangeError("'byteOffset' must be an integer.");if(f<0||f>=p.byteLength)throw new RangeError(`'byteOffset' is out of range [0, ${p.byteLength}).`);if(m=e.byteLength-f,typeof s=="number"){if(m=s,!Number.isSafeInteger(m))throw new RangeError("'byteLength' must be an integer.");if(m<=0||f+m>p.byteLength)throw new RangeError(`'byteLength' is out of range (0, ${p.byteLength-f}].`);if(typeof n=="object"&&n!==null)a=n;else if(typeof n<"u")throw new TypeError("'options' must be an object.")}else if(typeof s<"u")throw new TypeError("'byteLength' must be a number.")}else if(typeof r<"u")throw new TypeError("'options' must be an object.");o=new Uint8Array(p,f,m)}else throw new TypeError("Unexpected argument[0]: must be 'path' or 'buffer'.");let[i,l]=await vE(a),u=await i.createInferenceSessionHandler(o,l);return ts("InferenceSession.create"),Rs(),new UE(u)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}get inputMetadata(){return this.handler.inputMetadata}get outputMetadata(){return this.handler.outputMetadata}}}),N0,TP=ye(()=>{"use strict";MP(),N0=DE}),SP=ye(()=>{"use strict"}),OP=ye(()=>{"use strict"}),IP=ye(()=>{"use strict"}),CP=ye(()=>{"use strict"}),BE={};Zi(BE,{InferenceSession:()=>N0,TRACE:()=>Du,TRACE_EVENT_BEGIN:()=>es,TRACE_EVENT_END:()=>ts,TRACE_FUNC_BEGIN:()=>$s,TRACE_FUNC_END:()=>Rs,Tensor:()=>rr,env:()=>He,registerBackend:()=>Ns});var Ds=ye(()=>{"use strict";xP(),bP(),TP(),$E(),SP(),OP(),RE(),IP(),CP()}),$0=ye(()=>{"use strict"}),FE={};Zi(FE,{default:()=>jE});var u0,p0,jE,PP=ye(()=>{"use strict";sA(),Us(),R0(),u0="ort-wasm-proxy-worker",p0=globalThis.self?.name===u0,p0&&(self.onmessage=t=>{let{type:e,in:r}=t.data;try{switch(e){case"init-wasm":D0(r.wasm).then(()=>{G0(r).then(()=>{postMessage({type:e})},s=>{postMessage({type:e,err:s})})},s=>{postMessage({type:e,err:s})});break;case"init-ep":{let{epName:s,env:n}=r;q0(n,s).then(()=>{postMessage({type:e})},o=>{postMessage({type:e,err:o})});break}case"copy-from":{let{buffer:s}=r,n=Fu(s);postMessage({type:e,out:n});break}case"create":{let{model:s,options:n}=r;W0(s,n).then(o=>{postMessage({type:e,out:o})},o=>{postMessage({type:e,err:o})});break}case"release":V0(r),postMessage({type:e});break;case"run":{let{sessionId:s,inputIndices:n,inputs:o,outputIndices:a,options:i}=r;H0(s,n,o,a,new Array(a.length).fill(null),i).then(l=>{l.some(u=>u[3]!=="cpu")?postMessage({type:e,err:"Proxy does not support non-cpu tensor location."}):postMessage({type:e,out:l},K0([...o,...l]))},l=>{postMessage({type:e,err:l})});break}case"end-profiling":X0(r),postMessage({type:e});break;default:}}catch(s){postMessage({type:e,err:s})}}),jE=p0?null:t=>new Worker(t??zt,{type:"module",name:u0})}),GE={};Zi(GE,{default:()=>qE});async function Yk(t={}){var e=t,r=!!globalThis.window,s=!!globalThis.WorkerGlobalScope,n=s&&self.name?.startsWith("em-pthread");e.mountExternalData=(c,d)=>{c.startsWith("./")&&(c=c.substring(2)),(e.Uc||(e.Uc=new Map)).set(c,d)},e.unmountExternalData=()=>{delete e.Uc},globalThis.SharedArrayBuffer??new WebAssembly.Memory({initial:0,maximum:0,Be:!0}).buffer.constructor;let o=()=>{let c=d=>(..._)=>{let g=ir;return _=d(..._),ir!=g?new Promise((b,M)=>{Py={resolve:b,reject:M}}):_};(()=>{for(let d of["_OrtAppendExecutionProvider","_OrtCreateSession","_OrtRun","_OrtRunWithBinding","_OrtBindInput"])e[d]=c(e[d])})(),typeof jsepRunAsync<"u"&&(e._OrtRun=jsepRunAsync(e._OrtRun),e._OrtRunWithBinding=jsepRunAsync(e._OrtRunWithBinding)),o=void 0};e.asyncInit=()=>{o?.()};var a,i,l=(c,d)=>{throw d},u=tr.url,p="";if(r||s){try{p=new URL(".",u).href}catch{}s&&(i=c=>{var d=new XMLHttpRequest;return d.open("GET",c,!1),d.responseType="arraybuffer",d.send(null),new Uint8Array(d.response)}),a=async c=>{if(C(c))return new Promise((_,g)=>{var b=new XMLHttpRequest;b.open("GET",c,!0),b.responseType="arraybuffer",b.onload=()=>{b.status==200||b.status==0&&b.response?_(b.response):g(b.status)},b.onerror=g,b.send(null)});var d=await fetch(c,{credentials:"same-origin"});if(d.ok)return d.arrayBuffer();throw Error(d.status+" : "+d.url)}}var f,m,h,w,x,k,E=console.log.bind(console),A=console.error.bind(console),S=E,T=A,P=!1,C=c=>c.startsWith("file://");function v(){Vr.buffer!=V.buffer&&pe()}if(n){let c=function(d){try{var _=d.data,g=_.Oc;if(g==="load"){let b=[];self.onmessage=M=>b.push(M),k=()=>{postMessage({Oc:"loaded"});for(let M of b)c(M);self.onmessage=c};for(let M of _.de)e[M]&&!e[M].proxy||(e[M]=(...O)=>{postMessage({Oc:"callHandler",ce:M,args:O})},M=="print"&&(S=e[M]),M=="printErr"&&(T=e[M]));Vr=_.je,pe(),m=_.ke,Je(),gu()}else if(g==="run"){(function(b){var M=(v(),z)[b+52>>>2>>>0];b=(v(),z)[b+56>>>2>>>0],tv(M,M-b),ie(M)})(_.Nc),qy(_.Nc,0,0,1,0,0),jb(),Oy(_.Nc),H||(R1(),H=!0);try{G2(_.he,_.Wc)}catch(b){if(b!="unwind")throw b}}else _.target!=="setimmediate"&&(g==="checkMailbox"?H&&cu():g&&(T(`worker: received unknown command ${g}`),T(_)))}catch(b){throw Y1(),b}};var F=c,H=!1;self.onunhandledrejection=d=>{throw d.reason||d},self.onmessage=c}var V,J,X,Y,U,z,ne,ae,I,L,R,te=!1;function pe(){var c=Vr.buffer;e.HEAP8=V=new Int8Array(c),X=new Int16Array(c),e.HEAPU8=J=new Uint8Array(c),Y=new Uint16Array(c),e.HEAP32=U=new Int32Array(c),e.HEAPU32=z=new Uint32Array(c),ne=new Float32Array(c),ae=new Float64Array(c),I=new BigInt64Array(c),L=new BigUint64Array(c)}function Fe(){te=!0,n?k():Ar._b()}function ze(c){throw T(c="Aborted("+c+")"),P=!0,c=new WebAssembly.RuntimeError(c+". Build with -sASSERTIONS for more info."),x?.(c),c}function Mt(){return{a:{f:q2,J:W2,k:V2,p:H2,l:X2,ta:K2,b:Y2,ca:Q2,Ka:Xb,s:J2,da:Jb,_a:Zb,Ga:e1,Ia:t1,$a:r1,Ya:s1,Ra:n1,Xa:o1,pa:a1,Ha:i1,Yb:l1,Za:c1,Fa:u1,eb:Z2,Da:tM,Tb:rM,Rb:nM,Ca:aM,M:iM,H:lM,Sb:cM,ka:_M,Ub:gM,Ua:wM,Wb:yM,La:bM,Pb:vM,la:kM,Ta:Oy,bb:EM,U:SM,n:zM,c:Ty,sb:LM,w:NM,L:$M,z:RM,j:DM,o:w1,tb:UM,G:BM,T:FM,g:jM,u:GM,m:qM,i:WM,Oa:VM,Pa:HM,Qa:XM,Ma:v1,Na:k1,Qb:E1,fb:YM,db:ZM,Y:eT,rb:tT,ma:rT,cb:QM,gb:sT,ab:nT,Xb:oT,N:KM,hb:aT,X:iT,Vb:lT,ob:gT,C:wT,sa:xT,ra:yT,qb:bT,W:vT,v:kT,nb:ET,mb:AT,lb:MT,pb:TT,kb:ST,jb:OT,ib:IT,Va:I1,Wa:C1,Ja:St,ea:P1,oa:z1,Sa:L1,na:N1,Db:BS,xa:PS,Eb:US,ya:CS,F:bS,e:lS,r:aS,x:oS,D:wS,Ib:SS,ba:MS,B:uS,za:OS,$:zS,ha:TS,Fb:RS,Gb:$S,Ba:vS,Aa:AS,Jb:kS,wa:DS,aa:IS,d:cS,A:pS,q:iS,Cb:FS,t:fS,y:xS,I:dS,E:mS,K:yS,S:LS,ja:gS,_:NS,Kb:_S,Lb:hS,P:ES,h:PT,a:Vr,Ob:Wr,Hb:zT,ia:LT,O:NT,qa:$T,Mb:RT,Q:DT,zb:UT,Ab:BT,ua:FT,fa:jT,R:GT,Ea:qT,va:WT,Z:VT,xb:HT,Zb:XT,V:KT,Bb:YT,ub:QT,vb:ZT,wb:eS,ga:tS,yb:rS,Nb:sS}}}async function Je(){function c(g,b){var M=Ar=g.exports;g={};for(let[O,N]of Object.entries(M))typeof N=="function"?(M=AM(N),g[O]=M):g[O]=N;return Ar=g,Ar=(function(){var O=Ar,N=K=>Te=>K(Te)>>>0,B=K=>()=>K()>>>0;return(O=Object.assign({},O)).$b=N(O.$b),O.Cc=B(O.Cc),O.Ec=N(O.Ec),O.rd=(K=>(Te,Le)=>K(Te,Le)>>>0)(O.rd),O.wd=N(O.wd),O.xd=B(O.xd),O.Bd=N(O.Bd),O})(),Bb.push(Ar.id),$1=(g=Ar).$b,R1=g.ac,e._OrtInit=g.bc,e._OrtGetLastError=g.cc,e._OrtCreateSessionOptions=g.dc,e._OrtAppendExecutionProvider=g.ec,e._OrtAddFreeDimensionOverride=g.fc,e._OrtAddSessionConfigEntry=g.gc,e._OrtReleaseSessionOptions=g.hc,e._OrtCreateSession=g.ic,e._OrtReleaseSession=g.jc,e._OrtGetInputOutputCount=g.kc,e._OrtGetInputOutputMetadata=g.lc,e._OrtFree=g.mc,e._OrtCreateTensor=g.nc,e._OrtGetTensorData=g.oc,e._OrtReleaseTensor=g.pc,e._OrtCreateRunOptions=g.qc,e._OrtAddRunConfigEntry=g.rc,e._OrtReleaseRunOptions=g.sc,e._OrtCreateBinding=g.tc,e._OrtBindInput=g.uc,e._OrtBindOutput=g.vc,e._OrtClearBoundOutputs=g.wc,e._OrtReleaseBinding=g.xc,e._OrtRunWithBinding=g.yc,e._OrtRun=g.zc,e._OrtEndProfiling=g.Ac,Dy=e._OrtGetWebGpuDevice=g.Bc,hu=g.Cc,Kt=e._free=g.Dc,yn=e._malloc=g.Ec,D1=e._wgpuBufferRelease=g.Fc,U1=e._wgpuCreateInstance=g.Gc,B1=g.Hc,F1=g.Ic,j1=g.Jc,G1=g.Kc,q1=g.Lc,W1=g.Pc,V1=g.Zc,H1=g._c,X1=g.$c,Uy=g.bd,By=g.cd,Fy=g.dd,jy=g.ed,Ni=g.fd,Gy=g.gd,K1=g.hd,qy=g.kd,Y1=g.ld,Q1=g.md,J1=g.nd,Wy=g.od,Z1=g.pd,ev=g.qd,Vy=g.rd,_e=g.sd,$i=g.td,tv=g.ud,ie=g.vd,_u=g.wd,le=g.xd,rv=g.yd,Hy=g.zd,sv=g.Ad,nv=g.Bd,ov=g.Cd,Xy=g.Dd,av=g.Ed,iv=g.Fd,lv=g.Gd,cv=g.Hd,uv=g.Id,pv=g.Jd,dv=g.Kd,fv=g.Ld,mv=g.Md,hv=g.Nd,_v=g.Od,gv=g.Pd,wv=g.Qd,xv=g.Rd,yv=g.Td,bv=g.Ud,vv=g.Vd,kv=g.Wd,Ev=g.Yd,Av=g.Zd,Mv=g._d,Tv=g.$d,Sv=g.ae,Ov=g.be,Iv=g.pe,Cv=g.qe,Pv=g.re,zv=g.se,Lv=g.te,Nv=g.ue,$v=g.ve,Rv=g.we,Dv=g.xe,Uv=g.ye,Bv=g.ze,Fv=g.Xe,jv=g.Ye,Gv=g.Ze,qv=g._e,m=b,Ar}var d,_=Mt();return e.instantiateWasm?new Promise(g=>{e.instantiateWasm(_,(b,M)=>{g(c(b,M))})}):n?c(new WebAssembly.Instance(m,Mt()),m):(R??=e.locateFile?e.locateFile?e.locateFile("ort-wasm-simd-threaded.asyncify.wasm",p):p+"ort-wasm-simd-threaded.asyncify.wasm":new URL("ort-wasm-simd-threaded.asyncify.wasm",tr.url).href,d=await(async function(g){var b=R;if(!f&&!C(b))try{var M=fetch(b,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(M,g)}catch(O){T(`wasm streaming compile failed: ${O}`),T("falling back to ArrayBuffer instantiation")}return(async function(O,N){try{var B=await(async function(K){if(!f)try{var Te=await a(K);return new Uint8Array(Te)}catch{}if(K==R&&f)K=new Uint8Array(f);else{if(!i)throw"both async and sync fetching of the wasm failed";K=i(K)}return K})(O);return await WebAssembly.instantiate(B,N)}catch(K){T(`failed to asynchronously prepare wasm: ${K}`),ze(K)}})(b,g)})(_),c(d.instance,d.module))}class tt{name="ExitStatus";constructor(d){this.message=`Program terminated with exit(${d})`,this.status=d}}var nt=c=>{c.terminate(),c.onmessage=()=>{}},Me=[],xe=0,We=null,Tt=c=>{rt.length==0&&(qb(),Gb(rt[0]));var d=rt.pop();if(!d)return 6;Pi.push(d),ys[c.Nc]=d,d.Nc=c.Nc;var _={Oc:"run",he:c.ge,Wc:c.Wc,Nc:c.Nc};return d.postMessage(_,c.Yc),0},be=0,De=(c,d,..._)=>{var g,b=16*_.length,M=le(),O=_u(b),N=O>>>3;for(g of _)typeof g=="bigint"?((v(),I)[N++>>>0]=1n,(v(),I)[N++>>>0]=g):((v(),I)[N++>>>0]=0n,(v(),ae)[N++>>>0]=g);return c=Q1(c,0,b,O,d),ie(M),c};function Wr(c){if(n)return De(0,1,c);if(h=c,!(0<be)){for(var d of Pi)nt(d);for(d of rt)nt(d);rt=[],Pi=[],ys={},P=!0}l(0,new tt(c))}function xs(c){if(n)return De(1,0,c);St(c)}var St=c=>{if(h=c,n)throw xs(c),"unwind";Wr(c)},rt=[],Pi=[],Bb=[],ys={},Fb=c=>{var d=c.Nc;delete ys[d],rt.push(c),Pi.splice(Pi.indexOf(c),1),c.Nc=0,J1(d)};function jb(){Bb.forEach(c=>c())}var Gb=c=>new Promise(d=>{c.onmessage=b=>{var M=b.data;if(b=M.Oc,M.Vc&&M.Vc!=hu()){var O=ys[M.Vc];O?O.postMessage(M,M.Yc):T(`Internal error! Worker sent a message "${b}" to target pthread ${M.Vc}, but that thread no longer exists!`)}else b==="checkMailbox"?cu():b==="spawnThread"?Tt(M):b==="cleanupThread"?bt(()=>{Fb(ys[M.ie])}):b==="loaded"?(c.loaded=!0,d(c)):M.target==="setimmediate"?c.postMessage(M):b==="uncaughtException"?c.onerror(M.error):b==="callHandler"?e[M.ce](...M.args):b&&T(`worker sent an unknown command ${b}`)},c.onerror=b=>{throw T(`worker sent an error! ${b.filename}:${b.lineno}: ${b.message}`),b};var _,g=[];for(_ of[])e.propertyIsEnumerable(_)&&g.push(_);c.postMessage({Oc:"load",de:g,je:Vr,ke:m})});function qb(){var c=new Worker((()=>{let d=URL;return tr.url>"file:"&&tr.url<"file;"?new d("ort.webgpu.bundle.min.mjs",tr.url):new URL(tr.url)})(),{type:"module",workerData:"em-pthread",name:"em-pthread"});rt.push(c)}var Vr,G2=(c,d)=>{be=0,c=Xy(c,d),0<be?h=c:Wy(c)},iu=[],lu=0,yt=c=>-9007199254740992>c||9007199254740992<c?NaN:Number(c);function q2(c){var d=new ky(c>>>=0);return(v(),V)[d.Qc+12>>>0]==0&&(Wb(d,!0),lu--),Vb(d,!1),iu.push(d),nv(c)}var _n=0,W2=()=>{_e(0,0);var c=iu.pop();rv(c.Xc),_n=0};function Wb(c,d){d=d?1:0,(v(),V)[c.Qc+12>>>0]=d}function Vb(c,d){d=d?1:0,(v(),V)[c.Qc+13>>>0]=d}class ky{constructor(d){this.Xc=d,this.Qc=d-24}}var Ey=c=>{var d=_n;if(!d)return $i(0),0;var _=new ky(d);(v(),z)[_.Qc+16>>>2>>>0]=d;var g=(v(),z)[_.Qc+4>>>2>>>0];if(!g)return $i(0),d;for(var b of c){if(b===0||b===g)break;if(sv(b,g,_.Qc+16))return $i(b),d}return $i(g),d};function V2(){return Ey([])}function H2(c){return Ey([c>>>0])}function X2(c,d,_,g){return Ey([c>>>0,d>>>0,_>>>0,g>>>0])}var K2=()=>{var c=iu.pop();c||ze("no exception to throw");var d=c.Xc;throw(v(),V)[c.Qc+13>>>0]==0&&(iu.push(c),Vb(c,!0),Wb(c,!1),lu++),Hy(d),_n=d};function Y2(c,d,_){var g=new ky(c>>>=0);throw d>>>=0,_>>>=0,(v(),z)[g.Qc+16>>>2>>>0]=0,(v(),z)[g.Qc+4>>>2>>>0]=d,(v(),z)[g.Qc+8>>>2>>>0]=_,Hy(c),lu++,_n=c}var Q2=()=>lu;function Hb(c,d,_,g){return n?De(2,1,c,d,_,g):Xb(c,d,_,g)}function Xb(c,d,_,g){if(c>>>=0,d>>>=0,_>>>=0,g>>>=0,!globalThis.SharedArrayBuffer)return 6;var b=[];return n&&b.length===0?Hb(c,d,_,g):(c={ge:_,Nc:c,Wc:g,Yc:b},n?(c.Oc="spawnThread",postMessage(c,b),0):Tt(c))}function J2(c){throw _n||=c>>>0,_n}var Kb=globalThis.TextDecoder&&new TextDecoder,Yb=(c,d,_,g)=>{if(_=d+_,g)return _;for(;c[d]&&!(d>=_);)++d;return d},Qb=(c,d=0,_,g)=>{if(16<(_=Yb(c,d>>>=0,_,g))-d&&c.buffer&&Kb)return Kb.decode(c.buffer instanceof ArrayBuffer?c.subarray(d,_):c.slice(d,_));for(g="";d<_;){var b=c[d++];if(128&b){var M=63&c[d++];if((224&b)==192)g+=String.fromCharCode((31&b)<<6|M);else{var O=63&c[d++];65536>(b=(240&b)==224?(15&b)<<12|M<<6|O:(7&b)<<18|M<<12|O<<6|63&c[d++])?g+=String.fromCharCode(b):(b-=65536,g+=String.fromCharCode(55296|b>>10,56320|1023&b))}}else g+=String.fromCharCode(b)}return g},gn=(c,d,_)=>(c>>>=0)?Qb((v(),J),c,d,_):"";function Jb(c,d,_){return n?De(3,1,c,d,_):0}function Zb(c,d){if(n)return De(4,1,c,d)}function e1(c,d){if(n)return De(5,1,c,d)}function t1(c,d,_){if(n)return De(6,1,c,d,_)}function r1(c,d,_){return n?De(7,1,c,d,_):0}function s1(c,d){if(n)return De(8,1,c,d)}function n1(c,d,_){if(n)return De(9,1,c,d,_)}function o1(c,d,_,g){if(n)return De(10,1,c,d,_,g)}function a1(c,d,_,g){if(n)return De(11,1,c,d,_,g)}function i1(c,d,_,g){if(n)return De(12,1,c,d,_,g)}function l1(c){if(n)return De(13,1,c)}function c1(c,d){if(n)return De(14,1,c,d)}function u1(c,d,_){if(n)return De(15,1,c,d,_)}var Z2=()=>ze(""),ar=c=>{c>>>=0;for(var d="";;){var _=(v(),J)[c++>>>0];if(!_)return d;d+=String.fromCharCode(_)}},Ay={},My={},eM={},wn=class extends Error{constructor(c){super(c),this.name="BindingError"}};function yr(c,d,_={}){return(function(g,b,M={}){var O=b.name;if(!g)throw new wn(`type "${O}" must have a positive integer typeid pointer`);if(My.hasOwnProperty(g)){if(M.ee)return;throw new wn(`Cannot register type '${O}' twice`)}My[g]=b,delete eM[g],Ay.hasOwnProperty(g)&&(b=Ay[g],delete Ay[g],b.forEach(N=>N()))})(c,d,_)}var p1=(c,d,_)=>{switch(d){case 1:return _?g=>(v(),V)[g>>>0]:g=>(v(),J)[g>>>0];case 2:return _?g=>(v(),X)[g>>>1>>>0]:g=>(v(),Y)[g>>>1>>>0];case 4:return _?g=>(v(),U)[g>>>2>>>0]:g=>(v(),z)[g>>>2>>>0];case 8:return _?g=>(v(),I)[g>>>3>>>0]:g=>(v(),L)[g>>>3>>>0];default:throw new TypeError(`invalid integer width (${d}): ${c}`)}};function tM(c,d,_,g,b){c>>>=0,_>>>=0,d=ar(d>>>0);let M=O=>O;if(g=g===0n){let O=8*_;M=N=>BigInt.asUintN(O,N),b=M(b)}yr(c,{name:d,Mc:M,Sc:(O,N)=>(typeof N=="number"&&(N=BigInt(N)),N),Rc:p1(d,_,!g),Tc:null})}function rM(c,d,_,g){yr(c>>>=0,{name:d=ar(d>>>0),Mc:function(b){return!!b},Sc:function(b,M){return M?_:g},Rc:function(b){return this.Mc((v(),J)[b>>>0])},Tc:null})}var d1=[],bs=[0,1,,1,null,1,!0,1,!1,1];function Ty(c){9<(c>>>=0)&&--bs[c+1]==0&&(bs[c]=void 0,d1.push(c))}var Bt=c=>{if(!c)throw new wn(`Cannot use deleted val. handle = ${c}`);return bs[c]},Xt=c=>{switch(c){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:let d=d1.pop()||bs.length;return bs[d]=c,bs[d+1]=1,d}};function Sy(c){return this.Mc((v(),z)[c>>>2>>>0])}var sM={name:"emscripten::val",Mc:c=>{var d=Bt(c);return Ty(c),d},Sc:(c,d)=>Xt(d),Rc:Sy,Tc:null};function nM(c){return yr(c>>>0,sM)}var oM=(c,d)=>{switch(d){case 4:return function(_){return this.Mc((v(),ne)[_>>>2>>>0])};case 8:return function(_){return this.Mc((v(),ae)[_>>>3>>>0])};default:throw new TypeError(`invalid float width (${d}): ${c}`)}};function aM(c,d,_){_>>>=0,yr(c>>>=0,{name:d=ar(d>>>0),Mc:g=>g,Sc:(g,b)=>b,Rc:oM(d,_),Tc:null})}function iM(c,d,_,g,b){c>>>=0,_>>>=0,d=ar(d>>>0);let M=N=>N;if(g===0){var O=32-8*_;M=N=>N<<O>>>O,b=M(b)}yr(c,{name:d,Mc:M,Sc:(N,B)=>B,Rc:p1(d,_,g!==0),Tc:null})}function lM(c,d,_){function g(M){var O=(v(),z)[M>>>2>>>0];return M=(v(),z)[M+4>>>2>>>0],new b((v(),V).buffer,M,O)}var b=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array][d];yr(c>>>=0,{name:_=ar(_>>>0),Mc:g,Rc:g},{ee:!0})}var br=(c,d,_)=>{var g=(v(),J);if(d>>>=0,0<_){var b=d;_=d+_-1;for(var M=0;M<c.length;++M){var O=c.codePointAt(M);if(127>=O){if(d>=_)break;g[d++>>>0]=O}else if(2047>=O){if(d+1>=_)break;g[d++>>>0]=192|O>>6,g[d++>>>0]=128|63&O}else if(65535>=O){if(d+2>=_)break;g[d++>>>0]=224|O>>12,g[d++>>>0]=128|O>>6&63,g[d++>>>0]=128|63&O}else{if(d+3>=_)break;g[d++>>>0]=240|O>>18,g[d++>>>0]=128|O>>12&63,g[d++>>>0]=128|O>>6&63,g[d++>>>0]=128|63&O,M++}}g[d>>>0]=0,c=d-b}else c=0;return c},vr=c=>{for(var d=0,_=0;_<c.length;++_){var g=c.charCodeAt(_);127>=g?d++:2047>=g?d+=2:55296<=g&&57343>=g?(d+=4,++_):d+=3}return d};function cM(c,d){yr(c>>>=0,{name:d=ar(d>>>0),Mc(_){var g=(v(),z)[_>>>2>>>0];return g=gn(_+4,g,!0),Kt(_),g},Sc(_,g){g instanceof ArrayBuffer&&(g=new Uint8Array(g));var b=typeof g=="string";if(!(b||ArrayBuffer.isView(g)&&g.BYTES_PER_ELEMENT==1))throw new wn("Cannot pass non-string to std::string");var M=b?vr(g):g.length,O=yn(4+M+1),N=O+4;return(v(),z)[O>>>2>>>0]=M,b?br(g,N,M+1):(v(),J).set(g,N>>>0),_!==null&&_.push(Kt,O),O},Rc:Sy,Tc(_){Kt(_)}})}var f1=globalThis.TextDecoder?new TextDecoder("utf-16le"):void 0,uM=(c,d,_)=>{if(c>>>=1,16<(d=Yb((v(),Y),c,d/2,_))-c&&f1)return f1.decode((v(),Y).slice(c,d));for(_="";c<d;++c){var g=(v(),Y)[c>>>0];_+=String.fromCharCode(g)}return _},pM=(c,d,_)=>{if(_??=2147483647,2>_)return 0;var g=d;_=(_-=2)<2*c.length?_/2:c.length;for(var b=0;b<_;++b){var M=c.charCodeAt(b);(v(),X)[d>>>1>>>0]=M,d+=2}return(v(),X)[d>>>1>>>0]=0,d-g},dM=c=>2*c.length,fM=(c,d,_)=>{var g="";c>>>=2;for(var b=0;!(b>=d/4);b++){var M=(v(),z)[c+b>>>0];if(!M&&!_)break;g+=String.fromCodePoint(M)}return g},mM=(c,d,_)=>{if(d>>>=0,_??=2147483647,4>_)return 0;var g=d;_=g+_-4;for(var b=0;b<c.length;++b){var M=c.codePointAt(b);if(65535<M&&b++,(v(),U)[d>>>2>>>0]=M,(d+=4)+4>_)break}return(v(),U)[d>>>2>>>0]=0,d-g},hM=c=>{for(var d=0,_=0;_<c.length;++_)65535<c.codePointAt(_)&&_++,d+=4;return d};function _M(c,d,_){if(c>>>=0,d>>>=0,_=ar(_>>>=0),d===2)var g=uM,b=pM,M=dM;else g=fM,b=mM,M=hM;yr(c,{name:_,Mc:O=>{var N=(v(),z)[O>>>2>>>0];return N=g(O+4,N*d,!0),Kt(O),N},Sc:(O,N)=>{if(typeof N!="string")throw new wn(`Cannot pass non-string to C++ string type ${_}`);var B=M(N),K=yn(4+B+d);return(v(),z)[K>>>2>>>0]=B/d,b(N,K+4,B+d),O!==null&&O.push(Kt,K),K},Rc:Sy,Tc(O){Kt(O)}})}function gM(c,d){yr(c>>>=0,{fe:!0,name:d=ar(d>>>0),Mc:()=>{},Sc:()=>{}})}function wM(c){qy(c>>>0,!s,1,!r,131072,!1),jb()}var bt=c=>{if(!P)try{if(c(),!(0<be))try{n?hu()&&Wy(h):St(h)}catch(d){d instanceof tt||d=="unwind"||l(0,d)}}catch(d){d instanceof tt||d=="unwind"||l(0,d)}},xM=!Atomics.waitAsync||globalThis.navigator?.userAgent&&91>Number((navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./)||[])[2]);function Oy(c){c>>>=0,xM||(Atomics.waitAsync((v(),U),c>>>2,c).value.then(cu),c+=128,Atomics.store((v(),U),c>>>2,1))}var cu=()=>bt(()=>{var c=hu();c&&(Oy(c),ev())});function yM(c,d){(c>>>=0)==d>>>0?setTimeout(cu):n?postMessage({Vc:c,Oc:"checkMailbox"}):(c=ys[c])&&c.postMessage({Oc:"checkMailbox"})}var Iy=[];function bM(c,d,_,g,b){for(d>>>=0,b>>>=0,Iy.length=0,_=b>>>3,g=b+g>>>3;_<g;){var M;M=(v(),I)[_++>>>0]?(v(),I)[_++>>>0]:(v(),ae)[_++>>>0],Iy.push(M)}return(d?Ky[d]:nS[c])(...Iy)}var vM=()=>{be=0};function kM(c){c>>>=0,n?postMessage({Oc:"cleanupThread",ie:c}):Fb(ys[c])}function EM(c){}var uu=c=>{try{c()}catch(d){ze(d)}};function AM(c){var d=(..._)=>{pu.push(c);try{return c(..._)}finally{P||(pu.pop(),ir&&Hr===1&&pu.length===0&&(Hr=0,be+=1,uu(jv),typeof Fibers<"u"&&Fibers.De()))}};return _1.set(c,d),d}var Hr=0,ir=null,m1=0,pu=[],Cy=new Map,h1=new Map,_1=new Map,MM=0,Py=null,TM=[],g1=c=>(function(d){if(!P){if(Hr===0){var _=!1,g=!1;d((b=0)=>{if(!P&&(m1=b,_=!0,g)){Hr=2,uu(()=>Gv(ir)),typeof MainLoop<"u"&&MainLoop.Xd&&MainLoop.resume(),b=!1;try{var M=(function(){var B=(v(),U)[ir+8>>>2>>>0];return B=h1.get(B),B=_1.get(B),--be,B()})()}catch(B){M=B,b=!0}var O=!1;if(!ir){var N=Py;N&&(Py=null,(b?N.reject:N.resolve)(M),O=!0)}if(b&&!O)throw M}}),g=!0,_||(Hr=1,ir=(function(){var b=yn(65548),M=b+12;if((v(),z)[b>>>2>>>0]=M,(v(),z)[b+4>>>2>>>0]=M+65536,M=pu[0],!Cy.has(M)){var O=MM++;Cy.set(M,O),h1.set(O,M)}return M=Cy.get(M),(v(),U)[b+8>>>2>>>0]=M,b})(),typeof MainLoop<"u"&&MainLoop.Xd&&MainLoop.pause(),uu(()=>Fv(ir)))}else Hr===2?(Hr=0,uu(qv),Kt(ir),ir=null,TM.forEach(bt)):ze(`invalid state: ${Hr}`);return m1}})(d=>{c().then(d)});function SM(c){return c>>>=0,g1(async()=>{var d=await Bt(c);return Xt(d)})}var zy=[],OM=c=>{var d=zy.length;return zy.push(c),d},IM=(c,d)=>{for(var _=Array(c),g=0;g<c;++g){var b=g,M=(v(),z)[d+4*g>>>2>>>0],O=My[M];if(O===void 0)throw c=`parameter ${g}`,M=$1(M),d=ar(M),Kt(M),new wn(`${c} has unknown type ${d}`);_[b]=O}return _},CM=(c,d,_)=>{var g=[];return c=c(g,_),g.length&&((v(),z)[d>>>2>>>0]=Xt(g)),c},PM={},du=c=>{var d=PM[c];return d===void 0?ar(c):d};function zM(c,d,_){var[g,...b]=IM(c,d>>>0);d=g.Sc.bind(g);var M=b.map(B=>B.Rc.bind(B));c--;var O={toValue:Bt};switch(c=M.map((B,K)=>{var Te=`argFromPtr${K}`;return O[Te]=B,`${Te}(args${K?"+"+8*K:""})`}),_){case 0:var N="toValue(handle)";break;case 2:N="new (toValue(handle))";break;case 3:N="";break;case 1:O.getStringOrSymbol=du,N="toValue(handle)[getStringOrSymbol(methodName)]"}return N+=`(${c})`,g.fe||(O.toReturnWire=d,O.emval_returnValue=CM,N=`return emval_returnValue(toReturnWire, destructorsRef, ${N})`),N=`return function (handle, methodName, destructorsRef, args) {
7
+ `));case"join":case"string":return t;case"int":{let n=parseInt(t.value,10);return new me(isNaN(n)?0:n)}case"float":{let n=parseFloat(t.value);return new Ze(isNaN(n)?0:n)}default:throw new Error(`Unknown StringValue filter: ${s.value}`)}else if(t instanceof me||t instanceof Ze)switch(s.value){case"abs":return t instanceof me?new me(Math.abs(t.value)):new Ze(Math.abs(t.value));case"int":return new me(Math.floor(t.value));case"float":return new Ze(t.value);case"string":return new ee(t.toString());default:throw new Error(`Unknown NumericValue filter: ${s.value}`)}else if(t instanceof dt)switch(s.value){case"items":return new ye(Array.from(t.value.entries()).map(([n,o])=>new ye([new ee(n),o])));case"length":return new me(t.value.size);default:{let n=t.builtins.get(s.value);if(n)return n instanceof qe?n.value([],r):n;throw new Error(`Unknown ObjectValue filter: ${s.value}`)}}else if(t instanceof pe)switch(s.value){case"bool":return new pe(t.value);case"int":return new me(t.value?1:0);case"float":return new Ze(t.value?1:0);case"string":return new ee(t.value?"true":"false");default:throw new Error(`Unknown BooleanValue filter: ${s.value}`)}throw new Error(`Cannot apply filter "${s.value}" to type: ${t.type}`)}else if(e.type==="CallExpression"){let s=e;if(s.callee.type!=="Identifier")throw new Error(`Unknown filter: ${s.callee.type}`);let n=s.callee.value;if(n==="tojson"){let[,o]=this.evaluateArguments(s.args,r),a=o.get("indent")??new Xe;if(!(a instanceof me||a instanceof Xe))throw new Error("If set, indent must be a number");let i=o.get("ensure_ascii")??new pe(!1);if(!(i instanceof pe))throw new Error("If set, ensure_ascii must be a boolean");let l=o.get("sort_keys")??new pe(!1);if(!(l instanceof pe))throw new Error("If set, sort_keys must be a boolean");let c=o.get("separators")??new Xe,p=null;if(c instanceof ye||c instanceof mE){if(c.value.length!==2)throw new Error("separators must be a tuple of two strings");let[f,_]=c.value;if(!(f instanceof ee)||!(_ instanceof ee))throw new Error("separators must be a tuple of two strings");p=[f.value,_.value]}else if(!(c instanceof Xe))throw new Error("If set, separators must be a tuple of two strings");return new ee(Ls(t,{indent:a.value,ensureAscii:i.value,sortKeys:l.value,separators:p}))}else if(n==="join"){let o;if(t instanceof ee)o=Array.from(t.value);else if(t instanceof ye)o=t.value.map(c=>c.value);else throw new Error(`Cannot apply filter "${n}" to type: ${t.type}`);let[a,i]=this.evaluateArguments(s.args,r),l=a.at(0)??i.get("separator")??new ee("");if(!(l instanceof ee))throw new Error("separator must be a string");return new ee(o.join(l.value))}else if(n==="int"||n==="float"){let[o,a]=this.evaluateArguments(s.args,r),i=o.at(0)??a.get("default")??(n==="int"?new me(0):new Ze(0));if(t instanceof ee){let l=n==="int"?parseInt(t.value,10):parseFloat(t.value);return isNaN(l)?i:n==="int"?new me(l):new Ze(l)}else{if(t instanceof me||t instanceof Ze)return t;if(t instanceof pe)return n==="int"?new me(t.value?1:0):new Ze(t.value?1:0);throw new Error(`Cannot apply filter "${n}" to type: ${t.type}`)}}else if(n==="default"){let[o,a]=this.evaluateArguments(s.args,r),i=o[0]??new ee(""),l=o[1]??a.get("boolean")??new pe(!1);if(!(l instanceof pe))throw new Error("`default` filter flag must be a boolean");return t instanceof Ge||l.value&&!t.__bool__().value?i:t}if(t instanceof ye){switch(n){case"sort":{let[o,a]=this.evaluateArguments(s.args,r),i=o.at(0)??a.get("reverse")??new pe(!1);if(!(i instanceof pe))throw new Error("reverse must be a boolean");let l=o.at(1)??a.get("case_sensitive")??new pe(!1);if(!(l instanceof pe))throw new Error("case_sensitive must be a boolean");let c=o.at(2)??a.get("attribute")??new Xe;if(!(c instanceof ee||c instanceof me||c instanceof Xe))throw new Error("attribute must be a string, integer, or null");let p=f=>{if(c instanceof Xe)return f;let _=c instanceof me?String(c.value):c.value;return hE(f,_)};return new ye(t.value.slice().sort((f,_)=>{let m=p(f),w=p(_),x=F0(m,w,l.value);return i.value?-x:x}))}case"selectattr":case"rejectattr":{let o=n==="selectattr";if(t.value.some(f=>!(f instanceof dt)))throw new Error(`\`${n}\` can only be applied to array of objects`);if(s.args.some(f=>f.type!=="StringLiteral"))throw new Error(`arguments of \`${n}\` must be strings`);let[a,i,l]=s.args.map(f=>this.evaluate(f,r)),c;if(i){let f=r.tests.get(i.value);if(!f)throw new Error(`Unknown test: ${i.value}`);c=f}else c=(...f)=>f[0].__bool__().value;let p=t.value.filter(f=>{let _=f.value.get(a.value),m=_?c(_,l):!1;return o?m:!m});return new ye(p)}case"map":{let[,o]=this.evaluateArguments(s.args,r);if(o.has("attribute")){let a=o.get("attribute");if(!(a instanceof ee))throw new Error("attribute must be a string");let i=o.get("default"),l=t.value.map(c=>{if(!(c instanceof dt))throw new Error("items in map must be an object");let p=hE(c,a.value);return p instanceof Ge?i??new Ge:p});return new ye(l)}else throw new Error("`map` expressions without `attribute` set are not currently supported.")}}throw new Error(`Unknown ArrayValue filter: ${n}`)}else if(t instanceof ee){switch(n){case"indent":{let[o,a]=this.evaluateArguments(s.args,r),i=o.at(0)??a.get("width")??new me(4);if(!(i instanceof me))throw new Error("width must be a number");let l=o.at(1)??a.get("first")??new pe(!1),c=o.at(2)??a.get("blank")??new pe(!1),p=t.value.split(`
8
+ `),f=" ".repeat(i.value),_=p.map((m,w)=>!l.value&&w===0||!c.value&&m.length===0?m:f+m);return new ee(_.join(`
9
+ `))}case"replace":{let o=t.builtins.get("replace");if(!(o instanceof qe))throw new Error("replace filter not available");let[a,i]=this.evaluateArguments(s.args,r);return o.value([...a,new ol(i)],r)}}throw new Error(`Unknown StringValue filter: ${n}`)}else if(t instanceof dt){let o=t.builtins.get(n);if(o&&o instanceof qe){let[a,i]=this.evaluateArguments(s.args,r);return i.size>0&&a.push(new ol(i)),o.value(a,r)}throw new Error(`Unknown ObjectValue filter: ${n}`)}else throw new Error(`Cannot apply filter "${n}" to type: ${t.type}`)}throw new Error(`Unknown filter: ${e.type}`)}evaluateFilterExpression(t,e){let r=this.evaluate(t.operand,e);return this.applyFilter(r,t.filter,e)}evaluateTestExpression(t,e){let r=this.evaluate(t.operand,e),s=e.tests.get(t.test.value);if(!s)throw new Error(`Unknown test: ${t.test.value}`);let n=s(r);return new pe(t.negate?!n:n)}evaluateSelectExpression(t,e){return this.evaluate(t.test,e).__bool__().value?this.evaluate(t.lhs,e):new Ge}evaluateUnaryExpression(t,e){let r=this.evaluate(t.argument,e);if(t.operator.value==="not")return new pe(!r.value);throw new SyntaxError(`Unknown operator: ${t.operator.value}`)}evaluateTernaryExpression(t,e){return this.evaluate(t.condition,e).__bool__().value?this.evaluate(t.trueExpr,e):this.evaluate(t.falseExpr,e)}evalProgram(t,e){return this.evaluateBlock(t.body,e)}evaluateBlock(t,e){let r="";for(let s of t){let n=this.evaluate(s,e);n.type!=="NullValue"&&n.type!=="UndefinedValue"&&(r+=n.toString())}return new ee(r)}evaluateIdentifier(t,e){return e.lookupVariable(t.value)}evaluateCallExpression(t,e){let[r,s]=this.evaluateArguments(t.args,e);s.size>0&&r.push(new ol(s));let n=this.evaluate(t.callee,e);if(n.type!=="FunctionValue")throw new Error(`Cannot call something that is not a function: got ${n.type}`);return n.value(r,e)}evaluateSliceExpression(t,e,r){if(!(t instanceof ye||t instanceof ee))throw new Error("Slice object must be an array or string");let s=this.evaluate(e.start,r),n=this.evaluate(e.stop,r),o=this.evaluate(e.step,r);if(!(s instanceof me||s instanceof Ge))throw new Error("Slice start must be numeric or undefined");if(!(n instanceof me||n instanceof Ge))throw new Error("Slice stop must be numeric or undefined");if(!(o instanceof me||o instanceof Ge))throw new Error("Slice step must be numeric or undefined");return t instanceof ye?new ye(pE(t.value,s.value,n.value,o.value)):new ee(pE(Array.from(t.value),s.value,n.value,o.value).join(""))}evaluateMemberExpression(t,e){let r=this.evaluate(t.object,e),s;if(t.computed){if(t.property.type==="SliceExpression")return this.evaluateSliceExpression(r,t.property,e);s=this.evaluate(t.property,e)}else s=new ee(t.property.value);let n;if(r instanceof dt){if(!(s instanceof ee))throw new Error(`Cannot access property with non-string: got ${s.type}`);n=r.value.get(s.value)??r.builtins.get(s.value)}else if(r instanceof ye||r instanceof ee)if(s instanceof me)n=r.value.at(s.value),r instanceof ee&&(n=new ee(r.value.at(s.value)));else if(s instanceof ee)n=r.builtins.get(s.value);else throw new Error(`Cannot access property with non-string/non-number: got ${s.type}`);else{if(!(s instanceof ee))throw new Error(`Cannot access property with non-string: got ${s.type}`);n=r.builtins.get(s.value)}return n instanceof cr?n:new Ge}evaluateSet(t,e){let r=t.value?this.evaluate(t.value,e):this.evaluateBlock(t.body,e);if(t.assignee.type==="Identifier"){let s=t.assignee.value;e.setVariable(s,r)}else if(t.assignee.type==="TupleLiteral"){let s=t.assignee;if(!(r instanceof ye))throw new Error(`Cannot unpack non-iterable type in set: ${r.type}`);let n=r.value;if(n.length!==s.value.length)throw new Error(`Too ${s.value.length>n.length?"few":"many"} items to unpack in set`);for(let o=0;o<s.value.length;++o){let a=s.value[o];if(a.type!=="Identifier")throw new Error(`Cannot unpack to non-identifier in set: ${a.type}`);e.setVariable(a.value,n[o])}}else if(t.assignee.type==="MemberExpression"){let s=t.assignee,n=this.evaluate(s.object,e);if(!(n instanceof dt))throw new Error("Cannot assign to member of non-object");if(s.property.type!=="Identifier")throw new Error("Cannot assign to member with non-identifier property");n.value.set(s.property.value,r)}else throw new Error(`Invalid LHS inside assignment expression: ${JSON.stringify(t.assignee)}`);return new Xe}evaluateIf(t,e){let r=this.evaluate(t.test,e);return this.evaluateBlock(r.__bool__().value?t.body:t.alternate,e)}evaluateFor(t,e){let r=new Cs(e),s,n;if(t.iterable.type==="SelectExpression"){let c=t.iterable;n=this.evaluate(c.lhs,r),s=c.test}else n=this.evaluate(t.iterable,r);if(!(n instanceof ye||n instanceof dt))throw new Error(`Expected iterable or object type in for loop: got ${n.type}`);n instanceof dt&&(n=n.keys());let o=[],a=[];for(let c=0;c<n.value.length;++c){let p=new Cs(r),f=n.value[c],_;if(t.loopvar.type==="Identifier")_=m=>m.setVariable(t.loopvar.value,f);else if(t.loopvar.type==="TupleLiteral"){let m=t.loopvar;if(f.type!=="ArrayValue")throw new Error(`Cannot unpack non-iterable type: ${f.type}`);let w=f;if(m.value.length!==w.value.length)throw new Error(`Too ${m.value.length>w.value.length?"few":"many"} items to unpack`);_=x=>{for(let k=0;k<m.value.length;++k){if(m.value[k].type!=="Identifier")throw new Error(`Cannot unpack non-identifier type: ${m.value[k].type}`);x.setVariable(m.value[k].value,w.value[k])}}}else throw new Error(`Invalid loop variable(s): ${t.loopvar.type}`);s&&(_(p),!this.evaluate(s,p).__bool__().value)||(o.push(f),a.push(_))}let i="",l=!0;for(let c=0;c<o.length;++c){let p=new Map([["index",new me(c+1)],["index0",new me(c)],["revindex",new me(o.length-c)],["revindex0",new me(o.length-c-1)],["first",new pe(c===0)],["last",new pe(c===o.length-1)],["length",new me(o.length)],["previtem",c>0?o[c-1]:new Ge],["nextitem",c<o.length-1?o[c+1]:new Ge]]);r.setVariable("loop",new dt(p)),a[c](r);try{let f=this.evaluateBlock(t.body,r);i+=f.value}catch(f){if(f instanceof fE)continue;if(f instanceof dE)break;throw f}l=!1}if(l){let c=this.evaluateBlock(t.defaultBlock,r);i+=c.value}return new ee(i)}evaluateMacro(t,e){return e.setVariable(t.name.value,new qe((r,s)=>{let n=new Cs(s);r=r.slice();let o;r.at(-1)?.type==="KeywordArgumentsValue"&&(o=r.pop());for(let a=0;a<t.args.length;++a){let i=t.args[a],l=r[a];if(i.type==="Identifier"){let c=i;if(!l)throw new Error(`Missing positional argument: ${c.value}`);n.setVariable(c.value,l)}else if(i.type==="KeywordArgumentExpression"){let c=i,p=l??o?.value.get(c.key.value)??this.evaluate(c.value,n);n.setVariable(c.key.value,p)}else throw new Error(`Unknown argument type: ${i.type}`)}return this.evaluateBlock(t.body,n)})),new Xe}evaluateCallStatement(t,e){let r=new qe((i,l)=>{let c=new Cs(l);if(t.callerArgs)for(let p=0;p<t.callerArgs.length;++p){let f=t.callerArgs[p];if(f.type!=="Identifier")throw new Error(`Caller parameter must be an identifier, got ${f.type}`);c.setVariable(f.value,i[p]??new Ge)}return this.evaluateBlock(t.body,c)}),[s,n]=this.evaluateArguments(t.call.args,e);s.push(new ol(n));let o=this.evaluate(t.call.callee,e);if(o.type!=="FunctionValue")throw new Error(`Cannot call something that is not a function: got ${o.type}`);let a=new Cs(e);return a.setVariable("caller",r),o.value(s,a)}evaluateFilterStatement(t,e){let r=this.evaluateBlock(t.body,e);return this.applyFilter(r,t.filter,e)}evaluate(t,e){if(!t)return new Ge;switch(t.type){case"Program":return this.evalProgram(t,e);case"Set":return this.evaluateSet(t,e);case"If":return this.evaluateIf(t,e);case"For":return this.evaluateFor(t,e);case"Macro":return this.evaluateMacro(t,e);case"CallStatement":return this.evaluateCallStatement(t,e);case"Break":throw new dE;case"Continue":throw new fE;case"IntegerLiteral":return new me(t.value);case"FloatLiteral":return new Ze(t.value);case"StringLiteral":return new ee(t.value);case"ArrayLiteral":return new ye(t.value.map(r=>this.evaluate(r,e)));case"TupleLiteral":return new mE(t.value.map(r=>this.evaluate(r,e)));case"ObjectLiteral":{let r=new Map;for(let[s,n]of t.value){let o=this.evaluate(s,e);if(!(o instanceof ee))throw new Error(`Object keys must be strings: got ${o.type}`);r.set(o.value,this.evaluate(n,e))}return new dt(r)}case"Identifier":return this.evaluateIdentifier(t,e);case"CallExpression":return this.evaluateCallExpression(t,e);case"MemberExpression":return this.evaluateMemberExpression(t,e);case"UnaryExpression":return this.evaluateUnaryExpression(t,e);case"BinaryExpression":return this.evaluateBinaryExpression(t,e);case"FilterExpression":return this.evaluateFilterExpression(t,e);case"FilterStatement":return this.evaluateFilterStatement(t,e);case"TestExpression":return this.evaluateTestExpression(t,e);case"SelectExpression":return this.evaluateSelectExpression(t,e);case"Ternary":return this.evaluateTernaryExpression(t,e);case"Comment":return new Xe;default:throw new SyntaxError(`Unknown node type: ${t.type}`)}}};function Bu(t){switch(typeof t){case"number":return Number.isInteger(t)?new me(t):new Ze(t);case"string":return new ee(t);case"boolean":return new pe(t);case"undefined":return new Ge;case"object":return t===null?new Xe:Array.isArray(t)?new ye(t.map(Bu)):new dt(new Map(Object.entries(t).map(([e,r])=>[e,Bu(r)])));case"function":return new qe((e,r)=>{let s=t(...e.map(n=>n.value))??null;return Bu(s)});default:throw new Error(`Cannot convert to runtime value: ${t}`)}}var it=`
10
+ `,KL="{%- ",QL=" -%}";function YL(t){switch(t.operator.type){case"MultiplicativeBinaryOperator":return 4;case"AdditiveBinaryOperator":return 3;case"ComparisonBinaryOperator":return 2;case"Identifier":return t.operator.value==="and"?1:t.operator.value==="in"||t.operator.value==="not in"?2:0}return 0}function JL(t,e=" "){let r=typeof e=="number"?" ".repeat(e):e;return Jt(t.body,0,r).replace(/\n$/,"")}function xt(...t){return KL+t.join(" ")+QL}function Jt(t,e,r){return t.map(s=>ZL(s,e,r)).join(it)}function ZL(t,e,r){let s=r.repeat(e);switch(t.type){case"Program":return Jt(t.body,e,r);case"If":return eP(t,e,r);case"For":return tP(t,e,r);case"Set":return rP(t,e,r);case"Macro":return sP(t,e,r);case"Break":return s+xt("break");case"Continue":return s+xt("continue");case"CallStatement":return nP(t,e,r);case"FilterStatement":return oP(t,e,r);case"Comment":return s+"{# "+t.value+" #}";default:return s+"{{- "+Ee(t)+" -}}"}}function eP(t,e,r){let s=r.repeat(e),n=[],o=t;for(;o&&(n.push({test:o.test,body:o.body}),o.alternate.length===1&&o.alternate[0].type==="If");)o=o.alternate[0];let a=s+xt("if",Ee(n[0].test))+it+Jt(n[0].body,e+1,r);for(let i=1;i<n.length;++i)a+=it+s+xt("elif",Ee(n[i].test))+it+Jt(n[i].body,e+1,r);return o&&o.alternate.length>0&&(a+=it+s+xt("else")+it+Jt(o.alternate,e+1,r)),a+=it+s+xt("endif"),a}function tP(t,e,r){let s=r.repeat(e),n="";if(t.iterable.type==="SelectExpression"){let a=t.iterable;n=`${Ee(a.lhs)} if ${Ee(a.test)}`}else n=Ee(t.iterable);let o=s+xt("for",Ee(t.loopvar),"in",n)+it+Jt(t.body,e+1,r);return t.defaultBlock.length>0&&(o+=it+s+xt("else")+it+Jt(t.defaultBlock,e+1,r)),o+=it+s+xt("endfor"),o}function rP(t,e,r){let s=r.repeat(e),n=Ee(t.assignee),o=t.value?Ee(t.value):"",a=s+xt("set",`${n}${t.value?" = "+o:""}`);return t.body.length===0?a:a+it+Jt(t.body,e+1,r)+it+s+xt("endset")}function sP(t,e,r){let s=r.repeat(e),n=t.args.map(Ee).join(", ");return s+xt("macro",`${t.name.value}(${n})`)+it+Jt(t.body,e+1,r)+it+s+xt("endmacro")}function nP(t,e,r){let s=r.repeat(e),n=t.callerArgs&&t.callerArgs.length>0?`(${t.callerArgs.map(Ee).join(", ")})`:"",o=Ee(t.call),a=s+xt(`call${n}`,o)+it;return a+=Jt(t.body,e+1,r)+it,a+=s+xt("endcall"),a}function oP(t,e,r){let s=r.repeat(e),n=t.filter.type==="Identifier"?t.filter.value:Ee(t.filter),o=s+xt("filter",n)+it;return o+=Jt(t.body,e+1,r)+it,o+=s+xt("endfilter"),o}function Ee(t,e=-1){switch(t.type){case"SpreadExpression":return`*${Ee(t.argument)}`;case"Identifier":return t.value;case"IntegerLiteral":return`${t.value}`;case"FloatLiteral":return`${t.value}`;case"StringLiteral":return JSON.stringify(t.value);case"BinaryExpression":{let r=t,s=YL(r),n=Ee(r.left,s),o=Ee(r.right,s+1),a=`${n} ${r.operator.value} ${o}`;return s<e?`(${a})`:a}case"UnaryExpression":{let r=t;return r.operator.value+(r.operator.value==="not"?" ":"")+Ee(r.argument,1/0)}case"CallExpression":{let r=t,s=r.args.map(Ee).join(", ");return`${Ee(r.callee)}(${s})`}case"MemberExpression":{let r=t,s=Ee(r.object);["Identifier","MemberExpression","CallExpression","StringLiteral","IntegerLiteral","FloatLiteral","ArrayLiteral","TupleLiteral","ObjectLiteral"].includes(r.object.type)||(s=`(${s})`);let n=Ee(r.property);return!r.computed&&r.property.type!=="Identifier"&&(n=`(${n})`),r.computed?`${s}[${n}]`:`${s}.${n}`}case"FilterExpression":{let r=t,s=Ee(r.operand,1/0);return r.filter.type==="CallExpression"?`${s} | ${Ee(r.filter)}`:`${s} | ${r.filter.value}`}case"SelectExpression":{let r=t;return`${Ee(r.lhs)} if ${Ee(r.test)}`}case"TestExpression":{let r=t;return`${Ee(r.operand)} is${r.negate?" not":""} ${r.test.value}`}case"ArrayLiteral":case"TupleLiteral":{let r=t.value.map(Ee),s=t.type==="ArrayLiteral"?"[]":"()";return`${s[0]}${r.join(", ")}${s[1]}`}case"ObjectLiteral":return`{${Array.from(t.value.entries()).map(([s,n])=>`${Ee(s)}: ${Ee(n)}`).join(", ")}}`;case"SliceExpression":{let r=t,s=r.start?Ee(r.start):"",n=r.stop?Ee(r.stop):"",o=r.step?`:${Ee(r.step)}`:"";return`${s}:${n}${o}`}case"KeywordArgumentExpression":{let r=t;return`${r.key.value}=${Ee(r.value)}`}case"Ternary":{let r=t,s=`${Ee(r.trueExpr)} if ${Ee(r.condition,0)} else ${Ee(r.falseExpr)}`;return e>-1?`(${s})`:s}default:throw new Error(`Unknown expression type: ${t.type}`)}}var gE=class{parsed;constructor(t){let e=mL(t,{lstrip_blocks:!0,trim_blocks:!0});this.parsed=FL(e)}render(t){let e=new Cs;if(HL(e),t)for(let[n,o]of Object.entries(t))e.set(n,o);return new XL(e).run(this.parsed).value}format(t){return JL(this.parsed,t?.indent||" ")}};var st=class{constructor(){let t=function(...e){return t._call(...e)};return Object.setPrototypeOf(t,new.target.prototype)}_call(...t){throw Error("Must implement _call method in subclass")}};var Ps=vr(require("fs"),1),aP={txt:"text/plain",html:"text/html",css:"text/css",js:"text/javascript",json:"application/json",png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif"},Hr=class t{constructor(e){if(this.filePath=e,this.headers=new Headers,this.exists=Ps.default.existsSync(e),this.exists){this.status=200,this.statusText="OK";let r=Ps.default.statSync(e);this.headers.set("content-length",r.size.toString()),this.updateContentType();let s=Ps.default.createReadStream(e);this.body=new ReadableStream({start(n){s.on("data",o=>n.enqueue(o)),s.on("end",()=>n.close()),s.on("error",o=>n.error(o))},cancel(){s.destroy()}})}else this.status=404,this.statusText="Not Found",this.body=null}updateContentType(){let e=this.filePath.toString().split(".").pop().toLowerCase();this.headers.set("content-type",aP[e]??"application/octet-stream")}clone(){let e=new t(this.filePath);return e.exists=this.exists,e.status=this.status,e.statusText=this.statusText,e.headers=new Headers(this.headers),e}async arrayBuffer(){return(await Ps.default.promises.readFile(this.filePath)).buffer}async blob(){let e=await Ps.default.promises.readFile(this.filePath);return new Blob([e],{type:this.headers.get("content-type")})}async text(){return await Ps.default.promises.readFile(this.filePath,"utf8")}async json(){return JSON.parse(await this.text())}};var Nn=vr(require("fs"),1),al=vr(require("path"),1);var zn=class{constructor(e){this._mt=new Uint32Array(624),this._idx=625,this._gauss_next=null,this._random_fn=this.random.bind(this),this.seed(e)}seed(e){if(e==null)if(ie.IS_CRYPTO_AVAILABLE){let i=new Uint32Array(1);crypto.getRandomValues(i),e=i[0]}else e=Date.now()>>>0;let r=this._mt,s=(i,l)=>Math.imul(i,l)>>>0,n=[];for(let i=e||0;i>0;i=Math.floor(i/4294967296))n.push(i&4294967295);n.length||n.push(0),r[0]=19650218;for(let i=1;i<624;++i)r[i]=s(1812433253,r[i-1]^r[i-1]>>>30)+i>>>0;let o=1,a=0;for(let i=Math.max(624,n.length);i>0;--i,++o,++a)o>=624&&(r[0]=r[623],o=1),a>=n.length&&(a=0),r[o]=(r[o]^s(r[o-1]^r[o-1]>>>30,1664525))+n[a]+a>>>0;for(let i=623;i>0;--i,++o)o>=624&&(r[0]=r[623],o=1),r[o]=(r[o]^s(r[o-1]^r[o-1]>>>30,1566083941))-o>>>0;r[0]=2147483648,this._idx=624,this._gauss_next=null}_int32(){let e=this._mt;if(this._idx>=624){for(let s=0;s<624;++s){let n=e[s]&2147483648|e[(s+1)%624]&2147483647;e[s]=(e[(s+397)%624]^n>>>1^(n&1?2567483615:0))>>>0}this._idx=0}let r=e[this._idx++];return r^=r>>>11,r^=r<<7&2636928640,r^=r<<15&4022730752,r^=r>>>18,r>>>0}random(){return((this._int32()>>>5)*67108864+(this._int32()>>>6))/9007199254740992}gauss(e=0,r=1){let s=this._gauss_next;if(this._gauss_next=null,s===null){let n=this.random()*2*Math.PI,o=Math.sqrt(-2*Math.log(1-this.random()));s=Math.cos(n)*o,this._gauss_next=Math.sin(n)*o}return e+s*r}shuffle(e){for(let r=e.length-1;r>0;--r){let s=32-Math.clz32(r+1),n=this._int32()>>>32-s;for(;n>r;)n=this._int32()>>>32-s;let o=e[r];e[r]=e[n],e[n]=o}}choices(e,r){return e[wE(this._random_fn,r)]}};function wE(t,e){let r=0;for(let n=0;n<e.length;++n)r+=e[n];let s=t()*r;for(let n=0;n<e.length;++n)if(s-=e[n],s<0)return n;return e.length-1}var ur=new zn,Xr=Object.freeze({Random:zn,seed:ur.seed.bind(ur),random:ur.random.bind(ur),gauss:ur.gauss.bind(ur),shuffle:ur.shuffle.bind(ur),choices:ur.choices.bind(ur)}),xE=t=>wE(Xr.random,t);var iP=new zn,$n=class{constructor(e){this.path=e}async match(e){let r=al.default.join(this.path,e),s=new Hr(r);if(s.exists)return s}async put(e,r,s=void 0){let n=al.default.join(this.path,e),o=ie.IS_PROCESS_AVAILABLE?process.pid:Date.now(),a=iP._int32().toString(36),i=n+`.tmp.${o}.${a}`;try{let l=r.headers.get("Content-Length"),c=parseInt(l??"0"),p=0;await Nn.default.promises.mkdir(al.default.dirname(n),{recursive:!0});let f=Nn.default.createWriteStream(i),_=r.body.getReader();for(;;){let{done:m,value:w}=await _.read();if(m)break;await new Promise((k,E)=>{f.write(w,A=>{if(A){E(A);return}k()})}),p+=w.length;let x=c?p/c*100:0;s?.({progress:x,loaded:p,total:c})}await new Promise((m,w)=>{f.close(x=>x?w(x):m())}),await Nn.default.promises.rename(i,n)}catch(l){try{await Nn.default.promises.unlink(i)}catch{}throw l}}async delete(e){let r=al.default.join(this.path,e);try{return await Nn.default.promises.unlink(r),!0}catch{return!1}}};var yE={400:"Bad request error occurred while trying to load file",401:"Unauthorized access to file",403:"Forbidden access to file",404:"Could not locate file",408:"Request timeout error occurred while trying to load file",500:"Internal server error error occurred while trying to load file",502:"Bad gateway error occurred while trying to load file",503:"Service unavailable error occurred while trying to load file",504:"Gateway timeout error occurred while trying to load file"},Uu=100,bE=/^(\b[\w\-.]+\b\/)?\b[\w\-.]{1,96}\b$/;var B0={};function il(...t){return t=t.map((e,r)=>(r&&(e=e.replace(new RegExp("^/"),"")),r!==t.length-1&&(e=e.replace(new RegExp("/$"),"")),e)),t.join("/")}function Kr(t,e=null,r=null){let s;try{s=new URL(t)}catch{return!1}return!(e&&!e.includes(s.protocol)||r&&!r.includes(s.hostname))}function vE(t){return!(!bE.test(t)||t.includes("..")||t.includes("--")||t.endsWith(".git")||t.endsWith(".ipynb"))}function kE(t,e,r){if(!r)return null;let s=yE[t]??`Error (${t}) occurred while trying to load file`;throw Error(`${s}: "${e}".`)}async function EE(t,e,r){let s=t.headers.get("Content-Length"),n=s?parseInt(s,10):r??0;s===null&&!r&&Z.warn("Unable to determine content-length from response headers. Will expand buffer when needed.");let o=new Uint8Array(n),a=0,i=t.body.getReader();async function l(){let{done:c,value:p}=await i.read();if(c)return;let f=a+p.length;if(f>n){n=f;let m=new Uint8Array(n);m.set(o),o=m}o.set(p,a),a=f;let _=a/n*100;return e({progress:_,loaded:a,total:n}),l()}return await l(),o}function U0(t){return Kr(t,["blob:"])}function j0(t){let e;if(typeof location<"u"&&location.href)e=location.href;else if(typeof B0<"u"&&B0.url)e=B0.url;else return t;return new URL(t,e).href}var ME="SHA-256",lP="experimental_transformers-hash-cache",AE=t=>({algorithm:ME,value:t}),ll=class{#t=null;_getHashCache=()=>(this.#t??=caches.open(lP),this.#t);static isAvailable=()=>typeof navigator<"u"&&"crossOriginStorage"in navigator;match=async e=>{let r=await this._getFileHash(e);if(r)try{let[s]=await navigator.crossOriginStorage.requestFileHandles([AE(r)]),n=await s.getFile();return new Response(n,{headers:{"Content-Length":String(n.size)}})}catch{return}};put=async(e,r)=>{let s=await this._getFileHash(e);if(s){let n=await r.blob();await this._storeBlobInCOS(n,s)}else this._processAndStore(e,r.body)};_storeBlobInCOS=async(e,r)=>{let[s]=await navigator.crossOriginStorage.requestFileHandles([AE(r)],{create:!0}),n=await s.createWritable();await n.write(e),await n.close()};_processAndStore=async(e,r)=>{try{let s=[];for await(let a of r)s.push(a);let n=new Blob(s),o=await this._getBlobHash(n);await this._storeBlobInCOS(n,o);try{await(await this._getHashCache()).put(e,new Response(o))}catch{}}catch{}};delete=async e=>{try{return await(await this._getHashCache()).delete(e)}catch{return!1}};_getFileHash=async e=>{try{let r=await this._getHashCache(),s=await r.match(e);if(s)return s.text();let n=await this._getLfsFileHash(e);return n?(await r.put(e,new Response(n)),n):null}catch{return null}};_getLfsFileHash=async e=>{if(!e.includes("/resolve/"))return null;let r=e.replace("/resolve/","/raw/");try{let n=(await fetch(r).then(o=>o.text())).match(/^oid sha256:([0-9a-f]+)$/m);return n?n[1]:null}catch{return null}};_getBlobHash=async e=>{let r=await e.arrayBuffer(),s=await crypto.subtle.digest(ME,r);return Array.from(new Uint8Array(s)).map(o=>o.toString(16).padStart(2,"0")).join("")}};async function er(t=null){let e=null;if(fe.useCustomCache){if(!fe.customCache)throw Error("`env.useCustomCache=true`, but `env.customCache` is not defined.");if(!fe.customCache.match||!fe.customCache.put)throw new Error("`env.customCache` must be an object which implements the `match` and `put` functions of the Web Cache API. For more information, see https://developer.mozilla.org/en-US/docs/Web/API/Cache");e=fe.customCache}if(!e&&fe.experimental_useCrossOriginStorage&&ll.isAvailable()&&(e=new ll),!e&&fe.useBrowserCache){if(typeof caches>"u")throw Error("Browser cache is not available in this environment.");try{e=await caches.open(fe.cacheKey)}catch(r){Z.warn("An error occurred while opening the browser cache:",r)}}if(!e&&fe.useFSCache){if(!ie.IS_FS_AVAILABLE)throw Error("File System Cache is not available in this environment.");e=new $n(t??fe.cacheDir)}return e}async function SE(t,...e){for(let r of e)try{let s=await t.match(r);if(s)return s}catch{continue}}var ju=class{#t;#e;constructor(e){this.#t=e,this.#e=new Map}get(e){if(!this.#e.has(e))return;let r=this.#e.get(e);return this.#e.delete(e),this.#e.set(e,r),r}put(e,r){this.#e.has(e)&&this.#e.delete(e),this.#e.set(e,r),this.#e.size>this.#t&&this.#e.delete(this.#e.keys().next().value)}delete(e){return this.#e.delete(e)}clear(){this.#e.clear()}};var cP=100,G0=new ju(cP);function Gu(t,e){let r=G0.get(t);if(r!==void 0)return r;let s=e().then(n=>n,n=>(G0.delete(t),Promise.reject(n)));return G0.put(t,s),s}async function uP(t){if(!Kr(t,["http:","https:"]))return null;let e=q0(t);return e.set("Range","bytes=0-0"),fe.fetch(t,{method:"GET",headers:e,cache:"no-store"})}function pr(t,e,r={}){let s=JSON.stringify([t,e,r?.revision,r?.cache_dir,r?.local_files_only]);return Gu(s,()=>pP(t,e,r))}async function pP(t,e,r){let s=await er(r?.cache_dir),{localPath:n,remoteURL:o,proposedCacheKey:a,validModelId:i}=Yr(t,e,r,s),l=await Jr(s,n,a);if(l!==void 0&&typeof l!="string"){let c=l.headers.get("content-length"),p=l.headers.get("content-type");return{exists:!0,size:c?parseInt(c,10):void 0,contentType:p||void 0,fromCache:!0}}if(fe.allowLocalModels&&!Kr(n,["http:","https:"]))try{let p=await Qr(n);if(typeof p!="string"&&p.status!==404){let f=p.headers.get("content-length"),_=p.headers.get("content-type");return{exists:!0,size:f?parseInt(f,10):void 0,contentType:_||void 0,fromCache:!1}}}catch{}if(fe.allowRemoteModels&&!r.local_files_only&&i)try{let c=await uP(o);if(c&&c.status>=200&&c.status<300){let p,f=c.headers.get("content-type");if(c.status===206){let _=c.headers.get("content-range");if(_){let m=_.match(/bytes \d+-\d+\/(\d+)/);m&&(p=parseInt(m[1],10))}}else if(c.status===200)try{await c.body?.cancel()}catch{}if(p===void 0){let _=c.headers.get("content-length");p=_?parseInt(_,10):void 0}return{exists:!0,size:p,contentType:f||void 0,fromCache:!1}}}catch(c){Z.warn(`Unable to fetch file metadata for "${o}": ${c}`)}return{exists:!1,fromCache:!1}}async function Qr(t){return fe.useFS&&!Kr(t,["http:","https:","blob:"])?new Hr(t instanceof URL?t.protocol==="file:"?t.pathname:t.toString():t):fe.fetch(t,{headers:q0(t)})}function q0(t){let e=typeof process<"u"&&process?.release?.name==="node",r=new Headers;if(e){let s=!!process.env?.TESTING_REMOTELY,n=fe.version;if(r.set("User-Agent",`transformers.js/${n}; is_ci/${s};`),Kr(t,["http:","https:"],["huggingface.co","hf.co"])){let a=process.env?.HF_TOKEN??process.env?.HF_ACCESS_TOKEN;a&&r.set("Authorization",`Bearer ${a}`)}}return r}function Yr(t,e,r={},s=null){let n=r.revision??"main",o=il(t,e),a=vE(t),i=a?il(fe.localModelPath,o):o,l=il(fe.remoteHost,fe.remotePathTemplate.replaceAll("{model}",t).replaceAll("{revision}",encodeURIComponent(n)),e),c=s instanceof $n?n==="main"?o:il(t,n,e):l;return{requestURL:o,localPath:i,remoteURL:l,proposedCacheKey:c,validModelId:a}}async function Jr(t,e,r){if(t)return await SE(t,e,r)}async function dP(t,e,r,s,n,o,a={}){if(await r.match(s)===void 0)if(o)typeof n!="string"&&await r.put(s,new Response(o,{headers:n.headers})).catch(i=>{Z.warn(`Unable to add response to browser cache: ${i}.`)});else{let i=a.progress_callback?l=>kr(a.progress_callback,{status:"progress",name:t,file:e,...l}):void 0;await r.put(s,n,i)}}async function fP(t,e,r=!0,s={},n=!1,o=null){let{requestURL:a,localPath:i,remoteURL:l,proposedCacheKey:c,validModelId:p}=Yr(t,e,s,o),f,_=!1,m;m=await Jr(o,i,c);let w=m!==void 0;if(!w){if(fe.allowLocalModels)if(Kr(a,["http:","https:"])){if(s.local_files_only)throw new Error(`\`local_files_only=true\`, but attempted to load a remote file from: ${a}.`);if(!fe.allowRemoteModels)throw new Error(`\`env.allowRemoteModels=false\`, but attempted to load a remote file from: ${a}.`)}else try{m=await Qr(i),f=i}catch(A){Z.warn(`Unable to load from local path "${i}": "${A}"`)}if(m===void 0||typeof m!="string"&&m.status===404){if(s.local_files_only||!fe.allowRemoteModels){if(r)throw Error(`\`local_files_only=true\` or \`env.allowRemoteModels=false\` and file was not found locally at "${i}".`);return null}if(!p)throw Error(`Local file missing at "${i}" and download aborted due to invalid model ID "${t}".`);if(m=await Qr(l),m.status!==200)return kE(m.status,l,r);f=c}_=o&&typeof Response<"u"&&m instanceof Response&&m.status===200}kr(s.progress_callback,{status:"download",name:t,file:e});let x;if(!(ie.IS_NODE_ENV&&n)){let E;if(typeof m!="string")if(!s.progress_callback)E=new Uint8Array(await m.arrayBuffer());else if(w&&typeof navigator<"u"&&/firefox/i.test(navigator.userAgent))E=new Uint8Array(await m.arrayBuffer()),kr(s.progress_callback,{status:"progress",name:t,file:e,progress:100,loaded:E.length,total:E.length});else{let A,T=m.headers.get("content-length");if(T)A=parseInt(T,10);else try{let S=await pr(t,e,s);S.size&&(A=S.size)}catch{}E=await EE(m,S=>{kr(s.progress_callback,{status:"progress",name:t,file:e,...S})},A)}x=E}if(_&&f&&typeof m!="string"&&await dP(t,e,o,f,m,x,s),kr(s.progress_callback,{status:"done",name:t,file:e}),x){if(!ie.IS_NODE_ENV&&n)throw new Error("Cannot return path in a browser environment.");return x}if(m instanceof Hr)return m.filePath;let k=await o?.match(f);if(k instanceof Hr)return k.filePath;if(k instanceof Response)return new Uint8Array(await k.arrayBuffer());if(typeof k=="string")return k;throw new Error("Unable to get model file path or buffer.")}async function cl(t,e,r=!0,s={},n=!1){if(!fe.allowLocalModels){if(s.local_files_only)throw Error("Invalid configuration detected: local models are disabled (`env.allowLocalModels=false`) but you have requested to only use local models (`local_files_only=true`).");if(!fe.allowRemoteModels)throw Error("Invalid configuration detected: both local and remote models are disabled. Fix by setting `env.allowLocalModels` or `env.allowRemoteModels` to `true`.")}kr(s.progress_callback,{status:"initiate",name:t,file:e});let o=await er(s?.cache_dir);return await fP(t,e,r,s,n,o)}async function W0(t,e,r=!0,s={}){let n=await cl(t,e,r,s,!1);return n===null?null:new TextDecoder("utf-8").decode(n)}async function ft(t,e,r=!0,s={}){let n=await W0(t,e,r,s);return n===null?{}:JSON.parse(n)}function OE(t,[e,r,s],[n,o],a="bilinear",i=!1){let l=o/s,c=n/r,p=new t.constructor(n*o*e),f=r*s,_=n*o;for(let m=0;m<n;++m)for(let w=0;w<o;++w){let x=m*o+w,k=(w+.5)/l-.5,E=(m+.5)/c-.5,A=Math.floor(k),T=Math.floor(E),S=Math.min(A+1,s-1),P=Math.min(T+1,r-1);A=Math.max(A,0),T=Math.max(T,0);let O=k-A,v=E-T,j=(1-O)*(1-v),H=O*(1-v),B=(1-O)*v,V=O*v,q=T*s,Q=P*s,F=q+A,C=q+S,te=Q+A,le=Q+S;for(let L=0;L<e;++L){let z=L*f;p[L*_+x]=j*t[z+F]+H*t[z+C]+B*t[z+te]+V*t[z+le]}}return p}function IE(t,e,r){let s=new Array(r.length),n=new Array(r.length);for(let i=r.length-1,l=1;i>=0;--i)n[i]=l,s[i]=e[r[i]],l*=s[i];let o=r.map((i,l)=>n[r.indexOf(l)]),a=new t.constructor(t.length);for(let i=0;i<t.length;++i){let l=0;for(let c=e.length-1,p=i;c>=0;--c)l+=p%e[c]*o[c],p=Math.floor(p/e[c]);a[l]=t[i]}return[a,s]}function Le(t){let e=Pe(t)[0],r=t.map(o=>Math.exp(o-e)),s=r.reduce((o,a)=>o+a,0);return r.map(o=>o/s)}function Vu(t){let e=Pe(t)[0],r=0;for(let o=0;o<t.length;++o)r+=Math.exp(t[o]-e);let s=Math.log(r);return t.map(o=>o-e-s)}function H0(t,e){let r=0;for(let s=0;s<t.length;++s)r+=t[s]*e[s];return r}function CE(t,e){let r=H0(t,e),s=TE(t),n=TE(e);return r/(s*n)}function TE(t){return Math.sqrt(t.reduce((e,r)=>e+r*r,0))}function ul(t){if(t.length===0)throw Error("Array must not be empty");let e=t[0],r=0;for(let s=1;s<t.length;++s)t[s]<e&&(e=t[s],r=s);return[e,r]}function Pe(t){if(t.length===0)throw Error("Array must not be empty");let e=t[0],r=0;for(let s=1;s<t.length;++s)t[s]>e&&(e=t[s],r=s);return[e,r]}function LE(t){return t>0&&(t&t-1)===0}var qu=class{constructor(e){if(this.size=e|0,this.size<=1||!LE(this.size))throw new Error("FFT size must be a power of two larger than 1");this._csize=e<<1,this.table=new Float64Array(this.size*2);for(let s=0;s<this.table.length;s+=2){let n=Math.PI*s/this.size;this.table[s]=Math.cos(n),this.table[s+1]=-Math.sin(n)}let r=0;for(let s=1;this.size>s;s<<=1)++r;this._width=r%2===0?r-1:r,this._bitrev=new Int32Array(1<<this._width);for(let s=0;s<this._bitrev.length;++s){this._bitrev[s]=0;for(let n=0;n<this._width;n+=2){let o=this._width-n-2;this._bitrev[s]|=(s>>>n&3)<<o}}}createComplexArray(){return new Float64Array(this._csize)}fromComplexArray(e,r){let s=r||new Array(e.length>>>1);for(let n=0;n<e.length;n+=2)s[n>>>1]=e[n];return s}toComplexArray(e,r){let s=r||this.createComplexArray();for(let n=0;n<s.length;n+=2)s[n]=e[n>>>1],s[n+1]=0;return s}transform(e,r){if(e===r)throw new Error("Input and output buffers must be different");this._transform4(e,r,1)}realTransform(e,r){if(e===r)throw new Error("Input and output buffers must be different");this._realTransform4(e,r,1)}inverseTransform(e,r){if(e===r)throw new Error("Input and output buffers must be different");this._transform4(e,r,-1);for(let s=0;s<e.length;++s)e[s]/=this.size}_transform4(e,r,s){let n=this._csize,a=1<<this._width,i=n/a<<1,l,c,p=this._bitrev;if(i===4)for(l=0,c=0;l<n;l+=i,++c){let _=p[c];this._singleTransform2(r,e,l,_,a)}else for(l=0,c=0;l<n;l+=i,++c){let _=p[c];this._singleTransform4(r,e,l,_,a,s)}let f=this.table;for(a>>=2;a>=2;a>>=2){i=n/a<<1;let _=i>>>2;for(l=0;l<n;l+=i){let m=l+_-1;for(let w=l,x=0;w<m;w+=2,x+=a){let k=w,E=k+_,A=E+_,T=A+_,S=e[k],P=e[k+1],O=e[E],v=e[E+1],j=e[A],H=e[A+1],B=e[T],V=e[T+1],q=f[x],Q=s*f[x+1],F=O*q-v*Q,C=O*Q+v*q,te=f[2*x],le=s*f[2*x+1],L=j*te-H*le,z=j*le+H*te,R=f[3*x],J=s*f[3*x+1],Ce=B*R-V*J,ae=B*J+V*R,Ue=S+L,Je=P+z,rt=S-L,nt=P-z,at=F+Ce,Se=C+ae,xe=s*(F-Ce),He=s*(C-ae);e[k]=Ue+at,e[k+1]=Je+Se,e[E]=rt+He,e[E+1]=nt-xe,e[A]=Ue-at,e[A+1]=Je-Se,e[T]=rt-He,e[T+1]=nt+xe}}}}_singleTransform2(e,r,s,n,o){let a=e[n],i=e[n+1],l=e[n+o],c=e[n+o+1];r[s]=a+l,r[s+1]=i+c,r[s+2]=a-l,r[s+3]=i-c}_singleTransform4(e,r,s,n,o,a){let i=o*2,l=o*3,c=e[n],p=e[n+1],f=e[n+o],_=e[n+o+1],m=e[n+i],w=e[n+i+1],x=e[n+l],k=e[n+l+1],E=c+m,A=p+w,T=c-m,S=p-w,P=f+x,O=_+k,v=a*(f-x),j=a*(_-k);r[s]=E+P,r[s+1]=A+O,r[s+2]=T+j,r[s+3]=S-v,r[s+4]=E-P,r[s+5]=A-O,r[s+6]=T-j,r[s+7]=S+v}_realTransform4(e,r,s){let n=this._csize,a=1<<this._width,i=n/a<<1,l,c,p=this._bitrev;if(i===4)for(l=0,c=0;l<n;l+=i,++c){let m=p[c];this._singleRealTransform2(r,e,l,m>>>1,a>>>1)}else for(l=0,c=0;l<n;l+=i,++c){let m=p[c];this._singleRealTransform4(r,e,l,m>>>1,a>>>1,s)}let f=this.table;for(a>>=2;a>=2;a>>=2){i=n/a<<1;let m=i>>>1,w=m>>>1,x=w>>>1;for(l=0;l<n;l+=i)for(let k=0,E=0;k<=x;k+=2,E+=a){let A=l+k,T=A+w,S=T+w,P=S+w,O=e[A],v=e[A+1],j=e[T],H=e[T+1],B=e[S],V=e[S+1],q=e[P],Q=e[P+1],F=O,C=v,te=f[E],le=s*f[E+1],L=j*te-H*le,z=j*le+H*te,R=f[2*E],J=s*f[2*E+1],Ce=B*R-V*J,ae=B*J+V*R,Ue=f[3*E],Je=s*f[3*E+1],rt=q*Ue-Q*Je,nt=q*Je+Q*Ue,at=F+Ce,Se=C+ae,xe=F-Ce,He=C-ae,Ot=L+rt,ke=z+nt,De=s*(L-rt),qr=s*(z-nt);if(e[A]=at+Ot,e[A+1]=Se+ke,e[T]=xe+qr,e[T+1]=He-De,k===0){e[S]=at-Ot,e[S+1]=Se-ke;continue}if(k===x)continue;let As=l+w-k,It=l+m-k;e[As]=xe-s*qr,e[As+1]=-He-s*De,e[It]=at-s*Ot,e[It+1]=-Se+s*ke}}let _=n>>>1;for(let m=2;m<_;m+=2)e[n-m]=e[m],e[n-m+1]=-e[m+1]}_singleRealTransform2(e,r,s,n,o){let a=e[n],i=e[n+o];r[s]=a+i,r[s+1]=0,r[s+2]=a-i,r[s+3]=0}_singleRealTransform4(e,r,s,n,o,a){let i=o*2,l=o*3,c=e[n],p=e[n+o],f=e[n+i],_=e[n+l],m=c+f,w=c-f,x=p+_,k=a*(p-_);r[s]=m+x,r[s+1]=0,r[s+2]=w,r[s+3]=-k,r[s+4]=m-x,r[s+5]=0,r[s+6]=w,r[s+7]=k}},V0=class{constructor(e){let r=2*(e-1),s=2*(2*e-1),n=2**Math.ceil(Math.log2(s));this.bufferSize=n,this._a=r;let o=new Float64Array(s),a=new Float64Array(n);this._chirpBuffer=new Float64Array(n),this._buffer1=new Float64Array(n),this._buffer2=new Float64Array(n),this._outBuffer1=new Float64Array(n),this._outBuffer2=new Float64Array(n);let i=-2*Math.PI/e,l=Math.cos(i),c=Math.sin(i);for(let p=0;p<s>>1;++p){let f=(p+1-e)**2/2,_=Math.sqrt(l**2+c**2)**f,m=f*Math.atan2(c,l),w=2*p;o[w]=_*Math.cos(m),o[w+1]=_*Math.sin(m),a[w]=o[w],a[w+1]=-o[w+1]}this._slicedChirpBuffer=o.subarray(r,s),this._f=new qu(n>>1),this._f.transform(this._chirpBuffer,a)}_transform(e,r,s){let n=this._buffer1,o=this._buffer2,a=this._outBuffer1,i=this._outBuffer2,l=this._chirpBuffer,c=this._slicedChirpBuffer,p=this._a;if(s)for(let f=0;f<c.length;f+=2){let _=f+1,m=f>>1,w=r[m];n[f]=w*c[f],n[_]=w*c[_]}else for(let f=0;f<c.length;f+=2){let _=f+1;n[f]=r[f]*c[f]-r[_]*c[_],n[_]=r[f]*c[_]+r[_]*c[f]}this._f.transform(a,n);for(let f=0;f<l.length;f+=2){let _=f+1;o[f]=a[f]*l[f]-a[_]*l[_],o[_]=a[f]*l[_]+a[_]*l[f]}this._f.inverseTransform(i,o);for(let f=0;f<i.length;f+=2){let _=i[f+p],m=i[f+p+1],w=c[f],x=c[f+1];e[f]=_*w-m*x,e[f+1]=_*x+m*w}}transform(e,r){this._transform(e,r,!1)}realTransform(e,r){this._transform(e,r,!0)}},Wu=class{constructor(e){this.fft_length=e,this.isPowerOfTwo=LE(e),this.isPowerOfTwo?(this.fft=new qu(e),this.outputBufferSize=2*e):(this.fft=new V0(e),this.outputBufferSize=this.fft.bufferSize)}realTransform(e,r){this.fft.realTransform(e,r)}transform(e,r){this.fft.transform(e,r)}};function PE(t,e){if(e%2===0||e<=0)throw new Error("Window size must be a positive odd number");let r=new t.constructor(t.length),s=new t.constructor(e),n=Math.floor(e/2);for(let o=0;o<t.length;++o){let a=0;for(let i=-n;i<=n;++i){let l=o+i;l<0?l=Math.abs(l):l>=t.length&&(l=2*(t.length-1)-l),s[a++]=t[l]}s.sort(),r[o]=s[n]}return r}function zs(t,e){let r=Math.pow(10,e);return Math.round(t*r)/r}function zE(t){let e=Math.round(t);return Math.abs(t)%1===.5?e%2===0?e:e-1:e}function NE(t){let e=t.length,r=t[0].length,s=[e+1,r+1],n=Array.from({length:s[0]},()=>Array(s[1]).fill(1/0));n[0][0]=0;let o=Array.from({length:s[0]},()=>Array(s[1]).fill(-1));for(let p=1;p<s[1];++p)for(let f=1;f<s[0];++f){let _=n[f-1][p-1],m=n[f-1][p],w=n[f][p-1],x,k;_<m&&_<w?(x=_,k=0):m<_&&m<w?(x=m,k=1):(x=w,k=2),n[f][p]=t[f-1][p-1]+x,o[f][p]=k}for(let p=0;p<s[1];++p)o[0][p]=2;for(let p=0;p<s[0];++p)o[p][0]=1;let a=e,i=r,l=[],c=[];for(;a>0||i>0;)switch(l.push(a-1),c.push(i-1),o[a][i]){case 0:--a,--i;break;case 1:--a;break;case 2:--i;break;default:throw new Error(`Internal error in dynamic time warping. Unexpected trace[${a}, ${i}]. Please file a bug report.`)}return l.reverse(),c.reverse(),[l,c]}var $E=(function(){let t=null;return function(e){if(!t){t=new Float32Array(65536);let o=new ArrayBuffer(4),a=new Uint32Array(o),i=new Float32Array(o);for(let l=0;l<t.length;++l){let c=0,p=(l&32768)<<16,f=(l&31744)>>10,_=l&1023;if(f===31)c=p|2139095040|_<<13;else if(f===0)if(_===0)c=p;else{let m=113;for(;(_&1024)===0;)_<<=1,--m;_&=-1025,c=p|m<<23|_<<13}else c=p|f+112<<23|_<<13;a[0]=c,t[l]=i[0]}}let r=e.length,s=t,n=new Float32Array(r);for(let o=0;o<r;++o)n[o]=s[e[o]];return n}})();var GP=vr(require("onnxruntime-node"),1);var Rb={};Os(Rb,{InferenceSession:()=>vb,TRACE:()=>tp,TRACE_EVENT_BEGIN:()=>ss,TRACE_EVENT_END:()=>ns,TRACE_FUNC_BEGIN:()=>Bs,TRACE_FUNC_END:()=>Us,Tensor:()=>rr,default:()=>jP,env:()=>Ke,registerBackend:()=>Fs});var tr={};var yb=Object.defineProperty,_P=Object.getOwnPropertyDescriptor,mP=Object.getOwnPropertyNames,hP=Object.prototype.hasOwnProperty,gP=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')}),be=(t,e)=>()=>(t&&(e=t(t=0)),e),wl=(t,e)=>{for(var r in e)yb(t,r,{get:e[r],enumerable:!0})},wP=(t,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of mP(e))!hP.call(t,n)&&n!==r&&yb(t,n,{get:()=>e[n],enumerable:!(s=_P(e,n))||s.enumerable});return t},ep=t=>wP(yb({},"__esModule",{value:!0}),t),pl,Zr,Fs,RE,uA,pA=be(()=>{"use strict";pl=new Map,Zr=[],Fs=(t,e,r)=>{if(e&&typeof e.init=="function"&&typeof e.createInferenceSessionHandler=="function"){let s=pl.get(t);if(s===void 0)pl.set(t,{backend:e,priority:r});else{if(s.priority>r)return;if(s.priority===r&&s.backend!==e)throw new Error(`cannot register backend "${t}" using priority ${r}`)}if(r>=0){let n=Zr.indexOf(t);n!==-1&&Zr.splice(n,1);for(let o=0;o<Zr.length;o++)if(pl.get(Zr[o]).priority<=r){Zr.splice(o,0,t);return}Zr.push(t)}return}throw new TypeError("not a valid backend")},RE=async t=>{let e=pl.get(t);if(!e)return"backend not found.";if(e.initialized)return e.backend;if(e.aborted)return e.error;{let r=!!e.initPromise;try{return r||(e.initPromise=e.backend.init(t)),await e.initPromise,e.initialized=!0,e.backend}catch(s){return r||(e.error=`${s}`,e.aborted=!0),e.error}finally{delete e.initPromise}}},uA=async t=>{let e=t.executionProviders||[],r=e.map(l=>typeof l=="string"?l:l.name),s=r.length===0?Zr:r,n,o=[],a=new Set;for(let l of s){let c=await RE(l);typeof c=="string"?o.push({name:l,err:c}):(n||(n=c),n===c&&a.add(l))}if(!n)throw new Error(`no available backend found. ERR: ${o.map(l=>`[${l.name}] ${l.err}`).join(", ")}`);for(let{name:l,err:c}of o)r.includes(l)&&console.warn(`removing requested execution provider "${l}" from session options because it is not available: ${c}`);let i=e.filter(l=>a.has(typeof l=="string"?l:l.name));return[n,new Proxy(t,{get:(l,c)=>c==="executionProviders"?i:Reflect.get(l,c)})]}}),xP=be(()=>{"use strict";pA()}),dA,yP=be(()=>{"use strict";dA="1.24.0-dev.20251116-b39e144322"}),X0,_t,fA=be(()=>{"use strict";yP(),X0="warning",_t={wasm:{},webgl:{},webgpu:{},versions:{common:dA},set logLevel(t){if(t!==void 0){if(typeof t!="string"||["verbose","info","warning","error","fatal"].indexOf(t)===-1)throw new Error(`Unsupported logging level: ${t}`);X0=t}},get logLevel(){return X0}},Object.defineProperty(_t,"logLevel",{enumerable:!0})}),Ke,bP=be(()=>{"use strict";fA(),Ke=_t}),_A,mA,vP=be(()=>{"use strict";_A=(t,e)=>{let r=typeof document<"u"?document.createElement("canvas"):new OffscreenCanvas(1,1);r.width=t.dims[3],r.height=t.dims[2];let s=r.getContext("2d");if(s!=null){let n,o;e?.tensorLayout!==void 0&&e.tensorLayout==="NHWC"?(n=t.dims[2],o=t.dims[3]):(n=t.dims[3],o=t.dims[2]);let a=e?.format!==void 0?e.format:"RGB",i=e?.norm,l,c;i===void 0||i.mean===void 0?l=[255,255,255,255]:typeof i.mean=="number"?l=[i.mean,i.mean,i.mean,i.mean]:(l=[i.mean[0],i.mean[1],i.mean[2],0],i.mean[3]!==void 0&&(l[3]=i.mean[3])),i===void 0||i.bias===void 0?c=[0,0,0,0]:typeof i.bias=="number"?c=[i.bias,i.bias,i.bias,i.bias]:(c=[i.bias[0],i.bias[1],i.bias[2],0],i.bias[3]!==void 0&&(c[3]=i.bias[3]));let p=o*n,f=0,_=p,m=p*2,w=-1;a==="RGBA"?(f=0,_=p,m=p*2,w=p*3):a==="RGB"?(f=0,_=p,m=p*2):a==="RBG"&&(f=0,m=p,_=p*2);for(let x=0;x<o;x++)for(let k=0;k<n;k++){let E=(t.data[f++]-c[0])*l[0],A=(t.data[_++]-c[1])*l[1],T=(t.data[m++]-c[2])*l[2],S=w===-1?255:(t.data[w++]-c[3])*l[3];s.fillStyle="rgba("+E+","+A+","+T+","+S+")",s.fillRect(k,x,1,1)}if("toDataURL"in r)return r.toDataURL();throw new Error("toDataURL is not supported")}else throw new Error("Can not access image data")},mA=(t,e)=>{let r=typeof document<"u"?document.createElement("canvas").getContext("2d"):new OffscreenCanvas(1,1).getContext("2d"),s;if(r!=null){let n,o,a;e?.tensorLayout!==void 0&&e.tensorLayout==="NHWC"?(n=t.dims[2],o=t.dims[1],a=t.dims[3]):(n=t.dims[3],o=t.dims[2],a=t.dims[1]);let i=e!==void 0&&e.format!==void 0?e.format:"RGB",l=e?.norm,c,p;l===void 0||l.mean===void 0?c=[255,255,255,255]:typeof l.mean=="number"?c=[l.mean,l.mean,l.mean,l.mean]:(c=[l.mean[0],l.mean[1],l.mean[2],255],l.mean[3]!==void 0&&(c[3]=l.mean[3])),l===void 0||l.bias===void 0?p=[0,0,0,0]:typeof l.bias=="number"?p=[l.bias,l.bias,l.bias,l.bias]:(p=[l.bias[0],l.bias[1],l.bias[2],0],l.bias[3]!==void 0&&(p[3]=l.bias[3]));let f=o*n;if(e!==void 0&&(e.format!==void 0&&a===4&&e.format!=="RGBA"||a===3&&e.format!=="RGB"&&e.format!=="BGR"))throw new Error("Tensor format doesn't match input tensor dims");let _=4,m=0,w=1,x=2,k=3,E=0,A=f,T=f*2,S=-1;i==="RGBA"?(E=0,A=f,T=f*2,S=f*3):i==="RGB"?(E=0,A=f,T=f*2):i==="RBG"&&(E=0,T=f,A=f*2),s=r.createImageData(n,o);for(let P=0;P<o*n;m+=_,w+=_,x+=_,k+=_,P++)s.data[m]=(t.data[E++]-p[0])*c[0],s.data[w]=(t.data[A++]-p[1])*c[1],s.data[x]=(t.data[T++]-p[2])*c[2],s.data[k]=S===-1?255:(t.data[S++]-p[3])*c[3]}else throw new Error("Can not access image data");return s}}),Hu,hA,gA,wA,xA,yA,kP=be(()=>{"use strict";bb(),Hu=(t,e)=>{if(t===void 0)throw new Error("Image buffer must be defined");if(e.height===void 0||e.width===void 0)throw new Error("Image height and width must be defined");if(e.tensorLayout==="NHWC")throw new Error("NHWC Tensor layout is not supported yet");let{height:r,width:s}=e,n=e.norm??{mean:255,bias:0},o,a;typeof n.mean=="number"?o=[n.mean,n.mean,n.mean,n.mean]:o=[n.mean[0],n.mean[1],n.mean[2],n.mean[3]??255],typeof n.bias=="number"?a=[n.bias,n.bias,n.bias,n.bias]:a=[n.bias[0],n.bias[1],n.bias[2],n.bias[3]??0];let i=e.format!==void 0?e.format:"RGBA",l=e.tensorFormat!==void 0&&e.tensorFormat!==void 0?e.tensorFormat:"RGB",c=r*s,p=l==="RGBA"?new Float32Array(c*4):new Float32Array(c*3),f=4,_=0,m=1,w=2,x=3,k=0,E=c,A=c*2,T=-1;i==="RGB"&&(f=3,_=0,m=1,w=2,x=-1),l==="RGBA"?T=c*3:l==="RBG"?(k=0,A=c,E=c*2):l==="BGR"&&(A=0,E=c,k=c*2);for(let S=0;S<c;S++,_+=f,w+=f,m+=f,x+=f)p[k++]=(t[_]+a[0])/o[0],p[E++]=(t[m]+a[1])/o[1],p[A++]=(t[w]+a[2])/o[2],T!==-1&&x!==-1&&(p[T++]=(t[x]+a[3])/o[3]);return l==="RGBA"?new Nt("float32",p,[1,4,r,s]):new Nt("float32",p,[1,3,r,s])},hA=async(t,e)=>{let r=typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement,s=typeof ImageData<"u"&&t instanceof ImageData,n=typeof ImageBitmap<"u"&&t instanceof ImageBitmap,o=typeof t=="string",a,i=e??{},l=()=>{if(typeof document<"u")return document.createElement("canvas");if(typeof OffscreenCanvas<"u")return new OffscreenCanvas(1,1);throw new Error("Canvas is not supported")},c=p=>typeof HTMLCanvasElement<"u"&&p instanceof HTMLCanvasElement||p instanceof OffscreenCanvas?p.getContext("2d"):null;if(r){let p=l();p.width=t.width,p.height=t.height;let f=c(p);if(f!=null){let _=t.height,m=t.width;if(e!==void 0&&e.resizedHeight!==void 0&&e.resizedWidth!==void 0&&(_=e.resizedHeight,m=e.resizedWidth),e!==void 0){if(i=e,e.tensorFormat!==void 0)throw new Error("Image input config format must be RGBA for HTMLImageElement");i.tensorFormat="RGBA",i.height=_,i.width=m}else i.tensorFormat="RGBA",i.height=_,i.width=m;f.drawImage(t,0,0),a=f.getImageData(0,0,m,_).data}else throw new Error("Can not access image data")}else if(s){let p,f;if(e!==void 0&&e.resizedWidth!==void 0&&e.resizedHeight!==void 0?(p=e.resizedHeight,f=e.resizedWidth):(p=t.height,f=t.width),e!==void 0&&(i=e),i.format="RGBA",i.height=p,i.width=f,e!==void 0){let _=l();_.width=f,_.height=p;let m=c(_);if(m!=null)m.putImageData(t,0,0),a=m.getImageData(0,0,f,p).data;else throw new Error("Can not access image data")}else a=t.data}else if(n){if(e===void 0)throw new Error("Please provide image config with format for Imagebitmap");let p=l();p.width=t.width,p.height=t.height;let f=c(p);if(f!=null){let _=t.height,m=t.width;return f.drawImage(t,0,0,m,_),a=f.getImageData(0,0,m,_).data,i.height=_,i.width=m,Hu(a,i)}else throw new Error("Can not access image data")}else{if(o)return new Promise((p,f)=>{let _=l(),m=c(_);if(!t||!m)return f();let w=new Image;w.crossOrigin="Anonymous",w.src=t,w.onload=()=>{_.width=w.width,_.height=w.height,m.drawImage(w,0,0,_.width,_.height);let x=m.getImageData(0,0,_.width,_.height);i.height=_.height,i.width=_.width,p(Hu(x.data,i))}});throw new Error("Input data provided is not supported - aborted tensor creation")}if(a!==void 0)return Hu(a,i);throw new Error("Input data provided is not supported - aborted tensor creation")},gA=(t,e)=>{let{width:r,height:s,download:n,dispose:o}=e,a=[1,s,r,4];return new Nt({location:"texture",type:"float32",texture:t,dims:a,download:n,dispose:o})},wA=(t,e)=>{let{dataType:r,dims:s,download:n,dispose:o}=e;return new Nt({location:"gpu-buffer",type:r??"float32",gpuBuffer:t,dims:s,download:n,dispose:o})},xA=(t,e)=>{let{dataType:r,dims:s,download:n,dispose:o}=e;return new Nt({location:"ml-tensor",type:r??"float32",mlTensor:t,dims:s,download:n,dispose:o})},yA=(t,e,r)=>new Nt({location:"cpu-pinned",type:t,data:e,dims:r??[e.length]})}),Rs,hl,K0,bA,EP=be(()=>{"use strict";Rs=new Map([["float32",Float32Array],["uint8",Uint8Array],["int8",Int8Array],["uint16",Uint16Array],["int16",Int16Array],["int32",Int32Array],["bool",Uint8Array],["float64",Float64Array],["uint32",Uint32Array],["int4",Uint8Array],["uint4",Uint8Array]]),hl=new Map([[Float32Array,"float32"],[Uint8Array,"uint8"],[Int8Array,"int8"],[Uint16Array,"uint16"],[Int16Array,"int16"],[Int32Array,"int32"],[Float64Array,"float64"],[Uint32Array,"uint32"]]),K0=!1,bA=()=>{if(!K0){K0=!0;let t=typeof BigInt64Array<"u"&&BigInt64Array.from,e=typeof BigUint64Array<"u"&&BigUint64Array.from,r=globalThis.Float16Array,s=typeof r<"u"&&r.from;t&&(Rs.set("int64",BigInt64Array),hl.set(BigInt64Array,"int64")),e&&(Rs.set("uint64",BigUint64Array),hl.set(BigUint64Array,"uint64")),s?(Rs.set("float16",r),hl.set(r,"float16")):Rs.set("float16",Uint16Array)}}}),vA,kA,AP=be(()=>{"use strict";bb(),vA=t=>{let e=1;for(let r=0;r<t.length;r++){let s=t[r];if(typeof s!="number"||!Number.isSafeInteger(s))throw new TypeError(`dims[${r}] must be an integer, got: ${s}`);if(s<0)throw new RangeError(`dims[${r}] must be a non-negative integer, got: ${s}`);e*=s}return e},kA=(t,e)=>{switch(t.location){case"cpu":return new Nt(t.type,t.data,e);case"cpu-pinned":return new Nt({location:"cpu-pinned",data:t.data,type:t.type,dims:e});case"texture":return new Nt({location:"texture",texture:t.texture,type:t.type,dims:e});case"gpu-buffer":return new Nt({location:"gpu-buffer",gpuBuffer:t.gpuBuffer,type:t.type,dims:e});case"ml-tensor":return new Nt({location:"ml-tensor",mlTensor:t.mlTensor,type:t.type,dims:e});default:throw new Error(`tensorReshape: tensor location ${t.location} is not supported`)}}}),Nt,bb=be(()=>{"use strict";vP(),kP(),EP(),AP(),Nt=class{constructor(t,e,r){bA();let s,n;if(typeof t=="object"&&"location"in t)switch(this.dataLocation=t.location,s=t.type,n=t.dims,t.location){case"cpu-pinned":{let a=Rs.get(s);if(!a)throw new TypeError(`unsupported type "${s}" to create tensor from pinned buffer`);if(!(t.data instanceof a))throw new TypeError(`buffer should be of type ${a.name}`);this.cpuData=t.data;break}case"texture":{if(s!=="float32")throw new TypeError(`unsupported type "${s}" to create tensor from texture`);this.gpuTextureData=t.texture,this.downloader=t.download,this.disposer=t.dispose;break}case"gpu-buffer":{if(s!=="float32"&&s!=="float16"&&s!=="int32"&&s!=="int64"&&s!=="uint32"&&s!=="uint8"&&s!=="bool"&&s!=="uint4"&&s!=="int4")throw new TypeError(`unsupported type "${s}" to create tensor from gpu buffer`);this.gpuBufferData=t.gpuBuffer,this.downloader=t.download,this.disposer=t.dispose;break}case"ml-tensor":{if(s!=="float32"&&s!=="float16"&&s!=="int32"&&s!=="int64"&&s!=="uint32"&&s!=="uint64"&&s!=="int8"&&s!=="uint8"&&s!=="bool"&&s!=="uint4"&&s!=="int4")throw new TypeError(`unsupported type "${s}" to create tensor from MLTensor`);this.mlTensorData=t.mlTensor,this.downloader=t.download,this.disposer=t.dispose;break}default:throw new Error(`Tensor constructor: unsupported location '${this.dataLocation}'`)}else{let a,i;if(typeof t=="string")if(s=t,i=r,t==="string"){if(!Array.isArray(e))throw new TypeError("A string tensor's data must be a string array.");a=e}else{let l=Rs.get(t);if(l===void 0)throw new TypeError(`Unsupported tensor type: ${t}.`);if(Array.isArray(e)){if(t==="float16"&&l===Uint16Array||t==="uint4"||t==="int4")throw new TypeError(`Creating a ${t} tensor from number array is not supported. Please use ${l.name} as data.`);t==="uint64"||t==="int64"?a=l.from(e,BigInt):a=l.from(e)}else if(e instanceof l)a=e;else if(e instanceof Uint8ClampedArray)if(t==="uint8")a=Uint8Array.from(e);else throw new TypeError("A Uint8ClampedArray tensor's data must be type of uint8");else if(t==="float16"&&e instanceof Uint16Array&&l!==Uint16Array)a=new globalThis.Float16Array(e.buffer,e.byteOffset,e.length);else throw new TypeError(`A ${s} tensor's data must be type of ${l}`)}else if(i=e,Array.isArray(t)){if(t.length===0)throw new TypeError("Tensor type cannot be inferred from an empty array.");let l=typeof t[0];if(l==="string")s="string",a=t;else if(l==="boolean")s="bool",a=Uint8Array.from(t);else throw new TypeError(`Invalid element type of data array: ${l}.`)}else if(t instanceof Uint8ClampedArray)s="uint8",a=Uint8Array.from(t);else{let l=hl.get(t.constructor);if(l===void 0)throw new TypeError(`Unsupported type for tensor data: ${t.constructor}.`);s=l,a=t}if(i===void 0)i=[a.length];else if(!Array.isArray(i))throw new TypeError("A tensor's dims must be a number array");n=i,this.cpuData=a,this.dataLocation="cpu"}let o=vA(n);if(this.cpuData&&o!==this.cpuData.length&&!((s==="uint4"||s==="int4")&&Math.ceil(o/2)===this.cpuData.length))throw new Error(`Tensor's size(${o}) does not match data length(${this.cpuData.length}).`);this.type=s,this.dims=n,this.size=o}static async fromImage(t,e){return hA(t,e)}static fromTexture(t,e){return gA(t,e)}static fromGpuBuffer(t,e){return wA(t,e)}static fromMLTensor(t,e){return xA(t,e)}static fromPinnedBuffer(t,e,r){return yA(t,e,r)}toDataURL(t){return _A(this,t)}toImageData(t){return mA(this,t)}get data(){if(this.ensureValid(),!this.cpuData)throw new Error("The data is not on CPU. Use `getData()` to download GPU data to CPU, or use `texture` or `gpuBuffer` property to access the GPU data directly.");return this.cpuData}get location(){return this.dataLocation}get texture(){if(this.ensureValid(),!this.gpuTextureData)throw new Error("The data is not stored as a WebGL texture.");return this.gpuTextureData}get gpuBuffer(){if(this.ensureValid(),!this.gpuBufferData)throw new Error("The data is not stored as a WebGPU buffer.");return this.gpuBufferData}get mlTensor(){if(this.ensureValid(),!this.mlTensorData)throw new Error("The data is not stored as a WebNN MLTensor.");return this.mlTensorData}async getData(t){switch(this.ensureValid(),this.dataLocation){case"cpu":case"cpu-pinned":return this.data;case"texture":case"gpu-buffer":case"ml-tensor":{if(!this.downloader)throw new Error("The current tensor is not created with a specified data downloader.");if(this.isDownloading)throw new Error("The current tensor is being downloaded.");try{this.isDownloading=!0;let e=await this.downloader();return this.downloader=void 0,this.dataLocation="cpu",this.cpuData=e,t&&this.disposer&&(this.disposer(),this.disposer=void 0),e}finally{this.isDownloading=!1}}default:throw new Error(`cannot get data from location: ${this.dataLocation}`)}}dispose(){if(this.isDownloading)throw new Error("The current tensor is being downloaded.");this.disposer&&(this.disposer(),this.disposer=void 0),this.cpuData=void 0,this.gpuTextureData=void 0,this.gpuBufferData=void 0,this.mlTensorData=void 0,this.downloader=void 0,this.isDownloading=void 0,this.dataLocation="none"}ensureValid(){if(this.dataLocation==="none")throw new Error("The tensor is disposed.")}reshape(t){if(this.ensureValid(),this.downloader||this.disposer)throw new Error("Cannot reshape a tensor that owns GPU resource.");return kA(this,t)}}}),rr,EA=be(()=>{"use strict";bb(),rr=Nt}),tp,Q0,Bs,Us,ss,ns,AA=be(()=>{"use strict";fA(),tp=(t,e)=>{(typeof _t.trace>"u"?!_t.wasm.trace:!_t.trace)||console.timeStamp(`${t}::ORT::${e}`)},Q0=(t,e)=>{let r=new Error().stack?.split(/\r\n|\r|\n/g)||[],s=!1;for(let n=0;n<r.length;n++){if(s&&!r[n].includes("TRACE_FUNC")){let o=`FUNC_${t}::${r[n].trim().split(" ")[1]}`;e&&(o+=`::${e}`),tp("CPU",o);return}r[n].includes("TRACE_FUNC")&&(s=!0)}},Bs=t=>{(typeof _t.trace>"u"?!_t.wasm.trace:!_t.trace)||Q0("BEGIN",t)},Us=t=>{(typeof _t.trace>"u"?!_t.wasm.trace:!_t.trace)||Q0("END",t)},ss=t=>{(typeof _t.trace>"u"?!_t.wasm.trace:!_t.trace)||console.time(`ORT::${t}`)},ns=t=>{(typeof _t.trace>"u"?!_t.wasm.trace:!_t.trace)||console.timeEnd(`ORT::${t}`)}}),MA,MP=be(()=>{"use strict";pA(),EA(),AA(),MA=class SA{constructor(e){this.handler=e}async run(e,r,s){Bs(),ss("InferenceSession.run");let n={},o={};if(typeof e!="object"||e===null||e instanceof rr||Array.isArray(e))throw new TypeError("'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.");let a=!0;if(typeof r=="object"){if(r===null)throw new TypeError("Unexpected argument[1]: cannot be null.");if(r instanceof rr)throw new TypeError("'fetches' cannot be a Tensor");if(Array.isArray(r)){if(r.length===0)throw new TypeError("'fetches' cannot be an empty array.");a=!1;for(let c of r){if(typeof c!="string")throw new TypeError("'fetches' must be a string array or an object.");if(this.outputNames.indexOf(c)===-1)throw new RangeError(`'fetches' contains invalid output name: ${c}.`);n[c]=null}if(typeof s=="object"&&s!==null)o=s;else if(typeof s<"u")throw new TypeError("'options' must be an object.")}else{let c=!1,p=Object.getOwnPropertyNames(r);for(let f of this.outputNames)if(p.indexOf(f)!==-1){let _=r[f];(_===null||_ instanceof rr)&&(c=!0,a=!1,n[f]=_)}if(c){if(typeof s=="object"&&s!==null)o=s;else if(typeof s<"u")throw new TypeError("'options' must be an object.")}else o=r}}else if(typeof r<"u")throw new TypeError("Unexpected argument[1]: must be 'fetches' or 'options'.");for(let c of this.inputNames)if(typeof e[c]>"u")throw new Error(`input '${c}' is missing in 'feeds'.`);if(a)for(let c of this.outputNames)n[c]=null;let i=await this.handler.run(e,n,o),l={};for(let c in i)if(Object.hasOwnProperty.call(i,c)){let p=i[c];p instanceof rr?l[c]=p:l[c]=new rr(p.type,p.data,p.dims)}return ns("InferenceSession.run"),Us(),l}async release(){return this.handler.dispose()}static async create(e,r,s,n){Bs(),ss("InferenceSession.create");let o,a={};if(typeof e=="string"){if(o=e,typeof r=="object"&&r!==null)a=r;else if(typeof r<"u")throw new TypeError("'options' must be an object.")}else if(e instanceof Uint8Array){if(o=e,typeof r=="object"&&r!==null)a=r;else if(typeof r<"u")throw new TypeError("'options' must be an object.")}else if(e instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer){let p=e,f=0,_=e.byteLength;if(typeof r=="object"&&r!==null)a=r;else if(typeof r=="number"){if(f=r,!Number.isSafeInteger(f))throw new RangeError("'byteOffset' must be an integer.");if(f<0||f>=p.byteLength)throw new RangeError(`'byteOffset' is out of range [0, ${p.byteLength}).`);if(_=e.byteLength-f,typeof s=="number"){if(_=s,!Number.isSafeInteger(_))throw new RangeError("'byteLength' must be an integer.");if(_<=0||f+_>p.byteLength)throw new RangeError(`'byteLength' is out of range (0, ${p.byteLength-f}].`);if(typeof n=="object"&&n!==null)a=n;else if(typeof n<"u")throw new TypeError("'options' must be an object.")}else if(typeof s<"u")throw new TypeError("'byteLength' must be a number.")}else if(typeof r<"u")throw new TypeError("'options' must be an object.");o=new Uint8Array(p,f,_)}else throw new TypeError("Unexpected argument[0]: must be 'path' or 'buffer'.");let[i,l]=await uA(a),c=await i.createInferenceSessionHandler(o,l);return ns("InferenceSession.create"),Us(),new SA(c)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}get inputMetadata(){return this.handler.inputMetadata}get outputMetadata(){return this.handler.outputMetadata}}}),vb,SP=be(()=>{"use strict";MP(),vb=MA}),TP=be(()=>{"use strict"}),OP=be(()=>{"use strict"}),IP=be(()=>{"use strict"}),CP=be(()=>{"use strict"}),TA={};wl(TA,{InferenceSession:()=>vb,TRACE:()=>tp,TRACE_EVENT_BEGIN:()=>ss,TRACE_EVENT_END:()=>ns,TRACE_FUNC_BEGIN:()=>Bs,TRACE_FUNC_END:()=>Us,Tensor:()=>rr,env:()=>Ke,registerBackend:()=>Fs});var js=be(()=>{"use strict";xP(),bP(),SP(),EA(),TP(),OP(),AA(),IP(),CP()}),kb=be(()=>{"use strict"}),OA={};wl(OA,{default:()=>IA});var Y0,J0,IA,LP=be(()=>{"use strict";WA(),Gs(),Eb(),Y0="ort-wasm-proxy-worker",J0=globalThis.self?.name===Y0,J0&&(self.onmessage=t=>{let{type:e,in:r}=t.data;try{switch(e){case"init-wasm":Ab(r.wasm).then(()=>{Ib(r).then(()=>{postMessage({type:e})},s=>{postMessage({type:e,err:s})})},s=>{postMessage({type:e,err:s})});break;case"init-ep":{let{epName:s,env:n}=r;Cb(n,s).then(()=>{postMessage({type:e})},o=>{postMessage({type:e,err:o})});break}case"copy-from":{let{buffer:s}=r,n=np(s);postMessage({type:e,out:n});break}case"create":{let{model:s,options:n}=r;Lb(s,n).then(o=>{postMessage({type:e,out:o})},o=>{postMessage({type:e,err:o})});break}case"release":Pb(r),postMessage({type:e});break;case"run":{let{sessionId:s,inputIndices:n,inputs:o,outputIndices:a,options:i}=r;zb(s,n,o,a,new Array(a.length).fill(null),i).then(l=>{l.some(c=>c[3]!=="cpu")?postMessage({type:e,err:"Proxy does not support non-cpu tensor location."}):postMessage({type:e,out:l},$b([...o,...l]))},l=>{postMessage({type:e,err:l})});break}case"end-profiling":Nb(r),postMessage({type:e});break;default:}}catch(s){postMessage({type:e,err:s})}}),IA=J0?null:t=>new Worker(t??Pt,{type:"module",name:Y0})}),CA={};wl(CA,{default:()=>LA});async function DE(t={}){var e=t,r=!!globalThis.window,s=!!globalThis.WorkerGlobalScope,n=s&&self.name?.startsWith("em-pthread");e.mountExternalData=(u,d)=>{u.startsWith("./")&&(u=u.substring(2)),(e.Uc||(e.Uc=new Map)).set(u,d)},e.unmountExternalData=()=>{delete e.Uc},globalThis.SharedArrayBuffer??new WebAssembly.Memory({initial:0,maximum:0,Be:!0}).buffer.constructor;let o=()=>{let u=d=>(...h)=>{let g=ir;return h=d(...h),ir!=g?new Promise((b,M)=>{d0={resolve:b,reject:M}}):h};(()=>{for(let d of["_OrtAppendExecutionProvider","_OrtCreateSession","_OrtRun","_OrtRunWithBinding","_OrtBindInput"])e[d]=u(e[d])})(),typeof jsepRunAsync<"u"&&(e._OrtRun=jsepRunAsync(e._OrtRun),e._OrtRunWithBinding=jsepRunAsync(e._OrtRunWithBinding)),o=void 0};e.asyncInit=()=>{o?.()};var a,i,l=(u,d)=>{throw d},c=tr.url,p="";if(r||s){try{p=new URL(".",c).href}catch{}s&&(i=u=>{var d=new XMLHttpRequest;return d.open("GET",u,!1),d.responseType="arraybuffer",d.send(null),new Uint8Array(d.response)}),a=async u=>{if(O(u))return new Promise((h,g)=>{var b=new XMLHttpRequest;b.open("GET",u,!0),b.responseType="arraybuffer",b.onload=()=>{b.status==200||b.status==0&&b.response?h(b.response):g(b.status)},b.onerror=g,b.send(null)});var d=await fetch(u,{credentials:"same-origin"});if(d.ok)return d.arrayBuffer();throw Error(d.status+" : "+d.url)}}var f,_,m,w,x,k,E=console.log.bind(console),A=console.error.bind(console),T=E,S=A,P=!1,O=u=>u.startsWith("file://");function v(){Wr.buffer!=B.buffer&&Ce()}if(n){let u=function(d){try{var h=d.data,g=h.Oc;if(g==="load"){let b=[];self.onmessage=M=>b.push(M),k=()=>{postMessage({Oc:"loaded"});for(let M of b)u(M);self.onmessage=u};for(let M of h.de)e[M]&&!e[M].proxy||(e[M]=(...I)=>{postMessage({Oc:"callHandler",ce:M,args:I})},M=="print"&&(T=e[M]),M=="printErr"&&(S=e[M]));Wr=h.je,Ce(),_=h.ke,rt(),Cu()}else if(g==="run"){(function(b){var M=(v(),C)[b+52>>>2>>>0];b=(v(),C)[b+56>>>2>>>0],jv(M,M-b),ce(M)})(h.Nc),E0(h.Nc,0,0,1,0,0),O1(),c0(h.Nc),H||(Ev(),H=!0);try{$M(h.he,h.Wc)}catch(b){if(b!="unwind")throw b}}else h.target!=="setimmediate"&&(g==="checkMailbox"?H&&ku():g&&(S(`worker: received unknown command ${g}`),S(h)))}catch(b){throw Rv(),b}};var j=u,H=!1;self.onunhandledrejection=d=>{throw d.reason||d},self.onmessage=u}var B,V,q,Q,F,C,te,le,L,z,R,J=!1;function Ce(){var u=Wr.buffer;e.HEAP8=B=new Int8Array(u),q=new Int16Array(u),e.HEAPU8=V=new Uint8Array(u),Q=new Uint16Array(u),e.HEAP32=F=new Int32Array(u),e.HEAPU32=C=new Uint32Array(u),te=new Float32Array(u),le=new Float64Array(u),L=new BigInt64Array(u),z=new BigUint64Array(u)}function ae(){J=!0,n?k():br._b()}function Ue(u){throw S(u="Aborted("+u+")"),P=!0,u=new WebAssembly.RuntimeError(u+". Build with -sASSERTIONS for more info."),x?.(u),u}function Je(){return{a:{f:RM,J:DM,k:FM,p:BM,l:UM,ta:jM,b:GM,ca:qM,Ka:N1,s:WM,da:F1,_a:B1,Ga:U1,Ia:j1,$a:G1,Ya:q1,Ra:W1,Xa:V1,pa:H1,Ha:X1,Yb:K1,Za:Q1,Fa:Y1,eb:VM,Da:XM,Tb:KM,Rb:YM,Ca:ZM,M:eS,I:tS,Sb:rS,ka:cS,Ub:uS,Ua:pS,Wb:fS,La:_S,Pb:mS,la:hS,Ta:c0,bb:gS,U:bS,n:MS,c:i0,sb:SS,w:TS,L:OS,z:IS,j:CS,o:ov,tb:LS,G:PS,T:zS,h:NS,u:$S,m:RS,i:DS,Oa:FS,Pa:BS,Qa:US,Ma:cv,Na:uv,Qb:pv,fb:GS,db:VS,Y:HS,rb:XS,ma:KS,cb:qS,gb:QS,ab:YS,Xb:JS,N:jS,hb:ZS,X:eT,Vb:tT,ob:uT,C:pT,sa:dT,ra:fT,qb:_T,W:mT,v:hT,nb:gT,mb:wT,lb:xT,pb:yT,kb:bT,jb:vT,ib:kT,Va:gv,Wa:wv,Ja:It,ea:xv,oa:yv,Sa:bv,na:vv,Db:PO,xa:AO,Eb:LO,ya:EO,F:_O,e:tO,r:ZT,x:JT,D:pO,Ib:bO,ba:xO,B:sO,za:vO,$:MO,ha:yO,Fb:IO,Gb:OO,Ba:mO,Aa:wO,Jb:hO,wa:CO,aa:kO,d:rO,A:nO,q:eO,Cb:zO,t:aO,y:dO,H:oO,E:iO,K:fO,S:SO,ja:uO,_:TO,Kb:cO,Lb:lO,P:gO,g:AT,a:Wr,Ob:qr,Hb:MT,ia:ST,O:TT,qa:OT,Mb:IT,Q:CT,zb:LT,Ab:PT,ua:zT,fa:NT,R:$T,Ea:RT,va:DT,Z:FT,xb:BT,Zb:UT,V:jT,Bb:GT,ub:qT,vb:VT,wb:HT,ga:XT,yb:KT,Nb:QT}}}async function rt(){function u(g,b){var M=br=g.exports;g={};for(let[I,N]of Object.entries(M))typeof N=="function"?(M=wS(N),g[I]=M):g[I]=N;return br=g,br=(function(){var I=br,N=Y=>Te=>Y(Te)>>>0,U=Y=>()=>Y()>>>0;return(I=Object.assign({},I)).$b=N(I.$b),I.Cc=U(I.Cc),I.Ec=N(I.Ec),I.rd=(Y=>(Te,$e)=>Y(Te,$e)>>>0)(I.rd),I.wd=N(I.wd),I.xd=U(I.xd),I.Bd=N(I.Bd),I})(),S1.push(br.id),kv=(g=br).$b,Ev=g.ac,e._OrtInit=g.bc,e._OrtGetLastError=g.cc,e._OrtCreateSessionOptions=g.dc,e._OrtAppendExecutionProvider=g.ec,e._OrtAddFreeDimensionOverride=g.fc,e._OrtAddSessionConfigEntry=g.gc,e._OrtReleaseSessionOptions=g.hc,e._OrtCreateSession=g.ic,e._OrtReleaseSession=g.jc,e._OrtGetInputOutputCount=g.kc,e._OrtGetInputOutputMetadata=g.lc,e._OrtFree=g.mc,e._OrtCreateTensor=g.nc,e._OrtGetTensorData=g.oc,e._OrtReleaseTensor=g.pc,e._OrtCreateRunOptions=g.qc,e._OrtAddRunConfigEntry=g.rc,e._OrtReleaseRunOptions=g.sc,e._OrtCreateBinding=g.tc,e._OrtBindInput=g.uc,e._OrtBindOutput=g.vc,e._OrtClearBoundOutputs=g.wc,e._OrtReleaseBinding=g.xc,e._OrtRunWithBinding=g.yc,e._OrtRun=g.zc,e._OrtEndProfiling=g.Ac,w0=e._OrtGetWebGpuDevice=g.Bc,Ou=g.Cc,Kt=e._free=g.Dc,On=e._malloc=g.Ec,Av=e._wgpuBufferRelease=g.Fc,Mv=e._wgpuCreateInstance=g.Gc,Sv=g.Hc,Tv=g.Ic,Ov=g.Jc,Iv=g.Kc,Cv=g.Lc,Lv=g.Pc,Pv=g.Zc,zv=g._c,Nv=g.$c,x0=g.bd,y0=g.cd,b0=g.dd,v0=g.ed,Zi=g.fd,k0=g.gd,$v=g.hd,E0=g.kd,Rv=g.ld,Dv=g.md,Fv=g.nd,A0=g.od,Bv=g.pd,Uv=g.qd,M0=g.rd,ge=g.sd,el=g.td,jv=g.ud,ce=g.vd,Iu=g.wd,ue=g.xd,Gv=g.yd,S0=g.zd,qv=g.Ad,Wv=g.Bd,Vv=g.Cd,T0=g.Dd,Hv=g.Ed,Xv=g.Fd,Kv=g.Gd,Qv=g.Hd,Yv=g.Id,Jv=g.Jd,Zv=g.Kd,ek=g.Ld,tk=g.Md,rk=g.Nd,sk=g.Od,nk=g.Pd,ok=g.Qd,ak=g.Rd,ik=g.Td,lk=g.Ud,ck=g.Vd,uk=g.Wd,pk=g.Yd,dk=g.Zd,fk=g._d,_k=g.$d,mk=g.ae,hk=g.be,gk=g.pe,wk=g.qe,xk=g.re,yk=g.se,bk=g.te,vk=g.ue,kk=g.ve,Ek=g.we,Ak=g.xe,Mk=g.ye,Sk=g.ze,Tk=g.Xe,Ok=g.Ye,Ik=g.Ze,Ck=g._e,_=b,br}var d,h=Je();return e.instantiateWasm?new Promise(g=>{e.instantiateWasm(h,(b,M)=>{g(u(b,M))})}):n?u(new WebAssembly.Instance(_,Je()),_):(R??=e.locateFile?e.locateFile?e.locateFile("ort-wasm-simd-threaded.asyncify.wasm",p):p+"ort-wasm-simd-threaded.asyncify.wasm":new URL("ort-wasm-simd-threaded.asyncify.wasm",tr.url).href,d=await(async function(g){var b=R;if(!f&&!O(b))try{var M=fetch(b,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(M,g)}catch(I){S(`wasm streaming compile failed: ${I}`),S("falling back to ArrayBuffer instantiation")}return(async function(I,N){try{var U=await(async function(Y){if(!f)try{var Te=await a(Y);return new Uint8Array(Te)}catch{}if(Y==R&&f)Y=new Uint8Array(f);else{if(!i)throw"both async and sync fetching of the wasm failed";Y=i(Y)}return Y})(I);return await WebAssembly.instantiate(U,N)}catch(Y){S(`failed to asynchronously prepare wasm: ${Y}`),Ue(Y)}})(b,g)})(h),u(d.instance,d.module))}class nt{name="ExitStatus";constructor(d){this.message=`Program terminated with exit(${d})`,this.status=d}}var at=u=>{u.terminate(),u.onmessage=()=>{}},Se=[],xe=0,He=null,Ot=u=>{ot.length==0&&(C1(),I1(ot[0]));var d=ot.pop();if(!d)return 6;Qi.push(d),Ms[u.Nc]=d,d.Nc=u.Nc;var h={Oc:"run",he:u.ge,Wc:u.Wc,Nc:u.Nc};return d.postMessage(h,u.Yc),0},ke=0,De=(u,d,...h)=>{var g,b=16*h.length,M=ue(),I=Iu(b),N=I>>>3;for(g of h)typeof g=="bigint"?((v(),L)[N++>>>0]=1n,(v(),L)[N++>>>0]=g):((v(),L)[N++>>>0]=0n,(v(),le)[N++>>>0]=g);return u=Dv(u,0,b,I,d),ce(M),u};function qr(u){if(n)return De(0,1,u);if(m=u,!(0<ke)){for(var d of Qi)at(d);for(d of ot)at(d);ot=[],Qi=[],Ms={},P=!0}l(0,new nt(u))}function As(u){if(n)return De(1,0,u);It(u)}var It=u=>{if(m=u,n)throw As(u),"unwind";qr(u)},ot=[],Qi=[],S1=[],Ms={},T1=u=>{var d=u.Nc;delete Ms[d],ot.push(u),Qi.splice(Qi.indexOf(u),1),u.Nc=0,Fv(d)};function O1(){S1.forEach(u=>u())}var I1=u=>new Promise(d=>{u.onmessage=b=>{var M=b.data;if(b=M.Oc,M.Vc&&M.Vc!=Ou()){var I=Ms[M.Vc];I?I.postMessage(M,M.Yc):S(`Internal error! Worker sent a message "${b}" to target pthread ${M.Vc}, but that thread no longer exists!`)}else b==="checkMailbox"?ku():b==="spawnThread"?Ot(M):b==="cleanupThread"?At(()=>{T1(Ms[M.ie])}):b==="loaded"?(u.loaded=!0,d(u)):M.target==="setimmediate"?u.postMessage(M):b==="uncaughtException"?u.onerror(M.error):b==="callHandler"?e[M.ce](...M.args):b&&S(`worker sent an unknown command ${b}`)},u.onerror=b=>{throw S(`worker sent an error! ${b.filename}:${b.lineno}: ${b.message}`),b};var h,g=[];for(h of[])e.propertyIsEnumerable(h)&&g.push(h);u.postMessage({Oc:"load",de:g,je:Wr,ke:_})});function C1(){var u=new Worker((()=>{let d=URL;return tr.url>"file:"&&tr.url<"file;"?new d("ort.webgpu.bundle.min.mjs",tr.url):new URL(tr.url)})(),{type:"module",workerData:"em-pthread",name:"em-pthread"});ot.push(u)}var Wr,$M=(u,d)=>{ke=0,u=T0(u,d),0<ke?m=u:A0(u)},bu=[],vu=0,Et=u=>-9007199254740992>u||9007199254740992<u?NaN:Number(u);function RM(u){var d=new s0(u>>>=0);return(v(),B)[d.Qc+12>>>0]==0&&(L1(d,!0),vu--),P1(d,!1),bu.push(d),Wv(u)}var An=0,DM=()=>{ge(0,0);var u=bu.pop();Gv(u.Xc),An=0};function L1(u,d){d=d?1:0,(v(),B)[u.Qc+12>>>0]=d}function P1(u,d){d=d?1:0,(v(),B)[u.Qc+13>>>0]=d}class s0{constructor(d){this.Xc=d,this.Qc=d-24}}var n0=u=>{var d=An;if(!d)return el(0),0;var h=new s0(d);(v(),C)[h.Qc+16>>>2>>>0]=d;var g=(v(),C)[h.Qc+4>>>2>>>0];if(!g)return el(0),d;for(var b of u){if(b===0||b===g)break;if(qv(b,g,h.Qc+16))return el(b),d}return el(g),d};function FM(){return n0([])}function BM(u){return n0([u>>>0])}function UM(u,d,h,g){return n0([u>>>0,d>>>0,h>>>0,g>>>0])}var jM=()=>{var u=bu.pop();u||Ue("no exception to throw");var d=u.Xc;throw(v(),B)[u.Qc+13>>>0]==0&&(bu.push(u),P1(u,!0),L1(u,!1),vu++),S0(d),An=d};function GM(u,d,h){var g=new s0(u>>>=0);throw d>>>=0,h>>>=0,(v(),C)[g.Qc+16>>>2>>>0]=0,(v(),C)[g.Qc+4>>>2>>>0]=d,(v(),C)[g.Qc+8>>>2>>>0]=h,S0(u),vu++,An=u}var qM=()=>vu;function z1(u,d,h,g){return n?De(2,1,u,d,h,g):N1(u,d,h,g)}function N1(u,d,h,g){if(u>>>=0,d>>>=0,h>>>=0,g>>>=0,!globalThis.SharedArrayBuffer)return 6;var b=[];return n&&b.length===0?z1(u,d,h,g):(u={ge:h,Nc:u,Wc:g,Yc:b},n?(u.Oc="spawnThread",postMessage(u,b),0):Ot(u))}function WM(u){throw An||=u>>>0,An}var $1=globalThis.TextDecoder&&new TextDecoder,R1=(u,d,h,g)=>{if(h=d+h,g)return h;for(;u[d]&&!(d>=h);)++d;return d},D1=(u,d=0,h,g)=>{if(16<(h=R1(u,d>>>=0,h,g))-d&&u.buffer&&$1)return $1.decode(u.buffer instanceof ArrayBuffer?u.subarray(d,h):u.slice(d,h));for(g="";d<h;){var b=u[d++];if(128&b){var M=63&u[d++];if((224&b)==192)g+=String.fromCharCode((31&b)<<6|M);else{var I=63&u[d++];65536>(b=(240&b)==224?(15&b)<<12|M<<6|I:(7&b)<<18|M<<12|I<<6|63&u[d++])?g+=String.fromCharCode(b):(b-=65536,g+=String.fromCharCode(55296|b>>10,56320|1023&b))}}else g+=String.fromCharCode(b)}return g},Mn=(u,d,h)=>(u>>>=0)?D1((v(),V),u,d,h):"";function F1(u,d,h){return n?De(3,1,u,d,h):0}function B1(u,d){if(n)return De(4,1,u,d)}function U1(u,d){if(n)return De(5,1,u,d)}function j1(u,d,h){if(n)return De(6,1,u,d,h)}function G1(u,d,h){return n?De(7,1,u,d,h):0}function q1(u,d){if(n)return De(8,1,u,d)}function W1(u,d,h){if(n)return De(9,1,u,d,h)}function V1(u,d,h,g){if(n)return De(10,1,u,d,h,g)}function H1(u,d,h,g){if(n)return De(11,1,u,d,h,g)}function X1(u,d,h,g){if(n)return De(12,1,u,d,h,g)}function K1(u){if(n)return De(13,1,u)}function Q1(u,d){if(n)return De(14,1,u,d)}function Y1(u,d,h){if(n)return De(15,1,u,d,h)}var VM=()=>Ue(""),ar=u=>{u>>>=0;for(var d="";;){var h=(v(),V)[u++>>>0];if(!h)return d;d+=String.fromCharCode(h)}},o0={},a0={},HM={},Sn=class extends Error{constructor(u){super(u),this.name="BindingError"}};function hr(u,d,h={}){return(function(g,b,M={}){var I=b.name;if(!g)throw new Sn(`type "${I}" must have a positive integer typeid pointer`);if(a0.hasOwnProperty(g)){if(M.ee)return;throw new Sn(`Cannot register type '${I}' twice`)}a0[g]=b,delete HM[g],o0.hasOwnProperty(g)&&(b=o0[g],delete o0[g],b.forEach(N=>N()))})(u,d,h)}var J1=(u,d,h)=>{switch(d){case 1:return h?g=>(v(),B)[g>>>0]:g=>(v(),V)[g>>>0];case 2:return h?g=>(v(),q)[g>>>1>>>0]:g=>(v(),Q)[g>>>1>>>0];case 4:return h?g=>(v(),F)[g>>>2>>>0]:g=>(v(),C)[g>>>2>>>0];case 8:return h?g=>(v(),L)[g>>>3>>>0]:g=>(v(),z)[g>>>3>>>0];default:throw new TypeError(`invalid integer width (${d}): ${u}`)}};function XM(u,d,h,g,b){u>>>=0,h>>>=0,d=ar(d>>>0);let M=I=>I;if(g=g===0n){let I=8*h;M=N=>BigInt.asUintN(I,N),b=M(b)}hr(u,{name:d,Mc:M,Sc:(I,N)=>(typeof N=="number"&&(N=BigInt(N)),N),Rc:J1(d,h,!g),Tc:null})}function KM(u,d,h,g){hr(u>>>=0,{name:d=ar(d>>>0),Mc:function(b){return!!b},Sc:function(b,M){return M?h:g},Rc:function(b){return this.Mc((v(),V)[b>>>0])},Tc:null})}var Z1=[],Ss=[0,1,,1,null,1,!0,1,!1,1];function i0(u){9<(u>>>=0)&&--Ss[u+1]==0&&(Ss[u]=void 0,Z1.push(u))}var Bt=u=>{if(!u)throw new Sn(`Cannot use deleted val. handle = ${u}`);return Ss[u]},Xt=u=>{switch(u){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:let d=Z1.pop()||Ss.length;return Ss[d]=u,Ss[d+1]=1,d}};function l0(u){return this.Mc((v(),C)[u>>>2>>>0])}var QM={name:"emscripten::val",Mc:u=>{var d=Bt(u);return i0(u),d},Sc:(u,d)=>Xt(d),Rc:l0,Tc:null};function YM(u){return hr(u>>>0,QM)}var JM=(u,d)=>{switch(d){case 4:return function(h){return this.Mc((v(),te)[h>>>2>>>0])};case 8:return function(h){return this.Mc((v(),le)[h>>>3>>>0])};default:throw new TypeError(`invalid float width (${d}): ${u}`)}};function ZM(u,d,h){h>>>=0,hr(u>>>=0,{name:d=ar(d>>>0),Mc:g=>g,Sc:(g,b)=>b,Rc:JM(d,h),Tc:null})}function eS(u,d,h,g,b){u>>>=0,h>>>=0,d=ar(d>>>0);let M=N=>N;if(g===0){var I=32-8*h;M=N=>N<<I>>>I,b=M(b)}hr(u,{name:d,Mc:M,Sc:(N,U)=>U,Rc:J1(d,h,g!==0),Tc:null})}function tS(u,d,h){function g(M){var I=(v(),C)[M>>>2>>>0];return M=(v(),C)[M+4>>>2>>>0],new b((v(),B).buffer,M,I)}var b=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array][d];hr(u>>>=0,{name:h=ar(h>>>0),Mc:g,Rc:g},{ee:!0})}var gr=(u,d,h)=>{var g=(v(),V);if(d>>>=0,0<h){var b=d;h=d+h-1;for(var M=0;M<u.length;++M){var I=u.codePointAt(M);if(127>=I){if(d>=h)break;g[d++>>>0]=I}else if(2047>=I){if(d+1>=h)break;g[d++>>>0]=192|I>>6,g[d++>>>0]=128|63&I}else if(65535>=I){if(d+2>=h)break;g[d++>>>0]=224|I>>12,g[d++>>>0]=128|I>>6&63,g[d++>>>0]=128|63&I}else{if(d+3>=h)break;g[d++>>>0]=240|I>>18,g[d++>>>0]=128|I>>12&63,g[d++>>>0]=128|I>>6&63,g[d++>>>0]=128|63&I,M++}}g[d>>>0]=0,u=d-b}else u=0;return u},wr=u=>{for(var d=0,h=0;h<u.length;++h){var g=u.charCodeAt(h);127>=g?d++:2047>=g?d+=2:55296<=g&&57343>=g?(d+=4,++h):d+=3}return d};function rS(u,d){hr(u>>>=0,{name:d=ar(d>>>0),Mc(h){var g=(v(),C)[h>>>2>>>0];return g=Mn(h+4,g,!0),Kt(h),g},Sc(h,g){g instanceof ArrayBuffer&&(g=new Uint8Array(g));var b=typeof g=="string";if(!(b||ArrayBuffer.isView(g)&&g.BYTES_PER_ELEMENT==1))throw new Sn("Cannot pass non-string to std::string");var M=b?wr(g):g.length,I=On(4+M+1),N=I+4;return(v(),C)[I>>>2>>>0]=M,b?gr(g,N,M+1):(v(),V).set(g,N>>>0),h!==null&&h.push(Kt,I),I},Rc:l0,Tc(h){Kt(h)}})}var ev=globalThis.TextDecoder?new TextDecoder("utf-16le"):void 0,sS=(u,d,h)=>{if(u>>>=1,16<(d=R1((v(),Q),u,d/2,h))-u&&ev)return ev.decode((v(),Q).slice(u,d));for(h="";u<d;++u){var g=(v(),Q)[u>>>0];h+=String.fromCharCode(g)}return h},nS=(u,d,h)=>{if(h??=2147483647,2>h)return 0;var g=d;h=(h-=2)<2*u.length?h/2:u.length;for(var b=0;b<h;++b){var M=u.charCodeAt(b);(v(),q)[d>>>1>>>0]=M,d+=2}return(v(),q)[d>>>1>>>0]=0,d-g},oS=u=>2*u.length,aS=(u,d,h)=>{var g="";u>>>=2;for(var b=0;!(b>=d/4);b++){var M=(v(),C)[u+b>>>0];if(!M&&!h)break;g+=String.fromCodePoint(M)}return g},iS=(u,d,h)=>{if(d>>>=0,h??=2147483647,4>h)return 0;var g=d;h=g+h-4;for(var b=0;b<u.length;++b){var M=u.codePointAt(b);if(65535<M&&b++,(v(),F)[d>>>2>>>0]=M,(d+=4)+4>h)break}return(v(),F)[d>>>2>>>0]=0,d-g},lS=u=>{for(var d=0,h=0;h<u.length;++h)65535<u.codePointAt(h)&&h++,d+=4;return d};function cS(u,d,h){if(u>>>=0,d>>>=0,h=ar(h>>>=0),d===2)var g=sS,b=nS,M=oS;else g=aS,b=iS,M=lS;hr(u,{name:h,Mc:I=>{var N=(v(),C)[I>>>2>>>0];return N=g(I+4,N*d,!0),Kt(I),N},Sc:(I,N)=>{if(typeof N!="string")throw new Sn(`Cannot pass non-string to C++ string type ${h}`);var U=M(N),Y=On(4+U+d);return(v(),C)[Y>>>2>>>0]=U/d,b(N,Y+4,U+d),I!==null&&I.push(Kt,Y),Y},Rc:l0,Tc(I){Kt(I)}})}function uS(u,d){hr(u>>>=0,{fe:!0,name:d=ar(d>>>0),Mc:()=>{},Sc:()=>{}})}function pS(u){E0(u>>>0,!s,1,!r,131072,!1),O1()}var At=u=>{if(!P)try{if(u(),!(0<ke))try{n?Ou()&&A0(m):It(m)}catch(d){d instanceof nt||d=="unwind"||l(0,d)}}catch(d){d instanceof nt||d=="unwind"||l(0,d)}},dS=!Atomics.waitAsync||globalThis.navigator?.userAgent&&91>Number((navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./)||[])[2]);function c0(u){u>>>=0,dS||(Atomics.waitAsync((v(),F),u>>>2,u).value.then(ku),u+=128,Atomics.store((v(),F),u>>>2,1))}var ku=()=>At(()=>{var u=Ou();u&&(c0(u),Uv())});function fS(u,d){(u>>>=0)==d>>>0?setTimeout(ku):n?postMessage({Vc:u,Oc:"checkMailbox"}):(u=Ms[u])&&u.postMessage({Oc:"checkMailbox"})}var u0=[];function _S(u,d,h,g,b){for(d>>>=0,b>>>=0,u0.length=0,h=b>>>3,g=b+g>>>3;h<g;){var M;M=(v(),L)[h++>>>0]?(v(),L)[h++>>>0]:(v(),le)[h++>>>0],u0.push(M)}return(d?O0[d]:YT[u])(...u0)}var mS=()=>{ke=0};function hS(u){u>>>=0,n?postMessage({Oc:"cleanupThread",ie:u}):T1(Ms[u])}function gS(u){}var Eu=u=>{try{u()}catch(d){Ue(d)}};function wS(u){var d=(...h)=>{Au.push(u);try{return u(...h)}finally{P||(Au.pop(),ir&&Vr===1&&Au.length===0&&(Vr=0,ke+=1,Eu(Ok),typeof Fibers<"u"&&Fibers.De()))}};return sv.set(u,d),d}var Vr=0,ir=null,tv=0,Au=[],p0=new Map,rv=new Map,sv=new Map,xS=0,d0=null,yS=[],nv=u=>(function(d){if(!P){if(Vr===0){var h=!1,g=!1;d((b=0)=>{if(!P&&(tv=b,h=!0,g)){Vr=2,Eu(()=>Ik(ir)),typeof MainLoop<"u"&&MainLoop.Xd&&MainLoop.resume(),b=!1;try{var M=(function(){var U=(v(),F)[ir+8>>>2>>>0];return U=rv.get(U),U=sv.get(U),--ke,U()})()}catch(U){M=U,b=!0}var I=!1;if(!ir){var N=d0;N&&(d0=null,(b?N.reject:N.resolve)(M),I=!0)}if(b&&!I)throw M}}),g=!0,h||(Vr=1,ir=(function(){var b=On(65548),M=b+12;if((v(),C)[b>>>2>>>0]=M,(v(),C)[b+4>>>2>>>0]=M+65536,M=Au[0],!p0.has(M)){var I=xS++;p0.set(M,I),rv.set(I,M)}return M=p0.get(M),(v(),F)[b+8>>>2>>>0]=M,b})(),typeof MainLoop<"u"&&MainLoop.Xd&&MainLoop.pause(),Eu(()=>Tk(ir)))}else Vr===2?(Vr=0,Eu(Ck),Kt(ir),ir=null,yS.forEach(At)):Ue(`invalid state: ${Vr}`);return tv}})(d=>{u().then(d)});function bS(u){return u>>>=0,nv(async()=>{var d=await Bt(u);return Xt(d)})}var f0=[],vS=u=>{var d=f0.length;return f0.push(u),d},kS=(u,d)=>{for(var h=Array(u),g=0;g<u;++g){var b=g,M=(v(),C)[d+4*g>>>2>>>0],I=a0[M];if(I===void 0)throw u=`parameter ${g}`,M=kv(M),d=ar(M),Kt(M),new Sn(`${u} has unknown type ${d}`);h[b]=I}return h},ES=(u,d,h)=>{var g=[];return u=u(g,h),g.length&&((v(),C)[d>>>2>>>0]=Xt(g)),u},AS={},Mu=u=>{var d=AS[u];return d===void 0?ar(u):d};function MS(u,d,h){var[g,...b]=kS(u,d>>>0);d=g.Sc.bind(g);var M=b.map(U=>U.Rc.bind(U));u--;var I={toValue:Bt};switch(u=M.map((U,Y)=>{var Te=`argFromPtr${Y}`;return I[Te]=U,`${Te}(args${Y?"+"+8*Y:""})`}),h){case 0:var N="toValue(handle)";break;case 2:N="new (toValue(handle))";break;case 3:N="";break;case 1:I.getStringOrSymbol=Mu,N="toValue(handle)[getStringOrSymbol(methodName)]"}return N+=`(${u})`,g.fe||(I.toReturnWire=d,I.emval_returnValue=ES,N=`return emval_returnValue(toReturnWire, destructorsRef, ${N})`),N=`return function (handle, methodName, destructorsRef, args) {
11
11
  ${N}
12
- }`,_=new Function(Object.keys(O),N)(...Object.values(O)),N=`methodCaller<(${b.map(B=>B.name)}) => ${g.name}>`,OM(Object.defineProperty(_,"name",{value:N}))}function LM(c,d){return d>>>=0,(c=Bt(c>>>0))==Bt(d)}function NM(c){return(c>>>=0)?(c=du(c),Xt(globalThis[c])):Xt(globalThis)}function $M(c){return c=du(c>>>0),Xt(e[c])}function RM(c,d){return d>>>=0,c=Bt(c>>>0),d=Bt(d),Xt(c[d])}function DM(c){9<(c>>>=0)&&(bs[c+1]+=1)}function w1(c,d,_,g,b){return zy[c>>>0](d>>>0,_>>>0,g>>>0,b>>>0)}function UM(c,d,_,g,b){return w1(c>>>0,d>>>0,_>>>0,g>>>0,b>>>0)}function BM(){return Xt([])}function FM(c){c=Bt(c>>>0);for(var d=Array(c.length),_=0;_<c.length;_++)d[_]=c[_];return Xt(d)}function jM(c){return Xt(du(c>>>0))}function GM(){return Xt({})}function qM(c){for(var d=Bt(c>>>=0);d.length;){var _=d.pop();d.pop()(_)}Ty(c)}function WM(c,d,_){d>>>=0,_>>>=0,c=Bt(c>>>0),d=Bt(d),_=Bt(_),c[d]=_}function VM(c,d){c=yt(c),d>>>=0,c=new Date(1e3*c),(v(),U)[d>>>2>>>0]=c.getUTCSeconds(),(v(),U)[d+4>>>2>>>0]=c.getUTCMinutes(),(v(),U)[d+8>>>2>>>0]=c.getUTCHours(),(v(),U)[d+12>>>2>>>0]=c.getUTCDate(),(v(),U)[d+16>>>2>>>0]=c.getUTCMonth(),(v(),U)[d+20>>>2>>>0]=c.getUTCFullYear()-1900,(v(),U)[d+24>>>2>>>0]=c.getUTCDay(),c=(c.getTime()-Date.UTC(c.getUTCFullYear(),0,1,0,0,0,0))/864e5|0,(v(),U)[d+28>>>2>>>0]=c}var x1=c=>c%4==0&&(c%100!=0||c%400==0),y1=[0,31,60,91,121,152,182,213,244,274,305,335],b1=[0,31,59,90,120,151,181,212,243,273,304,334];function HM(c,d){c=yt(c),d>>>=0,c=new Date(1e3*c),(v(),U)[d>>>2>>>0]=c.getSeconds(),(v(),U)[d+4>>>2>>>0]=c.getMinutes(),(v(),U)[d+8>>>2>>>0]=c.getHours(),(v(),U)[d+12>>>2>>>0]=c.getDate(),(v(),U)[d+16>>>2>>>0]=c.getMonth(),(v(),U)[d+20>>>2>>>0]=c.getFullYear()-1900,(v(),U)[d+24>>>2>>>0]=c.getDay();var _=(x1(c.getFullYear())?y1:b1)[c.getMonth()]+c.getDate()-1|0;(v(),U)[d+28>>>2>>>0]=_,(v(),U)[d+36>>>2>>>0]=-60*c.getTimezoneOffset(),_=new Date(c.getFullYear(),6,1).getTimezoneOffset();var g=new Date(c.getFullYear(),0,1).getTimezoneOffset();c=0|(_!=g&&c.getTimezoneOffset()==Math.min(g,_)),(v(),U)[d+32>>>2>>>0]=c}function XM(c){c>>>=0;var d=new Date((v(),U)[c+20>>>2>>>0]+1900,(v(),U)[c+16>>>2>>>0],(v(),U)[c+12>>>2>>>0],(v(),U)[c+8>>>2>>>0],(v(),U)[c+4>>>2>>>0],(v(),U)[c>>>2>>>0],0),_=(v(),U)[c+32>>>2>>>0],g=d.getTimezoneOffset(),b=new Date(d.getFullYear(),6,1).getTimezoneOffset(),M=new Date(d.getFullYear(),0,1).getTimezoneOffset(),O=Math.min(M,b);return 0>_?(v(),U)[c+32>>>2>>>0]=+(b!=M&&O==g):0<_!=(O==g)&&(b=Math.max(M,b),d.setTime(d.getTime()+6e4*((0<_?O:b)-g))),(v(),U)[c+24>>>2>>>0]=d.getDay(),_=(x1(d.getFullYear())?y1:b1)[d.getMonth()]+d.getDate()-1|0,(v(),U)[c+28>>>2>>>0]=_,(v(),U)[c>>>2>>>0]=d.getSeconds(),(v(),U)[c+4>>>2>>>0]=d.getMinutes(),(v(),U)[c+8>>>2>>>0]=d.getHours(),(v(),U)[c+12>>>2>>>0]=d.getDate(),(v(),U)[c+16>>>2>>>0]=d.getMonth(),(v(),U)[c+20>>>2>>>0]=d.getYear(),c=d.getTime(),BigInt(isNaN(c)?-1:c/1e3)}function v1(c,d,_,g,b,M,O){return n?De(16,1,c,d,_,g,b,M,O):-52}function k1(c,d,_,g,b,M){if(n)return De(17,1,c,d,_,g,b,M)}var zi={},KM=()=>performance.timeOrigin+performance.now();function E1(c,d){if(n)return De(18,1,c,d);if(zi[c]&&(clearTimeout(zi[c].id),delete zi[c]),!d)return 0;var _=setTimeout(()=>{delete zi[c],bt(()=>Z1(c,performance.timeOrigin+performance.now()))},d);return zi[c]={id:_,Ce:d},0}function YM(c,d,_,g){c>>>=0,d>>>=0,_>>>=0,g>>>=0;var b=new Date().getFullYear(),M=new Date(b,0,1).getTimezoneOffset();b=new Date(b,6,1).getTimezoneOffset();var O=Math.max(M,b);(v(),z)[c>>>2>>>0]=60*O,(v(),U)[d>>>2>>>0]=+(M!=b),c=(d=N=>{var B=Math.abs(N);return`UTC${0<=N?"-":"+"}${String(Math.floor(B/60)).padStart(2,"0")}${String(B%60).padStart(2,"0")}`})(M),d=d(b),b<M?(br(c,_,17),br(d,g,17)):(br(c,g,17),br(d,_,17))}var QM=()=>Date.now(),JM=1;function ZM(c,d,_){if(_>>>=0,!(0<=c&&3>=c))return 28;if(c===0)c=Date.now();else{if(!JM)return 52;c=performance.timeOrigin+performance.now()}return c=Math.round(1e6*c),(v(),I)[_>>>3>>>0]=BigInt(c),0}var Ly=[],A1=(c,d)=>{Ly.length=0;for(var _;_=(v(),J)[c++>>>0];){var g=_!=105;d+=(g&=_!=112)&&d%8?4:0,Ly.push(_==112?(v(),z)[d>>>2>>>0]:_==106?(v(),I)[d>>>3>>>0]:_==105?(v(),U)[d>>>2>>>0]:(v(),ae)[d>>>3>>>0]),d+=g?8:4}return Ly};function eT(c,d,_){return c>>>=0,d=A1(d>>>0,_>>>0),Ky[c](...d)}function tT(c,d,_){return c>>>=0,d=A1(d>>>0,_>>>0),Ky[c](...d)}var rT=()=>{};function sT(c,d){return T(gn(c>>>0,d>>>0))}var nT=()=>{throw be+=1,"unwind"};function oT(){return 4294901760}var aT=()=>1,iT=()=>navigator.hardwareConcurrency;function lT(c){c>>>=0;var d=(v(),J).length;if(c<=d||4294901760<c)return!1;for(var _=1;4>=_;_*=2){var g=d*(1+.2/_);g=Math.min(g,c+100663296);e:{g=(Math.min(4294901760,65536*Math.ceil(Math.max(c,g)/65536))-Vr.buffer.byteLength+65535)/65536|0;try{Vr.grow(g),pe();var b=1;break e}catch{}b=void 0}if(b)return!0}return!1}var lr=c=>{var d=vr(c)+1,_=_u(d);return br(c,_,d),_},Ny=(c,d)=>{(v(),z)[c>>>2>>>0]=d;var _=(v(),z)[c>>>2>>>0];(v(),z)[c+4>>>2>>>0]=(d-_)/4294967296},Li=c=>(v(),z)[c>>>2>>>0]+4294967296*(v(),U)[c+4>>>2>>>0],dt=[],cT=(c,d)=>{dt[c>>>0]=d},kr=[],fu=[],xn=(c,d)=>{fu[c]=new Promise(_=>d.finally(()=>_(c)))},re=c=>{if(c)return dt[c>>>0]},uT=(c,d)=>{for(c=(v(),z)[c>>>2>>>0];c;c=(v(),z)[c>>>2>>>0])d[(v(),U)[c+4>>>2>>>0]](c)},mu=(c,d,_)=>{(v(),z)[c>>>2>>>0]=d,(v(),z)[c+4>>>2>>>0]=_},M1=c=>{var d=(v(),z)[c>>>2>>>0];return c=(v(),z)[c+4>>>2>>>0],gn(d,c)},Er=c=>{var d=(v(),z)[c>>>2>>>0];return c=(v(),z)[c+4>>>2>>>0],d?gn(d,c):c===0?"":void 0},pT=c=>{var d=Er(c+4),_=(_=(v(),z)[c+12>>>2>>>0])?re(_):"auto";if(c+=16){var g=re((v(),z)[c+4>>>2>>>0]),b=(v(),z)[c+16>>>2>>>0],M=(v(),z)[c+20>>>2>>>0];if(b){for(var O={},N=0;N<b;++N){var B=M+24*N;O[M1(B+4)]=(v(),ae)[B+16>>>3>>>0]}b=O}else b=void 0;c={module:g,constants:b,entryPoint:Er(c+8)}}else c=void 0;return{label:d,layout:_,compute:c}},T1=(c,d)=>{function _(g,b){g=c[g],(v(),z)[d+b>>>2>>>0]=g}_("maxTextureDimension1D",4),_("maxTextureDimension2D",8),_("maxTextureDimension3D",12),_("maxTextureArrayLayers",16),_("maxBindGroups",20),_("maxBindGroupsPlusVertexBuffers",24),_("maxBindingsPerBindGroup",28),_("maxDynamicUniformBuffersPerPipelineLayout",32),_("maxDynamicStorageBuffersPerPipelineLayout",36),_("maxSampledTexturesPerShaderStage",40),_("maxSamplersPerShaderStage",44),_("maxStorageBuffersPerShaderStage",48),_("maxStorageTexturesPerShaderStage",52),_("maxUniformBuffersPerShaderStage",56),_("minUniformBufferOffsetAlignment",80),_("minStorageBufferOffsetAlignment",84),Ny(d+64,c.maxUniformBufferBindingSize),Ny(d+72,c.maxStorageBufferBindingSize),_("maxVertexBuffers",88),Ny(d+96,c.maxBufferSize),_("maxVertexAttributes",104),_("maxVertexBufferArrayStride",108),_("maxInterStageShaderVariables",112),_("maxColorAttachments",116),_("maxColorAttachmentBytesPerSample",120),_("maxComputeWorkgroupStorageSize",124),_("maxComputeInvocationsPerWorkgroup",128),_("maxComputeWorkgroupSizeX",132),_("maxComputeWorkgroupSizeY",136),_("maxComputeWorkgroupSizeZ",140),_("maxComputeWorkgroupsPerDimension",144),c.Ae!==void 0&&_("maxImmediateSize",148)},dT=[,"validation","out-of-memory","internal"],fT=[,"compatibility","core"],S1={1:"core-features-and-limits",2:"depth-clip-control",3:"depth32float-stencil8",4:"texture-compression-bc",5:"texture-compression-bc-sliced-3d",6:"texture-compression-etc2",7:"texture-compression-astc",8:"texture-compression-astc-sliced-3d",9:"timestamp-query",10:"indirect-first-instance",11:"shader-f16",12:"rg11b10ufloat-renderable",13:"bgra8unorm-storage",14:"float32-filterable",15:"float32-blendable",16:"clip-distances",17:"dual-source-blending",18:"subgroups",19:"texture-formats-tier1",20:"texture-formats-tier2",21:"primitive-index",22:"texture-component-swizzle",327692:"chromium-experimental-unorm16-texture-formats",327729:"chromium-experimental-multi-draw-indirect"},mT=[,"low-power","high-performance"],hT=[,"occlusion","timestamp"],_T={undefined:1,unknown:1,destroyed:2};function gT(c,d,_,g,b,M){d=yt(d),_=yt(_),g>>>=0,b>>>=0,M>>>=0;var O=re(c>>>0);if(c={},M){var N=(v(),z)[M+12>>>2>>>0];if(N){var B=(v(),z)[M+16>>>2>>>0];c.requiredFeatures=Array.from((v(),z).subarray(B>>>2>>>0,B+4*N>>>2>>>0),se=>S1[se])}var K=(v(),z)[M+20>>>2>>>0];if(K){let se=function(vt,ct,vs=!1){ct=K+ct,(ct=(v(),z)[ct>>>2>>>0])==4294967295||vs&&ct==0||(Be[vt]=ct)},lt=function(vt,ct){ct=K+ct;var vs=(v(),z)[ct>>>2>>>0],jS=(v(),z)[ct+4>>>2>>>0];vs==4294967295&&jS==4294967295||(Be[vt]=Li(ct))};var Te=se,Le=lt,Be={};se("maxTextureDimension1D",4),se("maxTextureDimension2D",8),se("maxTextureDimension3D",12),se("maxTextureArrayLayers",16),se("maxBindGroups",20),se("maxBindGroupsPlusVertexBuffers",24),se("maxDynamicUniformBuffersPerPipelineLayout",32),se("maxDynamicStorageBuffersPerPipelineLayout",36),se("maxSampledTexturesPerShaderStage",40),se("maxSamplersPerShaderStage",44),se("maxStorageBuffersPerShaderStage",48),se("maxStorageTexturesPerShaderStage",52),se("maxUniformBuffersPerShaderStage",56),se("minUniformBufferOffsetAlignment",80),se("minStorageBufferOffsetAlignment",84),lt("maxUniformBufferBindingSize",64),lt("maxStorageBufferBindingSize",72),se("maxVertexBuffers",88),lt("maxBufferSize",96),se("maxVertexAttributes",104),se("maxVertexBufferArrayStride",108),se("maxInterStageShaderVariables",112),se("maxColorAttachments",116),se("maxColorAttachmentBytesPerSample",120),se("maxComputeWorkgroupStorageSize",124),se("maxComputeInvocationsPerWorkgroup",128),se("maxComputeWorkgroupSizeX",132),se("maxComputeWorkgroupSizeY",136),se("maxComputeWorkgroupSizeZ",140),se("maxComputeWorkgroupsPerDimension",144),se("maxImmediateSize",148,!0),c.requiredLimits=Be}(N=(v(),z)[M+24>>>2>>>0])&&(N={label:Er(N+4)},c.defaultQueue=N),c.label=Er(M+4)}be+=1,xn(d,O.requestDevice(c).then(se=>{--be,bt(()=>{dt[b>>>0]=se.queue,dt[g>>>0]=se,xn(_,se.lost.then(lt=>{bt(()=>{se.onuncapturederror=()=>{};var vt=le(),ct=lr(lt.message);By(_,_T[lt.reason],ct),ie(vt)})})),se.onuncapturederror=lt=>{var vt=5;lt.error instanceof GPUValidationError?vt=2:lt.error instanceof GPUOutOfMemoryError?vt=3:lt.error instanceof GPUInternalError&&(vt=4);var ct=le();lt=lr(lt.error.message),K1(g,vt,lt),ie(ct)},"adapterInfo"in se||(se.adapterInfo=O.info),Gy(d,1,g,0)})},se=>{--be,bt(()=>{var lt=le(),vt=lr(se.message);Gy(d,3,g,vt),_&&By(_,4,vt),ie(lt)})}))}function wT(c){var d=re(c>>>=0),_=kr[c];if(_){for(var g=0;g<_.length;++g)_[g]();delete kr[c]}d.destroy()}function xT(c,d,_){_>>>=0;var g=re(c>>>=0);_==4294967295&&(_=void 0);try{var b=g.getMappedRange(d>>>0,_)}catch{return 0}var M=Vy(16,b.byteLength);return(v(),J).set(new Uint8Array(b),M>>>0),kr[c].push(()=>Kt(M)),M}function yT(c,d,_){_>>>=0;var g=re(c>>>=0);_==4294967295&&(_=void 0);try{var b=g.getMappedRange(d>>>0,_)}catch{return 0}var M=Vy(16,b.byteLength);return(v(),J).fill(0,M,b.byteLength),kr[c].push(()=>{new Uint8Array(b).set((v(),J).subarray(M>>>0,M+b.byteLength>>>0)),Kt(M)}),M}function bT(c,d,_,g,b){c>>>=0,d=yt(d),_=yt(_),b>>>=0;var M=re(c);kr[c]=[],b==4294967295&&(b=void 0),be+=1,xn(d,M.mapAsync(_,g>>>0,b).then(()=>{--be,bt(()=>{Fy(d,1,0)})},O=>{--be,bt(()=>{le();var N=lr(O.message);Fy(d,O.name==="AbortError"?4:O.name==="OperationError"?3:0,N),delete kr[c]})}))}function vT(c){var d=re(c>>>=0),_=kr[c];if(_){for(var g=0;g<_.length;++g)_[g]();delete kr[c],d.unmap()}}function kT(c){delete dt[c>>>0]}function ET(c,d,_){c>>>=0,d>>>=0,_>>>=0;var g=!!(v(),z)[d+32>>>2>>>0];d={label:Er(d+4),usage:(v(),z)[d+16>>>2>>>0],size:Li(d+24),mappedAtCreation:g},c=re(c);try{var b=c.createBuffer(d)}catch{return!1}return dt[_>>>0]=b,g&&(kr[_]=[]),!0}function AT(c,d,_,g){c>>>=0,d=yt(d),g>>>=0,_=pT(_>>>0),c=re(c),be+=1,xn(d,c.createComputePipelineAsync(_).then(b=>{--be,bt(()=>{dt[g>>>0]=b,Uy(d,1,g,0)})},b=>{--be,bt(()=>{var M=le(),O=lr(b.message);Uy(d,b.reason==="validation"?3:b.reason==="internal"?4:0,g,O),ie(M)})}))}function MT(c,d,_){c>>>=0,d>>>=0,_>>>=0;var g=(v(),z)[d>>>2>>>0],b=(v(),U)[g+4>>>2>>>0];d={label:Er(d+4),code:""},b===2&&(d.code=M1(g+8)),c=re(c).createShaderModule(d),dt[_>>>0]=c}var TT=c=>{(c=re(c)).onuncapturederror=null,c.destroy()};function ST(c,d){d=yt(d),c=re(c>>>0),be+=1,xn(d,c.popErrorScope().then(_=>{--be,bt(()=>{var g=5;_?_ instanceof GPUValidationError?g=2:_ instanceof GPUOutOfMemoryError?g=3:_ instanceof GPUInternalError&&(g=4):g=1;var b=le(),M=_?lr(_.message):0;jy(d,1,g,M),ie(b)})},_=>{--be,bt(()=>{var g=le(),b=lr(_.message);jy(d,1,5,b),ie(g)})}))}function OT(c,d,_,g){if(d=yt(d),g>>>=0,_>>>=0){var b={featureLevel:fT[(v(),U)[_+4>>>2>>>0]],powerPreference:mT[(v(),U)[_+8>>>2>>>0]],forceFallbackAdapter:!!(v(),z)[_+12>>>2>>>0]};(c=(v(),z)[_>>>2>>>0])!==0&&(v(),b.Fe=!!(v(),z)[c+8>>>2>>>0])}"gpu"in navigator?(be+=1,xn(d,navigator.gpu.requestAdapter(b).then(M=>{--be,bt(()=>{if(M)dt[g>>>0]=M,Ni(d,1,g,0);else{var O=le(),N=lr("WebGPU not available on this browser (requestAdapter returned null)");Ni(d,3,g,N),ie(O)}})},M=>{--be,bt(()=>{var O=le(),N=lr(M.message);Ni(d,4,g,N),ie(O)})}))):(b=le(),c=lr("WebGPU not available on this browser (navigator.gpu is not available)"),Ni(d,3,g,c),ie(b))}function IT(c,d,_){return c>>>=0,d>>>=0,_>>>=0,g1(async()=>{var g=[];if(_){var b=(v(),U)[_>>>2>>>0];g.length=d+1,g[d]=new Promise(N=>setTimeout(N,b,0))}else g.length=d;for(var M=0;M<d;++M){var O=Li(c+8*M);if(!(O in fu))return O;g[M]=fu[O]}return g=await Promise.race(g),delete fu[g],g})}var $y,Ry={},O1=()=>{if(!$y){var c,d={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(globalThis.navigator?.language??"C").replace("-","_")+".UTF-8",_:"./this.program"};for(c in Ry)Ry[c]===void 0?delete d[c]:d[c]=Ry[c];var _=[];for(c in d)_.push(`${c}=${d[c]}`);$y=_}return $y};function I1(c,d){if(n)return De(19,1,c,d);c>>>=0,d>>>=0;var _,g=0,b=0;for(_ of O1()){var M=d+g;(v(),z)[c+b>>>2>>>0]=M,g+=br(_,M,1/0)+1,b+=4}return 0}function C1(c,d){if(n)return De(20,1,c,d);c>>>=0,d>>>=0;var _=O1();for(var g of((v(),z)[c>>>2>>>0]=_.length,c=0,_))c+=vr(g)+1;return(v(),z)[d>>>2>>>0]=c,0}function P1(c){return n?De(21,1,c):52}function z1(c,d,_,g){return n?De(22,1,c,d,_,g):52}function L1(c,d,_,g){return n?De(23,1,c,d,_,g):70}var CT=[null,[],[]];function N1(c,d,_,g){if(n)return De(24,1,c,d,_,g);d>>>=0,_>>>=0,g>>>=0;for(var b=0,M=0;M<_;M++){var O=(v(),z)[d>>>2>>>0],N=(v(),z)[d+4>>>2>>>0];d+=8;for(var B=0;B<N;B++){var K=c,Te=(v(),J)[O+B>>>0],Le=CT[K];Te===0||Te===10?((K===1?S:T)(Qb(Le)),Le.length=0):Le.push(Te)}b+=N}return(v(),z)[g>>>2>>>0]=b,0}function PT(c){return c>>>0}function zT(c,d){return T1(re(c>>>0).limits,d>>>0),1}function LT(c,d){return re(c>>>0).features.has(S1[d])}function NT(c){return BigInt(re(c>>>0).size)}function $T(c){return BigInt(re(c>>>0).usage)}function RT(c,d){if(c>>>=0,d>>>=0){var _=Er(d+4);_={label:_,timestampWrites:d=(d=(v(),z)[d+12>>>2>>>0])!==0?{querySet:re((v(),z)[d+4>>>2>>>0]),beginningOfPassWriteIndex:(v(),z)[d+8>>>2>>>0],endOfPassWriteIndex:(v(),z)[d+12>>>2>>>0]}:void 0}}return d=re(c),c=q1(0),_=d.beginComputePass(_),dt[c>>>0]=_,c}function DT(c,d,_,g,b,M){_=yt(_),b=yt(b),M=yt(M),re(c>>>0).copyBufferToBuffer(re(d>>>0),_,re(g>>>0),b,M)}function UT(c){var d=re(c>>>0);return c=j1(0),d=d.finish(),dt[c>>>0]=d,c}function BT(c,d,_,g,b,M){M=yt(M),re(c>>>0).resolveQuerySet(re(d>>>0),_,g,re(b>>>0),M)}function FT(c,d,_,g){re(c>>>0).dispatchWorkgroups(d,_,g)}function jT(c,d,_){_=yt(_),re(c>>>0).dispatchWorkgroupsIndirect(re(d>>>0),_)}function GT(c){re(c>>>0).end()}function qT(c,d,_,g,b){g>>>=0,b>>>=0,c=re(c>>>0),_=re(_>>>0),g==0?c.setBindGroup(d,_):c.setBindGroup(d,_,(v(),z),b>>>2,g)}function WT(c,d){re(c>>>0).setPipeline(re(d>>>0))}function VT(c,d,_){re(c>>>0).Ee(re(d>>>0),_)}function HT(c,d){var _=re(c>>>0);return c=F1(0),d=_.getBindGroupLayout(d),dt[c>>>0]=d,c}function XT(c,d){function _(b){var M=(v(),z)[b+8>>>2>>>0],O=(v(),z)[b+32>>>2>>>0],N=(v(),z)[b+36>>>2>>>0],B=0;return uT(b,{327681:K=>{B=(v(),z)[K+8>>>2>>>0]}}),M?((O=Li(b+24))==-1&&(O=void 0),M={buffer:re(M),offset:Li(b+16),size:O}):M=re(O||N||B),{binding:(v(),z)[b+4>>>2>>>0],resource:M}}c>>>=0,d={label:Er(4+(d>>>=0)),layout:re((v(),z)[d+12>>>2>>>0]),entries:(function(b,M){for(var O=[],N=0;N<b;++N)O.push(_(M+40*N));return O})((v(),z)[d+16>>>2>>>0],(v(),z)[d+20>>>2>>>0])},c=re(c);var g=B1(0);return cT(g,c.createBindGroup(d)),g}function KT(c,d){var _;return c>>>=0,(d>>>=0)&&(_={label:Er(d+4)}),d=re(c),c=G1(0),_=d.createCommandEncoder(_),dt[c>>>0]=_,c}function YT(c,d){c>>>=0,d>>>=0,d={type:hT[(v(),U)[d+12>>>2>>>0]],count:(v(),z)[d+16>>>2>>>0]};var _=re(c);return c=W1(0),d=_.createQuerySet(d),dt[c>>>0]=d,c}function QT(c,d){c=re(c>>>0).adapterInfo,d>>>=0,(v(),z)[d+52>>>2>>>0]=c.subgroupMinSize,(v(),z)[d+56>>>2>>>0]=c.subgroupMaxSize;var _=c.vendor+c.architecture+c.device+c.description,g=vr(_)+1,b=yn(g);return b&&br(_,b,g),_=b,g=vr(c.vendor),mu(d+4,_,g),_+=g,g=vr(c.architecture),mu(d+12,_,g),_+=g,g=vr(c.device),mu(d+20,_,g),mu(d+28,_+g,vr(c.description)),(v(),U)[d+36>>>2>>>0]=2,c=c.isFallbackAdapter?3:4,(v(),U)[d+40>>>2>>>0]=c,(v(),z)[d+44>>>2>>>0]=0,(v(),z)[d+48>>>2>>>0]=0,1}var JT={"core-features-and-limits":1,"depth-clip-control":2,"depth32float-stencil8":3,"texture-compression-bc":4,"texture-compression-bc-sliced-3d":5,"texture-compression-etc2":6,"texture-compression-astc":7,"texture-compression-astc-sliced-3d":8,"timestamp-query":9,"indirect-first-instance":10,"shader-f16":11,"rg11b10ufloat-renderable":12,"bgra8unorm-storage":13,"float32-filterable":14,"float32-blendable":15,"clip-distances":16,"dual-source-blending":17,subgroups:18,"texture-formats-tier1":19,"texture-formats-tier2":20,"primitive-index":21,"texture-component-swizzle":22,"chromium-experimental-unorm16-texture-formats":327692,"chromium-experimental-multi-draw-indirect":327729};function ZT(c,d){d>>>=0;var _=re(c>>>0);c=yn(4*_.features.size);var g=0,b=0;for(let M of _.features)0<=(_=JT[M])&&((v(),U)[c+g>>>2>>>0]=_,g+=4,b++);(v(),z)[d+4>>>2>>>0]=c,(v(),z)[d>>>2>>>0]=b}function eS(c,d){return T1(re(c>>>0).limits,d>>>0),1}function tS(c,d){re(c>>>0).pushErrorScope(dT[d])}function rS(c,d,_){d>>>=0,_>>>=0,c=re(c>>>0),d=Array.from((v(),U).subarray(_>>>2>>>0,_+4*d>>>2>>>0),g=>re(g)),c.submit(d)}function sS(c,d,_,g,b){_=yt(_),g>>>=0,b>>>=0,c=re(c>>>0),d=re(d>>>0),g=(v(),J).subarray(g>>>0,g+b>>>0),c.writeBuffer(d,_,g,0,b)}n||(function(){for(var c=e.numThreads-1;c--;)qb();Me.push(async()=>{var d=(async function(){if(!n)return Promise.all(rt.map(Gb))})();xe++,await d,--xe==0&&We&&(d=We,We=null,d())})})(),n||(Vr=new WebAssembly.Memory({initial:256,maximum:65536,shared:!0}),pe()),e.wasmBinary&&(f=e.wasmBinary),e.stackSave=()=>le(),e.stackRestore=c=>ie(c),e.stackAlloc=c=>_u(c),e.setValue=function(c,d,_="i8"){switch(_.endsWith("*")&&(_="*"),_){case"i1":case"i8":(v(),V)[c>>>0]=d;break;case"i16":(v(),X)[c>>>1>>>0]=d;break;case"i32":(v(),U)[c>>>2>>>0]=d;break;case"i64":(v(),I)[c>>>3>>>0]=BigInt(d);break;case"float":(v(),ne)[c>>>2>>>0]=d;break;case"double":(v(),ae)[c>>>3>>>0]=d;break;case"*":(v(),z)[c>>>2>>>0]=d;break;default:ze(`invalid type for setValue: ${_}`)}},e.getValue=function(c,d="i8"){switch(d.endsWith("*")&&(d="*"),d){case"i1":case"i8":return(v(),V)[c>>>0];case"i16":return(v(),X)[c>>>1>>>0];case"i32":return(v(),U)[c>>>2>>>0];case"i64":return(v(),I)[c>>>3>>>0];case"float":return(v(),ne)[c>>>2>>>0];case"double":return(v(),ae)[c>>>3>>>0];case"*":return(v(),z)[c>>>2>>>0];default:ze(`invalid type for getValue: ${d}`)}},e.UTF8ToString=gn,e.stringToUTF8=br,e.lengthBytesUTF8=vr;var $1,R1,Dy,hu,Kt,yn,D1,U1,B1,F1,j1,G1,q1,W1,V1,H1,X1,Uy,By,Fy,jy,Ni,Gy,K1,qy,Y1,Q1,J1,Wy,Z1,ev,Vy,_e,$i,tv,ie,_u,le,rv,Hy,sv,nv,ov,Xy,av,iv,lv,cv,uv,pv,dv,fv,mv,hv,_v,gv,wv,xv,yv,bv,vv,kv,Ev,Av,Mv,Tv,Sv,Ov,Iv,Cv,Pv,zv,Lv,Nv,$v,Rv,Dv,Uv,Bv,Fv,jv,Gv,qv,Ar,nS=[Wr,xs,Hb,Jb,Zb,e1,t1,r1,s1,n1,o1,a1,i1,l1,c1,u1,v1,k1,E1,I1,C1,P1,z1,L1,N1],Ky={922732:(c,d,_,g,b)=>{if(e===void 0||!e.Uc)return 1;if((c=gn(Number(c>>>0))).startsWith("./")&&(c=c.substring(2)),!(c=e.Uc.get(c)))return 2;if(d=Number(d>>>0),_=Number(_>>>0),g=Number(g>>>0),d+_>c.byteLength)return 3;try{let M=c.subarray(d,d+_);switch(b){case 0:(v(),J).set(M,g>>>0);break;case 1:e.ad?e.ad(g,M):e.oe(g,M);break;default:return 4}return 0}catch{return 4}},923556:(c,d,_)=>{e.Sd(c,(v(),J).subarray(d>>>0,d+_>>>0))},923620:()=>e.me(),923662:c=>{e.jd(c)},923699:()=>typeof wasmOffsetConverter<"u"};function oS(c,d,_,g){var b=le();try{return fv(c,d,_,g)}catch(M){if(ie(b),M!==M+0)throw M;_e(1,0)}}function aS(c,d,_){var g=le();try{return uv(c,d,_)}catch(b){if(ie(g),b!==b+0)throw b;_e(1,0)}}function iS(c,d,_){var g=le();try{ov(c,d,_)}catch(b){if(ie(g),b!==b+0)throw b;_e(1,0)}}function lS(c,d){var _=le();try{return Xy(c,d)}catch(g){if(ie(_),g!==g+0)throw g;_e(1,0)}}function cS(c){var d=le();try{av(c)}catch(_){if(ie(d),_!==_+0)throw _;_e(1,0)}}function uS(c,d,_,g,b,M,O){var N=le();try{return cv(c,d,_,g,b,M,O)}catch(B){if(ie(N),B!==B+0)throw B;_e(1,0)}}function pS(c,d){var _=le();try{mv(c,d)}catch(g){if(ie(_),g!==g+0)throw g;_e(1,0)}}function dS(c,d,_,g,b,M){var O=le();try{iv(c,d,_,g,b,M)}catch(N){if(ie(O),N!==N+0)throw N;_e(1,0)}}function fS(c,d,_,g){var b=le();try{dv(c,d,_,g)}catch(M){if(ie(b),M!==M+0)throw M;_e(1,0)}}function mS(c,d,_,g,b,M,O){var N=le();try{_v(c,d,_,g,b,M,O)}catch(B){if(ie(N),B!==B+0)throw B;_e(1,0)}}function hS(c,d,_,g,b,M,O){var N=le();try{gv(c,d,_,g,b,M,O)}catch(B){if(ie(N),B!==B+0)throw B;_e(1,0)}}function _S(c,d,_,g,b,M,O,N){var B=le();try{Mv(c,d,_,g,b,M,O,N)}catch(K){if(ie(B),K!==K+0)throw K;_e(1,0)}}function gS(c,d,_,g,b,M,O,N,B,K,Te,Le){var Be=le();try{wv(c,d,_,g,b,M,O,N,B,K,Te,Le)}catch(se){if(ie(Be),se!==se+0)throw se;_e(1,0)}}function wS(c,d,_,g,b){var M=le();try{return hv(c,d,_,g,b)}catch(O){if(ie(M),O!==O+0)throw O;_e(1,0)}}function xS(c,d,_,g,b){var M=le();try{lv(c,d,_,g,b)}catch(O){if(ie(M),O!==O+0)throw O;_e(1,0)}}function yS(c,d,_,g,b,M,O,N){var B=le();try{pv(c,d,_,g,b,M,O,N)}catch(K){if(ie(B),K!==K+0)throw K;_e(1,0)}}function bS(c){var d=le();try{return Tv(c)}catch(_){if(ie(d),_!==_+0)throw _;_e(1,0)}}function vS(c,d,_){var g=le();try{return Sv(c,d,_)}catch(b){if(ie(g),b!==b+0)throw b;_e(1,0)}}function kS(c,d){var _=le();try{return Bv(c,d)}catch(g){if(ie(_),g!==g+0)throw g;return _e(1,0),0n}}function ES(c,d,_,g,b){var M=le();try{Ov(c,d,_,g,b)}catch(O){if(ie(M),O!==O+0)throw O;_e(1,0)}}function AS(c){var d=le();try{return xv(c)}catch(_){if(ie(d),_!==_+0)throw _;return _e(1,0),0n}}function MS(c,d,_,g,b,M){var O=le();try{return Ev(c,d,_,g,b,M)}catch(N){if(ie(O),N!==N+0)throw N;_e(1,0)}}function TS(c,d,_,g,b,M){var O=le();try{return Iv(c,d,_,g,b,M)}catch(N){if(ie(O),N!==N+0)throw N;_e(1,0)}}function SS(c,d,_,g,b,M){var O=le();try{return Cv(c,d,_,g,b,M)}catch(N){if(ie(O),N!==N+0)throw N;_e(1,0)}}function OS(c,d,_,g,b,M,O,N){var B=le();try{return Av(c,d,_,g,b,M,O,N)}catch(K){if(ie(B),K!==K+0)throw K;_e(1,0)}}function IS(c,d,_,g,b){var M=le();try{return Pv(c,d,_,g,b)}catch(O){if(ie(M),O!==O+0)throw O;return _e(1,0),0n}}function CS(c,d,_,g){var b=le();try{return zv(c,d,_,g)}catch(M){if(ie(b),M!==M+0)throw M;_e(1,0)}}function PS(c,d,_,g){var b=le();try{return Lv(c,d,_,g)}catch(M){if(ie(b),M!==M+0)throw M;_e(1,0)}}function zS(c,d,_,g,b,M,O,N,B,K,Te,Le){var Be=le();try{return Nv(c,d,_,g,b,M,O,N,B,K,Te,Le)}catch(se){if(ie(Be),se!==se+0)throw se;_e(1,0)}}function LS(c,d,_,g,b,M,O,N,B,K,Te){var Le=le();try{$v(c,d,_,g,b,M,O,N,B,K,Te)}catch(Be){if(ie(Le),Be!==Be+0)throw Be;_e(1,0)}}function NS(c,d,_,g,b,M,O,N,B,K,Te,Le,Be,se,lt,vt){var ct=le();try{Rv(c,d,_,g,b,M,O,N,B,K,Te,Le,Be,se,lt,vt)}catch(vs){if(ie(ct),vs!==vs+0)throw vs;_e(1,0)}}function $S(c,d,_,g){var b=le();try{return Dv(c,d,_,g)}catch(M){if(ie(b),M!==M+0)throw M;_e(1,0)}}function RS(c,d,_,g,b){var M=le();try{return Uv(c,d,_,g,b)}catch(O){if(ie(M),O!==O+0)throw O;_e(1,0)}}function DS(c,d,_){var g=le();try{return bv(c,d,_)}catch(b){if(ie(g),b!==b+0)throw b;return _e(1,0),0n}}function US(c,d,_){var g=le();try{return yv(c,d,_)}catch(b){if(ie(g),b!==b+0)throw b;_e(1,0)}}function BS(c,d,_){var g=le();try{return vv(c,d,_)}catch(b){if(ie(g),b!==b+0)throw b;_e(1,0)}}function FS(c,d,_,g){var b=le();try{kv(c,d,_,g)}catch(M){if(ie(b),M!==M+0)throw M;_e(1,0)}}function gu(){if(0<xe)We=gu;else if(n)w?.(e),Fe();else{for(var c=Me;0<c.length;)c.shift()(e);0<xe?We=gu:(e.calledRun=!0,P||(Fe(),w?.(e)))}}return n||(Ar=await Je(),gu()),e.PTR_SIZE=4,e.webgpuInit=c=>{let d=new WeakMap,_,g,b=1;e.webgpuRegisterDevice=N=>{if(g!==void 0)throw Error("another WebGPU EP inference session is being created.");if(N){var B=d.get(N);if(!B){let K=((Te,Le=0)=>{var Be=X1(Le);return Le=H1(Le,Be),dt[Be>>>0]=Te.queue,dt[Le>>>0]=Te,Le})(N,B=U1(0));B=[b++,B,K],d.set(N,B)}return _=N,g=B[0],B}_=void 0,g=0};let M=new Map;e.webgpuOnCreateSession=N=>{if(g!==void 0){var B=g;if(g=void 0,N){let K=Dy(B);M.set(N,K),B===0&&c(_??re(K))}_=void 0}},e.webgpuOnReleaseSession=N=>{M.delete(N)};let O=Symbol("gpuBufferMetadata");e.webgpuRegisterBuffer=(N,B,K)=>{if(K)return N[O]=[K,NaN],K;if(K=N[O])return K[1]++,K[0];if((B=M.get(B))===void 0)throw Error("Invalid session handle passed to webgpuRegisterBuffer");return B=((Te,Le=0)=>(Te.mapState==="unmapped"||ze(),Le=V1(Le),dt[Le>>>0]=Te,Le))(N,B),N[O]=[B,1],B},e.webgpuUnregisterBuffer=N=>{let B=N[O];if(!B)throw Error("Buffer is not registered");B[1]--,B[1]===0&&(D1(B[0]),delete N[O])},e.webgpuGetBuffer=N=>re(N),e.webgpuCreateDownloader=(N,B,K)=>{if((K=M.get(K))===void 0)throw Error("Invalid session handle passed to webgpuRegisterBuffer");let Te=re(K),Le=16*Math.ceil(Number(B)/16);return async()=>{let Be=Te.createBuffer({size:Le,usage:9});try{let se=Te.createCommandEncoder();return se.copyBufferToBuffer(N,0,Be,0,Le),Te.queue.submit([se.finish()]),await Be.mapAsync(GPUMapMode.READ),Be.getMappedRange().slice(0,B)}finally{Be.destroy()}}},e.ad=(N,B)=>{var K=B.buffer;let Te=B.byteOffset,Le=B.byteLength;if(B=16*Math.ceil(Number(Le)/16),N=re(N),!_){var Be=Dy(g);_=re(Be)}let se=(Be=_.createBuffer({mappedAtCreation:!0,size:B,usage:6})).getMappedRange();new Uint8Array(se).set(new Uint8Array(K,Te,Le)),Be.unmap(),(K=_.createCommandEncoder()).copyBufferToBuffer(Be,0,N,0,B),_.queue.submit([K.finish()]),Be.destroy()}},e.webnnInit=c=>{let d=c[0];[e.me,e.jd,e.webnnEnsureTensor,e.Sd,e.webnnDownloadTensor,e.le,e.webnnEnableTraceEvent]=c.slice(1),e.webnnReleaseTensorId=e.jd,e.webnnUploadTensor=e.Sd,e.webnnRegisterMLContext=e.le,e.webnnOnRunStart=_=>d.onRunStart(_),e.webnnOnRunEnd=d.onRunEnd.bind(d),e.webnnOnReleaseSession=_=>{d.onReleaseSession(_)},e.webnnCreateMLTensorDownloader=(_,g)=>d.createMLTensorDownloader(_,g),e.webnnRegisterMLTensor=(_,g,b,M)=>d.registerMLTensor(_,g,b,M),e.webnnCreateMLContext=_=>d.createMLContext(_),e.webnnRegisterMLConstant=(_,g,b,M,O,N)=>d.registerMLConstant(_,g,b,M,O,e.Uc,N),e.webnnRegisterGraphInput=d.registerGraphInput.bind(d),e.webnnIsGraphInput=d.isGraphInput.bind(d),e.webnnRegisterGraphOutput=d.registerGraphOutput.bind(d),e.webnnIsGraphOutput=d.isGraphOutput.bind(d),e.webnnCreateTemporaryTensor=d.createTemporaryTensor.bind(d),e.webnnIsGraphInputOutputTypeSupported=d.isGraphInputOutputTypeSupported.bind(d)},te?e:new Promise((c,d)=>{w=c,x=d})}var qE,Qk,zP=ye(()=>{"use strict";qE=Yk,Qk=globalThis.self?.name?.startsWith("em-pthread"),Qk&&Yk()}),d0,S0,Jk,zt,WE,Cu,Zk,eE,f0,tE,m0,VE,h0,HE,R0=ye(()=>{"use strict";$0(),d0=typeof location>"u"?void 0:location.origin,S0=tr.url>"file:"&&tr.url<"file;",Jk=()=>{if(S0){let t=URL;return new URL(new t("ort.webgpu.bundle.min.mjs",tr.url).href,d0).href}return tr.url},zt=Jk(),WE=()=>{if(zt&&!zt.startsWith("blob:"))return zt.substring(0,zt.lastIndexOf("/")+1)},Cu=(t,e)=>{try{let r=e??zt;return(r?new URL(t,r):new URL(t)).origin===d0}catch{return!1}},Zk=(t,e)=>{let r=e??zt;try{return(r?new URL(t,r):new URL(t)).href}catch{return}},eE=(t,e)=>`${e??"./"}${t}`,f0=async t=>{let e=await(await fetch(t,{credentials:"same-origin"})).blob();return URL.createObjectURL(e)},tE=async t=>(await import(t)).default,m0=(PP(),Ru(FE)).default,VE=async()=>{if(!zt)throw new Error("Failed to load proxy worker: cannot determine the script source URL.");if(Cu(zt))return[void 0,m0()];let t=await f0(zt);return[t,m0(t)]},h0=(zP(),Ru(GE)).default,HE=async(t,e,r,s)=>{let n=h0&&!(t||e);if(n)if(zt)n=Cu(zt)||s&&!r;else if(s&&!r)n=!0;else throw new Error("cannot determine the script source URL.");if(n)return[void 0,h0];{let o="ort-wasm-simd-threaded.asyncify.mjs",a=t??Zk(o,e),i=r&&a&&!Cu(a,e),l=i?await f0(a):a??eE(o,e);return[i?l:void 0,await tE(l)]}}}),_0,Pu,Hi,g0,rE,sE,nE,D0,Ue,Us=ye(()=>{"use strict";R0(),Pu=!1,Hi=!1,g0=!1,rE=()=>{if(typeof SharedArrayBuffer>"u")return!1;try{return typeof MessageChannel<"u"&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))}catch{return!1}},sE=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,30,1,28,0,65,0,253,15,253,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,186,1,26,11]))}catch{return!1}},nE=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,19,1,17,0,65,1,253,15,65,2,253,15,65,3,253,15,253,147,2,11]))}catch{return!1}},D0=async t=>{if(Pu)return Promise.resolve();if(Hi)throw new Error("multiple calls to 'initializeWebAssembly()' detected.");if(g0)throw new Error("previous call to 'initializeWebAssembly()' failed.");Hi=!0;let e=t.initTimeout,r=t.numThreads;if(t.simd!==!1){if(t.simd==="relaxed"){if(!nE())throw new Error("Relaxed WebAssembly SIMD is not supported in the current environment.")}else if(!sE())throw new Error("WebAssembly SIMD is not supported in the current environment.")}let s=rE();r>1&&!s&&(typeof self<"u"&&!self.crossOriginIsolated&&console.warn("env.wasm.numThreads is set to "+r+", but this will not work unless you enable crossOriginIsolated mode. See https://web.dev/cross-origin-isolation-guide/ for more info."),console.warn("WebAssembly multi-threading is not supported in the current environment. Falling back to single-threading."),t.numThreads=r=1);let n=t.wasmPaths,o=typeof n=="string"?n:void 0,a=n?.mjs,i=a?.href??a,l=n?.wasm,u=l?.href??l,p=t.wasmBinary,[f,m]=await HE(i,o,r>1,!!p||!!u),h=!1,w=[];if(e>0&&w.push(new Promise(x=>{setTimeout(()=>{h=!0,x()},e)})),w.push(new Promise((x,k)=>{let E={numThreads:r};if(p)E.wasmBinary=p,E.locateFile=A=>A;else if(u||o)E.locateFile=A=>u??o+A;else if(i&&i.indexOf("blob:")!==0)E.locateFile=A=>new URL(A,i).href;else if(f){let A=WE();A&&(E.locateFile=S=>A+S)}m(E).then(A=>{Hi=!1,Pu=!0,_0=A,x(),f&&URL.revokeObjectURL(f)},A=>{Hi=!1,g0=!0,k(A)})})),await Promise.race(w),h)throw new Error(`WebAssembly backend initializing failed due to timeout: ${e}ms`)},Ue=()=>{if(Pu&&_0)return _0;throw new Error("WebAssembly is not initialized yet.")}}),Lt,Uu,Ce,U0=ye(()=>{"use strict";Us(),Lt=(t,e)=>{let r=Ue(),s=r.lengthBytesUTF8(t)+1,n=r._malloc(s);return r.stringToUTF8(t,n,s),e.push(n),n},Uu=(t,e,r,s)=>{if(typeof t=="object"&&t!==null){if(r.has(t))throw new Error("Circular reference in options");r.add(t)}Object.entries(t).forEach(([n,o])=>{let a=e?e+n:n;if(typeof o=="object")Uu(o,a+".",r,s);else if(typeof o=="string"||typeof o=="number")s(a,o.toString());else if(typeof o=="boolean")s(a,o?"1":"0");else throw new Error(`Can't handle extra config type: ${typeof o}`)})},Ce=t=>{let e=Ue(),r=e.stackSave();try{let s=e.PTR_SIZE,n=e.stackAlloc(2*s);e._OrtGetLastError(n,n+s);let o=Number(e.getValue(n,s===4?"i32":"i64")),a=e.getValue(n+s,"*"),i=a?e.UTF8ToString(a):"";throw new Error(`${t} ERROR_CODE: ${o}, ERROR_MESSAGE: ${i}`)}finally{e.stackRestore(r)}}}),XE,LP=ye(()=>{"use strict";Us(),U0(),XE=t=>{let e=Ue(),r=0,s=[],n=t||{};try{if(t?.logSeverityLevel===void 0)n.logSeverityLevel=2;else if(typeof t.logSeverityLevel!="number"||!Number.isInteger(t.logSeverityLevel)||t.logSeverityLevel<0||t.logSeverityLevel>4)throw new Error(`log severity level is not valid: ${t.logSeverityLevel}`);if(t?.logVerbosityLevel===void 0)n.logVerbosityLevel=0;else if(typeof t.logVerbosityLevel!="number"||!Number.isInteger(t.logVerbosityLevel))throw new Error(`log verbosity level is not valid: ${t.logVerbosityLevel}`);t?.terminate===void 0&&(n.terminate=!1);let o=0;return t?.tag!==void 0&&(o=Lt(t.tag,s)),r=e._OrtCreateRunOptions(n.logSeverityLevel,n.logVerbosityLevel,!!n.terminate,o),r===0&&Ce("Can't create run options."),t?.extra!==void 0&&Uu(t.extra,"",new WeakSet,(a,i)=>{let l=Lt(a,s),u=Lt(i,s);e._OrtAddRunConfigEntry(r,l,u)!==0&&Ce(`Can't set a run config entry: ${a} - ${i}.`)}),[r,s]}catch(o){throw r!==0&&e._OrtReleaseRunOptions(r),s.forEach(a=>e._free(a)),o}}}),oE,aE,iE,zu,Qr,lE,KE,NP=ye(()=>{"use strict";Us(),U0(),oE=t=>{switch(t){case"disabled":return 0;case"basic":return 1;case"extended":return 2;case"layout":return 3;case"all":return 99;default:throw new Error(`unsupported graph optimization level: ${t}`)}},aE=t=>{switch(t){case"sequential":return 0;case"parallel":return 1;default:throw new Error(`unsupported execution mode: ${t}`)}},iE=t=>{t.extra||(t.extra={}),t.extra.session||(t.extra.session={});let e=t.extra.session;e.use_ort_model_bytes_directly||(e.use_ort_model_bytes_directly="1"),t.executionProviders&&t.executionProviders.some(r=>(typeof r=="string"?r:r.name)==="webgpu")&&(t.enableMemPattern=!1)},zu=(t,e,r,s)=>{let n=Lt(e,s),o=Lt(r,s);Ue()._OrtAddSessionConfigEntry(t,n,o)!==0&&Ce(`Can't set a session config entry: ${e} - ${r}.`)},Qr=(t,e,r,s)=>{let n=Lt(e,s),o=Lt(r,s);t.push([n,o])},lE=async(t,e,r)=>{let s=e.executionProviders;for(let n of s){let o=typeof n=="string"?n:n.name,a=[];switch(o){case"webnn":if(o="WEBNN",typeof n!="string"){let f=n?.deviceType;f&&zu(t,"deviceType",f,r)}break;case"webgpu":{o="WebGPU";let f;if(typeof n!="string"){let h=n;if(h.device)if(typeof GPUDevice<"u"&&h.device instanceof GPUDevice)f=h.device;else throw new Error("Invalid GPU device set in WebGPU EP options.");let{enableGraphCapture:w}=e;if(typeof w=="boolean"&&w&&Qr(a,"enableGraphCapture","1",r),typeof h.preferredLayout=="string"&&Qr(a,"preferredLayout",h.preferredLayout,r),h.forceCpuNodeNames){let x=Array.isArray(h.forceCpuNodeNames)?h.forceCpuNodeNames:[h.forceCpuNodeNames];Qr(a,"forceCpuNodeNames",x.join(`
13
- `),r)}h.validationMode&&Qr(a,"validationMode",h.validationMode,r)}let m=Ue().webgpuRegisterDevice(f);if(m){let[h,w,x]=m;Qr(a,"deviceId",h.toString(),r),Qr(a,"webgpuInstance",w.toString(),r),Qr(a,"webgpuDevice",x.toString(),r)}}break;case"wasm":case"cpu":continue;default:throw new Error(`not supported execution provider: ${o}`)}let i=Lt(o,r),l=a.length,u=0,p=0;if(l>0){u=Ue()._malloc(l*Ue().PTR_SIZE),r.push(u),p=Ue()._malloc(l*Ue().PTR_SIZE),r.push(p);for(let f=0;f<l;f++)Ue().setValue(u+f*Ue().PTR_SIZE,a[f][0],"*"),Ue().setValue(p+f*Ue().PTR_SIZE,a[f][1],"*")}await Ue()._OrtAppendExecutionProvider(t,i,u,p,l)!==0&&Ce(`Can't append execution provider: ${o}.`)}},KE=async t=>{let e=Ue(),r=0,s=[],n=t||{};iE(n);try{let o=oE(n.graphOptimizationLevel??"all"),a=aE(n.executionMode??"sequential"),i=typeof n.logId=="string"?Lt(n.logId,s):0,l=n.logSeverityLevel??2;if(!Number.isInteger(l)||l<0||l>4)throw new Error(`log severity level is not valid: ${l}`);let u=n.logVerbosityLevel??0;if(!Number.isInteger(u)||u<0||u>4)throw new Error(`log verbosity level is not valid: ${u}`);let p=typeof n.optimizedModelFilePath=="string"?Lt(n.optimizedModelFilePath,s):0;if(r=e._OrtCreateSessionOptions(o,!!n.enableCpuMemArena,!!n.enableMemPattern,a,!!n.enableProfiling,0,i,l,u,p),r===0&&Ce("Can't create session options."),n.executionProviders&&await lE(r,n,s),n.enableGraphCapture!==void 0){if(typeof n.enableGraphCapture!="boolean")throw new Error(`enableGraphCapture must be a boolean value: ${n.enableGraphCapture}`);zu(r,"enableGraphCapture",n.enableGraphCapture.toString(),s)}if(n.freeDimensionOverrides)for(let[f,m]of Object.entries(n.freeDimensionOverrides)){if(typeof f!="string")throw new Error(`free dimension override name must be a string: ${f}`);if(typeof m!="number"||!Number.isInteger(m)||m<0)throw new Error(`free dimension override value must be a non-negative integer: ${m}`);let h=Lt(f,s);e._OrtAddFreeDimensionOverride(r,h,m)!==0&&Ce(`Can't set a free dimension override: ${f} - ${m}.`)}return n.extra!==void 0&&Uu(n.extra,"",new WeakSet,(f,m)=>{zu(r,f,m,s)}),[r,s]}catch(o){throw r!==0&&e._OrtReleaseSessionOptions(r)!==0&&Ce("Can't release session options."),s.forEach(a=>e._free(a)),o}}}),Ls,$u,Tn,Ji,Bu,B0,F0,O0,Sn=ye(()=>{"use strict";Ls=t=>{switch(t){case"int8":return 3;case"uint8":return 2;case"bool":return 9;case"int16":return 5;case"uint16":return 4;case"int32":return 6;case"uint32":return 12;case"float16":return 10;case"float32":return 1;case"float64":return 11;case"string":return 8;case"int64":return 7;case"uint64":return 13;case"int4":return 22;case"uint4":return 21;default:throw new Error(`unsupported data type: ${t}`)}},$u=t=>{switch(t){case 3:return"int8";case 2:return"uint8";case 9:return"bool";case 5:return"int16";case 4:return"uint16";case 6:return"int32";case 12:return"uint32";case 10:return"float16";case 1:return"float32";case 11:return"float64";case 8:return"string";case 7:return"int64";case 13:return"uint64";case 22:return"int4";case 21:return"uint4";default:throw new Error(`unsupported data type: ${t}`)}},Tn=(t,e)=>{let r=[-1,4,1,1,2,2,4,8,-1,1,2,8,4,8,-1,-1,-1,-1,-1,-1,-1,.5,.5][t],s=typeof e=="number"?e:e.reduce((n,o)=>n*o,1);return r>0?Math.ceil(s*r):void 0},Ji=t=>{switch(t){case"float16":return typeof Float16Array<"u"&&Float16Array.from?Float16Array:Uint16Array;case"float32":return Float32Array;case"uint8":return Uint8Array;case"int8":return Int8Array;case"uint16":return Uint16Array;case"int16":return Int16Array;case"int32":return Int32Array;case"bool":return Uint8Array;case"float64":return Float64Array;case"uint32":return Uint32Array;case"int64":return BigInt64Array;case"uint64":return BigUint64Array;default:throw new Error(`unsupported type: ${t}`)}},Bu=t=>{switch(t){case"verbose":return 0;case"info":return 1;case"warning":return 2;case"error":return 3;case"fatal":return 4;default:throw new Error(`unsupported logging level: ${t}`)}},B0=t=>t==="float32"||t==="float16"||t==="int32"||t==="int64"||t==="uint32"||t==="uint8"||t==="bool"||t==="uint4"||t==="int4",F0=t=>t==="float32"||t==="float16"||t==="int32"||t==="int64"||t==="uint32"||t==="uint64"||t==="int8"||t==="uint8"||t==="bool"||t==="uint4"||t==="int4",O0=t=>{switch(t){case"none":return 0;case"cpu":return 1;case"cpu-pinned":return 2;case"texture":return 3;case"gpu-buffer":return 4;case"ml-tensor":return 5;default:throw new Error(`unsupported data location: ${t}`)}}}),j0,YE=ye(()=>{"use strict";$0(),j0=async t=>{if(typeof t=="string"){let e=await fetch(t);if(!e.ok)throw new Error(`failed to load external data file: ${t}`);let r=e.headers.get("Content-Length"),s=r?parseInt(r,10):0;if(s<1073741824)return new Uint8Array(await e.arrayBuffer());{if(!e.body)throw new Error(`failed to load external data file: ${t}, no response body.`);let n=e.body.getReader(),o;try{o=new ArrayBuffer(s)}catch(i){if(i instanceof RangeError){let l=Math.ceil(s/65536);o=new WebAssembly.Memory({initial:l,maximum:l}).buffer}else throw i}let a=0;for(;;){let{done:i,value:l}=await n.read();if(i)break;let u=l.byteLength;new Uint8Array(o,a,u).set(l),a+=u}return new Uint8Array(o,0,s)}}else return t instanceof Blob?new Uint8Array(await t.arrayBuffer()):t instanceof Uint8Array?t:new Uint8Array(t)}}),QE,$P=ye(()=>{"use strict";Sn(),QE=(t,e)=>new(Ji(e))(t)}),cE,uE,pE,dE,JE,fE,wt,ZE=ye(()=>{"use strict";Sn(),cE=["V","I","W","E","F"],uE=(t,e)=>{console.log(`[${cE[t]},${new Date().toISOString()}]${e}`)},JE=(t,e)=>{pE=t,dE=e},fE=(t,e)=>{let r=Bu(t),s=Bu(pE);r>=s&&uE(r,typeof e=="function"?e():e)},wt=(...t)=>{dE&&fE(...t)}}),w0,I0,x0,mE,y0,hE,b0,v0,k0,_E,eA,RP=ye(()=>{"use strict";Sn(),ZE(),w0=new Map([["float32",32],["float16",16],["int32",32],["uint32",32],["int64",64],["uint64",64],["int8",8],["uint8",8],["int4",4],["uint4",4]]),I0=(t,e)=>{if(e==="int32")return t;let r=w0.get(e);if(!r)throw new Error(`WebNN backend does not support data type: ${e}`);let s=r/8;if(t.byteLength%s!==0)throw new Error(`Invalid Uint8Array length - must be a multiple of ${s}.`);let n=t.byteLength/s,o=new(Ji(e))(t.buffer,t.byteOffset,n);switch(e){case"int64":case"uint64":{let a=new Int32Array(n);for(let i=0;i<n;i++){let l=o[i];if(l>2147483647n||l<-2147483648n)throw new Error("Can not convert int64 data to int32 - value out of range.");a[i]=Number(l)}return new Uint8Array(a.buffer)}case"int8":case"uint8":case"uint32":{if(e==="uint32"&&o.some(i=>i>2147483647))throw new Error("Can not convert uint32 data to int32 - value out of range.");let a=Int32Array.from(o,Number);return new Uint8Array(a.buffer)}default:throw new Error(`Unsupported data conversion from ${e} to 'int32'`)}},x0=(t,e)=>{if(e==="int32")return t;if(t.byteLength%4!==0)throw new Error("Invalid Uint8Array length - must be a multiple of 4 (int32).");let r=t.byteLength/4,s=new Int32Array(t.buffer,t.byteOffset,r);switch(e){case"int64":{let n=BigInt64Array.from(s,BigInt);return new Uint8Array(n.buffer)}case"uint64":{if(s.some(o=>o<0))throw new Error("Can not convert int32 data to uin64 - negative value found.");let n=BigUint64Array.from(s,BigInt);return new Uint8Array(n.buffer)}case"int8":{if(s.some(o=>o<-128||o>127))throw new Error("Can not convert int32 data to int8 - value out of range.");let n=Int8Array.from(s,Number);return new Uint8Array(n.buffer)}case"uint8":{if(s.some(n=>n<0||n>255))throw new Error("Can not convert int32 data to uint8 - value out of range.");return Uint8Array.from(s,Number)}case"uint32":{if(s.some(o=>o<0))throw new Error("Can not convert int32 data to uint32 - negative value found.");let n=Uint32Array.from(s,Number);return new Uint8Array(n.buffer)}default:throw new Error(`Unsupported data conversion from 'int32' to ${e}`)}},mE=1,y0=()=>mE++,hE=new Map([["int8","int32"],["uint8","int32"],["uint32","int32"],["int64","int32"]]),b0=(t,e)=>{let r=w0.get(t);if(!r)throw new Error(`WebNN backend does not support data type: ${t}`);return e.length>0?Math.ceil(e.reduce((s,n)=>s*n)*r/8):0},v0=class{constructor(t){this.isDataConverted=!1;let{sessionId:e,context:r,tensor:s,dataType:n,shape:o,fallbackDataType:a}=t;this.sessionId=e,this.mlContext=r,this.mlTensor=s,this.dataType=n,this.tensorShape=o,this.fallbackDataType=a}get tensor(){return this.mlTensor}get type(){return this.dataType}get fallbackType(){return this.fallbackDataType}get shape(){return this.tensorShape}get byteLength(){return b0(this.dataType,this.tensorShape)}destroy(){wt("verbose",()=>"[WebNN] TensorWrapper.destroy"),this.mlTensor.destroy()}write(t){this.mlContext.writeTensor(this.mlTensor,t)}async read(t){if(this.fallbackDataType){let e=await this.mlContext.readTensor(this.mlTensor),r=x0(new Uint8Array(e),this.dataType);if(t){(t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)).set(r);return}else return r.buffer}else return t?this.mlContext.readTensor(this.mlTensor,t):this.mlContext.readTensor(this.mlTensor)}canReuseTensor(t,e,r){return this.mlContext===t&&this.dataType===e&&this.tensorShape.length===r.length&&this.tensorShape.every((s,n)=>s===r[n])}setIsDataConverted(t){this.isDataConverted=t}},k0=class{constructor(t,e){this.tensorManager=t,this.wrapper=e}get tensorWrapper(){return this.wrapper}releaseTensor(){this.tensorWrapper&&(this.tensorManager.releaseTensor(this.tensorWrapper),this.wrapper=void 0)}async ensureTensor(t,e,r,s){let n=this.tensorManager.getMLContext(t),o=this.tensorManager.getMLOpSupportLimits(t),a;if(!o?.input.dataTypes.includes(e)){if(a=hE.get(e),!a||o?.input.dataTypes.includes(a))throw new Error(`WebNN backend does not support data type: ${e}`);wt("verbose",()=>`[WebNN] TensorIdTracker.ensureTensor: fallback dataType from ${e} to ${a}`)}if(this.wrapper){if(this.wrapper.canReuseTensor(n,e,r))return this.wrapper.tensor;if(s){if(this.wrapper.byteLength!==b0(e,r))throw new Error("Unable to copy data to tensor with different size.");this.activeUpload=new Uint8Array(await this.wrapper.read())}this.tensorManager.releaseTensor(this.wrapper)}let i=typeof MLTensorUsage>"u"?void 0:MLTensorUsage.READ|MLTensorUsage.WRITE;return this.wrapper=await this.tensorManager.getCachedTensor(t,e,r,i,!0,!0,a),s&&this.activeUpload&&(this.wrapper.write(this.activeUpload),this.activeUpload=void 0),this.wrapper.tensor}upload(t){let e=t;if(this.wrapper){if(this.wrapper.fallbackType)if(this.wrapper.fallbackType==="int32")e=I0(t,this.wrapper.type),this.wrapper.setIsDataConverted(!0);else throw new Error(`Unsupported fallback data type: ${this.wrapper.fallbackType}`);if(t.byteLength===this.wrapper.byteLength){this.wrapper.write(e);return}else wt("verbose",()=>"Data size does not match tensor size. Releasing tensor."),this.releaseTensor()}this.activeUpload?this.activeUpload.set(e):this.activeUpload=new Uint8Array(e)}async download(t){if(this.activeUpload){let e=this.wrapper?.isDataConverted?x0(this.activeUpload,this.wrapper?.type):this.activeUpload;if(t){t instanceof ArrayBuffer?new Uint8Array(t).set(e):new Uint8Array(t.buffer,t.byteOffset,t.byteLength).set(e);return}else return e.buffer}if(!this.wrapper)throw new Error("Tensor has not been created.");return t?this.wrapper.read(t):this.wrapper.read()}},_E=class{constructor(t){this.backend=t,this.tensorTrackersById=new Map,this.freeTensors=[],this.externalTensors=new Set}getMLContext(t){let e=this.backend.getMLContext(t);if(!e)throw new Error("MLContext not found for session.");return e}getMLOpSupportLimits(t){return this.backend.getMLOpSupportLimits(t)}reserveTensorId(){let t=y0();return this.tensorTrackersById.set(t,new k0(this)),t}releaseTensorId(t){let e=this.tensorTrackersById.get(t);e&&(this.tensorTrackersById.delete(t),e.tensorWrapper&&this.releaseTensor(e.tensorWrapper))}async ensureTensor(t,e,r,s,n){wt("verbose",()=>`[WebNN] TensorManager.ensureTensor {tensorId: ${e}, dataType: ${r}, shape: ${s}, copyOld: ${n}}`);let o=this.tensorTrackersById.get(e);if(!o)throw new Error("Tensor not found.");return o.ensureTensor(t,r,s,n)}upload(t,e){let r=this.tensorTrackersById.get(t);if(!r)throw new Error("Tensor not found.");r.upload(e)}async download(t,e){wt("verbose",()=>`[WebNN] TensorManager.download {tensorId: ${t}, dstBuffer: ${e?.byteLength}}`);let r=this.tensorTrackersById.get(t);if(!r)throw new Error("Tensor not found.");return r.download(e)}releaseTensorsForSession(t){for(let e of this.freeTensors)e.sessionId===t&&e.destroy();this.freeTensors=this.freeTensors.filter(e=>e.sessionId!==t)}registerTensor(t,e,r,s){let n=this.getMLContext(t),o=y0(),a=new v0({sessionId:t,context:n,tensor:e,dataType:r,shape:s});return this.tensorTrackersById.set(o,new k0(this,a)),this.externalTensors.add(a),o}async getCachedTensor(t,e,r,s,n,o,a){let i=this.getMLContext(t);for(let[u,p]of this.freeTensors.entries())if(p.canReuseTensor(i,e,r)){wt("verbose",()=>`[WebNN] Reusing tensor {dataType: ${e}, ${a?`fallbackDataType: ${a},`:""} shape: ${r}`);let f=this.freeTensors.splice(u,1)[0];return f.sessionId=t,f}wt("verbose",()=>`[WebNN] MLContext.createTensor {dataType: ${e}, ${a?`fallbackDataType: ${a},`:""} shape: ${r}}`);let l=await i.createTensor({dataType:a??e,shape:r,dimensions:r,usage:s,writable:n,readable:o});return new v0({sessionId:t,context:i,tensor:l,dataType:e,shape:r,fallbackDataType:a})}releaseTensor(t){this.externalTensors.has(t)&&this.externalTensors.delete(t),this.freeTensors.push(t)}},eA=(...t)=>new _E(...t)}),tA={};Zi(tA,{WebNNBackend:()=>rA});var Xi,gE,rA,DP=ye(()=>{"use strict";Sn(),Us(),$P(),RP(),ZE(),Xi=new Map([[1,"float32"],[10,"float16"],[6,"int32"],[12,"uint32"],[7,"int64"],[13,"uint64"],[22,"int4"],[21,"uint4"],[3,"int8"],[2,"uint8"],[9,"uint8"]]),gE=(t,e)=>{if(t===e)return!0;if(t===void 0||e===void 0)return!1;let r=Object.keys(t).sort(),s=Object.keys(e).sort();return r.length===s.length&&r.every((n,o)=>n===s[o]&&t[n]===e[n])},rA=class{constructor(t){this.tensorManager=eA(this),this.mlContextBySessionId=new Map,this.sessionIdsByMLContext=new Map,this.mlContextCache=[],this.sessionGraphInputs=new Map,this.sessionGraphOutputs=new Map,this.temporaryGraphInputs=[],this.temporaryGraphOutputs=[],this.temporarySessionTensorIds=new Map,this.mlOpSupportLimitsBySessionId=new Map,JE(t.logLevel,!!t.debug)}get currentSessionId(){if(this.activeSessionId===void 0)throw new Error("No active session");return this.activeSessionId}onRunStart(t){wt("verbose",()=>`[WebNN] onRunStart {sessionId: ${t}}`),this.activeSessionId=t}onRunEnd(t){wt("verbose",()=>`[WebNN] onRunEnd {sessionId: ${t}}`);let e=this.temporarySessionTensorIds.get(t);if(e){for(let r of e)wt("verbose",()=>`[WebNN] releasing temporary tensor {tensorId: ${r}}`),this.tensorManager.releaseTensorId(r);this.temporarySessionTensorIds.delete(t),this.activeSessionId=void 0}}async createMLContext(t){if(t instanceof GPUDevice){let r=this.mlContextCache.findIndex(s=>s.gpuDevice===t);if(r!==-1)return this.mlContextCache[r].mlContext;{let s=await navigator.ml.createContext(t);return this.mlContextCache.push({gpuDevice:t,mlContext:s}),s}}else if(t===void 0){let r=this.mlContextCache.findIndex(s=>s.options===void 0&&s.gpuDevice===void 0);if(r!==-1)return this.mlContextCache[r].mlContext;{let s=await navigator.ml.createContext();return this.mlContextCache.push({mlContext:s}),s}}let e=this.mlContextCache.findIndex(r=>gE(r.options,t));if(e!==-1)return this.mlContextCache[e].mlContext;{let r=await navigator.ml.createContext(t);return this.mlContextCache.push({options:t,mlContext:r}),r}}registerMLContext(t,e){this.mlContextBySessionId.set(t,e);let r=this.sessionIdsByMLContext.get(e);r||(r=new Set,this.sessionIdsByMLContext.set(e,r)),r.add(t),this.mlOpSupportLimitsBySessionId.has(t)||this.mlOpSupportLimitsBySessionId.set(t,e.opSupportLimits()),this.temporaryGraphInputs.length>0&&(this.sessionGraphInputs.set(t,this.temporaryGraphInputs),this.temporaryGraphInputs=[]),this.temporaryGraphOutputs.length>0&&(this.sessionGraphOutputs.set(t,this.temporaryGraphOutputs),this.temporaryGraphOutputs=[])}onReleaseSession(t){this.sessionGraphInputs.delete(t),this.sessionGraphOutputs.delete(t);let e=this.mlContextBySessionId.get(t);if(!e)return;this.tensorManager.releaseTensorsForSession(t),this.mlContextBySessionId.delete(t),this.mlOpSupportLimitsBySessionId.delete(t);let r=this.sessionIdsByMLContext.get(e);if(r.delete(t),r.size===0){this.sessionIdsByMLContext.delete(e);let s=this.mlContextCache.findIndex(n=>n.mlContext===e);s!==-1&&this.mlContextCache.splice(s,1)}}getMLContext(t){return this.mlContextBySessionId.get(t)}getMLOpSupportLimits(t){return this.mlOpSupportLimitsBySessionId.get(t)}reserveTensorId(){return this.tensorManager.reserveTensorId()}releaseTensorId(t){wt("verbose",()=>`[WebNN] releaseTensorId {tensorId: ${t}}`),this.tensorManager.releaseTensorId(t)}async ensureTensor(t,e,r,s,n){let o=Xi.get(r);if(!o)throw new Error(`Unsupported ONNX data type: ${r}`);return this.tensorManager.ensureTensor(t??this.currentSessionId,e,o,s,n)}async createTemporaryTensor(t,e,r){wt("verbose",()=>`[WebNN] createTemporaryTensor {onnxDataType: ${e}, shape: ${r}}`);let s=Xi.get(e);if(!s)throw new Error(`Unsupported ONNX data type: ${e}`);let n=this.tensorManager.reserveTensorId();await this.tensorManager.ensureTensor(t,n,s,r,!1);let o=this.temporarySessionTensorIds.get(t);return o?o.push(n):this.temporarySessionTensorIds.set(t,[n]),n}uploadTensor(t,e){if(!Ue().shouldTransferToMLTensor)throw new Error("Trying to upload to a MLTensor while shouldTransferToMLTensor is false");wt("verbose",()=>`[WebNN] uploadTensor {tensorId: ${t}, data: ${e.byteLength}}`),this.tensorManager.upload(t,e)}async downloadTensor(t,e){return this.tensorManager.download(t,e)}createMLTensorDownloader(t,e){return async()=>{let r=await this.tensorManager.download(t);return QE(r,e)}}registerMLTensor(t,e,r,s){let n=Xi.get(r);if(!n)throw new Error(`Unsupported ONNX data type: ${r}`);let o=this.tensorManager.registerTensor(t,e,n,s);return wt("verbose",()=>`[WebNN] registerMLTensor {tensor: ${e}, dataType: ${n}, dimensions: ${s}} -> {tensorId: ${o}}`),o}registerMLConstant(t,e,r,s,n,o,a=!1){if(!o)throw new Error("External mounted files are not available.");let i=t;t.startsWith("./")&&(i=t.substring(2));let l=o.get(i);if(!l)throw new Error(`File with name ${i} not found in preloaded files.`);if(e+r>l.byteLength)throw new Error("Out of bounds: data offset and length exceed the external file data size.");let u=l.slice(e,e+r).buffer,p;switch(n.dataType){case"float32":p=new Float32Array(u);break;case"float16":p=typeof Float16Array<"u"&&Float16Array.from?new Float16Array(u):new Uint16Array(u);break;case"int32":p=new Int32Array(u);break;case"uint32":p=new Uint32Array(u);break;case"int64":if(a){let f=I0(new Uint8Array(u),"int64");p=new Int32Array(f.buffer),n.dataType="int32"}else p=new BigInt64Array(u);break;case"uint64":p=new BigUint64Array(u);break;case"int8":p=new Int8Array(u);break;case"int4":case"uint4":case"uint8":p=new Uint8Array(u);break;default:throw new Error(`Unsupported data type: ${n.dataType} in creating WebNN Constant from external data.`)}return wt("verbose",()=>`[WebNN] registerMLConstant {dataType: ${n.dataType}, shape: ${n.shape}}} ${a?"(Note: it was int64 data type and registered to int32 as workaround)":""}`),s.constant(n,p)}registerGraphInput(t){this.temporaryGraphInputs.push(t)}registerGraphOutput(t){this.temporaryGraphOutputs.push(t)}isGraphInput(t,e){let r=this.sessionGraphInputs.get(t);return r?r.includes(e):!1}isGraphOutput(t,e){let r=this.sessionGraphOutputs.get(t);return r?r.includes(e):!1}isGraphInputOutputTypeSupported(t,e,r=!0){let s=Xi.get(Ls(e)),n=this.mlOpSupportLimitsBySessionId.get(t);return typeof s>"u"?!1:r?!!n?.input.dataTypes.includes(s):!!n?.output.dataTypes.includes(s)}flush(){}}}),wE,G0,q0,Jr,xE,E0,Fu,W0,V0,A0,H0,X0,K0,sA=ye(()=>{"use strict";Ds(),LP(),NP(),Sn(),Us(),U0(),YE(),wE=(t,e)=>{Ue()._OrtInit(t,e)!==0&&Ce("Can't initialize onnxruntime.")},G0=async t=>{wE(t.wasm.numThreads,Bu(t.logLevel))},q0=async(t,e)=>{Ue().asyncInit?.();let r=t.webgpu.adapter;if(e==="webgpu"){if(typeof navigator>"u"||!navigator.gpu)throw new Error("WebGPU is not supported in current environment");if(r){if(typeof r.limits!="object"||typeof r.features!="object"||typeof r.requestDevice!="function")throw new Error("Invalid GPU adapter set in `env.webgpu.adapter`. It must be a GPUAdapter object.")}else{let s=t.webgpu.powerPreference;if(s!==void 0&&s!=="low-power"&&s!=="high-performance")throw new Error(`Invalid powerPreference setting: "${s}"`);let n=t.webgpu.forceFallbackAdapter;if(n!==void 0&&typeof n!="boolean")throw new Error(`Invalid forceFallbackAdapter setting: "${n}"`);if(r=await navigator.gpu.requestAdapter({powerPreference:s,forceFallbackAdapter:n}),!r)throw new Error('Failed to get GPU adapter. You may need to enable flag "--enable-unsafe-webgpu" if you are using Chrome.')}}if(e==="webnn"&&(typeof navigator>"u"||!navigator.ml))throw new Error("WebNN is not supported in current environment");if(e==="webgpu"&&Ue().webgpuInit(s=>{t.webgpu.device=s}),e==="webnn"){let s=new(DP(),Ru(tA)).WebNNBackend(t);Ue().webnnInit([s,()=>s.reserveTensorId(),n=>s.releaseTensorId(n),async(n,o,a,i,l)=>s.ensureTensor(n,o,a,i,l),(n,o)=>{s.uploadTensor(n,o)},async(n,o)=>s.downloadTensor(n,o),(n,o)=>s.registerMLContext(n,o),!!t.trace])}},Jr=new Map,xE=t=>{let e=Ue(),r=e.stackSave();try{let s=e.PTR_SIZE,n=e.stackAlloc(2*s);e._OrtGetInputOutputCount(t,n,n+s)!==0&&Ce("Can't get session input/output count.");let o=s===4?"i32":"i64";return[Number(e.getValue(n,o)),Number(e.getValue(n+s,o))]}finally{e.stackRestore(r)}},E0=(t,e)=>{let r=Ue(),s=r.stackSave(),n=0;try{let o=r.PTR_SIZE,a=r.stackAlloc(2*o);r._OrtGetInputOutputMetadata(t,e,a,a+o)!==0&&Ce("Can't get session input/output metadata.");let i=Number(r.getValue(a,"*"));n=Number(r.getValue(a+o,"*"));let l=r.HEAP32[n/4];if(l===0)return[i,0];let u=r.HEAPU32[n/4+1],p=[];for(let f=0;f<u;f++){let m=Number(r.getValue(n+8+f*o,"*"));p.push(m!==0?r.UTF8ToString(m):Number(r.getValue(n+8+(f+u)*o,"*")))}return[i,l,p]}finally{r.stackRestore(s),n!==0&&r._OrtFree(n)}},Fu=t=>{let e=Ue(),r=e._malloc(t.byteLength);if(r===0)throw new Error(`Can't create a session. failed to allocate a buffer of size ${t.byteLength}.`);return e.HEAPU8.set(t,r),[r,t.byteLength]},W0=async(t,e)=>{let r,s,n=Ue();Array.isArray(t)?[r,s]=t:t.buffer===n.HEAPU8.buffer?[r,s]=[t.byteOffset,t.byteLength]:[r,s]=Fu(t);let o=0,a=0,i=0,l=[],u=[],p=[];try{if([a,l]=await KE(e),e?.externalData&&n.mountExternalData){let T=[];for(let P of e.externalData){let C=typeof P=="string"?P:P.path;T.push(j0(typeof P=="string"?P:P.data).then(v=>{n.mountExternalData(C,v)}))}await Promise.all(T)}for(let T of e?.executionProviders??[])if((typeof T=="string"?T:T.name)==="webnn"){if(n.shouldTransferToMLTensor=!1,typeof T!="string"){let P=T,C=P?.context,v=P?.gpuDevice,F=P?.deviceType,H=P?.powerPreference;C?n.currentContext=C:v?n.currentContext=await n.webnnCreateMLContext(v):n.currentContext=await n.webnnCreateMLContext({deviceType:F,powerPreference:H})}else n.currentContext=await n.webnnCreateMLContext();break}o=await n._OrtCreateSession(r,s,a),n.webgpuOnCreateSession?.(o),o===0&&Ce("Can't create a session."),n.jsepOnCreateSession?.(),n.currentContext&&(n.webnnRegisterMLContext(o,n.currentContext),n.currentContext=void 0,n.shouldTransferToMLTensor=!0);let[f,m]=xE(o),h=!!e?.enableGraphCapture,w=[],x=[],k=[],E=[],A=[];for(let T=0;T<f;T++){let[P,C,v]=E0(o,T);P===0&&Ce("Can't get an input name."),u.push(P);let F=n.UTF8ToString(P);w.push(F),k.push(C===0?{name:F,isTensor:!1}:{name:F,isTensor:!0,type:$u(C),shape:v})}for(let T=0;T<m;T++){let[P,C,v]=E0(o,T+f);P===0&&Ce("Can't get an output name."),p.push(P);let F=n.UTF8ToString(P);x.push(F),E.push(C===0?{name:F,isTensor:!1}:{name:F,isTensor:!0,type:$u(C),shape:v});{if(h&&e?.preferredOutputLocation===void 0){A.push("gpu-buffer");continue}let H=typeof e?.preferredOutputLocation=="string"?e.preferredOutputLocation:e?.preferredOutputLocation?.[F]??"cpu",V=n.webnnIsGraphOutput;if(H==="cpu"&&V&&V(o,F)){A.push("ml-tensor-cpu-output");continue}if(H!=="cpu"&&H!=="cpu-pinned"&&H!=="gpu-buffer"&&H!=="ml-tensor")throw new Error(`Not supported preferred output location: ${H}.`);if(h&&H!=="gpu-buffer")throw new Error(`Not supported preferred output location: ${H}. Only 'gpu-buffer' location is supported when enableGraphCapture is true.`);A.push(H)}}let S=null;return A.some(T=>T==="gpu-buffer"||T==="ml-tensor"||T==="ml-tensor-cpu-output")&&(i=n._OrtCreateBinding(o),i===0&&Ce("Can't create IO binding."),S={handle:i,outputPreferredLocations:A,outputPreferredLocationsEncoded:A.map(T=>T==="ml-tensor-cpu-output"?"ml-tensor":T).map(T=>O0(T))}),Jr.set(o,[o,u,p,S,h,!1]),[o,w,x,k,E]}catch(f){throw u.forEach(m=>n._OrtFree(m)),p.forEach(m=>n._OrtFree(m)),i!==0&&n._OrtReleaseBinding(i)!==0&&Ce("Can't release IO binding."),o!==0&&n._OrtReleaseSession(o)!==0&&Ce("Can't release session."),f}finally{n._free(r),a!==0&&n._OrtReleaseSessionOptions(a)!==0&&Ce("Can't release session options."),l.forEach(f=>n._free(f)),n.unmountExternalData?.()}},V0=t=>{let e=Ue(),r=Jr.get(t);if(!r)throw new Error(`cannot release session. invalid session id: ${t}`);let[s,n,o,a,i]=r;a&&(i&&e._OrtClearBoundOutputs(a.handle)!==0&&Ce("Can't clear bound outputs."),e._OrtReleaseBinding(a.handle)!==0&&Ce("Can't release IO binding.")),e.jsepOnReleaseSession?.(t),e.webnnOnReleaseSession?.(t),e.webgpuOnReleaseSession?.(t),n.forEach(l=>e._OrtFree(l)),o.forEach(l=>e._OrtFree(l)),e._OrtReleaseSession(s)!==0&&Ce("Can't release session."),Jr.delete(t)},A0=async(t,e,r,s,n,o,a=!1)=>{if(!t){e.push(0);return}let i=Ue(),l=i.PTR_SIZE,u=t[0],p=t[1],f=t[3],m=f,h,w;if(u==="string"&&(f==="gpu-buffer"||f==="ml-tensor"))throw new Error("String tensor is not supported on GPU.");if(a&&f!=="gpu-buffer")throw new Error(`External buffer must be provided for input/output index ${o} when enableGraphCapture is true.`);if(f==="gpu-buffer"){let E=t[2].gpuBuffer;w=Tn(Ls(u),p);{let A=i.webgpuRegisterBuffer;if(!A)throw new Error('Tensor location "gpu-buffer" is not supported without using WebGPU.');h=A(E,s)}}else if(f==="ml-tensor"){let E=t[2].mlTensor;w=Tn(Ls(u),p);let A=i.webnnRegisterMLTensor;if(!A)throw new Error('Tensor location "ml-tensor" is not supported without using WebNN.');h=A(s,E,Ls(u),p)}else{let E=t[2];if(Array.isArray(E)){w=l*E.length,h=i._malloc(w),r.push(h);for(let A=0;A<E.length;A++){if(typeof E[A]!="string")throw new TypeError(`tensor data at index ${A} is not a string`);i.setValue(h+A*l,Lt(E[A],r),"*")}}else{let A=i.webnnIsGraphInput,S=i.webnnIsGraphOutput;if(u!=="string"&&A&&S){let T=i.UTF8ToString(n);if(A(s,T)||S(s,T)){let P=Ls(u);w=Tn(P,p),m="ml-tensor";let C=i.webnnCreateTemporaryTensor,v=i.webnnUploadTensor;if(!C||!v)throw new Error('Tensor location "ml-tensor" is not supported without using WebNN.');let F=await C(s,P,p);v(F,new Uint8Array(E.buffer,E.byteOffset,E.byteLength)),h=F}else w=E.byteLength,h=i._malloc(w),r.push(h),i.HEAPU8.set(new Uint8Array(E.buffer,E.byteOffset,w),h)}else w=E.byteLength,h=i._malloc(w),r.push(h),i.HEAPU8.set(new Uint8Array(E.buffer,E.byteOffset,w),h)}}let x=i.stackSave(),k=i.stackAlloc(4*p.length);try{p.forEach((A,S)=>i.setValue(k+S*l,A,l===4?"i32":"i64"));let E=i._OrtCreateTensor(Ls(u),h,w,k,p.length,O0(m));E===0&&Ce(`Can't create tensor for input/output. session=${s}, index=${o}.`),e.push(E)}finally{i.stackRestore(x)}},H0=async(t,e,r,s,n,o)=>{let a=Ue(),i=a.PTR_SIZE,l=Jr.get(t);if(!l)throw new Error(`cannot run inference. invalid session id: ${t}`);let u=l[0],p=l[1],f=l[2],m=l[3],h=l[4],w=l[5],x=e.length,k=s.length,E=0,A=[],S=[],T=[],P=[],C=[],v=a.stackSave(),F=a.stackAlloc(x*i),H=a.stackAlloc(x*i),V=a.stackAlloc(k*i),J=a.stackAlloc(k*i);try{[E,A]=XE(o),es("wasm prepareInputOutputTensor");for(let z=0;z<x;z++)await A0(r[z],S,P,t,p[e[z]],e[z],h);for(let z=0;z<k;z++)await A0(n[z],T,P,t,f[s[z]],x+s[z],h);ts("wasm prepareInputOutputTensor");for(let z=0;z<x;z++)a.setValue(F+z*i,S[z],"*"),a.setValue(H+z*i,p[e[z]],"*");for(let z=0;z<k;z++)a.setValue(V+z*i,T[z],"*"),a.setValue(J+z*i,f[s[z]],"*");if(m&&!w){let{handle:z,outputPreferredLocations:ne,outputPreferredLocationsEncoded:ae}=m;if(p.length!==x)throw new Error(`input count from feeds (${x}) is expected to be always equal to model's input count (${p.length}).`);es("wasm bindInputsOutputs");for(let I=0;I<x;I++){let L=e[I];await a._OrtBindInput(z,p[L],S[I])!==0&&Ce(`Can't bind input[${I}] for session=${t}.`)}for(let I=0;I<k;I++){let L=s[I];n[I]?.[3]?(C.push(T[I]),a._OrtBindOutput(z,f[L],T[I],0)!==0&&Ce(`Can't bind pre-allocated output[${I}] for session=${t}.`)):a._OrtBindOutput(z,f[L],0,ae[L])!==0&&Ce(`Can't bind output[${I}] to ${ne[I]} for session=${t}.`)}ts("wasm bindInputsOutputs"),Jr.set(t,[u,p,f,m,h,!0])}a.jsepOnRunStart?.(u),a.webnnOnRunStart?.(u);let X;m?X=await a._OrtRunWithBinding(u,m.handle,k,V,E):X=await a._OrtRun(u,H,F,x,J,k,V,E),X!==0&&Ce("failed to call OrtRun().");let Y=[],U=[];es("wasm ProcessOutputTensor");for(let z=0;z<k;z++){let ne=Number(a.getValue(V+z*i,"*"));if(ne===T[z]||C.includes(T[z])){Y.push(n[z]),ne!==T[z]&&a._OrtReleaseTensor(ne)!==0&&Ce("Can't release tensor.");continue}let ae=a.stackSave(),I=a.stackAlloc(4*i),L=!1,R,te=0;try{a._OrtGetTensorData(ne,I,I+i,I+2*i,I+3*i)!==0&&Ce(`Can't access output tensor data on index ${z}.`);let pe=i===4?"i32":"i64",Fe=Number(a.getValue(I,pe));te=a.getValue(I+i,"*");let ze=a.getValue(I+i*2,"*"),Mt=Number(a.getValue(I+i*3,pe)),Je=[];for(let Me=0;Me<Mt;Me++)Je.push(Number(a.getValue(ze+Me*i,pe)));a._OrtFree(ze)!==0&&Ce("Can't free memory for tensor dims.");let tt=Je.reduce((Me,xe)=>Me*xe,1);R=$u(Fe);let nt=m?.outputPreferredLocations[s[z]];if(R==="string"){if(nt==="gpu-buffer"||nt==="ml-tensor")throw new Error("String tensor is not supported on GPU.");let Me=[];for(let xe=0;xe<tt;xe++){let We=a.getValue(te+xe*i,"*"),Tt=a.getValue(te+(xe+1)*i,"*"),be=xe===tt-1?void 0:Tt-We;Me.push(a.UTF8ToString(We,be))}Y.push([R,Je,Me,"cpu"])}else if(nt==="gpu-buffer"&&tt>0){let Me=a.webgpuGetBuffer;if(!Me)throw new Error('preferredLocation "gpu-buffer" is not supported without using WebGPU.');let xe=Me(te),We=Tn(Fe,tt);if(We===void 0||!B0(R))throw new Error(`Unsupported data type: ${R}`);L=!0;{a.webgpuRegisterBuffer(xe,t,te);let Tt=a.webgpuCreateDownloader(xe,We,t);Y.push([R,Je,{gpuBuffer:xe,download:async()=>{let be=await Tt();return new(Ji(R))(be)},dispose:()=>{a._OrtReleaseTensor(ne)!==0&&Ce("Can't release tensor.")}},"gpu-buffer"])}}else if(nt==="ml-tensor"&&tt>0){let Me=a.webnnEnsureTensor,xe=a.webnnIsGraphInputOutputTypeSupported;if(!Me||!xe)throw new Error('preferredLocation "ml-tensor" is not supported without using WebNN.');if(Tn(Fe,tt)===void 0||!F0(R))throw new Error(`Unsupported data type: ${R}`);if(!xe(t,R,!1))throw new Error(`preferredLocation "ml-tensor" for ${R} output is not supported by current WebNN Context.`);let We=await Me(t,te,Fe,Je,!1);L=!0,Y.push([R,Je,{mlTensor:We,download:a.webnnCreateMLTensorDownloader(te,R),dispose:()=>{a.webnnReleaseTensorId(te),a._OrtReleaseTensor(ne)}},"ml-tensor"])}else if(nt==="ml-tensor-cpu-output"&&tt>0){let Me=a.webnnCreateMLTensorDownloader(te,R)(),xe=Y.length;L=!0,U.push((async()=>{let We=[xe,await Me];return a.webnnReleaseTensorId(te),a._OrtReleaseTensor(ne),We})()),Y.push([R,Je,[],"cpu"])}else{let Me=Ji(R),xe=new Me(tt);new Uint8Array(xe.buffer,xe.byteOffset,xe.byteLength).set(a.HEAPU8.subarray(te,te+xe.byteLength)),Y.push([R,Je,xe,"cpu"])}}finally{a.stackRestore(ae),R==="string"&&te&&a._free(te),L||a._OrtReleaseTensor(ne)}}m&&!h&&(a._OrtClearBoundOutputs(m.handle)!==0&&Ce("Can't clear bound outputs."),Jr.set(t,[u,p,f,m,h,!1]));for(let[z,ne]of await Promise.all(U))Y[z][2]=ne;return ts("wasm ProcessOutputTensor"),Y}finally{a.webnnOnRunEnd?.(u),a.stackRestore(v),r.forEach(X=>{X&&X[3]==="gpu-buffer"&&a.webgpuUnregisterBuffer(X[2].gpuBuffer)}),n.forEach(X=>{X&&X[3]==="gpu-buffer"&&a.webgpuUnregisterBuffer(X[2].gpuBuffer)}),S.forEach(X=>a._OrtReleaseTensor(X)),T.forEach(X=>a._OrtReleaseTensor(X)),P.forEach(X=>a._free(X)),E!==0&&a._OrtReleaseRunOptions(E),A.forEach(X=>a._free(X))}},X0=t=>{let e=Ue(),r=Jr.get(t);if(!r)throw new Error("invalid session id");let s=r[0],n=e._OrtEndProfiling(s);n===0&&Ce("Can't get an profile file name."),e._OrtFree(n)},K0=t=>{let e=[];for(let r of t){let s=r[2];!Array.isArray(s)&&"buffer"in s&&e.push(s.buffer)}return e}}),Zr,Gt,Mn,Ki,Yi,Lu,M0,Nu,Cs,Ps,yE,nA,oA,aA,iA,lA,cA,uA,pA=ye(()=>{"use strict";Ds(),sA(),Us(),R0(),Zr=()=>!!He.wasm.proxy&&typeof document<"u",Mn=!1,Ki=!1,Yi=!1,Nu=new Map,Cs=(t,e)=>{let r=Nu.get(t);r?r.push(e):Nu.set(t,[e])},Ps=()=>{if(Mn||!Ki||Yi||!Gt)throw new Error("worker not ready")},yE=t=>{switch(t.data.type){case"init-wasm":Mn=!1,t.data.err?(Yi=!0,M0[1](t.data.err)):(Ki=!0,M0[0]()),Lu&&(URL.revokeObjectURL(Lu),Lu=void 0);break;case"init-ep":case"copy-from":case"create":case"release":case"run":case"end-profiling":{let e=Nu.get(t.data.type);t.data.err?e.shift()[1](t.data.err):e.shift()[0](t.data.out);break}default:}},nA=async()=>{if(!Ki){if(Mn)throw new Error("multiple calls to 'initWasm()' detected.");if(Yi)throw new Error("previous call to 'initWasm()' failed.");if(Mn=!0,Zr())return new Promise((t,e)=>{Gt?.terminate(),VE().then(([r,s])=>{try{Gt=s,Gt.onerror=o=>e(o),Gt.onmessage=yE,M0=[t,e];let n={type:"init-wasm",in:He};!n.in.wasm.wasmPaths&&(r||S0)&&(n.in.wasm.wasmPaths={wasm:new URL("ort-wasm-simd-threaded.asyncify.wasm",tr.url).href}),Gt.postMessage(n),Lu=r}catch(n){e(n)}},e)});try{await D0(He.wasm),await G0(He),Ki=!0}catch(t){throw Yi=!0,t}finally{Mn=!1}}},oA=async t=>{if(Zr())return Ps(),new Promise((e,r)=>{Cs("init-ep",[e,r]);let s={type:"init-ep",in:{epName:t,env:He}};Gt.postMessage(s)});await q0(He,t)},aA=async t=>Zr()?(Ps(),new Promise((e,r)=>{Cs("copy-from",[e,r]);let s={type:"copy-from",in:{buffer:t}};Gt.postMessage(s,[t.buffer])})):Fu(t),iA=async(t,e)=>{if(Zr()){if(e?.preferredOutputLocation)throw new Error('session option "preferredOutputLocation" is not supported for proxy.');return Ps(),new Promise((r,s)=>{Cs("create",[r,s]);let n={type:"create",in:{model:t,options:{...e}}},o=[];t instanceof Uint8Array&&o.push(t.buffer),Gt.postMessage(n,o)})}else return W0(t,e)},lA=async t=>{if(Zr())return Ps(),new Promise((e,r)=>{Cs("release",[e,r]);let s={type:"release",in:t};Gt.postMessage(s)});V0(t)},cA=async(t,e,r,s,n,o)=>{if(Zr()){if(r.some(a=>a[3]!=="cpu"))throw new Error("input tensor on GPU is not supported for proxy.");if(n.some(a=>a))throw new Error("pre-allocated output tensor is not supported for proxy.");return Ps(),new Promise((a,i)=>{Cs("run",[a,i]);let l=r,u={type:"run",in:{sessionId:t,inputIndices:e,inputs:l,outputIndices:s,options:o}};Gt.postMessage(u,K0(l))})}else return H0(t,e,r,s,n,o)},uA=async t=>{if(Zr())return Ps(),new Promise((e,r)=>{Cs("end-profiling",[e,r]);let s={type:"end-profiling",in:t};Gt.postMessage(s)});X0(t)}}),T0,bE,dA,UP=ye(()=>{"use strict";Ds(),pA(),Sn(),$0(),YE(),T0=(t,e)=>{switch(t.location){case"cpu":return[t.type,t.dims,t.data,"cpu"];case"gpu-buffer":return[t.type,t.dims,{gpuBuffer:t.gpuBuffer},"gpu-buffer"];case"ml-tensor":return[t.type,t.dims,{mlTensor:t.mlTensor},"ml-tensor"];default:throw new Error(`invalid data location: ${t.location} for ${e()}`)}},bE=t=>{switch(t[3]){case"cpu":return new rr(t[0],t[2],t[1]);case"gpu-buffer":{let e=t[0];if(!B0(e))throw new Error(`not supported data type: ${e} for deserializing GPU tensor`);let{gpuBuffer:r,download:s,dispose:n}=t[2];return rr.fromGpuBuffer(r,{dataType:e,dims:t[1],download:s,dispose:n})}case"ml-tensor":{let e=t[0];if(!F0(e))throw new Error(`not supported data type: ${e} for deserializing MLTensor tensor`);let{mlTensor:r,download:s,dispose:n}=t[2];return rr.fromMLTensor(r,{dataType:e,dims:t[1],download:s,dispose:n})}default:throw new Error(`invalid data location: ${t[3]}`)}},dA=class{async fetchModelAndCopyToWasmMemory(t){return aA(await j0(t))}async loadModel(t,e){$s();let r;typeof t=="string"?r=await this.fetchModelAndCopyToWasmMemory(t):r=t,[this.sessionId,this.inputNames,this.outputNames,this.inputMetadata,this.outputMetadata]=await iA(r,e),Rs()}async dispose(){return lA(this.sessionId)}async run(t,e,r){$s();let s=[],n=[];Object.entries(t).forEach(f=>{let m=f[0],h=f[1],w=this.inputNames.indexOf(m);if(w===-1)throw new Error(`invalid input '${m}'`);s.push(h),n.push(w)});let o=[],a=[];Object.entries(e).forEach(f=>{let m=f[0],h=f[1],w=this.outputNames.indexOf(m);if(w===-1)throw new Error(`invalid output '${m}'`);o.push(h),a.push(w)});let i=s.map((f,m)=>T0(f,()=>`input "${this.inputNames[n[m]]}"`)),l=o.map((f,m)=>f?T0(f,()=>`output "${this.outputNames[a[m]]}"`):null),u=await cA(this.sessionId,n,i,a,l,r),p={};for(let f=0;f<u.length;f++)p[this.outputNames[a[f]]]=o[f]??bE(u[f]);return Rs(),p}startProfiling(){}endProfiling(){uA(this.sessionId)}}}),fA={};Zi(fA,{OnnxruntimeWebAssemblyBackend:()=>P0,initializeFlags:()=>C0,wasmBackend:()=>mA});var C0,P0,mA,BP=ye(()=>{"use strict";Ds(),pA(),UP(),C0=()=>{(typeof He.wasm.initTimeout!="number"||He.wasm.initTimeout<0)&&(He.wasm.initTimeout=0);let t=He.wasm.simd;if(typeof t!="boolean"&&t!==void 0&&t!=="fixed"&&t!=="relaxed"&&(console.warn(`Property "env.wasm.simd" is set to unknown value "${t}". Reset it to \`false\` and ignore SIMD feature checking.`),He.wasm.simd=!1),typeof He.wasm.proxy!="boolean"&&(He.wasm.proxy=!1),typeof He.wasm.trace!="boolean"&&(He.wasm.trace=!1),typeof He.wasm.numThreads!="number"||!Number.isInteger(He.wasm.numThreads)||He.wasm.numThreads<=0)if(typeof self<"u"&&!self.crossOriginIsolated)He.wasm.numThreads=1;else{let e=typeof navigator>"u"?gP("node:os").cpus().length:navigator.hardwareConcurrency;He.wasm.numThreads=Math.min(4,Math.ceil((e||1)/2))}},P0=class{async init(t){C0(),await nA(),await oA(t)}async createInferenceSessionHandler(t,e){let r=new dA;return await r.loadModel(t,e),r}},mA=new P0});Ds();Ds();Ds();var FP="1.25.0-dev.20260228-6e72d31970",jP=BE;{let t=(BP(),Ru(fA)).wasmBackend;Ns("webgpu",t,5),Ns("webnn",t,5),Ns("cpu",t,10),Ns("wasm",t,10)}Object.defineProperty(He.versions,"web",{value:FP,enumerable:!0});var Q0={};async function hA(t){let e=t.split("/").pop(),r;try{if(r=await ur(),r){let n=await r.match(t);if(n)return n}}catch(n){Q.warn(`Failed to load ${e} from cache:`,n)}let s=await fe.fetch(t);if(!s.ok)throw new Error(`Failed to fetch ${e}: ${s.status} ${s.statusText}`);if(r)try{await r.put(t,s.clone())}catch(n){Q.warn(`Failed to cache ${e}:`,n)}return s}async function _A(t){let e=await hA(t);if(!e||typeof e=="string")return null;try{return await e.arrayBuffer()}catch(r){return Q.warn("Failed to read WASM binary:",r),null}}async function gA(t){let e=await hA(t);if(!e||typeof e=="string")return null;try{let r=await e.text(),s=t.split("/").slice(0,-1).join("/");r=r.replaceAll("import.meta.url",`"${s}"`),r=r.replaceAll("globalThis.process?.versions?.node","false");let n=new Blob([r],{type:"text/javascript"});return URL.createObjectURL(n)}catch(r){return Q.warn("Failed to read WASM binary:",r),null}}function J0(t){return Sr(t,["blob:"])}function Z0(t){let e;if(typeof location<"u"&&location.href)e=location.href;else if(typeof Q0<"u"&&Q0.url)e=Q0.url;else return t;return new URL(t,e).href}var tb=require("onnxruntime-common"),qP=Object.freeze({auto:null,gpu:null,cpu:"cpu",wasm:"wasm",webgpu:"webgpu",cuda:"cuda",dml:"dml",coreml:"coreml",webnn:{name:"webnn",deviceType:"cpu"},"webnn-npu":{name:"webnn",deviceType:"npu"},"webnn-gpu":{name:"webnn",deviceType:"gpu"},"webnn-cpu":{name:"webnn",deviceType:"cpu"}});function bA(t){return t<=kt.DEBUG?0:t<=kt.INFO?2:t<=kt.WARNING||t<=kt.ERROR?3:4}var WP={0:"verbose",1:"info",2:"warning",3:"error",4:"fatal"},qt=[],eb,In,wA=Symbol.for("onnxruntime");if(wA in globalThis)In=globalThis[wA];else if(ge.IS_NODE_ENV){switch(In=GP,process.platform){case"win32":qt.push("dml");break;case"linux":process.arch==="x64"&&qt.push("cuda");break;case"darwin":qt.push("coreml");break}qt.push("webgpu"),qt.push("cpu"),eb=["cpu"]}else In=Y0,ge.IS_WEBNN_AVAILABLE&&qt.push("webnn-npu","webnn-gpu","webnn-cpu","webnn"),ge.IS_WEBGPU_AVAILABLE&&qt.push("webgpu"),qt.push("wasm"),eb=["wasm"];var VP=In.InferenceSession;function vA(t=null){if(!t)return eb;switch(t){case"auto":return qt;case"gpu":return qt.filter(e=>["webgpu","cuda","dml","webnn-gpu"].includes(e))}if(qt.includes(t))return[qP[t]??t];throw new Error(`Unsupported device: "${t}". Should be one of: ${qt.join(", ")}.`)}var kA=ge.IS_BROWSER_ENV||ge.IS_WEBWORKER_ENV,xA=Promise.resolve(),On=null;async function HP(){return On||(fe.useWasmCache&&typeof ht?.wasm?.wasmPaths=="object"&&ht?.wasm?.wasmPaths?.wasm&&ht?.wasm?.wasmPaths?.mjs?(On=(async()=>{let e=ht.wasm.wasmPaths;await Promise.all([e.wasm&&!J0(e.wasm)?(async()=>{try{let r=await _A(Z0(e.wasm));r&&(ht.wasm.wasmBinary=r)}catch(r){Q.warn("Failed to pre-load WASM binary:",r)}})():Promise.resolve(),e.mjs&&!J0(e.mjs)?(async()=>{try{let r=await gA(Z0(e.mjs));r&&(ht.wasm.wasmPaths.mjs=r)}catch(r){Q.warn("Failed to pre-load WASM factory:",r)}})():Promise.resolve()])})(),On):(On=Promise.resolve(),On))}async function ju(t,e,r){await HP();let s=bA(fe.logLevel??kt.WARNING),n=()=>VP.create(t,{logSeverityLevel:s,...e}),o=await(kA?xA=xA.then(n):n());return o.config=r,o}var yA=Promise.resolve();async function Gu(t,e){let r=()=>t.run(e);return await(kA?yA=yA.then(r):r())}function qu(t){return t instanceof In.Tensor}var ht=In?.env;if(ht?.wasm){if(!(typeof ServiceWorkerGlobalScope<"u"&&self instanceof ServiceWorkerGlobalScope)&&ht.versions?.web&&!ht.wasm.wasmPaths){let t=`https://cdn.jsdelivr.net/npm/onnxruntime-web@${ht.versions.web}/dist/`;ht.wasm.wasmPaths=ge.IS_SAFARI?{mjs:`${t}ort-wasm-simd-threaded.mjs`,wasm:`${t}ort-wasm-simd-threaded.wasm`}:{mjs:`${t}ort-wasm-simd-threaded.asyncify.mjs`,wasm:`${t}ort-wasm-simd-threaded.asyncify.wasm`}}ht.wasm.proxy=!1}ht?.webgpu&&(ht.webgpu.powerPreference="high-performance");function el(){return ht?.wasm?.proxy}function EA(t){let e=bA(t);ht.logLevel=WP[e]}EA(fe.logLevel??kt.WARNING);fe.backends.onnx={...ht,setLogLevel:EA};var rs=async(t,e,r)=>{let s=await ju(new Uint8Array(t),e);return(async n=>{let o=el(),a=Object.fromEntries(Object.entries(n).map(([l,u])=>[l,(o?u.clone():u).ort_tensor])),i=await Gu(s,a);return Array.isArray(r)?r.map(l=>new D(i[l])):new D(i[r])})},dr=class{static session_options={};static get nearest_interpolate_4d(){return this._nearest_interpolate_4d||(this._nearest_interpolate_4d=rs([8,10,18,0,58,129,1,10,41,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,18,10,4,109,111,100,101,34,7,110,101,97,114,101,115,116,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,21],this.session_options,"y")),this._nearest_interpolate_4d}static get bilinear_interpolate_4d(){return this._bilinear_interpolate_4d||(this._bilinear_interpolate_4d=rs([8,9,18,0,58,128,1,10,40,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,17,10,4,109,111,100,101,34,6,108,105,110,101,97,114,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,"y")),this._bilinear_interpolate_4d}static get bicubic_interpolate_4d(){return this._bicubic_interpolate_4d||(this._bicubic_interpolate_4d=rs([8,9,18,0,58,127,10,39,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,16,10,4,109,111,100,101,34,5,99,117,98,105,99,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,"y")),this._bicubic_interpolate_4d}static get matmul(){return this._matmul||(this._matmul=rs([8,9,18,0,58,55,10,17,10,1,97,10,1,98,18,1,99,34,6,77,97,116,77,117,108,18,1,114,90,9,10,1,97,18,4,10,2,8,1,90,9,10,1,98,18,4,10,2,8,1,98,9,10,1,99,18,4,10,2,8,1,66,2,16,20],this.session_options,"c")),this._matmul}static get stft(){return this._stft||(this._stft=rs([8,7,18,0,58,148,1,10,38,10,1,115,10,1,106,10,1,119,10,1,108,18,1,111,34,4,83,84,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,115,90,26,10,1,115,18,21,10,19,8,1,18,15,10,3,18,1,98,10,3,18,1,115,10,3,18,1,99,90,11,10,1,106,18,6,10,4,8,7,18,0,90,16,10,1,119,18,11,10,9,8,1,18,5,10,3,18,1,119,90,11,10,1,108,18,6,10,4,8,7,18,0,98,31,10,1,111,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,102,10,3,18,1,100,10,3,18,1,99,66,2,16,17],this.session_options,"o")),this._stft}static get rfft(){return this._rfft||(this._rfft=rs([8,9,18,0,58,97,10,33,10,1,120,10,0,10,1,97,18,1,121,34,3,68,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,100,90,21,10,1,120,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,90,11,10,1,97,18,6,10,4,8,7,18,0,98,21,10,1,121,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,66,2,16,20],this.session_options,"y")),this._rfft}static get top_k(){return this._top_k||(this._top_k=rs([8,10,18,0,58,73,10,18,10,1,120,10,1,107,18,1,118,18,1,105,34,4,84,111,112,75,18,1,116,90,9,10,1,120,18,4,10,2,8,1,90,15,10,1,107,18,10,10,8,8,7,18,4,10,2,8,1,98,9,10,1,118,18,4,10,2,8,1,98,9,10,1,105,18,4,10,2,8,7,66,2,16,21],this.session_options,["v","i"])),this._top_k}static get slice(){return this._slice||(this._slice=rs([8,7,18,0,58,96,10,25,10,1,120,10,1,115,10,1,101,10,1,97,10,1,116,18,1,121,34,5,83,108,105,99,101,18,1,114,90,9,10,1,120,18,4,10,2,8,1,90,9,10,1,115,18,4,10,2,8,7,90,9,10,1,101,18,4,10,2,8,7,90,9,10,1,97,18,4,10,2,8,7,90,9,10,1,116,18,4,10,2,8,7,98,9,10,1,121,18,4,10,2,8,1,66,2,16,13],this.session_options,"y")),this._slice}};var AA=Object.freeze({auto:"auto",gpu:"gpu",cpu:"cpu",wasm:"wasm",webgpu:"webgpu",cuda:"cuda",dml:"dml",coreml:"coreml",webnn:"webnn","webnn-npu":"webnn-npu","webnn-gpu":"webnn-gpu","webnn-cpu":"webnn-cpu"}),rb=ge.IS_NODE_ENV?"cpu":"wasm";function Wu(t,e,{warn:r}={}){return t?typeof t=="string"?t:t.hasOwnProperty(e)?t[e]:(r&&r(`device not specified for "${e}". Using the default device (${rb}).`),rb):rb}var SA=(function(){let t;return async function(){if(t===void 0)if(!ge.IS_WEBGPU_AVAILABLE)t=!1;else try{t=(await navigator.gpu.requestAdapter()).features.has("shader-f16")}catch{t=!1}return t}})(),_t=Object.freeze({auto:"auto",fp32:"fp32",fp16:"fp16",q8:"q8",int8:"int8",uint8:"uint8",q4:"q4",bnb4:"bnb4",q4f16:"q4f16"}),MA=_t.fp32,TA=Object.freeze({[AA.wasm]:_t.q8}),tl=Object.freeze({[_t.fp32]:"",[_t.fp16]:"_fp16",[_t.int8]:"_int8",[_t.uint8]:"_uint8",[_t.q8]:"_quantized",[_t.q4]:"_q4",[_t.q4f16]:"_q4f16",[_t.bnb4]:"_bnb4"});function Vu(t,e,r,{configDtype:s=null,warn:n}={}){let o,a=!1;t&&typeof t!="string"?t.hasOwnProperty(e)?o=t[e]:(o=null,a=!0):o=t;let i;if(o===_t.auto){if(s){let l=typeof s=="string"?s:s?.[e];if(l&&l!==_t.auto&&_t.hasOwnProperty(l))return l}i=TA[r]??MA}else o&&_t.hasOwnProperty(o)?i=o:i=TA[r]??MA;return a&&n&&n(`dtype not specified for "${e}". Using the default dtype (${i}) for this device (${r}).`),i}var Cn=Object.freeze({float32:Float32Array,float16:typeof Float16Array<"u"?Float16Array:Uint16Array,float64:Float64Array,string:Array,int8:Int8Array,uint8:Uint8Array,int16:Int16Array,uint16:Uint16Array,int32:Int32Array,uint32:Uint32Array,int64:BigInt64Array,uint64:BigUint64Array,bool:Uint8Array,uint4:Uint8Array,int4:Int8Array});var Hu=class{constructor(e){this._mt=new Uint32Array(624),this._idx=625,this._gauss_next=null,this._random_fn=this.random.bind(this),this.seed(e)}seed(e){if(e==null)if(ge.IS_CRYPTO_AVAILABLE){let i=new Uint32Array(1);crypto.getRandomValues(i),e=i[0]}else e=Date.now()>>>0;let r=this._mt,s=(i,l)=>Math.imul(i,l)>>>0,n=[];for(let i=e||0;i>0;i=Math.floor(i/4294967296))n.push(i&4294967295);n.length||n.push(0),r[0]=19650218;for(let i=1;i<624;++i)r[i]=s(1812433253,r[i-1]^r[i-1]>>>30)+i>>>0;let o=1,a=0;for(let i=Math.max(624,n.length);i>0;--i,++o,++a)o>=624&&(r[0]=r[623],o=1),a>=n.length&&(a=0),r[o]=(r[o]^s(r[o-1]^r[o-1]>>>30,1664525))+n[a]+a>>>0;for(let i=623;i>0;--i,++o)o>=624&&(r[0]=r[623],o=1),r[o]=(r[o]^s(r[o-1]^r[o-1]>>>30,1566083941))-o>>>0;r[0]=2147483648,this._idx=624,this._gauss_next=null}_int32(){let e=this._mt;if(this._idx>=624){for(let s=0;s<624;++s){let n=e[s]&2147483648|e[(s+1)%624]&2147483647;e[s]=(e[(s+397)%624]^n>>>1^(n&1?2567483615:0))>>>0}this._idx=0}let r=e[this._idx++];return r^=r>>>11,r^=r<<7&2636928640,r^=r<<15&4022730752,r^=r>>>18,r>>>0}random(){return((this._int32()>>>5)*67108864+(this._int32()>>>6))/9007199254740992}gauss(e=0,r=1){let s=this._gauss_next;if(this._gauss_next=null,s===null){let n=this.random()*2*Math.PI,o=Math.sqrt(-2*Math.log(1-this.random()));s=Math.cos(n)*o,this._gauss_next=Math.sin(n)*o}return e+s*r}shuffle(e){for(let r=e.length-1;r>0;--r){let s=32-Math.clz32(r+1),n=this._int32()>>>32-s;for(;n>r;)n=this._int32()>>>32-s;let o=e[r];e[r]=e[n],e[n]=o}}choices(e,r){return e[OA(this._random_fn,r)]}};function OA(t,e){let r=0;for(let n=0;n<e.length;++n)r+=e[n];let s=t()*r;for(let n=0;n<e.length;++n)if(s-=e[n],s<0)return n;return e.length-1}var fr=new Hu,ss=Object.freeze({Random:Hu,seed:fr.seed.bind(fr),random:fr.random.bind(fr),gauss:fr.gauss.bind(fr),shuffle:fr.shuffle.bind(fr),choices:fr.choices.bind(fr)}),IA=t=>OA(ss.random,t);var D=class t{get dims(){return this.ort_tensor.dims}set dims(e){this.ort_tensor.dims=e}get type(){return this.ort_tensor.type}get data(){return this.ort_tensor.data}get size(){return this.ort_tensor.size}get location(){return this.ort_tensor.location}ort_tensor;constructor(...e){return qu(e[0])?this.ort_tensor=e[0]:this.ort_tensor=new tb.Tensor(e[0],e[1],e[2]),new Proxy(this,{get:(r,s)=>{if(typeof s=="string"){let n=Number(s);if(Number.isInteger(n))return r._getitem(n)}return r[s]},set:(r,s,n)=>r[s]=n})}dispose(){this.ort_tensor.dispose()}*[Symbol.iterator](){let[e,...r]=this.dims;if(r.length>0){let s=r.reduce((n,o)=>n*o);for(let n=0;n<e;++n)yield this._subarray(n,s,r)}else yield*this.data}_getitem(e){let[r,...s]=this.dims;if(e=mr(e,r),s.length>0){let n=s.reduce((o,a)=>o*a);return this._subarray(e,n,s)}else return new t(this.type,[this.data[e]],s)}indexOf(e){let r=this.data;for(let s=0;s<r.length;++s)if(r[s]==e)return s;return-1}_subarray(e,r,s){let n=e*r,o=(e+1)*r,a="subarray"in this.data?this.data.subarray(n,o):this.data.slice(n,o);return new t(this.type,a,s)}item(){let e=this.data;if(e.length!==1)throw new Error(`a Tensor with ${e.length} elements cannot be converted to Scalar`);return e[0]}tolist(){return XP(this.data,this.dims)}sigmoid(){return this.clone().sigmoid_()}sigmoid_(){let e=this.data;for(let r=0;r<e.length;++r)e[r]=1/(1+Math.exp(-e[r]));return this}map(e){return this.clone().map_(e)}map_(e){let r=this.data;for(let s=0;s<r.length;++s)r[s]=e(r[s],s,r);return this}mul(e){return this.clone().mul_(e)}mul_(e){let r=this.data;for(let s=0;s<r.length;++s)r[s]*=e;return this}div(e){return this.clone().div_(e)}div_(e){let r=this.data;for(let s=0;s<r.length;++s)r[s]/=e;return this}add(e){return this.clone().add_(e)}add_(e){let r=this.data;for(let s=0;s<r.length;++s)r[s]+=e;return this}sub(e){return this.clone().sub_(e)}sub_(e){let r=this.data;for(let s=0;s<r.length;++s)r[s]-=e;return this}clone(){return new t(this.type,this.data.slice(),this.dims.slice())}slice(...e){let r=[],s=[];for(let p=0;p<this.dims.length;++p){let f=e[p];if(f==null)s.push([0,this.dims[p]]),r.push(this.dims[p]);else if(typeof f=="number")f=mr(f,this.dims[p],p),s.push([f,f+1]);else if(Array.isArray(f)&&f.length===2){let[m,h]=f;if(m=m===null?0:mr(m,this.dims[p],p,!1),h=h===null?this.dims[p]:mr(h,this.dims[p],p,!1),m>h)throw new Error(`Invalid slice: ${f}`);let w=[Math.max(m,0),Math.min(h,this.dims[p])];s.push(w),r.push(w[1]-w[0])}else throw new Error(`Invalid slice: ${f}`)}let n=s.map(([p,f])=>f-p),o=n.reduce((p,f)=>p*f),a=this.data,i=new a.constructor(o),l=this.stride(),u=!0;for(let p=1;p<n.length;++p)if(s[p][0]!==0||s[p][1]!==this.dims[p]){u=!1;break}if(u){let p=s[0][0]*l[0],f=s[0][1]*l[0];if(ArrayBuffer.isView(a))i.set(a.subarray(p,f));else if(Array.isArray(a)){let m=a.slice(p,f);for(let h=0;h<m.length;++h)i[h]=m[h]}else throw new Error("Unsupported data type for slicing")}else for(let p=0;p<o;++p){let f=0;for(let m=n.length-1,h=p;m>=0;--m){let w=n[m];f+=(h%w+s[m][0])*l[m],h=Math.floor(h/w)}i[p]=a[f]}return new t(this.type,i,r)}permute(...e){return zA(this,e)}transpose(...e){return this.permute(...e)}sum(e=null,r=!1){return this.norm(1,e,r)}norm(e="fro",r=null,s=!1){if(e==="fro")e=2;else if(typeof e=="string")throw Error(`Unsupported norm: ${e}`);let n=this.data,o=(u,p)=>u+p**e;if(r===null){let u=n.reduce(o,0)**(1/e);return new t(this.type,[u],[])}let[a,i,l]=rl(o,this,r,s);if(e!==1)for(let u=0;u<i.length;++u)i[u]=i[u]**(1/e);return new t(a,i,l)}normalize_(e=2,r=1){r=mr(r,this.dims.length);let s=this.norm(e,r,!0),n=this.data,o=s.data;for(let a=0;a<n.length;++a){let i=0;for(let l=this.dims.length-1,u=a,p=1;l>=0;--l){let f=this.dims[l];if(l!==r){let m=u%f;i+=m*p,p*=this.dims[l]}u=Math.floor(u/f)}n[a]/=o[i]}return this}normalize(e=2,r=1){return this.clone().normalize_(e,r)}stride(){return sb(this.dims)}squeeze(e=null){return new t(this.type,this.data,CA(this.dims,e))}squeeze_(e=null){return this.dims=CA(this.dims,e),this}unsqueeze(e){return new t(this.type,this.data,PA(this.dims,e))}unsqueeze_(e){return this.dims=PA(this.dims,e),this}flatten_(e=0,r=-1){r=(r+this.dims.length)%this.dims.length;let s=this.dims.slice(0,e),n=this.dims.slice(e,r+1),o=this.dims.slice(r+1);return this.dims=[...s,n.reduce((a,i)=>a*i,1),...o],this}flatten(e=0,r=-1){return this.clone().flatten_(e,r)}view(...e){let r=-1;for(let n=0;n<e.length;++n)if(e[n]===-1){if(r!==-1)throw new Error("Only one dimension can be inferred");r=n}let s=this.data;if(r!==-1){let n=e.reduce((o,a,i)=>i!==r?o*a:o,1);e[r]=s.length/n}return new t(this.type,s,e)}neg_(){let e=this.data;for(let r=0;r<e.length;++r)e[r]=-e[r];return this}neg(){return this.clone().neg_()}gt(e){let r=new Uint8Array(this.data.length),s=this.data;for(let n=0;n<s.length;++n)r[n]=s[n]>e?1:0;return new t("bool",r,this.dims)}lt(e){let r=new Uint8Array(this.data.length),s=this.data;for(let n=0;n<s.length;++n)r[n]=s[n]<e?1:0;return new t("bool",r,this.dims)}clamp_(e,r){let s=this.data;for(let n=0;n<s.length;++n)s[n]=Math.min(Math.max(s[n],e),r);return this}clamp(e,r){return this.clone().clamp_(e,r)}round_(){let e=this.data;for(let r=0;r<e.length;++r)e[r]=Math.round(e[r]);return this}round(){return this.clone().round_()}mean(e=null,r=!1){return nl(this,e,r)}min(e=null,r=!1){if(e===null){let a=Wi(this.data)[0];return new t(this.type,[a],[])}let[s,n,o]=rl((a,i)=>Math.min(a,i),this,e,r,1/0);return new t(s,n,o)}max(e=null,r=!1){if(e===null){let a=Se(this.data)[0];return new t(this.type,[a],[])}let[s,n,o]=rl((a,i)=>Math.max(a,i),this,e,r,-1/0);return new t(s,n,o)}argmin(e=null,r=!1){if(e!==null)throw new Error("`dim !== null` not yet implemented.");let s=Wi(this.data)[1];return new t("int64",[BigInt(s)],[])}argmax(e=null,r=!1){if(e!==null)throw new Error("`dim !== null` not yet implemented.");let s=Se(this.data)[1];return new t("int64",[BigInt(s)],[])}repeat(...e){if(e.length<this.dims.length)throw new Error(`Number of dimensions of repeat dims (${e.length}) cannot be smaller than number of dimensions of tensor (${this.dims.length})`);if(e.every(p=>p===1)){if(e.length===this.dims.length)return this.clone();let p=e.length-this.dims.length,f=Array(p).fill(1).concat(this.dims);return new t(this.type,this.data.slice(),f)}let r=e.length-this.dims.length,s=Array(r).fill(1).concat(this.dims),n=s.map((p,f)=>p*e[f]),o=n.reduce((p,f)=>p*f,1),a=this.data,i=new a.constructor(o),l=sb(s),u=sb(n);for(let p=0;p<o;++p){let f=p,m=0;for(let h=0;h<n.length;++h){let w=Math.floor(f/u[h]);f=f%u[h];let x=w%s[h];m+=x*l[h]}i[p]=a[m]}return new t(this.type,i,n)}tile(...e){if(e.length<this.dims.length){let r=this.dims.length-e.length;e=Array(r).fill(1).concat(e)}return this.repeat(...e)}to(e){if(this.type===e)return this;if(!Cn.hasOwnProperty(e))throw new Error(`Unsupported type: ${e}`);let r,s=["int64","uint64"].includes(this.type),n=["int64","uint64"].includes(e);if(s&&!n)r=Number;else if(!s&&n)["float16","float32","float64"].includes(this.type)?r=o=>BigInt(Math.floor(o)):r=BigInt;else if(this.type==="float16"&&e=="float32"&&this.data instanceof Uint16Array)return new t(e,Xk(this.data),this.dims);return new t(e,Cn[e].from(this.data,r),this.dims)}};function XP(t,e){let r=t.length,s=e.reduce((o,a)=>o*a);if(r!==s)throw Error(`cannot reshape array of size ${r} into shape (${e})`);let n=t;for(let o=e.length-1;o>=0;o--)n=n.reduce((a,i)=>{let l=a[a.length-1];return l.length<e[o]?l.push(i):a.push([i]),a},[[]]);return n[0]}function zA(t,e){let[r,s]=jk(t.data,t.dims,e);return new D(t.type,r,s)}function Ku(t,[e,r],s="bilinear",n=!1){let o=t.dims.at(-3)??1,a=t.dims.at(-2),i=t.dims.at(-1),l=Fk(t.data,[o,a,i],[e,r],s,n);return new D(t.type,l,[o,e,r])}async function $t(t,{size:e=null,mode:r="bilinear"}={}){if(t.dims.length!==4)throw new Error("`interpolate_4d` currently only supports 4D input.");if(!e)throw new Error("`interpolate_4d` requires a `size` argument.");let s;if(e.length===2)s=[...t.dims.slice(0,2),...e];else if(e.length===3)s=[t.dims[0],...e];else if(e.length===4)s=e;else throw new Error("`size` must be of length 2, 3, or 4.");let n;if(r==="nearest")n=await dr.nearest_interpolate_4d;else if(r==="bilinear")n=await dr.bilinear_interpolate_4d;else if(r==="bicubic")n=await dr.bicubic_interpolate_4d;else throw new Error(`Unsupported mode: ${r}`);let o=new D("int64",new BigInt64Array(s.map(BigInt)),[s.length]);return await n({x:t,s:o})}async function nb(t,e){return await(await dr.matmul)({a:t,b:e})}async function KP(t,e){return await(await dr.rfft)({x:t,a:e})}async function Wt(t,e){let r=await dr.top_k;return e==null?e=t.dims.at(-1):e=Math.min(e,t.dims.at(-1)),await r({x:t,k:new D("int64",[BigInt(e)],[1])})}var Xu=t=>new D("int64",t,[t.length]);async function sl(t,e,r,s,n){return await(await dr.slice)({x:t,s:Xu(e),e:Xu(r),a:Xu(s),t:Xu(n??new Array(s.length).fill(1))})}function ob(t,e){let r=t.data,s=e.data,n=[t.dims[0],t.dims[2]],o=new r.constructor(n[0]*n[1]),[a,i,l]=t.dims,u=0;for(let p=0;p<a;++p){let f=p*l*i;for(let m=0;m<l;++m){let h=0,w=0,x=p*i,k=f+m;for(let A=0;A<i;++A){let S=Number(s[x+A]);w+=S,h+=r[k+A*l]*S}let E=h/w;o[u++]=E}}return new D(t.type,o,n)}function YP(t,e,{eps:r=1e-5}={}){if(t.dims.length!==2)throw new Error("`layer_norm` currently only supports 2D input.");let[s,n]=t.dims;if(e.length!==1&&e[0]!==n)throw new Error("`normalized_shape` must be a 1D array with shape `[input.dims[1]]`.");let[o,a]=Yu(t,1,0,!0),i=o.data,l=a.data,u=t.data,p=new u.constructor(u.length);for(let f=0;f<s;++f){let m=f*n;for(let h=0;h<n;++h){let w=m+h;p[w]=(u[w]-l[f])/(i[f]+r)}}return new D(t.type,p,t.dims)}function CA(t,e){return t=t.slice(),e===null?t=t.filter(r=>r!==1):typeof e=="number"?t[e]===1&&t.splice(e,1):Array.isArray(e)&&(t=t.filter((r,s)=>r!==1||!e.includes(s))),t}function PA(t,e){return e=mr(e,t.length+1),t=t.slice(),t.splice(e,0,1),t}function mr(t,e,r=null,s=!0){if(t<-e||t>=e){if(s)throw new Error(`IndexError: index ${t} is out of bounds for dimension${r===null?"":" "+r} with size ${e}`);return t<-e?0:e}return t<0&&(t=(t%e+e)%e),t}function Ee(t,e=0){e=mr(e,t[0].dims.length);let r=t[0].dims.slice();r[e]=t.reduce((a,i)=>a+i.dims[e],0);let s=r.reduce((a,i)=>a*i,1),n=new t[0].data.constructor(s),o=t[0].type;if(e===0){let a=0;for(let i of t){let l=i.data;n.set(l,a),a+=l.length}}else{let a=0;for(let i=0;i<t.length;++i){let{data:l,dims:u}=t[i];for(let p=0;p<l.length;++p){let f=0;for(let m=u.length-1,h=p,w=1;m>=0;--m){let x=u[m],k=h%x;m===e&&(k+=a),f+=k*w,w*=r[m],h=Math.floor(h/x)}n[f]=l[p]}a+=u[e]}}return new D(o,n,r)}function Rt(t,e=0){return Ee(t.map(r=>r.unsqueeze(e)),e)}function rl(t,e,r,s=!1,n=null){let o=e.data,a=e.dims;r=mr(r,a.length);let i=a.slice();i[r]=1;let l=new o.constructor(o.length/a[r]);n!==null&&l.fill(n);for(let u=0;u<o.length;++u){let p=0;for(let f=a.length-1,m=u,h=1;f>=0;--f){let w=a[f];if(f!==r){let x=m%w;p+=x*h,h*=i[f]}m=Math.floor(m/w)}l[p]=t(l[p],o[u],u,p)}return s||i.splice(r,1),[e.type,l,i]}function Yu(t,e=null,r=1,s=!1){let n=t.data,o=t.dims;if(e===null){let h=n.reduce((E,A)=>E+A,0)/n.length,w=Math.sqrt(n.reduce((E,A)=>E+(A-h)**2,0)/(n.length-r)),x=new D(t.type,[h],[]);return[new D(t.type,[w],[]),x]}e=mr(e,o.length);let a=nl(t,e,s),i=a.data,[l,u,p]=rl((m,h,w,x)=>m+(h-i[x])**2,t,e,s);for(let m=0;m<u.length;++m)u[m]=Math.sqrt(u[m]/(o[e]-r));return[new D(l,u,p),a]}function nl(t,e=null,r=!1){let s=t.dims,n=t.data;if(e===null){let l=n.reduce((u,p)=>u+p,0);return new D(t.type,[l/n.length],[])}e=mr(e,s.length);let[o,a,i]=rl((l,u)=>l+u,t,e,r);if(s[e]!==1)for(let l=0;l<a.length;++l)a[l]/=s[e];return new D(o,a,i)}function sb(t){let e=new Array(t.length);for(let r=t.length-1,s=1;r>=0;--r)e[r]=s,s*=t[r];return e}function ab(t,e,r,s){let n=t.reduce((o,a)=>o*a,1);return new D(r,new s(n).fill(e),t)}function qe(t,e){let r,s;if(typeof e=="number")r="float32",s=Float32Array;else if(typeof e=="bigint")r="int64",s=BigInt64Array;else if(typeof e=="boolean")r="bool",s=Uint8Array;else throw new Error(`Unsupported data type: ${typeof e}`);return ab(t,e,r,s)}function Pn(t,e){return qe(t.dims,e)}function st(t){return ab(t,1n,"int64",BigInt64Array)}function ol(t){return st(t.dims)}function Qu(t){return ab(t,0n,"int64",BigInt64Array)}function Ju(t){return Qu(t.dims)}function QP(t){let e=t.reduce((r,s)=>r*s,1);return new D("float32",Float32Array.from({length:e},()=>ss.random()),t)}function ib(t){let e=t.reduce((r,s)=>r*s,1);return new D("float32",Float32Array.from({length:e},()=>ss.gauss()),t)}function lb(t,e){if(t.dims.length!==2)throw new Error("The tensor must have 2 dimensions");if(t.dims.at(-1)%8!==0)throw new Error("The last dimension of the tensor must be a multiple of 8");if(!["binary","ubinary"].includes(e))throw new Error("The precision must be either 'binary' or 'ubinary'");let r=e==="binary",s=r?"int8":"uint8",n=r?Int8Array:Uint8Array,o=t.data,a=new n(o.length/8);for(let i=0;i<o.length;++i){let l=o[i]>0?1:0,u=Math.floor(i/8),p=i%8;a[u]|=l<<7-p,r&&p===0&&(a[u]-=128)}return new D(s,a,[t.dims[0],t.dims[1]/8])}async function zn(t){if(!t)throw new Error("modelId is required for get_tokenizer_files");return(await pr(t,"tokenizer_config.json",{})).exists?["tokenizer.json","tokenizer_config.json"]:[]}async function cb(t,e){let r=await zn(t);return await Promise.all(r.map(s=>ut(t,s,!0,e)))}function ub(t){let e=t.dims;switch(e.length){case 1:return t.tolist();case 2:if(e[0]!==1)throw new Error("Unable to decode tensor with `batch size !== 1`. Use `tokenizer.batch_decode(...)` for batched inputs.");return t.tolist()[0];default:throw new Error(`Expected tensor to have 1-2 dimensions, got ${e.length}.`)}}var JP=["bos_token","eos_token","unk_token","sep_token","pad_token","cls_token","mask_token"];function ZP(t,e,r,s){for(let n of Object.keys(t)){let o=e-t[n].length,a=r(n),i=new Array(o).fill(a);t[n]=s==="right"?ft(t[n],i):ft(i,t[n])}}function ez(t,e){for(let r of Object.keys(t))t[r].length=e}function Bs(t,...e){for(let r of e){if(!Object.hasOwn(t,r))continue;let s=t[r];if(s)if(typeof s=="object"){if(s.__type==="AddedToken")return s.content;throw Error(`Unknown token: ${s}`)}else return s}return null}function tz(t){let e=[];for(let r of t.get_added_tokens_decoder().values())r.special&&e.push(r);return e}var q=class extends Ze{return_token_type_ids=!1;padding_side="right";constructor(e,r){if(super(),this._tokenizerJSON=e,this._tokenizerConfig=r,this._tokenizer=new bk(e,r),this.config=r,this.padding_side=r.padding_side??this.padding_side,this.mask_token=Bs(r,"mask_token"),this.mask_token_id=this._tokenizer.token_to_id(this.mask_token),this.pad_token=Bs(r,"pad_token","eos_token"),this.pad_token_id=this._tokenizer.token_to_id(this.pad_token),this.sep_token=Bs(r,"sep_token"),this.sep_token_id=this._tokenizer.token_to_id(this.sep_token),this.unk_token=Bs(r,"unk_token"),this.unk_token_id=this._tokenizer.token_to_id(this.unk_token),this.bos_token=Bs(r,"bos_token"),this.bos_token_id=this._tokenizer.token_to_id(this.bos_token),this.eos_token=Bs(r,"eos_token"),this.eos_token_id=this._tokenizer.token_to_id(this.eos_token),this.chat_template=r.chat_template??null,Array.isArray(this.chat_template)){let n=Object.create(null);for(let{name:o,template:a}of this.chat_template){if(typeof o!="string"||typeof a!="string")throw new Error('Chat template must be a list of objects with "name" and "template" properties');n[o]=a}this.chat_template=n}this._compiled_template_cache=new Map;let s=tz(this._tokenizer);this.all_special_ids=s.map(n=>n.id),this.all_special_tokens=s.map(n=>n.content)}static async from_pretrained(e,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main"}={}){let i=await cb(e,{progress_callback:r,config:s,cache_dir:n,local_files_only:o,revision:a});return new this(...i)}get_vocab(){return this._tokenizer.get_vocab()}get model_max_length(){return this._tokenizerConfig.model_max_length??1/0}get add_eos_token(){return this._tokenizerConfig.add_eos_token}get add_bos_token(){return this._tokenizerConfig.add_bos_token}convert_tokens_to_ids(e){return typeof e=="string"?this._tokenizer.token_to_id(e):e.map(r=>this._tokenizer.token_to_id(r))}_call(e,{text_pair:r=null,add_special_tokens:s=!0,padding:n=!1,truncation:o=null,max_length:a=null,return_tensor:i=!0,return_token_type_ids:l=null}={}){let u=Array.isArray(e),p;if(u){if(e.length===0)throw Error("text array must be non-empty");if(r!==null){if(Array.isArray(r)){if(e.length!==r.length)throw Error("text and text_pair must have the same length")}else throw Error("text_pair must also be an array");p=e.map((m,h)=>this._encode_plus(m,{text_pair:r[h],add_special_tokens:s,return_token_type_ids:l}))}else p=e.map(m=>this._encode_plus(m,{add_special_tokens:s,return_token_type_ids:l}))}else{if(e==null)throw Error("text may not be null or undefined");if(Array.isArray(r))throw Error("When specifying `text_pair`, since `text` is a string, `text_pair` must also be a string (i.e., not an array).");p=[this._encode_plus(e,{text_pair:r,add_special_tokens:s,return_token_type_ids:l})]}if(a===null?a=this.model_max_length:o===null&&(n===!0?(Q.warn("`max_length` is ignored when `padding: true` and there is no truncation strategy. To pad to max length, use `padding: 'max_length'`."),a=this.model_max_length):n===!1&&(Q.warn("Truncation was not explicitly activated but `max_length` is provided a specific value, please use `truncation: true` to explicitly truncate examples to max length."),o=!0)),n===!0&&(a=Math.min(Se(p.map(m=>m.input_ids.length))[0],a??1/0)),a=Math.min(a,this.model_max_length??1/0),n||o)for(let m=0;m<p.length;++m)p[m].input_ids.length!==a&&(p[m].input_ids.length>a?o&&ez(p[m],a):n&&ZP(p[m],a,h=>h==="input_ids"?this.pad_token_id:0,this.padding_side));let f={};if(i){if(!(n&&o)&&p.some(h=>{for(let w of Object.keys(h))if(h[w].length!==p[0][w]?.length)return!0;return!1}))throw Error("Unable to create tensor, you should probably activate truncation and/or padding with 'padding=true' and 'truncation=true' to have batched tensors with the same length.");let m=[p.length,p[0].input_ids.length];for(let h of Object.keys(p[0]))f[h]=new D("int64",BigInt64Array.from(p.flatMap(w=>w[h]).map(BigInt)),m)}else{for(let m of Object.keys(p[0]))f[m]=p.map(h=>h[m]);if(!u)for(let m of Object.keys(f))f[m]=f[m][0]}return f}_encode_text(e){return e===null?null:this._tokenizer.encode(e).tokens}_encode_plus(e,{text_pair:r=null,add_special_tokens:s=!0,return_token_type_ids:n=null}={}){let{ids:o,attention_mask:a,token_type_ids:i}=this._tokenizer.encode(e,{text_pair:r,add_special_tokens:s,return_token_type_ids:n??this.return_token_type_ids});return{input_ids:o,attention_mask:a,...i?{token_type_ids:i}:{}}}tokenize(e,{pair:r=null,add_special_tokens:s=!1}={}){return this._tokenizer.tokenize(e,{text_pair:r,add_special_tokens:s})}encode(e,{text_pair:r=null,add_special_tokens:s=!0,return_token_type_ids:n=null}={}){return this._tokenizer.encode(e,{text_pair:r,add_special_tokens:s,return_token_type_ids:n}).ids}batch_decode(e,r={}){return e instanceof D&&(e=e.tolist()),e.map(s=>this.decode(s,r))}decode(e,r={}){if(e instanceof D&&(e=ub(e)),!Array.isArray(e)||e.length===0||!sk(e[0]))throw Error("token_ids must be a non-empty array of integers.");return this.decode_single(e,r)}decode_single(e,{skip_special_tokens:r=!1,clean_up_tokenization_spaces:s=null}){return this._tokenizer.decode(e,{skip_special_tokens:r,clean_up_tokenization_spaces:s})}get_chat_template({chat_template:e=null,tools:r=null}={}){if(this.chat_template&&typeof this.chat_template=="object"){let s=this.chat_template;if(e!==null&&Object.hasOwn(s,e))e=s[e];else if(e===null)if(r!==null&&"tool_use"in s)e=s.tool_use;else if("default"in s)e=s.default;else throw Error(`This model has multiple chat templates with no default specified! Please either pass a chat template or the name of the template you wish to use to the 'chat_template' argument. Available template names are ${Object.keys(s).sort()}.`)}else if(e===null)if(this.chat_template)e=this.chat_template;else throw Error("Cannot use apply_chat_template() because tokenizer.chat_template is not set and no template argument was passed! For information about writing templates and setting the tokenizer.chat_template attribute, please see the documentation at https://huggingface.co/docs/transformers/main/en/chat_templating");return e}apply_chat_template(e,{tools:r=null,documents:s=null,chat_template:n=null,add_generation_prompt:o=!1,tokenize:a=!0,padding:i=!1,truncation:l=!1,max_length:u=null,return_tensor:p=!0,return_dict:f=!0,tokenizer_kwargs:m={},...h}={}){if(n=this.get_chat_template({chat_template:n,tools:r}),typeof n!="string")throw Error(`chat_template must be a string, but got ${typeof n}`);let w=this._compiled_template_cache.get(n);w===void 0&&(w=new zk(n),this._compiled_template_cache.set(n,w));let x=Object.create(null);for(let E of JP){let A=Bs(this.config,E);A&&(x[E]=A)}let k=w.render({messages:e,add_generation_prompt:o,tools:r,documents:s,...x,...h});if(a){let E=this._call(k,{add_special_tokens:!1,padding:i,truncation:l,max_length:u,return_tensor:p,...m});return f?E:E.input_ids}return k}};function Ln(t,e,r,s){if(!("language_codes"in t)||!Array.isArray(t.language_codes))throw new Error("Tokenizer must have `language_codes` attribute set and it should be an array of language ids.");if(!("languageRegex"in t)||!(t.languageRegex instanceof RegExp))throw new Error("Tokenizer must have `languageRegex` attribute set and it should be a regular expression.");if(!("lang_to_token"in t)||typeof t.lang_to_token!="function")throw new Error("Tokenizer must have `lang_to_token` attribute set and it should be a function.");let n=s.src_lang,o=s.tgt_lang;if(!t.language_codes.includes(o))throw new Error(`Target language code "${o}" is not valid. Must be one of: {${t.language_codes.join(", ")}}`);if(n!==void 0){if(!t.language_codes.includes(n))throw new Error(`Source language code "${n}" is not valid. Must be one of: {${t.language_codes.join(", ")}}`);for(let a of t._tokenizer.post_processor.config.single)if("SpecialToken"in a&&t.languageRegex.test(a.SpecialToken.id)){a.SpecialToken.id=t.lang_to_token(n);break}}return s.forced_bos_token_id=t._tokenizer.token_to_id(t.lang_to_token(o)),t._call(e,r)}var db={};ks(db,{AlbertTokenizer:()=>Zu,AutoTokenizer:()=>Z,BartTokenizer:()=>ep,BertTokenizer:()=>tp,BlenderbotSmallTokenizer:()=>rp,BlenderbotTokenizer:()=>sp,BloomTokenizer:()=>np,CLIPTokenizer:()=>ap,CamembertTokenizer:()=>op,CodeGenTokenizer:()=>lp,CodeLlamaTokenizer:()=>ip,CohereTokenizer:()=>cp,ConvBertTokenizer:()=>up,DebertaTokenizer:()=>dp,DebertaV2Tokenizer:()=>pp,DistilBertTokenizer:()=>fp,ElectraTokenizer:()=>mp,EsmTokenizer:()=>hp,FalconTokenizer:()=>_p,GPT2Tokenizer:()=>xp,GPTNeoXTokenizer:()=>wp,GemmaTokenizer:()=>gp,HerbertTokenizer:()=>yp,LlamaTokenizer:()=>bp,M2M100Tokenizer:()=>vp,MBart50Tokenizer:()=>Ep,MBartTokenizer:()=>Nn,MPNetTokenizer:()=>Tp,MarianTokenizer:()=>kp,MgpstrTokenizer:()=>Ap,MobileBertTokenizer:()=>Mp,NllbTokenizer:()=>Sp,NougatTokenizer:()=>Op,PreTrainedTokenizer:()=>q,Qwen2Tokenizer:()=>Ip,RoFormerTokenizer:()=>Pp,RobertaTokenizer:()=>Cp,SiglipTokenizer:()=>zp,SpeechT5Tokenizer:()=>Lp,SqueezeBertTokenizer:()=>Np,T5Tokenizer:()=>$p,TokenizersBackend:()=>q,VitsTokenizer:()=>Rp,Wav2Vec2CTCTokenizer:()=>Dp,WhisperTokenizer:()=>Up,XLMRobertaTokenizer:()=>Bp,XLMTokenizer:()=>Fp});var Zu=class extends q{return_token_type_ids=!0};var ep=class extends q{};var tp=class extends q{return_token_type_ids=!0};var rp=class extends q{};var sp=class extends q{};var np=class extends q{};var op=class extends q{};var ap=class extends q{};var ip=class extends q{};var lp=class extends q{};var cp=class extends q{};var up=class extends q{return_token_type_ids=!0};var pp=class extends q{return_token_type_ids=!0};var dp=class extends q{return_token_type_ids=!0};var fp=class extends q{};var mp=class extends q{return_token_type_ids=!0};var hp=class extends q{};var _p=class extends q{};var gp=class extends q{};var wp=class extends q{};var xp=class extends q{};var yp=class extends q{return_token_type_ids=!0};var bp=class extends q{padding_side="left"};var vp=class extends q{constructor(e,r){super(e,r),this.languageRegex=/^__[a-z]{2,3}__$/,this.language_codes=this.all_special_tokens.filter(s=>this.languageRegex.test(s)).map(s=>s.slice(2,-2)),this.lang_to_token=s=>`__${s}__`}_build_translation_inputs(e,r,s){return Ln(this,e,r,s)}};var kp=class extends q{constructor(e,r){super(e,r),this.languageRegex=/^(>>\w+<<)\s*/g,this.supported_language_codes=Array.from(this.get_vocab().keys()).filter(s=>this.languageRegex.test(s)),Q.warn('WARNING: `MarianTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}_encode_text(e){if(e===null)return null;let[r,...s]=e.trim().split(this.languageRegex);if(s.length===0)return super._encode_text(r);if(s.length===2){let[n,o]=s;return this.supported_language_codes.includes(n)||Q.warn(`Unsupported language code "${n}" detected, which may lead to unexpected behavior. Should be one of: ${JSON.stringify(this.supported_language_codes)}`),ft([n],super._encode_text(o))}}};var Nn=class extends q{constructor(e,r){super(e,r),this.languageRegex=/^[a-z]{2}_[A-Z]{2}$/,this.language_codes=this.all_special_tokens.filter(s=>this.languageRegex.test(s)).map(s=>s),this.lang_to_token=s=>s}_build_translation_inputs(e,r,s){return Ln(this,e,r,s)}};var Ep=class extends Nn{};var Ap=class extends q{};var Mp=class extends q{return_token_type_ids=!0};var Tp=class extends q{};var Sp=class extends q{constructor(e,r){super(e,r),this.languageRegex=/^[a-z]{3}_[A-Z][a-z]{3}$/,this.language_codes=this.all_special_tokens.filter(s=>this.languageRegex.test(s)),this.lang_to_token=s=>s}_build_translation_inputs(e,r,s){return Ln(this,e,r,s)}};var Op=class extends q{};var Ip=class extends q{};var Cp=class extends q{};var Pp=class extends q{return_token_type_ids=!0};var zp=class extends q{};var Lp=class extends q{};var Np=class extends q{return_token_type_ids=!0};var $p=class extends q{};var pb=class extends Ft{decode_chain(e){let r="";for(let s=1;s<e.length;s+=2)r+=e[s];return[r]}},Rp=class extends q{constructor(e,r){super(e,r),this._tokenizer.decoder=new pb({type:"VitsDecoder"})}};var Dp=class extends q{};var LA=[["en","english"],["zh","chinese"],["de","german"],["es","spanish"],["ru","russian"],["ko","korean"],["fr","french"],["ja","japanese"],["pt","portuguese"],["tr","turkish"],["pl","polish"],["ca","catalan"],["nl","dutch"],["ar","arabic"],["sv","swedish"],["it","italian"],["id","indonesian"],["hi","hindi"],["fi","finnish"],["vi","vietnamese"],["he","hebrew"],["uk","ukrainian"],["el","greek"],["ms","malay"],["cs","czech"],["ro","romanian"],["da","danish"],["hu","hungarian"],["ta","tamil"],["no","norwegian"],["th","thai"],["ur","urdu"],["hr","croatian"],["bg","bulgarian"],["lt","lithuanian"],["la","latin"],["mi","maori"],["ml","malayalam"],["cy","welsh"],["sk","slovak"],["te","telugu"],["fa","persian"],["lv","latvian"],["bn","bengali"],["sr","serbian"],["az","azerbaijani"],["sl","slovenian"],["kn","kannada"],["et","estonian"],["mk","macedonian"],["br","breton"],["eu","basque"],["is","icelandic"],["hy","armenian"],["ne","nepali"],["mn","mongolian"],["bs","bosnian"],["kk","kazakh"],["sq","albanian"],["sw","swahili"],["gl","galician"],["mr","marathi"],["pa","punjabi"],["si","sinhala"],["km","khmer"],["sn","shona"],["yo","yoruba"],["so","somali"],["af","afrikaans"],["oc","occitan"],["ka","georgian"],["be","belarusian"],["tg","tajik"],["sd","sindhi"],["gu","gujarati"],["am","amharic"],["yi","yiddish"],["lo","lao"],["uz","uzbek"],["fo","faroese"],["ht","haitian creole"],["ps","pashto"],["tk","turkmen"],["nn","nynorsk"],["mt","maltese"],["sa","sanskrit"],["lb","luxembourgish"],["my","myanmar"],["bo","tibetan"],["tl","tagalog"],["mg","malagasy"],["as","assamese"],["tt","tatar"],["haw","hawaiian"],["ln","lingala"],["ha","hausa"],["ba","bashkir"],["jw","javanese"],["su","sundanese"]],al=new Map(LA),rz=new Map([...LA.map(([t,e])=>[e,t]),["burmese","my"],["valencian","ca"],["flemish","nl"],["haitian","ht"],["letzeburgesch","lb"],["pushto","ps"],["panjabi","pa"],["moldavian","ro"],["moldovan","ro"],["sinhalese","si"],["castilian","es"]]);function NA(t){t=t.toLowerCase();let e=rz.get(t);if(e===void 0){let r=t.match(/^<\|([a-z]{2})\|>$/);if(r&&(t=r[1]),al.has(t))e=t;else{let n=t.length===2?al.keys():al.values();throw new Error(`Language "${t}" is not supported. Must be one of: ${JSON.stringify(Array.from(n))}`)}}return e}var sz="\\p{P}\\u0021-\\u002F\\u003A-\\u0040\\u005B-\\u0060\\u007B-\\u007E",$A=new RegExp(`^[${sz}]+$`,"gu"),Up=class extends q{get timestamp_begin(){return this._tokenizer.token_to_id("<|notimestamps|>")+1}_decode_asr(e,{return_timestamps:r=!1,return_language:s=!1,time_precision:n=null,force_full_sequences:o=!0}={}){if(n===null)throw Error("Must specify time_precision");let a=null,i=r==="word";function l(){return{language:a,timestamp:[null,null],text:""}}let u=[],p=l(),f=0,m=this.timestamp_begin,w=m+1500,x=[],k=[],E=!1,A=null,S=new Set(this.all_special_ids);for(let C of e){let v=C.tokens,F=i?C.token_timestamps:null,H=null,V=m;if("stride"in C){let[Y,U,z]=C.stride;if(f-=U,A=Y-z,U&&(V=U/n+m),z)for(let ne=v.length-1;ne>=0;--ne){let ae=Number(v[ne]);if(ae>=m){if(H!==null&&(ae-m)*n<A)break;H=ae}}}let J=[],X=[];for(let Y=0;Y<v.length;++Y){let U=Number(v[Y]);if(S.has(U)){let z=this.decode([U]),ne=al.get(z.slice(2,-2));if(ne!==void 0){if(a!==null&&ne!==a&&!r){x.push(J);let ae=this.findLongestCommonSequence(x)[0],I=this.decode(ae);p.text=I,u.push(p),x=[],J=[],p=l()}a=p.language=ne}}else if(U>=m&&U<=w){let z=(U-m)*n+f,ne=Is(z,2);if(H!==null&&U>=H)E=!0;else if(E||x.length>0&&U<V)E=!1;else if(p.timestamp[0]===null)p.timestamp[0]=ne;else if(ne!==p.timestamp[0]){p.timestamp[1]=ne,x.push(J),i&&k.push(X);let[ae,I]=this.findLongestCommonSequence(x,k),L=this.decode(ae);p.text=L,i&&(p.words=this.collateWordTimestamps(ae,I,a)),u.push(p),x=[],J=[],k=[],X=[],p=l()}}else if(J.push(U),i){let z=Is(F[Y]+f,2),ne;if(Y+1<F.length){ne=Is(F[Y+1]+f,2);let ae=this.decode([U]);$A.test(ae)&&(ne=Is(Math.min(z+n,ne),2))}else ne=null;X.push([z,ne])}}if("stride"in C){let[Y,U,z]=C.stride;f+=Y-z}J.length>0?(x.push(J),i&&k.push(X)):x.every(Y=>Y.length===0)&&(p=l(),x=[],J=[],k=[],X=[])}if(x.length>0){if(o&&r)throw new Error("Whisper did not predict an ending timestamp, which can happen if audio is cut off in the middle of a word. Also make sure WhisperTimeStampLogitsProcessor was used during generation.");let[C,v]=this.findLongestCommonSequence(x,k),F=this.decode(C);p.text=F,i&&(p.words=this.collateWordTimestamps(C,v,a)),u.push(p)}let T=Object.create(null),P=u.map(C=>C.text).join("");if(r||s){for(let C=0;C<u.length;++C){let v=u[C];r||delete v.timestamp,s||delete v.language}if(i){let C=[];for(let v of u)for(let F of v.words)C.push(F);T={chunks:C}}else T={chunks:u}}return[P,T]}findLongestCommonSequence(e,r=null){let s=e[0],n=s.length,o=[],a=Array.isArray(r)&&r.length>0,i=a?[]:null,l=a?r[0]:null;for(let u=1;u<e.length;++u){let p=e[u],f=0,m=[n,n,0,0],h=p.length;for(let T=1;T<n+h;++T){let P=Math.max(0,n-T),C=Math.min(n,n+h-T),v=s.slice(P,C),F=Math.max(0,T-n),H=Math.min(h,T),V=p.slice(F,H);if(v.length!==V.length)throw new Error("There is a bug within whisper `decode_asr` function, please report it. Dropping to prevent bad inference.");let J;a?J=v.filter((U,z)=>U===V[z]&&l[P+z]<=r[u][F+z]).length:J=v.filter((U,z)=>U===V[z]).length;let X=T/1e4,Y=J/T+X;J>1&&Y>f&&(f=Y,m=[P,C,F,H])}let[w,x,k,E]=m,A=Math.floor((x+w)/2),S=Math.floor((E+k)/2);o.push(...s.slice(0,A)),s=p.slice(S),n=s.length,a&&(i.push(...l.slice(0,A)),l=r[u].slice(S))}return o.push(...s),a?(i.push(...l),[o,i]):[o,[]]}collateWordTimestamps(e,r,s){let[n,o,a]=this.combineTokensIntoWords(e,s),i=[];for(let l=0;l<n.length;++l){let u=a[l];i.push({text:n[l],timestamp:[r[u.at(0)][0],r[u.at(-1)][1]]})}return i}combineTokensIntoWords(e,r,s=`"'\u201C\xA1\xBF([{-`,n=`"'.\u3002,\uFF0C!\uFF01?\uFF1F:\uFF1A\u201D)]}\u3001`){r=r??"english";let o,a,i;return["chinese","japanese","thai","lao","myanmar"].includes(r)?[o,a,i]=this.splitTokensOnUnicode(e):[o,a,i]=this.splitTokensOnSpaces(e),this.mergePunctuations(o,a,i,s,n)}decode(e,r){let s;return r?.decode_with_timestamps?(e instanceof D&&(e=ub(e)),s=this.decodeWithTimestamps(e,r)):s=super.decode(e,r),s}decodeWithTimestamps(e,r){let s=r?.time_precision??.02,n=this.all_special_ids.at(-1)+1,o=[[]];for(let a of e)if(a=Number(a),a>=n){let i=((a-n)*s).toFixed(2);o.push(`<|${i}|>`),o.push([])}else o[o.length-1].push(a);return o=o.map(a=>typeof a=="string"?a:super.decode(a,r)),o.join("")}splitTokensOnUnicode(e){let r=this.decode(e,{decode_with_timestamps:!0}),s="\uFFFD",n=[],o=[],a=[],i=[],l=[],u=0;for(let p=0;p<e.length;++p){let f=e[p];i.push(f),l.push(p);let m=this.decode(i,{decode_with_timestamps:!0});(!m.includes(s)||r[u+m.indexOf(s)]===s)&&(n.push(m),o.push(i),a.push(l),i=[],l=[],u+=m.length)}return[n,o,a]}splitTokensOnSpaces(e){let[r,s,n]=this.splitTokensOnUnicode(e),o=[],a=[],i=[];for(let l=0;l<r.length;++l){let u=r[l],p=s[l],f=n[l],m=p[0]>=this._tokenizer.token_to_id("<|endoftext|>"),h=u.startsWith(" "),w=u.trim(),x=$A.test(w);if(m||h||x||o.length===0)o.push(u),a.push(p),i.push(f);else{let k=o.length-1;o[k]+=u,a[k].push(...p),i[k].push(...f)}}return[o,a,i]}mergePunctuations(e,r,s,n,o){let a=structuredClone(e),i=structuredClone(r),l=structuredClone(s),u=a.length-2,p=a.length-1;for(;u>=0;)a[u].startsWith(" ")&&n.includes(a[u].trim())?(a[p]=a[u]+a[p],i[p]=ft(i[u],i[p]),l[p]=ft(l[u],l[p]),a[u]="",i[u]=[],l[u]=[]):p=u,--u;for(u=0,p=1;p<a.length;)!a[u].endsWith(" ")&&o.includes(a[p])?(a[u]+=a[p],i[u]=ft(i[u],i[p]),l[u]=ft(l[u],l[p]),a[p]="",i[p]=[],l[p]=[]):u=p,++p;return[a.filter(f=>f),i.filter(f=>f.length>0),l.filter(f=>f.length>0)]}};var Bp=class extends q{};var Fp=class extends q{return_token_type_ids=!0;constructor(e,r){super(e,r),Q.warn('WARNING: `XLMTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}};var Z=class{static async from_pretrained(e,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main"}={}){let[i,l]=await cb(e,{progress_callback:r,config:s,cache_dir:n,local_files_only:o,revision:a}),u=l.tokenizer_class?.replace(/Fast$/,"")??"PreTrainedTokenizer",p=db[u];return p||(Q.warn(`Unknown tokenizer class "${u}", attempting to construct from base class.`),p=q),new p(i,l)}};var ns="https://github.com/huggingface/transformers.js/issues/new/choose";var il="preprocessor_config.json",Or=il,RA="processor_config.json",DA="chat_template.jinja";var oe=class extends Ze{static classes=["image_processor_class","tokenizer_class","feature_extractor_class"];static uses_processor_config=!1;static uses_chat_template_file=!1;constructor(e,r,s){super(),this.config=e,this.components=r,this.chat_template=s}get image_processor(){return this.components.image_processor}get tokenizer(){return this.components.tokenizer}get feature_extractor(){return this.components.feature_extractor}apply_chat_template(e,r={}){if(!this.tokenizer)throw new Error("Unable to apply chat template without a tokenizer.");return this.tokenizer.apply_chat_template(e,{tokenize:!1,chat_template:this.chat_template??void 0,...r})}batch_decode(...e){if(!this.tokenizer)throw new Error("Unable to decode without a tokenizer.");return this.tokenizer.batch_decode(...e)}decode(...e){if(!this.tokenizer)throw new Error("Unable to decode without a tokenizer.");return this.tokenizer.decode(...e)}async _call(e,...r){for(let s of[this.image_processor,this.feature_extractor,this.tokenizer])if(s)return s(e,...r);throw new Error("No image processor, feature extractor, or tokenizer found.")}static async from_pretrained(e,r={}){let[s,n,o]=await Promise.all([this.uses_processor_config?ut(e,RA,!0,r):{},Promise.all(this.classes.filter(a=>a in this).map(async a=>{let i=await this[a].from_pretrained(e,r);return[a.replace(/_class$/,""),i]})).then(Object.fromEntries),this.uses_chat_template_file?n0(e,DA,!0,r):null]);return new this(s,n,o)}};var _f={};ks(_f,{ChatterboxProcessor:()=>sd,Florence2Processor:()=>Hd,Gemma3nProcessor:()=>Xd,GroundingDinoProcessor:()=>Kd,Idefics3Processor:()=>El,JinaCLIPProcessor:()=>Qd,LlavaProcessor:()=>Jd,MgpstrProcessor:()=>Zd,MoonshineProcessor:()=>ef,OwlViTProcessor:()=>tf,PaliGemmaProcessor:()=>rf,Phi3VProcessor:()=>sf,PixtralProcessor:()=>nf,Processor:()=>oe,PyAnnoteProcessor:()=>of,Qwen2VLProcessor:()=>qn,Qwen2_5_VLProcessor:()=>Wn,Qwen3VLProcessor:()=>af,Sam2Processor:()=>Al,Sam2VideoProcessor:()=>lf,SamProcessor:()=>Vn,SmolVLMProcessor:()=>El,SpeechT5Processor:()=>cf,UltravoxProcessor:()=>uf,VLChatProcessor:()=>Yd,VoxtralProcessor:()=>df,Wav2Vec2Processor:()=>ff,Wav2Vec2ProcessorWithLM:()=>mf,WhisperProcessor:()=>hf});var Ne=class extends Ze{constructor(e){super(),this.config=e}static async from_pretrained(e,r={}){let s=await ut(e,il,!0,r);return new this(s)}};function Xe(t,e){if(!(t instanceof Float32Array||t instanceof Float64Array))throw new Error(`${e} expects input to be a Float32Array or a Float64Array, but got ${t?.constructor?.name??typeof t} instead. If using the feature extractor directly, remember to use \`read_audio(url, sampling_rate)\` to obtain the raw audio data of the file/url.`)}var ll={};ks(ll,{ASTFeatureExtractor:()=>Wp,ChatterboxFeatureExtractor:()=>Vp,ClapFeatureExtractor:()=>Hp,DacFeatureExtractor:()=>Dn,EncodecFeatureExtractor:()=>Rn,FeatureExtractor:()=>Ne,Gemma3nAudioFeatureExtractor:()=>Xp,MoonshineFeatureExtractor:()=>Kp,ParakeetFeatureExtractor:()=>Yp,PyAnnoteFeatureExtractor:()=>Un,SeamlessM4TFeatureExtractor:()=>Qp,SnacFeatureExtractor:()=>Jp,SpeechT5FeatureExtractor:()=>Zp,Wav2Vec2FeatureExtractor:()=>ed,WeSpeakerFeatureExtractor:()=>td,WhisperFeatureExtractor:()=>rd});var UA=Xr(require("fs"),1),BA=require("stream"),FA=require("stream/promises");async function jp(t,e){if(ge.IS_BROWSER_ENV){if(ge.IS_WEBWORKER_ENV)throw new Error("Unable to save a file from a Web Worker.");let r=URL.createObjectURL(e),s=document.createElement("a");s.href=r,s.download=t,s.click(),s.remove(),URL.revokeObjectURL(r)}else if(ge.IS_FS_AVAILABLE){let r=e.stream(),s=BA.Readable.fromWeb(r),n=UA.default.createWriteStream(t);await(0,FA.pipeline)(s,n)}else throw new Error("Unable to save because filesystem is disabled in this environment.")}async function qp(t,e){if(typeof AudioContext>"u")throw Error("Unable to load audio from path/URL since `AudioContext` is not available in your environment. Instead, audio data should be passed directly to the pipeline/processor. For more information and some example code, see https://huggingface.co/docs/transformers.js/guides/node-audio-processing.");let r=await(await Kr(t)).arrayBuffer(),s=new AudioContext({sampleRate:e});typeof e>"u"&&Q.warn(`No sampling rate provided, using default of ${s.sampleRate}Hz.`);let n=await s.decodeAudioData(r),o;if(n.numberOfChannels===2){let a=Math.sqrt(2),i=n.getChannelData(0),l=n.getChannelData(1);o=new Float32Array(i.length);for(let u=0;u<n.length;++u)o[u]=a*(i[u]+l[u])/2}else o=n.getChannelData(0);return o}function qA(t,e){if(t<1)return new Float64Array;if(t===1)return new Float64Array([1]);let r=1-e,s=2*Math.PI/(t-1),n=new Float64Array(t);for(let o=0;o<t;++o)n[o]=e-r*Math.cos(o*s);return n}function jA(t){return qA(t,.5)}function nz(t){return qA(t,.54)}var oz={htk:t=>2595*Math.log10(1+t/700),kaldi:t=>1127*Math.log(1+t/700),slaney:(t,e=1e3,r=15,s=27/Math.log(6.4))=>t>=e?r+Math.log(t/e)*s:3*t/200};function fb(t,e="htk"){let r=oz[e];if(!r)throw new Error('mel_scale should be one of "htk", "slaney" or "kaldi".');return typeof t=="number"?r(t):t.map(s=>r(s))}var az={htk:t=>700*(10**(t/2595)-1),kaldi:t=>700*(Math.exp(t/1127)-1),slaney:(t,e=1e3,r=15,s=Math.log(6.4)/27)=>t>=r?e*Math.exp(s*(t-r)):200*t/3};function iz(t,e="htk"){let r=az[e];if(!r)throw new Error('mel_scale should be one of "htk", "slaney" or "kaldi".');return typeof t=="number"?r(t):t.map(s=>r(s))}function lz(t,e){let r=Float64Array.from({length:e.length-1},(a,i)=>e[i+1]-e[i]),s=Array.from({length:t.length},()=>new Array(e.length));for(let a=0;a<t.length;++a){let i=s[a];for(let l=0;l<e.length;++l)i[l]=e[l]-t[a]}let n=e.length-2,o=Array.from({length:n},()=>new Array(t.length));for(let a=0;a<t.length;++a){let i=s[a];for(let l=0;l<n;++l){let u=-i[l]/r[l],p=i[l+2]/r[l+1];o[l][a]=Math.max(0,Math.min(u,p))}}return o}function GA(t,e,r){let s=(e-t)/(r-1);return Float64Array.from({length:r},(n,o)=>t+s*o)}function Et(t,e,r,s,n,o=null,a="htk",i=!1){if(o!==null&&o!=="slaney")throw new Error('norm must be one of null or "slaney"');if(t<2)throw new Error(`Require num_frequency_bins: ${t} >= 2`);if(r>s)throw new Error(`Require min_frequency: ${r} <= max_frequency: ${s}`);let l=fb(r,a),u=fb(s,a),p=GA(l,u,e+2),f=iz(p,a),m;if(i){let w=n/((t-1)*2);m=fb(Float64Array.from({length:t},(x,k)=>k*w),a),f=p}else m=GA(0,Math.floor(n/2),t);let h=lz(m,f);if(o!==null&&o==="slaney")for(let w=0;w<e;++w){let x=h[w],k=2/(f[w+2]-f[w]);for(let E=0;E<t;++E)x[E]*=k}return h}function cz(t,e,r){let s=new t.constructor(t.length+e+r),n=t.length-1;for(let o=0;o<t.length;++o)s[e+o]=t[o];for(let o=1;o<=e;++o)s[e-o]=t[vn(o,n)];for(let o=1;o<=r;++o)s[n+e+o]=t[vn(n-o,n)];return s}function WA(t,e,r,s,n){if(r<=0)throw new Error("reference must be greater than zero");if(s<=0)throw new Error("min_value must be greater than zero");r=Math.max(s,r);let o=Math.log10(r);for(let a=0;a<t.length;++a)t[a]=e*Math.log10(Math.max(s,t[a])-o);if(n!==null){if(n<=0)throw new Error("db_range must be greater than zero");let a=Se(t)[0]-n;for(let i=0;i<t.length;++i)t[i]=Math.max(t[i],a)}return t}function uz(t,e=1,r=1e-5,s=null){return WA(t,20,e,r,s)}function pz(t,e=1,r=1e-10,s=null){return WA(t,10,e,r,s)}async function Ot(t,e,r,s,{fft_length:n=null,power:o=1,center:a=!0,pad_mode:i="reflect",onesided:l=!0,preemphasis:u=null,preemphasis_htk_flavor:p=!0,mel_filters:f=null,mel_floor:m=1e-10,log_mel:h=null,reference:w=1,min_value:x=1e-10,db_range:k=null,remove_dc_offset:E=null,min_num_frames:A=null,max_num_frames:S=null,do_pad:T=!0,transpose:P=!1,mel_offset:C=0}={}){let v=e.length;if(n===null&&(n=r),r>n)throw Error(`frame_length (${r}) may not be larger than fft_length (${n})`);if(v!==r)throw new Error(`Length of the window (${v}) must equal frame_length (${r})`);if(s<=0)throw new Error("hop_length must be greater than zero");if(o===null&&f!==null)throw new Error("You have provided `mel_filters` but `power` is `None`. Mel spectrogram computation is not yet supported for complex-valued spectrogram. Specify `power` to fix this issue.");if(!p)throw new Error("`preemphasis_htk_flavor=false` is not currently supported.");if(a)switch(i){case"reflect":{let L=Math.floor((n-1)/2)+1;t=cz(t,L,L);break}case"constant":{let L=Math.floor(n/2),R=new t.constructor(t.length+2*L);R.set(t,L),t=R;break}default:throw new Error(`pad_mode="${i}" not implemented yet.`)}let F=Math.floor(1+Math.floor((t.length-r)/s));A!==null&&F<A&&(F=A);let H=l?Math.floor(n/2)+1:n,V=F,J=F;S!==null&&(S>F?T&&(J=S):J=V=S);let X=new Su(n),Y=new Float64Array(n),U=new Float64Array(X.outputBufferSize),z=new Float32Array(H*J);for(let L=0;L<V;++L){let R=L*s,te=Math.min(t.length-R,r);te!==r&&Y.fill(0,0,r);for(let pe=0;pe<te;++pe)Y[pe]=t[R+pe];if(E){let pe=0;for(let ze=0;ze<te;++ze)pe+=Y[ze];let Fe=pe/te;for(let ze=0;ze<te;++ze)Y[ze]-=Fe}if(u!==null){for(let pe=te-1;pe>=1;--pe)Y[pe]-=u*Y[pe-1];Y[0]*=1-u}for(let pe=0;pe<e.length;++pe)Y[pe]*=e[pe];X.realTransform(U,Y);for(let pe=0;pe<H;++pe){let Fe=pe<<1;z[pe*J+L]=U[Fe]**2+U[Fe+1]**2}}if(o!==null&&o!==2){let L=o/2;for(let R=0;R<z.length;++R)z[R]**=L}let ne=f.length,ae=await nb(new D("float32",f.flat(),[ne,H]),new D("float32",z,[H,J]));P&&(ae=ae.transpose(1,0));let I=ae.data;for(let L=0;L<I.length;++L)I[L]=C+Math.max(m,I[L]);if(o!==null&&h!==null){let L=Math.min(I.length,V*ne);switch(h){case"log":for(let R=0;R<L;++R)I[R]=Math.log(I[R]);break;case"log10":for(let R=0;R<L;++R)I[R]=Math.log10(I[R]);break;case"dB":if(o===1)uz(I,w,x,k);else if(o===2)pz(I,w,x,k);else throw new Error(`Cannot use log_mel option '${h}' with power ${o}`);break;default:throw new Error(`log_mel must be one of null, 'log', 'log10' or 'dB'. Got '${h}'`)}}return ae}function It(t,e,{periodic:r=!0,frame_length:s=null,center:n=!0}={}){let o=r?t+1:t,a;switch(e){case"boxcar":a=new Float64Array(o).fill(1);break;case"hann":case"hann_window":a=jA(o);break;case"hamming":a=nz(o);break;case"povey":a=jA(o).map(i=>Math.pow(i,.85));break;default:throw new Error(`Unknown window type ${e}.`)}if(r&&(a=a.subarray(0,t)),s===null)return a;if(t>s)throw new Error(`Length of the window (${t}) may not be larger than frame_length (${s})`);return a}function dz(t,e){let r=t.reduce((o,a)=>o+a.length,0),s=new ArrayBuffer(44),n=new DataView(s);return Gp(n,0,"RIFF"),n.setUint32(4,36+r*4,!0),Gp(n,8,"WAVE"),Gp(n,12,"fmt "),n.setUint32(16,16,!0),n.setUint16(20,3,!0),n.setUint16(22,1,!0),n.setUint32(24,e,!0),n.setUint32(28,e*4,!0),n.setUint16(32,4,!0),n.setUint16(34,32,!0),Gp(n,36,"data"),n.setUint32(40,r*4,!0),new Blob([s,...t.map(o=>o.buffer)],{type:"audio/wav"})}function Gp(t,e,r){for(let s=0;s<r.length;++s)t.setUint8(e+s,r.charCodeAt(s))}var $n=class{constructor(e,r){this.audio=e,this.sampling_rate=r}get data(){if(Array.isArray(this.audio)){if(this.audio.length===0)return new Float32Array(0);if(this.audio.length===1)return this.audio[0];let e=this.audio.reduce((n,o)=>n+o.length,0),r=new Float32Array(e),s=0;for(let n of this.audio)r.set(n,s),s+=n.length;return r}else return this.audio}toBlob(){let e=this.audio;return e instanceof Float32Array&&(e=[e]),dz(e,this.sampling_rate)}async save(e){return jp(e,this.toBlob())}};var Wp=class extends Ne{constructor(e){super(e);let r=this.config.sampling_rate,s=Et(257,this.config.num_mel_bins,20,Math.floor(r/2),r,null,"kaldi",!0);this.mel_filters=s,this.window=It(400,"hann",{periodic:!1}),this.mean=this.config.mean,this.std=this.config.std}async _extract_fbank_features(e,r){return Ot(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:"log",mel_floor:1192092955078125e-22,remove_dc_offset:!0,max_num_frames:r,transpose:!0})}async _call(e){Xe(e,"ASTFeatureExtractor");let r=await this._extract_fbank_features(e,this.config.max_length);if(this.config.do_normalize){let s=this.std*2,n=r.data;for(let o=0;o<n.length;++o)n[o]=(n[o]-this.mean)/s}return{input_values:r.unsqueeze_(0)}}};var Rn=class extends Ne{async _call(e){Xe(e,"EncodecFeatureExtractor"),e instanceof Float64Array&&(e=new Float32Array(e));let r=this.config.feature_size;if(e.length%r!==0)throw new Error(`The length of the audio data must be a multiple of the number of channels (${r}).`);let s=[1,r,e.length/r];return{input_values:new D("float32",e,s)}}};var Vp=class extends Ne{async _call(e){Xe(e,"ChatterboxFeatureExtractor"),e instanceof Float64Array&&(e=new Float32Array(e));let r=[1,e.length];return{input_values:new D("float32",e,r)}}};var Hp=class extends Ne{constructor(e){super(e),this.mel_filters=Et(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,null,"htk"),this.mel_filters_slaney=Et(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,"slaney","slaney"),this.window=It(this.config.fft_window_size,"hann")}async _get_input_mel(e,r,s,n){let o,a=!1,i=e.length-r;if(i>0)if(s==="rand_trunc"){a=!0;let l=Math.floor(ss.random()*(i+1));e=e.subarray(l,l+r),o=await this._extract_fbank_features(e,this.mel_filters_slaney,this.config.nb_max_samples)}else throw new Error(`Truncation strategy "${s}" not implemented`);else{if(i<0){let l=new Float64Array(r);if(l.set(e),n==="repeat")for(let u=e.length;u<r;u+=e.length)l.set(e.subarray(0,Math.min(e.length,r-u)),u);else if(n==="repeatpad")for(let u=e.length;u<-i;u+=e.length)l.set(e,u);e=l}if(s==="fusion")throw new Error(`Truncation strategy "${s}" not implemented`);o=await this._extract_fbank_features(e,this.mel_filters_slaney,this.config.nb_max_samples)}return o.unsqueeze_(0)}async _extract_fbank_features(e,r,s=null){return Ot(e,this.window,this.config.fft_window_size,this.config.hop_length,{power:2,mel_filters:r,log_mel:"dB",max_num_frames:s,do_pad:!1,transpose:!0})}async _call(e,{max_length:r=null}={}){return Xe(e,"ClapFeatureExtractor"),{input_features:(await this._get_input_mel(e,r??this.config.nb_max_samples,this.config.truncation,this.config.padding)).unsqueeze_(0)}}};var Dn=class extends Rn{};var Xp=class extends Ne{constructor(e){super(e);let{fft_length:r,feature_size:s,min_frequency:n,max_frequency:o,sampling_rate:a,frame_length:i}=this.config,l=Et(Math.floor(1+r/2),s,n,o,a,null,"htk",!1);this.mel_filters=l,this.window=It(i,"hann")}async _extract_fbank_features(e,r){return Ot(e,this.window,this.config.frame_length,this.config.hop_length,{fft_length:this.config.fft_length,center:!1,onesided:!0,preemphasis:this.config.preemphasis,preemphasis_htk_flavor:this.config.preemphasis_htk_flavor,mel_filters:this.mel_filters,log_mel:"log",mel_floor:this.config.mel_floor,remove_dc_offset:!1,transpose:!0})}async _call(e,{max_length:r=48e4,truncation:s=!0,padding:n=!0,pad_to_multiple_of:o=128}={}){if(Xe(e,"Gemma3nAudioFeatureExtractor"),s&&e.length>r&&(e=e.slice(0,r)),n&&e.length%o!==0){let l=o-e.length%o,u=new Float64Array(e.length+l);u.set(e),this.config.padding_value!==0&&u.fill(this.config.padding_value,e.length),e=u}let a=await this._extract_fbank_features(e,this.config.max_length),i=qe([1,a.dims[0]],!0);return{input_features:a.unsqueeze_(0),input_features_mask:i}}};var Kp=class extends Ne{async _call(e){Xe(e,"MoonshineFeatureExtractor"),e instanceof Float64Array&&(e=new Float32Array(e));let r=[1,e.length];return{input_values:new D("float32",e,r)}}};var fz=1e-5,Yp=class extends Ne{constructor(e){super(e),this.config.mel_filters??=Et(Math.floor(1+this.config.n_fft/2),this.config.feature_size,0,this.config.sampling_rate/2,this.config.sampling_rate,"slaney","slaney");let r=It(this.config.win_length,"hann",{periodic:!1});this.window=new Float64Array(this.config.n_fft);let s=Math.floor((this.config.n_fft-this.config.win_length)/2);this.window.set(r,s)}async _extract_fbank_features(e){let r=this.config.preemphasis;e=new Float64Array(e);for(let n=e.length-1;n>=1;--n)e[n]-=r*e[n-1];return await Ot(e,this.window,this.window.length,this.config.hop_length,{fft_length:this.config.n_fft,power:2,mel_filters:this.config.mel_filters,log_mel:"log",mel_floor:-1/0,pad_mode:"constant",center:!0,transpose:!0,mel_offset:2**-24})}async _call(e){Xe(e,"ParakeetFeatureExtractor");let r=await this._extract_fbank_features(e),s=Math.floor((e.length+Math.floor(this.config.n_fft/2)*2-this.config.n_fft)/this.config.hop_length),n=r.data;n.fill(0,s*r.dims[1]);let[o,a]=r.dims,i=new Float64Array(a),l=new Float64Array(a);for(let f=0;f<s;++f){let m=f*a;for(let h=0;h<a;++h){let w=n[m+h];i[h]+=w,l[h]+=w*w}}let u=s>1?s-1:1;for(let f=0;f<a;++f){let m=i[f]/s,h=(l[f]-s*m*m)/u,x=1/(Math.sqrt(h)+fz);for(let k=0;k<s;++k){let E=k*a+f;n[E]=(n[E]-m)*x}}let p=new BigInt64Array(o);return p.fill(1n,0,s),{input_features:r.unsqueeze_(0),attention_mask:new D("int64",p,[1,o])}}};var Un=class extends Ne{async _call(e){Xe(e,"PyAnnoteFeatureExtractor"),e instanceof Float64Array&&(e=new Float32Array(e));let r=[1,1,e.length];return{input_values:new D("float32",e,r)}}samples_to_frames(e){return(e-this.config.offset)/this.config.step}post_process_speaker_diarization(e,r){let s=r/this.samples_to_frames(r)/this.config.sampling_rate,n=[];for(let o of e.tolist()){let a=[],i=-1;for(let l=0;l<o.length;++l){let u=Ie(o[l]),[p,f]=Se(u),[m,h]=[l,l+1];f!==i?(i=f,a.push({id:f,start:m,end:h,score:p})):(a.at(-1).end=h,a.at(-1).score+=p)}n.push(a.map(({id:l,start:u,end:p,score:f})=>({id:l,start:u*s,end:p*s,confidence:f/(p-u)})))}return n}};var Qp=class extends Ne{constructor(e){super(e);let r=this.config.sampling_rate,s=Et(257,this.config.num_mel_bins,20,Math.floor(r/2),r,null,"kaldi",!0);this.mel_filters=s,this.window=It(400,"povey",{periodic:!1})}async _extract_fbank_features(e,r){return e=e.map(s=>s*32768),Ot(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:"log",mel_floor:1192092955078125e-22,remove_dc_offset:!0,max_num_frames:r,transpose:!0})}async _call(e,{padding:r=!0,pad_to_multiple_of:s=2,do_normalize_per_mel_bins:n=!0,return_attention_mask:o=!0}={}){Xe(e,"SeamlessM4TFeatureExtractor");let a=await this._extract_fbank_features(e,this.config.max_length);if(n){let[w,x]=a.dims,k=a.data;for(let E=0;E<x;++E){let A=0;for(let C=0;C<w;++C)A+=k[C*x+E];let S=A/w,T=0;for(let C=0;C<w;++C)T+=(k[C*x+E]-S)**2;T/=w-1;let P=Math.sqrt(T+1e-7);for(let C=0;C<w;++C){let v=C*x+E;k[v]=(k[v]-S)/P}}}let i;if(r){let[w,x]=a.dims,k=a.data,E=w%s;if(E>0){let A=new Float32Array(x*(w+E));A.set(k),A.fill(this.config.padding_value,k.length);let S=w+E;a=new D(a.type,A,[S,x]),o&&(i=new D("int64",new BigInt64Array(S),[1,S]),i.data.fill(1n,0,w))}}let[l,u]=a.dims,p=this.config.stride;if(l%p!==0)throw new Error(`The number of frames (${l}) must be a multiple of the stride (${p}).`);let m=a.view(1,Math.floor(l/p),u*p),h={input_features:m};if(o){let w=m.dims[1],x=new BigInt64Array(w);if(i){let k=i.data;for(let E=1,A=0;E<l;E+=p,++A)x[A]=k[E]}else x.fill(1n);h.attention_mask=new D("int64",x,[1,w])}return h}};var Jp=class extends Dn{};var Zp=class extends Ne{};var ed=class extends Ne{_zero_mean_unit_var_norm(e){let s=e.reduce((o,a)=>o+a,0)/e.length,n=e.reduce((o,a)=>o+(a-s)**2,0)/e.length;return e.map(o=>(o-s)/Math.sqrt(n+1e-7))}async _call(e){Xe(e,"Wav2Vec2FeatureExtractor"),e instanceof Float64Array&&(e=new Float32Array(e));let r=e;this.config.do_normalize&&(r=this._zero_mean_unit_var_norm(r));let s=[1,r.length];return{input_values:new D("float32",r,s),attention_mask:new D("int64",new BigInt64Array(r.length).fill(1n),s)}}};var td=class extends Ne{constructor(e){super(e);let r=this.config.sampling_rate,s=Et(257,this.config.num_mel_bins,20,Math.floor(r/2),r,null,"kaldi",!0);this.mel_filters=s,this.window=It(400,"hamming",{periodic:!1}),this.min_num_frames=this.config.min_num_frames}async _extract_fbank_features(e){return e=e.map(r=>r*32768),Ot(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:"log",mel_floor:1192092955078125e-22,remove_dc_offset:!0,transpose:!0,min_num_frames:this.min_num_frames})}async _call(e){Xe(e,"WeSpeakerFeatureExtractor");let r=(await this._extract_fbank_features(e)).unsqueeze_(0);if(this.config.fbank_centering_span===null){let s=r.mean(1).data,n=r.data,[o,a,i]=r.dims;for(let l=0;l<o;++l){let u=l*a*i,p=l*i;for(let f=0;f<a;++f){let m=u+f*i;for(let h=0;h<i;++h)n[m+h]-=s[p+h]}}}return{input_features:r}}};var rd=class extends Ne{constructor(e){super(e),this.config.mel_filters??=Et(Math.floor(1+this.config.n_fft/2),this.config.feature_size,0,8e3,this.config.sampling_rate,"slaney","slaney"),this.window=It(this.config.n_fft,"hann")}async _extract_fbank_features(e){let r=await Ot(e,this.window,this.config.n_fft,this.config.hop_length,{power:2,mel_filters:this.config.mel_filters,log_mel:"log10",max_num_frames:Math.min(Math.floor(e.length/this.config.hop_length),this.config.nb_max_frames)}),s=r.data,n=Se(s)[0];for(let o=0;o<s.length;++o)s[o]=(Math.max(s[o],n-8)+4)/4;return r}async _call(e,{max_length:r=null}={}){Xe(e,"WhisperFeatureExtractor");let s,n=r??this.config.n_samples;return e.length>n?(e.length>this.config.n_samples&&Q.warn("Attempting to extract features for audio longer than 30 seconds. If using a pipeline to extract transcript from a long audio clip, remember to specify `chunk_length_s` and/or `stride_length_s`."),s=e.slice(0,n)):(s=new Float32Array(n),s.set(e)),{input_features:(await this._extract_fbank_features(s)).unsqueeze_(0)}}};var et=class{static async from_pretrained(e,r={}){let s=await ut(e,il,!0,r),n=s.feature_extractor_type,o=ll[n];if(!o)throw new Error(`Unknown feature_extractor_type: '${n}'. Please report this at ${ns}.`);return new o(s)}};var sd=class extends oe{static tokenizer_class=Z;static feature_extractor_class=et;async _call(e,r=null){let s=this.tokenizer(e),n=r?await this.feature_extractor(r):{};return{...s,...n}}};var nd=Xr(require("sharp"),1);var Fs,VA,os,sr=ge.IS_BROWSER_ENV||ge.IS_WEBWORKER_ENV;if(sr)Fs=(t,e)=>{if(!self.OffscreenCanvas)throw new Error("OffscreenCanvas not supported by this browser.");return new self.OffscreenCanvas(t,e)},os=self.createImageBitmap,VA=self.ImageData;else if(nd.default)os=async t=>{let r=(await t.metadata()).channels,{data:s,info:n}=await t.rotate().raw().toBuffer({resolveWithObject:!0}),o=new Ke(new Uint8ClampedArray(s),n.width,n.height,n.channels);return r!==void 0&&r!==n.channels&&o.convert(r),o};else throw new Error("Unable to load image processing library.");var mz={0:"nearest",1:"lanczos",2:"bilinear",3:"bicubic",4:"box",5:"hamming"},hz=new Map([["png","image/png"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["gif","image/gif"]]),Ke=class t{constructor(e,r,s,n){this.data=e,this.width=r,this.height=s,this.channels=n}get size(){return[this.width,this.height]}static async read(e){if(e instanceof t)return e;if(typeof e=="string"||e instanceof URL)return await this.fromURL(e);if(e instanceof Blob)return await this.fromBlob(e);if(typeof HTMLCanvasElement<"u"&&e instanceof HTMLCanvasElement||typeof OffscreenCanvas<"u"&&e instanceof OffscreenCanvas)return this.fromCanvas(e);throw new Error(`Unsupported input type: ${typeof e}`)}static fromCanvas(e){if(!sr)throw new Error("fromCanvas() is only supported in browser environments.");let s=e.getContext("2d").getImageData(0,0,e.width,e.height).data;return new t(s,e.width,e.height,4)}static async fromURL(e){let r=await Kr(e);if(r.status!==200)throw new Error(`Unable to read image from "${e}" (${r.status} ${r.statusText})`);let s=await r.blob();return this.fromBlob(s)}static async fromBlob(e){if(sr){let r=await os(e),s=Fs(r.width,r.height).getContext("2d");return s.drawImage(r,0,0),new this(s.getImageData(0,0,r.width,r.height).data,r.width,r.height,4)}else{let r=(0,nd.default)(await e.arrayBuffer());return await os(r)}}static fromTensor(e,r="CHW"){if(e.dims.length!==3)throw new Error(`Tensor should have 3 dimensions, but has ${e.dims.length} dimensions.`);if(r==="CHW")e=e.transpose(1,2,0);else if(r!=="HWC")throw new Error(`Unsupported channel format: ${r}`);if(!(e.data instanceof Uint8ClampedArray||e.data instanceof Uint8Array))throw new Error(`Unsupported tensor type: ${e.type}`);switch(e.dims[2]){case 1:case 2:case 3:case 4:return new t(e.data,e.dims[1],e.dims[0],e.dims[2]);default:throw new Error(`Unsupported number of channels: ${e.dims[2]}`)}}grayscale(){if(this.channels===1)return this;let e=new Uint8ClampedArray(this.width*this.height*1);switch(this.channels){case 3:case 4:for(let r=0,s=0;r<this.data.length;r+=this.channels){let n=this.data[r],o=this.data[r+1],a=this.data[r+2];e[s++]=Math.round(.2989*n+.587*o+.114*a)}break;default:throw new Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this._update(e,this.width,this.height,1)}rgb(){if(this.channels===3)return this;let e=new Uint8ClampedArray(this.width*this.height*3);switch(this.channels){case 1:for(let r=0,s=0;r<this.data.length;++r)e[s++]=this.data[r],e[s++]=this.data[r],e[s++]=this.data[r];break;case 4:for(let r=0,s=0;r<this.data.length;r+=4)e[s++]=this.data[r],e[s++]=this.data[r+1],e[s++]=this.data[r+2];break;default:throw new Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this._update(e,this.width,this.height,3)}rgba(){if(this.channels===4)return this;let e=new Uint8ClampedArray(this.width*this.height*4);switch(this.channels){case 1:for(let r=0,s=0;r<this.data.length;++r)e[s++]=this.data[r],e[s++]=this.data[r],e[s++]=this.data[r],e[s++]=255;break;case 3:for(let r=0,s=0;r<this.data.length;r+=3)e[s++]=this.data[r],e[s++]=this.data[r+1],e[s++]=this.data[r+2],e[s++]=255;break;default:throw new Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this._update(e,this.width,this.height,4)}putAlpha(e){if(e.width!==this.width||e.height!==this.height)throw new Error(`Expected mask size to be ${this.width}x${this.height}, but got ${e.width}x${e.height}`);if(e.channels!==1)throw new Error(`Expected mask to have 1 channel, but got ${e.channels}`);let r=this.data,s=e.data,n=this.width*this.height;if(this.channels===3){let o=new Uint8ClampedArray(n*4);for(let a=0,i=0,l=0;a<n;++a)o[l++]=r[i++],o[l++]=r[i++],o[l++]=r[i++],o[l++]=s[a];return this._update(o,this.width,this.height,4)}else if(this.channels===4){for(let o=0;o<n;++o)r[4*o+3]=s[o];return this}throw new Error(`Expected image to have 3 or 4 channels, but got ${this.channels}`)}async resize(e,r,{resample:s=2}={}){if(this.width===e&&this.height===r)return this;let n=mz[s]??s,o=Qy(e),a=Qy(r);if(o&&a)return this;if(o?e=r/this.height*this.width:a&&(r=e/this.width*this.height),sr){let i=this.channels,l=this.toCanvas(),u=Fs(e,r).getContext("2d");return u.drawImage(l,0,0,e,r),new t(u.getImageData(0,0,e,r).data,e,r,4).convert(i)}else{let i=this.toSharp();switch(n){case"box":case"hamming":(n==="box"||n==="hamming")&&(Q.warn(`Resampling method ${n} is not yet supported. Using bilinear instead.`),n="bilinear");case"nearest":case"bilinear":case"bicubic":i=i.affine([e/this.width,0,0,r/this.height],{interpolator:n});break;case"lanczos":i=i.resize({width:e,height:r,fit:"fill",kernel:"lanczos3"});break;default:throw new Error(`Resampling method ${n} is not supported.`)}return await os(i)}}async pad([e,r,s,n]){if(e=Math.max(e,0),r=Math.max(r,0),s=Math.max(s,0),n=Math.max(n,0),e===0&&r===0&&s===0&&n===0)return this;if(sr){let o=this.channels,a=this.toCanvas(),i=this.width+e+r,l=this.height+s+n,u=Fs(i,l).getContext("2d");return u.drawImage(a,0,0,this.width,this.height,e,s,this.width,this.height),new t(u.getImageData(0,0,i,l).data,i,l,4).convert(o)}else{let o=this.toSharp().extend({left:e,right:r,top:s,bottom:n});return await os(o)}}async crop([e,r,s,n]){if(e=Math.max(e,0),r=Math.max(r,0),s=Math.min(s,this.width-1),n=Math.min(n,this.height-1),e===0&&r===0&&s===this.width-1&&n===this.height-1)return this;let o=s-e+1,a=n-r+1;if(sr){let i=this.channels,l=this.toCanvas(),u=Fs(o,a).getContext("2d");return u.drawImage(l,e,r,o,a,0,0,o,a),new t(u.getImageData(0,0,o,a).data,o,a,4).convert(i)}else{let i=this.toSharp().extract({left:e,top:r,width:o,height:a});return await os(i)}}async center_crop(e,r){if(this.width===e&&this.height===r)return this;let s=(this.width-e)/2,n=(this.height-r)/2;if(sr){let o=this.channels,a=this.toCanvas(),i=Fs(e,r).getContext("2d"),l=0,u=0,p=0,f=0;return s>=0?l=s:p=-s,n>=0?u=n:f=-n,i.drawImage(a,l,u,e,r,p,f,e,r),new t(i.getImageData(0,0,e,r).data,e,r,4).convert(o)}else{let o=this.toSharp();if(s>=0&&n>=0)o=o.extract({left:Math.floor(s),top:Math.floor(n),width:e,height:r});else if(s<=0&&n<=0){let a=Math.floor(-n),i=Math.floor(-s);o=o.extend({top:a,left:i,right:e-this.width-i,bottom:r-this.height-a})}else{let a=[0,0],i=0;n<0?(a[0]=Math.floor(-n),a[1]=r-this.height-a[0]):i=Math.floor(n);let l=[0,0],u=0;s<0?(l[0]=Math.floor(-s),l[1]=e-this.width-l[0]):u=Math.floor(s),o=o.extend({top:a[0],bottom:a[1],left:l[0],right:l[1]}).extract({left:u,top:i,width:e,height:r})}return await os(o)}}async toBlob(e="image/png",r=1){if(!sr)throw new Error("toBlob() is only supported in browser environments.");return await this.toCanvas().convertToBlob({type:e,quality:r})}toTensor(e="CHW"){let r=new D("uint8",new Uint8Array(this.data),[this.height,this.width,this.channels]);if(e!=="HWC")if(e==="CHW")r=r.permute(2,0,1);else throw new Error(`Unsupported channel format: ${e}`);return r}toCanvas(){if(!sr)throw new Error("toCanvas() is only supported in browser environments.");let e=this.clone().rgba(),r=Fs(e.width,e.height),s=new VA(e.data,e.width,e.height);return r.getContext("2d").putImageData(s,0,0),r}split(){let{data:e,width:r,height:s,channels:n}=this,o=e.constructor,a=e.length/n,i=Array.from({length:n},()=>new o(a));for(let l=0;l<a;++l){let u=n*l;for(let p=0;p<n;++p)i[p][l]=e[u+p]}return i.map(l=>new t(l,r,s,1))}_update(e,r,s,n=null){return this.data=e,this.width=r,this.height=s,n!==null&&(this.channels=n),this}clone(){return new t(this.data.slice(),this.width,this.height,this.channels)}convert(e){if(this.channels===e)return this;switch(e){case 1:this.grayscale();break;case 3:this.rgb();break;case 4:this.rgba();break;default:throw new Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this}async save(e){if(sr){if(ge.IS_WEBWORKER_ENV)throw new Error("Unable to save an image from a Web Worker.");let r=e.split(".").pop().toLowerCase(),s=hz.get(r)??"image/png",n=await this.toBlob(s);return jp(e,n)}else if(ge.IS_FS_AVAILABLE)await this.toSharp().toFile(e);else throw new Error("Unable to save the image because filesystem is disabled in this environment.")}toSharp(){if(sr)throw new Error("toSharp() is only supported in server-side environments.");return(0,nd.default)(this.data,{raw:{width:this.width,height:this.height,channels:this.channels}})}},HA=Ke.read.bind(Ke);function XA(t,e,r=0,s=null){let n=t/e,o=Vk(n)*e;return s!==null&&o>s&&(o=Math.floor(n)*e),o<r&&(o=Math.ceil(n)*e),o}function mb([t,e],r){return[Math.max(Math.floor(t/r),1)*r,Math.max(Math.floor(e/r),1)*r]}function hb([t,e,r,s]){return[t-r/2,e-s/2,t+r/2,e+s/2]}function as(t,e=.5,r=null,s=!1){let n=t.logits,o=t.pred_boxes,[a,i,l]=n.dims;if(r!==null&&r.length!==a)throw Error("Make sure that you pass in as many target sizes as the batch dimension of the logits");let u=[];for(let p=0;p<a;++p){let f=r!==null?r[p]:null,m={boxes:[],classes:[],scores:[]},h=n[p],w=o[p];for(let x=0;x<i;++x){let k=h[x],E=[],A;if(s){A=k.sigmoid().data;for(let S=0;S<A.length;++S)A[S]>e&&E.push(S)}else{let S=Se(k.data)[1];if(S===l-1||(A=Ie(k.data),A[S]<e))continue;E.push(S)}for(let S of E){let T=w[x].data;T=hb(T),f!==null&&(T=T.map((P,C)=>P*f[(C+1)%2])),m.boxes.push(T),m.classes.push(S),m.scores.push(A[S])}}u.push(m)}return u}function od(t,e=null){let r=t.logits,s=r.dims[0];if(e!==null&&e.length!==s)throw Error("Make sure that you pass in as many target sizes as the batch dimension of the logits");let n=[];for(let o=0;o<s;++o){let a=e!==null?e[o]:null,i=r[o];a!==null&&(i=Ku(i,a,"bilinear",!1));let[l,u]=a??i.dims.slice(-2),p=new D("int32",new Int32Array(l*u),[l,u]),f=i[0].data,m=p.data;for(let x=1;x<i.dims[0];++x){let k=i[x].data;for(let E=0;E<k.length;++E)k[E]>f[E]&&(f[E]=k[E],m[E]=x)}let h=new Array(i.dims[0]);for(let x=0;x<m.length;++x){let k=m[x];h[k]=k}let w=h.filter(x=>x!==void 0);n.push({segmentation:p,labels:w})}return n}function _z(t,e,r,s){let n=[],o=[],a=[];for(let i=0;i<t.dims[0];++i){let l=t[i],u=e[i],p=Se(l.data)[1];if(p===s)continue;let m=Ie(l.data)[p];m>r&&(n.push(u),o.push(m),a.push(p))}return[n,o,a]}function gz(t,e,r,s=.5,n=.8){let o=[],a=0,i=0,l=e[r].data;for(let p=0;p<t.length;++p)t[p]===r&&(o.push(p),++a),l[p]>=s&&++i;let u=a>0&&i>0;return u&&(u=a/i>n),[u,o]}function wz(t,e,r,s,n,o=null,a=null){let[i,l]=a??t[0].dims,u=new D("int32",new Int32Array(i*l),[i,l]),p=[];if(a!==null)for(let x=0;x<t.length;++x)t[x]=Ku(t[x],a,"bilinear",!1);let f=new Int32Array(t[0].data.length),m=new Float32Array(t[0].data.length);for(let x=0;x<t.length;++x){let k=e[x],E=t[x].data;for(let A=0;A<E.length;++A)E[A]*=k,E[A]>m[A]&&(f[A]=x,m[A]=E[A])}let h=0,w=u.data;for(let x=0;x<r.length;++x){let k=r[x],[E,A]=gz(f,t,x,s,n);if(E){++h;for(let S of A)w[S]=h;p.push({id:h,label_id:k,score:e[x]})}}return[u,p]}function ad(t,e=.5,r=.5,s=.8,n=null,o=null){n===null&&(Q.warn("`label_ids_to_fuse` unset. No instance will be fused."),n=new Set);let a=t.class_queries_logits??t.logits,l=(t.masks_queries_logits??t.pred_masks).sigmoid(),[u,p,f]=a.dims;if(f-=1,o!==null&&o.length!==u)throw Error("Make sure that you pass in as many target sizes as the batch dimension of the logits");let m=[];for(let h=0;h<u;++h){let w=o!==null?o[h]:null,x=a[h],k=l[h],[E,A,S]=_z(x,k,e,f);if(S.length===0){let[C,v]=w??k.dims.slice(-2),F=new D("int32",new Int32Array(C*v).fill(-1),[C,v]);m.push({segmentation:F,segments_info:[]});continue}let[T,P]=wz(E,A,S,r,s,n,w);m.push({segmentation:T,segments_info:P})}return m}function id(t,e=.5,r=null){throw new Error("`post_process_instance_segmentation` is not yet implemented.")}var W=class extends Ze{constructor(e){super(),this.image_mean=e.image_mean??e.mean,this.image_std=e.image_std??e.std,this.resample=e.resample??2,this.do_rescale=e.do_rescale??!0,this.rescale_factor=e.rescale_factor??1/255,this.do_normalize=e.do_normalize,this.do_thumbnail=e.do_thumbnail,this.size=e.size??e.image_size,this.do_resize=e.do_resize??this.size!==void 0,this.size_divisibility=e.size_divisibility??e.size_divisor,this.do_center_crop=e.do_center_crop,this.crop_size=e.crop_size,this.do_convert_rgb=e.do_convert_rgb??!0,this.do_crop_margin=e.do_crop_margin,this.pad_size=e.pad_size,this.do_pad=e.do_pad,this.min_pixels=e.min_pixels,this.max_pixels=e.max_pixels,this.do_pad&&!this.pad_size&&this.size&&this.size.width!==void 0&&this.size.height!==void 0&&(this.pad_size=this.size),this.do_flip_channel_order=e.do_flip_channel_order??!1,this.config=e}async thumbnail(e,r,s=2){let n=e.height,o=e.width,a=r.height,i=r.width,l=Math.min(n,a),u=Math.min(o,i);return l===n&&u===o?e:(n>o?u=Math.floor(o*l/n):o>n&&(l=Math.floor(n*u/o)),await e.resize(u,l,{resample:s}))}async crop_margin(e,r=200){let s=e.clone().grayscale(),n=Wi(s.data)[0],a=Se(s.data)[0]-n;if(a===0)return e;let i=r/255,l=s.width,u=s.height,p=0,f=0,m=s.data;for(let h=0;h<s.height;++h){let w=h*s.width;for(let x=0;x<s.width;++x)(m[w+x]-n)/a<i&&(l=Math.min(l,x),u=Math.min(u,h),p=Math.max(p,x),f=Math.max(f,h))}return e=await e.crop([l,u,p,f]),e}pad_image(e,r,s,{mode:n="constant",center:o=!1,constant_values:a=0}={}){let[i,l,u]=r,p,f;if(typeof s=="number"?(p=s,f=s):s==="square"?p=f=Math.max(i,l):(p=s.width,f=s.height),p!==l||f!==i){let m=new Float32Array(p*f*u);if(Array.isArray(a))for(let x=0;x<m.length;++x)m[x]=a[x%u];else a!==0&&m.fill(a);let[h,w]=o?[Math.floor((p-l)/2),Math.floor((f-i)/2)]:[0,0];for(let x=0;x<i;++x){let k=(x+w)*p,E=x*l;for(let A=0;A<l;++A){let S=(k+A+h)*u,T=(E+A)*u;for(let P=0;P<u;++P)m[S+P]=e[T+P]}}if(n==="symmetric"){if(o)throw new Error("`center` padding is not supported when `mode` is set to `symmetric`.");let x=i-1,k=l-1;for(let E=0;E<f;++E){let A=E*p,S=vn(E,x)*l;for(let T=0;T<p;++T){if(E<i&&T<l)continue;let P=(A+T)*u,C=(S+vn(T,k))*u;for(let v=0;v<u;++v)m[P+v]=e[C+v]}}}e=m,r=[f,p,u]}return[e,r]}rescale(e){for(let r=0;r<e.length;++r)e[r]=this.rescale_factor*e[r]}get_resize_output_image_size(e,r){let[s,n]=e.size,o,a;if(this.do_thumbnail){let{height:i,width:l}=r;o=Math.min(i,l)}else Number.isInteger(r)?(o=r,a=this.config.max_size??o):r!==void 0&&(o=r.shortest_edge,a=r.longest_edge);if(o!==void 0||a!==void 0){let i=o===void 0?1:Math.max(o/s,o/n),l=s*i,u=n*i,p=a===void 0?1:Math.min(a/l,a/u),f=Math.floor(Number((l*p).toFixed(2))),m=Math.floor(Number((u*p).toFixed(2)));return this.size_divisibility!==void 0&&([f,m]=mb([f,m],this.size_divisibility)),[f,m]}else if(r!==void 0&&r.width!==void 0&&r.height!==void 0){let i=r.width,l=r.height;if(this.config.keep_aspect_ratio&&this.config.ensure_multiple_of){let u=l/n,p=i/s;Math.abs(1-p)<Math.abs(1-u)?u=p:p=u,l=XA(u*n,this.config.ensure_multiple_of),i=XA(p*s,this.config.ensure_multiple_of)}return[i,l]}else{if(this.size_divisibility!==void 0)return mb([s,n],this.size_divisibility);throw new Error(`Could not resize image due to unsupported \`this.size\` option in config: ${JSON.stringify(r)}`)}}async resize(e){let[r,s]=this.get_resize_output_image_size(e,this.size);return await e.resize(r,s,{resample:this.resample})}async preprocess(e,{do_normalize:r=null,do_pad:s=null,do_convert_rgb:n=null,do_convert_grayscale:o=null,do_flip_channel_order:a=null}={}){this.do_crop_margin&&(e=await this.crop_margin(e));let[i,l]=e.size;if(n??this.do_convert_rgb?e=e.rgb():o&&(e=e.grayscale()),this.do_resize&&(e=await this.resize(e)),this.do_thumbnail&&(e=await this.thumbnail(e,this.size,this.resample)),this.do_center_crop){let h,w;Number.isInteger(this.crop_size)?(h=this.crop_size,w=this.crop_size):(h=this.crop_size.width,w=this.crop_size.height),e=await e.center_crop(h,w)}let u=[e.height,e.width],p=Float32Array.from(e.data),f=[e.height,e.width,e.channels];if(this.do_rescale&&this.rescale(p),r??this.do_normalize){let h=this.image_mean;Array.isArray(this.image_mean)||(h=new Array(e.channels).fill(h));let w=this.image_std;if(Array.isArray(this.image_std)||(w=new Array(e.channels).fill(w)),h.length!==e.channels||w.length!==e.channels)throw new Error(`When set to arrays, the length of \`image_mean\` (${h.length}) and \`image_std\` (${w.length}) must match the number of channels in the image (${e.channels}).`);for(let x=0;x<p.length;x+=e.channels)for(let k=0;k<e.channels;++k)p[x+k]=(p[x+k]-h[k])/w[k]}if(s??this.do_pad){if(this.pad_size)[p,f]=this.pad_image(p,[e.height,e.width,e.channels],this.pad_size);else if(this.size_divisibility){let[h,w]=mb([f[1],f[0]],this.size_divisibility);[p,f]=this.pad_image(p,f,{width:h,height:w})}}if(a??this.do_flip_channel_order){if(f[2]!==3)throw new Error("Flipping channel order is only supported for RGB images.");for(let h=0;h<p.length;h+=3){let w=p[h];p[h]=p[h+2],p[h+2]=w}}let m=new D("float32",p,f).permute(2,0,1);return{original_size:[l,i],reshaped_input_size:u,pixel_values:m}}async _call(e,...r){Array.isArray(e)||(e=[e]);let s=await Promise.all(e.map(o=>this.preprocess(o)));return{pixel_values:Rt(s.map(o=>o.pixel_values),0),original_sizes:s.map(o=>o.original_size),reshaped_input_sizes:s.map(o=>o.reshaped_input_size)}}static async from_pretrained(e,r={}){let s=await ut(e,Or,!0,r);return new this(s)}};var jn={};ks(jn,{BeitFeatureExtractor:()=>ld,BitImageProcessor:()=>cd,CLIPFeatureExtractor:()=>pd,CLIPImageProcessor:()=>cl,ChineseCLIPFeatureExtractor:()=>ud,ConvNextFeatureExtractor:()=>dd,ConvNextImageProcessor:()=>ul,DINOv3ViTImageProcessor:()=>hd,DPTFeatureExtractor:()=>gd,DPTImageProcessor:()=>fl,DeiTFeatureExtractor:()=>fd,DeiTImageProcessor:()=>pl,DetrFeatureExtractor:()=>md,DetrImageProcessor:()=>dl,DonutFeatureExtractor:()=>_d,DonutImageProcessor:()=>js,EfficientNetImageProcessor:()=>wd,GLPNFeatureExtractor:()=>xd,GroundingDinoImageProcessor:()=>yd,Idefics3ImageProcessor:()=>ml,ImageFeatureExtractor:()=>W,ImageProcessor:()=>W,JinaCLIPImageProcessor:()=>vd,LlavaOnevisionImageProcessor:()=>kd,Mask2FormerImageProcessor:()=>Ad,MaskFormerFeatureExtractor:()=>Ed,MaskFormerImageProcessor:()=>Gs,MobileNetV1FeatureExtractor:()=>Md,MobileNetV1ImageProcessor:()=>hl,MobileNetV2FeatureExtractor:()=>Td,MobileNetV2ImageProcessor:()=>_l,MobileNetV3FeatureExtractor:()=>Sd,MobileNetV3ImageProcessor:()=>gl,MobileNetV4FeatureExtractor:()=>Od,MobileNetV4ImageProcessor:()=>wl,MobileViTFeatureExtractor:()=>Id,MobileViTImageProcessor:()=>xl,NougatImageProcessor:()=>Cd,OwlViTFeatureExtractor:()=>Pd,OwlViTImageProcessor:()=>qs,Owlv2ImageProcessor:()=>zd,Phi3VImageProcessor:()=>Ld,PixtralImageProcessor:()=>Nd,PvtImageProcessor:()=>$d,Qwen2VLImageProcessor:()=>Rd,RTDetrImageProcessor:()=>Dd,Sam2ImageProcessor:()=>Fn,Sam3ImageProcessor:()=>Fn,SamImageProcessor:()=>Fn,SapiensFeatureExtractor:()=>Ud,SapiensImageProcessor:()=>yl,SegformerFeatureExtractor:()=>Bd,SegformerImageProcessor:()=>bl,SiglipImageProcessor:()=>Fd,SmolVLMImageProcessor:()=>ml,Swin2SRImageProcessor:()=>jd,VLMImageProcessor:()=>bd,ViTFeatureExtractor:()=>Gd,ViTImageProcessor:()=>vl,VitMatteImageProcessor:()=>qd,VitPoseImageProcessor:()=>Wd,YolosFeatureExtractor:()=>Vd,YolosImageProcessor:()=>kl});var ld=class extends W{};var cd=class extends W{};var ud=class extends W{};var cl=class extends W{},pd=class extends cl{};var ul=class extends W{constructor(e){super(e),this.crop_pct=this.config.crop_pct??224/256}async resize(e){let r=this.size?.shortest_edge;if(r===void 0)throw new Error("Size dictionary must contain 'shortest_edge' key.");if(r<384){let s=Math.floor(r/this.crop_pct),[n,o]=this.get_resize_output_image_size(e,{shortest_edge:s});e=await e.resize(n,o,{resample:this.resample}),e=await e.center_crop(r,r)}else e=await e.resize(r,r,{resample:this.resample});return e}},dd=class extends ul{};var pl=class extends W{},fd=class extends pl{};var dl=class extends W{async _call(e){let r=await super._call(e),s=[r.pixel_values.dims[0],64,64],n=qe(s,1n);return{...r,pixel_mask:n}}post_process_object_detection(...e){return as(...e)}post_process_panoptic_segmentation(...e){return ad(...e)}post_process_instance_segmentation(...e){return id(...e)}},md=class extends dl{};var hd=class extends W{};var js=class extends W{pad_image(e,r,s,n={}){let[o,a,i]=r,l=this.image_mean;Array.isArray(this.image_mean)||(l=new Array(i).fill(l));let u=this.image_std;Array.isArray(u)||(u=new Array(i).fill(l));let p=l.map((f,m)=>-f/u[m]);return super.pad_image(e,r,s,{center:!0,constant_values:p,...n})}},_d=class extends js{};var fl=class extends W{},gd=class extends fl{};var wd=class extends W{constructor(e){super(e),this.include_top=this.config.include_top??!0,this.include_top&&(this.image_std=this.image_std.map(r=>r*r))}};var xd=class extends W{};var yd=class extends W{async _call(e){let r=await super._call(e),s=r.pixel_values.dims,n=st([s[0],s[2],s[3]]);return{...r,pixel_mask:n}}};var ml=class extends W{constructor(e){super(e),this.do_image_splitting=e.do_image_splitting??!0,this.max_image_size=e.max_image_size}get_resize_for_vision_encoder(e,r){let[s,n]=e.dims.slice(-2),o=n/s;return n>=s?(n=Math.ceil(n/r)*r,s=Math.floor(n/o),s=Math.ceil(s/r)*r):(s=Math.ceil(s/r)*r,n=Math.floor(s*o),n=Math.ceil(n/r)*r),{height:s,width:n}}async _call(e,{do_image_splitting:r=null,return_row_col_info:s=!1}={}){let n;if(!Array.isArray(e))n=[[e]];else{if(e.length===0||!e[0])throw new Error("No images provided.");Array.isArray(e[0])?n=e:n=[e]}let o=[],a=[],i=[],l=[],u=[];for(let E of n){let A=await Promise.all(E.map(P=>this.preprocess(P)));l.push(...A.map(P=>P.original_size)),u.push(...A.map(P=>P.reshaped_input_size)),A.forEach(P=>P.pixel_values.unsqueeze_(0));let{longest_edge:S}=this.max_image_size,T;if(r??this.do_image_splitting){let P=new Array(A.length),C=new Array(A.length);T=await Promise.all(A.map(async(v,F)=>{let H=this.get_resize_for_vision_encoder(v.pixel_values,S),V=await $t(v.pixel_values,{size:[H.height,H.width]}),{frames:J,num_splits_h:X,num_splits_w:Y}=await this.split_image(V,this.max_image_size);return P[F]=X,C[F]=Y,Ee(J,0)})),a.push(P),i.push(C)}else{let P=[S,S];T=await Promise.all(A.map(C=>$t(C.pixel_values,{size:P}))),a.push(new Array(A.length).fill(0)),i.push(new Array(A.length).fill(0))}o.push(Ee(T,0))}let p=o.length,[f,m,h,w]=o[0].dims,x,k;if(p===1)x=o[0].unsqueeze_(0),k=qe([p,f,h,w],!0);else{let E=Math.max(...o.map(T=>T.dims.at(0)));k=qe([p,E,h,w],!0);let A=k.data,S=E*h*w;for(let T=0;T<p;++T){let P=o[T].dims[0];if(P<E){o[T]=Ee([o[T],qe([E-P,m,h,w],0)],0);let C=T*S+P*h*w,v=(T+1)*S;A.fill(!1,C,v)}}x=Rt(o,0)}return{pixel_values:x,pixel_attention_mask:k,original_sizes:l,reshaped_input_sizes:u,...s?{rows:a,cols:i}:{}}}async split_image(e,{longest_edge:r}){let s=r,n=r,o=[],[a,i]=e.dims.slice(-2),l=0,u=0;if(a>s||i>n){l=Math.ceil(a/s),u=Math.ceil(i/n);let p=Math.ceil(a/l),f=Math.ceil(i/u);for(let w=0;w<l;++w)for(let x=0;x<u;++x){let k,E,A,S;w===l-1?(E=a-p,S=a):(E=w*p,S=(w+1)*p),x===u-1?(k=i-f,A=i):(k=x*f,A=(x+1)*f);let C=await sl(e,[E,k],[S,A],[2,3]);o.push(C)}let m=s,h=n;(a!==m||i!==h)&&(e=await $t(e,{size:[m,h]}))}return o.push(e),{frames:o,num_splits_h:l,num_splits_w:u}}};var bd=class extends W{constructor(e){super({do_pad:!0,pad_size:{width:e.image_size,height:e.image_size},...e}),this.constant_values=this.config.background_color.map(r=>r*this.rescale_factor)}pad_image(e,r,s,n){return super.pad_image(e,r,s,{constant_values:this.constant_values,center:!0,...n})}};var vd=class extends W{constructor(e){let{resize_mode:r,fill_color:s,interpolation:n,size:o,...a}=e,i=r==="squash"?{width:o,height:o}:r==="shortest"?{shortest_edge:o}:{longest_edge:o},l=n==="bicubic"?3:2;super({...a,size:i,resample:l,do_center_crop:!0,crop_size:o,do_normalize:!0})}};var kd=class extends W{};var Gs=class extends W{post_process_panoptic_segmentation(...e){return ad(...e)}post_process_instance_segmentation(...e){return id(...e)}},Ed=class extends Gs{};var Ad=class extends Gs{};var hl=class extends W{},Md=class extends hl{};var _l=class extends W{},Td=class extends _l{};var gl=class extends W{},Sd=class extends gl{};var wl=class extends W{},Od=class extends wl{};var xl=class extends W{},Id=class extends xl{};var Cd=class extends js{};var qs=class extends W{post_process_object_detection(...e){return as(...e)}},Pd=class extends qs{};var zd=class extends qs{};var Dt=336,xz=[2,3],{ceil:_b,floor:Bn,sqrt:gb}=Math,Ld=class extends W{constructor(e){super({...e,do_normalize:!0,do_pad:!0,pad_size:"custom",do_convert_rgb:!0,do_resize:!0}),this._num_crops=e.num_crops}calc_num_image_tokens_from_image_size(e,r){let{num_img_tokens:s}=this.config;return Bn((Bn(r/Dt)*Bn(e/Dt)+1)*s+1+(Bn(r/Dt)+1)*gb(s))}get_resize_output_image_size(e,r){let s=this._num_crops,[n,o]=e.size,a=n/o,i=1;for(;i*Math.ceil(i/a)<=s;)i+=1;i-=1;let l=Math.floor(i*336),u=Math.floor(l/a);return[l,u]}pad_image(e,r,s,n={}){let[o,a]=r,i=Dt*_b(o/Dt),l=Dt*_b(a/Dt),u=[1,1,1].map((p,f)=>(p-this.image_mean[f])/this.image_std[f]);return super.pad_image(e,r,{width:l,height:i},{center:!0,constant_values:u,...n})}async _call(e,{num_crops:r=null}={}){if(this._num_crops=r??=this.config.num_crops,r<4||gb(r)%1!==0)throw new Error("num_crops must be a square number >= 4");Array.isArray(e)||(e=[e]);let s=e.length,n=await Promise.all(e.map(m=>this.preprocess(m))),o=n.map(m=>m.original_size),a=n.map(m=>m.reshaped_input_size),i=[];for(let{pixel_values:m}of n){m.unsqueeze_(0);let[h,w]=m.dims.slice(-2),x=await $t(m,{size:[Dt,Dt],mode:"bicubic"});if(r>0){let k=[],E=gb(r),A=Bn(w/E),S=Bn(h/E);for(let P=0;P<E;++P)for(let C=0;C<E;++C){let v,F,H,V;P===E-1?(F=h-S,V=h):(F=P*S,V=(P+1)*S),C===E-1?(v=w-A,H=w):(v=C*A,H=(C+1)*A);let Y=await sl(m,[F,v],[V,H],xz);k.push(Y)}let T=await $t(Ee(k,0),{size:[Dt,Dt],mode:"bicubic"});i.push(Ee([x,T],0))}else i.push(x)}let l=Rt(i,0),u=a.map(m=>m.map(h=>Dt*_b(h/Dt))),p=new D("int64",u.flat(),[s,2]),f=u.map(([m,h])=>this.calc_num_image_tokens_from_image_size(h,m));return{pixel_values:l,original_sizes:o,reshaped_input_sizes:a,image_sizes:p,num_img_tokens:f}}};var Nd=class extends W{get_resize_output_image_size(e,r){let{longest_edge:s}=r;if(s===void 0)throw new Error("size must contain 'longest_edge'");let[n,o]=e.size,a=Math.max(n,o)/s,i=n,l=o;a>1&&(i=Math.floor(n/a),l=Math.floor(o/a));let{patch_size:u,spatial_merge_size:p}=this.config;if(!p)throw new Error("config must contain 'spatial_merge_size'");let f=u*p,m=Math.floor((i-1)/f)+1,h=Math.floor((l-1)/f)+1;return[m*f,h*f]}};var $d=class extends W{};function yz(t,e,r=28,s=3136,n=784*1280){if(t<r||e<r)throw new Error(`height:${t} or width:${e} must be larger than factor:${r}`);if(Math.max(t,e)/Math.min(t,e)>200)throw new Error(`absolute aspect ratio must be smaller than 200, got ${Math.max(t,e)/Math.min(t,e)}`);let o=Math.round(t/r)*r,a=Math.round(e/r)*r;if(o*a>n){let i=Math.sqrt(t*e/n);o=Math.floor(t/i/r)*r,a=Math.floor(e/i/r)*r}else if(o*a<s){let i=Math.sqrt(s/(t*e));o=Math.ceil(t*i/r)*r,a=Math.ceil(e*i/r)*r}return[o,a]}var Rd=class extends W{constructor(e){super(e),this.min_pixels=e.min_pixels??e.size?.shortest_edge,this.max_pixels=e.max_pixels??e.size?.longest_edge,this.patch_size=e.patch_size,this.merge_size=e.merge_size}get_resize_output_image_size(e,r){let s=this.patch_size*this.merge_size;return yz(e.height,e.width,s,this.min_pixels,this.max_pixels)}async _call(e,...r){let{pixel_values:s,original_sizes:n,reshaped_input_sizes:o}=await super._call(e,...r),a=s,{temporal_patch_size:i,merge_size:l,patch_size:u}=this.config;a.dims[0]===1&&(a=Ee(Array.from({length:i},()=>a),0));let p=a.dims[0]/i,f=a.dims[1],m=Math.floor(a.dims[2]/u),h=Math.floor(a.dims[3]/u),w=a.view(p,i,f,Math.floor(m/l),l,u,Math.floor(h/l),l,u).permute(0,3,6,4,7,2,1,5,8).view(p*m*h,f*i*u*u),x=new D("int64",[p,m,h],[1,3]);return{pixel_values:w,image_grid_thw:x,original_sizes:n,reshaped_input_sizes:o}}};var Dd=class extends W{post_process_object_detection(...e){return as(...e)}};var Fn=class extends W{reshape_input_points(e,r,s,n=!1){e=structuredClone(e);let o=Jy(e);if(o.length===3)n||(o=[1,...o]),e=[e];else if(o.length!==4)throw Error("The input_points must be a 4D tensor of shape `batch_size`, `point_batch_size`, `nb_points_per_image`, `2`.");for(let a=0;a<e.length;++a){let[i,l]=r[a],[u,p]=s[a],f=[p/l,u/i];for(let m=0;m<e[a].length;++m)for(let h=0;h<e[a][m].length;++h)for(let w=0;w<e[a][m][h].length;++w)e[a][m][h][w]*=f[w%2]}return new D("float32",Float32Array.from(e.flat(1/0)),o)}add_input_labels(e,r){let s=Jy(e);if(s.length===2)s=[1,...s],e=[e];else if(s.length!==3)throw Error("The input_points must be a 4D tensor of shape `batch_size`, `point_batch_size`, `nb_points_per_image`, `2`.");if(s.some((n,o)=>n!==r.dims[o]))throw Error(`The first ${s.length} dimensions of 'input_points' and 'input_labels' must be the same.`);return new D("int64",e.flat(1/0).map(BigInt),s)}async _call(e,{input_points:r=null,input_labels:s=null,input_boxes:n=null}={}){let o=await super._call(e);if(r&&(o.input_points=this.reshape_input_points(r,o.original_sizes,o.reshaped_input_sizes)),s){if(!o.input_points)throw Error("`input_points` must be provided if `input_labels` are provided.");o.input_labels=this.add_input_labels(s,o.input_points)}return n&&(o.input_boxes=this.reshape_input_points(n,o.original_sizes,o.reshaped_input_sizes,!0)),o}async post_process_masks(e,r,s,{mask_threshold:n=0,binarize:o=!0,pad_size:a=null}={}){let i=[];a=a??this.pad_size??this.size;let l=[a.height,a.width];for(let u=0;u<r.length;++u){let p=r[u],f=s[u],m=await $t(e[u],{mode:"bilinear",size:l});if(m=m.slice(null,null,[0,f[0]],[0,f[1]]),m=await $t(m,{mode:"bilinear",size:p}),o){let h=m.data,w=new Uint8Array(h.length);for(let x=0;x<h.length;++x)h[x]>n&&(w[x]=1);m=new D("bool",w,m.dims)}i.push(m)}return i}generate_crop_boxes(e,r,{crop_n_layers:s=0,overlap_ratio:n=512/1500,points_per_crop:o=32,crop_n_points_downscale_factor:a=1}={}){}};var yl=class extends W{post_process_semantic_segmentation(...e){return od(...e)}},Ud=class extends yl{};var bl=class extends W{post_process_semantic_segmentation(...e){return od(...e)}},Bd=class extends bl{};var Fd=class extends W{};var jd=class extends W{pad_image(e,r,s,n={}){let[o,a,i]=r;return super.pad_image(e,r,{width:a+(s-a%s)%s,height:o+(s-o%s)%s},{mode:"symmetric",center:!1,constant_values:-1,...n})}};var vl=class extends W{},Gd=class extends vl{};var qd=class extends W{async _call(e,r){Array.isArray(e)||(e=[e]),Array.isArray(r)||(r=[r]);let s=await Promise.all(e.map(a=>this.preprocess(a))),n=await Promise.all(r.map(a=>this.preprocess(a,{do_normalize:!1,do_convert_rgb:!1,do_convert_grayscale:!0})));return{pixel_values:Rt(s.map((a,i)=>Ee([a.pixel_values,n[i].pixel_values],0)),0),original_sizes:s.map(a=>a.original_size),reshaped_input_sizes:s.map(a=>a.reshaped_input_size)}}};var Wd=class extends W{post_process_pose_estimation(e,r,{threshold:s=null}={}){let n=e.tolist(),[o,a,i,l]=e.dims,u=[];for(let p=0;p<o;++p){let f=n[p],m=r[p],h=[];for(let w=0;w<m.length;++w){let x=m[w],k=[],E=[],A=[],S=x.at(-2)/l,T=x.at(-1)/i;for(let P=0;P<f.length;++P){let[C,v]=[0,0],F=0,H=-1/0,V=f[P];for(let X=0;X<V.length;++X){let Y=V[X];for(let U=0;U<Y.length;++U){let z=Y[U];F+=z,H=Math.max(H,z),C+=(U+.5)*z,v+=X*z}}if(s!=null&&H<s)continue;let J=[S*C/F,T*v/F];k.push(J),A.push(P),E.push(H)}h.push({bbox:x,scores:E,labels:A,keypoints:k})}u.push(h)}return u}};var kl=class extends W{post_process_object_detection(...e){return as(...e)}},Vd=class extends kl{};var $e=class{static async from_pretrained(e,r={}){let s=await ut(e,Or,!0,r),n=s.image_processor_type??s.feature_extractor_type,o=jn[n?.replace(/Fast$/,"")];return o||(n!==void 0&&Q.warn(`Image processor type '${n}' not found, assuming base ImageProcessor. Please report this at ${ns}.`),o=W),new o(s)}};var Hd=class extends oe{static tokenizer_class=Z;static image_processor_class=$e;constructor(e,r,s){super(e,r,s);let{tasks_answer_post_processing_type:n,task_prompts_without_inputs:o,task_prompts_with_input:a}=this.image_processor.config;this.tasks_answer_post_processing_type=new Map(Object.entries(n??{})),this.task_prompts_without_inputs=new Map(Object.entries(o??{})),this.task_prompts_with_input=new Map(Object.entries(a??{})),this.regexes={quad_boxes:/(.+?)<loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)>/gm,bboxes:/([^<]+)?<loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)>/gm},this.size_per_bin=1e3}construct_prompts(e){typeof e=="string"&&(e=[e]);let r=[];for(let s of e)if(this.task_prompts_without_inputs.has(s))r.push(this.task_prompts_without_inputs.get(s));else{for(let[n,o]of this.task_prompts_with_input)if(s.includes(n)){r.push(o.replaceAll("{input}",s).replaceAll(n,""));break}r.length!==e.length&&r.push(s)}return r}post_process_generation(e,r,s){let n=this.tasks_answer_post_processing_type.get(r)??"pure_text";e=e.replaceAll("<s>","").replaceAll("</s>","");let o;switch(n){case"pure_text":o=e;break;case"description_with_bboxes":case"bboxes":case"phrase_grounding":case"ocr":let a=n==="ocr"?"quad_boxes":"bboxes",i=e.matchAll(this.regexes[a]),l=[],u=[];for(let[p,f,...m]of i)l.push(f?f.trim():l.at(-1)??""),u.push(m.map((h,w)=>(Number(h)+.5)/this.size_per_bin*s[w%2]));o={labels:l,[a]:u};break;default:throw new Error(`Task "${r}" (of type "${n}") not yet implemented.`)}return{[r]:o}}async _call(e,r=null,s={}){if(!e&&!r)throw new Error("Either text or images must be provided");let n=await this.image_processor(e,s),o=r?this.tokenizer(this.construct_prompts(r),s):{};return{...n,...o}}};var Xd=class extends oe{static image_processor_class=$e;static feature_extractor_class=et;static tokenizer_class=Z;static uses_processor_config=!0;static uses_chat_template_file=!0;constructor(e,r,s){super(e,r,s),this.audio_seq_length=this.config.audio_seq_length,this.image_seq_length=this.config.image_seq_length;let{audio_token_id:n,boa_token:o,audio_token:a,eoa_token:i,image_token_id:l,boi_token:u,image_token:p,eoi_token:f}=this.tokenizer.config;this.audio_token_id=n,this.boa_token=o,this.audio_token=a;let m=a.repeat(this.audio_seq_length);this.full_audio_sequence=`
12
+ }`,h=new Function(Object.keys(I),N)(...Object.values(I)),N=`methodCaller<(${b.map(U=>U.name)}) => ${g.name}>`,vS(Object.defineProperty(h,"name",{value:N}))}function SS(u,d){return d>>>=0,(u=Bt(u>>>0))==Bt(d)}function TS(u){return(u>>>=0)?(u=Mu(u),Xt(globalThis[u])):Xt(globalThis)}function OS(u){return u=Mu(u>>>0),Xt(e[u])}function IS(u,d){return d>>>=0,u=Bt(u>>>0),d=Bt(d),Xt(u[d])}function CS(u){9<(u>>>=0)&&(Ss[u+1]+=1)}function ov(u,d,h,g,b){return f0[u>>>0](d>>>0,h>>>0,g>>>0,b>>>0)}function LS(u,d,h,g,b){return ov(u>>>0,d>>>0,h>>>0,g>>>0,b>>>0)}function PS(){return Xt([])}function zS(u){u=Bt(u>>>0);for(var d=Array(u.length),h=0;h<u.length;h++)d[h]=u[h];return Xt(d)}function NS(u){return Xt(Mu(u>>>0))}function $S(){return Xt({})}function RS(u){for(var d=Bt(u>>>=0);d.length;){var h=d.pop();d.pop()(h)}i0(u)}function DS(u,d,h){d>>>=0,h>>>=0,u=Bt(u>>>0),d=Bt(d),h=Bt(h),u[d]=h}function FS(u,d){u=Et(u),d>>>=0,u=new Date(1e3*u),(v(),F)[d>>>2>>>0]=u.getUTCSeconds(),(v(),F)[d+4>>>2>>>0]=u.getUTCMinutes(),(v(),F)[d+8>>>2>>>0]=u.getUTCHours(),(v(),F)[d+12>>>2>>>0]=u.getUTCDate(),(v(),F)[d+16>>>2>>>0]=u.getUTCMonth(),(v(),F)[d+20>>>2>>>0]=u.getUTCFullYear()-1900,(v(),F)[d+24>>>2>>>0]=u.getUTCDay(),u=(u.getTime()-Date.UTC(u.getUTCFullYear(),0,1,0,0,0,0))/864e5|0,(v(),F)[d+28>>>2>>>0]=u}var av=u=>u%4==0&&(u%100!=0||u%400==0),iv=[0,31,60,91,121,152,182,213,244,274,305,335],lv=[0,31,59,90,120,151,181,212,243,273,304,334];function BS(u,d){u=Et(u),d>>>=0,u=new Date(1e3*u),(v(),F)[d>>>2>>>0]=u.getSeconds(),(v(),F)[d+4>>>2>>>0]=u.getMinutes(),(v(),F)[d+8>>>2>>>0]=u.getHours(),(v(),F)[d+12>>>2>>>0]=u.getDate(),(v(),F)[d+16>>>2>>>0]=u.getMonth(),(v(),F)[d+20>>>2>>>0]=u.getFullYear()-1900,(v(),F)[d+24>>>2>>>0]=u.getDay();var h=(av(u.getFullYear())?iv:lv)[u.getMonth()]+u.getDate()-1|0;(v(),F)[d+28>>>2>>>0]=h,(v(),F)[d+36>>>2>>>0]=-60*u.getTimezoneOffset(),h=new Date(u.getFullYear(),6,1).getTimezoneOffset();var g=new Date(u.getFullYear(),0,1).getTimezoneOffset();u=0|(h!=g&&u.getTimezoneOffset()==Math.min(g,h)),(v(),F)[d+32>>>2>>>0]=u}function US(u){u>>>=0;var d=new Date((v(),F)[u+20>>>2>>>0]+1900,(v(),F)[u+16>>>2>>>0],(v(),F)[u+12>>>2>>>0],(v(),F)[u+8>>>2>>>0],(v(),F)[u+4>>>2>>>0],(v(),F)[u>>>2>>>0],0),h=(v(),F)[u+32>>>2>>>0],g=d.getTimezoneOffset(),b=new Date(d.getFullYear(),6,1).getTimezoneOffset(),M=new Date(d.getFullYear(),0,1).getTimezoneOffset(),I=Math.min(M,b);return 0>h?(v(),F)[u+32>>>2>>>0]=+(b!=M&&I==g):0<h!=(I==g)&&(b=Math.max(M,b),d.setTime(d.getTime()+6e4*((0<h?I:b)-g))),(v(),F)[u+24>>>2>>>0]=d.getDay(),h=(av(d.getFullYear())?iv:lv)[d.getMonth()]+d.getDate()-1|0,(v(),F)[u+28>>>2>>>0]=h,(v(),F)[u>>>2>>>0]=d.getSeconds(),(v(),F)[u+4>>>2>>>0]=d.getMinutes(),(v(),F)[u+8>>>2>>>0]=d.getHours(),(v(),F)[u+12>>>2>>>0]=d.getDate(),(v(),F)[u+16>>>2>>>0]=d.getMonth(),(v(),F)[u+20>>>2>>>0]=d.getYear(),u=d.getTime(),BigInt(isNaN(u)?-1:u/1e3)}function cv(u,d,h,g,b,M,I){return n?De(16,1,u,d,h,g,b,M,I):-52}function uv(u,d,h,g,b,M){if(n)return De(17,1,u,d,h,g,b,M)}var Yi={},jS=()=>performance.timeOrigin+performance.now();function pv(u,d){if(n)return De(18,1,u,d);if(Yi[u]&&(clearTimeout(Yi[u].id),delete Yi[u]),!d)return 0;var h=setTimeout(()=>{delete Yi[u],At(()=>Bv(u,performance.timeOrigin+performance.now()))},d);return Yi[u]={id:h,Ce:d},0}function GS(u,d,h,g){u>>>=0,d>>>=0,h>>>=0,g>>>=0;var b=new Date().getFullYear(),M=new Date(b,0,1).getTimezoneOffset();b=new Date(b,6,1).getTimezoneOffset();var I=Math.max(M,b);(v(),C)[u>>>2>>>0]=60*I,(v(),F)[d>>>2>>>0]=+(M!=b),u=(d=N=>{var U=Math.abs(N);return`UTC${0<=N?"-":"+"}${String(Math.floor(U/60)).padStart(2,"0")}${String(U%60).padStart(2,"0")}`})(M),d=d(b),b<M?(gr(u,h,17),gr(d,g,17)):(gr(u,g,17),gr(d,h,17))}var qS=()=>Date.now(),WS=1;function VS(u,d,h){if(h>>>=0,!(0<=u&&3>=u))return 28;if(u===0)u=Date.now();else{if(!WS)return 52;u=performance.timeOrigin+performance.now()}return u=Math.round(1e6*u),(v(),L)[h>>>3>>>0]=BigInt(u),0}var _0=[],dv=(u,d)=>{_0.length=0;for(var h;h=(v(),V)[u++>>>0];){var g=h!=105;d+=(g&=h!=112)&&d%8?4:0,_0.push(h==112?(v(),C)[d>>>2>>>0]:h==106?(v(),L)[d>>>3>>>0]:h==105?(v(),F)[d>>>2>>>0]:(v(),le)[d>>>3>>>0]),d+=g?8:4}return _0};function HS(u,d,h){return u>>>=0,d=dv(d>>>0,h>>>0),O0[u](...d)}function XS(u,d,h){return u>>>=0,d=dv(d>>>0,h>>>0),O0[u](...d)}var KS=()=>{};function QS(u,d){return S(Mn(u>>>0,d>>>0))}var YS=()=>{throw ke+=1,"unwind"};function JS(){return 4294901760}var ZS=()=>1,eT=()=>navigator.hardwareConcurrency;function tT(u){u>>>=0;var d=(v(),V).length;if(u<=d||4294901760<u)return!1;for(var h=1;4>=h;h*=2){var g=d*(1+.2/h);g=Math.min(g,u+100663296);e:{g=(Math.min(4294901760,65536*Math.ceil(Math.max(u,g)/65536))-Wr.buffer.byteLength+65535)/65536|0;try{Wr.grow(g),Ce();var b=1;break e}catch{}b=void 0}if(b)return!0}return!1}var lr=u=>{var d=wr(u)+1,h=Iu(d);return gr(u,h,d),h},m0=(u,d)=>{(v(),C)[u>>>2>>>0]=d;var h=(v(),C)[u>>>2>>>0];(v(),C)[u+4>>>2>>>0]=(d-h)/4294967296},Ji=u=>(v(),C)[u>>>2>>>0]+4294967296*(v(),F)[u+4>>>2>>>0],gt=[],rT=(u,d)=>{gt[u>>>0]=d},xr=[],Su=[],Tn=(u,d)=>{Su[u]=new Promise(h=>d.finally(()=>h(u)))},se=u=>{if(u)return gt[u>>>0]},sT=(u,d)=>{for(u=(v(),C)[u>>>2>>>0];u;u=(v(),C)[u>>>2>>>0])d[(v(),F)[u+4>>>2>>>0]](u)},Tu=(u,d,h)=>{(v(),C)[u>>>2>>>0]=d,(v(),C)[u+4>>>2>>>0]=h},fv=u=>{var d=(v(),C)[u>>>2>>>0];return u=(v(),C)[u+4>>>2>>>0],Mn(d,u)},yr=u=>{var d=(v(),C)[u>>>2>>>0];return u=(v(),C)[u+4>>>2>>>0],d?Mn(d,u):u===0?"":void 0},nT=u=>{var d=yr(u+4),h=(h=(v(),C)[u+12>>>2>>>0])?se(h):"auto";if(u+=16){var g=se((v(),C)[u+4>>>2>>>0]),b=(v(),C)[u+16>>>2>>>0],M=(v(),C)[u+20>>>2>>>0];if(b){for(var I={},N=0;N<b;++N){var U=M+24*N;I[fv(U+4)]=(v(),le)[U+16>>>3>>>0]}b=I}else b=void 0;u={module:g,constants:b,entryPoint:yr(u+8)}}else u=void 0;return{label:d,layout:h,compute:u}},_v=(u,d)=>{function h(g,b){g=u[g],(v(),C)[d+b>>>2>>>0]=g}h("maxTextureDimension1D",4),h("maxTextureDimension2D",8),h("maxTextureDimension3D",12),h("maxTextureArrayLayers",16),h("maxBindGroups",20),h("maxBindGroupsPlusVertexBuffers",24),h("maxBindingsPerBindGroup",28),h("maxDynamicUniformBuffersPerPipelineLayout",32),h("maxDynamicStorageBuffersPerPipelineLayout",36),h("maxSampledTexturesPerShaderStage",40),h("maxSamplersPerShaderStage",44),h("maxStorageBuffersPerShaderStage",48),h("maxStorageTexturesPerShaderStage",52),h("maxUniformBuffersPerShaderStage",56),h("minUniformBufferOffsetAlignment",80),h("minStorageBufferOffsetAlignment",84),m0(d+64,u.maxUniformBufferBindingSize),m0(d+72,u.maxStorageBufferBindingSize),h("maxVertexBuffers",88),m0(d+96,u.maxBufferSize),h("maxVertexAttributes",104),h("maxVertexBufferArrayStride",108),h("maxInterStageShaderVariables",112),h("maxColorAttachments",116),h("maxColorAttachmentBytesPerSample",120),h("maxComputeWorkgroupStorageSize",124),h("maxComputeInvocationsPerWorkgroup",128),h("maxComputeWorkgroupSizeX",132),h("maxComputeWorkgroupSizeY",136),h("maxComputeWorkgroupSizeZ",140),h("maxComputeWorkgroupsPerDimension",144),u.Ae!==void 0&&h("maxImmediateSize",148)},oT=[,"validation","out-of-memory","internal"],aT=[,"compatibility","core"],mv={1:"core-features-and-limits",2:"depth-clip-control",3:"depth32float-stencil8",4:"texture-compression-bc",5:"texture-compression-bc-sliced-3d",6:"texture-compression-etc2",7:"texture-compression-astc",8:"texture-compression-astc-sliced-3d",9:"timestamp-query",10:"indirect-first-instance",11:"shader-f16",12:"rg11b10ufloat-renderable",13:"bgra8unorm-storage",14:"float32-filterable",15:"float32-blendable",16:"clip-distances",17:"dual-source-blending",18:"subgroups",19:"texture-formats-tier1",20:"texture-formats-tier2",21:"primitive-index",22:"texture-component-swizzle",327692:"chromium-experimental-unorm16-texture-formats",327729:"chromium-experimental-multi-draw-indirect"},iT=[,"low-power","high-performance"],lT=[,"occlusion","timestamp"],cT={undefined:1,unknown:1,destroyed:2};function uT(u,d,h,g,b,M){d=Et(d),h=Et(h),g>>>=0,b>>>=0,M>>>=0;var I=se(u>>>0);if(u={},M){var N=(v(),C)[M+12>>>2>>>0];if(N){var U=(v(),C)[M+16>>>2>>>0];u.requiredFeatures=Array.from((v(),C).subarray(U>>>2>>>0,U+4*N>>>2>>>0),ne=>mv[ne])}var Y=(v(),C)[M+20>>>2>>>0];if(Y){let ne=function(Mt,pt,Ts=!1){pt=Y+pt,(pt=(v(),C)[pt>>>2>>>0])==4294967295||Ts&&pt==0||(je[Mt]=pt)},ut=function(Mt,pt){pt=Y+pt;var Ts=(v(),C)[pt>>>2>>>0],NO=(v(),C)[pt+4>>>2>>>0];Ts==4294967295&&NO==4294967295||(je[Mt]=Ji(pt))};var Te=ne,$e=ut,je={};ne("maxTextureDimension1D",4),ne("maxTextureDimension2D",8),ne("maxTextureDimension3D",12),ne("maxTextureArrayLayers",16),ne("maxBindGroups",20),ne("maxBindGroupsPlusVertexBuffers",24),ne("maxDynamicUniformBuffersPerPipelineLayout",32),ne("maxDynamicStorageBuffersPerPipelineLayout",36),ne("maxSampledTexturesPerShaderStage",40),ne("maxSamplersPerShaderStage",44),ne("maxStorageBuffersPerShaderStage",48),ne("maxStorageTexturesPerShaderStage",52),ne("maxUniformBuffersPerShaderStage",56),ne("minUniformBufferOffsetAlignment",80),ne("minStorageBufferOffsetAlignment",84),ut("maxUniformBufferBindingSize",64),ut("maxStorageBufferBindingSize",72),ne("maxVertexBuffers",88),ut("maxBufferSize",96),ne("maxVertexAttributes",104),ne("maxVertexBufferArrayStride",108),ne("maxInterStageShaderVariables",112),ne("maxColorAttachments",116),ne("maxColorAttachmentBytesPerSample",120),ne("maxComputeWorkgroupStorageSize",124),ne("maxComputeInvocationsPerWorkgroup",128),ne("maxComputeWorkgroupSizeX",132),ne("maxComputeWorkgroupSizeY",136),ne("maxComputeWorkgroupSizeZ",140),ne("maxComputeWorkgroupsPerDimension",144),ne("maxImmediateSize",148,!0),u.requiredLimits=je}(N=(v(),C)[M+24>>>2>>>0])&&(N={label:yr(N+4)},u.defaultQueue=N),u.label=yr(M+4)}ke+=1,Tn(d,I.requestDevice(u).then(ne=>{--ke,At(()=>{gt[b>>>0]=ne.queue,gt[g>>>0]=ne,Tn(h,ne.lost.then(ut=>{At(()=>{ne.onuncapturederror=()=>{};var Mt=ue(),pt=lr(ut.message);y0(h,cT[ut.reason],pt),ce(Mt)})})),ne.onuncapturederror=ut=>{var Mt=5;ut.error instanceof GPUValidationError?Mt=2:ut.error instanceof GPUOutOfMemoryError?Mt=3:ut.error instanceof GPUInternalError&&(Mt=4);var pt=ue();ut=lr(ut.error.message),$v(g,Mt,ut),ce(pt)},"adapterInfo"in ne||(ne.adapterInfo=I.info),k0(d,1,g,0)})},ne=>{--ke,At(()=>{var ut=ue(),Mt=lr(ne.message);k0(d,3,g,Mt),h&&y0(h,4,Mt),ce(ut)})}))}function pT(u){var d=se(u>>>=0),h=xr[u];if(h){for(var g=0;g<h.length;++g)h[g]();delete xr[u]}d.destroy()}function dT(u,d,h){h>>>=0;var g=se(u>>>=0);h==4294967295&&(h=void 0);try{var b=g.getMappedRange(d>>>0,h)}catch{return 0}var M=M0(16,b.byteLength);return(v(),V).set(new Uint8Array(b),M>>>0),xr[u].push(()=>Kt(M)),M}function fT(u,d,h){h>>>=0;var g=se(u>>>=0);h==4294967295&&(h=void 0);try{var b=g.getMappedRange(d>>>0,h)}catch{return 0}var M=M0(16,b.byteLength);return(v(),V).fill(0,M,b.byteLength),xr[u].push(()=>{new Uint8Array(b).set((v(),V).subarray(M>>>0,M+b.byteLength>>>0)),Kt(M)}),M}function _T(u,d,h,g,b){u>>>=0,d=Et(d),h=Et(h),b>>>=0;var M=se(u);xr[u]=[],b==4294967295&&(b=void 0),ke+=1,Tn(d,M.mapAsync(h,g>>>0,b).then(()=>{--ke,At(()=>{b0(d,1,0)})},I=>{--ke,At(()=>{ue();var N=lr(I.message);b0(d,I.name==="AbortError"?4:I.name==="OperationError"?3:0,N),delete xr[u]})}))}function mT(u){var d=se(u>>>=0),h=xr[u];if(h){for(var g=0;g<h.length;++g)h[g]();delete xr[u],d.unmap()}}function hT(u){delete gt[u>>>0]}function gT(u,d,h){u>>>=0,d>>>=0,h>>>=0;var g=!!(v(),C)[d+32>>>2>>>0];d={label:yr(d+4),usage:(v(),C)[d+16>>>2>>>0],size:Ji(d+24),mappedAtCreation:g},u=se(u);try{var b=u.createBuffer(d)}catch{return!1}return gt[h>>>0]=b,g&&(xr[h]=[]),!0}function wT(u,d,h,g){u>>>=0,d=Et(d),g>>>=0,h=nT(h>>>0),u=se(u),ke+=1,Tn(d,u.createComputePipelineAsync(h).then(b=>{--ke,At(()=>{gt[g>>>0]=b,x0(d,1,g,0)})},b=>{--ke,At(()=>{var M=ue(),I=lr(b.message);x0(d,b.reason==="validation"?3:b.reason==="internal"?4:0,g,I),ce(M)})}))}function xT(u,d,h){u>>>=0,d>>>=0,h>>>=0;var g=(v(),C)[d>>>2>>>0],b=(v(),F)[g+4>>>2>>>0];d={label:yr(d+4),code:""},b===2&&(d.code=fv(g+8)),u=se(u).createShaderModule(d),gt[h>>>0]=u}var yT=u=>{(u=se(u)).onuncapturederror=null,u.destroy()};function bT(u,d){d=Et(d),u=se(u>>>0),ke+=1,Tn(d,u.popErrorScope().then(h=>{--ke,At(()=>{var g=5;h?h instanceof GPUValidationError?g=2:h instanceof GPUOutOfMemoryError?g=3:h instanceof GPUInternalError&&(g=4):g=1;var b=ue(),M=h?lr(h.message):0;v0(d,1,g,M),ce(b)})},h=>{--ke,At(()=>{var g=ue(),b=lr(h.message);v0(d,1,5,b),ce(g)})}))}function vT(u,d,h,g){if(d=Et(d),g>>>=0,h>>>=0){var b={featureLevel:aT[(v(),F)[h+4>>>2>>>0]],powerPreference:iT[(v(),F)[h+8>>>2>>>0]],forceFallbackAdapter:!!(v(),C)[h+12>>>2>>>0]};(u=(v(),C)[h>>>2>>>0])!==0&&(v(),b.Fe=!!(v(),C)[u+8>>>2>>>0])}"gpu"in navigator?(ke+=1,Tn(d,navigator.gpu.requestAdapter(b).then(M=>{--ke,At(()=>{if(M)gt[g>>>0]=M,Zi(d,1,g,0);else{var I=ue(),N=lr("WebGPU not available on this browser (requestAdapter returned null)");Zi(d,3,g,N),ce(I)}})},M=>{--ke,At(()=>{var I=ue(),N=lr(M.message);Zi(d,4,g,N),ce(I)})}))):(b=ue(),u=lr("WebGPU not available on this browser (navigator.gpu is not available)"),Zi(d,3,g,u),ce(b))}function kT(u,d,h){return u>>>=0,d>>>=0,h>>>=0,nv(async()=>{var g=[];if(h){var b=(v(),F)[h>>>2>>>0];g.length=d+1,g[d]=new Promise(N=>setTimeout(N,b,0))}else g.length=d;for(var M=0;M<d;++M){var I=Ji(u+8*M);if(!(I in Su))return I;g[M]=Su[I]}return g=await Promise.race(g),delete Su[g],g})}var h0,g0={},hv=()=>{if(!h0){var u,d={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(globalThis.navigator?.language??"C").replace("-","_")+".UTF-8",_:"./this.program"};for(u in g0)g0[u]===void 0?delete d[u]:d[u]=g0[u];var h=[];for(u in d)h.push(`${u}=${d[u]}`);h0=h}return h0};function gv(u,d){if(n)return De(19,1,u,d);u>>>=0,d>>>=0;var h,g=0,b=0;for(h of hv()){var M=d+g;(v(),C)[u+b>>>2>>>0]=M,g+=gr(h,M,1/0)+1,b+=4}return 0}function wv(u,d){if(n)return De(20,1,u,d);u>>>=0,d>>>=0;var h=hv();for(var g of((v(),C)[u>>>2>>>0]=h.length,u=0,h))u+=wr(g)+1;return(v(),C)[d>>>2>>>0]=u,0}function xv(u){return n?De(21,1,u):52}function yv(u,d,h,g){return n?De(22,1,u,d,h,g):52}function bv(u,d,h,g){return n?De(23,1,u,d,h,g):70}var ET=[null,[],[]];function vv(u,d,h,g){if(n)return De(24,1,u,d,h,g);d>>>=0,h>>>=0,g>>>=0;for(var b=0,M=0;M<h;M++){var I=(v(),C)[d>>>2>>>0],N=(v(),C)[d+4>>>2>>>0];d+=8;for(var U=0;U<N;U++){var Y=u,Te=(v(),V)[I+U>>>0],$e=ET[Y];Te===0||Te===10?((Y===1?T:S)(D1($e)),$e.length=0):$e.push(Te)}b+=N}return(v(),C)[g>>>2>>>0]=b,0}function AT(u){return u>>>0}function MT(u,d){return _v(se(u>>>0).limits,d>>>0),1}function ST(u,d){return se(u>>>0).features.has(mv[d])}function TT(u){return BigInt(se(u>>>0).size)}function OT(u){return BigInt(se(u>>>0).usage)}function IT(u,d){if(u>>>=0,d>>>=0){var h=yr(d+4);h={label:h,timestampWrites:d=(d=(v(),C)[d+12>>>2>>>0])!==0?{querySet:se((v(),C)[d+4>>>2>>>0]),beginningOfPassWriteIndex:(v(),C)[d+8>>>2>>>0],endOfPassWriteIndex:(v(),C)[d+12>>>2>>>0]}:void 0}}return d=se(u),u=Cv(0),h=d.beginComputePass(h),gt[u>>>0]=h,u}function CT(u,d,h,g,b,M){h=Et(h),b=Et(b),M=Et(M),se(u>>>0).copyBufferToBuffer(se(d>>>0),h,se(g>>>0),b,M)}function LT(u){var d=se(u>>>0);return u=Ov(0),d=d.finish(),gt[u>>>0]=d,u}function PT(u,d,h,g,b,M){M=Et(M),se(u>>>0).resolveQuerySet(se(d>>>0),h,g,se(b>>>0),M)}function zT(u,d,h,g){se(u>>>0).dispatchWorkgroups(d,h,g)}function NT(u,d,h){h=Et(h),se(u>>>0).dispatchWorkgroupsIndirect(se(d>>>0),h)}function $T(u){se(u>>>0).end()}function RT(u,d,h,g,b){g>>>=0,b>>>=0,u=se(u>>>0),h=se(h>>>0),g==0?u.setBindGroup(d,h):u.setBindGroup(d,h,(v(),C),b>>>2,g)}function DT(u,d){se(u>>>0).setPipeline(se(d>>>0))}function FT(u,d,h){se(u>>>0).Ee(se(d>>>0),h)}function BT(u,d){var h=se(u>>>0);return u=Tv(0),d=h.getBindGroupLayout(d),gt[u>>>0]=d,u}function UT(u,d){function h(b){var M=(v(),C)[b+8>>>2>>>0],I=(v(),C)[b+32>>>2>>>0],N=(v(),C)[b+36>>>2>>>0],U=0;return sT(b,{327681:Y=>{U=(v(),C)[Y+8>>>2>>>0]}}),M?((I=Ji(b+24))==-1&&(I=void 0),M={buffer:se(M),offset:Ji(b+16),size:I}):M=se(I||N||U),{binding:(v(),C)[b+4>>>2>>>0],resource:M}}u>>>=0,d={label:yr(4+(d>>>=0)),layout:se((v(),C)[d+12>>>2>>>0]),entries:(function(b,M){for(var I=[],N=0;N<b;++N)I.push(h(M+40*N));return I})((v(),C)[d+16>>>2>>>0],(v(),C)[d+20>>>2>>>0])},u=se(u);var g=Sv(0);return rT(g,u.createBindGroup(d)),g}function jT(u,d){var h;return u>>>=0,(d>>>=0)&&(h={label:yr(d+4)}),d=se(u),u=Iv(0),h=d.createCommandEncoder(h),gt[u>>>0]=h,u}function GT(u,d){u>>>=0,d>>>=0,d={type:lT[(v(),F)[d+12>>>2>>>0]],count:(v(),C)[d+16>>>2>>>0]};var h=se(u);return u=Lv(0),d=h.createQuerySet(d),gt[u>>>0]=d,u}function qT(u,d){u=se(u>>>0).adapterInfo,d>>>=0,(v(),C)[d+52>>>2>>>0]=u.subgroupMinSize,(v(),C)[d+56>>>2>>>0]=u.subgroupMaxSize;var h=u.vendor+u.architecture+u.device+u.description,g=wr(h)+1,b=On(g);return b&&gr(h,b,g),h=b,g=wr(u.vendor),Tu(d+4,h,g),h+=g,g=wr(u.architecture),Tu(d+12,h,g),h+=g,g=wr(u.device),Tu(d+20,h,g),Tu(d+28,h+g,wr(u.description)),(v(),F)[d+36>>>2>>>0]=2,u=u.isFallbackAdapter?3:4,(v(),F)[d+40>>>2>>>0]=u,(v(),C)[d+44>>>2>>>0]=0,(v(),C)[d+48>>>2>>>0]=0,1}var WT={"core-features-and-limits":1,"depth-clip-control":2,"depth32float-stencil8":3,"texture-compression-bc":4,"texture-compression-bc-sliced-3d":5,"texture-compression-etc2":6,"texture-compression-astc":7,"texture-compression-astc-sliced-3d":8,"timestamp-query":9,"indirect-first-instance":10,"shader-f16":11,"rg11b10ufloat-renderable":12,"bgra8unorm-storage":13,"float32-filterable":14,"float32-blendable":15,"clip-distances":16,"dual-source-blending":17,subgroups:18,"texture-formats-tier1":19,"texture-formats-tier2":20,"primitive-index":21,"texture-component-swizzle":22,"chromium-experimental-unorm16-texture-formats":327692,"chromium-experimental-multi-draw-indirect":327729};function VT(u,d){d>>>=0;var h=se(u>>>0);u=On(4*h.features.size);var g=0,b=0;for(let M of h.features)0<=(h=WT[M])&&((v(),F)[u+g>>>2>>>0]=h,g+=4,b++);(v(),C)[d+4>>>2>>>0]=u,(v(),C)[d>>>2>>>0]=b}function HT(u,d){return _v(se(u>>>0).limits,d>>>0),1}function XT(u,d){se(u>>>0).pushErrorScope(oT[d])}function KT(u,d,h){d>>>=0,h>>>=0,u=se(u>>>0),d=Array.from((v(),F).subarray(h>>>2>>>0,h+4*d>>>2>>>0),g=>se(g)),u.submit(d)}function QT(u,d,h,g,b){h=Et(h),g>>>=0,b>>>=0,u=se(u>>>0),d=se(d>>>0),g=(v(),V).subarray(g>>>0,g+b>>>0),u.writeBuffer(d,h,g,0,b)}n||(function(){for(var u=e.numThreads-1;u--;)C1();Se.push(async()=>{var d=(async function(){if(!n)return Promise.all(ot.map(I1))})();xe++,await d,--xe==0&&He&&(d=He,He=null,d())})})(),n||(Wr=new WebAssembly.Memory({initial:256,maximum:65536,shared:!0}),Ce()),e.wasmBinary&&(f=e.wasmBinary),e.stackSave=()=>ue(),e.stackRestore=u=>ce(u),e.stackAlloc=u=>Iu(u),e.setValue=function(u,d,h="i8"){switch(h.endsWith("*")&&(h="*"),h){case"i1":case"i8":(v(),B)[u>>>0]=d;break;case"i16":(v(),q)[u>>>1>>>0]=d;break;case"i32":(v(),F)[u>>>2>>>0]=d;break;case"i64":(v(),L)[u>>>3>>>0]=BigInt(d);break;case"float":(v(),te)[u>>>2>>>0]=d;break;case"double":(v(),le)[u>>>3>>>0]=d;break;case"*":(v(),C)[u>>>2>>>0]=d;break;default:Ue(`invalid type for setValue: ${h}`)}},e.getValue=function(u,d="i8"){switch(d.endsWith("*")&&(d="*"),d){case"i1":case"i8":return(v(),B)[u>>>0];case"i16":return(v(),q)[u>>>1>>>0];case"i32":return(v(),F)[u>>>2>>>0];case"i64":return(v(),L)[u>>>3>>>0];case"float":return(v(),te)[u>>>2>>>0];case"double":return(v(),le)[u>>>3>>>0];case"*":return(v(),C)[u>>>2>>>0];default:Ue(`invalid type for getValue: ${d}`)}},e.UTF8ToString=Mn,e.stringToUTF8=gr,e.lengthBytesUTF8=wr;var kv,Ev,w0,Ou,Kt,On,Av,Mv,Sv,Tv,Ov,Iv,Cv,Lv,Pv,zv,Nv,x0,y0,b0,v0,Zi,k0,$v,E0,Rv,Dv,Fv,A0,Bv,Uv,M0,ge,el,jv,ce,Iu,ue,Gv,S0,qv,Wv,Vv,T0,Hv,Xv,Kv,Qv,Yv,Jv,Zv,ek,tk,rk,sk,nk,ok,ak,ik,lk,ck,uk,pk,dk,fk,_k,mk,hk,gk,wk,xk,yk,bk,vk,kk,Ek,Ak,Mk,Sk,Tk,Ok,Ik,Ck,br,YT=[qr,As,z1,F1,B1,U1,j1,G1,q1,W1,V1,H1,X1,K1,Q1,Y1,cv,uv,pv,gv,wv,xv,yv,bv,vv],O0={925676:(u,d,h,g,b)=>{if(e===void 0||!e.Uc)return 1;if((u=Mn(Number(u>>>0))).startsWith("./")&&(u=u.substring(2)),!(u=e.Uc.get(u)))return 2;if(d=Number(d>>>0),h=Number(h>>>0),g=Number(g>>>0),d+h>u.byteLength)return 3;try{let M=u.subarray(d,d+h);switch(b){case 0:(v(),V).set(M,g>>>0);break;case 1:e.ad?e.ad(g,M):e.oe(g,M);break;default:return 4}return 0}catch{return 4}},926500:(u,d,h)=>{e.Sd(u,(v(),V).subarray(d>>>0,d+h>>>0))},926564:()=>e.me(),926606:u=>{e.jd(u)},926643:()=>typeof wasmOffsetConverter<"u"};function JT(u,d,h,g){var b=ue();try{return ek(u,d,h,g)}catch(M){if(ce(b),M!==M+0)throw M;ge(1,0)}}function ZT(u,d,h){var g=ue();try{return Yv(u,d,h)}catch(b){if(ce(g),b!==b+0)throw b;ge(1,0)}}function eO(u,d,h){var g=ue();try{Vv(u,d,h)}catch(b){if(ce(g),b!==b+0)throw b;ge(1,0)}}function tO(u,d){var h=ue();try{return T0(u,d)}catch(g){if(ce(h),g!==g+0)throw g;ge(1,0)}}function rO(u){var d=ue();try{Hv(u)}catch(h){if(ce(d),h!==h+0)throw h;ge(1,0)}}function sO(u,d,h,g,b,M,I){var N=ue();try{return Qv(u,d,h,g,b,M,I)}catch(U){if(ce(N),U!==U+0)throw U;ge(1,0)}}function nO(u,d){var h=ue();try{tk(u,d)}catch(g){if(ce(h),g!==g+0)throw g;ge(1,0)}}function oO(u,d,h,g,b,M){var I=ue();try{Xv(u,d,h,g,b,M)}catch(N){if(ce(I),N!==N+0)throw N;ge(1,0)}}function aO(u,d,h,g){var b=ue();try{Zv(u,d,h,g)}catch(M){if(ce(b),M!==M+0)throw M;ge(1,0)}}function iO(u,d,h,g,b,M,I){var N=ue();try{sk(u,d,h,g,b,M,I)}catch(U){if(ce(N),U!==U+0)throw U;ge(1,0)}}function lO(u,d,h,g,b,M,I){var N=ue();try{nk(u,d,h,g,b,M,I)}catch(U){if(ce(N),U!==U+0)throw U;ge(1,0)}}function cO(u,d,h,g,b,M,I,N){var U=ue();try{fk(u,d,h,g,b,M,I,N)}catch(Y){if(ce(U),Y!==Y+0)throw Y;ge(1,0)}}function uO(u,d,h,g,b,M,I,N,U,Y,Te,$e){var je=ue();try{ok(u,d,h,g,b,M,I,N,U,Y,Te,$e)}catch(ne){if(ce(je),ne!==ne+0)throw ne;ge(1,0)}}function pO(u,d,h,g,b){var M=ue();try{return rk(u,d,h,g,b)}catch(I){if(ce(M),I!==I+0)throw I;ge(1,0)}}function dO(u,d,h,g,b){var M=ue();try{Kv(u,d,h,g,b)}catch(I){if(ce(M),I!==I+0)throw I;ge(1,0)}}function fO(u,d,h,g,b,M,I,N){var U=ue();try{Jv(u,d,h,g,b,M,I,N)}catch(Y){if(ce(U),Y!==Y+0)throw Y;ge(1,0)}}function _O(u){var d=ue();try{return _k(u)}catch(h){if(ce(d),h!==h+0)throw h;ge(1,0)}}function mO(u,d,h){var g=ue();try{return mk(u,d,h)}catch(b){if(ce(g),b!==b+0)throw b;ge(1,0)}}function hO(u,d){var h=ue();try{return Sk(u,d)}catch(g){if(ce(h),g!==g+0)throw g;return ge(1,0),0n}}function gO(u,d,h,g,b){var M=ue();try{hk(u,d,h,g,b)}catch(I){if(ce(M),I!==I+0)throw I;ge(1,0)}}function wO(u){var d=ue();try{return ak(u)}catch(h){if(ce(d),h!==h+0)throw h;return ge(1,0),0n}}function xO(u,d,h,g,b,M){var I=ue();try{return pk(u,d,h,g,b,M)}catch(N){if(ce(I),N!==N+0)throw N;ge(1,0)}}function yO(u,d,h,g,b,M){var I=ue();try{return gk(u,d,h,g,b,M)}catch(N){if(ce(I),N!==N+0)throw N;ge(1,0)}}function bO(u,d,h,g,b,M){var I=ue();try{return wk(u,d,h,g,b,M)}catch(N){if(ce(I),N!==N+0)throw N;ge(1,0)}}function vO(u,d,h,g,b,M,I,N){var U=ue();try{return dk(u,d,h,g,b,M,I,N)}catch(Y){if(ce(U),Y!==Y+0)throw Y;ge(1,0)}}function kO(u,d,h,g,b){var M=ue();try{return xk(u,d,h,g,b)}catch(I){if(ce(M),I!==I+0)throw I;return ge(1,0),0n}}function EO(u,d,h,g){var b=ue();try{return yk(u,d,h,g)}catch(M){if(ce(b),M!==M+0)throw M;ge(1,0)}}function AO(u,d,h,g){var b=ue();try{return bk(u,d,h,g)}catch(M){if(ce(b),M!==M+0)throw M;ge(1,0)}}function MO(u,d,h,g,b,M,I,N,U,Y,Te,$e){var je=ue();try{return vk(u,d,h,g,b,M,I,N,U,Y,Te,$e)}catch(ne){if(ce(je),ne!==ne+0)throw ne;ge(1,0)}}function SO(u,d,h,g,b,M,I,N,U,Y,Te){var $e=ue();try{kk(u,d,h,g,b,M,I,N,U,Y,Te)}catch(je){if(ce($e),je!==je+0)throw je;ge(1,0)}}function TO(u,d,h,g,b,M,I,N,U,Y,Te,$e,je,ne,ut,Mt){var pt=ue();try{Ek(u,d,h,g,b,M,I,N,U,Y,Te,$e,je,ne,ut,Mt)}catch(Ts){if(ce(pt),Ts!==Ts+0)throw Ts;ge(1,0)}}function OO(u,d,h,g){var b=ue();try{return Ak(u,d,h,g)}catch(M){if(ce(b),M!==M+0)throw M;ge(1,0)}}function IO(u,d,h,g,b){var M=ue();try{return Mk(u,d,h,g,b)}catch(I){if(ce(M),I!==I+0)throw I;ge(1,0)}}function CO(u,d,h){var g=ue();try{return lk(u,d,h)}catch(b){if(ce(g),b!==b+0)throw b;return ge(1,0),0n}}function LO(u,d,h){var g=ue();try{return ik(u,d,h)}catch(b){if(ce(g),b!==b+0)throw b;ge(1,0)}}function PO(u,d,h){var g=ue();try{return ck(u,d,h)}catch(b){if(ce(g),b!==b+0)throw b;ge(1,0)}}function zO(u,d,h,g){var b=ue();try{uk(u,d,h,g)}catch(M){if(ce(b),M!==M+0)throw M;ge(1,0)}}function Cu(){if(0<xe)He=Cu;else if(n)w?.(e),ae();else{for(var u=Se;0<u.length;)u.shift()(e);0<xe?He=Cu:(e.calledRun=!0,P||(ae(),w?.(e)))}}return n||(br=await rt(),Cu()),e.PTR_SIZE=4,e.webgpuInit=u=>{let d=new WeakMap,h,g,b=1;e.webgpuRegisterDevice=N=>{if(g!==void 0)throw Error("another WebGPU EP inference session is being created.");if(N){var U=d.get(N);if(!U){let Y=((Te,$e=0)=>{var je=Nv($e);return $e=zv($e,je),gt[je>>>0]=Te.queue,gt[$e>>>0]=Te,$e})(N,U=Mv(0));U=[b++,U,Y],d.set(N,U)}return h=N,g=U[0],U}h=void 0,g=0};let M=new Map;e.webgpuOnCreateSession=N=>{if(g!==void 0){var U=g;if(g=void 0,N){let Y=w0(U);M.set(N,Y),U===0&&u(h??se(Y))}h=void 0}},e.webgpuOnReleaseSession=N=>{M.delete(N)};let I=Symbol("gpuBufferMetadata");e.webgpuRegisterBuffer=(N,U,Y)=>{if(Y)return N[I]=[Y,NaN],Y;if(Y=N[I])return Y[1]++,Y[0];if((U=M.get(U))===void 0)throw Error("Invalid session handle passed to webgpuRegisterBuffer");return U=((Te,$e=0)=>(Te.mapState==="unmapped"||Ue(),$e=Pv($e),gt[$e>>>0]=Te,$e))(N,U),N[I]=[U,1],U},e.webgpuUnregisterBuffer=N=>{let U=N[I];if(!U)throw Error("Buffer is not registered");U[1]--,U[1]===0&&(Av(U[0]),delete N[I])},e.webgpuGetBuffer=N=>se(N),e.webgpuCreateDownloader=(N,U,Y)=>{if((Y=M.get(Y))===void 0)throw Error("Invalid session handle passed to webgpuRegisterBuffer");let Te=se(Y),$e=16*Math.ceil(Number(U)/16);return async()=>{let je=Te.createBuffer({size:$e,usage:9});try{let ne=Te.createCommandEncoder();return ne.copyBufferToBuffer(N,0,je,0,$e),Te.queue.submit([ne.finish()]),await je.mapAsync(GPUMapMode.READ),je.getMappedRange().slice(0,U)}finally{je.destroy()}}},e.ad=(N,U)=>{var Y=U.buffer;let Te=U.byteOffset,$e=U.byteLength;if(U=16*Math.ceil(Number($e)/16),N=se(N),!h){var je=w0(g);h=se(je)}let ne=(je=h.createBuffer({mappedAtCreation:!0,size:U,usage:6})).getMappedRange();new Uint8Array(ne).set(new Uint8Array(Y,Te,$e)),je.unmap(),(Y=h.createCommandEncoder()).copyBufferToBuffer(je,0,N,0,U),h.queue.submit([Y.finish()]),je.destroy()}},e.webnnInit=u=>{let d=u[0];[e.me,e.jd,e.webnnEnsureTensor,e.Sd,e.webnnDownloadTensor,e.le,e.webnnEnableTraceEvent]=u.slice(1),e.webnnReleaseTensorId=e.jd,e.webnnUploadTensor=e.Sd,e.webnnRegisterMLContext=e.le,e.webnnOnRunStart=h=>d.onRunStart(h),e.webnnOnRunEnd=d.onRunEnd.bind(d),e.webnnOnReleaseSession=h=>{d.onReleaseSession(h)},e.webnnCreateMLTensorDownloader=(h,g)=>d.createMLTensorDownloader(h,g),e.webnnRegisterMLTensor=(h,g,b,M)=>d.registerMLTensor(h,g,b,M),e.webnnCreateMLContext=h=>d.createMLContext(h),e.webnnRegisterMLConstant=(h,g,b,M,I,N)=>d.registerMLConstant(h,g,b,M,I,e.Uc,N),e.webnnRegisterGraphInput=d.registerGraphInput.bind(d),e.webnnIsGraphInput=d.isGraphInput.bind(d),e.webnnRegisterGraphOutput=d.registerGraphOutput.bind(d),e.webnnIsGraphOutput=d.isGraphOutput.bind(d),e.webnnCreateTemporaryTensor=d.createTemporaryTensor.bind(d),e.webnnIsGraphInputOutputTypeSupported=d.isGraphInputOutputTypeSupported.bind(d)},J?e:new Promise((u,d)=>{w=u,x=d})}var LA,FE,PP=be(()=>{"use strict";LA=DE,FE=globalThis.self?.name?.startsWith("em-pthread"),FE&&DE()}),Z0,mb,BE,Pt,PA,Xu,UE,jE,eb,GE,tb,zA,rb,NA,Eb=be(()=>{"use strict";kb(),Z0=typeof location>"u"?void 0:location.origin,mb=tr.url>"file:"&&tr.url<"file;",BE=()=>{if(mb){let t=URL;return new URL(new t("ort.webgpu.bundle.min.mjs",tr.url).href,Z0).href}return tr.url},Pt=BE(),PA=()=>{if(Pt&&!Pt.startsWith("blob:"))return Pt.substring(0,Pt.lastIndexOf("/")+1)},Xu=(t,e)=>{try{let r=e??Pt;return(r?new URL(t,r):new URL(t)).origin===Z0}catch{return!1}},UE=(t,e)=>{let r=e??Pt;try{return(r?new URL(t,r):new URL(t)).href}catch{return}},jE=(t,e)=>`${e??"./"}${t}`,eb=async t=>{let e=await(await fetch(t,{credentials:"same-origin"})).blob();return URL.createObjectURL(e)},GE=async t=>(await import(t)).default,tb=(LP(),ep(OA)).default,zA=async()=>{if(!Pt)throw new Error("Failed to load proxy worker: cannot determine the script source URL.");if(Xu(Pt))return[void 0,tb()];let t=await eb(Pt);return[t,tb(t)]},rb=(PP(),ep(CA)).default,NA=async(t,e,r,s)=>{let n=rb&&!(t||e);if(n)if(Pt)n=Xu(Pt)||s&&!r;else if(s&&!r)n=!0;else throw new Error("cannot determine the script source URL.");if(n)return[void 0,rb];{let o="ort-wasm-simd-threaded.asyncify.mjs",a=t??UE(o,e),i=r&&a&&!Xu(a,e),l=i?await eb(a):a??jE(o,e);return[i?l:void 0,await GE(l)]}}}),sb,Ku,dl,nb,qE,WE,VE,Ab,Be,Gs=be(()=>{"use strict";Eb(),Ku=!1,dl=!1,nb=!1,qE=()=>{if(typeof SharedArrayBuffer>"u")return!1;try{return typeof MessageChannel<"u"&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))}catch{return!1}},WE=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,30,1,28,0,65,0,253,15,253,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,186,1,26,11]))}catch{return!1}},VE=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,19,1,17,0,65,1,253,15,65,2,253,15,65,3,253,15,253,147,2,11]))}catch{return!1}},Ab=async t=>{if(Ku)return Promise.resolve();if(dl)throw new Error("multiple calls to 'initializeWebAssembly()' detected.");if(nb)throw new Error("previous call to 'initializeWebAssembly()' failed.");dl=!0;let e=t.initTimeout,r=t.numThreads;if(t.simd!==!1){if(t.simd==="relaxed"){if(!VE())throw new Error("Relaxed WebAssembly SIMD is not supported in the current environment.")}else if(!WE())throw new Error("WebAssembly SIMD is not supported in the current environment.")}let s=qE();r>1&&!s&&(typeof self<"u"&&!self.crossOriginIsolated&&console.warn("env.wasm.numThreads is set to "+r+", but this will not work unless you enable crossOriginIsolated mode. See https://web.dev/cross-origin-isolation-guide/ for more info."),console.warn("WebAssembly multi-threading is not supported in the current environment. Falling back to single-threading."),t.numThreads=r=1);let n=t.wasmPaths,o=typeof n=="string"?n:void 0,a=n?.mjs,i=a?.href??a,l=n?.wasm,c=l?.href??l,p=t.wasmBinary,[f,_]=await NA(i,o,r>1,!!p||!!c),m=!1,w=[];if(e>0&&w.push(new Promise(x=>{setTimeout(()=>{m=!0,x()},e)})),w.push(new Promise((x,k)=>{let E={numThreads:r};if(p)E.wasmBinary=p,E.locateFile=A=>A;else if(c||o)E.locateFile=A=>c??o+A;else if(i&&i.indexOf("blob:")!==0)E.locateFile=A=>new URL(A,i).href;else if(f){let A=PA();A&&(E.locateFile=T=>A+T)}_(E).then(A=>{dl=!1,Ku=!0,sb=A,x(),f&&URL.revokeObjectURL(f)},A=>{dl=!1,nb=!0,k(A)})})),await Promise.race(w),m)throw new Error(`WebAssembly backend initializing failed due to timeout: ${e}ms`)},Be=()=>{if(Ku&&sb)return sb;throw new Error("WebAssembly is not initialized yet.")}}),zt,rp,ze,Mb=be(()=>{"use strict";Gs(),zt=(t,e)=>{let r=Be(),s=r.lengthBytesUTF8(t)+1,n=r._malloc(s);return r.stringToUTF8(t,n,s),e.push(n),n},rp=(t,e,r,s)=>{if(typeof t=="object"&&t!==null){if(r.has(t))throw new Error("Circular reference in options");r.add(t)}Object.entries(t).forEach(([n,o])=>{let a=e?e+n:n;if(typeof o=="object")rp(o,a+".",r,s);else if(typeof o=="string"||typeof o=="number")s(a,o.toString());else if(typeof o=="boolean")s(a,o?"1":"0");else throw new Error(`Can't handle extra config type: ${typeof o}`)})},ze=t=>{let e=Be(),r=e.stackSave();try{let s=e.PTR_SIZE,n=e.stackAlloc(2*s);e._OrtGetLastError(n,n+s);let o=Number(e.getValue(n,s===4?"i32":"i64")),a=e.getValue(n+s,"*"),i=a?e.UTF8ToString(a):"";throw new Error(`${t} ERROR_CODE: ${o}, ERROR_MESSAGE: ${i}`)}finally{e.stackRestore(r)}}}),$A,zP=be(()=>{"use strict";Gs(),Mb(),$A=t=>{let e=Be(),r=0,s=[],n=t||{};try{if(t?.logSeverityLevel===void 0)n.logSeverityLevel=2;else if(typeof t.logSeverityLevel!="number"||!Number.isInteger(t.logSeverityLevel)||t.logSeverityLevel<0||t.logSeverityLevel>4)throw new Error(`log severity level is not valid: ${t.logSeverityLevel}`);if(t?.logVerbosityLevel===void 0)n.logVerbosityLevel=0;else if(typeof t.logVerbosityLevel!="number"||!Number.isInteger(t.logVerbosityLevel))throw new Error(`log verbosity level is not valid: ${t.logVerbosityLevel}`);t?.terminate===void 0&&(n.terminate=!1);let o=0;return t?.tag!==void 0&&(o=zt(t.tag,s)),r=e._OrtCreateRunOptions(n.logSeverityLevel,n.logVerbosityLevel,!!n.terminate,o),r===0&&ze("Can't create run options."),t?.extra!==void 0&&rp(t.extra,"",new WeakSet,(a,i)=>{let l=zt(a,s),c=zt(i,s);e._OrtAddRunConfigEntry(r,l,c)!==0&&ze(`Can't set a run config entry: ${a} - ${i}.`)}),[r,s]}catch(o){throw r!==0&&e._OrtReleaseRunOptions(r),s.forEach(a=>e._free(a)),o}}}),HE,XE,KE,Qu,es,QE,RA,NP=be(()=>{"use strict";Gs(),Mb(),HE=t=>{switch(t){case"disabled":return 0;case"basic":return 1;case"extended":return 2;case"layout":return 3;case"all":return 99;default:throw new Error(`unsupported graph optimization level: ${t}`)}},XE=t=>{switch(t){case"sequential":return 0;case"parallel":return 1;default:throw new Error(`unsupported execution mode: ${t}`)}},KE=t=>{t.extra||(t.extra={}),t.extra.session||(t.extra.session={});let e=t.extra.session;e.use_ort_model_bytes_directly||(e.use_ort_model_bytes_directly="1"),t.executionProviders&&t.executionProviders.some(r=>(typeof r=="string"?r:r.name)==="webgpu")&&(t.enableMemPattern=!1)},Qu=(t,e,r,s)=>{let n=zt(e,s),o=zt(r,s);Be()._OrtAddSessionConfigEntry(t,n,o)!==0&&ze(`Can't set a session config entry: ${e} - ${r}.`)},es=(t,e,r,s)=>{let n=zt(e,s),o=zt(r,s);t.push([n,o])},QE=async(t,e,r)=>{let s=e.executionProviders;for(let n of s){let o=typeof n=="string"?n:n.name,a=[];switch(o){case"webnn":if(o="WEBNN",typeof n!="string"){let f=n?.deviceType;f&&Qu(t,"deviceType",f,r)}break;case"webgpu":{o="WebGPU";let f;if(typeof n!="string"){let m=n;if(m.device)if(typeof GPUDevice<"u"&&m.device instanceof GPUDevice)f=m.device;else throw new Error("Invalid GPU device set in WebGPU EP options.");let{enableGraphCapture:w}=e;if(typeof w=="boolean"&&w&&es(a,"enableGraphCapture","1",r),typeof m.preferredLayout=="string"&&es(a,"preferredLayout",m.preferredLayout,r),m.forceCpuNodeNames){let x=Array.isArray(m.forceCpuNodeNames)?m.forceCpuNodeNames:[m.forceCpuNodeNames];es(a,"forceCpuNodeNames",x.join(`
13
+ `),r)}m.validationMode&&es(a,"validationMode",m.validationMode,r)}let _=Be().webgpuRegisterDevice(f);if(_){let[m,w,x]=_;es(a,"deviceId",m.toString(),r),es(a,"webgpuInstance",w.toString(),r),es(a,"webgpuDevice",x.toString(),r)}}break;case"wasm":case"cpu":continue;default:throw new Error(`not supported execution provider: ${o}`)}let i=zt(o,r),l=a.length,c=0,p=0;if(l>0){c=Be()._malloc(l*Be().PTR_SIZE),r.push(c),p=Be()._malloc(l*Be().PTR_SIZE),r.push(p);for(let f=0;f<l;f++)Be().setValue(c+f*Be().PTR_SIZE,a[f][0],"*"),Be().setValue(p+f*Be().PTR_SIZE,a[f][1],"*")}await Be()._OrtAppendExecutionProvider(t,i,c,p,l)!==0&&ze(`Can't append execution provider: ${o}.`)}},RA=async t=>{let e=Be(),r=0,s=[],n=t||{};KE(n);try{let o=HE(n.graphOptimizationLevel??"all"),a=XE(n.executionMode??"sequential"),i=typeof n.logId=="string"?zt(n.logId,s):0,l=n.logSeverityLevel??2;if(!Number.isInteger(l)||l<0||l>4)throw new Error(`log severity level is not valid: ${l}`);let c=n.logVerbosityLevel??0;if(!Number.isInteger(c)||c<0||c>4)throw new Error(`log verbosity level is not valid: ${c}`);let p=typeof n.optimizedModelFilePath=="string"?zt(n.optimizedModelFilePath,s):0;if(r=e._OrtCreateSessionOptions(o,!!n.enableCpuMemArena,!!n.enableMemPattern,a,!!n.enableProfiling,0,i,l,c,p),r===0&&ze("Can't create session options."),n.executionProviders&&await QE(r,n,s),n.enableGraphCapture!==void 0){if(typeof n.enableGraphCapture!="boolean")throw new Error(`enableGraphCapture must be a boolean value: ${n.enableGraphCapture}`);Qu(r,"enableGraphCapture",n.enableGraphCapture.toString(),s)}if(n.freeDimensionOverrides)for(let[f,_]of Object.entries(n.freeDimensionOverrides)){if(typeof f!="string")throw new Error(`free dimension override name must be a string: ${f}`);if(typeof _!="number"||!Number.isInteger(_)||_<0)throw new Error(`free dimension override value must be a non-negative integer: ${_}`);let m=zt(f,s);e._OrtAddFreeDimensionOverride(r,m,_)!==0&&ze(`Can't set a free dimension override: ${f} - ${_}.`)}return n.extra!==void 0&&rp(n.extra,"",new WeakSet,(f,_)=>{Qu(r,f,_,s)}),[r,s]}catch(o){throw r!==0&&e._OrtReleaseSessionOptions(r)!==0&&ze("Can't release session options."),s.forEach(a=>e._free(a)),o}}}),Ds,Zu,Dn,gl,sp,Sb,Tb,hb,Fn=be(()=>{"use strict";Ds=t=>{switch(t){case"int8":return 3;case"uint8":return 2;case"bool":return 9;case"int16":return 5;case"uint16":return 4;case"int32":return 6;case"uint32":return 12;case"float16":return 10;case"float32":return 1;case"float64":return 11;case"string":return 8;case"int64":return 7;case"uint64":return 13;case"int4":return 22;case"uint4":return 21;default:throw new Error(`unsupported data type: ${t}`)}},Zu=t=>{switch(t){case 3:return"int8";case 2:return"uint8";case 9:return"bool";case 5:return"int16";case 4:return"uint16";case 6:return"int32";case 12:return"uint32";case 10:return"float16";case 1:return"float32";case 11:return"float64";case 8:return"string";case 7:return"int64";case 13:return"uint64";case 22:return"int4";case 21:return"uint4";default:throw new Error(`unsupported data type: ${t}`)}},Dn=(t,e)=>{let r=[-1,4,1,1,2,2,4,8,-1,1,2,8,4,8,-1,-1,-1,-1,-1,-1,-1,.5,.5][t],s=typeof e=="number"?e:e.reduce((n,o)=>n*o,1);return r>0?Math.ceil(s*r):void 0},gl=t=>{switch(t){case"float16":return typeof Float16Array<"u"&&Float16Array.from?Float16Array:Uint16Array;case"float32":return Float32Array;case"uint8":return Uint8Array;case"int8":return Int8Array;case"uint16":return Uint16Array;case"int16":return Int16Array;case"int32":return Int32Array;case"bool":return Uint8Array;case"float64":return Float64Array;case"uint32":return Uint32Array;case"int64":return BigInt64Array;case"uint64":return BigUint64Array;default:throw new Error(`unsupported type: ${t}`)}},sp=t=>{switch(t){case"verbose":return 0;case"info":return 1;case"warning":return 2;case"error":return 3;case"fatal":return 4;default:throw new Error(`unsupported logging level: ${t}`)}},Sb=t=>t==="float32"||t==="float16"||t==="int32"||t==="int64"||t==="uint32"||t==="uint8"||t==="bool"||t==="uint4"||t==="int4",Tb=t=>t==="float32"||t==="float16"||t==="int32"||t==="int64"||t==="uint32"||t==="uint64"||t==="int8"||t==="uint8"||t==="bool"||t==="uint4"||t==="int4",hb=t=>{switch(t){case"none":return 0;case"cpu":return 1;case"cpu-pinned":return 2;case"texture":return 3;case"gpu-buffer":return 4;case"ml-tensor":return 5;default:throw new Error(`unsupported data location: ${t}`)}}}),Ob,DA=be(()=>{"use strict";kb(),Ob=async t=>{if(typeof t=="string"){let e=await fetch(t);if(!e.ok)throw new Error(`failed to load external data file: ${t}`);let r=e.headers.get("Content-Length"),s=r?parseInt(r,10):0;if(s<1073741824)return new Uint8Array(await e.arrayBuffer());{if(!e.body)throw new Error(`failed to load external data file: ${t}, no response body.`);let n=e.body.getReader(),o;try{o=new ArrayBuffer(s)}catch(i){if(i instanceof RangeError){let l=Math.ceil(s/65536);o=new WebAssembly.Memory({initial:l,maximum:l}).buffer}else throw i}let a=0;for(;;){let{done:i,value:l}=await n.read();if(i)break;let c=l.byteLength;new Uint8Array(o,a,c).set(l),a+=c}return new Uint8Array(o,0,s)}}else return t instanceof Blob?new Uint8Array(await t.arrayBuffer()):t instanceof Uint8Array?t:new Uint8Array(t)}}),FA,$P=be(()=>{"use strict";Fn(),FA=(t,e)=>new(gl(e))(t)}),YE,JE,ZE,eA,BA,tA,vt,UA=be(()=>{"use strict";Fn(),YE=["V","I","W","E","F"],JE=(t,e)=>{console.log(`[${YE[t]},${new Date().toISOString()}]${e}`)},BA=(t,e)=>{ZE=t,eA=e},tA=(t,e)=>{let r=sp(t),s=sp(ZE);r>=s&&JE(r,typeof e=="function"?e():e)},vt=(...t)=>{eA&&tA(...t)}}),ob,gb,ab,rA,ib,sA,lb,cb,ub,nA,jA,RP=be(()=>{"use strict";Fn(),UA(),ob=new Map([["float32",32],["float16",16],["int32",32],["uint32",32],["int64",64],["uint64",64],["int8",8],["uint8",8],["int4",4],["uint4",4]]),gb=(t,e)=>{if(e==="int32")return t;let r=ob.get(e);if(!r)throw new Error(`WebNN backend does not support data type: ${e}`);let s=r/8;if(t.byteLength%s!==0)throw new Error(`Invalid Uint8Array length - must be a multiple of ${s}.`);let n=t.byteLength/s,o=new(gl(e))(t.buffer,t.byteOffset,n);switch(e){case"int64":case"uint64":{let a=new Int32Array(n);for(let i=0;i<n;i++){let l=o[i];if(l>2147483647n||l<-2147483648n)throw new Error("Can not convert int64 data to int32 - value out of range.");a[i]=Number(l)}return new Uint8Array(a.buffer)}case"int8":case"uint8":case"uint32":{if(e==="uint32"&&o.some(i=>i>2147483647))throw new Error("Can not convert uint32 data to int32 - value out of range.");let a=Int32Array.from(o,Number);return new Uint8Array(a.buffer)}default:throw new Error(`Unsupported data conversion from ${e} to 'int32'`)}},ab=(t,e)=>{if(e==="int32")return t;if(t.byteLength%4!==0)throw new Error("Invalid Uint8Array length - must be a multiple of 4 (int32).");let r=t.byteLength/4,s=new Int32Array(t.buffer,t.byteOffset,r);switch(e){case"int64":{let n=BigInt64Array.from(s,BigInt);return new Uint8Array(n.buffer)}case"uint64":{if(s.some(o=>o<0))throw new Error("Can not convert int32 data to uin64 - negative value found.");let n=BigUint64Array.from(s,BigInt);return new Uint8Array(n.buffer)}case"int8":{if(s.some(o=>o<-128||o>127))throw new Error("Can not convert int32 data to int8 - value out of range.");let n=Int8Array.from(s,Number);return new Uint8Array(n.buffer)}case"uint8":{if(s.some(n=>n<0||n>255))throw new Error("Can not convert int32 data to uint8 - value out of range.");return Uint8Array.from(s,Number)}case"uint32":{if(s.some(o=>o<0))throw new Error("Can not convert int32 data to uint32 - negative value found.");let n=Uint32Array.from(s,Number);return new Uint8Array(n.buffer)}default:throw new Error(`Unsupported data conversion from 'int32' to ${e}`)}},rA=1,ib=()=>rA++,sA=new Map([["int8","int32"],["uint8","int32"],["uint32","int32"],["int64","int32"]]),lb=(t,e)=>{let r=ob.get(t);if(!r)throw new Error(`WebNN backend does not support data type: ${t}`);return e.length>0?Math.ceil(e.reduce((s,n)=>s*n)*r/8):0},cb=class{constructor(t){this.isDataConverted=!1;let{sessionId:e,context:r,tensor:s,dataType:n,shape:o,fallbackDataType:a}=t;this.sessionId=e,this.mlContext=r,this.mlTensor=s,this.dataType=n,this.tensorShape=o,this.fallbackDataType=a}get tensor(){return this.mlTensor}get type(){return this.dataType}get fallbackType(){return this.fallbackDataType}get shape(){return this.tensorShape}get byteLength(){return lb(this.dataType,this.tensorShape)}destroy(){vt("verbose",()=>"[WebNN] TensorWrapper.destroy"),this.mlTensor.destroy()}write(t){this.mlContext.writeTensor(this.mlTensor,t)}async read(t){if(this.fallbackDataType){let e=await this.mlContext.readTensor(this.mlTensor),r=ab(new Uint8Array(e),this.dataType);if(t){(t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)).set(r);return}else return r.buffer}else return t?this.mlContext.readTensor(this.mlTensor,t):this.mlContext.readTensor(this.mlTensor)}canReuseTensor(t,e,r){return this.mlContext===t&&this.dataType===e&&this.tensorShape.length===r.length&&this.tensorShape.every((s,n)=>s===r[n])}setIsDataConverted(t){this.isDataConverted=t}},ub=class{constructor(t,e){this.tensorManager=t,this.wrapper=e}get tensorWrapper(){return this.wrapper}releaseTensor(){this.tensorWrapper&&(this.tensorManager.releaseTensor(this.tensorWrapper),this.wrapper=void 0)}async ensureTensor(t,e,r,s){let n=this.tensorManager.getMLContext(t),o=this.tensorManager.getMLOpSupportLimits(t),a;if(!o?.input.dataTypes.includes(e)){if(a=sA.get(e),!a||o?.input.dataTypes.includes(a))throw new Error(`WebNN backend does not support data type: ${e}`);vt("verbose",()=>`[WebNN] TensorIdTracker.ensureTensor: fallback dataType from ${e} to ${a}`)}if(this.wrapper){if(this.wrapper.canReuseTensor(n,e,r))return this.wrapper.tensor;if(s){if(this.wrapper.byteLength!==lb(e,r))throw new Error("Unable to copy data to tensor with different size.");this.activeUpload=new Uint8Array(await this.wrapper.read())}this.tensorManager.releaseTensor(this.wrapper)}let i=typeof MLTensorUsage>"u"?void 0:MLTensorUsage.READ|MLTensorUsage.WRITE;return this.wrapper=await this.tensorManager.getCachedTensor(t,e,r,i,!0,!0,a),s&&this.activeUpload&&(this.wrapper.write(this.activeUpload),this.activeUpload=void 0),this.wrapper.tensor}upload(t){let e=t;if(this.wrapper){if(this.wrapper.fallbackType)if(this.wrapper.fallbackType==="int32")e=gb(t,this.wrapper.type),this.wrapper.setIsDataConverted(!0);else throw new Error(`Unsupported fallback data type: ${this.wrapper.fallbackType}`);if(t.byteLength===this.wrapper.byteLength){this.wrapper.write(e);return}else vt("verbose",()=>"Data size does not match tensor size. Releasing tensor."),this.releaseTensor()}this.activeUpload?this.activeUpload.set(e):this.activeUpload=new Uint8Array(e)}async download(t){if(this.activeUpload){let e=this.wrapper?.isDataConverted?ab(this.activeUpload,this.wrapper?.type):this.activeUpload;if(t){t instanceof ArrayBuffer?new Uint8Array(t).set(e):new Uint8Array(t.buffer,t.byteOffset,t.byteLength).set(e);return}else return e.buffer}if(!this.wrapper)throw new Error("Tensor has not been created.");return t?this.wrapper.read(t):this.wrapper.read()}},nA=class{constructor(t){this.backend=t,this.tensorTrackersById=new Map,this.freeTensors=[],this.externalTensors=new Set}getMLContext(t){let e=this.backend.getMLContext(t);if(!e)throw new Error("MLContext not found for session.");return e}getMLOpSupportLimits(t){return this.backend.getMLOpSupportLimits(t)}reserveTensorId(){let t=ib();return this.tensorTrackersById.set(t,new ub(this)),t}releaseTensorId(t){let e=this.tensorTrackersById.get(t);e&&(this.tensorTrackersById.delete(t),e.tensorWrapper&&this.releaseTensor(e.tensorWrapper))}async ensureTensor(t,e,r,s,n){vt("verbose",()=>`[WebNN] TensorManager.ensureTensor {tensorId: ${e}, dataType: ${r}, shape: ${s}, copyOld: ${n}}`);let o=this.tensorTrackersById.get(e);if(!o)throw new Error("Tensor not found.");return o.ensureTensor(t,r,s,n)}upload(t,e){let r=this.tensorTrackersById.get(t);if(!r)throw new Error("Tensor not found.");r.upload(e)}async download(t,e){vt("verbose",()=>`[WebNN] TensorManager.download {tensorId: ${t}, dstBuffer: ${e?.byteLength}}`);let r=this.tensorTrackersById.get(t);if(!r)throw new Error("Tensor not found.");return r.download(e)}releaseTensorsForSession(t){for(let e of this.freeTensors)e.sessionId===t&&e.destroy();this.freeTensors=this.freeTensors.filter(e=>e.sessionId!==t)}registerTensor(t,e,r,s){let n=this.getMLContext(t),o=ib(),a=new cb({sessionId:t,context:n,tensor:e,dataType:r,shape:s});return this.tensorTrackersById.set(o,new ub(this,a)),this.externalTensors.add(a),o}async getCachedTensor(t,e,r,s,n,o,a){let i=this.getMLContext(t);for(let[c,p]of this.freeTensors.entries())if(p.canReuseTensor(i,e,r)){vt("verbose",()=>`[WebNN] Reusing tensor {dataType: ${e}, ${a?`fallbackDataType: ${a},`:""} shape: ${r}`);let f=this.freeTensors.splice(c,1)[0];return f.sessionId=t,f}vt("verbose",()=>`[WebNN] MLContext.createTensor {dataType: ${e}, ${a?`fallbackDataType: ${a},`:""} shape: ${r}}`);let l=await i.createTensor({dataType:a??e,shape:r,dimensions:r,usage:s,writable:n,readable:o});return new cb({sessionId:t,context:i,tensor:l,dataType:e,shape:r,fallbackDataType:a})}releaseTensor(t){this.externalTensors.has(t)&&this.externalTensors.delete(t),this.freeTensors.push(t)}},jA=(...t)=>new nA(...t)}),GA={};wl(GA,{WebNNBackend:()=>qA});var fl,oA,qA,DP=be(()=>{"use strict";Fn(),Gs(),$P(),RP(),UA(),fl=new Map([[1,"float32"],[10,"float16"],[6,"int32"],[12,"uint32"],[7,"int64"],[13,"uint64"],[22,"int4"],[21,"uint4"],[3,"int8"],[2,"uint8"],[9,"uint8"]]),oA=(t,e)=>{if(t===e)return!0;if(t===void 0||e===void 0)return!1;let r=Object.keys(t).sort(),s=Object.keys(e).sort();return r.length===s.length&&r.every((n,o)=>n===s[o]&&t[n]===e[n])},qA=class{constructor(t){this.tensorManager=jA(this),this.mlContextBySessionId=new Map,this.sessionIdsByMLContext=new Map,this.mlContextCache=[],this.sessionGraphInputs=new Map,this.sessionGraphOutputs=new Map,this.temporaryGraphInputs=[],this.temporaryGraphOutputs=[],this.temporarySessionTensorIds=new Map,this.mlOpSupportLimitsBySessionId=new Map,BA(t.logLevel,!!t.debug)}get currentSessionId(){if(this.activeSessionId===void 0)throw new Error("No active session");return this.activeSessionId}onRunStart(t){vt("verbose",()=>`[WebNN] onRunStart {sessionId: ${t}}`),this.activeSessionId=t}onRunEnd(t){vt("verbose",()=>`[WebNN] onRunEnd {sessionId: ${t}}`);let e=this.temporarySessionTensorIds.get(t);if(e){for(let r of e)vt("verbose",()=>`[WebNN] releasing temporary tensor {tensorId: ${r}}`),this.tensorManager.releaseTensorId(r);this.temporarySessionTensorIds.delete(t),this.activeSessionId=void 0}}async createMLContext(t){if(t instanceof GPUDevice){let r=this.mlContextCache.findIndex(s=>s.gpuDevice===t);if(r!==-1)return this.mlContextCache[r].mlContext;{let s=await navigator.ml.createContext(t);return this.mlContextCache.push({gpuDevice:t,mlContext:s}),s}}else if(t===void 0){let r=this.mlContextCache.findIndex(s=>s.options===void 0&&s.gpuDevice===void 0);if(r!==-1)return this.mlContextCache[r].mlContext;{let s=await navigator.ml.createContext();return this.mlContextCache.push({mlContext:s}),s}}let e=this.mlContextCache.findIndex(r=>oA(r.options,t));if(e!==-1)return this.mlContextCache[e].mlContext;{let r=await navigator.ml.createContext(t);return this.mlContextCache.push({options:t,mlContext:r}),r}}registerMLContext(t,e){this.mlContextBySessionId.set(t,e);let r=this.sessionIdsByMLContext.get(e);r||(r=new Set,this.sessionIdsByMLContext.set(e,r)),r.add(t),this.mlOpSupportLimitsBySessionId.has(t)||this.mlOpSupportLimitsBySessionId.set(t,e.opSupportLimits()),this.temporaryGraphInputs.length>0&&(this.sessionGraphInputs.set(t,this.temporaryGraphInputs),this.temporaryGraphInputs=[]),this.temporaryGraphOutputs.length>0&&(this.sessionGraphOutputs.set(t,this.temporaryGraphOutputs),this.temporaryGraphOutputs=[])}onReleaseSession(t){this.sessionGraphInputs.delete(t),this.sessionGraphOutputs.delete(t);let e=this.mlContextBySessionId.get(t);if(!e)return;this.tensorManager.releaseTensorsForSession(t),this.mlContextBySessionId.delete(t),this.mlOpSupportLimitsBySessionId.delete(t);let r=this.sessionIdsByMLContext.get(e);if(r.delete(t),r.size===0){this.sessionIdsByMLContext.delete(e);let s=this.mlContextCache.findIndex(n=>n.mlContext===e);s!==-1&&this.mlContextCache.splice(s,1)}}getMLContext(t){return this.mlContextBySessionId.get(t)}getMLOpSupportLimits(t){return this.mlOpSupportLimitsBySessionId.get(t)}reserveTensorId(){return this.tensorManager.reserveTensorId()}releaseTensorId(t){vt("verbose",()=>`[WebNN] releaseTensorId {tensorId: ${t}}`),this.tensorManager.releaseTensorId(t)}async ensureTensor(t,e,r,s,n){let o=fl.get(r);if(!o)throw new Error(`Unsupported ONNX data type: ${r}`);return this.tensorManager.ensureTensor(t??this.currentSessionId,e,o,s,n)}async createTemporaryTensor(t,e,r){vt("verbose",()=>`[WebNN] createTemporaryTensor {onnxDataType: ${e}, shape: ${r}}`);let s=fl.get(e);if(!s)throw new Error(`Unsupported ONNX data type: ${e}`);let n=this.tensorManager.reserveTensorId();await this.tensorManager.ensureTensor(t,n,s,r,!1);let o=this.temporarySessionTensorIds.get(t);return o?o.push(n):this.temporarySessionTensorIds.set(t,[n]),n}uploadTensor(t,e){if(!Be().shouldTransferToMLTensor)throw new Error("Trying to upload to a MLTensor while shouldTransferToMLTensor is false");vt("verbose",()=>`[WebNN] uploadTensor {tensorId: ${t}, data: ${e.byteLength}}`),this.tensorManager.upload(t,e)}async downloadTensor(t,e){return this.tensorManager.download(t,e)}createMLTensorDownloader(t,e){return async()=>{let r=await this.tensorManager.download(t);return FA(r,e)}}registerMLTensor(t,e,r,s){let n=fl.get(r);if(!n)throw new Error(`Unsupported ONNX data type: ${r}`);let o=this.tensorManager.registerTensor(t,e,n,s);return vt("verbose",()=>`[WebNN] registerMLTensor {tensor: ${e}, dataType: ${n}, dimensions: ${s}} -> {tensorId: ${o}}`),o}registerMLConstant(t,e,r,s,n,o,a=!1){if(!o)throw new Error("External mounted files are not available.");let i=t;t.startsWith("./")&&(i=t.substring(2));let l=o.get(i);if(!l)throw new Error(`File with name ${i} not found in preloaded files.`);if(e+r>l.byteLength)throw new Error("Out of bounds: data offset and length exceed the external file data size.");let c=l.slice(e,e+r).buffer,p;switch(n.dataType){case"float32":p=new Float32Array(c);break;case"float16":p=typeof Float16Array<"u"&&Float16Array.from?new Float16Array(c):new Uint16Array(c);break;case"int32":p=new Int32Array(c);break;case"uint32":p=new Uint32Array(c);break;case"int64":if(a){let f=gb(new Uint8Array(c),"int64");p=new Int32Array(f.buffer),n.dataType="int32"}else p=new BigInt64Array(c);break;case"uint64":p=new BigUint64Array(c);break;case"int8":p=new Int8Array(c);break;case"int4":case"uint4":case"uint8":p=new Uint8Array(c);break;default:throw new Error(`Unsupported data type: ${n.dataType} in creating WebNN Constant from external data.`)}return vt("verbose",()=>`[WebNN] registerMLConstant {dataType: ${n.dataType}, shape: ${n.shape}}} ${a?"(Note: it was int64 data type and registered to int32 as workaround)":""}`),s.constant(n,p)}registerGraphInput(t){this.temporaryGraphInputs.push(t)}registerGraphOutput(t){this.temporaryGraphOutputs.push(t)}isGraphInput(t,e){let r=this.sessionGraphInputs.get(t);return r?r.includes(e):!1}isGraphOutput(t,e){let r=this.sessionGraphOutputs.get(t);return r?r.includes(e):!1}isGraphInputOutputTypeSupported(t,e,r=!0){let s=fl.get(Ds(e)),n=this.mlOpSupportLimitsBySessionId.get(t);return typeof s>"u"?!1:r?!!n?.input.dataTypes.includes(s):!!n?.output.dataTypes.includes(s)}flush(){}}}),aA,Ib,Cb,ts,iA,pb,np,Lb,Pb,db,zb,Nb,$b,WA=be(()=>{"use strict";js(),zP(),NP(),Fn(),Gs(),Mb(),DA(),aA=(t,e)=>{Be()._OrtInit(t,e)!==0&&ze("Can't initialize onnxruntime.")},Ib=async t=>{aA(t.wasm.numThreads,sp(t.logLevel))},Cb=async(t,e)=>{Be().asyncInit?.();let r=t.webgpu.adapter;if(e==="webgpu"){if(typeof navigator>"u"||!navigator.gpu)throw new Error("WebGPU is not supported in current environment");if(r){if(typeof r.limits!="object"||typeof r.features!="object"||typeof r.requestDevice!="function")throw new Error("Invalid GPU adapter set in `env.webgpu.adapter`. It must be a GPUAdapter object.")}else{let s=t.webgpu.powerPreference;if(s!==void 0&&s!=="low-power"&&s!=="high-performance")throw new Error(`Invalid powerPreference setting: "${s}"`);let n=t.webgpu.forceFallbackAdapter;if(n!==void 0&&typeof n!="boolean")throw new Error(`Invalid forceFallbackAdapter setting: "${n}"`);if(r=await navigator.gpu.requestAdapter({powerPreference:s,forceFallbackAdapter:n}),!r)throw new Error('Failed to get GPU adapter. You may need to enable flag "--enable-unsafe-webgpu" if you are using Chrome.')}}if(e==="webnn"&&(typeof navigator>"u"||!navigator.ml))throw new Error("WebNN is not supported in current environment");if(e==="webgpu"&&Be().webgpuInit(s=>{t.webgpu.device=s}),e==="webnn"){let s=new(DP(),ep(GA)).WebNNBackend(t);Be().webnnInit([s,()=>s.reserveTensorId(),n=>s.releaseTensorId(n),async(n,o,a,i,l)=>s.ensureTensor(n,o,a,i,l),(n,o)=>{s.uploadTensor(n,o)},async(n,o)=>s.downloadTensor(n,o),(n,o)=>s.registerMLContext(n,o),!!t.trace])}},ts=new Map,iA=t=>{let e=Be(),r=e.stackSave();try{let s=e.PTR_SIZE,n=e.stackAlloc(2*s);e._OrtGetInputOutputCount(t,n,n+s)!==0&&ze("Can't get session input/output count.");let o=s===4?"i32":"i64";return[Number(e.getValue(n,o)),Number(e.getValue(n+s,o))]}finally{e.stackRestore(r)}},pb=(t,e)=>{let r=Be(),s=r.stackSave(),n=0;try{let o=r.PTR_SIZE,a=r.stackAlloc(2*o);r._OrtGetInputOutputMetadata(t,e,a,a+o)!==0&&ze("Can't get session input/output metadata.");let i=Number(r.getValue(a,"*"));n=Number(r.getValue(a+o,"*"));let l=r.HEAP32[n/4];if(l===0)return[i,0];let c=r.HEAPU32[n/4+1],p=[];for(let f=0;f<c;f++){let _=Number(r.getValue(n+8+f*o,"*"));p.push(_!==0?r.UTF8ToString(_):Number(r.getValue(n+8+(f+c)*o,"*")))}return[i,l,p]}finally{r.stackRestore(s),n!==0&&r._OrtFree(n)}},np=t=>{let e=Be(),r=e._malloc(t.byteLength);if(r===0)throw new Error(`Can't create a session. failed to allocate a buffer of size ${t.byteLength}.`);return e.HEAPU8.set(t,r),[r,t.byteLength]},Lb=async(t,e)=>{let r,s,n=Be();Array.isArray(t)?[r,s]=t:t.buffer===n.HEAPU8.buffer?[r,s]=[t.byteOffset,t.byteLength]:[r,s]=np(t);let o=0,a=0,i=0,l=[],c=[],p=[];try{if([a,l]=await RA(e),e?.externalData&&n.mountExternalData){let S=[];for(let P of e.externalData){let O=typeof P=="string"?P:P.path;S.push(Ob(typeof P=="string"?P:P.data).then(v=>{n.mountExternalData(O,v)}))}await Promise.all(S)}for(let S of e?.executionProviders??[])if((typeof S=="string"?S:S.name)==="webnn"){if(n.shouldTransferToMLTensor=!1,typeof S!="string"){let P=S,O=P?.context,v=P?.gpuDevice,j=P?.deviceType,H=P?.powerPreference;O?n.currentContext=O:v?n.currentContext=await n.webnnCreateMLContext(v):n.currentContext=await n.webnnCreateMLContext({deviceType:j,powerPreference:H})}else n.currentContext=await n.webnnCreateMLContext();break}o=await n._OrtCreateSession(r,s,a),n.webgpuOnCreateSession?.(o),o===0&&ze("Can't create a session."),n.jsepOnCreateSession?.(),n.currentContext&&(n.webnnRegisterMLContext(o,n.currentContext),n.currentContext=void 0,n.shouldTransferToMLTensor=!0);let[f,_]=iA(o),m=!!e?.enableGraphCapture,w=[],x=[],k=[],E=[],A=[];for(let S=0;S<f;S++){let[P,O,v]=pb(o,S);P===0&&ze("Can't get an input name."),c.push(P);let j=n.UTF8ToString(P);w.push(j),k.push(O===0?{name:j,isTensor:!1}:{name:j,isTensor:!0,type:Zu(O),shape:v})}for(let S=0;S<_;S++){let[P,O,v]=pb(o,S+f);P===0&&ze("Can't get an output name."),p.push(P);let j=n.UTF8ToString(P);x.push(j),E.push(O===0?{name:j,isTensor:!1}:{name:j,isTensor:!0,type:Zu(O),shape:v});{if(m&&e?.preferredOutputLocation===void 0){A.push("gpu-buffer");continue}let H=typeof e?.preferredOutputLocation=="string"?e.preferredOutputLocation:e?.preferredOutputLocation?.[j]??"cpu",B=n.webnnIsGraphOutput;if(H==="cpu"&&B&&B(o,j)){A.push("ml-tensor-cpu-output");continue}if(H!=="cpu"&&H!=="cpu-pinned"&&H!=="gpu-buffer"&&H!=="ml-tensor")throw new Error(`Not supported preferred output location: ${H}.`);if(m&&H!=="gpu-buffer")throw new Error(`Not supported preferred output location: ${H}. Only 'gpu-buffer' location is supported when enableGraphCapture is true.`);A.push(H)}}let T=null;return A.some(S=>S==="gpu-buffer"||S==="ml-tensor"||S==="ml-tensor-cpu-output")&&(i=n._OrtCreateBinding(o),i===0&&ze("Can't create IO binding."),T={handle:i,outputPreferredLocations:A,outputPreferredLocationsEncoded:A.map(S=>S==="ml-tensor-cpu-output"?"ml-tensor":S).map(S=>hb(S))}),ts.set(o,[o,c,p,T,m,!1]),[o,w,x,k,E]}catch(f){throw c.forEach(_=>n._OrtFree(_)),p.forEach(_=>n._OrtFree(_)),i!==0&&n._OrtReleaseBinding(i)!==0&&ze("Can't release IO binding."),o!==0&&n._OrtReleaseSession(o)!==0&&ze("Can't release session."),f}finally{n._free(r),a!==0&&n._OrtReleaseSessionOptions(a)!==0&&ze("Can't release session options."),l.forEach(f=>n._free(f)),n.unmountExternalData?.()}},Pb=t=>{let e=Be(),r=ts.get(t);if(!r)throw new Error(`cannot release session. invalid session id: ${t}`);let[s,n,o,a,i]=r;a&&(i&&e._OrtClearBoundOutputs(a.handle)!==0&&ze("Can't clear bound outputs."),e._OrtReleaseBinding(a.handle)!==0&&ze("Can't release IO binding.")),e.jsepOnReleaseSession?.(t),e.webnnOnReleaseSession?.(t),e.webgpuOnReleaseSession?.(t),n.forEach(l=>e._OrtFree(l)),o.forEach(l=>e._OrtFree(l)),e._OrtReleaseSession(s)!==0&&ze("Can't release session."),ts.delete(t)},db=async(t,e,r,s,n,o,a=!1)=>{if(!t){e.push(0);return}let i=Be(),l=i.PTR_SIZE,c=t[0],p=t[1],f=t[3],_=f,m,w;if(c==="string"&&(f==="gpu-buffer"||f==="ml-tensor"))throw new Error("String tensor is not supported on GPU.");if(a&&f!=="gpu-buffer")throw new Error(`External buffer must be provided for input/output index ${o} when enableGraphCapture is true.`);if(f==="gpu-buffer"){let E=t[2].gpuBuffer;w=Dn(Ds(c),p);{let A=i.webgpuRegisterBuffer;if(!A)throw new Error('Tensor location "gpu-buffer" is not supported without using WebGPU.');m=A(E,s)}}else if(f==="ml-tensor"){let E=t[2].mlTensor;w=Dn(Ds(c),p);let A=i.webnnRegisterMLTensor;if(!A)throw new Error('Tensor location "ml-tensor" is not supported without using WebNN.');m=A(s,E,Ds(c),p)}else{let E=t[2];if(Array.isArray(E)){w=l*E.length,m=i._malloc(w),r.push(m);for(let A=0;A<E.length;A++){if(typeof E[A]!="string")throw new TypeError(`tensor data at index ${A} is not a string`);i.setValue(m+A*l,zt(E[A],r),"*")}}else{let A=i.webnnIsGraphInput,T=i.webnnIsGraphOutput;if(c!=="string"&&A&&T){let S=i.UTF8ToString(n);if(A(s,S)||T(s,S)){let P=Ds(c);w=Dn(P,p),_="ml-tensor";let O=i.webnnCreateTemporaryTensor,v=i.webnnUploadTensor;if(!O||!v)throw new Error('Tensor location "ml-tensor" is not supported without using WebNN.');let j=await O(s,P,p);v(j,new Uint8Array(E.buffer,E.byteOffset,E.byteLength)),m=j}else w=E.byteLength,m=i._malloc(w),r.push(m),i.HEAPU8.set(new Uint8Array(E.buffer,E.byteOffset,w),m)}else w=E.byteLength,m=i._malloc(w),r.push(m),i.HEAPU8.set(new Uint8Array(E.buffer,E.byteOffset,w),m)}}let x=i.stackSave(),k=i.stackAlloc(4*p.length);try{p.forEach((A,T)=>i.setValue(k+T*l,A,l===4?"i32":"i64"));let E=i._OrtCreateTensor(Ds(c),m,w,k,p.length,hb(_));E===0&&ze(`Can't create tensor for input/output. session=${s}, index=${o}.`),e.push(E)}finally{i.stackRestore(x)}},zb=async(t,e,r,s,n,o)=>{let a=Be(),i=a.PTR_SIZE,l=ts.get(t);if(!l)throw new Error(`cannot run inference. invalid session id: ${t}`);let c=l[0],p=l[1],f=l[2],_=l[3],m=l[4],w=l[5],x=e.length,k=s.length,E=0,A=[],T=[],S=[],P=[],O=[],v=a.stackSave(),j=a.stackAlloc(x*i),H=a.stackAlloc(x*i),B=a.stackAlloc(k*i),V=a.stackAlloc(k*i);try{[E,A]=$A(o),ss("wasm prepareInputOutputTensor");for(let C=0;C<x;C++)await db(r[C],T,P,t,p[e[C]],e[C],m);for(let C=0;C<k;C++)await db(n[C],S,P,t,f[s[C]],x+s[C],m);ns("wasm prepareInputOutputTensor");for(let C=0;C<x;C++)a.setValue(j+C*i,T[C],"*"),a.setValue(H+C*i,p[e[C]],"*");for(let C=0;C<k;C++)a.setValue(B+C*i,S[C],"*"),a.setValue(V+C*i,f[s[C]],"*");if(_&&!w){let{handle:C,outputPreferredLocations:te,outputPreferredLocationsEncoded:le}=_;if(p.length!==x)throw new Error(`input count from feeds (${x}) is expected to be always equal to model's input count (${p.length}).`);ss("wasm bindInputsOutputs");for(let L=0;L<x;L++){let z=e[L];await a._OrtBindInput(C,p[z],T[L])!==0&&ze(`Can't bind input[${L}] for session=${t}.`)}for(let L=0;L<k;L++){let z=s[L];n[L]?.[3]?(O.push(S[L]),a._OrtBindOutput(C,f[z],S[L],0)!==0&&ze(`Can't bind pre-allocated output[${L}] for session=${t}.`)):a._OrtBindOutput(C,f[z],0,le[z])!==0&&ze(`Can't bind output[${L}] to ${te[L]} for session=${t}.`)}ns("wasm bindInputsOutputs"),ts.set(t,[c,p,f,_,m,!0])}a.jsepOnRunStart?.(c),a.webnnOnRunStart?.(c);let q;_?q=await a._OrtRunWithBinding(c,_.handle,k,B,E):q=await a._OrtRun(c,H,j,x,V,k,B,E),q!==0&&ze("failed to call OrtRun().");let Q=[],F=[];ss("wasm ProcessOutputTensor");for(let C=0;C<k;C++){let te=Number(a.getValue(B+C*i,"*"));if(te===S[C]||O.includes(S[C])){Q.push(n[C]),te!==S[C]&&a._OrtReleaseTensor(te)!==0&&ze("Can't release tensor.");continue}let le=a.stackSave(),L=a.stackAlloc(4*i),z=!1,R,J=0;try{a._OrtGetTensorData(te,L,L+i,L+2*i,L+3*i)!==0&&ze(`Can't access output tensor data on index ${C}.`);let Ce=i===4?"i32":"i64",ae=Number(a.getValue(L,Ce));J=a.getValue(L+i,"*");let Ue=a.getValue(L+i*2,"*"),Je=Number(a.getValue(L+i*3,Ce)),rt=[];for(let Se=0;Se<Je;Se++)rt.push(Number(a.getValue(Ue+Se*i,Ce)));a._OrtFree(Ue)!==0&&ze("Can't free memory for tensor dims.");let nt=rt.reduce((Se,xe)=>Se*xe,1);R=Zu(ae);let at=_?.outputPreferredLocations[s[C]];if(R==="string"){if(at==="gpu-buffer"||at==="ml-tensor")throw new Error("String tensor is not supported on GPU.");let Se=[];for(let xe=0;xe<nt;xe++){let He=a.getValue(J+xe*i,"*"),Ot=a.getValue(J+(xe+1)*i,"*"),ke=xe===nt-1?void 0:Ot-He;Se.push(a.UTF8ToString(He,ke))}Q.push([R,rt,Se,"cpu"])}else if(at==="gpu-buffer"&&nt>0){let Se=a.webgpuGetBuffer;if(!Se)throw new Error('preferredLocation "gpu-buffer" is not supported without using WebGPU.');let xe=Se(J),He=Dn(ae,nt);if(He===void 0||!Sb(R))throw new Error(`Unsupported data type: ${R}`);z=!0;{a.webgpuRegisterBuffer(xe,t,J);let Ot=a.webgpuCreateDownloader(xe,He,t);Q.push([R,rt,{gpuBuffer:xe,download:async()=>{let ke=await Ot();return new(gl(R))(ke)},dispose:()=>{a._OrtReleaseTensor(te)!==0&&ze("Can't release tensor.")}},"gpu-buffer"])}}else if(at==="ml-tensor"&&nt>0){let Se=a.webnnEnsureTensor,xe=a.webnnIsGraphInputOutputTypeSupported;if(!Se||!xe)throw new Error('preferredLocation "ml-tensor" is not supported without using WebNN.');if(Dn(ae,nt)===void 0||!Tb(R))throw new Error(`Unsupported data type: ${R}`);if(!xe(t,R,!1))throw new Error(`preferredLocation "ml-tensor" for ${R} output is not supported by current WebNN Context.`);let He=await Se(t,J,ae,rt,!1);z=!0,Q.push([R,rt,{mlTensor:He,download:a.webnnCreateMLTensorDownloader(J,R),dispose:()=>{a.webnnReleaseTensorId(J),a._OrtReleaseTensor(te)}},"ml-tensor"])}else if(at==="ml-tensor-cpu-output"&&nt>0){let Se=a.webnnCreateMLTensorDownloader(J,R)(),xe=Q.length;z=!0,F.push((async()=>{let He=[xe,await Se];return a.webnnReleaseTensorId(J),a._OrtReleaseTensor(te),He})()),Q.push([R,rt,[],"cpu"])}else{let Se=gl(R),xe=new Se(nt);new Uint8Array(xe.buffer,xe.byteOffset,xe.byteLength).set(a.HEAPU8.subarray(J,J+xe.byteLength)),Q.push([R,rt,xe,"cpu"])}}finally{a.stackRestore(le),R==="string"&&J&&a._free(J),z||a._OrtReleaseTensor(te)}}_&&!m&&(a._OrtClearBoundOutputs(_.handle)!==0&&ze("Can't clear bound outputs."),ts.set(t,[c,p,f,_,m,!1]));for(let[C,te]of await Promise.all(F))Q[C][2]=te;return ns("wasm ProcessOutputTensor"),Q}finally{a.webnnOnRunEnd?.(c),a.stackRestore(v),r.forEach(q=>{q&&q[3]==="gpu-buffer"&&a.webgpuUnregisterBuffer(q[2].gpuBuffer)}),n.forEach(q=>{q&&q[3]==="gpu-buffer"&&a.webgpuUnregisterBuffer(q[2].gpuBuffer)}),T.forEach(q=>a._OrtReleaseTensor(q)),S.forEach(q=>a._OrtReleaseTensor(q)),P.forEach(q=>a._free(q)),E!==0&&a._OrtReleaseRunOptions(E),A.forEach(q=>a._free(q))}},Nb=t=>{let e=Be(),r=ts.get(t);if(!r)throw new Error("invalid session id");let s=r[0],n=e._OrtEndProfiling(s);n===0&&ze("Can't get an profile file name."),e._OrtFree(n)},$b=t=>{let e=[];for(let r of t){let s=r[2];!Array.isArray(s)&&"buffer"in s&&e.push(s.buffer)}return e}}),rs,Gt,Rn,_l,ml,Yu,fb,Ju,Ns,$s,lA,VA,HA,XA,KA,QA,YA,JA,ZA=be(()=>{"use strict";js(),WA(),Gs(),Eb(),rs=()=>!!Ke.wasm.proxy&&typeof document<"u",Rn=!1,_l=!1,ml=!1,Ju=new Map,Ns=(t,e)=>{let r=Ju.get(t);r?r.push(e):Ju.set(t,[e])},$s=()=>{if(Rn||!_l||ml||!Gt)throw new Error("worker not ready")},lA=t=>{switch(t.data.type){case"init-wasm":Rn=!1,t.data.err?(ml=!0,fb[1](t.data.err)):(_l=!0,fb[0]()),Yu&&(URL.revokeObjectURL(Yu),Yu=void 0);break;case"init-ep":case"copy-from":case"create":case"release":case"run":case"end-profiling":{let e=Ju.get(t.data.type);t.data.err?e.shift()[1](t.data.err):e.shift()[0](t.data.out);break}default:}},VA=async()=>{if(!_l){if(Rn)throw new Error("multiple calls to 'initWasm()' detected.");if(ml)throw new Error("previous call to 'initWasm()' failed.");if(Rn=!0,rs())return new Promise((t,e)=>{Gt?.terminate(),zA().then(([r,s])=>{try{Gt=s,Gt.onerror=o=>e(o),Gt.onmessage=lA,fb=[t,e];let n={type:"init-wasm",in:Ke};!n.in.wasm.wasmPaths&&(r||mb)&&(n.in.wasm.wasmPaths={wasm:new URL("ort-wasm-simd-threaded.asyncify.wasm",tr.url).href}),Gt.postMessage(n),Yu=r}catch(n){e(n)}},e)});try{await Ab(Ke.wasm),await Ib(Ke),_l=!0}catch(t){throw ml=!0,t}finally{Rn=!1}}},HA=async t=>{if(rs())return $s(),new Promise((e,r)=>{Ns("init-ep",[e,r]);let s={type:"init-ep",in:{epName:t,env:Ke}};Gt.postMessage(s)});await Cb(Ke,t)},XA=async t=>rs()?($s(),new Promise((e,r)=>{Ns("copy-from",[e,r]);let s={type:"copy-from",in:{buffer:t}};Gt.postMessage(s,[t.buffer])})):np(t),KA=async(t,e)=>{if(rs()){if(e?.preferredOutputLocation)throw new Error('session option "preferredOutputLocation" is not supported for proxy.');return $s(),new Promise((r,s)=>{Ns("create",[r,s]);let n={type:"create",in:{model:t,options:{...e}}},o=[];t instanceof Uint8Array&&o.push(t.buffer),Gt.postMessage(n,o)})}else return Lb(t,e)},QA=async t=>{if(rs())return $s(),new Promise((e,r)=>{Ns("release",[e,r]);let s={type:"release",in:t};Gt.postMessage(s)});Pb(t)},YA=async(t,e,r,s,n,o)=>{if(rs()){if(r.some(a=>a[3]!=="cpu"))throw new Error("input tensor on GPU is not supported for proxy.");if(n.some(a=>a))throw new Error("pre-allocated output tensor is not supported for proxy.");return $s(),new Promise((a,i)=>{Ns("run",[a,i]);let l=r,c={type:"run",in:{sessionId:t,inputIndices:e,inputs:l,outputIndices:s,options:o}};Gt.postMessage(c,$b(l))})}else return zb(t,e,r,s,n,o)},JA=async t=>{if(rs())return $s(),new Promise((e,r)=>{Ns("end-profiling",[e,r]);let s={type:"end-profiling",in:t};Gt.postMessage(s)});Nb(t)}}),_b,cA,e2,FP=be(()=>{"use strict";js(),ZA(),Fn(),kb(),DA(),_b=(t,e)=>{switch(t.location){case"cpu":return[t.type,t.dims,t.data,"cpu"];case"gpu-buffer":return[t.type,t.dims,{gpuBuffer:t.gpuBuffer},"gpu-buffer"];case"ml-tensor":return[t.type,t.dims,{mlTensor:t.mlTensor},"ml-tensor"];default:throw new Error(`invalid data location: ${t.location} for ${e()}`)}},cA=t=>{switch(t[3]){case"cpu":return new rr(t[0],t[2],t[1]);case"gpu-buffer":{let e=t[0];if(!Sb(e))throw new Error(`not supported data type: ${e} for deserializing GPU tensor`);let{gpuBuffer:r,download:s,dispose:n}=t[2];return rr.fromGpuBuffer(r,{dataType:e,dims:t[1],download:s,dispose:n})}case"ml-tensor":{let e=t[0];if(!Tb(e))throw new Error(`not supported data type: ${e} for deserializing MLTensor tensor`);let{mlTensor:r,download:s,dispose:n}=t[2];return rr.fromMLTensor(r,{dataType:e,dims:t[1],download:s,dispose:n})}default:throw new Error(`invalid data location: ${t[3]}`)}},e2=class{async fetchModelAndCopyToWasmMemory(t){return XA(await Ob(t))}async loadModel(t,e){Bs();let r;typeof t=="string"?r=await this.fetchModelAndCopyToWasmMemory(t):r=t,[this.sessionId,this.inputNames,this.outputNames,this.inputMetadata,this.outputMetadata]=await KA(r,e),Us()}async dispose(){return QA(this.sessionId)}async run(t,e,r){Bs();let s=[],n=[];Object.entries(t).forEach(f=>{let _=f[0],m=f[1],w=this.inputNames.indexOf(_);if(w===-1)throw new Error(`invalid input '${_}'`);s.push(m),n.push(w)});let o=[],a=[];Object.entries(e).forEach(f=>{let _=f[0],m=f[1],w=this.outputNames.indexOf(_);if(w===-1)throw new Error(`invalid output '${_}'`);o.push(m),a.push(w)});let i=s.map((f,_)=>_b(f,()=>`input "${this.inputNames[n[_]]}"`)),l=o.map((f,_)=>f?_b(f,()=>`output "${this.outputNames[a[_]]}"`):null),c=await YA(this.sessionId,n,i,a,l,r),p={};for(let f=0;f<c.length;f++)p[this.outputNames[a[f]]]=o[f]??cA(c[f]);return Us(),p}startProfiling(){}endProfiling(){JA(this.sessionId)}}}),t2={};wl(t2,{OnnxruntimeWebAssemblyBackend:()=>xb,initializeFlags:()=>wb,wasmBackend:()=>r2});var wb,xb,r2,BP=be(()=>{"use strict";js(),ZA(),FP(),wb=()=>{(typeof Ke.wasm.initTimeout!="number"||Ke.wasm.initTimeout<0)&&(Ke.wasm.initTimeout=0);let t=Ke.wasm.simd;if(typeof t!="boolean"&&t!==void 0&&t!=="fixed"&&t!=="relaxed"&&(console.warn(`Property "env.wasm.simd" is set to unknown value "${t}". Reset it to \`false\` and ignore SIMD feature checking.`),Ke.wasm.simd=!1),typeof Ke.wasm.proxy!="boolean"&&(Ke.wasm.proxy=!1),typeof Ke.wasm.trace!="boolean"&&(Ke.wasm.trace=!1),typeof Ke.wasm.numThreads!="number"||!Number.isInteger(Ke.wasm.numThreads)||Ke.wasm.numThreads<=0)if(typeof self<"u"&&!self.crossOriginIsolated)Ke.wasm.numThreads=1;else{let e=typeof navigator>"u"?gP("node:os").cpus().length:navigator.hardwareConcurrency;Ke.wasm.numThreads=Math.min(4,Math.ceil((e||1)/2))}},xb=class{async init(t){wb(),await VA(),await HA(t)}async createInferenceSessionHandler(t,e){let r=new e2;return await r.loadModel(t,e),r}},r2=new xb});js();js();js();var UP="1.25.0-dev.20260307-d626b568e0",jP=TA;{let t=(BP(),ep(t2)).wasmBackend;Fs("webgpu",t,5),Fs("webnn",t,5),Fs("cpu",t,10),Fs("wasm",t,10)}Object.defineProperty(Ke.versions,"web",{value:UP,enumerable:!0});async function s2(t){let e=t.split("/").pop(),r;try{if(r=await er(),r){let n=await r.match(t);if(n)return n}}catch(n){Z.warn(`Failed to load ${e} from cache:`,n)}let s=await fe.fetch(t);if(!s.ok)throw new Error(`Failed to fetch ${e}: ${s.status} ${s.statusText}`);if(r)try{await r.put(t,s.clone())}catch(n){Z.warn(`Failed to cache ${e}:`,n)}return s}async function n2(t){let e=await s2(t);if(!e||typeof e=="string")return null;try{return await e.arrayBuffer()}catch(r){return Z.warn("Failed to read WASM binary:",r),null}}async function o2(t){if(ie.IS_SERVICE_WORKER_ENV||ie.IS_CHROME_AVAILABLE)return t;let e=await s2(t);if(!e||typeof e=="string")return null;try{let r=await e.text();r=r.replaceAll("globalThis.process?.versions?.node","false");let s=new Blob([r],{type:"text/javascript"});return URL.createObjectURL(s)}catch(r){return Z.warn("Failed to read WASM factory:",r),null}}var Fb=require("onnxruntime-common"),qP=Object.freeze({auto:null,gpu:null,cpu:"cpu",wasm:"wasm",webgpu:"webgpu",cuda:"cuda",dml:"dml",coreml:"coreml",webnn:{name:"webnn",deviceType:"cpu"},"webnn-npu":{name:"webnn",deviceType:"npu"},"webnn-gpu":{name:"webnn",deviceType:"gpu"},"webnn-cpu":{name:"webnn",deviceType:"cpu"}});function c2(t){return t<=St.DEBUG?0:t<=St.INFO?2:t<=St.WARNING||t<=St.ERROR?3:4}var WP={0:"verbose",1:"info",2:"warning",3:"error",4:"fatal"},qt=[],Db,Un,a2=Symbol.for("onnxruntime");if(a2 in globalThis)Un=globalThis[a2];else if(ie.IS_NODE_ENV){switch(Un=GP,process.platform){case"win32":qt.push("dml");break;case"linux":process.arch==="x64"&&qt.push("cuda");break;case"darwin":qt.push("coreml");break}qt.push("webgpu"),qt.push("cpu"),Db=["cpu"]}else Un=Rb,ie.IS_WEBNN_AVAILABLE&&qt.push("webnn-npu","webnn-gpu","webnn-cpu","webnn"),ie.IS_WEBGPU_AVAILABLE&&qt.push("webgpu"),qt.push("wasm"),Db=["wasm"];var VP=Un.InferenceSession;function u2(t=null){if(!t)return Db;switch(t){case"auto":return qt;case"gpu":return qt.filter(e=>["webgpu","cuda","dml","webnn-gpu"].includes(e))}if(qt.includes(t))return[qP[t]??t];throw new Error(`Unsupported device: "${t}". Should be one of: ${qt.join(", ")}.`)}var i2=Promise.resolve(),Bn=null;async function HP(){if(Bn)return Bn;if(!(fe.useWasmCache&&typeof lt?.wasm?.wasmPaths=="object"&&lt?.wasm?.wasmPaths?.wasm&&lt?.wasm?.wasmPaths?.mjs)){if(ie.IS_DENO_WEB_RUNTIME)throw new Error("env.useWasmCache=false is not supported in Deno's web runtime. Remove the useWasmCache override.");return Bn=Promise.resolve(),Bn}return Bn=(async()=>{let e=lt.wasm.wasmPaths,r=!1;await Promise.all([e.wasm&&!U0(e.wasm)?(async()=>{try{let s=await n2(j0(e.wasm));s&&(lt.wasm.wasmBinary=s,r=!0)}catch(s){Z.warn("Failed to pre-load WASM binary:",s)}})():Promise.resolve(),e.mjs&&!U0(e.mjs)?(async()=>{try{let s=await o2(j0(e.mjs));s&&(lt.wasm.wasmPaths.mjs=s)}catch(s){Z.warn("Failed to pre-load WASM factory:",s)}})():Promise.resolve()]),r||(lt.wasm.wasmPaths.mjs=e.mjs)})(),Bn}async function op(t,e,r){await HP();let s=c2(fe.logLevel??St.WARNING),n=()=>VP.create(t,{logSeverityLevel:s,...e}),o=await(ie.IS_WEB_ENV?i2=i2.then(n):n());return o.config=r,o}var l2=Promise.resolve();async function ap(t,e){let r=()=>t.run(e);return ie.IS_WEB_ENV?l2=l2.then(r):r()}function ip(t){return t instanceof Un.Tensor}var lt=Un?.env;function xl(){return lt?.wasm?.proxy}if(lt){let t=function(e){let r=c2(e);lt.logLevel=WP[r]};if(lt.wasm){if(!(typeof ServiceWorkerGlobalScope<"u"&&self instanceof ServiceWorkerGlobalScope)&&lt.versions?.web&&!lt.wasm.wasmPaths){let e=`https://cdn.jsdelivr.net/npm/onnxruntime-web@${lt.versions.web}/dist/`;lt.wasm.wasmPaths=ie.IS_SAFARI?{mjs:`${e}ort-wasm-simd-threaded.mjs`,wasm:`${e}ort-wasm-simd-threaded.wasm`}:{mjs:`${e}ort-wasm-simd-threaded.asyncify.mjs`,wasm:`${e}ort-wasm-simd-threaded.asyncify.wasm`}}lt.wasm.proxy=!1}lt.webgpu&&(lt.webgpu.powerPreference="high-performance"),t(fe.logLevel??St.WARNING),fe.backends.onnx={...lt,setLogLevel:t}}var os=async(t,e,r)=>{let s=await op(new Uint8Array(t),e);return(async n=>{let o=xl(),a=Object.fromEntries(Object.entries(n).map(([l,c])=>[l,(o?c.clone():c).ort_tensor])),i=await ap(s,a);return Array.isArray(r)?r.map(l=>new $(i[l])):new $(i[r])})},dr=class{static session_options={};static get nearest_interpolate_4d(){return this._nearest_interpolate_4d||(this._nearest_interpolate_4d=os([8,10,18,0,58,129,1,10,41,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,18,10,4,109,111,100,101,34,7,110,101,97,114,101,115,116,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,21],this.session_options,"y")),this._nearest_interpolate_4d}static get bilinear_interpolate_4d(){return this._bilinear_interpolate_4d||(this._bilinear_interpolate_4d=os([8,9,18,0,58,128,1,10,40,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,17,10,4,109,111,100,101,34,6,108,105,110,101,97,114,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,"y")),this._bilinear_interpolate_4d}static get bicubic_interpolate_4d(){return this._bicubic_interpolate_4d||(this._bicubic_interpolate_4d=os([8,9,18,0,58,127,10,39,10,1,120,10,0,10,0,10,1,115,18,1,121,34,6,82,101,115,105,122,101,42,16,10,4,109,111,100,101,34,5,99,117,98,105,99,160,1,3,18,1,114,90,31,10,1,120,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,90,15,10,1,115,18,10,10,8,8,7,18,4,10,2,8,4,98,31,10,1,121,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,99,10,3,18,1,104,10,3,18,1,119,66,2,16,20],this.session_options,"y")),this._bicubic_interpolate_4d}static get matmul(){return this._matmul||(this._matmul=os([8,9,18,0,58,55,10,17,10,1,97,10,1,98,18,1,99,34,6,77,97,116,77,117,108,18,1,114,90,9,10,1,97,18,4,10,2,8,1,90,9,10,1,98,18,4,10,2,8,1,98,9,10,1,99,18,4,10,2,8,1,66,2,16,20],this.session_options,"c")),this._matmul}static get stft(){return this._stft||(this._stft=os([8,7,18,0,58,148,1,10,38,10,1,115,10,1,106,10,1,119,10,1,108,18,1,111,34,4,83,84,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,115,90,26,10,1,115,18,21,10,19,8,1,18,15,10,3,18,1,98,10,3,18,1,115,10,3,18,1,99,90,11,10,1,106,18,6,10,4,8,7,18,0,90,16,10,1,119,18,11,10,9,8,1,18,5,10,3,18,1,119,90,11,10,1,108,18,6,10,4,8,7,18,0,98,31,10,1,111,18,26,10,24,8,1,18,20,10,3,18,1,98,10,3,18,1,102,10,3,18,1,100,10,3,18,1,99,66,2,16,17],this.session_options,"o")),this._stft}static get rfft(){return this._rfft||(this._rfft=os([8,9,18,0,58,97,10,33,10,1,120,10,0,10,1,97,18,1,121,34,3,68,70,84,42,15,10,8,111,110,101,115,105,100,101,100,24,1,160,1,2,18,1,100,90,21,10,1,120,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,90,11,10,1,97,18,6,10,4,8,7,18,0,98,21,10,1,121,18,16,10,14,8,1,18,10,10,3,18,1,115,10,3,18,1,99,66,2,16,20],this.session_options,"y")),this._rfft}static get top_k(){return this._top_k||(this._top_k=os([8,10,18,0,58,73,10,18,10,1,120,10,1,107,18,1,118,18,1,105,34,4,84,111,112,75,18,1,116,90,9,10,1,120,18,4,10,2,8,1,90,15,10,1,107,18,10,10,8,8,7,18,4,10,2,8,1,98,9,10,1,118,18,4,10,2,8,1,98,9,10,1,105,18,4,10,2,8,7,66,2,16,21],this.session_options,["v","i"])),this._top_k}static get slice(){return this._slice||(this._slice=os([8,7,18,0,58,96,10,25,10,1,120,10,1,115,10,1,101,10,1,97,10,1,116,18,1,121,34,5,83,108,105,99,101,18,1,114,90,9,10,1,120,18,4,10,2,8,1,90,9,10,1,115,18,4,10,2,8,7,90,9,10,1,101,18,4,10,2,8,7,90,9,10,1,97,18,4,10,2,8,7,90,9,10,1,116,18,4,10,2,8,7,98,9,10,1,121,18,4,10,2,8,1,66,2,16,13],this.session_options,"y")),this._slice}};var p2=Object.freeze({auto:"auto",gpu:"gpu",cpu:"cpu",wasm:"wasm",webgpu:"webgpu",cuda:"cuda",dml:"dml",coreml:"coreml",webnn:"webnn","webnn-npu":"webnn-npu","webnn-gpu":"webnn-gpu","webnn-cpu":"webnn-cpu"}),Bb=ie.IS_NODE_ENV?"cpu":"wasm";function lp(t,e,{warn:r}={}){return t?typeof t=="string"?t:t.hasOwnProperty(e)?t[e]:(r&&r(`device not specified for "${e}". Using the default device (${Bb}).`),Bb):Bb}var _2=(function(){let t;return async function(){if(t===void 0)if(!ie.IS_WEBGPU_AVAILABLE)t=!1;else try{t=(await navigator.gpu.requestAdapter()).features.has("shader-f16")}catch{t=!1}return t}})(),yt=Object.freeze({auto:"auto",fp32:"fp32",fp16:"fp16",q8:"q8",int8:"int8",uint8:"uint8",q4:"q4",bnb4:"bnb4",q4f16:"q4f16"}),d2=yt.fp32,f2=Object.freeze({[p2.wasm]:yt.q8}),yl=Object.freeze({[yt.fp32]:"",[yt.fp16]:"_fp16",[yt.int8]:"_int8",[yt.uint8]:"_uint8",[yt.q8]:"_quantized",[yt.q4]:"_q4",[yt.q4f16]:"_q4f16",[yt.bnb4]:"_bnb4"});function cp(t,e,r,{configDtype:s=null,warn:n}={}){let o,a=!1;t&&typeof t!="string"?t.hasOwnProperty(e)?o=t[e]:(o=null,a=!0):o=t;let i;if(o===yt.auto){if(s){let l=typeof s=="string"?s:s?.[e];if(l&&l!==yt.auto&&yt.hasOwnProperty(l))return l}i=f2[r]??d2}else o&&yt.hasOwnProperty(o)?i=o:i=f2[r]??d2;return a&&n&&n(`dtype not specified for "${e}". Using the default dtype (${i}) for this device (${r}).`),i}var Ar=Object.freeze({float32:Float32Array,float16:typeof Float16Array<"u"?Float16Array:Uint16Array,float64:Float64Array,string:Array,int8:Int8Array,uint8:Uint8Array,int16:Int16Array,uint16:Uint16Array,int32:Int32Array,uint32:Uint32Array,int64:BigInt64Array,uint64:BigUint64Array,bool:Uint8Array,uint4:Uint8Array,int4:Int8Array});var $=class t{get dims(){return this.ort_tensor.dims}set dims(e){this.ort_tensor.dims=e}get type(){return this.ort_tensor.type}get data(){return this.ort_tensor.data}get size(){return this.ort_tensor.size}get location(){return this.ort_tensor.location}ort_tensor;constructor(...e){return ip(e[0])?this.ort_tensor=e[0]:this.ort_tensor=new Fb.Tensor(e[0],e[1],e[2]),new Proxy(this,{get:(r,s)=>{if(typeof s=="string"){let n=Number(s);if(Number.isInteger(n))return r._getitem(n)}return r[s]},set:(r,s,n)=>r[s]=n})}dispose(){this.ort_tensor.dispose()}*[Symbol.iterator](){let[e,...r]=this.dims;if(r.length>0){let s=r.reduce((n,o)=>n*o);for(let n=0;n<e;++n)yield this._subarray(n,s,r)}else yield*this.data}_getitem(e){let[r,...s]=this.dims;if(e=fr(e,r),s.length>0){let n=s.reduce((o,a)=>o*a);return this._subarray(e,n,s)}else return new t(this.type,[this.data[e]],s)}indexOf(e){let r=this.data;for(let s=0;s<r.length;++s)if(r[s]==e)return s;return-1}_subarray(e,r,s){let n=e*r,o=(e+1)*r,a="subarray"in this.data?this.data.subarray(n,o):this.data.slice(n,o);return new t(this.type,a,s)}item(){let e=this.data;if(e.length!==1)throw new Error(`a Tensor with ${e.length} elements cannot be converted to Scalar`);return e[0]}tolist(){return XP(this.data,this.dims)}sigmoid(){return this.clone().sigmoid_()}sigmoid_(){let e=this.data;for(let r=0;r<e.length;++r)e[r]=1/(1+Math.exp(-e[r]));return this}map(e){return this.clone().map_(e)}map_(e){let r=this.data;for(let s=0;s<r.length;++s)r[s]=e(r[s],s,r);return this}mul(e){return this.clone().mul_(e)}mul_(e){let r=this.data;for(let s=0;s<r.length;++s)r[s]*=e;return this}div(e){return this.clone().div_(e)}div_(e){let r=this.data;for(let s=0;s<r.length;++s)r[s]/=e;return this}add(e){return this.clone().add_(e)}add_(e){let r=this.data;for(let s=0;s<r.length;++s)r[s]+=e;return this}sub(e){return this.clone().sub_(e)}sub_(e){let r=this.data;for(let s=0;s<r.length;++s)r[s]-=e;return this}clone(){return new t(this.type,this.data.slice(),this.dims.slice())}slice(...e){let r=[],s=[];for(let p=0;p<this.dims.length;++p){let f=e[p];if(f==null)s.push([0,this.dims[p]]),r.push(this.dims[p]);else if(typeof f=="number")f=fr(f,this.dims[p],p),s.push([f,f+1]);else if(Array.isArray(f)&&f.length===2){let[_,m]=f;if(_=_===null?0:fr(_,this.dims[p],p,!1),m=m===null?this.dims[p]:fr(m,this.dims[p],p,!1),_>m)throw new Error(`Invalid slice: ${f}`);let w=[Math.max(_,0),Math.min(m,this.dims[p])];s.push(w),r.push(w[1]-w[0])}else throw new Error(`Invalid slice: ${f}`)}let n=s.map(([p,f])=>f-p),o=n.reduce((p,f)=>p*f),a=this.data,i=new a.constructor(o),l=this.stride(),c=!0;for(let p=1;p<n.length;++p)if(s[p][0]!==0||s[p][1]!==this.dims[p]){c=!1;break}if(c){let p=s[0][0]*l[0],f=s[0][1]*l[0];if(ArrayBuffer.isView(a))i.set(a.subarray(p,f));else if(Array.isArray(a)){let _=a.slice(p,f);for(let m=0;m<_.length;++m)i[m]=_[m]}else throw new Error("Unsupported data type for slicing")}else for(let p=0;p<o;++p){let f=0;for(let _=n.length-1,m=p;_>=0;--_){let w=n[_];f+=(m%w+s[_][0])*l[_],m=Math.floor(m/w)}i[p]=a[f]}return new t(this.type,i,r)}permute(...e){return g2(this,e)}transpose(...e){return this.permute(...e)}sum(e=null,r=!1){return this.norm(1,e,r)}norm(e="fro",r=null,s=!1){if(e==="fro")e=2;else if(typeof e=="string")throw Error(`Unsupported norm: ${e}`);let n=this.data,o=n instanceof BigInt64Array||n instanceof BigUint64Array;if(o&&e!==1)throw Error(`Expected a floating point tensor as input. Got ${this.type}`);let a,i;if(o?(a=(f,_)=>f+_,i=0n):(a=(f,_)=>f+_**e,i=0),r===null){let f=n.reduce(a,i);return e!==1&&(f=f**(1/e)),new t(this.type,[f],[])}let[l,c,p]=bl(a,this,r,s);if(e!==1)for(let f=0;f<c.length;++f)c[f]=c[f]**(1/e);return new t(l,c,p)}normalize_(e=2,r=1){r=fr(r,this.dims.length);let s=this.norm(e,r,!0),n=this.data,o=s.data;for(let a=0;a<n.length;++a){let i=0;for(let l=this.dims.length-1,c=a,p=1;l>=0;--l){let f=this.dims[l];if(l!==r){let _=c%f;i+=_*p,p*=this.dims[l]}c=Math.floor(c/f)}n[a]/=o[i]}return this}normalize(e=2,r=1){return this.clone().normalize_(e,r)}stride(){return Ub(this.dims)}squeeze(e=null){return new t(this.type,this.data,m2(this.dims,e))}squeeze_(e=null){return this.dims=m2(this.dims,e),this}unsqueeze(e){return new t(this.type,this.data,h2(this.dims,e))}unsqueeze_(e){return this.dims=h2(this.dims,e),this}flatten_(e=0,r=-1){r=(r+this.dims.length)%this.dims.length;let s=this.dims.slice(0,e),n=this.dims.slice(e,r+1),o=this.dims.slice(r+1);return this.dims=[...s,n.reduce((a,i)=>a*i,1),...o],this}flatten(e=0,r=-1){return this.clone().flatten_(e,r)}view(...e){let r=-1;for(let n=0;n<e.length;++n)if(e[n]===-1){if(r!==-1)throw new Error("Only one dimension can be inferred");r=n}let s=this.data;if(r!==-1){let n=e.reduce((o,a,i)=>i!==r?o*a:o,1);e[r]=s.length/n}return new t(this.type,s,e)}neg_(){let e=this.data;for(let r=0;r<e.length;++r)e[r]=-e[r];return this}neg(){return this.clone().neg_()}gt(e){let r=new Uint8Array(this.data.length),s=this.data;for(let n=0;n<s.length;++n)r[n]=s[n]>e?1:0;return new t("bool",r,this.dims)}lt(e){let r=new Uint8Array(this.data.length),s=this.data;for(let n=0;n<s.length;++n)r[n]=s[n]<e?1:0;return new t("bool",r,this.dims)}clamp_(e,r){let s=this.data;for(let n=0;n<s.length;++n)s[n]=Math.min(Math.max(s[n],e),r);return this}clamp(e,r){return this.clone().clamp_(e,r)}round_(){let e=this.data;for(let r=0;r<e.length;++r)e[r]=Math.round(e[r]);return this}round(){return this.clone().round_()}mean(e=null,r=!1){return kl(this,e,r)}min(e=null,r=!1){if(e===null){let a=ul(this.data)[0];return new t(this.type,[a],[])}let[s,n,o]=bl((a,i)=>Math.min(a,i),this,e,r,1/0);return new t(s,n,o)}max(e=null,r=!1){if(e===null){let a=Pe(this.data)[0];return new t(this.type,[a],[])}let[s,n,o]=bl((a,i)=>Math.max(a,i),this,e,r,-1/0);return new t(s,n,o)}argmin(e=null,r=!1){if(e!==null)throw new Error("`dim !== null` not yet implemented.");let s=ul(this.data)[1];return new t("int64",[BigInt(s)],[])}argmax(e=null,r=!1){if(e!==null)throw new Error("`dim !== null` not yet implemented.");let s=Pe(this.data)[1];return new t("int64",[BigInt(s)],[])}repeat(...e){if(e.length<this.dims.length)throw new Error(`Number of dimensions of repeat dims (${e.length}) cannot be smaller than number of dimensions of tensor (${this.dims.length})`);if(e.every(p=>p===1)){if(e.length===this.dims.length)return this.clone();let p=e.length-this.dims.length,f=Array(p).fill(1).concat(this.dims);return new t(this.type,this.data.slice(),f)}let r=e.length-this.dims.length,s=Array(r).fill(1).concat(this.dims),n=s.map((p,f)=>p*e[f]),o=n.reduce((p,f)=>p*f,1),a=this.data,i=new a.constructor(o),l=Ub(s),c=Ub(n);for(let p=0;p<o;++p){let f=p,_=0;for(let m=0;m<n.length;++m){let w=Math.floor(f/c[m]);f=f%c[m];let x=w%s[m];_+=x*l[m]}i[p]=a[_]}return new t(this.type,i,n)}tile(...e){if(e.length<this.dims.length){let r=this.dims.length-e.length;e=Array(r).fill(1).concat(e)}return this.repeat(...e)}to(e){if(this.type===e)return this;if(!Ar.hasOwnProperty(e))throw new Error(`Unsupported type: ${e}`);let r,s=["int64","uint64"].includes(this.type),n=["int64","uint64"].includes(e);if(s&&!n)r=Number;else if(!s&&n)["float16","float32","float64"].includes(this.type)?r=o=>BigInt(Math.floor(o)):r=BigInt;else if(this.type==="float16"&&e=="float32"&&this.data instanceof Uint16Array)return new t(e,$E(this.data),this.dims);return new t(e,Ar[e].from(this.data,r),this.dims)}};function XP(t,e){let r=t.length,s=e.reduce((o,a)=>o*a);if(r!==s)throw Error(`cannot reshape array of size ${r} into shape (${e})`);let n=t;for(let o=e.length-1;o>=0;o--)n=n.reduce((a,i)=>{let l=a[a.length-1];return l.length<e[o]?l.push(i):a.push([i]),a},[[]]);return n[0]}function g2(t,e){let[r,s]=IE(t.data,t.dims,e);return new $(t.type,r,s)}function pp(t,[e,r],s="bilinear",n=!1){let o=t.dims.at(-3)??1,a=t.dims.at(-2),i=t.dims.at(-1),l=OE(t.data,[o,a,i],[e,r],s,n);return new $(t.type,l,[o,e,r])}async function bt(t,{size:e=null,mode:r="bilinear"}={}){if(t.dims.length!==4)throw new Error("`interpolate_4d` currently only supports 4D input.");if(!e)throw new Error("`interpolate_4d` requires a `size` argument.");let s;if(e.length===2)s=[...t.dims.slice(0,2),...e];else if(e.length===3)s=[t.dims[0],...e];else if(e.length===4)s=e;else throw new Error("`size` must be of length 2, 3, or 4.");let n;if(r==="nearest")n=await dr.nearest_interpolate_4d;else if(r==="bilinear")n=await dr.bilinear_interpolate_4d;else if(r==="bicubic")n=await dr.bicubic_interpolate_4d;else throw new Error(`Unsupported mode: ${r}`);let o=new $("int64",new BigInt64Array(s.map(BigInt)),[s.length]);return await n({x:t,s:o})}async function jb(t,e){return await(await dr.matmul)({a:t,b:e})}async function KP(t,e){return await(await dr.rfft)({x:t,a:e})}async function Wt(t,e){let r=await dr.top_k;return e==null?e=t.dims.at(-1):e=Math.min(e,t.dims.at(-1)),await r({x:t,k:new $("int64",[BigInt(e)],[1])})}var up=t=>new $("int64",t,[t.length]);async function vl(t,e,r,s,n){return await(await dr.slice)({x:t,s:up(e),e:up(r),a:up(s),t:up(n??new Array(s.length).fill(1))})}function Gb(t,e){let r=t.data,s=e.data,n=[t.dims[0],t.dims[2]],o=new r.constructor(n[0]*n[1]),[a,i,l]=t.dims,c=0;for(let p=0;p<a;++p){let f=p*l*i;for(let _=0;_<l;++_){let m=0,w=0,x=p*i,k=f+_;for(let A=0;A<i;++A){let T=Number(s[x+A]);w+=T,m+=r[k+A*l]*T}let E=m/w;o[c++]=E}}return new $(t.type,o,n)}function QP(t,e,{eps:r=1e-5}={}){if(t.dims.length!==2)throw new Error("`layer_norm` currently only supports 2D input.");let[s,n]=t.dims;if(e.length!==1&&e[0]!==n)throw new Error("`normalized_shape` must be a 1D array with shape `[input.dims[1]]`.");let[o,a]=dp(t,1,0,!0),i=o.data,l=a.data,c=t.data,p=new c.constructor(c.length);for(let f=0;f<s;++f){let _=f*n;for(let m=0;m<n;++m){let w=_+m;p[w]=(c[w]-l[f])/(i[f]+r)}}return new $(t.type,p,t.dims)}function m2(t,e){return t=t.slice(),e===null?t=t.filter(r=>r!==1):typeof e=="number"?t[e]===1&&t.splice(e,1):Array.isArray(e)&&(t=t.filter((r,s)=>r!==1||!e.includes(s))),t}function h2(t,e){return e=fr(e,t.length+1),t=t.slice(),t.splice(e,0,1),t}function fr(t,e,r=null,s=!0){if(t<-e||t>=e){if(s)throw new Error(`IndexError: index ${t} is out of bounds for dimension${r===null?"":" "+r} with size ${e}`);return t<-e?0:e}return t<0&&(t=(t%e+e)%e),t}function ve(t,e=0){e=fr(e,t[0].dims.length);let r=t[0].dims.slice();r[e]=t.reduce((a,i)=>a+i.dims[e],0);let s=r.reduce((a,i)=>a*i,1),n=new t[0].data.constructor(s),o=t[0].type;if(e===0){let a=0;for(let i of t){let l=i.data;n.set(l,a),a+=l.length}}else{let a=0;for(let i=0;i<t.length;++i){let{data:l,dims:c}=t[i];for(let p=0;p<l.length;++p){let f=0;for(let _=c.length-1,m=p,w=1;_>=0;--_){let x=c[_],k=m%x;_===e&&(k+=a),f+=k*w,w*=r[_],m=Math.floor(m/x)}n[f]=l[p]}a+=c[e]}}return new $(o,n,r)}function Tt(t,e=0){return ve(t.map(r=>r.unsqueeze(e)),e)}function bl(t,e,r,s=!1,n=null){let o=e.data,a=e.dims;r=fr(r,a.length);let i=a.slice();i[r]=1;let l=new o.constructor(o.length/a[r]);n!==null&&l.fill(n);for(let c=0;c<o.length;++c){let p=0;for(let f=a.length-1,_=c,m=1;f>=0;--f){let w=a[f];if(f!==r){let x=_%w;p+=x*m,m*=i[f]}_=Math.floor(_/w)}l[p]=t(l[p],o[c],c,p)}return s||i.splice(r,1),[e.type,l,i]}function dp(t,e=null,r=1,s=!1){let n=t.data,o=t.dims;if(e===null){let m=n.reduce((E,A)=>E+A,0)/n.length,w=Math.sqrt(n.reduce((E,A)=>E+(A-m)**2,0)/(n.length-r)),x=new $(t.type,[m],[]);return[new $(t.type,[w],[]),x]}e=fr(e,o.length);let a=kl(t,e,s),i=a.data,[l,c,p]=bl((_,m,w,x)=>_+(m-i[x])**2,t,e,s);for(let _=0;_<c.length;++_)c[_]=Math.sqrt(c[_]/(o[e]-r));return[new $(l,c,p),a]}function kl(t,e=null,r=!1){let s=t.dims,n=t.data;if(e===null){let l=n.reduce((c,p)=>c+p,0);return new $(t.type,[l/n.length],[])}e=fr(e,s.length);let[o,a,i]=bl((l,c)=>l+c,t,e,r);if(s[e]!==1)for(let l=0;l<a.length;++l)a[l]/=s[e];return new $(o,a,i)}function Ub(t){let e=new Array(t.length);for(let r=t.length-1,s=1;r>=0;--r)e[r]=s,s*=t[r];return e}function qb(t,e,r,s){let n=t.reduce((o,a)=>o*a,1);return new $(r,new s(n).fill(e),t)}function We(t,e){let r,s;if(typeof e=="number")r="float32",s=Float32Array;else if(typeof e=="bigint")r="int64",s=BigInt64Array;else if(typeof e=="boolean")r="bool",s=Uint8Array;else throw new Error(`Unsupported data type: ${typeof e}`);return qb(t,e,r,s)}function jn(t,e){return We(t.dims,e)}function et(t){return qb(t,1n,"int64",BigInt64Array)}function El(t){return et(t.dims)}function fp(t){return qb(t,0n,"int64",BigInt64Array)}function _p(t){return fp(t.dims)}function YP(t){let e=t.reduce((r,s)=>r*s,1);return new $("float32",Float32Array.from({length:e},()=>Xr.random()),t)}function Wb(t){let e=t.reduce((r,s)=>r*s,1);return new $("float32",Float32Array.from({length:e},()=>Xr.gauss()),t)}function Vb(t,e){if(t.dims.length!==2)throw new Error("The tensor must have 2 dimensions");if(t.dims.at(-1)%8!==0)throw new Error("The last dimension of the tensor must be a multiple of 8");if(!["binary","ubinary"].includes(e))throw new Error("The precision must be either 'binary' or 'ubinary'");let r=e==="binary",s=r?"int8":"uint8",n=r?Int8Array:Uint8Array,o=t.data,a=new n(o.length/8);for(let i=0;i<o.length;++i){let l=o[i]>0?1:0,c=Math.floor(i/8),p=i%8;a[c]|=l<<7-p,r&&p===0&&(a[c]-=128)}return new $(s,a,[t.dims[0],t.dims[1]/8])}async function Gn(t){if(!t)throw new Error("modelId is required for get_tokenizer_files");return(await pr(t,"tokenizer_config.json",{})).exists?["tokenizer.json","tokenizer_config.json"]:[]}async function Hb(t,e){let r=await Gn(t);return await Promise.all(r.map(s=>ft(t,s,!0,e)))}function Xb(t){let e=t.dims;switch(e.length){case 1:return t.tolist();case 2:if(e[0]!==1)throw new Error("Unable to decode tensor with `batch size !== 1`. Use `tokenizer.batch_decode(...)` for batched inputs.");return t.tolist()[0];default:throw new Error(`Expected tensor to have 1-2 dimensions, got ${e.length}.`)}}var JP=["bos_token","eos_token","unk_token","sep_token","pad_token","cls_token","mask_token"];function ZP(t,e,r,s){for(let n of Object.keys(t)){let o=e-t[n].length,a=r(n),i=new Array(o).fill(a);t[n]=s==="right"?wt(t[n],i):wt(i,t[n])}}function ez(t,e){for(let r of Object.keys(t))t[r].length=e}function qs(t,...e){for(let r of e){if(!Object.hasOwn(t,r))continue;let s=t[r];if(s)if(typeof s=="object"){if(s.__type==="AddedToken")return s.content;throw Error(`Unknown token: ${s}`)}else return s}return null}function tz(t){let e=[];for(let r of t.get_added_tokens_decoder().values())r.special&&e.push(r);return e}var W=class extends st{return_token_type_ids=!1;padding_side="right";constructor(e,r){if(super(),this._tokenizerJSON=e,this._tokenizerConfig=r,this._tokenizer=new oE(e,r),this.config=r,this.padding_side=r.padding_side??this.padding_side,this.mask_token=qs(r,"mask_token"),this.mask_token_id=this._tokenizer.token_to_id(this.mask_token),this.pad_token=qs(r,"pad_token","eos_token"),this.pad_token_id=this._tokenizer.token_to_id(this.pad_token),this.sep_token=qs(r,"sep_token"),this.sep_token_id=this._tokenizer.token_to_id(this.sep_token),this.unk_token=qs(r,"unk_token"),this.unk_token_id=this._tokenizer.token_to_id(this.unk_token),this.bos_token=qs(r,"bos_token"),this.bos_token_id=this._tokenizer.token_to_id(this.bos_token),this.eos_token=qs(r,"eos_token"),this.eos_token_id=this._tokenizer.token_to_id(this.eos_token),this.chat_template=r.chat_template??null,Array.isArray(this.chat_template)){let n=Object.create(null);for(let{name:o,template:a}of this.chat_template){if(typeof o!="string"||typeof a!="string")throw new Error('Chat template must be a list of objects with "name" and "template" properties');n[o]=a}this.chat_template=n}this._compiled_template_cache=new Map;let s=tz(this._tokenizer);this.all_special_ids=s.map(n=>n.id),this.all_special_tokens=s.map(n=>n.content)}static async from_pretrained(e,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main"}={}){let i=await Hb(e,{progress_callback:r,config:s,cache_dir:n,local_files_only:o,revision:a});return new this(...i)}get_vocab(){return this._tokenizer.get_vocab()}get model_max_length(){return this._tokenizerConfig.model_max_length??1/0}get add_eos_token(){return this._tokenizerConfig.add_eos_token}get add_bos_token(){return this._tokenizerConfig.add_bos_token}convert_tokens_to_ids(e){return typeof e=="string"?this._tokenizer.token_to_id(e):e.map(r=>this._tokenizer.token_to_id(r))}_call(e,{text_pair:r=null,add_special_tokens:s=!0,padding:n=!1,truncation:o=null,max_length:a=null,return_tensor:i=!0,return_token_type_ids:l=null}={}){let c=Array.isArray(e),p;if(c){if(e.length===0)throw Error("text array must be non-empty");if(r!==null){if(Array.isArray(r)){if(e.length!==r.length)throw Error("text and text_pair must have the same length")}else throw Error("text_pair must also be an array");p=e.map((_,m)=>this._encode_plus(_,{text_pair:r[m],add_special_tokens:s,return_token_type_ids:l}))}else p=e.map(_=>this._encode_plus(_,{add_special_tokens:s,return_token_type_ids:l}))}else{if(e==null)throw Error("text may not be null or undefined");if(Array.isArray(r))throw Error("When specifying `text_pair`, since `text` is a string, `text_pair` must also be a string (i.e., not an array).");p=[this._encode_plus(e,{text_pair:r,add_special_tokens:s,return_token_type_ids:l})]}if(a===null?a=this.model_max_length:o===null&&(n===!0?(Z.warn("`max_length` is ignored when `padding: true` and there is no truncation strategy. To pad to max length, use `padding: 'max_length'`."),a=this.model_max_length):n===!1&&(Z.warn("Truncation was not explicitly activated but `max_length` is provided a specific value, please use `truncation: true` to explicitly truncate examples to max length."),o=!0)),n===!0&&(a=Math.min(Pe(p.map(_=>_.input_ids.length))[0],a??1/0)),a=Math.min(a,this.model_max_length??1/0),n||o)for(let _=0;_<p.length;++_)p[_].input_ids.length!==a&&(p[_].input_ids.length>a?o&&ez(p[_],a):n&&ZP(p[_],a,m=>m==="input_ids"?this.pad_token_id:0,this.padding_side));let f={};if(i){if(!(n&&o)&&p.some(m=>{for(let w of Object.keys(m))if(m[w].length!==p[0][w]?.length)return!0;return!1}))throw Error("Unable to create tensor, you should probably activate truncation and/or padding with 'padding=true' and 'truncation=true' to have batched tensors with the same length.");let _=[p.length,p[0].input_ids.length];for(let m of Object.keys(p[0]))f[m]=new $("int64",BigInt64Array.from(p.flatMap(w=>w[m]).map(BigInt)),_)}else{for(let _ of Object.keys(p[0]))f[_]=p.map(m=>m[_]);if(!c)for(let _ of Object.keys(f))f[_]=f[_][0]}return f}_encode_text(e){return e===null?null:this._tokenizer.encode(e).tokens}_encode_plus(e,{text_pair:r=null,add_special_tokens:s=!0,return_token_type_ids:n=null}={}){let{ids:o,attention_mask:a,token_type_ids:i}=this._tokenizer.encode(e,{text_pair:r,add_special_tokens:s,return_token_type_ids:n??this.return_token_type_ids});return{input_ids:o,attention_mask:a,...i?{token_type_ids:i}:{}}}tokenize(e,{pair:r=null,add_special_tokens:s=!1}={}){return this._tokenizer.tokenize(e,{text_pair:r,add_special_tokens:s})}encode(e,{text_pair:r=null,add_special_tokens:s=!0,return_token_type_ids:n=null}={}){return this._tokenizer.encode(e,{text_pair:r,add_special_tokens:s,return_token_type_ids:n}).ids}batch_decode(e,r={}){return e instanceof $&&(e=e.tolist()),e.map(s=>this.decode(s,r))}decode(e,r={}){if(e instanceof $&&(e=Xb(e)),!Array.isArray(e)||e.length===0||!Uk(e[0]))throw Error("token_ids must be a non-empty array of integers.");return this.decode_single(e,r)}decode_single(e,{skip_special_tokens:r=!1,clean_up_tokenization_spaces:s=null}){return this._tokenizer.decode(e,{skip_special_tokens:r,clean_up_tokenization_spaces:s})}get_chat_template({chat_template:e=null,tools:r=null}={}){if(this.chat_template&&typeof this.chat_template=="object"){let s=this.chat_template;if(e!==null&&Object.hasOwn(s,e))e=s[e];else if(e===null)if(r!==null&&"tool_use"in s)e=s.tool_use;else if("default"in s)e=s.default;else throw Error(`This model has multiple chat templates with no default specified! Please either pass a chat template or the name of the template you wish to use to the 'chat_template' argument. Available template names are ${Object.keys(s).sort()}.`)}else if(e===null)if(this.chat_template)e=this.chat_template;else throw Error("Cannot use apply_chat_template() because tokenizer.chat_template is not set and no template argument was passed! For information about writing templates and setting the tokenizer.chat_template attribute, please see the documentation at https://huggingface.co/docs/transformers/main/en/chat_templating");return e}apply_chat_template(e,{tools:r=null,documents:s=null,chat_template:n=null,add_generation_prompt:o=!1,tokenize:a=!0,padding:i=!1,truncation:l=!1,max_length:c=null,return_tensor:p=!0,return_dict:f=!0,tokenizer_kwargs:_={},...m}={}){if(n=this.get_chat_template({chat_template:n,tools:r}),typeof n!="string")throw Error(`chat_template must be a string, but got ${typeof n}`);let w=this._compiled_template_cache.get(n);w===void 0&&(w=new gE(n),this._compiled_template_cache.set(n,w));let x=Object.create(null);for(let E of JP){let A=qs(this.config,E);A&&(x[E]=A)}let k=w.render({messages:e,add_generation_prompt:o,tools:r,documents:s,...x,...m});if(a){let E=this._call(k,{add_special_tokens:!1,padding:i,truncation:l,max_length:c,return_tensor:p,..._});return f?E:E.input_ids}return k}};function qn(t,e,r,s){if(!("language_codes"in t)||!Array.isArray(t.language_codes))throw new Error("Tokenizer must have `language_codes` attribute set and it should be an array of language ids.");if(!("languageRegex"in t)||!(t.languageRegex instanceof RegExp))throw new Error("Tokenizer must have `languageRegex` attribute set and it should be a regular expression.");if(!("lang_to_token"in t)||typeof t.lang_to_token!="function")throw new Error("Tokenizer must have `lang_to_token` attribute set and it should be a function.");let n=s.src_lang,o=s.tgt_lang;if(!t.language_codes.includes(o))throw new Error(`Target language code "${o}" is not valid. Must be one of: {${t.language_codes.join(", ")}}`);if(n!==void 0){if(!t.language_codes.includes(n))throw new Error(`Source language code "${n}" is not valid. Must be one of: {${t.language_codes.join(", ")}}`);for(let a of t._tokenizer.post_processor.config.single)if("SpecialToken"in a&&t.languageRegex.test(a.SpecialToken.id)){a.SpecialToken.id=t.lang_to_token(n);break}}return s.forced_bos_token_id=t._tokenizer.token_to_id(t.lang_to_token(o)),t._call(e,r)}var Qb={};Os(Qb,{AlbertTokenizer:()=>mp,AutoTokenizer:()=>oe,BartTokenizer:()=>hp,BertTokenizer:()=>gp,BlenderbotSmallTokenizer:()=>wp,BlenderbotTokenizer:()=>xp,BloomTokenizer:()=>yp,CLIPTokenizer:()=>vp,CamembertTokenizer:()=>bp,CodeGenTokenizer:()=>Ep,CodeLlamaTokenizer:()=>kp,CohereTokenizer:()=>Ap,ConvBertTokenizer:()=>Mp,DebertaTokenizer:()=>Tp,DebertaV2Tokenizer:()=>Sp,DistilBertTokenizer:()=>Op,ElectraTokenizer:()=>Ip,EsmTokenizer:()=>Cp,FalconTokenizer:()=>Lp,GPT2Tokenizer:()=>Np,GPTNeoXTokenizer:()=>zp,GemmaTokenizer:()=>Pp,HerbertTokenizer:()=>$p,LlamaTokenizer:()=>Rp,M2M100Tokenizer:()=>Dp,MBart50Tokenizer:()=>Bp,MBartTokenizer:()=>Wn,MPNetTokenizer:()=>Gp,MarianTokenizer:()=>Fp,MgpstrTokenizer:()=>Up,MobileBertTokenizer:()=>jp,NllbTokenizer:()=>qp,NougatTokenizer:()=>Wp,PreTrainedTokenizer:()=>W,Qwen2Tokenizer:()=>Vp,RoFormerTokenizer:()=>Xp,RobertaTokenizer:()=>Hp,SiglipTokenizer:()=>Kp,SpeechT5Tokenizer:()=>Qp,SqueezeBertTokenizer:()=>Yp,T5Tokenizer:()=>Jp,TokenizersBackend:()=>W,VitsTokenizer:()=>Zp,Wav2Vec2CTCTokenizer:()=>ed,WhisperTokenizer:()=>td,XLMRobertaTokenizer:()=>rd,XLMTokenizer:()=>sd});var mp=class extends W{return_token_type_ids=!0};var hp=class extends W{};var gp=class extends W{return_token_type_ids=!0};var wp=class extends W{};var xp=class extends W{};var yp=class extends W{};var bp=class extends W{};var vp=class extends W{};var kp=class extends W{};var Ep=class extends W{};var Ap=class extends W{};var Mp=class extends W{return_token_type_ids=!0};var Sp=class extends W{return_token_type_ids=!0};var Tp=class extends W{return_token_type_ids=!0};var Op=class extends W{};var Ip=class extends W{return_token_type_ids=!0};var Cp=class extends W{};var Lp=class extends W{};var Pp=class extends W{};var zp=class extends W{};var Np=class extends W{};var $p=class extends W{return_token_type_ids=!0};var Rp=class extends W{padding_side="left"};var Dp=class extends W{constructor(e,r){super(e,r),this.languageRegex=/^__[a-z]{2,3}__$/,this.language_codes=this.all_special_tokens.filter(s=>this.languageRegex.test(s)).map(s=>s.slice(2,-2)),this.lang_to_token=s=>`__${s}__`}_build_translation_inputs(e,r,s){return qn(this,e,r,s)}};var Fp=class extends W{constructor(e,r){super(e,r),this.languageRegex=/^(>>\w+<<)\s*/g,this.supported_language_codes=Array.from(this.get_vocab().keys()).filter(s=>this.languageRegex.test(s)),Z.warn('WARNING: `MarianTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}_encode_text(e){if(e===null)return null;let[r,...s]=e.trim().split(this.languageRegex);if(s.length===0)return super._encode_text(r);if(s.length===2){let[n,o]=s;return this.supported_language_codes.includes(n)||Z.warn(`Unsupported language code "${n}" detected, which may lead to unexpected behavior. Should be one of: ${JSON.stringify(this.supported_language_codes)}`),wt([n],super._encode_text(o))}}};var Wn=class extends W{constructor(e,r){super(e,r),this.languageRegex=/^[a-z]{2}_[A-Z]{2}$/,this.language_codes=this.all_special_tokens.filter(s=>this.languageRegex.test(s)).map(s=>s),this.lang_to_token=s=>s}_build_translation_inputs(e,r,s){return qn(this,e,r,s)}};var Bp=class extends Wn{};var Up=class extends W{};var jp=class extends W{return_token_type_ids=!0};var Gp=class extends W{};var qp=class extends W{constructor(e,r){super(e,r),this.languageRegex=/^[a-z]{3}_[A-Z][a-z]{3}$/,this.language_codes=this.all_special_tokens.filter(s=>this.languageRegex.test(s)),this.lang_to_token=s=>s}_build_translation_inputs(e,r,s){return qn(this,e,r,s)}};var Wp=class extends W{};var Vp=class extends W{};var Hp=class extends W{};var Xp=class extends W{return_token_type_ids=!0};var Kp=class extends W{};var Qp=class extends W{};var Yp=class extends W{return_token_type_ids=!0};var Jp=class extends W{};var Kb=class extends Ut{decode_chain(e){let r="";for(let s=1;s<e.length;s+=2)r+=e[s];return[r]}},Zp=class extends W{constructor(e,r){super(e,r),this._tokenizer.decoder=new Kb({type:"VitsDecoder"})}};var ed=class extends W{};var w2=[["en","english"],["zh","chinese"],["de","german"],["es","spanish"],["ru","russian"],["ko","korean"],["fr","french"],["ja","japanese"],["pt","portuguese"],["tr","turkish"],["pl","polish"],["ca","catalan"],["nl","dutch"],["ar","arabic"],["sv","swedish"],["it","italian"],["id","indonesian"],["hi","hindi"],["fi","finnish"],["vi","vietnamese"],["he","hebrew"],["uk","ukrainian"],["el","greek"],["ms","malay"],["cs","czech"],["ro","romanian"],["da","danish"],["hu","hungarian"],["ta","tamil"],["no","norwegian"],["th","thai"],["ur","urdu"],["hr","croatian"],["bg","bulgarian"],["lt","lithuanian"],["la","latin"],["mi","maori"],["ml","malayalam"],["cy","welsh"],["sk","slovak"],["te","telugu"],["fa","persian"],["lv","latvian"],["bn","bengali"],["sr","serbian"],["az","azerbaijani"],["sl","slovenian"],["kn","kannada"],["et","estonian"],["mk","macedonian"],["br","breton"],["eu","basque"],["is","icelandic"],["hy","armenian"],["ne","nepali"],["mn","mongolian"],["bs","bosnian"],["kk","kazakh"],["sq","albanian"],["sw","swahili"],["gl","galician"],["mr","marathi"],["pa","punjabi"],["si","sinhala"],["km","khmer"],["sn","shona"],["yo","yoruba"],["so","somali"],["af","afrikaans"],["oc","occitan"],["ka","georgian"],["be","belarusian"],["tg","tajik"],["sd","sindhi"],["gu","gujarati"],["am","amharic"],["yi","yiddish"],["lo","lao"],["uz","uzbek"],["fo","faroese"],["ht","haitian creole"],["ps","pashto"],["tk","turkmen"],["nn","nynorsk"],["mt","maltese"],["sa","sanskrit"],["lb","luxembourgish"],["my","myanmar"],["bo","tibetan"],["tl","tagalog"],["mg","malagasy"],["as","assamese"],["tt","tatar"],["haw","hawaiian"],["ln","lingala"],["ha","hausa"],["ba","bashkir"],["jw","javanese"],["su","sundanese"]],Al=new Map(w2),rz=new Map([...w2.map(([t,e])=>[e,t]),["burmese","my"],["valencian","ca"],["flemish","nl"],["haitian","ht"],["letzeburgesch","lb"],["pushto","ps"],["panjabi","pa"],["moldavian","ro"],["moldovan","ro"],["sinhalese","si"],["castilian","es"]]);function x2(t){t=t.toLowerCase();let e=rz.get(t);if(e===void 0){let r=t.match(/^<\|([a-z]{2})\|>$/);if(r&&(t=r[1]),Al.has(t))e=t;else{let n=t.length===2?Al.keys():Al.values();throw new Error(`Language "${t}" is not supported. Must be one of: ${JSON.stringify(Array.from(n))}`)}}return e}var sz="\\p{P}\\u0021-\\u002F\\u003A-\\u0040\\u005B-\\u0060\\u007B-\\u007E",y2=new RegExp(`^[${sz}]+$`,"gu"),td=class extends W{get timestamp_begin(){return this._tokenizer.token_to_id("<|notimestamps|>")+1}_decode_asr(e,{return_timestamps:r=!1,return_language:s=!1,time_precision:n=null,force_full_sequences:o=!0}={}){if(n===null)throw Error("Must specify time_precision");let a=null,i=r==="word";function l(){return{language:a,timestamp:[null,null],text:""}}let c=[],p=l(),f=0,_=this.timestamp_begin,w=_+1500,x=[],k=[],E=!1,A=null,T=new Set(this.all_special_ids);for(let O of e){let v=O.tokens,j=i?O.token_timestamps:null,H=null,B=_;if("stride"in O){let[Q,F,C]=O.stride;if(f-=F,A=Q-C,F&&(B=F/n+_),C)for(let te=v.length-1;te>=0;--te){let le=Number(v[te]);if(le>=_){if(H!==null&&(le-_)*n<A)break;H=le}}}let V=[],q=[];for(let Q=0;Q<v.length;++Q){let F=Number(v[Q]);if(T.has(F)){let C=this.decode([F]),te=Al.get(C.slice(2,-2));if(te!==void 0){if(a!==null&&te!==a&&!r){x.push(V);let le=this.findLongestCommonSequence(x)[0],L=this.decode(le);p.text=L,c.push(p),x=[],V=[],p=l()}a=p.language=te}}else if(F>=_&&F<=w){let C=(F-_)*n+f,te=zs(C,2);if(H!==null&&F>=H)E=!0;else if(E||x.length>0&&F<B)E=!1;else if(p.timestamp[0]===null)p.timestamp[0]=te;else if(te!==p.timestamp[0]){p.timestamp[1]=te,x.push(V),i&&k.push(q);let[le,L]=this.findLongestCommonSequence(x,k),z=this.decode(le);p.text=z,i&&(p.words=this.collateWordTimestamps(le,L,a)),c.push(p),x=[],V=[],k=[],q=[],p=l()}}else if(V.push(F),i){let C=zs(j[Q]+f,2),te;if(Q+1<j.length){te=zs(j[Q+1]+f,2);let le=this.decode([F]);y2.test(le)&&(te=zs(Math.min(C+n,te),2))}else te=null;q.push([C,te])}}if("stride"in O){let[Q,F,C]=O.stride;f+=Q-C}V.length>0?(x.push(V),i&&k.push(q)):x.every(Q=>Q.length===0)&&(p=l(),x=[],V=[],k=[],q=[])}if(x.length>0){if(o&&r)throw new Error("Whisper did not predict an ending timestamp, which can happen if audio is cut off in the middle of a word. Also make sure WhisperTimeStampLogitsProcessor was used during generation.");let[O,v]=this.findLongestCommonSequence(x,k),j=this.decode(O);p.text=j,i&&(p.words=this.collateWordTimestamps(O,v,a)),c.push(p)}let S=Object.create(null),P=c.map(O=>O.text).join("");if(r||s){for(let O=0;O<c.length;++O){let v=c[O];r||delete v.timestamp,s||delete v.language}if(i){let O=[];for(let v of c)for(let j of v.words)O.push(j);S={chunks:O}}else S={chunks:c}}return[P,S]}findLongestCommonSequence(e,r=null){let s=e[0],n=s.length,o=[],a=Array.isArray(r)&&r.length>0,i=a?[]:null,l=a?r[0]:null;for(let c=1;c<e.length;++c){let p=e[c],f=0,_=[n,n,0,0],m=p.length;for(let S=1;S<n+m;++S){let P=Math.max(0,n-S),O=Math.min(n,n+m-S),v=s.slice(P,O),j=Math.max(0,S-n),H=Math.min(m,S),B=p.slice(j,H);if(v.length!==B.length)throw new Error("There is a bug within whisper `decode_asr` function, please report it. Dropping to prevent bad inference.");let V;a?V=v.filter((F,C)=>F===B[C]&&l[P+C]<=r[c][j+C]).length:V=v.filter((F,C)=>F===B[C]).length;let q=S/1e4,Q=V/S+q;V>1&&Q>f&&(f=Q,_=[P,O,j,H])}let[w,x,k,E]=_,A=Math.floor((x+w)/2),T=Math.floor((E+k)/2);o.push(...s.slice(0,A)),s=p.slice(T),n=s.length,a&&(i.push(...l.slice(0,A)),l=r[c].slice(T))}return o.push(...s),a?(i.push(...l),[o,i]):[o,[]]}collateWordTimestamps(e,r,s){let[n,o,a]=this.combineTokensIntoWords(e,s),i=[];for(let l=0;l<n.length;++l){let c=a[l];i.push({text:n[l],timestamp:[r[c.at(0)][0],r[c.at(-1)][1]]})}return i}combineTokensIntoWords(e,r,s=`"'\u201C\xA1\xBF([{-`,n=`"'.\u3002,\uFF0C!\uFF01?\uFF1F:\uFF1A\u201D)]}\u3001`){r=r??"english";let o,a,i;return["chinese","japanese","thai","lao","myanmar"].includes(r)?[o,a,i]=this.splitTokensOnUnicode(e):[o,a,i]=this.splitTokensOnSpaces(e),this.mergePunctuations(o,a,i,s,n)}decode(e,r){let s;return r?.decode_with_timestamps?(e instanceof $&&(e=Xb(e)),s=this.decodeWithTimestamps(e,r)):s=super.decode(e,r),s}decodeWithTimestamps(e,r){let s=r?.time_precision??.02,n=this.all_special_ids.at(-1)+1,o=[[]];for(let a of e)if(a=Number(a),a>=n){let i=((a-n)*s).toFixed(2);o.push(`<|${i}|>`),o.push([])}else o[o.length-1].push(a);return o=o.map(a=>typeof a=="string"?a:super.decode(a,r)),o.join("")}splitTokensOnUnicode(e){let r=this.decode(e,{decode_with_timestamps:!0}),s="\uFFFD",n=[],o=[],a=[],i=[],l=[],c=0;for(let p=0;p<e.length;++p){let f=e[p];i.push(f),l.push(p);let _=this.decode(i,{decode_with_timestamps:!0});(!_.includes(s)||r[c+_.indexOf(s)]===s)&&(n.push(_),o.push(i),a.push(l),i=[],l=[],c+=_.length)}return[n,o,a]}splitTokensOnSpaces(e){let[r,s,n]=this.splitTokensOnUnicode(e),o=[],a=[],i=[];for(let l=0;l<r.length;++l){let c=r[l],p=s[l],f=n[l],_=p[0]>=this._tokenizer.token_to_id("<|endoftext|>"),m=c.startsWith(" "),w=c.trim(),x=y2.test(w);if(_||m||x||o.length===0)o.push(c),a.push(p),i.push(f);else{let k=o.length-1;o[k]+=c,a[k].push(...p),i[k].push(...f)}}return[o,a,i]}mergePunctuations(e,r,s,n,o){let a=structuredClone(e),i=structuredClone(r),l=structuredClone(s),c=a.length-2,p=a.length-1;for(;c>=0;)a[c].startsWith(" ")&&n.includes(a[c].trim())?(a[p]=a[c]+a[p],i[p]=wt(i[c],i[p]),l[p]=wt(l[c],l[p]),a[c]="",i[c]=[],l[c]=[]):p=c,--c;for(c=0,p=1;p<a.length;)!a[c].endsWith(" ")&&o.includes(a[p])?(a[c]+=a[p],i[c]=wt(i[c],i[p]),l[c]=wt(l[c],l[p]),a[p]="",i[p]=[],l[p]=[]):c=p,++p;return[a.filter(f=>f),i.filter(f=>f.length>0),l.filter(f=>f.length>0)]}};var rd=class extends W{};var sd=class extends W{return_token_type_ids=!0;constructor(e,r){super(e,r),Z.warn('WARNING: `XLMTokenizer` is not yet supported by Hugging Face\'s "fast" tokenizers library. Therefore, you may experience slightly inaccurate results.')}};var oe=class{static async from_pretrained(e,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main"}={}){let[i,l]=await Hb(e,{progress_callback:r,config:s,cache_dir:n,local_files_only:o,revision:a}),c=l.tokenizer_class?.replace(/Fast$/,"")??"PreTrainedTokenizer",p=Qb[c];return p||(Z.warn(`Unknown tokenizer class "${c}", attempting to construct from base class.`),p=W),new p(i,l)}};var as="https://github.com/huggingface/transformers.js/issues/new/choose";var Ml="preprocessor_config.json",Mr=Ml,b2="processor_config.json",v2="chat_template.jinja";var re=class extends st{static classes=["image_processor_class","tokenizer_class","feature_extractor_class"];static uses_processor_config=!1;static uses_chat_template_file=!1;constructor(e,r,s){super(),this.config=e,this.components=r,this.chat_template=s}get image_processor(){return this.components.image_processor}get tokenizer(){return this.components.tokenizer}get feature_extractor(){return this.components.feature_extractor}apply_chat_template(e,r={}){if(!this.tokenizer)throw new Error("Unable to apply chat template without a tokenizer.");return this.tokenizer.apply_chat_template(e,{tokenize:!1,chat_template:this.chat_template??void 0,...r})}batch_decode(...e){if(!this.tokenizer)throw new Error("Unable to decode without a tokenizer.");return this.tokenizer.batch_decode(...e)}decode(...e){if(!this.tokenizer)throw new Error("Unable to decode without a tokenizer.");return this.tokenizer.decode(...e)}async _call(e,...r){for(let s of[this.image_processor,this.feature_extractor,this.tokenizer])if(s)return s(e,...r);throw new Error("No image processor, feature extractor, or tokenizer found.")}static async from_pretrained(e,r={}){let[s,n,o]=await Promise.all([this.uses_processor_config?ft(e,b2,!0,r):{},Promise.all(this.classes.filter(a=>a in this).map(async a=>{let i=await this[a].from_pretrained(e,r);return[a.replace(/_class$/,""),i]})).then(Object.fromEntries),this.uses_chat_template_file?W0(e,v2,!0,r):null]);return new this(s,n,o)}};var Bf={};Os(Bf,{ChatterboxProcessor:()=>bd,Florence2Processor:()=>_f,Gemma3nProcessor:()=>mf,GraniteSpeechProcessor:()=>hf,GroundingDinoProcessor:()=>gf,Idefics3Processor:()=>Gl,JinaCLIPProcessor:()=>xf,Lfm2VlProcessor:()=>yf,LlavaProcessor:()=>bf,MgpstrProcessor:()=>vf,MoonshineProcessor:()=>kf,OwlViTProcessor:()=>Ef,PaliGemmaProcessor:()=>Af,Phi3VProcessor:()=>Mf,PixtralProcessor:()=>Sf,Processor:()=>re,PyAnnoteProcessor:()=>Tf,Qwen2VLProcessor:()=>eo,Qwen2_5_VLProcessor:()=>to,Qwen3VLProcessor:()=>Of,Sam2Processor:()=>ql,Sam2VideoProcessor:()=>If,SamProcessor:()=>ro,SmolVLMProcessor:()=>Gl,SpeechT5Processor:()=>Cf,UltravoxProcessor:()=>Lf,VLChatProcessor:()=>wf,VoxtralProcessor:()=>zf,VoxtralRealtimeProcessor:()=>$f,Wav2Vec2Processor:()=>Rf,Wav2Vec2ProcessorWithLM:()=>Df,WhisperProcessor:()=>Ff});var Ae=class extends st{constructor(e){super(),this.config=e}static async from_pretrained(e,r={}){let s=await ft(e,Ml,!0,r);return new this(s)}};function Fe(t,e){if(!(t instanceof Float32Array||t instanceof Float64Array))throw new Error(`${e} expects input to be a Float32Array or a Float64Array, but got ${t?.constructor?.name??typeof t} instead. If using the feature extractor directly, remember to use \`read_audio(url, sampling_rate)\` to obtain the raw audio data of the file/url.`)}var Sl={};Os(Sl,{ASTFeatureExtractor:()=>id,ChatterboxFeatureExtractor:()=>ld,ClapFeatureExtractor:()=>cd,DacFeatureExtractor:()=>Xn,EncodecFeatureExtractor:()=>Hn,FeatureExtractor:()=>Ae,Gemma3nAudioFeatureExtractor:()=>ud,GraniteSpeechFeatureExtractor:()=>pd,MoonshineFeatureExtractor:()=>dd,ParakeetFeatureExtractor:()=>fd,PyAnnoteFeatureExtractor:()=>Kn,SeamlessM4TFeatureExtractor:()=>_d,SnacFeatureExtractor:()=>md,SpeechT5FeatureExtractor:()=>hd,VoxtralRealtimeFeatureExtractor:()=>xd,Wav2Vec2FeatureExtractor:()=>gd,WeSpeakerFeatureExtractor:()=>wd,WhisperFeatureExtractor:()=>yd});var k2=vr(require("fs"),1),E2=require("stream"),A2=require("stream/promises");async function nd(t,e){if(ie.IS_BROWSER_ENV){if(ie.IS_WEBWORKER_ENV)throw new Error("Unable to save a file from a Web Worker.");let r=URL.createObjectURL(e),s=document.createElement("a");s.href=r,s.download=t,s.click(),s.remove(),URL.revokeObjectURL(r)}else if(ie.IS_FS_AVAILABLE){let r=e.stream(),s=E2.Readable.fromWeb(r),n=k2.default.createWriteStream(t);await(0,A2.pipeline)(s,n)}else throw new Error("Unable to save because filesystem is disabled in this environment.")}async function ad(t,e){if(typeof AudioContext>"u")throw Error("Unable to load audio from path/URL since `AudioContext` is not available in your environment. Instead, audio data should be passed directly to the pipeline/processor. For more information and some example code, see https://huggingface.co/docs/transformers.js/guides/node-audio-processing.");let r=await(await Qr(t)).arrayBuffer(),s=new AudioContext({sampleRate:e});typeof e>"u"&&Z.warn(`No sampling rate provided, using default of ${s.sampleRate}Hz.`);let n=await s.decodeAudioData(r),o;if(n.numberOfChannels===2){let a=Math.sqrt(2),i=n.getChannelData(0),l=n.getChannelData(1);o=new Float32Array(i.length);for(let c=0;c<n.length;++c)o[c]=a*(i[c]+l[c])/2}else o=n.getChannelData(0);return o}function T2(t,e){if(t<1)return new Float64Array;if(t===1)return new Float64Array([1]);let r=1-e,s=2*Math.PI/(t-1),n=new Float64Array(t);for(let o=0;o<t;++o)n[o]=e-r*Math.cos(o*s);return n}function M2(t){return T2(t,.5)}function nz(t){return T2(t,.54)}var oz={htk:t=>2595*Math.log10(1+t/700),kaldi:t=>1127*Math.log(1+t/700),slaney:(t,e=1e3,r=15,s=27/Math.log(6.4))=>t>=e?r+Math.log(t/e)*s:3*t/200};function Yb(t,e="htk"){let r=oz[e];if(!r)throw new Error('mel_scale should be one of "htk", "slaney" or "kaldi".');return typeof t=="number"?r(t):t.map(s=>r(s))}var az={htk:t=>700*(10**(t/2595)-1),kaldi:t=>700*(Math.exp(t/1127)-1),slaney:(t,e=1e3,r=15,s=Math.log(6.4)/27)=>t>=r?e*Math.exp(s*(t-r)):200*t/3};function iz(t,e="htk"){let r=az[e];if(!r)throw new Error('mel_scale should be one of "htk", "slaney" or "kaldi".');return typeof t=="number"?r(t):t.map(s=>r(s))}function lz(t,e){let r=Float64Array.from({length:e.length-1},(a,i)=>e[i+1]-e[i]),s=Array.from({length:t.length},()=>new Array(e.length));for(let a=0;a<t.length;++a){let i=s[a];for(let l=0;l<e.length;++l)i[l]=e[l]-t[a]}let n=e.length-2,o=Array.from({length:n},()=>new Array(t.length));for(let a=0;a<t.length;++a){let i=s[a];for(let l=0;l<n;++l){let c=-i[l]/r[l],p=i[l+2]/r[l+1];o[l][a]=Math.max(0,Math.min(c,p))}}return o}function S2(t,e,r){let s=(e-t)/(r-1);return Float64Array.from({length:r},(n,o)=>t+s*o)}function ct(t,e,r,s,n,o=null,a="htk",i=!1){if(o!==null&&o!=="slaney")throw new Error('norm must be one of null or "slaney"');if(t<2)throw new Error(`Require num_frequency_bins: ${t} >= 2`);if(r>s)throw new Error(`Require min_frequency: ${r} <= max_frequency: ${s}`);let l=Yb(r,a),c=Yb(s,a),p=S2(l,c,e+2),f=iz(p,a),_;if(i){let w=n/((t-1)*2);_=Yb(Float64Array.from({length:t},(x,k)=>k*w),a),f=p}else _=S2(0,Math.floor(n/2),t);let m=lz(_,f);if(o!==null&&o==="slaney")for(let w=0;w<e;++w){let x=m[w],k=2/(f[w+2]-f[w]);for(let E=0;E<t;++E)x[E]*=k}return m}function cz(t,e,r){let s=new t.constructor(t.length+e+r),n=t.length-1;for(let o=0;o<t.length;++o)s[e+o]=t[o];for(let o=1;o<=e;++o)s[e-o]=t[Cn(o,n)];for(let o=1;o<=r;++o)s[n+e+o]=t[Cn(n-o,n)];return s}function O2(t,e,r,s,n){if(r<=0)throw new Error("reference must be greater than zero");if(s<=0)throw new Error("min_value must be greater than zero");r=Math.max(s,r);let o=Math.log10(r);for(let a=0;a<t.length;++a)t[a]=e*Math.log10(Math.max(s,t[a])-o);if(n!==null){if(n<=0)throw new Error("db_range must be greater than zero");let a=Pe(t)[0]-n;for(let i=0;i<t.length;++i)t[i]=Math.max(t[i],a)}return t}function uz(t,e=1,r=1e-5,s=null){return O2(t,20,e,r,s)}function pz(t,e=1,r=1e-10,s=null){return O2(t,10,e,r,s)}async function mt(t,e,r,s,{fft_length:n=null,power:o=1,center:a=!0,pad_mode:i="reflect",onesided:l=!0,preemphasis:c=null,preemphasis_htk_flavor:p=!0,mel_filters:f=null,mel_floor:_=1e-10,log_mel:m=null,max_log_mel:w=null,reference:x=1,min_value:k=1e-10,db_range:E=null,remove_dc_offset:A=null,min_num_frames:T=null,max_num_frames:S=null,do_pad:P=!0,transpose:O=!1,mel_offset:v=0}={}){let j=e.length;if(n===null&&(n=r),r>n)throw Error(`frame_length (${r}) may not be larger than fft_length (${n})`);if(j!==r)throw new Error(`Length of the window (${j}) must equal frame_length (${r})`);if(s<=0)throw new Error("hop_length must be greater than zero");if(o===null&&f!==null)throw new Error("You have provided `mel_filters` but `power` is `None`. Mel spectrogram computation is not yet supported for complex-valued spectrogram. Specify `power` to fix this issue.");if(!p)throw new Error("`preemphasis_htk_flavor=false` is not currently supported.");if(a)switch(i){case"reflect":{let R=Math.floor((n-1)/2)+1;t=cz(t,R,R);break}case"constant":{let R=Math.floor(n/2),J=new t.constructor(t.length+2*R);J.set(t,R),t=J;break}default:throw new Error(`pad_mode="${i}" not implemented yet.`)}let H=Math.floor(1+Math.floor((t.length-r)/s));T!==null&&H<T&&(H=T);let B=l?Math.floor(n/2)+1:n,V=H,q=H;S!==null&&(S>H?P&&(q=S):q=V=S);let Q=new Wu(n),F=new Float64Array(n),C=new Float64Array(Q.outputBufferSize),te=new Float32Array(B*q);for(let R=0;R<V;++R){let J=R*s,Ce=Math.min(t.length-J,r);Ce!==r&&F.fill(0,0,r);for(let ae=0;ae<Ce;++ae)F[ae]=t[J+ae];if(A){let ae=0;for(let Je=0;Je<Ce;++Je)ae+=F[Je];let Ue=ae/Ce;for(let Je=0;Je<Ce;++Je)F[Je]-=Ue}if(c!==null){for(let ae=Ce-1;ae>=1;--ae)F[ae]-=c*F[ae-1];F[0]*=1-c}for(let ae=0;ae<e.length;++ae)F[ae]*=e[ae];Q.realTransform(C,F);for(let ae=0;ae<B;++ae){let Ue=ae<<1;te[ae*q+R]=C[Ue]**2+C[Ue+1]**2}}if(o!==null&&o!==2){let R=o/2;for(let J=0;J<te.length;++J)te[J]**=R}let le=f.length,L=await jb(new $("float32",f.flat(),[le,B]),new $("float32",te,[B,q]));O&&(L=L.transpose(1,0));let z=L.data;for(let R=0;R<z.length;++R)z[R]=v+Math.max(_,z[R]);if(o!==null&&m!==null){let R=Math.min(z.length,V*le);switch(m){case"log":for(let J=0;J<R;++J)z[J]=Math.log(z[J]);break;case"log10":for(let J=0;J<R;++J)z[J]=Math.log10(z[J]);break;case"log10_max_norm":{for(let ae=0;ae<R;++ae)z[ae]=Math.log10(z[ae]);let Ce=(w??Pe(z)[0])-8;for(let ae=0;ae<R;++ae)z[ae]=(Math.max(z[ae],Ce)+4)/4;break}case"dB":if(o===1)uz(z,x,k,E);else if(o===2)pz(z,x,k,E);else throw new Error(`Cannot use log_mel option '${m}' with power ${o}`);break;default:throw new Error(`log_mel must be one of null, 'log', 'log10', 'log10_max_norm', or 'dB'. Got '${m}'`)}}return L}function ht(t,e,{periodic:r=!0,frame_length:s=null,center:n=!0}={}){let o=r?t+1:t,a;switch(e){case"boxcar":a=new Float64Array(o).fill(1);break;case"hann":case"hann_window":a=M2(o);break;case"hamming":a=nz(o);break;case"povey":a=M2(o).map(i=>Math.pow(i,.85));break;default:throw new Error(`Unknown window type ${e}.`)}if(r&&(a=a.subarray(0,t)),s===null)return a;if(t>s)throw new Error(`Length of the window (${t}) may not be larger than frame_length (${s})`);return a}function dz(t,e){let r=t.reduce((o,a)=>o+a.length,0),s=new ArrayBuffer(44),n=new DataView(s);return od(n,0,"RIFF"),n.setUint32(4,36+r*4,!0),od(n,8,"WAVE"),od(n,12,"fmt "),n.setUint32(16,16,!0),n.setUint16(20,3,!0),n.setUint16(22,1,!0),n.setUint32(24,e,!0),n.setUint32(28,e*4,!0),n.setUint16(32,4,!0),n.setUint16(34,32,!0),od(n,36,"data"),n.setUint32(40,r*4,!0),new Blob([s,...t.map(o=>o.buffer)],{type:"audio/wav"})}function od(t,e,r){for(let s=0;s<r.length;++s)t.setUint8(e+s,r.charCodeAt(s))}var Vn=class{constructor(e,r){this.audio=e,this.sampling_rate=r}get data(){if(Array.isArray(this.audio)){if(this.audio.length===0)return new Float32Array(0);if(this.audio.length===1)return this.audio[0];let e=this.audio.reduce((n,o)=>n+o.length,0),r=new Float32Array(e),s=0;for(let n of this.audio)r.set(n,s),s+=n.length;return r}else return this.audio}toBlob(){let e=this.audio;return e instanceof Float32Array&&(e=[e]),dz(e,this.sampling_rate)}async save(e){return nd(e,this.toBlob())}};var id=class extends Ae{constructor(e){super(e);let r=this.config.sampling_rate,s=ct(257,this.config.num_mel_bins,20,Math.floor(r/2),r,null,"kaldi",!0);this.mel_filters=s,this.window=ht(400,"hann",{periodic:!1}),this.mean=this.config.mean,this.std=this.config.std}async _extract_fbank_features(e,r){return mt(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:"log",mel_floor:1192092955078125e-22,remove_dc_offset:!0,max_num_frames:r,transpose:!0})}async _call(e){Fe(e,"ASTFeatureExtractor");let r=await this._extract_fbank_features(e,this.config.max_length);if(this.config.do_normalize){let s=this.std*2,n=r.data;for(let o=0;o<n.length;++o)n[o]=(n[o]-this.mean)/s}return{input_values:r.unsqueeze_(0)}}};var Hn=class extends Ae{async _call(e){Fe(e,"EncodecFeatureExtractor"),e instanceof Float64Array&&(e=new Float32Array(e));let r=this.config.feature_size;if(e.length%r!==0)throw new Error(`The length of the audio data must be a multiple of the number of channels (${r}).`);let s=[1,r,e.length/r];return{input_values:new $("float32",e,s)}}};var ld=class extends Ae{async _call(e){Fe(e,"ChatterboxFeatureExtractor"),e instanceof Float64Array&&(e=new Float32Array(e));let r=[1,e.length];return{input_values:new $("float32",e,r)}}};var cd=class extends Ae{constructor(e){super(e),this.mel_filters=ct(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,null,"htk"),this.mel_filters_slaney=ct(this.config.nb_frequency_bins,this.config.feature_size,this.config.frequency_min,this.config.frequency_max,this.config.sampling_rate,"slaney","slaney"),this.window=ht(this.config.fft_window_size,"hann")}async _get_input_mel(e,r,s,n){let o,a=!1,i=e.length-r;if(i>0)if(s==="rand_trunc"){a=!0;let l=Math.floor(Xr.random()*(i+1));e=e.subarray(l,l+r),o=await this._extract_fbank_features(e,this.mel_filters_slaney,this.config.nb_max_samples)}else throw new Error(`Truncation strategy "${s}" not implemented`);else{if(i<0){let l=new Float64Array(r);if(l.set(e),n==="repeat")for(let c=e.length;c<r;c+=e.length)l.set(e.subarray(0,Math.min(e.length,r-c)),c);else if(n==="repeatpad")for(let c=e.length;c<-i;c+=e.length)l.set(e,c);e=l}if(s==="fusion")throw new Error(`Truncation strategy "${s}" not implemented`);o=await this._extract_fbank_features(e,this.mel_filters_slaney,this.config.nb_max_samples)}return o.unsqueeze_(0)}async _extract_fbank_features(e,r,s=null){return mt(e,this.window,this.config.fft_window_size,this.config.hop_length,{power:2,mel_filters:r,log_mel:"dB",max_num_frames:s,do_pad:!1,transpose:!0})}async _call(e,{max_length:r=null}={}){return Fe(e,"ClapFeatureExtractor"),{input_features:(await this._get_input_mel(e,r??this.config.nb_max_samples,this.config.truncation,this.config.padding)).unsqueeze_(0)}}};var Xn=class extends Hn{};var ud=class extends Ae{constructor(e){super(e);let{fft_length:r,feature_size:s,min_frequency:n,max_frequency:o,sampling_rate:a,frame_length:i}=this.config,l=ct(Math.floor(1+r/2),s,n,o,a,null,"htk",!1);this.mel_filters=l,this.window=ht(i,"hann")}async _extract_fbank_features(e,r){return mt(e,this.window,this.config.frame_length,this.config.hop_length,{fft_length:this.config.fft_length,center:!1,onesided:!0,preemphasis:this.config.preemphasis,preemphasis_htk_flavor:this.config.preemphasis_htk_flavor,mel_filters:this.mel_filters,log_mel:"log",mel_floor:this.config.mel_floor,remove_dc_offset:!1,transpose:!0})}async _call(e,{max_length:r=48e4,truncation:s=!0,padding:n=!0,pad_to_multiple_of:o=128}={}){if(Fe(e,"Gemma3nAudioFeatureExtractor"),s&&e.length>r&&(e=e.slice(0,r)),n&&e.length%o!==0){let l=o-e.length%o,c=new Float64Array(e.length+l);c.set(e),this.config.padding_value!==0&&c.fill(this.config.padding_value,e.length),e=c}let a=await this._extract_fbank_features(e,this.config.max_length),i=We([1,a.dims[0]],!0);return{input_features:a.unsqueeze_(0),input_features_mask:i}}};var pd=class extends Ae{constructor(e){super(e);let{n_fft:r,win_length:s,n_mels:n,sample_rate:o}=e.melspec_kwargs;this.mel_filters=ct(Math.floor(1+r/2),n,0,o/2,o,null,"htk");let a=ht(s,"hann");this.window=new Float64Array(r);let i=Math.floor((r-s)/2);this.window.set(a,i)}async _call(e){Fe(e,"GraniteSpeechFeatureExtractor");let{n_fft:r,hop_length:s,n_mels:n}=this.config.melspec_kwargs,o=1+Math.floor((e.length-1)/s),a=o-o%2;return{input_features:(await mt(e,this.window,r,s,{power:2,mel_filters:this.mel_filters,log_mel:"log10_max_norm",transpose:!0,max_num_frames:a,do_pad:!1})).view(-1,2*n).unsqueeze_(0)}}};var dd=class extends Ae{async _call(e){Fe(e,"MoonshineFeatureExtractor"),e instanceof Float64Array&&(e=new Float32Array(e));let r=[1,e.length];return{input_values:new $("float32",e,r)}}};var fz=1e-5,fd=class extends Ae{constructor(e){super(e),this.config.mel_filters??=ct(Math.floor(1+this.config.n_fft/2),this.config.feature_size,0,this.config.sampling_rate/2,this.config.sampling_rate,"slaney","slaney");let r=ht(this.config.win_length,"hann",{periodic:!1});this.window=new Float64Array(this.config.n_fft);let s=Math.floor((this.config.n_fft-this.config.win_length)/2);this.window.set(r,s)}async _extract_fbank_features(e){let r=this.config.preemphasis;e=new Float64Array(e);for(let n=e.length-1;n>=1;--n)e[n]-=r*e[n-1];return await mt(e,this.window,this.window.length,this.config.hop_length,{fft_length:this.config.n_fft,power:2,mel_filters:this.config.mel_filters,log_mel:"log",mel_floor:-1/0,pad_mode:"constant",center:!0,transpose:!0,mel_offset:2**-24})}async _call(e){Fe(e,"ParakeetFeatureExtractor");let r=await this._extract_fbank_features(e),s=Math.floor((e.length+Math.floor(this.config.n_fft/2)*2-this.config.n_fft)/this.config.hop_length),n=r.data;n.fill(0,s*r.dims[1]);let[o,a]=r.dims,i=new Float64Array(a),l=new Float64Array(a);for(let f=0;f<s;++f){let _=f*a;for(let m=0;m<a;++m){let w=n[_+m];i[m]+=w,l[m]+=w*w}}let c=s>1?s-1:1;for(let f=0;f<a;++f){let _=i[f]/s,m=(l[f]-s*_*_)/c,x=1/(Math.sqrt(m)+fz);for(let k=0;k<s;++k){let E=k*a+f;n[E]=(n[E]-_)*x}}let p=new BigInt64Array(o);return p.fill(1n,0,s),{input_features:r.unsqueeze_(0),attention_mask:new $("int64",p,[1,o])}}};var Kn=class extends Ae{async _call(e){Fe(e,"PyAnnoteFeatureExtractor"),e instanceof Float64Array&&(e=new Float32Array(e));let r=[1,1,e.length];return{input_values:new $("float32",e,r)}}samples_to_frames(e){return(e-this.config.offset)/this.config.step}post_process_speaker_diarization(e,r){let s=r/this.samples_to_frames(r)/this.config.sampling_rate,n=[];for(let o of e.tolist()){let a=[],i=-1;for(let l=0;l<o.length;++l){let c=Le(o[l]),[p,f]=Pe(c),[_,m]=[l,l+1];f!==i?(i=f,a.push({id:f,start:_,end:m,score:p})):(a.at(-1).end=m,a.at(-1).score+=p)}n.push(a.map(({id:l,start:c,end:p,score:f})=>({id:l,start:c*s,end:p*s,confidence:f/(p-c)})))}return n}};var _d=class extends Ae{constructor(e){super(e);let r=this.config.sampling_rate,s=ct(257,this.config.num_mel_bins,20,Math.floor(r/2),r,null,"kaldi",!0);this.mel_filters=s,this.window=ht(400,"povey",{periodic:!1})}async _extract_fbank_features(e,r){return e=e.map(s=>s*32768),mt(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:"log",mel_floor:1192092955078125e-22,remove_dc_offset:!0,max_num_frames:r,transpose:!0})}async _call(e,{padding:r=!0,pad_to_multiple_of:s=2,do_normalize_per_mel_bins:n=!0,return_attention_mask:o=!0}={}){Fe(e,"SeamlessM4TFeatureExtractor");let a=await this._extract_fbank_features(e,this.config.max_length);if(n){let[w,x]=a.dims,k=a.data;for(let E=0;E<x;++E){let A=0;for(let O=0;O<w;++O)A+=k[O*x+E];let T=A/w,S=0;for(let O=0;O<w;++O)S+=(k[O*x+E]-T)**2;S/=w-1;let P=Math.sqrt(S+1e-7);for(let O=0;O<w;++O){let v=O*x+E;k[v]=(k[v]-T)/P}}}let i;if(r){let[w,x]=a.dims,k=a.data,E=w%s;if(E>0){let A=new Float32Array(x*(w+E));A.set(k),A.fill(this.config.padding_value,k.length);let T=w+E;a=new $(a.type,A,[T,x]),o&&(i=new $("int64",new BigInt64Array(T),[1,T]),i.data.fill(1n,0,w))}}let[l,c]=a.dims,p=this.config.stride;if(l%p!==0)throw new Error(`The number of frames (${l}) must be a multiple of the stride (${p}).`);let _=a.view(1,Math.floor(l/p),c*p),m={input_features:_};if(o){let w=_.dims[1],x=new BigInt64Array(w);if(i){let k=i.data;for(let E=1,A=0;E<l;E+=p,++A)x[A]=k[E]}else x.fill(1n);m.attention_mask=new $("int64",x,[1,w])}return m}};var md=class extends Xn{};var hd=class extends Ae{};var gd=class extends Ae{_zero_mean_unit_var_norm(e){let s=e.reduce((o,a)=>o+a,0)/e.length,n=e.reduce((o,a)=>o+(a-s)**2,0)/e.length;return e.map(o=>(o-s)/Math.sqrt(n+1e-7))}async _call(e){Fe(e,"Wav2Vec2FeatureExtractor"),e instanceof Float64Array&&(e=new Float32Array(e));let r=e;this.config.do_normalize&&(r=this._zero_mean_unit_var_norm(r));let s=[1,r.length];return{input_values:new $("float32",r,s),attention_mask:new $("int64",new BigInt64Array(r.length).fill(1n),s)}}};var wd=class extends Ae{constructor(e){super(e);let r=this.config.sampling_rate,s=ct(257,this.config.num_mel_bins,20,Math.floor(r/2),r,null,"kaldi",!0);this.mel_filters=s,this.window=ht(400,"hamming",{periodic:!1}),this.min_num_frames=this.config.min_num_frames}async _extract_fbank_features(e){return e=e.map(r=>r*32768),mt(e,this.window,400,160,{fft_length:512,power:2,center:!1,preemphasis:.97,mel_filters:this.mel_filters,log_mel:"log",mel_floor:1192092955078125e-22,remove_dc_offset:!0,transpose:!0,min_num_frames:this.min_num_frames})}async _call(e){Fe(e,"WeSpeakerFeatureExtractor");let r=(await this._extract_fbank_features(e)).unsqueeze_(0);if(this.config.fbank_centering_span===null){let s=r.mean(1).data,n=r.data,[o,a,i]=r.dims;for(let l=0;l<o;++l){let c=l*a*i,p=l*i;for(let f=0;f<a;++f){let _=c+f*i;for(let m=0;m<i;++m)n[_+m]-=s[p+m]}}}return{input_features:r}}};var xd=class extends Ae{constructor(e){super(e),this.config.mel_filters??=ct(Math.floor(1+this.config.n_fft/2),this.config.feature_size,0,8e3,this.config.sampling_rate,"slaney","slaney"),this.window=ht(this.config.n_fft,"hann")}async _extract_fbank_features(e,{center:r=!0}={}){let{n_fft:s,hop_length:n,mel_filters:o,global_log_mel_max:a}=this.config,i=Math.floor(r?e.length/n:(e.length-s)/n);return await mt(e,this.window,s,n,{power:2,mel_filters:o,log_mel:"log10_max_norm",max_log_mel:a,center:r,max_num_frames:i,do_pad:!1})}async _call(e,{center:r=!0}={}){return Fe(e,"VoxtralRealtimeFeatureExtractor"),{input_features:(await this._extract_fbank_features(e,{center:r})).unsqueeze_(0)}}};var yd=class extends Ae{constructor(e){super(e),this.config.mel_filters??=ct(Math.floor(1+this.config.n_fft/2),this.config.feature_size,0,8e3,this.config.sampling_rate,"slaney","slaney"),this.window=ht(this.config.n_fft,"hann")}async _extract_fbank_features(e){return await mt(e,this.window,this.config.n_fft,this.config.hop_length,{power:2,mel_filters:this.config.mel_filters,log_mel:"log10_max_norm",max_num_frames:Math.min(Math.floor(e.length/this.config.hop_length),this.config.nb_max_frames)})}async _call(e,{max_length:r=null}={}){Fe(e,"WhisperFeatureExtractor");let s,n=r??this.config.n_samples;return e.length>n?(e.length>this.config.n_samples&&Z.warn("Attempting to extract features for audio longer than 30 seconds. If using a pipeline to extract transcript from a long audio clip, remember to specify `chunk_length_s` and/or `stride_length_s`."),s=e.slice(0,n)):(s=new Float32Array(n),s.set(e)),{input_features:(await this._extract_fbank_features(s)).unsqueeze_(0)}}};var Ve=class{static async from_pretrained(e,r={}){let s=await ft(e,Ml,!0,r),n=s.feature_extractor_type,o=Sl[n];if(!o)throw new Error(`Unknown feature_extractor_type: '${n}'. Please report this at ${as}.`);return new o(s)}};var bd=class extends re{static tokenizer_class=oe;static feature_extractor_class=Ve;async _call(e,r=null){let s=this.tokenizer(e),n=r?await this.feature_extractor(r):{};return{...s,...n}}};var vd=vr(require("sharp"),1);var Ws,I2,is;if(ie.IS_WEB_ENV)Ws=(t,e)=>{if(!self.OffscreenCanvas)throw new Error("OffscreenCanvas not supported by this environment.");return new self.OffscreenCanvas(t,e)},is=self.createImageBitmap,I2=self.ImageData;else if(vd.default)is=async t=>{let r=(await t.metadata()).channels,{data:s,info:n}=await t.rotate().raw().toBuffer({resolveWithObject:!0}),o=new Qe(new Uint8ClampedArray(s),n.width,n.height,n.channels);return r!==void 0&&r!==n.channels&&o.convert(r),o};else throw new Error("Unable to load image processing library.");var _z={0:"nearest",1:"lanczos",2:"bilinear",3:"bicubic",4:"box",5:"hamming"},mz=new Map([["png","image/png"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["gif","image/gif"]]),Qe=class t{constructor(e,r,s,n){this.data=e,this.width=r,this.height=s,this.channels=n}get size(){return[this.width,this.height]}static async read(e){if(e instanceof t)return e;if(typeof e=="string"||e instanceof URL)return await this.fromURL(e);if(e instanceof Blob)return await this.fromBlob(e);if(typeof HTMLCanvasElement<"u"&&e instanceof HTMLCanvasElement||typeof OffscreenCanvas<"u"&&e instanceof OffscreenCanvas)return this.fromCanvas(e);throw new Error(`Unsupported input type: ${typeof e}`)}static fromCanvas(e){if(!ie.IS_WEB_ENV)throw new Error("fromCanvas() is only supported in browser environments.");let s=e.getContext("2d").getImageData(0,0,e.width,e.height).data;return new t(s,e.width,e.height,4)}static async fromURL(e){let r=await Qr(e);if(r.status!==200)throw new Error(`Unable to read image from "${e}" (${r.status} ${r.statusText})`);let s=await r.blob();return this.fromBlob(s)}static async fromBlob(e){if(ie.IS_WEB_ENV){let r=await is(e),s=Ws(r.width,r.height).getContext("2d");return s.drawImage(r,0,0),new this(s.getImageData(0,0,r.width,r.height).data,r.width,r.height,4)}else{let r=(0,vd.default)(await e.arrayBuffer());return await is(r)}}static fromTensor(e,r="CHW"){if(e.dims.length!==3)throw new Error(`Tensor should have 3 dimensions, but has ${e.dims.length} dimensions.`);if(r==="CHW")e=e.transpose(1,2,0);else if(r!=="HWC")throw new Error(`Unsupported channel format: ${r}`);if(!(e.data instanceof Uint8ClampedArray||e.data instanceof Uint8Array))throw new Error(`Unsupported tensor type: ${e.type}`);switch(e.dims[2]){case 1:case 2:case 3:case 4:return new t(e.data,e.dims[1],e.dims[0],e.dims[2]);default:throw new Error(`Unsupported number of channels: ${e.dims[2]}`)}}grayscale(){if(this.channels===1)return this;let e=new Uint8ClampedArray(this.width*this.height*1);switch(this.channels){case 3:case 4:for(let r=0,s=0;r<this.data.length;r+=this.channels){let n=this.data[r],o=this.data[r+1],a=this.data[r+2];e[s++]=Math.round(.2989*n+.587*o+.114*a)}break;default:throw new Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this._update(e,this.width,this.height,1)}rgb(){if(this.channels===3)return this;let e=new Uint8ClampedArray(this.width*this.height*3);switch(this.channels){case 1:for(let r=0,s=0;r<this.data.length;++r)e[s++]=this.data[r],e[s++]=this.data[r],e[s++]=this.data[r];break;case 4:for(let r=0,s=0;r<this.data.length;r+=4)e[s++]=this.data[r],e[s++]=this.data[r+1],e[s++]=this.data[r+2];break;default:throw new Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this._update(e,this.width,this.height,3)}rgba(){if(this.channels===4)return this;let e=new Uint8ClampedArray(this.width*this.height*4);switch(this.channels){case 1:for(let r=0,s=0;r<this.data.length;++r)e[s++]=this.data[r],e[s++]=this.data[r],e[s++]=this.data[r],e[s++]=255;break;case 3:for(let r=0,s=0;r<this.data.length;r+=3)e[s++]=this.data[r],e[s++]=this.data[r+1],e[s++]=this.data[r+2],e[s++]=255;break;default:throw new Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this._update(e,this.width,this.height,4)}putAlpha(e){if(e.width!==this.width||e.height!==this.height)throw new Error(`Expected mask size to be ${this.width}x${this.height}, but got ${e.width}x${e.height}`);if(e.channels!==1)throw new Error(`Expected mask to have 1 channel, but got ${e.channels}`);let r=this.data,s=e.data,n=this.width*this.height;if(this.channels===3){let o=new Uint8ClampedArray(n*4);for(let a=0,i=0,l=0;a<n;++a)o[l++]=r[i++],o[l++]=r[i++],o[l++]=r[i++],o[l++]=s[a];return this._update(o,this.width,this.height,4)}else if(this.channels===4){for(let o=0;o<n;++o)r[4*o+3]=s[o];return this}throw new Error(`Expected image to have 3 or 4 channels, but got ${this.channels}`)}async resize(e,r,{resample:s=2}={}){if(this.width===e&&this.height===r)return this;let n=_z[s]??s,o=z0(e),a=z0(r);if(o&&a)return this;if(o?e=r/this.height*this.width:a&&(r=e/this.width*this.height),ie.IS_WEB_ENV){let i=this.channels,l=this.toCanvas(),c=Ws(e,r).getContext("2d");return c.drawImage(l,0,0,e,r),new t(c.getImageData(0,0,e,r).data,e,r,4).convert(i)}else{let i=this.toSharp();switch(n){case"box":case"hamming":(n==="box"||n==="hamming")&&(Z.warn(`Resampling method ${n} is not yet supported. Using bilinear instead.`),n="bilinear");case"nearest":case"bilinear":case"bicubic":i=i.affine([e/this.width,0,0,r/this.height],{interpolator:n});break;case"lanczos":i=i.resize({width:e,height:r,fit:"fill",kernel:"lanczos3"});break;default:throw new Error(`Resampling method ${n} is not supported.`)}return await is(i)}}async pad([e,r,s,n]){if(e=Math.max(e,0),r=Math.max(r,0),s=Math.max(s,0),n=Math.max(n,0),e===0&&r===0&&s===0&&n===0)return this;if(ie.IS_WEB_ENV){let o=this.channels,a=this.toCanvas(),i=this.width+e+r,l=this.height+s+n,c=Ws(i,l).getContext("2d");return c.drawImage(a,0,0,this.width,this.height,e,s,this.width,this.height),new t(c.getImageData(0,0,i,l).data,i,l,4).convert(o)}else{let o=this.toSharp().extend({left:e,right:r,top:s,bottom:n});return await is(o)}}async crop([e,r,s,n]){if(e=Math.max(e,0),r=Math.max(r,0),s=Math.min(s,this.width-1),n=Math.min(n,this.height-1),e===0&&r===0&&s===this.width-1&&n===this.height-1)return this;let o=s-e+1,a=n-r+1;if(ie.IS_WEB_ENV){let i=this.channels,l=this.toCanvas(),c=Ws(o,a).getContext("2d");return c.drawImage(l,e,r,o,a,0,0,o,a),new t(c.getImageData(0,0,o,a).data,o,a,4).convert(i)}else{let i=this.toSharp().extract({left:e,top:r,width:o,height:a});return await is(i)}}async center_crop(e,r){if(this.width===e&&this.height===r)return this;let s=(this.width-e)/2,n=(this.height-r)/2;if(ie.IS_WEB_ENV){let o=this.channels,a=this.toCanvas(),i=Ws(e,r).getContext("2d"),l=0,c=0,p=0,f=0;return s>=0?l=s:p=-s,n>=0?c=n:f=-n,i.drawImage(a,l,c,e,r,p,f,e,r),new t(i.getImageData(0,0,e,r).data,e,r,4).convert(o)}else{let o=this.toSharp();if(s>=0&&n>=0)o=o.extract({left:Math.floor(s),top:Math.floor(n),width:e,height:r});else if(s<=0&&n<=0){let a=Math.floor(-n),i=Math.floor(-s);o=o.extend({top:a,left:i,right:e-this.width-i,bottom:r-this.height-a})}else{let a=[0,0],i=0;n<0?(a[0]=Math.floor(-n),a[1]=r-this.height-a[0]):i=Math.floor(n);let l=[0,0],c=0;s<0?(l[0]=Math.floor(-s),l[1]=e-this.width-l[0]):c=Math.floor(s),o=o.extend({top:a[0],bottom:a[1],left:l[0],right:l[1]}).extract({left:c,top:i,width:e,height:r})}return await is(o)}}async toBlob(e="image/png",r=1){if(!ie.IS_WEB_ENV)throw new Error("toBlob() is only supported in browser environments.");return await this.toCanvas().convertToBlob({type:e,quality:r})}toTensor(e="CHW"){let r=new $("uint8",new Uint8Array(this.data),[this.height,this.width,this.channels]);if(e!=="HWC")if(e==="CHW")r=r.permute(2,0,1);else throw new Error(`Unsupported channel format: ${e}`);return r}toCanvas(){if(!ie.IS_WEB_ENV)throw new Error("toCanvas() is only supported in browser environments.");let e=this.clone().rgba(),r=Ws(e.width,e.height),s=new I2(e.data,e.width,e.height);return r.getContext("2d").putImageData(s,0,0),r}split(){let{data:e,width:r,height:s,channels:n}=this,o=e.constructor,a=e.length/n,i=Array.from({length:n},()=>new o(a));for(let l=0;l<a;++l){let c=n*l;for(let p=0;p<n;++p)i[p][l]=e[c+p]}return i.map(l=>new t(l,r,s,1))}_update(e,r,s,n=null){return this.data=e,this.width=r,this.height=s,n!==null&&(this.channels=n),this}clone(){return new t(this.data.slice(),this.width,this.height,this.channels)}convert(e){if(this.channels===e)return this;switch(e){case 1:this.grayscale();break;case 3:this.rgb();break;case 4:this.rgba();break;default:throw new Error(`Conversion failed due to unsupported number of channels: ${this.channels}`)}return this}async save(e){if(ie.IS_WEB_ENV){if(ie.IS_WEBWORKER_ENV)throw new Error("Unable to save an image from a Web Worker.");let r=e.split(".").pop().toLowerCase(),s=mz.get(r)??"image/png",n=await this.toBlob(s);return nd(e,n)}else if(ie.IS_FS_AVAILABLE)await this.toSharp().toFile(e);else throw new Error("Unable to save the image because filesystem is disabled in this environment.")}toSharp(){if(ie.IS_WEB_ENV)throw new Error("toSharp() is only supported in server-side environments.");return(0,vd.default)(this.data,{raw:{width:this.width,height:this.height,channels:this.channels}})}},C2=Qe.read.bind(Qe);function L2(t,e,r=0,s=null){let n=t/e,o=zE(n)*e;return s!==null&&o>s&&(o=Math.floor(n)*e),o<r&&(o=Math.ceil(n)*e),o}function Jb([t,e],r){return[Math.max(Math.floor(t/r),1)*r,Math.max(Math.floor(e/r),1)*r]}function Zb([t,e,r,s]){return[t-r/2,e-s/2,t+r/2,e+s/2]}function ls(t,e=.5,r=null,s=!1){let n=t.logits,o=t.pred_boxes,[a,i,l]=n.dims;if(r!==null&&r.length!==a)throw Error("Make sure that you pass in as many target sizes as the batch dimension of the logits");let c=[];for(let p=0;p<a;++p){let f=r!==null?r[p]:null,_={boxes:[],classes:[],scores:[]},m=n[p],w=o[p];for(let x=0;x<i;++x){let k=m[x],E=[],A;if(s){A=k.sigmoid().data;for(let T=0;T<A.length;++T)A[T]>e&&E.push(T)}else{let T=Pe(k.data)[1];if(T===l-1||(A=Le(k.data),A[T]<e))continue;E.push(T)}for(let T of E){let S=w[x].data;S=Zb(S),f!==null&&(S=S.map((P,O)=>P*f[(O+1)%2])),_.boxes.push(S),_.classes.push(T),_.scores.push(A[T])}}c.push(_)}return c}function kd(t,e=null){let r=t.logits,s=r.dims[0];if(e!==null&&e.length!==s)throw Error("Make sure that you pass in as many target sizes as the batch dimension of the logits");let n=[];for(let o=0;o<s;++o){let a=e!==null?e[o]:null,i=r[o];a!==null&&(i=pp(i,a,"bilinear",!1));let[l,c]=a??i.dims.slice(-2),p=new $("int32",new Int32Array(l*c),[l,c]),f=i[0].data,_=p.data;for(let x=1;x<i.dims[0];++x){let k=i[x].data;for(let E=0;E<k.length;++E)k[E]>f[E]&&(f[E]=k[E],_[E]=x)}let m=new Array(i.dims[0]);for(let x=0;x<_.length;++x){let k=_[x];m[k]=k}let w=m.filter(x=>x!==void 0);n.push({segmentation:p,labels:w})}return n}function hz(t,e,r,s){let n=[],o=[],a=[];for(let i=0;i<t.dims[0];++i){let l=t[i],c=e[i],p=Pe(l.data)[1];if(p===s)continue;let _=Le(l.data)[p];_>r&&(n.push(c),o.push(_),a.push(p))}return[n,o,a]}function gz(t,e,r,s=.5,n=.8){let o=[],a=0,i=0,l=e[r].data;for(let p=0;p<t.length;++p)t[p]===r&&(o.push(p),++a),l[p]>=s&&++i;let c=a>0&&i>0;return c&&(c=a/i>n),[c,o]}function wz(t,e,r,s,n,o=null,a=null){let[i,l]=a??t[0].dims,c=new $("int32",new Int32Array(i*l),[i,l]),p=[];if(a!==null)for(let x=0;x<t.length;++x)t[x]=pp(t[x],a,"bilinear",!1);let f=new Int32Array(t[0].data.length),_=new Float32Array(t[0].data.length);for(let x=0;x<t.length;++x){let k=e[x],E=t[x].data;for(let A=0;A<E.length;++A)E[A]*=k,E[A]>_[A]&&(f[A]=x,_[A]=E[A])}let m=0,w=c.data;for(let x=0;x<r.length;++x){let k=r[x],[E,A]=gz(f,t,x,s,n);if(E){++m;for(let T of A)w[T]=m;p.push({id:m,label_id:k,score:e[x]})}}return[c,p]}function Ed(t,e,r=28,s=3136,n=784*1280){if(t<r||e<r)throw new Error(`height:${t} or width:${e} must be larger than factor:${r}`);if(Math.max(t,e)/Math.min(t,e)>200)throw new Error(`absolute aspect ratio must be smaller than 200, got ${Math.max(t,e)/Math.min(t,e)}`);let o=Math.round(t/r)*r,a=Math.round(e/r)*r;if(o*a>n){let i=Math.sqrt(t*e/n);o=Math.floor(t/i/r)*r,a=Math.floor(e/i/r)*r}else if(o*a<s){let i=Math.sqrt(s/(t*e));o=Math.ceil(t*i/r)*r,a=Math.ceil(e*i/r)*r}return[o,a]}function Ad(t,e=.5,r=.5,s=.8,n=null,o=null){n===null&&(Z.warn("`label_ids_to_fuse` unset. No instance will be fused."),n=new Set);let a=t.class_queries_logits??t.logits,l=(t.masks_queries_logits??t.pred_masks).sigmoid(),[c,p,f]=a.dims;if(f-=1,o!==null&&o.length!==c)throw Error("Make sure that you pass in as many target sizes as the batch dimension of the logits");let _=[];for(let m=0;m<c;++m){let w=o!==null?o[m]:null,x=a[m],k=l[m],[E,A,T]=hz(x,k,e,f);if(T.length===0){let[O,v]=w??k.dims.slice(-2),j=new $("int32",new Int32Array(O*v).fill(-1),[O,v]);_.push({segmentation:j,segments_info:[]});continue}let[S,P]=wz(E,A,T,r,s,n,w);_.push({segmentation:S,segments_info:P})}return _}function Md(t,e=.5,r=null){throw new Error("`post_process_instance_segmentation` is not yet implemented.")}var X=class extends st{constructor(e){super(),this.image_mean=e.image_mean??e.mean,this.image_std=e.image_std??e.std,this.resample=e.resample??2,this.do_rescale=e.do_rescale??!0,this.rescale_factor=e.rescale_factor??1/255,this.do_normalize=e.do_normalize,this.do_thumbnail=e.do_thumbnail,this.size=e.size??e.image_size,this.do_resize=e.do_resize??this.size!==void 0,this.size_divisibility=e.size_divisibility??e.size_divisor,this.do_center_crop=e.do_center_crop,this.crop_size=e.crop_size,this.do_convert_rgb=e.do_convert_rgb??!0,this.do_crop_margin=e.do_crop_margin,this.pad_size=e.pad_size,this.do_pad=e.do_pad,this.min_pixels=e.min_pixels,this.max_pixels=e.max_pixels,this.do_pad&&!this.pad_size&&this.size&&this.size.width!==void 0&&this.size.height!==void 0&&(this.pad_size=this.size),this.do_flip_channel_order=e.do_flip_channel_order??!1,this.config=e}async thumbnail(e,r,s=2){let n=e.height,o=e.width,a=r.height,i=r.width,l=Math.min(n,a),c=Math.min(o,i);return l===n&&c===o?e:(n>o?c=Math.floor(o*l/n):o>n&&(l=Math.floor(n*c/o)),await e.resize(c,l,{resample:s}))}async crop_margin(e,r=200){let s=e.clone().grayscale(),n=ul(s.data)[0],a=Pe(s.data)[0]-n;if(a===0)return e;let i=r/255,l=s.width,c=s.height,p=0,f=0,_=s.data;for(let m=0;m<s.height;++m){let w=m*s.width;for(let x=0;x<s.width;++x)(_[w+x]-n)/a<i&&(l=Math.min(l,x),c=Math.min(c,m),p=Math.max(p,x),f=Math.max(f,m))}return e=await e.crop([l,c,p,f]),e}pad_image(e,r,s,{mode:n="constant",center:o=!1,constant_values:a=0}={}){let[i,l,c]=r,p,f;if(typeof s=="number"?(p=s,f=s):s==="square"?p=f=Math.max(i,l):(p=s.width,f=s.height),p!==l||f!==i){let _=new Float32Array(p*f*c);if(Array.isArray(a))for(let x=0;x<_.length;++x)_[x]=a[x%c];else a!==0&&_.fill(a);let[m,w]=o?[Math.floor((p-l)/2),Math.floor((f-i)/2)]:[0,0];for(let x=0;x<i;++x){let k=(x+w)*p,E=x*l;for(let A=0;A<l;++A){let T=(k+A+m)*c,S=(E+A)*c;for(let P=0;P<c;++P)_[T+P]=e[S+P]}}if(n==="symmetric"){if(o)throw new Error("`center` padding is not supported when `mode` is set to `symmetric`.");let x=i-1,k=l-1;for(let E=0;E<f;++E){let A=E*p,T=Cn(E,x)*l;for(let S=0;S<p;++S){if(E<i&&S<l)continue;let P=(A+S)*c,O=(T+Cn(S,k))*c;for(let v=0;v<c;++v)_[P+v]=e[O+v]}}}e=_,r=[f,p,c]}return[e,r]}rescale(e){for(let r=0;r<e.length;++r)e[r]=this.rescale_factor*e[r]}get_resize_output_image_size(e,r){let[s,n]=e.size,o,a;if(this.do_thumbnail){let{height:i,width:l}=r;o=Math.min(i,l)}else Number.isInteger(r)?(o=r,a=this.config.max_size??o):r!==void 0&&(o=r.shortest_edge,a=r.longest_edge);if(o!==void 0||a!==void 0){let i=o===void 0?1:Math.max(o/s,o/n),l=s*i,c=n*i,p=a===void 0?1:Math.min(a/l,a/c),f=Math.floor(Number((l*p).toFixed(2))),_=Math.floor(Number((c*p).toFixed(2)));return this.size_divisibility!==void 0&&([f,_]=Jb([f,_],this.size_divisibility)),[f,_]}else if(r!==void 0&&r.width!==void 0&&r.height!==void 0){let i=r.width,l=r.height;if(this.config.keep_aspect_ratio&&this.config.ensure_multiple_of){let c=l/n,p=i/s;Math.abs(1-p)<Math.abs(1-c)?c=p:p=c,l=L2(c*n,this.config.ensure_multiple_of),i=L2(p*s,this.config.ensure_multiple_of)}return[i,l]}else{if(this.size_divisibility!==void 0)return Jb([s,n],this.size_divisibility);throw new Error(`Could not resize image due to unsupported \`this.size\` option in config: ${JSON.stringify(r)}`)}}async resize(e){let[r,s]=this.get_resize_output_image_size(e,this.size);return await e.resize(r,s,{resample:this.resample})}async preprocess(e,{do_normalize:r=null,do_pad:s=null,do_convert_rgb:n=null,do_convert_grayscale:o=null,do_flip_channel_order:a=null}={}){this.do_crop_margin&&(e=await this.crop_margin(e));let[i,l]=e.size;if(n??this.do_convert_rgb?e=e.rgb():o&&(e=e.grayscale()),this.do_resize&&(e=await this.resize(e)),this.do_thumbnail&&(e=await this.thumbnail(e,this.size,this.resample)),this.do_center_crop){let m,w;Number.isInteger(this.crop_size)?(m=this.crop_size,w=this.crop_size):(m=this.crop_size.width,w=this.crop_size.height),e=await e.center_crop(m,w)}let c=[e.height,e.width],p=Float32Array.from(e.data),f=[e.height,e.width,e.channels];if(this.do_rescale&&this.rescale(p),r??this.do_normalize){let m=this.image_mean;Array.isArray(this.image_mean)||(m=new Array(e.channels).fill(m));let w=this.image_std;if(Array.isArray(this.image_std)||(w=new Array(e.channels).fill(w)),m.length!==e.channels||w.length!==e.channels)throw new Error(`When set to arrays, the length of \`image_mean\` (${m.length}) and \`image_std\` (${w.length}) must match the number of channels in the image (${e.channels}).`);for(let x=0;x<p.length;x+=e.channels)for(let k=0;k<e.channels;++k)p[x+k]=(p[x+k]-m[k])/w[k]}if(s??this.do_pad){if(this.pad_size)[p,f]=this.pad_image(p,[e.height,e.width,e.channels],this.pad_size);else if(this.size_divisibility){let[m,w]=Jb([f[1],f[0]],this.size_divisibility);[p,f]=this.pad_image(p,f,{width:m,height:w})}}if(a??this.do_flip_channel_order){if(f[2]!==3)throw new Error("Flipping channel order is only supported for RGB images.");for(let m=0;m<p.length;m+=3){let w=p[m];p[m]=p[m+2],p[m+2]=w}}let _=new $("float32",p,f).permute(2,0,1);return{original_size:[l,i],reshaped_input_size:c,pixel_values:_}}async _call(e,...r){Array.isArray(e)||(e=[e]);let s=await Promise.all(e.map(o=>this.preprocess(o)));return{pixel_values:Tt(s.map(o=>o.pixel_values),0),original_sizes:s.map(o=>o.original_size),reshaped_input_sizes:s.map(o=>o.reshaped_input_size)}}static async from_pretrained(e,r={}){let s=await ft(e,Mr,!0,r);return new this(s)}};var Jn={};Os(Jn,{BeitFeatureExtractor:()=>Sd,BitImageProcessor:()=>Td,CLIPFeatureExtractor:()=>Id,CLIPImageProcessor:()=>Tl,ChineseCLIPFeatureExtractor:()=>Od,ConvNextFeatureExtractor:()=>Cd,ConvNextImageProcessor:()=>Ol,DINOv3ViTImageProcessor:()=>zd,DPTFeatureExtractor:()=>$d,DPTImageProcessor:()=>Ll,DeiTFeatureExtractor:()=>Ld,DeiTImageProcessor:()=>Il,DetrFeatureExtractor:()=>Pd,DetrImageProcessor:()=>Cl,DonutFeatureExtractor:()=>Nd,DonutImageProcessor:()=>Vs,EfficientNetImageProcessor:()=>Rd,GLPNFeatureExtractor:()=>Dd,GroundingDinoImageProcessor:()=>Fd,Idefics3ImageProcessor:()=>Pl,ImageFeatureExtractor:()=>X,ImageProcessor:()=>X,JinaCLIPImageProcessor:()=>Ud,Lfm2VlImageProcessor:()=>jd,LlavaOnevisionImageProcessor:()=>Gd,Mask2FormerImageProcessor:()=>Wd,MaskFormerFeatureExtractor:()=>qd,MaskFormerImageProcessor:()=>Hs,MobileNetV1FeatureExtractor:()=>Vd,MobileNetV1ImageProcessor:()=>zl,MobileNetV2FeatureExtractor:()=>Hd,MobileNetV2ImageProcessor:()=>Nl,MobileNetV3FeatureExtractor:()=>Xd,MobileNetV3ImageProcessor:()=>$l,MobileNetV4FeatureExtractor:()=>Kd,MobileNetV4ImageProcessor:()=>Rl,MobileViTFeatureExtractor:()=>Qd,MobileViTImageProcessor:()=>Dl,NougatImageProcessor:()=>Yd,OwlViTFeatureExtractor:()=>Jd,OwlViTImageProcessor:()=>Xs,Owlv2ImageProcessor:()=>Zd,Phi3VImageProcessor:()=>ef,PixtralImageProcessor:()=>tf,PvtImageProcessor:()=>rf,Qwen2VLImageProcessor:()=>sf,RTDetrImageProcessor:()=>nf,Sam2ImageProcessor:()=>Yn,Sam3ImageProcessor:()=>Yn,SamImageProcessor:()=>Yn,SapiensFeatureExtractor:()=>of,SapiensImageProcessor:()=>Fl,SegformerFeatureExtractor:()=>af,SegformerImageProcessor:()=>Bl,SiglipImageProcessor:()=>lf,SmolVLMImageProcessor:()=>Pl,Swin2SRImageProcessor:()=>cf,VLMImageProcessor:()=>Bd,ViTFeatureExtractor:()=>uf,ViTImageProcessor:()=>Ul,VitMatteImageProcessor:()=>pf,VitPoseImageProcessor:()=>df,YolosFeatureExtractor:()=>ff,YolosImageProcessor:()=>jl});var Sd=class extends X{};var Td=class extends X{};var Od=class extends X{};var Tl=class extends X{},Id=class extends Tl{};var Ol=class extends X{constructor(e){super(e),this.crop_pct=this.config.crop_pct??224/256}async resize(e){let r=this.size?.shortest_edge;if(r===void 0)throw new Error("Size dictionary must contain 'shortest_edge' key.");if(r<384){let s=Math.floor(r/this.crop_pct),[n,o]=this.get_resize_output_image_size(e,{shortest_edge:s});e=await e.resize(n,o,{resample:this.resample}),e=await e.center_crop(r,r)}else e=await e.resize(r,r,{resample:this.resample});return e}},Cd=class extends Ol{};var Il=class extends X{},Ld=class extends Il{};var Cl=class extends X{async _call(e){let r=await super._call(e),s=[r.pixel_values.dims[0],64,64],n=We(s,1n);return{...r,pixel_mask:n}}post_process_object_detection(...e){return ls(...e)}post_process_panoptic_segmentation(...e){return Ad(...e)}post_process_instance_segmentation(...e){return Md(...e)}},Pd=class extends Cl{};var zd=class extends X{};var Vs=class extends X{pad_image(e,r,s,n={}){let[o,a,i]=r,l=this.image_mean;Array.isArray(this.image_mean)||(l=new Array(i).fill(l));let c=this.image_std;Array.isArray(c)||(c=new Array(i).fill(l));let p=l.map((f,_)=>-f/c[_]);return super.pad_image(e,r,s,{center:!0,constant_values:p,...n})}},Nd=class extends Vs{};var Ll=class extends X{},$d=class extends Ll{};var Rd=class extends X{constructor(e){super(e),this.include_top=this.config.include_top??!0,this.include_top&&(this.image_std=this.image_std.map(r=>r*r))}};var Dd=class extends X{};var Fd=class extends X{async _call(e){let r=await super._call(e),s=r.pixel_values.dims,n=et([s[0],s[2],s[3]]);return{...r,pixel_mask:n}}};var Pl=class extends X{constructor(e){super(e),this.do_image_splitting=e.do_image_splitting??!0,this.max_image_size=e.max_image_size}get_resize_for_vision_encoder(e,r){let[s,n]=e.dims.slice(-2),o=n/s;return n>=s?(n=Math.ceil(n/r)*r,s=Math.floor(n/o),s=Math.ceil(s/r)*r):(s=Math.ceil(s/r)*r,n=Math.floor(s*o),n=Math.ceil(n/r)*r),{height:s,width:n}}async _call(e,{do_image_splitting:r=null,return_row_col_info:s=!1}={}){let n;if(!Array.isArray(e))n=[[e]];else{if(e.length===0||!e[0])throw new Error("No images provided.");Array.isArray(e[0])?n=e:n=[e]}let o=[],a=[],i=[],l=[],c=[];for(let E of n){let A=await Promise.all(E.map(P=>this.preprocess(P)));l.push(...A.map(P=>P.original_size)),c.push(...A.map(P=>P.reshaped_input_size)),A.forEach(P=>P.pixel_values.unsqueeze_(0));let{longest_edge:T}=this.max_image_size,S;if(r??this.do_image_splitting){let P=new Array(A.length),O=new Array(A.length);S=await Promise.all(A.map(async(v,j)=>{let H=this.get_resize_for_vision_encoder(v.pixel_values,T),B=await bt(v.pixel_values,{size:[H.height,H.width]}),{frames:V,num_splits_h:q,num_splits_w:Q}=await this.split_image(B,this.max_image_size);return P[j]=q,O[j]=Q,ve(V,0)})),a.push(P),i.push(O)}else{let P=[T,T];S=await Promise.all(A.map(O=>bt(O.pixel_values,{size:P}))),a.push(new Array(A.length).fill(0)),i.push(new Array(A.length).fill(0))}o.push(ve(S,0))}let p=o.length,[f,_,m,w]=o[0].dims,x,k;if(p===1)x=o[0].unsqueeze_(0),k=We([p,f,m,w],!0);else{let E=Math.max(...o.map(S=>S.dims.at(0)));k=We([p,E,m,w],!0);let A=k.data,T=E*m*w;for(let S=0;S<p;++S){let P=o[S].dims[0];if(P<E){o[S]=ve([o[S],We([E-P,_,m,w],0)],0);let O=S*T+P*m*w,v=(S+1)*T;A.fill(!1,O,v)}}x=Tt(o,0)}return{pixel_values:x,pixel_attention_mask:k,original_sizes:l,reshaped_input_sizes:c,...s?{rows:a,cols:i}:{}}}async split_image(e,{longest_edge:r}){let s=r,n=r,o=[],[a,i]=e.dims.slice(-2),l=0,c=0;if(a>s||i>n){l=Math.ceil(a/s),c=Math.ceil(i/n);let p=Math.ceil(a/l),f=Math.ceil(i/c);for(let w=0;w<l;++w)for(let x=0;x<c;++x){let k,E,A,T;w===l-1?(E=a-p,T=a):(E=w*p,T=(w+1)*p),x===c-1?(k=i-f,A=i):(k=x*f,A=(x+1)*f);let O=await vl(e,[E,k],[T,A],[2,3]);o.push(O)}let _=s,m=n;(a!==_||i!==m)&&(e=await bt(e,{size:[_,m]}))}return o.push(e),{frames:o,num_splits_h:l,num_splits_w:c}}};var Bd=class extends X{constructor(e){super({do_pad:!0,pad_size:{width:e.image_size,height:e.image_size},...e}),this.constant_values=this.config.background_color.map(r=>r*this.rescale_factor)}pad_image(e,r,s,n){return super.pad_image(e,r,s,{constant_values:this.constant_values,center:!0,...n})}};var Ud=class extends X{constructor(e){let{resize_mode:r,fill_color:s,interpolation:n,size:o,...a}=e,i=r==="squash"?{width:o,height:o}:r==="shortest"?{shortest_edge:o}:{longest_edge:o},l=n==="bicubic"?3:2;super({...a,size:i,resample:l,do_center_crop:!0,crop_size:o,do_normalize:!0})}};function P2(t,e){return Math.round(t/e)*e}function xz(t,e,r,s,n){let o=1/0,a=[1,1],i=r*s;for(let l of e){let c=Math.abs(t-l[0]/l[1]);c<o?(o=c,a=l):c===o&&i>.5*n*n*l[0]*l[1]&&(a=l)}return a}function yz(t,e){let r=[],s=new Set;for(let n=t;n<=e;++n)for(let o=1;o<=n;++o)for(let a=1;a<=n;++a){let i=o*a;if(i>=t&&i<=e){let l=o<<16|a;s.has(l)||(s.add(l),r.push([o,a]))}}return r.sort((n,o)=>n[0]*n[1]-o[0]*o[1])}function bz(t,e){let[r,s,n,o]=t.dims,a=Math.floor(n/e),i=Math.floor(o/e),l=e*e*s,c=t.data,p=new Float32Array(r*a*i*l),f=n*o;for(let _=0;_<r;++_){let m=_*s*f,w=_*a*i*l;for(let x=0;x<a;++x)for(let k=0;k<i;++k){let E=w+(x*i+k)*l;for(let A=0;A<e;++A){let T=(x*e+A)*o+k*e;for(let S=0;S<e;++S){let P=T+S;for(let O=0;O<s;++O)p[E++]=c[m+O*f+P]}}}}return new $("float32",p,[r,a*i,l])}function vz(t,e){let[,r,s]=t.dims,n=new BigInt64Array(e);n.fill(1n,0,r);let o=t;if(r<e){let a=new Float32Array(e*s);a.set(t.data),o=new $("float32",a,[1,e,s])}return{padded:o,mask:new $("int64",n,[e])}}var jd=class extends X{constructor(e){super(e),this.downsample_factor=e.downsample_factor??2,this.do_image_splitting=e.do_image_splitting??!0,this.min_tiles=e.min_tiles??2,this.max_tiles=e.max_tiles??10,this.use_thumbnail=e.use_thumbnail??!0,this.min_image_tokens=e.min_image_tokens??64,this.max_image_tokens=e.max_image_tokens??256,this.encoder_patch_size=e.encoder_patch_size??e.patch_size??16,this.tile_size=e.tile_size??512,this.max_pixels_tolerance=e.max_pixels_tolerance??2,this.return_row_col_info=e.return_row_col_info??!1;let r=this.max_image_tokens*this.downsample_factor**2,s=this.do_image_splitting?(this.tile_size/this.encoder_patch_size)**2:0;this.max_num_patches=Math.max(r,s)}_is_image_too_large(e,r){let s=this.encoder_patch_size*this.downsample_factor,n=Math.max(this.encoder_patch_size,P2(e,s)),o=Math.max(this.encoder_patch_size,P2(r,s));return n*o>this.max_image_tokens*(this.encoder_patch_size*this.downsample_factor)**2*this.max_pixels_tolerance}_get_grid_layout(e,r){let s=yz(this.min_tiles,this.max_tiles),[n,o]=xz(r/e,s,r,e,this.tile_size);return{grid_width:n,grid_height:o,target_width:this.tile_size*n,target_height:this.tile_size*o}}async _call(e,{return_row_col_info:r=null}={}){let s;Array.isArray(e)?Array.isArray(e[0])?s=e:s=[e]:s=[[e]];let n=[],o=[],a=[],i=[],l=[],c=[];for(let f of s){let _=await Promise.all(f.map(m=>this.preprocess(m,{do_pad:!1})));for(let{pixel_values:m}of _){let[,w,x]=m.dims,k=m.unsqueeze_(0),E=this.encoder_patch_size*this.downsample_factor,A=E**2,[T,S]=Ed(Math.max(E,w),Math.max(E,x),E,this.min_image_tokens*A,this.max_image_tokens*A).map(B=>Math.max(E,B)),P,O=1,v=1,j=this._is_image_too_large(w,x),H=this.do_image_splitting&&!(this.min_tiles===1&&this.max_tiles===1);if(j&&H){let{grid_width:B,grid_height:V,target_width:q,target_height:Q}=this._get_grid_layout(w,x);O=V,v=B;let F=await bt(k,{size:[Q,q]});P=[];for(let C=0;C<V;++C)for(let te=0;te<B;++te){let le=C*this.tile_size,L=te*this.tile_size;P.push(F.slice(null,null,[le,le+this.tile_size],[L,L+this.tile_size]))}this.use_thumbnail&&B*V!==1&&P.push(await bt(k,{size:[T,S]}))}else P=[await bt(k,{size:[T,S]})];for(let B of P){let[,,V,q]=B.dims,Q=bz(B,this.encoder_patch_size),{padded:F,mask:C}=vz(Q,this.max_num_patches);n.push(F),o.push(C),a.push([Math.floor(V/this.encoder_patch_size),Math.floor(q/this.encoder_patch_size)])}i.push(O),l.push(v),c.push([T,S])}}let p={pixel_values:ve(n,0),pixel_attention_mask:Tt(o,0),spatial_shapes:new $("int64",BigInt64Array.from(a.flat(),BigInt),[a.length,2])};return(r??this.return_row_col_info)&&(p.image_rows=i,p.image_cols=l,p.image_sizes=c),p}};var Gd=class extends X{};var Hs=class extends X{post_process_panoptic_segmentation(...e){return Ad(...e)}post_process_instance_segmentation(...e){return Md(...e)}},qd=class extends Hs{};var Wd=class extends Hs{};var zl=class extends X{},Vd=class extends zl{};var Nl=class extends X{},Hd=class extends Nl{};var $l=class extends X{},Xd=class extends $l{};var Rl=class extends X{},Kd=class extends Rl{};var Dl=class extends X{},Qd=class extends Dl{};var Yd=class extends Vs{};var Xs=class extends X{post_process_object_detection(...e){return ls(...e)}},Jd=class extends Xs{};var Zd=class extends Xs{};var $t=336,kz=[2,3],{ceil:e1,floor:Qn,sqrt:t1}=Math,ef=class extends X{constructor(e){super({...e,do_normalize:!0,do_pad:!0,pad_size:"custom",do_convert_rgb:!0,do_resize:!0}),this._num_crops=e.num_crops}calc_num_image_tokens_from_image_size(e,r){let{num_img_tokens:s}=this.config;return Qn((Qn(r/$t)*Qn(e/$t)+1)*s+1+(Qn(r/$t)+1)*t1(s))}get_resize_output_image_size(e,r){let s=this._num_crops,[n,o]=e.size,a=n/o,i=1;for(;i*Math.ceil(i/a)<=s;)i+=1;i-=1;let l=Math.floor(i*336),c=Math.floor(l/a);return[l,c]}pad_image(e,r,s,n={}){let[o,a]=r,i=$t*e1(o/$t),l=$t*e1(a/$t),c=[1,1,1].map((p,f)=>(p-this.image_mean[f])/this.image_std[f]);return super.pad_image(e,r,{width:l,height:i},{center:!0,constant_values:c,...n})}async _call(e,{num_crops:r=null}={}){if(this._num_crops=r??=this.config.num_crops,r<4||t1(r)%1!==0)throw new Error("num_crops must be a square number >= 4");Array.isArray(e)||(e=[e]);let s=e.length,n=await Promise.all(e.map(_=>this.preprocess(_))),o=n.map(_=>_.original_size),a=n.map(_=>_.reshaped_input_size),i=[];for(let{pixel_values:_}of n){_.unsqueeze_(0);let[m,w]=_.dims.slice(-2),x=await bt(_,{size:[$t,$t],mode:"bicubic"});if(r>0){let k=[],E=t1(r),A=Qn(w/E),T=Qn(m/E);for(let P=0;P<E;++P)for(let O=0;O<E;++O){let v,j,H,B;P===E-1?(j=m-T,B=m):(j=P*T,B=(P+1)*T),O===E-1?(v=w-A,H=w):(v=O*A,H=(O+1)*A);let Q=await vl(_,[j,v],[B,H],kz);k.push(Q)}let S=await bt(ve(k,0),{size:[$t,$t],mode:"bicubic"});i.push(ve([x,S],0))}else i.push(x)}let l=Tt(i,0),c=a.map(_=>_.map(m=>$t*e1(m/$t))),p=new $("int64",c.flat(),[s,2]),f=c.map(([_,m])=>this.calc_num_image_tokens_from_image_size(m,_));return{pixel_values:l,original_sizes:o,reshaped_input_sizes:a,image_sizes:p,num_img_tokens:f}}};var tf=class extends X{get_resize_output_image_size(e,r){let{longest_edge:s}=r;if(s===void 0)throw new Error("size must contain 'longest_edge'");let[n,o]=e.size,a=Math.max(n,o)/s,i=n,l=o;a>1&&(i=Math.floor(n/a),l=Math.floor(o/a));let{patch_size:c,spatial_merge_size:p}=this.config;if(!p)throw new Error("config must contain 'spatial_merge_size'");let f=c*p,_=Math.floor((i-1)/f)+1,m=Math.floor((l-1)/f)+1;return[_*f,m*f]}};var rf=class extends X{};var sf=class extends X{constructor(e){super(e),this.min_pixels=e.min_pixels??e.size?.shortest_edge,this.max_pixels=e.max_pixels??e.size?.longest_edge,this.patch_size=e.patch_size,this.merge_size=e.merge_size}get_resize_output_image_size(e,r){let s=this.patch_size*this.merge_size;return Ed(e.height,e.width,s,this.min_pixels,this.max_pixels)}async _call(e,...r){let{pixel_values:s,original_sizes:n,reshaped_input_sizes:o}=await super._call(e,...r),a=s,{temporal_patch_size:i,merge_size:l,patch_size:c}=this.config;a.dims[0]===1&&(a=ve(Array.from({length:i},()=>a),0));let p=a.dims[0]/i,f=a.dims[1],_=Math.floor(a.dims[2]/c),m=Math.floor(a.dims[3]/c),w=a.view(p,i,f,Math.floor(_/l),l,c,Math.floor(m/l),l,c).permute(0,3,6,4,7,2,1,5,8).view(p*_*m,f*i*c*c),x=new $("int64",[p,_,m],[1,3]);return{pixel_values:w,image_grid_thw:x,original_sizes:n,reshaped_input_sizes:o}}};var nf=class extends X{post_process_object_detection(...e){return ls(...e)}};var Yn=class extends X{reshape_input_points(e,r,s,n=!1){e=structuredClone(e);let o=N0(e);if(o.length===3)n||(o=[1,...o]),e=[e];else if(o.length!==4)throw Error("The input_points must be a 4D tensor of shape `batch_size`, `point_batch_size`, `nb_points_per_image`, `2`.");for(let a=0;a<e.length;++a){let[i,l]=r[a],[c,p]=s[a],f=[p/l,c/i];for(let _=0;_<e[a].length;++_)for(let m=0;m<e[a][_].length;++m)for(let w=0;w<e[a][_][m].length;++w)e[a][_][m][w]*=f[w%2]}return new $("float32",Float32Array.from(e.flat(1/0)),o)}add_input_labels(e,r){let s=N0(e);if(s.length===2)s=[1,...s],e=[e];else if(s.length!==3)throw Error("The input_points must be a 4D tensor of shape `batch_size`, `point_batch_size`, `nb_points_per_image`, `2`.");if(s.some((n,o)=>n!==r.dims[o]))throw Error(`The first ${s.length} dimensions of 'input_points' and 'input_labels' must be the same.`);return new $("int64",e.flat(1/0).map(BigInt),s)}async _call(e,{input_points:r=null,input_labels:s=null,input_boxes:n=null}={}){let o=await super._call(e);if(r&&(o.input_points=this.reshape_input_points(r,o.original_sizes,o.reshaped_input_sizes)),s){if(!o.input_points)throw Error("`input_points` must be provided if `input_labels` are provided.");o.input_labels=this.add_input_labels(s,o.input_points)}return n&&(o.input_boxes=this.reshape_input_points(n,o.original_sizes,o.reshaped_input_sizes,!0)),o}async post_process_masks(e,r,s,{mask_threshold:n=0,binarize:o=!0,pad_size:a=null}={}){let i=[];a=a??this.pad_size??this.size;let l=[a.height,a.width];for(let c=0;c<r.length;++c){let p=r[c],f=s[c],_=await bt(e[c],{mode:"bilinear",size:l});if(_=_.slice(null,null,[0,f[0]],[0,f[1]]),_=await bt(_,{mode:"bilinear",size:p}),o){let m=_.data,w=new Uint8Array(m.length);for(let x=0;x<m.length;++x)m[x]>n&&(w[x]=1);_=new $("bool",w,_.dims)}i.push(_)}return i}generate_crop_boxes(e,r,{crop_n_layers:s=0,overlap_ratio:n=512/1500,points_per_crop:o=32,crop_n_points_downscale_factor:a=1}={}){}};var Fl=class extends X{post_process_semantic_segmentation(...e){return kd(...e)}},of=class extends Fl{};var Bl=class extends X{post_process_semantic_segmentation(...e){return kd(...e)}},af=class extends Bl{};var lf=class extends X{};var cf=class extends X{pad_image(e,r,s,n={}){let[o,a,i]=r;return super.pad_image(e,r,{width:a+(s-a%s)%s,height:o+(s-o%s)%s},{mode:"symmetric",center:!1,constant_values:-1,...n})}};var Ul=class extends X{},uf=class extends Ul{};var pf=class extends X{async _call(e,r){Array.isArray(e)||(e=[e]),Array.isArray(r)||(r=[r]);let s=await Promise.all(e.map(a=>this.preprocess(a))),n=await Promise.all(r.map(a=>this.preprocess(a,{do_normalize:!1,do_convert_rgb:!1,do_convert_grayscale:!0})));return{pixel_values:Tt(s.map((a,i)=>ve([a.pixel_values,n[i].pixel_values],0)),0),original_sizes:s.map(a=>a.original_size),reshaped_input_sizes:s.map(a=>a.reshaped_input_size)}}};var df=class extends X{post_process_pose_estimation(e,r,{threshold:s=null}={}){let n=e.tolist(),[o,a,i,l]=e.dims,c=[];for(let p=0;p<o;++p){let f=n[p],_=r[p],m=[];for(let w=0;w<_.length;++w){let x=_[w],k=[],E=[],A=[],T=x.at(-2)/l,S=x.at(-1)/i;for(let P=0;P<f.length;++P){let[O,v]=[0,0],j=0,H=-1/0,B=f[P];for(let q=0;q<B.length;++q){let Q=B[q];for(let F=0;F<Q.length;++F){let C=Q[F];j+=C,H=Math.max(H,C),O+=(F+.5)*C,v+=q*C}}if(s!=null&&H<s)continue;let V=[T*O/j,S*v/j];k.push(V),A.push(P),E.push(H)}m.push({bbox:x,scores:E,labels:A,keypoints:k})}c.push(m)}return c}};var jl=class extends X{post_process_object_detection(...e){return ls(...e)}},ff=class extends jl{};var Oe=class{static async from_pretrained(e,r={}){let s=await ft(e,Mr,!0,r),n=s.image_processor_type??s.feature_extractor_type,o=Jn[n?.replace(/Fast$/,"")];return o||(n!==void 0&&Z.warn(`Image processor type '${n}' not found, assuming base ImageProcessor. Please report this at ${as}.`),o=X),new o(s)}};var _f=class extends re{static tokenizer_class=oe;static image_processor_class=Oe;constructor(e,r,s){super(e,r,s);let{tasks_answer_post_processing_type:n,task_prompts_without_inputs:o,task_prompts_with_input:a}=this.image_processor.config;this.tasks_answer_post_processing_type=new Map(Object.entries(n??{})),this.task_prompts_without_inputs=new Map(Object.entries(o??{})),this.task_prompts_with_input=new Map(Object.entries(a??{})),this.regexes={quad_boxes:/(.+?)<loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)>/gm,bboxes:/([^<]+)?<loc_(\d+)><loc_(\d+)><loc_(\d+)><loc_(\d+)>/gm},this.size_per_bin=1e3}construct_prompts(e){typeof e=="string"&&(e=[e]);let r=[];for(let s of e)if(this.task_prompts_without_inputs.has(s))r.push(this.task_prompts_without_inputs.get(s));else{for(let[n,o]of this.task_prompts_with_input)if(s.includes(n)){r.push(o.replaceAll("{input}",s).replaceAll(n,""));break}r.length!==e.length&&r.push(s)}return r}post_process_generation(e,r,s){let n=this.tasks_answer_post_processing_type.get(r)??"pure_text";e=e.replaceAll("<s>","").replaceAll("</s>","");let o;switch(n){case"pure_text":o=e;break;case"description_with_bboxes":case"bboxes":case"phrase_grounding":case"ocr":let a=n==="ocr"?"quad_boxes":"bboxes",i=e.matchAll(this.regexes[a]),l=[],c=[];for(let[p,f,..._]of i)l.push(f?f.trim():l.at(-1)??""),c.push(_.map((m,w)=>(Number(m)+.5)/this.size_per_bin*s[w%2]));o={labels:l,[a]:c};break;default:throw new Error(`Task "${r}" (of type "${n}") not yet implemented.`)}return{[r]:o}}async _call(e,r=null,s={}){if(!e&&!r)throw new Error("Either text or images must be provided");let n=await this.image_processor(e,s),o=r?this.tokenizer(this.construct_prompts(r),s):{};return{...n,...o}}};var mf=class extends re{static image_processor_class=Oe;static feature_extractor_class=Ve;static tokenizer_class=oe;static uses_processor_config=!0;static uses_chat_template_file=!0;constructor(e,r,s){super(e,r,s),this.audio_seq_length=this.config.audio_seq_length,this.image_seq_length=this.config.image_seq_length;let{audio_token_id:n,boa_token:o,audio_token:a,eoa_token:i,image_token_id:l,boi_token:c,image_token:p,eoi_token:f}=this.tokenizer.config;this.audio_token_id=n,this.boa_token=o,this.audio_token=a;let _=a.repeat(this.audio_seq_length);this.full_audio_sequence=`
14
14
 
15
- ${o}${m}${i}
15
+ ${o}${_}${i}
16
16
 
17
- `,this.image_token_id=l,this.boi_token=u,this.image_token=p;let h=p.repeat(this.image_seq_length);this.full_image_sequence=`
17
+ `,this.image_token_id=l,this.boi_token=c,this.image_token=p;let m=p.repeat(this.image_seq_length);this.full_image_sequence=`
18
18
 
19
- ${u}${h}${f}
19
+ ${c}${m}${f}
20
20
 
21
- `}async _call(e,r=null,s=null,n={}){typeof e=="string"&&(e=[e]);let o;s&&(o=await this.feature_extractor(s,n),e=e.map(l=>l.replaceAll(this.audio_token,this.full_audio_sequence)));let a;return r&&(a=await this.image_processor(r,n),e=e.map(l=>l.replaceAll(this.image_token,this.full_image_sequence))),{...this.tokenizer(e,n),...a,...o}}};function bz(t,e){let s=t.dims.at(-1)-1,n=t.tolist();n.fill(!1,0,1),n.fill(!1,s);let o=e.tolist();return n.map((a,i)=>a?i:null).filter(a=>a!==null).map(a=>o[a])}var Kd=class extends oe{static tokenizer_class=Z;static image_processor_class=$e;async _call(e,r,s={}){let n=e?await this.image_processor(e,s):{};return{...r?this.tokenizer(r,s):{},...n}}post_process_grounded_object_detection(e,r,{box_threshold:s=.25,text_threshold:n=.25,target_sizes:o=null}={}){let{logits:a,pred_boxes:i}=e,l=a.dims[0];if(o!==null&&o.length!==l)throw Error("Make sure that you pass in as many target sizes as the batch dimension of the logits");let u=a.dims.at(1),p=a.sigmoid(),f=p.max(-1).tolist(),m=i.tolist().map(w=>w.map(x=>hb(x))),h=[];for(let w=0;w<l;++w){let x=o!==null?o[w]:null;x!==null&&(m[w]=m[w].map(T=>T.map((P,C)=>P*x[(C+1)%2])));let k=f[w],E=[],A=[],S=[];for(let T=0;T<u;++T){let P=k[T];if(P<=s)continue;let C=m[w][T],v=p[w][T];E.push(P),S.push(C);let F=bz(v.gt(n),r[w]);A.push(F)}h.push({scores:E,boxes:S,labels:this.batch_decode(A)})}return h}};function vz(t,e,r,s,n,o){let a="";for(let i=0;i<e;++i){for(let l=0;l<r;++l)a+=s+`<row_${i+1}_col_${l+1}>`+n.repeat(t);a+=`
21
+ `}async _call(e,r=null,s=null,n={}){typeof e=="string"&&(e=[e]);let o;s&&(o=await this.feature_extractor(s,n),e=e.map(l=>l.replaceAll(this.audio_token,this.full_audio_sequence)));let a;return r&&(a=await this.image_processor(r,n),e=e.map(l=>l.replaceAll(this.image_token,this.full_image_sequence))),{...this.tokenizer(e,n),...a,...o}}};var hf=class extends re{static tokenizer_class=oe;static feature_extractor_class=Ve;static uses_processor_config=!0;_get_num_audio_features(e){let{hop_length:r}=this.feature_extractor.config.melspec_kwargs,{projector_window_size:s,projector_downsample_rate:n}=this.feature_extractor.config,o=Math.floor(s/n),a=Math.floor(e/r)+1,i=Math.floor(a/2);return Math.ceil(i/s)*o}async _call(e,r=null,s={}){if(Array.isArray(e))throw new Error("Batched inputs are not supported yet.");let n={};if(r){let{input_features:a}=await this.feature_extractor(r);n.input_features=a;let i=this._get_num_audio_features(r.length),l=new Uint8Array(i).fill(1);n.input_features_mask=new $("bool",l,[1,i]);let c=this.config.audio_token??"<|audio|>";if(!e.includes(c))throw new Error(`The input text does not contain the audio token ${c}.`);e=e.replaceAll(c,c.repeat(i))}return{...this.tokenizer(e,{add_special_tokens:!1,...s}),...n}}};function Ez(t,e){let s=t.dims.at(-1)-1,n=t.tolist();n.fill(!1,0,1),n.fill(!1,s);let o=e.tolist();return n.map((a,i)=>a?i:null).filter(a=>a!==null).map(a=>o[a])}var gf=class extends re{static tokenizer_class=oe;static image_processor_class=Oe;async _call(e,r,s={}){let n=e?await this.image_processor(e,s):{};return{...r?this.tokenizer(r,s):{},...n}}post_process_grounded_object_detection(e,r,{box_threshold:s=.25,text_threshold:n=.25,target_sizes:o=null}={}){let{logits:a,pred_boxes:i}=e,l=a.dims[0];if(o!==null&&o.length!==l)throw Error("Make sure that you pass in as many target sizes as the batch dimension of the logits");let c=a.dims.at(1),p=a.sigmoid(),f=p.max(-1).tolist(),_=i.tolist().map(w=>w.map(x=>Zb(x))),m=[];for(let w=0;w<l;++w){let x=o!==null?o[w]:null;x!==null&&(_[w]=_[w].map(S=>S.map((P,O)=>P*x[(O+1)%2])));let k=f[w],E=[],A=[],T=[];for(let S=0;S<c;++S){let P=k[S];if(P<=s)continue;let O=_[w][S],v=p[w][S];E.push(P),T.push(O);let j=Ez(v.gt(n),r[w]);A.push(j)}m.push({scores:E,boxes:T,labels:this.batch_decode(A)})}return m}};function Az(t,e,r,s,n,o){let a="";for(let i=0;i<e;++i){for(let l=0;l<r;++l)a+=s+`<row_${i+1}_col_${l+1}>`+n.repeat(t);a+=`
22
22
  `}return a+=`
23
- ${s}${o}`+n.repeat(t)+`${s}`,a}function kz(t,e,r,s){return`${e}${s}`+r.repeat(t)+`${e}`}function Ez(t,e,r,s,n,o){return t===0&&e===0?kz(r,s,n,o):vz(r,t,e,s,n,o)}var El=class extends oe{static image_processor_class=$e;static tokenizer_class=Z;static uses_processor_config=!0;fake_image_token="<fake_token_around_image>";image_token="<image>";global_img_token="<global-img>";async _call(e,r=null,s={}){s.return_row_col_info??=!0;let n;r&&(n=await this.image_processor(r,s)),Array.isArray(e)||(e=[e]);let o=n.rows??[new Array(e.length).fill(0)],a=n.cols??[new Array(e.length).fill(0)],i=this.config.image_seq_len,l=[],u=[];for(let f=0;f<e.length;++f){let m=e[f],h=o[f],w=a[f];l.push(ok(m,this.image_token));let x=h.map((A,S)=>Ez(A,w[S],i,this.fake_image_token,this.image_token,this.global_img_token)),k=m.split(this.image_token);if(k.length===0)throw new Error("The image token should be present in the text.");let E=k[0];for(let A=0;A<x.length;++A)E+=x[A]+k[A+1];u.push(E)}return{...this.tokenizer(u),...n}}};var Yd=class extends oe{static image_processor_class=$e;static tokenizer_class=Z;static uses_processor_config=!0;constructor(e,r,s){super(e,r,s),this.image_tag=this.config.image_tag,this.image_start_tag=this.config.image_start_tag,this.image_end_tag=this.config.image_end_tag,this.num_image_tokens=this.config.num_image_tokens}async _call(e,{images:r=null,chat_template:s="default"}={}){r?Array.isArray(r)||(r=[r]):r=await Promise.all(e.filter(k=>k.images).flatMap(k=>k.images).map(k=>Ke.read(k)));let n=this.tokenizer,o=n.apply_chat_template(e,{tokenize:!1,add_generation_prompt:!0,chat_template:s}),a=k=>n.encode(k,{add_special_tokens:!1}),i=o.split(this.image_tag),l=i.length-1;if(r.length!==l)throw new Error(`Number of images provided (${r.length}) does not match number of "${this.image_tag}" image tags (${l})`);let[u,p,f]=n.convert_tokens_to_ids([this.image_tag,this.image_start_tag,this.image_end_tag]),m=a(i[0]),h=new Array(m.length).fill(!1);for(let k=1;k<i.length;++k){let E=new Array(this.num_image_tokens).fill(u),A=a(i[k]);m=ft(m,[p],E,[f],A);let S=new Array(this.num_image_tokens).fill(!0);h=ft(h,[!1],S,[!1],new Array(A.length).fill(!1))}let w=[1,m.length],x={input_ids:new D("int64",m,w),attention_mask:new D("int64",new Array(m.length).fill(1),w),images_seq_mask:new D("bool",h,w),images_emb_mask:new D("bool",new Array(l*this.num_image_tokens).fill(!0),[1,l,this.num_image_tokens])};if(r&&r.length>0){let k=await this.image_processor(r);return k.pixel_values.unsqueeze_(0),{...x,...k}}return x}};var Qd=class extends oe{static tokenizer_class=Z;static image_processor_class=$e;async _call(e=null,r=null,s={}){if(!e&&!r)throw new Error("Either text or images must be provided");let n=e?this.tokenizer(e,s):{},o=r?await this.image_processor(r,s):{};return{...n,...o}}};var Jd=class extends oe{static tokenizer_class=Z;static image_processor_class=$e;static uses_processor_config=!0;async _call(e,r=null,s={}){let n=await this.image_processor(e,s);if(r){let[a,i]=n.pixel_values.dims.slice(-2),{image_token:l,patch_size:u,num_additional_image_tokens:p}=this.config,f=Math.floor(a/u)*Math.floor(i/u)+p;r=structuredClone(r),Array.isArray(r)||(r=[r]);for(let m=0;m<r.length;++m)r[m]=r[m].replace(l,l.repeat(f))}let o=r?this.tokenizer(r,s):{};return{...n,...o}}};var KA={char:["char_decode",1],bpe:["bpe_decode",2],wp:["wp_decode",102]},Zd=class extends oe{static tokenizer_class=Z;static image_processor_class=$e;get char_tokenizer(){return this.components.char_tokenizer}get bpe_tokenizer(){return this.components.bpe_tokenizer}get wp_tokenizer(){return this.components.wp_tokenizer}_decode_helper(e,r){if(!KA.hasOwnProperty(r))throw new Error(`Format ${r} is not supported.`);let[s,n]=KA[r],o=this[s].bind(this),[a,i]=e.dims,l=[],u=[],p=e.tolist();for(let m=0;m<a;++m){let h=p[m],w=[],x=[];for(let E=1;E<i;++E){let[A,S]=Se(Ie(h[E]));if(x.push(A),S==n)break;w.push(S)}let k=x.length>0?x.reduce((E,A)=>E*A,1):0;u.push(w),l.push(k)}return[o(u),l]}char_decode(e){return this.char_tokenizer.batch_decode(e).map(r=>r.replaceAll(" ",""))}bpe_decode(e){return this.bpe_tokenizer.batch_decode(e)}wp_decode(e){return this.wp_tokenizer.batch_decode(e).map(r=>r.replaceAll(" ",""))}batch_decode([e,r,s]){let[n,o]=this._decode_helper(e,"char"),[a,i]=this._decode_helper(r,"bpe"),[l,u]=this._decode_helper(s,"wp"),p=[],f=[];for(let m=0;m<n.length;++m){let[h,w]=Se([o[m],i[m],u[m]]);p.push([n[m],a[m],l[m]][w]),f.push(h)}return{generated_text:p,scores:f,char_preds:n,bpe_preds:a,wp_preds:l}}static async from_pretrained(...e){let r=await super.from_pretrained(...e),s=await Z.from_pretrained("Xenova/gpt2"),n=await Z.from_pretrained("Xenova/bert-base-uncased");return r.components={image_processor:r.image_processor,char_tokenizer:r.tokenizer,bpe_tokenizer:s,wp_tokenizer:n},r}async _call(e,r=null){let s=await this.image_processor(e);return r&&(s.labels=this.tokenizer(r).input_ids),s}};var ef=class extends oe{static tokenizer_class=Z;static feature_extractor_class=et;async _call(e){return await this.feature_extractor(e)}};var tf=class extends oe{static tokenizer_class=Z;static image_processor_class=$e};var Gn="<image>";function Az(t,e,r,s,n){return`${s.repeat(r*n)}${e}${t}
24
- `}var rf=class extends oe{static tokenizer_class=Z;static image_processor_class=$e;static uses_processor_config=!1;async _call(e,r=null,s={}){r||(Q.warn("You are using PaliGemma without a text prefix. It will perform as a picture-captioning model."),r=""),Array.isArray(e)||(e=[e]),Array.isArray(r)||(r=[r]);let n=this.tokenizer.bos_token,o=this.image_processor.config.image_seq_length,a;r.some(u=>u.includes(Gn))?a=r.map(u=>{let p=u.replaceAll(Gn,Gn.repeat(o)),f=p.lastIndexOf(Gn),m=f===-1?0:f+Gn.length;return p.slice(0,m)+n+p.slice(m)+`
25
- `}):(Q.warn("You are passing both `text` and `images` to `PaliGemmaProcessor`. The processor expects special image tokens in the text, as many tokens as there are images per each text. It is recommended to add `<image>` tokens in the very beginning of your text. For this call, we will infer how many images each text has and add special tokens."),a=r.map(u=>Az(u,n,o,Gn,e.length)));let i=this.tokenizer(a,s);return{...await this.image_processor(e,s),...i}}};var YA="<|image|>",Mz=/<\|image_\d+\|>/g,sf=class extends oe{static image_processor_class=$e;static tokenizer_class=Z;async _call(e,r=null,{padding:s=!0,truncation:n=!0,num_crops:o=null}={}){Array.isArray(e)||(e=[e]);let a,i;if(r){i=await this.image_processor(r,{num_crops:o});let{num_img_tokens:l}=i,u=e.map((f,m)=>f.split(Mz).join(YA.repeat(l[m])));a=this.tokenizer(u,{padding:s,truncation:n});let p=this.tokenizer._tokenizer.token_to_id(YA);a.input_ids.map_(f=>f==p?-f:f)}else a=this.tokenizer(e);return{...a,...i}}};var nf=class extends oe{static tokenizer_class=Z;static image_processor_class=$e;static uses_processor_config=!0;async _call(e,r=null,s={}){let n=await this.image_processor(e,s);if(r){let[a,i]=n.pixel_values.dims.slice(-2),{image_token:l,image_break_token:u,image_end_token:p,patch_size:f,spatial_merge_size:m}=this.config,h=f*m,w=Math.floor(a/h),x=Math.floor(i/h);r=structuredClone(r),Array.isArray(r)||(r=[r]);for(let k=0;k<r.length;++k){let E=l.repeat(x),A=E+u,S=E+p,T=A.repeat(w-1)+S;r[k]=r[k].replace(l,T)}}let o=r?this.tokenizer(r,s):{};return{...n,...o}}};var of=class extends oe{static feature_extractor_class=Un;async _call(e){return await this.feature_extractor(e)}post_process_speaker_diarization(...e){return this.feature_extractor.post_process_speaker_diarization(...e)}get sampling_rate(){return this.feature_extractor.config.sampling_rate}};var qn=class extends oe{static image_processor_class=$e;static tokenizer_class=Z;async _call(e,r=null,...s){Array.isArray(e)||(e=[e]);let n,o;if(r&&(n=await this.image_processor(r),o=n.image_grid_thw),o){let i=this.image_processor.config.merge_size**2,l=0,u=o.tolist();e=e.map(p=>{for(;p.includes("<|image_pad|>");){let f=Number(u[l++].reduce((m,h)=>m*h,1n));p=p.replace("<|image_pad|>","<|placeholder|>".repeat(Math.floor(f/i)))}return p.replaceAll("<|placeholder|>","<|image_pad|>")})}return{...this.tokenizer(e),...n}}};var Wn=class extends qn{};var af=class extends Wn{};var Vn=class extends oe{static image_processor_class=$e;async _call(...e){return await this.image_processor(...e)}post_process_masks(...e){return this.image_processor.post_process_masks(...e)}reshape_input_points(...e){return this.image_processor.reshape_input_points(...e)}};var Al=class extends Vn{},lf=class extends Al{};var cf=class extends oe{static tokenizer_class=Z;static feature_extractor_class=et;async _call(e){return await this.feature_extractor(e)}};var uf=class extends oe{static tokenizer_class=Z;static feature_extractor_class=et;static uses_processor_config=!0;async _call(e,r=null,s={}){if(Array.isArray(e))throw new Error("Batched inputs are not supported yet.");let n={};if(r){let a=r.length,{input_features:i}=await this.feature_extractor(r,{...s,max_length:a}),l=Math.round(a/this.config.encoder_ds_factor+1e-4),u=1+Math.ceil(l/this.config.stack_factor);n.audio_token_len=[u],n.audio_values=i;let p=this.config.audio_placeholder;if(!e.includes(p))throw new Error(`The input text does not contain the image token ${p}.`);e=e.replaceAll(p,p.repeat(u))}return{...this.tokenizer(e,{add_special_tokens:!1,...s}),...n}}};var pf="[AUDIO]",Tz="[BEGIN_AUDIO]",Sz=375;function Oz(t,e){let r=[];for(let s=0;s<t.length;s+=e)r.push(t.subarray(s,Math.min(s+e,t.length)));return r}var df=class extends oe{static tokenizer_class=Z;static feature_extractor_class=et;static uses_processor_config=!1;async _call(e,r=null,s={}){if(Array.isArray(e))throw new Error("Batched inputs are not supported yet.");let n={};if(r){if(!e.includes(pf))throw new Error(`The input text does not contain the audio token ${pf}.`);Array.isArray(r)||(r=[r]);let a=e.split(pf),i=a.length-1;if(i!==r.length)throw new Error(`The number of audio inputs (${r.length}) does not match the number of audio tokens in the text (${i}).`);let l=this.feature_extractor.config.n_samples,u=r.map(w=>Oz(w,l)),p=u.map(w=>w.length),f=u.flat(),m=(await Promise.all(f.map(w=>this.feature_extractor(w,s)))).map(w=>w.input_features);n.audio_values=m.length>1?Ee(m,0):m[0];let h=a[0];for(let w=0;w<p.length;++w){h+=Tz;for(let x=0;x<p[w];++x)h+=pf.repeat(Sz);h+=a[w+1]}e=h}return{...this.tokenizer(e,{add_special_tokens:!1,...s}),...n}}};var ff=class extends oe{static tokenizer_class=Z;static feature_extractor_class=et;async _call(e){return await this.feature_extractor(e)}};var mf=class extends oe{static tokenizer_class=Z;static feature_extractor_class=et;async _call(e){return await this.feature_extractor(e)}};var hf=class extends oe{static tokenizer_class=Z;static feature_extractor_class=et;async _call(e){return await this.feature_extractor(e)}};var it=class{static async from_pretrained(e,r={}){let s=await ut(e,Or,!0,r),{image_processor_type:n,feature_extractor_type:o,processor_class:a}=s;if(a&&_f[a])return _f[a].from_pretrained(e,r);if(!n&&!o)throw new Error("No `image_processor_type` or `feature_extractor_type` found in the config.");let i={};if(n){let u=jn[n.replace(/Fast$/,"")];if(!u)throw new Error(`Unknown image_processor_type: '${n}'.`);i.image_processor=new u(s)}if(o){let u=jn[o];if(u)i.image_processor=new u(s);else{let p=ll[o];if(!p)throw new Error(`Unknown feature_extractor_type: '${o}'.`);i.feature_extractor=new p(s)}}let l={};return new oe(l,i,null)}};async function Iz(t,e){return await ut(t,"config.json",!0,e)}function Hn(t){let e={},r={};switch(t.model_type){case"llava":case"paligemma":case"gemma3":case"florence2":case"llava_onevision":case"idefics3":case"ultravox":case"voxtral":case"smolvlm":case"gemma3n":case"chatterbox":case"mistral3":case"qwen2_5_vl":case"qwen3_vl":r=Hn(t.text_config);break;case"moondream1":r=Hn(t.phi_config);break;case"musicgen":r=Hn(t.decoder);break;case"multi_modality":r=Hn(t.language_config);break;case"gpt2":case"gptj":case"jais":case"codegen":case"gpt_bigcode":e.num_heads="n_head",e.num_layers="n_layer",e.hidden_size="n_embd";break;case"gpt_neox":case"stablelm":case"opt":case"falcon":case"modernbert-decoder":e.num_heads="num_attention_heads",e.num_layers="num_hidden_layers",e.hidden_size="hidden_size";break;case"gpt_oss":case"llama":case"llama4_text":case"nanochat":case"apertus":case"arcee":case"afmoe":case"lfm2":case"lfm2_moe":case"smollm3":case"olmo":case"olmo2":case"olmo3":case"mobilellm":case"granite":case"granitemoehybrid":case"cohere":case"cohere2":case"mistral":case"starcoder2":case"qwen2":case"qwen2_vl":case"qwen2_5_vl_text":case"qwen3_vl_text":case"phi":case"phi3":case"phi3_v":case"llava_qwen2":e.num_heads="num_key_value_heads",e.num_layers="num_hidden_layers",e.hidden_size="hidden_size",e.num_attention_heads="num_attention_heads",e.dim_kv="head_dim";break;case"qwen3":case"gemma":case"gemma2":case"vaultgemma":case"gemma3_text":case"gemma3n_text":case"glm":case"helium":case"ernie4_5":case"hunyuan_v1_dense":case"falcon_h1":case"ministral":case"ministral3":e.num_heads="num_key_value_heads",e.num_layers="num_hidden_layers",e.dim_kv="head_dim";break;case"openelm":e.num_heads="num_kv_heads",e.num_layers="num_transformer_layers",e.dim_kv="head_dim";break;case"gpt_neo":case"donut-swin":e.num_heads="num_heads",e.num_layers="num_layers",e.hidden_size="hidden_size";break;case"bloom":e.num_heads="n_head",e.num_layers="n_layer",e.hidden_size="hidden_size";break;case"mpt":e.num_heads="n_heads",e.num_layers="n_layers",e.hidden_size="d_model";break;case"exaone":e.num_heads="num_key_value_heads",e.num_layers="num_layers",e.dim_kv="head_dim",e.num_attention_heads="num_attention_heads";break;case"youtu":e.num_heads="num_key_value_heads",e.num_layers="num_hidden_layers",e.dim_kv="qk_head_dim",e.num_attention_heads="num_attention_heads";break;case"t5":case"mt5":case"longt5":e.num_decoder_layers="num_decoder_layers",e.num_decoder_heads="num_heads",e.decoder_dim_kv="d_kv",e.num_encoder_layers="num_layers",e.num_encoder_heads="num_heads",e.encoder_dim_kv="d_kv";break;case"bart":case"mbart":case"marian":case"whisper":case"lite-whisper":case"m2m_100":case"blenderbot":case"blenderbot-small":case"florence2_language":e.num_decoder_layers="decoder_layers",e.num_decoder_heads="decoder_attention_heads",e.decoder_hidden_size="d_model",e.num_encoder_layers="encoder_layers",e.num_encoder_heads="encoder_attention_heads",e.encoder_hidden_size="d_model";break;case"speecht5":e.num_decoder_layers="decoder_layers",e.num_decoder_heads="decoder_attention_heads",e.decoder_hidden_size="hidden_size",e.num_encoder_layers="encoder_layers",e.num_encoder_heads="encoder_attention_heads",e.encoder_hidden_size="hidden_size";break;case"trocr":e.num_encoder_layers=e.num_decoder_layers="decoder_layers",e.num_encoder_heads=e.num_decoder_heads="decoder_attention_heads",e.encoder_hidden_size=e.decoder_hidden_size="d_model";break;case"musicgen_decoder":e.num_encoder_layers=e.num_decoder_layers="num_hidden_layers",e.num_encoder_heads=e.num_decoder_heads="num_attention_heads",e.encoder_hidden_size=e.decoder_hidden_size="hidden_size";break;case"moonshine":e.num_decoder_layers="decoder_num_hidden_layers",e.num_decoder_heads="decoder_num_key_value_heads",e.num_encoder_layers="encoder_num_hidden_layers",e.num_encoder_heads="encoder_num_key_value_heads",e.encoder_hidden_size=e.decoder_hidden_size="hidden_size";break;case"vision-encoder-decoder":let n=Hn(t.decoder),o="num_decoder_layers"in n,a=ot(t,["model_type","is_encoder_decoder"]);return o?(a.num_decoder_layers=n.num_decoder_layers,a.num_decoder_heads=n.num_decoder_heads,a.decoder_hidden_size=n.decoder_hidden_size,a.num_encoder_layers=n.num_encoder_layers,a.num_encoder_heads=n.num_encoder_heads,a.encoder_hidden_size=n.encoder_hidden_size):(a.num_layers=n.num_layers,a.num_heads=n.num_heads,a.hidden_size=n.hidden_size),a}let s={...r,...ot(t,["model_type","multi_query","is_encoder_decoder"])};for(let n in e)s[n]=t[e[n]];return s}function gf(t,e){if(["lfm2","lfm2_moe"].includes(t.model_type)){let r=e?.prefix??"past_key_values",s=r==="present"?"present":"past",n={},{layer_types:o,num_attention_heads:a,num_key_value_heads:i,hidden_size:l,conv_L_cache:u}=t,p=l/a,f=e?.batch_size??1;for(let m=0;m<o.length;++m)if(o[m]==="full_attention")for(let h of["key","value"])n[`${r}.${m}.${h}`]=[f,i,0,p];else if(o[m]==="conv")n[`${s}_conv.${m}`]=[f,l,u];else throw new Error(`Unsupported layer type: ${o[m]}`);return n}else if(["granitemoehybrid","falcon_h1"].includes(t.model_type)){let r=e?.prefix??"past_key_values",s=r==="present"?"present":"past",n={},{layer_types:o,num_hidden_layers:a,num_attention_heads:i,num_key_value_heads:l,hidden_size:u,mamba_d_conv:p,mamba_n_heads:f,mamba_d_head:m,mamba_d_state:h,mamba_n_groups:w,mamba_expand:x,mamba_d_ssm:k}=t,E=u/i,A=e?.batch_size??1,S=(k??x*u)+2*w*h;for(let T=0;T<a;++T)if((!o||o[T]==="mamba")&&(n[`${s}_conv.${T}`]=[A,S,p],n[`${s}_ssm.${T}`]=[A,f,m,h]),!o||o[T]==="attention")for(let P of["key","value"])n[`${r}.${T}.${P}`]=[A,l,0,E];return n}else if(["qwen3_5","qwen3_5_moe"].includes(t.model_type)){let r=e?.prefix??"past_key_values",s=r==="present"?"present":"past",n={},{head_dim:o,layer_types:a,num_attention_heads:i,num_key_value_heads:l,hidden_size:u,linear_num_value_heads:p,linear_num_key_heads:f,linear_key_head_dim:m,linear_value_head_dim:h,linear_conv_kernel_dim:w}=t.text_config,x=m*f,k=h*p,E=x*2+k,A=o??u/i,S=e?.batch_size??1;for(let T=0;T<a.length;++T)if(a[T]==="full_attention")for(let P of["key","value"])n[`${r}.${T}.${P}`]=[S,l,0,A];else if(a[T]==="linear_attention")n[`${s}_conv.${T}`]=[S,E,w],n[`${s}_recurrent.${T}`]=[S,p,m,h];else throw new Error(`Unsupported layer type: ${a[T]}`);return n}return Cz(t,e)}function Cz(t,{prefix:e="past_key_values",batch_size:r=1}={}){let s={},n=t.normalized_config;if(n.is_encoder_decoder&&"num_encoder_heads"in n&&"num_decoder_heads"in n){let o=n.encoder_dim_kv??n.encoder_hidden_size/n.num_encoder_heads,a=n.decoder_dim_kv??n.decoder_hidden_size/n.num_decoder_heads,i=[r,n.num_encoder_heads,0,o],l=[r,n.num_decoder_heads,0,a];for(let u=0;u<n.num_decoder_layers;++u)s[`${e}.${u}.encoder.key`]=i,s[`${e}.${u}.encoder.value`]=i,s[`${e}.${u}.decoder.key`]=l,s[`${e}.${u}.decoder.value`]=l}else{let o=n.num_heads,a=n.num_layers,i=n.dim_kv??n.hidden_size/(n.num_attention_heads??o);if(n.model_type==="falcon"){let l=[r*o,0,i];for(let u=0;u<a;++u)s[`${e}.${u}.key`]=l,s[`${e}.${u}.value`]=l}else if(n.multi_query){let l=[r*o,0,2*i];for(let u=0;u<a;++u)s[`${e}.${u}.key_value`]=l}else if(n.model_type==="bloom"){let l=[r*o,i,0],u=[r*o,0,i];for(let p=0;p<a;++p)s[`${e}.${p}.key`]=l,s[`${e}.${p}.value`]=u}else if(n.model_type==="openelm")for(let l=0;l<a;++l){let u=[r,o[l],0,i];s[`${e}.${l}.key`]=u,s[`${e}.${l}.value`]=u}else{let l=[r,o,0,i];for(let u=0;u<a;++u)s[`${e}.${u}.key`]=l,s[`${e}.${u}.value`]=l}}return s}var Ml=class t{model_type=null;is_encoder_decoder=!1;max_position_embeddings;"transformers.js_config";constructor(e){Object.assign(this,e),this.normalized_config=Hn(this)}static async from_pretrained(e,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main"}={}){s&&!(s instanceof t)&&(s=new t(s));let i=s??await Iz(e,{progress_callback:r,config:s,cache_dir:n,local_files_only:o,revision:a});return new this(i)}},hr=class{static async from_pretrained(...e){return Ml.from_pretrained(...e)}};function wb(t,e,r){return t?typeof t=="object"&&t!==null?t.hasOwnProperty(e)?+t[e]:t.hasOwnProperty(r)?+t[r]:0:+t:0}function xb(t,e){let r=[];for(let s=0;s<e;++s)r.push(`${t}_data${s===0?"":"_"+s}`);return r}async function QA(t,e,r,s){let n=`${e}${s}.onnx`,o=`${r.subfolder??""}/${n}`;return await qi(t,o,!0,r,ge.IS_NODE_ENV)}async function JA(t,e,r,s,n,o={}){let a=`${e}${r}.onnx`,i=ge.IS_NODE_ENV,l=[],u=wb(n,a,e);if(u>0){if(u>Mu)throw new Error(`The number of external data chunks (${u}) exceeds the maximum allowed value (${Mu}).`);let p=xb(a,u);for(let f of p){let m=`${s.subfolder??""}/${f}`;l.push(new Promise(async(h,w)=>{let x=await qi(t,m,!0,s,i);h(x instanceof Uint8Array?{path:f,data:x}:f)}))}}else o.externalData!==void 0&&(l=o.externalData.map(async p=>{if(typeof p.data=="string"){let f=await qi(t,p.data,!0,s);return{...p,data:f}}return p}));return Promise.all(l)}async function Pz(t,e,r,s=!1){let n=r.config?.["transformers.js_config"]??{},o=Wu(r.device??n.device,e,{warn:S=>Q.info(S)}),a=vA(o),i=n.device_config??{};i.hasOwnProperty(o)&&(n={...n,...i[o]});let l=Vu(r.dtype??n.dtype,e,o,{configDtype:n.dtype,warn:S=>Q.info(S)});if(tl.hasOwnProperty(l)){if(o==="webgpu"&&!ge.IS_NODE_ENV&&l===_t.fp16&&!await SA())throw new Error(`The device (${o}) does not support fp16.`)}else throw new Error(`Invalid dtype: ${l}. Should be one of: ${Object.keys(_t).join(", ")}`);let u=n.kv_cache_dtype,p=u?typeof u=="string"?u:u[l]??"float32":void 0;if(p&&!["float32","float16"].includes(p))throw new Error(`Invalid kv_cache_dtype: ${p}. Should be one of: float32, float16`);let f=tl[l],m={...r.session_options};m.executionProviders??=a;let h=n.free_dimension_overrides;h?m.freeDimensionOverrides??=h:o.startsWith("webnn")&&!m.freeDimensionOverrides&&Q.warn(`WebNN does not currently support dynamic shapes and requires 'free_dimension_overrides' to be set in config.json, preferably as a field within config["transformers.js_config"]["device_config"]["${o}"]. When 'free_dimension_overrides' is not set, you may experience significant performance degradation.`);let w=QA(t,e,r,f),x=r.use_external_data_format??n.use_external_data_format,k=await JA(t,e,f,r,x,m);if(k.length>0&&!ge.IS_NODE_ENV&&(m.externalData=k),s&&o==="webgpu"&&u!==!1){let S=gf(r.config,{prefix:"present"});if(Object.keys(S).length>0&&!el()){let T={};for(let P in S)T[P]="gpu-buffer";m.preferredOutputLocation=T}}return{buffer_or_path:await w,session_options:m,session_config:{dtype:l,kv_cache_dtype:p,device:o}}}async function At(t,e,r,s=void 0){return Object.fromEntries(await Promise.all(Object.keys(e).map(async n=>{let{buffer_or_path:o,session_options:a,session_config:i}=await Pz(t,e[n],r,n===s),l=await ju(o,a,i);return[n,l]})))}function ZA(t){for(let e in t)qu(t[e])?t[e]=new D(t[e]):typeof t[e]=="object"&&ZA(t[e]);return t}async function ue(t,e){let r=zz(t,e);try{let s=Object.fromEntries(Object.entries(r).map(([o,a])=>{let i=a.ort_tensor;return ge.IS_NODE_ENV&&typeof Float16Array<"u"&&i.cpuData instanceof Float16Array&&(i.cpuData=new Uint16Array(i.cpuData.buffer)),[o,i]})),n=await Gu(t,s);return ZA(n)}catch(s){let n=Object.fromEntries(Object.entries(r).map(([o,a])=>{let i={type:a.type,dims:a.dims,location:a.location};return i.location!=="gpu-buffer"&&(i.data=a.data),[o,i]}));throw Q.error(`An error occurred during model execution: "${s}".`),Q.error("Inputs given to model:",n),s}}function zz(t,e){let r=Object.create(null),s=[];for(let a of t.inputNames){let i=e[a];if(!(i instanceof D)){s.push(a);continue}r[a]=el()?i.clone():i}if(s.length>0)throw new Error(`An error occurred during model execution: "Missing the following inputs: ${s.join(", ")}.`);let n=Object.keys(e).length,o=t.inputNames.length;if(n>o){let a=Object.keys(e).filter(i=>!t.inputNames.includes(i));Q.warn(`WARNING: Too many inputs were provided (${n} > ${o}). The following inputs will be ignored: "${a.join(", ")}".`)}return r}var Re=class{};var G=class extends Re{constructor({logits:e,...r}){super(),this.logits=e;let s=Object.values(r);s.length>0&&(this.attentions=s)}},he=class extends Re{constructor({logits:e}){super(),this.logits=e}},we=class extends Re{constructor({logits:e}){super(),this.logits=e}},Ae=class extends Re{constructor({start_logits:e,end_logits:r}){super(),this.start_logits=e,this.end_logits=r}},xt=class extends Re{constructor({logits:e}){super(),this.logits=e}};var wf=class extends Re{constructor({alphas:e}){super(),this.alphas=e}};var Ut=class extends Ze{_call(e,r){throw Error("`_call` should be implemented in a subclass")}},Xn=class extends Ze{_call(e,r){throw Error("`_call` should be implemented in a subclass")}},is=class extends Ze{constructor(){super(),this.processors=[]}push(e){this.processors.push(e)}extend(e){this.processors.push(...e)}_call(e,r){let s=r;for(let n of this.processors)s=n(e,s);return s}[Symbol.iterator](){return this.processors.values()}},Tl=class extends Ut{constructor(e){super(),this.bos_token_id=e}_call(e,r){for(let s=0;s<e.length;++s)if(e[s].length===1){let n=r[s].data;n.fill(-1/0),n[this.bos_token_id]=0}return r}},Sl=class extends Ut{constructor(e,r){super(),this.max_length=e,this.eos_token_id=Array.isArray(r)?r:[r]}_call(e,r){for(let s=0;s<e.length;++s)if(e[s].length===this.max_length-1){let n=r[s].data;n.fill(-1/0);for(let o of this.eos_token_id)n[o]=0}return r}},Ws=class extends Ut{constructor(e,r){super(),this.begin_suppress_tokens=e,this.begin_index=r}_call(e,r){for(let s=0;s<e.length;++s)if(e[s].length===this.begin_index){let n=r[s].data;for(let o of this.begin_suppress_tokens)n[o]=-1/0}return r}},Ol=class extends Ut{constructor(e,r){super(),this.eos_token_id=Array.isArray(e.eos_token_id)?e.eos_token_id[0]:e.eos_token_id,this.no_timestamps_token_id=e.no_timestamps_token_id,this.timestamp_begin=this.no_timestamps_token_id+1,this.begin_index=r.length,r.at(-1)===this.no_timestamps_token_id&&(this.begin_index-=1),this.max_initial_timestamp_index=e.max_initial_timestamp_index}_call(e,r){for(let s=0;s<e.length;++s){let n=r[s].data;if(n[this.no_timestamps_token_id]=-1/0,e[s].length===this.begin_index-1){n.fill(-1/0),n[this.timestamp_begin]=0;continue}let o=e[s].slice(this.begin_index),a=o.length>=1&&o[o.length-1]>=this.timestamp_begin,i=o.length<2||o[o.length-2]>=this.timestamp_begin;if(a&&(i?n.subarray(this.timestamp_begin).fill(-1/0):n.subarray(0,this.eos_token_id).fill(-1/0)),e[s].length===this.begin_index&&this.max_initial_timestamp_index!==null){let f=this.timestamp_begin+this.max_initial_timestamp_index;n.subarray(f+1).fill(-1/0)}let l=Ou(n),u=Math.log(l.subarray(this.timestamp_begin).map(Math.exp).reduce((f,m)=>f+m)),p=Se(l.subarray(0,this.timestamp_begin))[0];u>p&&n.subarray(0,this.timestamp_begin).fill(-1/0)}return r}},Il=class extends Ut{constructor(e){super(),this.no_repeat_ngram_size=e}getNgrams(e){let r=e.length,s=[];for(let o=0;o<r+1-this.no_repeat_ngram_size;++o){let a=[];for(let i=0;i<this.no_repeat_ngram_size;++i)a.push(e[o+i]);s.push(a.map(Number))}let n=new Map;for(let o of s){let a=o.slice(0,o.length-1),i=JSON.stringify(a),l=n.get(i)??[];l.push(o[o.length-1]),n.set(i,l)}return n}getGeneratedNgrams(e,r){let s=r.slice(r.length+1-this.no_repeat_ngram_size,r.length);return e.get(JSON.stringify(s.map(Number)))??[]}calcBannedNgramTokens(e){let r=[];if(e.length+1<this.no_repeat_ngram_size)return r;{let s=this.getNgrams(e);return this.getGeneratedNgrams(s,e)}}_call(e,r){for(let s=0;s<e.length;++s){let n=r[s].data,o=this.calcBannedNgramTokens(e[s]);for(let a of o)n[a]=-1/0}return r}},Cl=class extends Ut{constructor(e){super(),this.penalty=e}_call(e,r){for(let s=0;s<e.length;++s){let n=r[s].data;for(let o of new Set(e[s])){let a=Number(o);n[a]<0?n[a]*=this.penalty:n[a]/=this.penalty}}return r}},Pl=class extends Ut{constructor(e,r){super(),this.min_length=e,this.eos_token_id=Array.isArray(r)?r:[r]}_call(e,r){for(let s=0;s<e.length;++s)if(e[s].length<this.min_length){let n=r[s].data;for(let o of this.eos_token_id)n[o]=-1/0}return r}},zl=class extends Ut{constructor(e,r,s){super(),this.prompt_length_to_skip=e,this.min_new_tokens=r,this.eos_token_id=Array.isArray(s)?s:[s]}_call(e,r){for(let s=0;s<e.length;++s)if(e[s].length-this.prompt_length_to_skip<this.min_new_tokens){let o=r[s].data;for(let a of this.eos_token_id)o[a]=-1/0}return r}},Ll=class extends Ut{constructor(e,r){super(),this.bad_words_ids=e,this.eos_token_id=Array.isArray(r)?r:[r]}_call(e,r){for(let s=0;s<e.length;++s){let n=r[s].data,o=e[s];for(let a of this.bad_words_ids){if(o.length<a.length-1)continue;let i=!0;for(let l=1;l<=a.length-1;++l)if(a.at(-l-1)!=o.at(-l)){i=!1;break}i&&(n[a.at(-1)]=-1/0)}}return r}},Nl=class extends Ut{constructor(e){if(super(),e<=1)throw new Error(`Require guidance scale >1 to use the classifier free guidance processor, got guidance scale ${e}.`);this.guidance_scale=e}_call(e,r){if(r.dims[0]!==2*e.length)throw new Error(`Logits should have twice the batch size of the input ids, the first half of batches corresponding to the conditional inputs, and the second half of batches corresponding to the unconditional inputs. Got batch size ${r.dims[0]} for the logits and ${e.length} for the input ids.`);let s=e.length,n=r.slice([0,s],null),o=r.slice([s,r.dims[0]],null);for(let a=0;a<o.data.length;++a)o.data[a]+=(n.data[a]-o.data[a])*this.guidance_scale;return o}},$l=class extends Xn{constructor(e){if(super(),typeof e!="number"||e<=0){let r=`\`temperature\` (=${e}) must be a strictly positive float, otherwise your next token scores will be invalid.`;e===0&&(r+=" If you're looking for greedy decoding strategies, set `do_sample=false`.")}this.temperature=e}_call(e,r){let s=r.data;for(let n=0;n<s.length;++n)s[n]/=this.temperature;return r}},yb=class extends Xn{constructor(e,{filter_value:r=-1/0,min_tokens_to_keep:s=1}={}){if(super(),e<0||e>1)throw new Error(`\`top_p\` must be a float > 0 and < 1, but is ${e}`);if(!Number.isInteger(s)||s<1)throw new Error(`\`min_tokens_to_keep\` must be a positive integer, but is ${s}`);this.top_p=e,this.filter_value=r,this.min_tokens_to_keep=s}},bb=class extends Xn{constructor(e,{filter_value:r=-1/0,min_tokens_to_keep:s=1}={}){if(super(),!Number.isInteger(e)||e<0)throw new Error(`\`top_k\` must be a positive integer, but is ${e}`);this.top_k=Math.max(e,s),this.filter_value=r}};var Kn=class{max_length=20;max_new_tokens=null;min_length=0;min_new_tokens=null;early_stopping=!1;max_time=null;do_sample=!1;num_beams=1;num_beam_groups=1;penalty_alpha=null;use_cache=!0;temperature=1;top_k=50;top_p=1;typical_p=1;epsilon_cutoff=0;eta_cutoff=0;diversity_penalty=0;repetition_penalty=1;encoder_repetition_penalty=1;length_penalty=1;no_repeat_ngram_size=0;bad_words_ids=null;force_words_ids=null;renormalize_logits=!1;constraints=null;forced_bos_token_id=null;forced_eos_token_id=null;remove_invalid_values=!1;exponential_decay_length_penalty=null;suppress_tokens=null;streamer=null;begin_suppress_tokens=null;forced_decoder_ids=null;guidance_scale=null;num_return_sequences=1;output_attentions=!1;output_hidden_states=!1;output_scores=!1;return_dict_in_generate=!1;pad_token_id=null;bos_token_id=null;eos_token_id=null;encoder_no_repeat_ngram_size=0;decoder_start_token_id=null;generation_kwargs={};constructor(e){Object.assign(this,ot(e,Object.getOwnPropertyNames(this)))}};var Vs=class extends Ze{_call(e,r){throw Error("StoppingCriteria needs to be subclassed")}},Rl=class t extends Ze{constructor(){super(),this.criteria=[]}push(e){this.criteria.push(e)}extend(e){e instanceof t?e=e.criteria:e instanceof Vs&&(e=[e]),this.criteria.push(...e)}_call(e,r){let s=new Array(e.length).fill(!1);for(let n of this.criteria){let o=n(e,r);for(let a=0;a<s.length;++a)s[a]||=o[a]}return s}[Symbol.iterator](){return this.criteria.values()}},Dl=class extends Vs{constructor(e,r=null){super(),this.max_length=e,this.max_position_embeddings=r}_call(e){return e.map(r=>r.length>=this.max_length)}},Ul=class extends Vs{constructor(e){super(),Array.isArray(e)||(e=[e]),this.eos_token_id=e}_call(e,r){return e.map(s=>{let n=s.at(-1);return this.eos_token_id.some(o=>n==o)})}},vb=class extends Vs{constructor(){super(),this.interrupted=!1}interrupt(){this.interrupted=!0}reset(){this.interrupted=!1}_call(e,r){return new Array(e.length).fill(this.interrupted)}};var Hs=class extends Ze{constructor(e){super(),this.generation_config=e}async _call(e){return this.sample(e)}async sample(e){throw Error("sample should be implemented in subclasses.")}getLogits(e,r){let s=e.dims.at(-1),n=e.data;if(r===-1)n=n.slice(-s);else{let o=r*s;n=n.slice(o,o+s)}return n}randomSelect(e){return IA(e)}static getSampler(e){if(e.do_sample)return new Eb(e);if(e.num_beams>1)return new Ab(e);if(e.num_return_sequences>1)throw Error(`num_return_sequences has to be 1 when doing greedy search, but is ${e.num_return_sequences}.`);return new kb(e)}},kb=class extends Hs{async sample(e){let r=Se(e.data)[1];return[[BigInt(r),0]]}},Eb=class extends Hs{async sample(e){let r=e.dims.at(-1);this.generation_config.top_k>0&&(r=Math.min(this.generation_config.top_k,r));let[s,n]=await Wt(e,r),o=Ie(s.data);return Array.from({length:this.generation_config.num_beams},()=>{let a=this.randomSelect(o);return[n.data[a],Math.log(o[a])]})}},Ab=class extends Hs{async sample(e){let r=e.dims.at(-1);this.generation_config.top_k>0&&(r=Math.min(this.generation_config.top_k,r));let[s,n]=await Wt(e,r),o=Ie(s.data);return Array.from({length:this.generation_config.num_beams},(a,i)=>[n.data[i],Math.log(o[i])])}};var Bl=null;function t2(t){Bl=t}function Mb(t){if(t instanceof D)return t;if(t.length===0)throw Error("items must be non-empty");if(Array.isArray(t[0])){if(t.some(e=>e.length!==t[0].length))throw Error("Unable to create tensor, you should probably activate truncation and/or padding with 'padding=True' and/or 'truncation=True' to have batched tensors with the same length.");return new D("int64",BigInt64Array.from(t.flat().map(e=>BigInt(e))),[t.length,t[0].length])}else return new D("int64",BigInt64Array.from(t.map(e=>BigInt(e))),[1,t.length])}function Tb(t){return new D("bool",[t],[1])}var j={EncoderOnly:0,EncoderDecoder:1,Seq2Seq:2,Vision2Seq:3,DecoderOnly:4,DecoderOnlyWithoutHead:5,MaskGeneration:6,ImageTextToText:7,Musicgen:8,MultiModality:9,Phi3V:10,AudioTextToText:11,AutoEncoder:12,ImageAudioTextToText:13,Supertonic:14,Chatterbox:15},e2={[j.DecoderOnly]:{can_generate:!0,forward:Ct,prepare_inputs:Fl},[j.DecoderOnlyWithoutHead]:{can_generate:!1,forward:Ct,prepare_inputs:Fl},[j.Seq2Seq]:{can_generate:!0,forward:xf,prepare_inputs:jl},[j.Vision2Seq]:{can_generate:!0,forward:xf,prepare_inputs:jl},[j.Musicgen]:{can_generate:!0,forward:xf},[j.EncoderDecoder]:{can_generate:!1,forward:xf},[j.ImageTextToText]:{can_generate:!0,forward:$z,prepare_inputs:yf},[j.AudioTextToText]:{can_generate:!0,forward:Nz,prepare_inputs:yf},[j.Phi3V]:{can_generate:!0,prepare_inputs:yf},[j.ImageAudioTextToText]:{can_generate:!0,prepare_inputs:yf},[j.MultiModality]:{can_generate:!0},[j.AutoEncoder]:{can_generate:!1,forward:Lz},[j.Chatterbox]:{can_generate:!0,forward:Vt},default:{can_generate:!1,forward:Vt}},_r=new Map,bf=new Map,Xs=new Map,y=class extends Ze{main_input_name="input_ids";forward_params=["input_ids","attention_mask"];_return_dict_in_generate_keys=null;constructor(e,r,s){super(),this.config=e,this.sessions=r,this.configs=s;let n=Xs.get(this.constructor),o=_r.get(n),a=e2[o]??e2.default;this.can_generate=a.can_generate,this._forward=a.forward,this._prepare_inputs_for_generation=a.prepare_inputs,this.can_generate&&this.forward_params.push("past_key_values"),this.custom_config=this.config["transformers.js_config"]??{}}async dispose(){let e=[];for(let r of Object.values(this.sessions))e.push(r.release?.());return await Promise.all(e)}static async from_pretrained(e,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main",model_file_name:i=null,subfolder:l="onnx",device:u=null,dtype:p=null,use_external_data_format:f=null,session_options:m={}}={}){let h={progress_callback:r,config:s,cache_dir:n,local_files_only:o,revision:a,model_file_name:i,subfolder:l,device:u,dtype:p,use_external_data_format:f,session_options:m},w=Xs.get(this),x=_r.get(w);s=h.config=await hr.from_pretrained(e,h);let k;if(x===j.DecoderOnly)k=await Promise.all([At(e,{model:h.model_file_name??"model"},h,"model"),Ir(e,{generation_config:"generation_config.json"},h)]);else if(x===j.Seq2Seq||x===j.Vision2Seq)k=await Promise.all([At(e,{model:"encoder_model",decoder_model_merged:"decoder_model_merged"},h,"decoder_model_merged"),Ir(e,{generation_config:"generation_config.json"},h)]);else if(x===j.MaskGeneration)k=await Promise.all([At(e,{model:"vision_encoder",prompt_encoder_mask_decoder:"prompt_encoder_mask_decoder"},h)]);else if(x===j.EncoderDecoder)k=await Promise.all([At(e,{model:"encoder_model",decoder_model_merged:"decoder_model_merged"},h,"decoder_model_merged")]);else if(x===j.ImageTextToText){let E={embed_tokens:"embed_tokens",vision_encoder:"vision_encoder",decoder_model_merged:"decoder_model_merged"};s.is_encoder_decoder&&(E.model="encoder_model"),k=await Promise.all([At(e,E,h,"decoder_model_merged"),Ir(e,{generation_config:"generation_config.json"},h)])}else if(x===j.AudioTextToText){let E={embed_tokens:"embed_tokens",audio_encoder:"audio_encoder",decoder_model_merged:"decoder_model_merged"};k=await Promise.all([At(e,E,h,"decoder_model_merged"),Ir(e,{generation_config:"generation_config.json"},h)])}else if(x===j.ImageAudioTextToText){let E={embed_tokens:"embed_tokens",audio_encoder:"audio_encoder",vision_encoder:"vision_encoder",decoder_model_merged:"decoder_model_merged"};k=await Promise.all([At(e,E,h),Ir(e,{generation_config:"generation_config.json"},h)])}else if(x===j.Musicgen)k=await Promise.all([At(e,{model:"text_encoder",decoder_model_merged:"decoder_model_merged",encodec_decode:"encodec_decode"},h,"decoder_model_merged"),Ir(e,{generation_config:"generation_config.json"},h)]);else if(x===j.MultiModality)k=await Promise.all([At(e,{prepare_inputs_embeds:"prepare_inputs_embeds",model:"language_model",lm_head:"lm_head",gen_head:"gen_head",gen_img_embeds:"gen_img_embeds",image_decode:"image_decode"},h,"model"),Ir(e,{generation_config:"generation_config.json"},h)]);else if(x===j.Phi3V)k=await Promise.all([At(e,{prepare_inputs_embeds:"prepare_inputs_embeds",model:"model",vision_encoder:"vision_encoder"},h,"model"),Ir(e,{generation_config:"generation_config.json"},h)]);else if(x===j.Chatterbox)k=await Promise.all([At(e,{embed_tokens:"embed_tokens",speech_encoder:"speech_encoder",model:"language_model",conditional_decoder:"conditional_decoder"},h,"model"),Ir(e,{generation_config:"generation_config.json"},h)]);else if(x===j.AutoEncoder)k=await Promise.all([At(e,{encoder_model:"encoder_model",decoder_model:"decoder_model"},h)]);else if(x===j.Supertonic)k=await Promise.all([At(e,{text_encoder:"text_encoder",latent_denoiser:"latent_denoiser",voice_decoder:"voice_decoder"},h)]);else{if(x===void 0){let E=w??s?.model_type;E!=="custom"&&Q.warn(`Model type for '${E}' not found, assuming encoder-only architecture. Please report this at ${ns}.`)}k=await Promise.all([At(e,{model:h.model_file_name??"model"},h)])}return new this(s,...k)}async _call(e){return await this.forward(e)}async forward(e){return await this._forward(this,e)}get generation_config(){return this.configs?.generation_config??null}_get_logits_processor(e,r,s=null){let n=new is;if(e.repetition_penalty!==null&&e.repetition_penalty!==1&&n.push(new Cl(e.repetition_penalty)),e.no_repeat_ngram_size!==null&&e.no_repeat_ngram_size>0&&n.push(new Il(e.no_repeat_ngram_size)),e.bad_words_ids!==null&&n.push(new Ll(e.bad_words_ids,e.eos_token_id)),e.min_length!==null&&e.eos_token_id!==null&&e.min_length>0&&n.push(new Pl(e.min_length,e.eos_token_id)),e.min_new_tokens!==null&&e.eos_token_id!==null&&e.min_new_tokens>0&&n.push(new zl(r,e.min_new_tokens,e.eos_token_id)),e.forced_bos_token_id!==null&&n.push(new Tl(e.forced_bos_token_id)),e.forced_eos_token_id!==null&&n.push(new Sl(e.max_length,e.forced_eos_token_id)),e.begin_suppress_tokens!==null){let o=r>1||e.forced_bos_token_id===null?r:r+1;n.push(new Ws(e.begin_suppress_tokens,o))}return e.guidance_scale!==null&&e.guidance_scale>1&&n.push(new Nl(e.guidance_scale)),e.temperature===0&&e.do_sample&&(Q.warn("`do_sample` changed to false because `temperature: 0` implies greedy sampling (always selecting the most likely token), which is incompatible with `do_sample: true`."),e.do_sample=!1),e.do_sample&&e.temperature!==null&&e.temperature!==1&&n.push(new $l(e.temperature)),s!==null&&n.extend(s),n}_prepare_generation_config(e,r,s=Kn){let n={...this.config};for(let a of["decoder","generator","text_config"])a in n&&Object.assign(n,n[a]);let o=new s(n);return Object.assign(o,this.generation_config??{}),e&&Object.assign(o,e),r&&Object.assign(o,ot(r,Object.getOwnPropertyNames(o))),o}_get_stopping_criteria(e,r=null){let s=new Rl;return e.max_length!==null&&s.push(new Dl(e.max_length,this.config.max_position_embeddings??null)),e.eos_token_id!==null&&s.push(new Ul(e.eos_token_id)),r&&s.extend(r),s}_validate_model_class(){if(!this.can_generate){let e=[Bl.MODEL_FOR_CAUSAL_LM_MAPPING_NAMES,Bl.MODEL_FOR_VISION_2_SEQ_MAPPING_NAMES,Bl.MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING_NAMES,Bl.MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING_NAMES].filter(Boolean),r=Xs.get(this.constructor),s=new Set,n=this.config.model_type;for(let a of e){let i=a?.get(n);i&&s.add(i)}let o=`The current model class (${r}) is not compatible with \`.generate()\`, as it doesn't have a language model head.`;throw s.size>0&&(o+=` Please use the following class instead: ${[...s].join(", ")}`),Error(o)}}prepare_inputs_for_generation(...e){if(!this._prepare_inputs_for_generation)throw new Error("prepare_inputs_for_generation is not implemented for this model.");return this._prepare_inputs_for_generation(this,...e)}_update_model_kwargs_for_generation({generated_input_ids:e,outputs:r,model_inputs:s,is_encoder_decoder:n}){return s.past_key_values=this.getPastKeyValues(r,s.past_key_values),s.input_ids=new D("int64",e.flat(),[e.length,1]),n?"decoder_attention_mask"in s:s.attention_mask=Ee([s.attention_mask,st([s.attention_mask.dims[0],1])],1),s.position_ids=null,s}_prepare_model_inputs({inputs:e,bos_token_id:r,model_kwargs:s}){let n=ot(s,this.forward_params),o=this.main_input_name;if(o in n){if(e)throw new Error("`inputs`: {inputs}` were passed alongside {input_name} which is not allowed. Make sure to either pass {inputs} or {input_name}=...")}else n[o]=e;return{inputs_tensor:n[o],model_inputs:n,model_input_name:o}}async _prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:e,model_inputs:r,model_input_name:s,generation_config:n}){if(this.sessions.model.inputNames.includes("inputs_embeds")&&!r.inputs_embeds&&"_prepare_inputs_embeds"in this){let{input_ids:a,pixel_values:i,attention_mask:l,...u}=r,p=await this._prepare_inputs_embeds(r);r={...u,...ot(p,["inputs_embeds","attention_mask"])}}let{last_hidden_state:o}=await Vt(this,r);if(n.guidance_scale!==null&&n.guidance_scale>1)o=Ee([o,Pn(o,0)],0),"attention_mask"in r&&(r.attention_mask=Ee([r.attention_mask,Ju(r.attention_mask)],0));else if(r.decoder_input_ids){let a=Mb(r.decoder_input_ids).dims[0];if(a!==o.dims[0]){if(o.dims[0]!==1)throw new Error(`The encoder outputs have a different batch size (${o.dims[0]}) than the decoder inputs (${a}).`);o=Ee(Array.from({length:a},()=>o),0)}}return r.encoder_outputs=o,r}_prepare_decoder_input_ids_for_generation({batch_size:e,model_input_name:r,model_kwargs:s,decoder_start_token_id:n,bos_token_id:o,generation_config:a}){let{decoder_input_ids:i,...l}=s;if(!(i instanceof D)){if(i)Array.isArray(i[0])||(i=Array.from({length:e},()=>i));else if(n??=o,this.config.model_type==="musicgen")i=Array.from({length:e*this.config.decoder.num_codebooks},()=>[n]);else if(Array.isArray(n)){if(n.length!==e)throw new Error(`\`decoder_start_token_id\` expcted to have length ${e} but got ${n.length}`);i=n}else i=Array.from({length:e},()=>[n]);i=Mb(i)}return s.decoder_attention_mask=ol(i),{input_ids:i,model_inputs:l}}async generate({inputs:e=null,generation_config:r=null,logits_processor:s=null,stopping_criteria:n=null,streamer:o=null,...a}){this._validate_model_class(),r=this._prepare_generation_config(r,a);let{inputs_tensor:i,model_inputs:l,model_input_name:u}=this._prepare_model_inputs({inputs:e,model_kwargs:a}),p=this.config.is_encoder_decoder;p&&("encoder_outputs"in l||(l=await this._prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:i,model_inputs:l,model_input_name:u,generation_config:r})));let f;p?{input_ids:f,model_inputs:l}=this._prepare_decoder_input_ids_for_generation({batch_size:l[u].dims.at(0),model_input_name:u,model_kwargs:l,decoder_start_token_id:r.decoder_start_token_id,bos_token_id:r.bos_token_id,generation_config:r}):f=l[u];let m=f.dims.at(-1);r.max_new_tokens!==null&&(r.max_length=m+r.max_new_tokens);let h=this._get_logits_processor(r,m,s),w=this._get_stopping_criteria(r,n),x=l[u].dims.at(0),k=Hs.getSampler(r),E=new Array(x).fill(0),A=f.tolist();o&&o.put(A);let S,T={},P={};for(;;){if(l=this.prepare_inputs_for_generation(A,l,r),S=await this.forward(l),r.return_dict_in_generate)if(r.output_attentions){let X=this.getAttentions(S);for(let Y in X)Y in T||(T[Y]=[]),T[Y].push(X[Y])}else this._return_dict_in_generate_keys&&Object.assign(P,ot(S,this._return_dict_in_generate_keys));let F=S.logits.slice(null,-1,null).to("float32"),H=h(A,F),V=[];for(let X=0;X<H.dims.at(0);++X){let Y=H[X],U=await k(Y);for(let[z,ne]of U){let ae=BigInt(z);E[X]+=ne,A[X].push(ae),V.push([ae]);break}}if(o&&o.put(V),w(A).every(X=>X))break;l=this._update_model_kwargs_for_generation({generated_input_ids:V,outputs:S,model_inputs:l,is_encoder_decoder:p})}o&&o.end();let C=this.getPastKeyValues(S,l.past_key_values,!0),v=new D("int64",A.flat(),[A.length,A[0].length]);if(r.return_dict_in_generate)return{sequences:v,past_key_values:C,...T,...P};for(let F of Object.values(S))F.location==="gpu-buffer"&&F.dispose();return v}getPastKeyValues(e,r,s=!1){let n=Object.create(null);for(let o in e)if(o.startsWith("present")){let a=o.replace("present_ssm","past_ssm").replace("present_conv","past_conv").replace("present_recurrent","past_recurrent").replace("present","past_key_values"),i=o.includes("encoder");if(i&&r?n[a]=r[a]:n[a]=e[o],r&&(!i||s)){let l=r[a];l.location==="gpu-buffer"&&l.dispose()}}return n}getAttentions(e){let r={};for(let s of["cross_attentions","encoder_attentions","decoder_attentions"])for(let n in e)n.startsWith(s)&&(s in r||(r[s]=[]),r[s].push(e[n]));return r}addPastKeyValues(e,r){if(r)Object.assign(e,r);else{let s=this.sessions.decoder_model_merged??this.sessions.model,n=(e[this.main_input_name]??e.attention_mask)?.dims?.[0]??1,o=s?.config?.kv_cache_dtype??"float32",a=o==="float16"?Cn.float16:Cn.float32,i=gf(this.config,{batch_size:n});for(let l in i){let u=i[l].reduce((p,f)=>p*f,1);e[l]=new D(o,new a(u),i[l])}}}async encode_image({pixel_values:e}){return(await ue(this.sessions.vision_encoder,{pixel_values:e})).image_features}async encode_text({input_ids:e}){return(await ue(this.sessions.embed_tokens,{input_ids:e})).inputs_embeds}async encode_audio({audio_values:e}){return(await ue(this.sessions.audio_encoder,{audio_values:e})).audio_features}};async function xf(t,e){let{encoder_outputs:r,input_ids:s,decoder_input_ids:n,...o}=e;if(!r){let a=ot(e,t.sessions.model.inputNames);r=(await Vt(t,a)).last_hidden_state}return o.input_ids=n,o.encoder_hidden_states=r,t.sessions.decoder_model_merged.inputNames.includes("encoder_attention_mask")&&(o.encoder_attention_mask=e.attention_mask),await Ct(t,o,!0)}async function Vt(t,e){let r=t.sessions.model,s=ot(e,r.inputNames);if(r.inputNames.includes("inputs_embeds")&&!s.inputs_embeds){if(!e.input_ids)throw new Error("Both `input_ids` and `inputs_embeds` are missing in the model inputs.");s.inputs_embeds=await t.encode_text({input_ids:e.input_ids})}if(r.inputNames.includes("token_type_ids")&&!s.token_type_ids){if(!s.input_ids)throw new Error("Both `input_ids` and `token_type_ids` are missing in the model inputs.");s.token_type_ids=Ju(s.input_ids)}if(r.inputNames.includes("pixel_mask")&&!s.pixel_mask){if(!s.pixel_values)throw new Error("Both `pixel_values` and `pixel_mask` are missing in the model inputs.");let n=s.pixel_values.dims;s.pixel_mask=st([n[0],n[2],n[3]])}return await ue(r,s)}async function Lz(t,e){let r=await t.encode(e);return await t.decode(r)}async function Ct(t,e,r=!1){let s=t.sessions[r?"decoder_model_merged":"model"],{past_key_values:n,...o}=e;if(s.inputNames.includes("use_cache_branch")&&(o.use_cache_branch=Tb(!!n)),s.inputNames.includes("position_ids")&&o.attention_mask&&!o.position_ids){let i=["paligemma","gemma3_text","gemma3"].includes(t.config.model_type)?1:0;o.position_ids=Rz(o,n,i)}t.addPastKeyValues(o,n);let a=ot(o,s.inputNames);return await ue(s,a)}async function r2(t,{encode_function:e,merge_function:r,modality_input_name:s,modality_output_name:n,input_ids:o=null,attention_mask:a=null,position_ids:i=null,inputs_embeds:l=null,past_key_values:u=null,generation_config:p=null,logits_processor:f=null,...m}){let h=m[s];if(!l){if(l=await t.encode_text({input_ids:o,...m}),h&&o.dims[1]!==1){let x=await e({[s]:h,...m});({inputs_embeds:l,attention_mask:a}=r({[n]:x,inputs_embeds:l,input_ids:o,attention_mask:a}))}else if(u&&h&&o.dims[1]===1){let x=o.dims[1],k=Object.values(u)[0].dims.at(-2);a=Ee([st([o.dims[0],k]),a.slice(null,[a.dims[1]-x,a.dims[1]])],1)}}if(!i&&["qwen2_vl","qwen2_5_vl_text","qwen3_vl_text","qwen3_5_text","qwen3_5_moe_text"].includes(t.config.model_type)){let{image_grid_thw:x,video_grid_thw:k}=m;[i]=t.get_rope_index(o,x,k,a)}return await Ct(t,{inputs_embeds:l,past_key_values:u,attention_mask:a,position_ids:i,generation_config:p,logits_processor:f},!0)}async function Nz(t,e){return await r2(t,{...e,modality_input_name:"audio_values",modality_output_name:"audio_features",encode_function:t.encode_audio.bind(t),merge_function:t._merge_input_ids_with_audio_features.bind(t)})}async function $z(t,e){return await r2(t,{...e,modality_input_name:"pixel_values",modality_output_name:"image_features",encode_function:t.encode_image.bind(t),merge_function:t._merge_input_ids_with_image_features.bind(t)})}function Sb(t,e=0){let[r,s]=t.dims,n=t.data,o=new BigInt64Array(n.length);for(let a=0;a<r;++a){let i=a*s,l=BigInt(e);for(let u=0;u<s;++u){let p=i+u;n[p]===0n?o[p]=BigInt(1):(o[p]=l,l+=n[p])}}return{data:o,dims:t.dims}}function Rz(t,e=null,r=0){let{input_ids:s,inputs_embeds:n,attention_mask:o}=t,{data:a,dims:i}=Sb(o,r),l=new D("int64",a,i);if(e){let u=-(s??n).dims.at(1);l=l.slice(null,[u,null])}return l}function Fl(t,e,r,s){let n=r.past_key_values?Object.values(r.past_key_values)[0].dims.at(-2):0;if(!r.attention_mask){let o;for(let a of["input_ids","inputs_embeds","position_ids"])if(r[a]){o=r[a].dims;break}if(!o)throw new Error("attention_mask is not provided, and unable to infer its shape from model inputs.");r.attention_mask=st([o[0],n+o[1]])}if(r.past_key_values){let{input_ids:o,attention_mask:a}=r;a&&a.dims[1]>o.dims[1]||n<o.dims[1]&&(r.input_ids=o.slice(null,[n,null]))}return r}function jl(t,e,r,s){return r.past_key_values&&(e=e.map(n=>[n.at(-1)])),{...r,decoder_input_ids:Mb(e)}}function yf(t,...e){return t.config.is_encoder_decoder?jl(t,...e):Fl(t,...e)}function s2({modality_token_id:t,inputs_embeds:e,modality_features:r,input_ids:s,attention_mask:n}){let o=s.tolist().map(u=>u.reduce((p,f,m)=>(f==t&&p.push(m),p),[])),a=o.reduce((u,p)=>u+p.length,0),i=r.dims[0];if(a!==i)throw new Error(`Number of tokens and features do not match: tokens: ${a}, features ${i}`);let l=0;for(let u=0;u<o.length;++u){let p=o[u],f=e[u];for(let m=0;m<p.length;++m)f[p[m]].data.set(r[l++].data)}return{inputs_embeds:e,attention_mask:n}}function gr({image_token_id:t,inputs_embeds:e,image_features:r,input_ids:s,attention_mask:n}){return s2({modality_token_id:t,inputs_embeds:e,modality_features:r,input_ids:s,attention_mask:n})}function vf({audio_token_id:t,inputs_embeds:e,audio_features:r,input_ids:s,attention_mask:n}){return s2({modality_token_id:t,inputs_embeds:e,modality_features:r,input_ids:s,attention_mask:n})}async function Ir(t,e,r){return Object.fromEntries(await Promise.all(Object.keys(e).map(async s=>{let n=await ut(t,e[s],!1,r);return[s,n]})))}var Fc={};ks(Fc,{ASTForAudioClassification:()=>Lf,ASTModel:()=>zf,ASTPreTrainedModel:()=>Zn,AfmoeForCausalLM:()=>If,AfmoeModel:()=>Of,AfmoePreTrainedModel:()=>Qn,AlbertForMaskedLM:()=>Mf,AlbertForQuestionAnswering:()=>Af,AlbertForSequenceClassification:()=>Ef,AlbertModel:()=>kf,AlbertPreTrainedModel:()=>ls,ApertusForCausalLM:()=>Sf,ApertusModel:()=>Tf,ApertusPreTrainedModel:()=>Yn,ArceeForCausalLM:()=>Pf,ArceeModel:()=>Cf,ArceePreTrainedModel:()=>Jn,BartForConditionalGeneration:()=>$f,BartForSequenceClassification:()=>Rf,BartModel:()=>Nf,BartPretrainedModel:()=>Ks,BeitForImageClassification:()=>Uf,BeitModel:()=>Df,BeitPreTrainedModel:()=>eo,BertForMaskedLM:()=>Ff,BertForQuestionAnswering:()=>qf,BertForSequenceClassification:()=>jf,BertForTokenClassification:()=>Gf,BertModel:()=>Bf,BertPreTrainedModel:()=>Cr,BlenderbotForConditionalGeneration:()=>Vf,BlenderbotModel:()=>Wf,BlenderbotPreTrainedModel:()=>to,BlenderbotSmallForConditionalGeneration:()=>Xf,BlenderbotSmallModel:()=>Hf,BlenderbotSmallPreTrainedModel:()=>ro,BloomForCausalLM:()=>Yf,BloomModel:()=>Kf,BloomPreTrainedModel:()=>so,CLIPModel:()=>nm,CLIPPreTrainedModel:()=>nr,CLIPSegForImageSegmentation:()=>cm,CLIPSegModel:()=>lm,CLIPSegPreTrainedModel:()=>lo,CLIPTextModel:()=>om,CLIPTextModelWithProjection:()=>io,CLIPVisionModel:()=>am,CLIPVisionModelWithProjection:()=>im,CamembertForMaskedLM:()=>Jf,CamembertForQuestionAnswering:()=>tm,CamembertForSequenceClassification:()=>Zf,CamembertForTokenClassification:()=>em,CamembertModel:()=>Qf,CamembertPreTrainedModel:()=>Pr,ChatterboxModel:()=>no,ChatterboxPreTrainedModel:()=>Gl,ChineseCLIPModel:()=>rm,ChineseCLIPPreTrainedModel:()=>ql,ClapAudioModelWithProjection:()=>ao,ClapModel:()=>sm,ClapPreTrainedModel:()=>Ys,ClapTextModelWithProjection:()=>oo,CodeGenForCausalLM:()=>pm,CodeGenModel:()=>um,CodeGenPreTrainedModel:()=>co,Cohere2ForCausalLM:()=>hm,Cohere2Model:()=>mm,Cohere2PreTrainedModel:()=>po,CohereForCausalLM:()=>fm,CohereModel:()=>dm,CoherePreTrainedModel:()=>uo,ConvBertForMaskedLM:()=>gm,ConvBertForQuestionAnswering:()=>ym,ConvBertForSequenceClassification:()=>wm,ConvBertForTokenClassification:()=>xm,ConvBertModel:()=>_m,ConvBertPreTrainedModel:()=>zr,ConvNextForImageClassification:()=>vm,ConvNextModel:()=>bm,ConvNextPreTrainedModel:()=>fo,ConvNextV2ForImageClassification:()=>Em,ConvNextV2Model:()=>km,ConvNextV2PreTrainedModel:()=>mo,DFineForObjectDetection:()=>Sm,DFineModel:()=>Tm,DFinePreTrainedModel:()=>_o,DINOv3ConvNextModel:()=>Jm,DINOv3ConvNextPreTrainedModel:()=>Ql,DINOv3ViTModel:()=>Zm,DINOv3ViTPreTrainedModel:()=>Jl,DPTForDepthEstimation:()=>ih,DPTModel:()=>ah,DPTPreTrainedModel:()=>vo,DacDecoderModel:()=>wo,DacDecoderOutput:()=>Vl,DacEncoderModel:()=>go,DacEncoderOutput:()=>Wl,DacModel:()=>Om,DacPreTrainedModel:()=>Qs,DebertaForMaskedLM:()=>Cm,DebertaForQuestionAnswering:()=>Lm,DebertaForSequenceClassification:()=>Pm,DebertaForTokenClassification:()=>zm,DebertaModel:()=>Im,DebertaPreTrainedModel:()=>Lr,DebertaV2ForMaskedLM:()=>$m,DebertaV2ForQuestionAnswering:()=>Um,DebertaV2ForSequenceClassification:()=>Rm,DebertaV2ForTokenClassification:()=>Dm,DebertaV2Model:()=>Nm,DebertaV2PreTrainedModel:()=>Nr,DecisionTransformerModel:()=>Bm,DecisionTransformerPreTrainedModel:()=>Hl,DeiTForImageClassification:()=>jm,DeiTModel:()=>Fm,DeiTPreTrainedModel:()=>xo,DepthAnythingForDepthEstimation:()=>Gm,DepthAnythingPreTrainedModel:()=>Xl,DepthProForDepthEstimation:()=>qm,DepthProPreTrainedModel:()=>Kl,DetrForObjectDetection:()=>Vm,DetrForSegmentation:()=>Hm,DetrModel:()=>Wm,DetrObjectDetectionOutput:()=>Zs,DetrPreTrainedModel:()=>Js,DetrSegmentationOutput:()=>Yl,Dinov2ForImageClassification:()=>Km,Dinov2Model:()=>Xm,Dinov2PreTrainedModel:()=>yo,Dinov2WithRegistersForImageClassification:()=>Qm,Dinov2WithRegistersModel:()=>Ym,Dinov2WithRegistersPreTrainedModel:()=>bo,DistilBertForMaskedLM:()=>nh,DistilBertForQuestionAnswering:()=>sh,DistilBertForSequenceClassification:()=>th,DistilBertForTokenClassification:()=>rh,DistilBertModel:()=>eh,DistilBertPreTrainedModel:()=>$r,DonutSwinModel:()=>oh,DonutSwinPreTrainedModel:()=>Zl,EdgeTamModel:()=>qw,EfficientNetForImageClassification:()=>ch,EfficientNetModel:()=>lh,EfficientNetPreTrainedModel:()=>ko,ElectraForMaskedLM:()=>ph,ElectraForQuestionAnswering:()=>mh,ElectraForSequenceClassification:()=>dh,ElectraForTokenClassification:()=>fh,ElectraModel:()=>uh,ElectraPreTrainedModel:()=>Rr,Ernie4_5ForCausalLM:()=>_h,Ernie4_5Model:()=>hh,Ernie4_5PretrainedModel:()=>Eo,EsmForMaskedLM:()=>wh,EsmForSequenceClassification:()=>xh,EsmForTokenClassification:()=>yh,EsmModel:()=>gh,EsmPreTrainedModel:()=>cs,ExaoneForCausalLM:()=>vh,ExaoneModel:()=>bh,ExaonePreTrainedModel:()=>Ao,FalconForCausalLM:()=>Eh,FalconH1ForCausalLM:()=>Mh,FalconH1Model:()=>Ah,FalconH1PreTrainedModel:()=>To,FalconModel:()=>kh,FalconPreTrainedModel:()=>Mo,FastViTForImageClassification:()=>Sh,FastViTModel:()=>Th,FastViTPreTrainedModel:()=>So,Florence2ForConditionalGeneration:()=>Oh,Florence2PreTrainedModel:()=>ec,GLPNForDepthEstimation:()=>Uh,GLPNModel:()=>Dh,GLPNPreTrainedModel:()=>Lo,GPT2LMHeadModel:()=>Kh,GPT2Model:()=>Xh,GPT2PreTrainedModel:()=>Uo,GPTBigCodeForCausalLM:()=>Fh,GPTBigCodeModel:()=>Bh,GPTBigCodePreTrainedModel:()=>No,GPTJForCausalLM:()=>Qh,GPTJModel:()=>Yh,GPTJPreTrainedModel:()=>Bo,GPTNeoForCausalLM:()=>Gh,GPTNeoModel:()=>jh,GPTNeoPreTrainedModel:()=>$o,GPTNeoXForCausalLM:()=>Wh,GPTNeoXModel:()=>qh,GPTNeoXPreTrainedModel:()=>Ro,Gemma2ForCausalLM:()=>zh,Gemma2Model:()=>Ph,Gemma2PreTrainedModel:()=>Io,Gemma3ForCausalLM:()=>Nh,Gemma3Model:()=>Lh,Gemma3PreTrainedModel:()=>Co,Gemma3nForConditionalGeneration:()=>Po,Gemma3nPreTrainedModel:()=>tc,GemmaForCausalLM:()=>Ch,GemmaModel:()=>Ih,GemmaPreTrainedModel:()=>Oo,GlmForCausalLM:()=>Rh,GlmModel:()=>$h,GlmPreTrainedModel:()=>zo,GptOssForCausalLM:()=>Hh,GptOssModel:()=>Vh,GptOssPreTrainedModel:()=>Do,GraniteForCausalLM:()=>Zh,GraniteModel:()=>Jh,GraniteMoeHybridForCausalLM:()=>t_,GraniteMoeHybridModel:()=>e_,GraniteMoeHybridPreTrainedModel:()=>jo,GranitePreTrainedModel:()=>Fo,GroundingDinoForObjectDetection:()=>r_,GroundingDinoPreTrainedModel:()=>rc,GroupViTModel:()=>s_,GroupViTPreTrainedModel:()=>sc,HeliumForCausalLM:()=>o_,HeliumModel:()=>n_,HeliumPreTrainedModel:()=>Go,HieraForImageClassification:()=>i_,HieraModel:()=>a_,HieraPreTrainedModel:()=>qo,HubertForCTC:()=>m_,HubertForSequenceClassification:()=>h_,HubertModel:()=>f_,HubertPreTrainedModel:()=>d_,HunYuanDenseV1ForCausalLM:()=>g_,HunYuanDenseV1Model:()=>__,HunYuanDenseV1PreTrainedModel:()=>Wo,IJepaForImageClassification:()=>y_,IJepaModel:()=>x_,IJepaPreTrainedModel:()=>Vo,Idefics3ForConditionalGeneration:()=>oc,Idefics3PreTrainedModel:()=>nc,JAISLMHeadModel:()=>v_,JAISModel:()=>b_,JAISPreTrainedModel:()=>Ho,JinaCLIPModel:()=>k_,JinaCLIPPreTrainedModel:()=>en,JinaCLIPTextModel:()=>Xo,JinaCLIPVisionModel:()=>E_,Lfm2ForCausalLM:()=>M_,Lfm2Model:()=>A_,Lfm2MoeForCausalLM:()=>S_,Lfm2MoeModel:()=>T_,Lfm2MoePreTrainedModel:()=>Yo,Lfm2PreTrainedModel:()=>Ko,LiteWhisperForConditionalGeneration:()=>ry,Llama4ForCausalLM:()=>C_,Llama4PreTrainedModel:()=>ac,LlamaForCausalLM:()=>I_,LlamaModel:()=>O_,LlamaPreTrainedModel:()=>Qo,LlavaForConditionalGeneration:()=>tn,LlavaOnevisionForConditionalGeneration:()=>tn,LlavaPreTrainedModel:()=>ic,LlavaQwen2ForCausalLM:()=>z_,LongT5ForConditionalGeneration:()=>N_,LongT5Model:()=>L_,LongT5PreTrainedModel:()=>Jo,M2M100ForConditionalGeneration:()=>R_,M2M100Model:()=>$_,M2M100PreTrainedModel:()=>Zo,MBartForCausalLM:()=>W_,MBartForConditionalGeneration:()=>G_,MBartForSequenceClassification:()=>q_,MBartModel:()=>j_,MBartPreTrainedModel:()=>us,MPNetForMaskedLM:()=>Og,MPNetForQuestionAnswering:()=>Pg,MPNetForSequenceClassification:()=>Ig,MPNetForTokenClassification:()=>Cg,MPNetModel:()=>Sg,MPNetPreTrainedModel:()=>Dr,MT5ForConditionalGeneration:()=>$g,MT5Model:()=>Ng,MT5PreTrainedModel:()=>pa,MarianMTModel:()=>U_,MarianModel:()=>D_,MarianPreTrainedModel:()=>ea,MaskFormerForInstanceSegmentation:()=>F_,MaskFormerModel:()=>B_,MaskFormerPreTrainedModel:()=>ta,Metric3DForDepthEstimation:()=>V_,Metric3DPreTrainedModel:()=>lc,Metric3Dv2ForDepthEstimation:()=>H_,Metric3Dv2PreTrainedModel:()=>cc,MgpstrForSceneTextRecognition:()=>X_,MgpstrModelOutput:()=>uc,MgpstrPreTrainedModel:()=>pc,MimiDecoderModel:()=>sa,MimiDecoderOutput:()=>fc,MimiEncoderModel:()=>ra,MimiEncoderOutput:()=>dc,MimiModel:()=>K_,MimiPreTrainedModel:()=>rn,MistralForCausalLM:()=>Q_,MistralModel:()=>Y_,MistralPreTrainedModel:()=>na,MobileBertForMaskedLM:()=>Z_,MobileBertForQuestionAnswering:()=>tg,MobileBertForSequenceClassification:()=>eg,MobileBertModel:()=>J_,MobileBertPreTrainedModel:()=>ps,MobileLLMForCausalLM:()=>sg,MobileLLMModel:()=>rg,MobileLLMPreTrainedModel:()=>oa,MobileNetV1ForImageClassification:()=>og,MobileNetV1ForSemanticSegmentation:()=>ag,MobileNetV1Model:()=>ng,MobileNetV1PreTrainedModel:()=>sn,MobileNetV2ForImageClassification:()=>lg,MobileNetV2ForSemanticSegmentation:()=>cg,MobileNetV2Model:()=>ig,MobileNetV2PreTrainedModel:()=>nn,MobileNetV3ForImageClassification:()=>pg,MobileNetV3ForSemanticSegmentation:()=>dg,MobileNetV3Model:()=>ug,MobileNetV3PreTrainedModel:()=>on,MobileNetV4ForImageClassification:()=>mg,MobileNetV4ForSemanticSegmentation:()=>hg,MobileNetV4Model:()=>fg,MobileNetV4PreTrainedModel:()=>an,MobileViTForImageClassification:()=>gg,MobileViTModel:()=>_g,MobileViTPreTrainedModel:()=>aa,MobileViTV2ForImageClassification:()=>xg,MobileViTV2Model:()=>wg,MobileViTV2PreTrainedModel:()=>ia,ModernBertDecoderForCausalLM:()=>Ag,ModernBertDecoderModel:()=>Eg,ModernBertDecoderPreTrainedModel:()=>la,ModernBertForMaskedLM:()=>bg,ModernBertForSequenceClassification:()=>vg,ModernBertForTokenClassification:()=>kg,ModernBertModel:()=>yg,ModernBertPreTrainedModel:()=>ds,Moondream1ForConditionalGeneration:()=>P_,MoonshineForConditionalGeneration:()=>Tg,MoonshineModel:()=>Mg,MoonshinePreTrainedModel:()=>ca,MptForCausalLM:()=>Lg,MptModel:()=>zg,MptPreTrainedModel:()=>ua,MultiModalityCausalLM:()=>Rg,MultiModalityPreTrainedModel:()=>mc,MusicgenForCausalLM:()=>Ug,MusicgenForConditionalGeneration:()=>fa,MusicgenModel:()=>Dg,MusicgenPreTrainedModel:()=>da,NanoChatForCausalLM:()=>Fg,NanoChatModel:()=>Bg,NanoChatPreTrainedModel:()=>ma,NeoBertForMaskedLM:()=>Gg,NeoBertForQuestionAnswering:()=>Vg,NeoBertForSequenceClassification:()=>qg,NeoBertForTokenClassification:()=>Wg,NeoBertModel:()=>jg,NeoBertPreTrainedModel:()=>Ur,NomicBertModel:()=>Hg,NomicBertPreTrainedModel:()=>hc,OPTForCausalLM:()=>sw,OPTModel:()=>rw,OPTPreTrainedModel:()=>xa,Olmo2ForCausalLM:()=>Qg,Olmo2Model:()=>Yg,Olmo2PreTrainedModel:()=>_a,Olmo3ForCausalLM:()=>Zg,Olmo3Model:()=>Jg,Olmo3PreTrainedModel:()=>ga,OlmoForCausalLM:()=>Kg,OlmoModel:()=>Xg,OlmoPreTrainedModel:()=>ha,OpenELMForCausalLM:()=>tw,OpenELMModel:()=>ew,OpenELMPreTrainedModel:()=>wa,OwlViTForObjectDetection:()=>iw,OwlViTModel:()=>aw,OwlViTPreTrainedModel:()=>ba,Owlv2ForObjectDetection:()=>ow,Owlv2Model:()=>nw,Owlv2PreTrainedModel:()=>ya,PaliGemmaForConditionalGeneration:()=>lw,PaliGemmaPreTrainedModel:()=>_c,ParakeetForCTC:()=>cw,ParakeetPreTrainedModel:()=>gc,PatchTSMixerForPrediction:()=>pw,PatchTSMixerModel:()=>uw,PatchTSMixerPreTrainedModel:()=>va,PatchTSTForPrediction:()=>fw,PatchTSTModel:()=>dw,PatchTSTPreTrainedModel:()=>ka,Phi3ForCausalLM:()=>gw,Phi3Model:()=>_w,Phi3PreTrainedModel:()=>Aa,Phi3VForCausalLM:()=>Ma,Phi3VPreTrainedModel:()=>wc,PhiForCausalLM:()=>hw,PhiModel:()=>mw,PhiPreTrainedModel:()=>Ea,PreTrainedModel:()=>y,PvtForImageClassification:()=>xw,PvtModel:()=>ww,PvtPreTrainedModel:()=>Ta,PyAnnoteForAudioFrameClassification:()=>bw,PyAnnoteModel:()=>yw,PyAnnotePreTrainedModel:()=>Sa,Qwen2ForCausalLM:()=>kw,Qwen2Model:()=>vw,Qwen2PreTrainedModel:()=>Oa,Qwen2VLForConditionalGeneration:()=>Ia,Qwen2VLPreTrainedModel:()=>xc,Qwen2_5_VLForConditionalGeneration:()=>Ca,Qwen3ForCausalLM:()=>Aw,Qwen3Model:()=>Ew,Qwen3PreTrainedModel:()=>Pa,Qwen3VLForConditionalGeneration:()=>za,Qwen3_5ForConditionalGeneration:()=>La,Qwen3_5MoeForConditionalGeneration:()=>Mw,RFDetrForObjectDetection:()=>Iw,RFDetrModel:()=>Ow,RFDetrObjectDetectionOutput:()=>yc,RFDetrPreTrainedModel:()=>$a,RTDetrForObjectDetection:()=>Mm,RTDetrModel:()=>Am,RTDetrObjectDetectionOutput:()=>or,RTDetrPreTrainedModel:()=>ho,RTDetrV2ForObjectDetection:()=>jw,RTDetrV2Model:()=>Fw,RTDetrV2ObjectDetectionOutput:()=>bc,RTDetrV2PreTrainedModel:()=>Ra,ResNetForImageClassification:()=>Sw,ResNetModel:()=>Tw,ResNetPreTrainedModel:()=>Na,RoFormerForMaskedLM:()=>Rw,RoFormerForQuestionAnswering:()=>Bw,RoFormerForSequenceClassification:()=>Dw,RoFormerForTokenClassification:()=>Uw,RoFormerModel:()=>$w,RoFormerPreTrainedModel:()=>Fr,RobertaForMaskedLM:()=>Pw,RobertaForQuestionAnswering:()=>Nw,RobertaForSequenceClassification:()=>zw,RobertaForTokenClassification:()=>Lw,RobertaModel:()=>Cw,RobertaPreTrainedModel:()=>Br,Sam2ImageSegmentationOutput:()=>Ec,Sam2Model:()=>Da,Sam2PreTrainedModel:()=>Ac,Sam3TrackerModel:()=>Ww,SamImageSegmentationOutput:()=>vc,SamModel:()=>Gw,SamPreTrainedModel:()=>kc,SapiensForDepthEstimation:()=>Hw,SapiensForNormalEstimation:()=>Xw,SapiensForSemanticSegmentation:()=>Vw,SapiensPreTrainedModel:()=>ln,SegformerForImageClassification:()=>Yw,SegformerForSemanticSegmentation:()=>Qw,SegformerModel:()=>Kw,SegformerPreTrainedModel:()=>cn,SiglipModel:()=>Jw,SiglipPreTrainedModel:()=>Ua,SiglipTextModel:()=>Ba,SiglipVisionModel:()=>Zw,SmolLM3ForCausalLM:()=>tx,SmolLM3Model:()=>ex,SmolLM3PreTrainedModel:()=>Fa,SmolVLMForConditionalGeneration:()=>w_,SnacDecoderModel:()=>Ga,SnacEncoderModel:()=>ja,SnacModel:()=>rx,SnacPreTrainedModel:()=>un,SpeechT5ForSpeechToText:()=>nx,SpeechT5ForTextToSpeech:()=>ox,SpeechT5HifiGan:()=>ax,SpeechT5Model:()=>sx,SpeechT5PreTrainedModel:()=>pn,SqueezeBertForMaskedLM:()=>lx,SqueezeBertForQuestionAnswering:()=>ux,SqueezeBertForSequenceClassification:()=>cx,SqueezeBertModel:()=>ix,SqueezeBertPreTrainedModel:()=>fs,StableLmForCausalLM:()=>dx,StableLmModel:()=>px,StableLmPreTrainedModel:()=>qa,Starcoder2ForCausalLM:()=>mx,Starcoder2Model:()=>fx,Starcoder2PreTrainedModel:()=>Wa,StyleTextToSpeech2Model:()=>hx,StyleTextToSpeech2PreTrainedModel:()=>Mc,SupertonicForConditionalGeneration:()=>Va,SupertonicPreTrainedModel:()=>Tc,Swin2SRForImageSuperResolution:()=>yx,Swin2SRModel:()=>xx,Swin2SRPreTrainedModel:()=>Ha,SwinForImageClassification:()=>gx,SwinForSemanticSegmentation:()=>wx,SwinModel:()=>_x,SwinPreTrainedModel:()=>dn,T5ForConditionalGeneration:()=>vx,T5Model:()=>bx,T5PreTrainedModel:()=>Xa,TableTransformerForObjectDetection:()=>Ex,TableTransformerModel:()=>kx,TableTransformerObjectDetectionOutput:()=>Sc,TableTransformerPreTrainedModel:()=>Ka,TrOCRForCausalLM:()=>Ax,TrOCRPreTrainedModel:()=>Oc,UltravoxModel:()=>Cc,UltravoxPreTrainedModel:()=>Ic,UniSpeechForCTC:()=>Sx,UniSpeechForSequenceClassification:()=>Ox,UniSpeechModel:()=>Tx,UniSpeechPreTrainedModel:()=>fn,UniSpeechSatForAudioFrameClassification:()=>zx,UniSpeechSatForCTC:()=>Cx,UniSpeechSatForSequenceClassification:()=>Px,UniSpeechSatModel:()=>Ix,UniSpeechSatPreTrainedModel:()=>ms,VaultGemmaForCausalLM:()=>Nx,VaultGemmaModel:()=>Lx,VaultGemmaPreTrainedModel:()=>Ya,ViTForImageClassification:()=>Dx,ViTMAEModel:()=>Ux,ViTMAEPreTrainedModel:()=>Pc,ViTMSNForImageClassification:()=>Fx,ViTMSNModel:()=>Bx,ViTMSNPreTrainedModel:()=>Ja,ViTModel:()=>Rx,ViTPreTrainedModel:()=>Qa,VisionEncoderDecoderModel:()=>$x,VitMatteForImageMatting:()=>jx,VitMattePreTrainedModel:()=>zc,VitPoseForPoseEstimation:()=>Gx,VitPosePreTrainedModel:()=>Lc,VitsModel:()=>qx,VitsModelOutput:()=>Nc,VitsPreTrainedModel:()=>$c,VoxtralForConditionalGeneration:()=>Mx,Wav2Vec2BertForCTC:()=>Vx,Wav2Vec2BertForSequenceClassification:()=>Hx,Wav2Vec2BertModel:()=>Wx,Wav2Vec2BertPreTrainedModel:()=>mn,Wav2Vec2ForAudioFrameClassification:()=>p_,Wav2Vec2ForCTC:()=>c_,Wav2Vec2ForSequenceClassification:()=>u_,Wav2Vec2Model:()=>l_,Wav2Vec2PreTrainedModel:()=>Ht,WavLMForAudioFrameClassification:()=>Jx,WavLMForCTC:()=>Kx,WavLMForSequenceClassification:()=>Yx,WavLMForXVector:()=>Qx,WavLMModel:()=>Xx,WavLMPreTrainedModel:()=>jr,WeSpeakerResNetModel:()=>Zx,WeSpeakerResNetPreTrainedModel:()=>Dc,WhisperForConditionalGeneration:()=>Uc,WhisperModel:()=>ty,WhisperPreTrainedModel:()=>Za,XLMForQuestionAnswering:()=>iy,XLMForSequenceClassification:()=>oy,XLMForTokenClassification:()=>ay,XLMModel:()=>sy,XLMPreTrainedModel:()=>Gr,XLMRobertaForMaskedLM:()=>cy,XLMRobertaForQuestionAnswering:()=>dy,XLMRobertaForSequenceClassification:()=>uy,XLMRobertaForTokenClassification:()=>py,XLMRobertaModel:()=>ly,XLMRobertaPreTrainedModel:()=>qr,XLMWithLMHeadModel:()=>ny,XVectorOutput:()=>Rc,YolosForObjectDetection:()=>my,YolosModel:()=>fy,YolosObjectDetectionOutput:()=>Bc,YolosPreTrainedModel:()=>ei,YoutuForCausalLM:()=>_y,YoutuModel:()=>hy,YoutuPreTrainedModel:()=>ti});var ls=class extends y{},kf=class extends ls{},Ef=class extends ls{async _call(e){return new G(await super._call(e))}},Af=class extends ls{async _call(e){return new Ae(await super._call(e))}},Mf=class extends ls{async _call(e){return new we(await super._call(e))}};var Yn=class extends y{},Tf=class extends Yn{},Sf=class extends Yn{};var Qn=class extends y{},Of=class extends Qn{},If=class extends Qn{};var Jn=class extends y{},Cf=class extends Jn{},Pf=class extends Jn{};var Zn=class extends y{},zf=class extends Zn{},Lf=class extends Zn{};var Ks=class extends y{},Nf=class extends Ks{},$f=class extends Ks{},Rf=class extends Ks{async _call(e){return new G(await super._call(e))}};var eo=class extends y{},Df=class extends eo{},Uf=class extends eo{async _call(e){return new G(await super._call(e))}};var Cr=class extends y{},Bf=class extends Cr{},Ff=class extends Cr{async _call(e){return new we(await super._call(e))}},jf=class extends Cr{async _call(e){return new G(await super._call(e))}},Gf=class extends Cr{async _call(e){return new he(await super._call(e))}},qf=class extends Cr{async _call(e){return new Ae(await super._call(e))}};var to=class extends y{},Wf=class extends to{},Vf=class extends to{};var ro=class extends y{},Hf=class extends ro{},Xf=class extends ro{};var so=class extends y{},Kf=class extends so{},Yf=class extends so{};var Pr=class extends y{},Qf=class extends Pr{},Jf=class extends Pr{async _call(e){return new we(await super._call(e))}},Zf=class extends Pr{async _call(e){return new G(await super._call(e))}},em=class extends Pr{async _call(e){return new he(await super._call(e))}},tm=class extends Pr{async _call(e){return new Ae(await super._call(e))}};var Dz=4299n,n2=6561n,Gl=class extends y{forward_params=["input_ids","inputs_embeds","attention_mask","position_ids","audio_values","exaggeration","audio_features","audio_tokens","speaker_embeddings","speaker_features","past_key_values"];main_input_name="input_ids";_return_dict_in_generate_keys=["audio_tokens","speaker_embeddings","speaker_features"]},no=class extends Gl{async encode_speech(e){return ue(this.sessions.speech_encoder,{audio_values:e})}async forward({input_ids:e=null,attention_mask:r=null,audio_values:s=null,exaggeration:n=null,position_ids:o=null,inputs_embeds:a=null,past_key_values:i=null,generation_config:l=null,logits_processor:u=null,audio_features:p=null,audio_tokens:f=null,speaker_embeddings:m=null,speaker_features:h=null,...w}){let x;if(!a){let E=this.sessions.embed_tokens.inputNames,A={input_ids:e};if(E.includes("exaggeration")){if(!(n instanceof D)){let S=e.dims[0];if(n==null)n=qe([S],.5);else if(typeof n=="number")n=qe([S],n);else if(Array.isArray(n))n=new D("float32",n,[S]);else throw new Error("Unsupported type for `exaggeration` input")}A.exaggeration=n}if(E.includes("position_ids")&&(A.position_ids=o),{inputs_embeds:a}=await ue(this.sessions.embed_tokens,A),p&&f&&m&&h&&(x={audio_features:p,audio_tokens:f,speaker_embeddings:m,speaker_features:h}),x||s)x??=await this.encode_speech(s),a=Ee([x.audio_features,a],1),r=st([a.dims[0],a.dims[1]]);else{let S=a.dims[1];if(!i||S!==1)throw new Error("Incorrect state encountered during generation.");let T=Object.values(i)[0].dims.at(-2);r=st([a.dims[0],T+S])}}return{...await Ct(this,{inputs_embeds:a,past_key_values:i,attention_mask:r,generation_config:l,logits_processor:u},!1),...x}}prepare_inputs_for_generation(e,r,s){if(!r.position_ids&&this.sessions.embed_tokens.inputNames.includes("position_ids"))if(r.input_ids.dims[1]===1){let n=Array.from({length:e.length},(o,a)=>e[a].length-e[a].findLastIndex(i=>i==n2)-1);r.position_ids=new D("int64",n,[e.length,1])}else{let o=r.input_ids.tolist().map(a=>{let i=0;return a.map(l=>l>=n2?0:i++)});r.position_ids=new D("int64",o.flat(),r.input_ids.dims)}return r.input_ids.dims[1]===1&&(delete r.audio_values,delete r.audio_features,delete r.audio_tokens,delete r.speaker_embeddings,delete r.speaker_features),Fl(this,e,r,s)}async generate(e){let{sequences:r,audio_tokens:s,speaker_embeddings:n,speaker_features:o}=await super.generate({...e,return_dict_in_generate:!0}),a=r.slice(null,[e.input_ids.dims[1],-1]),i=qe([a.dims[0],3],Dz),l=Ee([s,a,i],1),{waveform:u}=await ue(this.sessions.conditional_decoder,{speech_tokens:l,speaker_features:o,speaker_embeddings:n});return u}};var ql=class extends y{},rm=class extends ql{};var Ys=class extends y{},sm=class extends Ys{},oo=class extends Ys{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"text_model"})}},ao=class extends Ys{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"audio_model"})}};var nr=class extends y{},nm=class extends nr{},om=class extends nr{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"text_model"})}},io=class extends nr{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"text_model"})}},am=class extends nr{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"vision_model"})}},im=class extends nr{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"vision_model"})}};var lo=class extends y{},lm=class extends lo{},cm=class extends lo{};var co=class extends y{},um=class extends co{},pm=class extends co{};var uo=class extends y{},dm=class extends uo{},fm=class extends uo{};var po=class extends y{},mm=class extends po{},hm=class extends po{};var zr=class extends y{},_m=class extends zr{},gm=class extends zr{async _call(e){return new we(await super._call(e))}},wm=class extends zr{async _call(e){return new G(await super._call(e))}},xm=class extends zr{async _call(e){return new he(await super._call(e))}},ym=class extends zr{async _call(e){return new Ae(await super._call(e))}};var fo=class extends y{},bm=class extends fo{},vm=class extends fo{async _call(e){return new G(await super._call(e))}};var mo=class extends y{},km=class extends mo{},Em=class extends mo{async _call(e){return new G(await super._call(e))}};var ho=class extends y{},Am=class extends ho{},Mm=class extends ho{async _call(e){return new or(await super._call(e))}},or=class extends Re{constructor({logits:e,pred_boxes:r}){super(),this.logits=e,this.pred_boxes=r}};var _o=class extends y{},Tm=class extends _o{},Sm=class extends _o{async _call(e){return new or(await super._call(e))}};var Wl=class extends Re{constructor({audio_codes:e}){super(),this.audio_codes=e}},Vl=class extends Re{constructor({audio_values:e}){super(),this.audio_values=e}},Qs=class extends y{main_input_name="input_values";forward_params=["input_values"]},Om=class extends Qs{async encode(e){return new Wl(await ue(this.sessions.encoder_model,e))}async decode(e){return new Vl(await ue(this.sessions.decoder_model,e))}},go=class extends Qs{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"encoder_model"})}},wo=class extends Qs{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"decoder_model"})}};var Lr=class extends y{},Im=class extends Lr{},Cm=class extends Lr{async _call(e){return new we(await super._call(e))}},Pm=class extends Lr{async _call(e){return new G(await super._call(e))}},zm=class extends Lr{async _call(e){return new he(await super._call(e))}},Lm=class extends Lr{async _call(e){return new Ae(await super._call(e))}};var Nr=class extends y{},Nm=class extends Nr{},$m=class extends Nr{async _call(e){return new we(await super._call(e))}},Rm=class extends Nr{async _call(e){return new G(await super._call(e))}},Dm=class extends Nr{async _call(e){return new he(await super._call(e))}},Um=class extends Nr{async _call(e){return new Ae(await super._call(e))}};var Hl=class extends y{},Bm=class extends Hl{};var xo=class extends y{},Fm=class extends xo{},jm=class extends xo{async _call(e){return new G(await super._call(e))}};var Xl=class extends y{},Gm=class extends Xl{};var Kl=class extends y{},qm=class extends Kl{};var Js=class extends y{},Wm=class extends Js{},Vm=class extends Js{async _call(e){return new Zs(await super._call(e))}},Hm=class extends Js{async _call(e){return new Yl(await super._call(e))}},Zs=class extends Re{constructor({logits:e,pred_boxes:r}){super(),this.logits=e,this.pred_boxes=r}},Yl=class extends Re{constructor({logits:e,pred_boxes:r,pred_masks:s}){super(),this.logits=e,this.pred_boxes=r,this.pred_masks=s}};var yo=class extends y{},Xm=class extends yo{},Km=class extends yo{async _call(e){return new G(await super._call(e))}};var bo=class extends y{},Ym=class extends bo{},Qm=class extends bo{async _call(e){return new G(await super._call(e))}};var Ql=class extends y{},Jm=class extends Ql{};var Jl=class extends y{},Zm=class extends Jl{};var $r=class extends y{},eh=class extends $r{},th=class extends $r{async _call(e){return new G(await super._call(e))}},rh=class extends $r{async _call(e){return new he(await super._call(e))}},sh=class extends $r{async _call(e){return new Ae(await super._call(e))}},nh=class extends $r{async _call(e){return new we(await super._call(e))}};var Zl=class extends y{},oh=class extends Zl{};var vo=class extends y{},ah=class extends vo{},ih=class extends vo{};var ko=class extends y{},lh=class extends ko{},ch=class extends ko{async _call(e){return new G(await super._call(e))}};var Rr=class extends y{},uh=class extends Rr{},ph=class extends Rr{async _call(e){return new we(await super._call(e))}},dh=class extends Rr{async _call(e){return new G(await super._call(e))}},fh=class extends Rr{async _call(e){return new he(await super._call(e))}},mh=class extends Rr{async _call(e){return new Ae(await super._call(e))}};var Eo=class extends y{},hh=class extends Eo{},_h=class extends Eo{};var cs=class extends y{},gh=class extends cs{},wh=class extends cs{async _call(e){return new we(await super._call(e))}},xh=class extends cs{async _call(e){return new G(await super._call(e))}},yh=class extends cs{async _call(e){return new he(await super._call(e))}};var Ao=class extends y{},bh=class extends Ao{},vh=class extends Ao{};var Mo=class extends y{},kh=class extends Mo{},Eh=class extends Mo{};var To=class extends y{},Ah=class extends To{},Mh=class extends To{};var So=class extends y{},Th=class extends So{},Sh=class extends So{async _call(e){return new G(await super._call(e))}};var ec=class extends y{forward_params=["input_ids","inputs_embeds","attention_mask","pixel_values","encoder_outputs","decoder_input_ids","decoder_inputs_embeds","decoder_attention_mask","past_key_values"];main_input_name="inputs_embeds"},Oh=class extends ec{_merge_input_ids_with_image_features({inputs_embeds:e,image_features:r,input_ids:s,attention_mask:n}){return{inputs_embeds:Ee([r,e],1),attention_mask:Ee([st(r.dims.slice(0,2)),n],1)}}async _prepare_inputs_embeds({input_ids:e,pixel_values:r,inputs_embeds:s,attention_mask:n}){if(!e&&!r)throw new Error("Either `input_ids` or `pixel_values` should be provided.");let o,a;return e&&(o=await this.encode_text({input_ids:e})),r&&(a=await this.encode_image({pixel_values:r})),o&&a?{inputs_embeds:s,attention_mask:n}=this._merge_input_ids_with_image_features({inputs_embeds:o,image_features:a,input_ids:e,attention_mask:n}):s=o||a,{inputs_embeds:s,attention_mask:n}}async forward({input_ids:e,pixel_values:r,attention_mask:s,decoder_input_ids:n,decoder_attention_mask:o,encoder_outputs:a,past_key_values:i,inputs_embeds:l,decoder_inputs_embeds:u}){if(l||({inputs_embeds:l,attention_mask:s}=await this._prepare_inputs_embeds({input_ids:e,pixel_values:r,inputs_embeds:l,attention_mask:s})),!a){let{last_hidden_state:f}=await Vt(this,{inputs_embeds:l,attention_mask:s});a=f}if(!u){if(!n)throw new Error("Either `decoder_input_ids` or `decoder_inputs_embeds` should be provided.");u=await this.encode_text({input_ids:n})}return await Ct(this,{inputs_embeds:u,attention_mask:o,encoder_attention_mask:s,encoder_hidden_states:a,past_key_values:i},!0)}};var Oo=class extends y{},Ih=class extends Oo{},Ch=class extends Oo{};var Io=class extends y{},Ph=class extends Io{},zh=class extends Io{};var Co=class extends y{},Lh=class extends Co{},Nh=class extends Co{};var tc=class extends y{forward_params=["input_ids","attention_mask","inputs_embeds","per_layer_inputs","position_ids","pixel_values","input_features","input_features_mask","past_key_values"]},Po=class extends tc{async forward({input_ids:e=null,attention_mask:r=null,pixel_values:s=null,input_features:n=null,input_features_mask:o=null,position_ids:a=null,inputs_embeds:i=null,per_layer_inputs:l=null,past_key_values:u=null,generation_config:p=null,logits_processor:f=null,...m}){if((!i||!l)&&({inputs_embeds:i,per_layer_inputs:l}=await ue(this.sessions.embed_tokens,{input_ids:e}),e.dims[1]!==1)){if(s){let{image_features:w}=await ue(this.sessions.vision_encoder,{pixel_values:s});({inputs_embeds:i,attention_mask:r}=this._merge_input_ids_with_image_features({image_features:w,inputs_embeds:i,input_ids:e,attention_mask:r}))}if(n){let{audio_features:w}=await ue(this.sessions.audio_encoder,{input_features:n,input_features_mask:o});({inputs_embeds:i,attention_mask:r}=this._merge_input_ids_with_audio_features({audio_features:w,inputs_embeds:i,input_ids:e,attention_mask:r}))}}return await Ct(this,{inputs_embeds:i,per_layer_inputs:l,past_key_values:u,attention_mask:r,position_ids:a,generation_config:p,logits_processor:f},!0)}_merge_input_ids_with_image_features(e){let r=e.image_features.dims.at(-1),s=e.image_features.view(-1,r);return gr({image_token_id:this.config.image_token_id,...e,image_features:s})}_merge_input_ids_with_audio_features(e){let r=e.audio_features.dims.at(-1),s=e.audio_features.view(-1,r);return vf({audio_token_id:this.config.audio_token_id,...e,audio_features:s})}};var zo=class extends y{},$h=class extends zo{},Rh=class extends zo{};var Lo=class extends y{},Dh=class extends Lo{},Uh=class extends Lo{};var No=class extends y{},Bh=class extends No{},Fh=class extends No{};var $o=class extends y{},jh=class extends $o{},Gh=class extends $o{};var Ro=class extends y{},qh=class extends Ro{},Wh=class extends Ro{};var Do=class extends y{},Vh=class extends Do{},Hh=class extends Do{};var Uo=class extends y{},Xh=class extends Uo{},Kh=class extends Uo{};var Bo=class extends y{},Yh=class extends Bo{},Qh=class extends Bo{};var Fo=class extends y{},Jh=class extends Fo{},Zh=class extends Fo{};var jo=class extends y{},e_=class extends jo{},t_=class extends jo{};var rc=class extends y{},r_=class extends rc{};var sc=class extends y{},s_=class extends sc{};var Go=class extends y{},n_=class extends Go{},o_=class extends Go{};var qo=class extends y{},a_=class extends qo{},i_=class extends qo{async _call(e){return new G(await super._call(e))}};var Ht=class extends y{},l_=class extends Ht{},c_=class extends Ht{async _call(e){return new xt(await super._call(e))}},u_=class extends Ht{async _call(e){return new G(await super._call(e))}},p_=class extends Ht{async _call(e){return new he(await super._call(e))}};var d_=class extends y{},f_=class extends Ht{},m_=class extends Ht{async _call(e){return new xt(await super._call(e))}},h_=class extends Ht{async _call(e){return new G(await super._call(e))}};var Wo=class extends y{},__=class extends Wo{},g_=class extends Wo{};var nc=class extends y{forward_params=["input_ids","attention_mask","pixel_values","pixel_attention_mask","position_ids","past_key_values"]},oc=class extends nc{async encode_image({pixel_values:e,pixel_attention_mask:r}){return(await ue(this.sessions.vision_encoder,{pixel_values:e,pixel_attention_mask:r})).image_features}_merge_input_ids_with_image_features(e){let r=e.image_features.dims.at(-1),s=e.image_features.view(-1,r);return gr({image_token_id:this.config.image_token_id,...e,image_features:s})}},w_=class extends oc{};var Vo=class extends y{},x_=class extends Vo{},y_=class extends Vo{async _call(e){return new G(await super._call(e))}};var Ho=class extends y{},b_=class extends Ho{},v_=class extends Ho{};var en=class extends y{},k_=class extends en{async forward(e){let r=!e.input_ids,s=!e.pixel_values;if(r&&s)throw new Error("Either `input_ids` or `pixel_values` should be provided.");if(r&&(e.input_ids=st([e.pixel_values.dims[0],1])),s){let{image_size:u}=this.config.vision_config;e.pixel_values=qe([0,3,u,u],0)}let{text_embeddings:n,image_embeddings:o,l2norm_text_embeddings:a,l2norm_image_embeddings:i}=await super.forward(e),l={};return r||(l.text_embeddings=n,l.l2norm_text_embeddings=a),s||(l.image_embeddings=o,l.l2norm_image_embeddings=i),l}},Xo=class extends en{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"text_model"})}},E_=class extends en{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"vision_model"})}};var Ko=class extends y{},A_=class extends Ko{},M_=class extends Ko{};var Yo=class extends y{},T_=class extends Yo{},S_=class extends Yo{};var Qo=class extends y{},O_=class extends Qo{},I_=class extends Qo{};var ac=class extends y{},C_=class extends ac{};var ic=class extends y{forward_params=["input_ids","attention_mask","pixel_values","position_ids","past_key_values"]},tn=class extends ic{_merge_input_ids_with_image_features(e){let r=e.image_features.dims.at(-1),s=e.image_features.view(-1,r);return gr({image_token_id:this.config.image_token_index,...e,image_features:s})}},P_=class extends tn{},z_=class extends tn{};var Jo=class extends y{},L_=class extends Jo{},N_=class extends Jo{};var Zo=class extends y{},$_=class extends Zo{},R_=class extends Zo{};var ea=class extends y{},D_=class extends ea{},U_=class extends ea{};var ta=class extends y{},B_=class extends ta{},F_=class extends ta{};var us=class extends y{},j_=class extends us{},G_=class extends us{},q_=class extends us{async _call(e){return new G(await super._call(e))}},W_=class extends us{};var lc=class extends y{},V_=class extends lc{};var cc=class extends y{},H_=class extends cc{};var uc=class extends Re{constructor({char_logits:e,bpe_logits:r,wp_logits:s}){super(),this.char_logits=e,this.bpe_logits=r,this.wp_logits=s}get logits(){return[this.char_logits,this.bpe_logits,this.wp_logits]}},pc=class extends y{},X_=class extends pc{async _call(e){return new uc(await super._call(e))}};var dc=class extends Re{constructor({audio_codes:e}){super(),this.audio_codes=e}},fc=class extends Re{constructor({audio_values:e}){super(),this.audio_values=e}},rn=class extends y{main_input_name="input_values";forward_params=["input_values"]},K_=class extends rn{async encode(e){return new dc(await ue(this.sessions.encoder_model,e))}async decode(e){return new fc(await ue(this.sessions.decoder_model,e))}},ra=class extends rn{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"encoder_model"})}},sa=class extends rn{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"decoder_model"})}};var na=class extends y{},Y_=class extends na{},Q_=class extends na{};var ps=class extends y{},J_=class extends ps{},Z_=class extends ps{async _call(e){return new we(await super._call(e))}},eg=class extends ps{async _call(e){return new G(await super._call(e))}},tg=class extends ps{async _call(e){return new Ae(await super._call(e))}};var oa=class extends y{},rg=class extends oa{},sg=class extends oa{};var sn=class extends y{},ng=class extends sn{},og=class extends sn{async _call(e){return new G(await super._call(e))}},ag=class extends sn{};var nn=class extends y{},ig=class extends nn{},lg=class extends nn{async _call(e){return new G(await super._call(e))}},cg=class extends nn{};var on=class extends y{},ug=class extends on{},pg=class extends on{async _call(e){return new G(await super._call(e))}},dg=class extends on{};var an=class extends y{},fg=class extends an{},mg=class extends an{async _call(e){return new G(await super._call(e))}},hg=class extends an{};var aa=class extends y{},_g=class extends aa{},gg=class extends aa{async _call(e){return new G(await super._call(e))}};var ia=class extends y{},wg=class extends ia{},xg=class extends ia{async _call(e){return new G(await super._call(e))}};var ds=class extends y{},yg=class extends ds{},bg=class extends ds{async _call(e){return new we(await super._call(e))}},vg=class extends ds{async _call(e){return new G(await super._call(e))}},kg=class extends ds{async _call(e){return new he(await super._call(e))}};var la=class extends y{},Eg=class extends la{},Ag=class extends la{};var ca=class extends y{requires_attention_mask=!1;main_input_name="input_values";forward_params=["input_values","decoder_input_ids","past_key_values"]},Mg=class extends ca{},Tg=class extends ca{};var Dr=class extends y{},Sg=class extends Dr{},Og=class extends Dr{async _call(e){return new we(await super._call(e))}},Ig=class extends Dr{async _call(e){return new G(await super._call(e))}},Cg=class extends Dr{async _call(e){return new he(await super._call(e))}},Pg=class extends Dr{async _call(e){return new Ae(await super._call(e))}};var ua=class extends y{},zg=class extends ua{},Lg=class extends ua{};var pa=class extends y{},Ng=class extends pa{},$g=class extends pa{};var mc=class extends y{},Rg=class extends mc{forward_params=["input_ids","pixel_values","images_seq_mask","images_emb_mask","attention_mask","position_ids","past_key_values"];constructor(...e){super(...e),this._generation_mode="text"}async forward(e){let r=this._generation_mode??"text",s;if(r==="text"||!e.past_key_values){let l=this.sessions.prepare_inputs_embeds,u=ot(e,l.inputNames);s=await ue(l,u)}else{let l=this.sessions.gen_img_embeds,u=ot({image_ids:e.input_ids},l.inputNames);s=await ue(l,u)}let n={...e,...s},o=await Ct(this,n),a=this.sessions[r==="text"?"lm_head":"gen_head"];if(!a)throw new Error(`Unable to find "${a}" generation head`);let i=await ue(a,ot(o,a.inputNames));return{...s,...o,...i}}prepare_inputs_for_generation(e,r,s){let n=!!r.past_key_values;return s.guidance_scale!==null&&s.guidance_scale>1&&(n?r.input_ids=Ee([r.input_ids,r.input_ids],0):(r.input_ids=Ee([r.input_ids,Pn(r.input_ids,BigInt(s.pad_token_id))],0),r.attention_mask=Ee([r.attention_mask,Pn(r.attention_mask,0n)],0))),(n||!r.pixel_values)&&(r.pixel_values=qe([0,0,3,384,384],1)),n&&(r.images_seq_mask=new D("bool",new Array(1).fill(!0).fill(!1,0,1),[1,1]),r.images_emb_mask=new D("bool",new Array(0).fill(!1),[1,1,0])),r}async generate(e){return this._generation_mode="text",super.generate(e)}async generate_images(e){this._generation_mode="image";let r=(e.inputs??e[this.main_input_name]).dims[1],n=(await super.generate(e)).slice(null,[r,null]),o=this.sessions.image_decode,{decoded_image:a}=await ue(o,{generated_tokens:n}),i=a.add_(1).mul_(255/2).clamp_(0,255).to("uint8"),l=[];for(let u of i){let p=Ke.fromTensor(u);l.push(p)}return l}};var da=class extends y{},Dg=class extends da{},Ug=class extends da{},fa=class extends y{forward_params=["input_ids","attention_mask","encoder_outputs","decoder_input_ids","decoder_attention_mask","past_key_values"];_apply_and_filter_by_delay_pattern_mask(e){let[r,s]=e.dims,n=this.config.decoder.num_codebooks,o=s-n,a=0;for(let u=0;u<e.size;++u){if(e.data[u]==this.config.decoder.pad_token_id)continue;let p=u%s,f=Math.floor(u/s)%n,m=p-f;m>0&&m<=o&&(e.data[a++]=e.data[u])}let i=Math.floor(r/n),l=a/(i*n);return new D(e.type,e.data.slice(0,a),[i,n,l])}prepare_inputs_for_generation(e,r,s){let n=BigInt(this.config.decoder.pad_token_id),o=structuredClone(e);for(let a=0;a<o.length;++a)for(let i=0;i<o[a].length;++i)a%this.config.decoder.num_codebooks>=i&&(o[a][i]=n);return s.guidance_scale!==null&&s.guidance_scale>1&&(o=o.concat(o)),jl(this,o,r,s)}async generate(e){let r=await super.generate(e),s=this._apply_and_filter_by_delay_pattern_mask(r).unsqueeze_(0),{audio_values:n}=await ue(this.sessions.encodec_decode,{audio_codes:s});return n}};var ma=class extends y{},Bg=class extends ma{},Fg=class extends ma{};var Ur=class extends y{},jg=class extends Ur{},Gg=class extends Ur{async _call(e){return new we(await super._call(e))}},qg=class extends Ur{async _call(e){return new G(await super._call(e))}},Wg=class extends Ur{async _call(e){return new he(await super._call(e))}},Vg=class extends Ur{async _call(e){return new Ae(await super._call(e))}};var hc=class extends y{},Hg=class extends hc{};var ha=class extends y{},Xg=class extends ha{},Kg=class extends ha{};var _a=class extends y{},Yg=class extends _a{},Qg=class extends _a{};var ga=class extends y{},Jg=class extends ga{},Zg=class extends ga{};var wa=class extends y{},ew=class extends wa{},tw=class extends wa{};var xa=class extends y{},rw=class extends xa{},sw=class extends xa{};var ya=class extends y{},nw=class extends ya{},ow=class extends ya{};var ba=class extends y{},aw=class extends ba{},iw=class extends ba{};var _c=class extends y{forward_params=["input_ids","attention_mask","pixel_values","position_ids","past_key_values"]},lw=class extends _c{_merge_input_ids_with_image_features(e){let r=e.image_features.dims.at(-1),s=e.image_features.view(-1,r);return gr({image_token_id:this.config.image_token_index,...e,image_features:s})}};var gc=class extends y{},cw=class extends gc{async _call(e){return new xt(await super._call(e))}};var va=class extends y{},uw=class extends va{},pw=class extends va{};var ka=class extends y{},dw=class extends ka{},fw=class extends ka{};var Ea=class extends y{},mw=class extends Ea{},hw=class extends Ea{};var Aa=class extends y{},_w=class extends Aa{},gw=class extends Aa{};var wc=class extends y{forward_params=["input_ids","inputs_embeds","attention_mask","position_ids","pixel_values","image_sizes","past_key_values"]},Ma=class extends wc{async forward({input_ids:e=null,attention_mask:r=null,pixel_values:s=null,image_sizes:n=null,position_ids:o=null,inputs_embeds:a=null,past_key_values:i=null,generation_config:l=null,logits_processor:u=null,...p}){if(!a){let m;if(s&&e.dims[1]!==1){if(!n)throw new Error("`image_sizes` must be provided when `pixel_values` is provided.");({image_features:m}=await ue(this.sessions.vision_encoder,{pixel_values:s,image_sizes:n}))}else{let h=this.config.normalized_config.hidden_size;m=new D("float32",[],[0,h])}({inputs_embeds:a}=await ue(this.sessions.prepare_inputs_embeds,{input_ids:e,image_features:m}))}return await Ct(this,{inputs_embeds:a,past_key_values:i,attention_mask:r,position_ids:o,generation_config:l,logits_processor:u},!1)}};var Ta=class extends y{},ww=class extends Ta{},xw=class extends Ta{async _call(e){return new G(await super._call(e))}};var Sa=class extends y{},yw=class extends Sa{},bw=class extends Sa{async _call(e){return new he(await super._call(e))}};var Oa=class extends y{},vw=class extends Oa{},kw=class extends Oa{};var xc=class extends y{forward_params=["input_ids","attention_mask","position_ids","past_key_values","pixel_values","image_grid_thw"]},Ia=class extends xc{image_grid_thw_name="grid_thw";get_rope_index(e,r,s,n){let{vision_config:o,image_token_id:a,video_token_id:i,vision_start_token_id:l}=this.config,u=o.spatial_merge_size??2,p=[];if(r||s){let f=e.tolist();n||(n=ol(e));let m=n.tolist(),h=Array.from({length:3},A=>Array.from({length:e.dims[0]},S=>Array.from({length:e.dims[1]},T=>1))),w=r?r.tolist():[],x=s?s.tolist():[],k=0,E=0;for(let A=0;A<f.length;++A){let S=f[A].filter((I,L)=>m[A][L]==1),P=S.reduce((I,L,R)=>(L==l&&I.push(R),I),[]).map(I=>S[I+1]),C=P.filter(I=>I==a).length,v=P.filter(I=>I==i).length,F=[],H=0,V=C,J=v;for(let I=0;I<P.length;++I){let L=S.findIndex((St,rt)=>rt>H&&St==a),R=S.findIndex((St,rt)=>rt>H&&St==i),te=V>0&&L!==-1?L:S.length+1,pe=J>0&&R!==-1?R:S.length+1,Fe,ze,Mt,Je;te<pe?([ze,Mt,Je]=w[k],++k,--V,Fe=te):([ze,Mt,Je]=x[E],++E,--J,Fe=pe);let[tt,nt,Me]=[Number(ze),Math.floor(Number(Mt)/u),Math.floor(Number(Je)/u)],xe=Fe-H,We=F.length>0?Se(F.at(-1))[0]+1:0;F.push(Array.from({length:3*xe},(St,rt)=>We+rt%xe));let Tt=xe+We,be=tt*nt*Me,De=Array.from({length:be},(St,rt)=>Tt+Math.floor(rt/(nt*Me))),Wr=Array.from({length:be},(St,rt)=>Tt+Math.floor(rt/Me)%nt),xs=Array.from({length:be},(St,rt)=>Tt+rt%Me);F.push([De,Wr,xs].flat()),H=Fe+be}if(H<S.length){let I=F.length>0?Se(F.at(-1))[0]+1:0,L=S.length-H;F.push(Array.from({length:3*L},(R,te)=>I+te%L))}let X=F.reduce((I,L)=>I+L.length,0),Y=new Array(X),U=0;for(let I=0;I<3;++I)for(let L=0;L<F.length;++L){let R=F[L],te=R.length/3;for(let pe=I*te;pe<(I+1)*te;++pe)Y[U++]=R[pe]}let z=0,ne=m[A];for(let I=0;I<ne.length;++I)if(ne[I]==1){for(let L=0;L<3;++L)h[L][A][I]=Y[L*X/3+z];++z}let ae=Se(Y)[0];p.push(ae+1-f[A].length)}return[new D("int64",h.flat(1/0),[3,e.dims[0],e.dims[1]]),new D("int64",p,[p.length,1])]}else if(n){let{data:f,dims:m}=Sb(n),h=BigInt64Array.from({length:3*f.length},(x,k)=>f[k%f.length]),w=Array.from({length:m[0]},(x,k)=>Se(f.subarray(m[1]*k,m[1]*(k+1)))[0]+1n+BigInt(m[1]));return[new D("int64",h,[3,...m]),new D("int64",w,[w.length,1])]}else{let[f,m]=e.dims,h=BigInt64Array.from({length:3*f*m},(w,x)=>BigInt(Math.floor(x%m/f)));return[new D("int64",h,[3,...e.dims]),Qu([f,1])]}}async encode_image({pixel_values:e,image_grid_thw:r}){return(await ue(this.sessions.vision_encoder,{pixel_values:e,[this.image_grid_thw_name]:r})).image_features}_merge_input_ids_with_image_features(e){return gr({image_token_id:this.config.image_token_id,...e})}prepare_inputs_for_generation(e,r,s){if(r.attention_mask&&!r.position_ids)if(!r.past_key_values)[r.position_ids,r.rope_deltas]=this.get_rope_index(r.input_ids,r.image_grid_thw,r.video_grid_thw,r.attention_mask);else{r.pixel_values=null;let n=BigInt(Object.values(r.past_key_values)[0].dims.at(-2)),o=r.rope_deltas.map(a=>n+a);r.position_ids=Rt([o,o,o],0)}return r}};var Ca=class extends Ia{image_grid_thw_name="image_grid_thw"};var Pa=class extends y{},Ew=class extends Pa{},Aw=class extends Pa{};var za=class extends Ca{};var La=class extends za{};var Mw=class extends La{};var Na=class extends y{},Tw=class extends Na{},Sw=class extends Na{async _call(e){return new G(await super._call(e))}};var $a=class extends y{},Ow=class extends $a{},Iw=class extends $a{async _call(e){return new yc(await super._call(e))}},yc=class extends or{};var Br=class extends y{},Cw=class extends Br{},Pw=class extends Br{async _call(e){return new we(await super._call(e))}},zw=class extends Br{async _call(e){return new G(await super._call(e))}},Lw=class extends Br{async _call(e){return new he(await super._call(e))}},Nw=class extends Br{async _call(e){return new Ae(await super._call(e))}};var Fr=class extends y{},$w=class extends Fr{},Rw=class extends Fr{async _call(e){return new we(await super._call(e))}},Dw=class extends Fr{async _call(e){return new G(await super._call(e))}},Uw=class extends Fr{async _call(e){return new he(await super._call(e))}},Bw=class extends Fr{async _call(e){return new Ae(await super._call(e))}};var Ra=class extends y{},Fw=class extends Ra{},jw=class extends Ra{async _call(e){return new bc(await super._call(e))}},bc=class extends or{};var vc=class extends Re{constructor({iou_scores:e,pred_masks:r}){super(),this.iou_scores=e,this.pred_masks=r}},kc=class extends y{},Gw=class extends kc{async get_image_embeddings({pixel_values:e}){return await Vt(this,{pixel_values:e})}async forward(e){!e.image_embeddings||!e.image_positional_embeddings?e={...e,...await this.get_image_embeddings(e)}:e={...e},e.input_labels??=st(e.input_points.dims.slice(0,-1));let r={image_embeddings:e.image_embeddings,image_positional_embeddings:e.image_positional_embeddings};return e.input_points&&(r.input_points=e.input_points),e.input_labels&&(r.input_labels=e.input_labels),e.input_boxes&&(r.input_boxes=e.input_boxes),await ue(this.sessions.prompt_encoder_mask_decoder,r)}async _call(e){return new vc(await super._call(e))}};var Ec=class extends Re{constructor({iou_scores:e,pred_masks:r,object_score_logits:s}){super(),this.iou_scores=e,this.pred_masks=r,this.object_score_logits=s}},Ac=class extends y{},Da=class extends Ac{async get_image_embeddings({pixel_values:e}){return await Vt(this,{pixel_values:e})}async forward(e){let{num_feature_levels:r}=this.config.vision_config;if(Array.from({length:r},(a,i)=>`image_embeddings.${i}`).some(a=>!e[a])?e={...e,...await this.get_image_embeddings(e)}:e={...e},e.input_points){if(e.input_boxes&&e.input_boxes.dims[1]!==1)throw new Error("When both `input_points` and `input_boxes` are provided, the number of boxes per image must be 1.");let a=e.input_points.dims;e.input_labels??=st(a.slice(0,-1)),e.input_boxes??=qe([a[0],0,4],0)}else if(e.input_boxes){let a=e.input_boxes.dims;e.input_labels=qe([a[0],a[1],0],-1n),e.input_points=qe([a[0],1,0,2],0)}else throw new Error("At least one of `input_points` or `input_boxes` must be provided.");let n=this.sessions.prompt_encoder_mask_decoder,o=ot(e,n.inputNames);return await ue(n,o)}async _call(e){return new Ec(await super._call(e))}},qw=class extends Da{},Ww=class extends Da{};var ln=class extends y{},Vw=class extends ln{},Hw=class extends ln{},Xw=class extends ln{};var cn=class extends y{},Kw=class extends cn{},Yw=class extends cn{},Qw=class extends cn{};var Ua=class extends y{},Jw=class extends Ua{},Ba=class extends Ua{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"text_model"})}},Zw=class extends nr{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"vision_model"})}};var Fa=class extends y{},ex=class extends Fa{},tx=class extends Fa{};var un=class extends y{main_input_name="input_values";forward_params=["input_values"]},rx=class extends un{async encode(e){return await ue(this.sessions.encoder_model,e)}async decode(e){return await ue(this.sessions.decoder_model,e)}},ja=class extends un{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"encoder_model"})}},Ga=class extends un{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"decoder_model"})}};var pn=class extends y{},sx=class extends pn{},nx=class extends pn{},ox=class extends pn{async generate_speech(e,r,{threshold:s=.5,minlenratio:n=0,maxlenratio:o=20,vocoder:a=null}={}){let i={input_ids:e},{encoder_outputs:l,encoder_attention_mask:u}=await Vt(this,i),p=l.dims[1]/this.config.reduction_factor,f=Math.floor(p*o),m=Math.floor(p*n),h=this.config.num_mel_bins,w=[],x=null,k=null,E=0;for(;;){++E;let T=Tb(!!k),P;k?P=k.output_sequence_out:P=new D("float32",new Float32Array(h),[1,1,h]);let C={use_cache_branch:T,output_sequence:P,encoder_attention_mask:u,speaker_embeddings:r,encoder_hidden_states:l};this.addPastKeyValues(C,x),k=await ue(this.sessions.decoder_model_merged,C),x=this.getPastKeyValues(k,x);let{prob:v,spectrum:F}=k;if(w.push(F),E>=m&&(Array.from(v.data).filter(H=>H>=s).length>0||E>=f))break}let A=Ee(w),{waveform:S}=await ue(a.sessions.model,{spectrogram:A});return{spectrogram:A,waveform:S}}},ax=class extends y{main_input_name="spectrogram"};var fs=class extends y{},ix=class extends fs{},lx=class extends fs{async _call(e){return new we(await super._call(e))}},cx=class extends fs{async _call(e){return new G(await super._call(e))}},ux=class extends fs{async _call(e){return new Ae(await super._call(e))}};var qa=class extends y{},px=class extends qa{},dx=class extends qa{};var Wa=class extends y{},fx=class extends Wa{},mx=class extends Wa{};var Mc=class extends y{},hx=class extends Mc{};var Tc=class extends y{},Va=class extends Tc{async generate_speech({input_ids:e,attention_mask:r,style:s,num_inference_steps:n=5,speed:o=1.05}){let{sampling_rate:a,chunk_compress_factor:i,base_chunk_size:l,latent_dim:u}=this.config,{last_hidden_state:p,durations:f}=await ue(this.sessions.text_encoder,{input_ids:e,attention_mask:r,style:s}),m=f.div(o).mul_(a),h=l*i,w=m.data,x=Int32Array.from(w,V=>Math.ceil(V/h)),k=Math.max(...x),E=e.dims[0],A=new BigInt64Array(E*k);for(let V=0;V<E;++V)A.fill(1n,V*k,V*k+x[V]);let S=new D("int64",A,[E,k]),T=u*i,P=T*k,C=ib([E,T,k]),v=C.data;for(let V=0;V<E;++V)if(x[V]!==k)for(let J=0;J<T;++J)v.fill(0,V*P+J*k+x[V],V*P+(J+1)*k);let F=qe([E],n);for(let V=0;V<n;++V){let J=qe([E],V);({denoised_latents:C}=await ue(this.sessions.latent_denoiser,{style:s,noisy_latents:C,latent_mask:S,encoder_outputs:p,attention_mask:r,timestep:J,num_inference_steps:F}))}let{waveform:H}=await ue(this.sessions.voice_decoder,{latents:C});return{waveform:H,durations:m}}};var dn=class extends y{},_x=class extends dn{},gx=class extends dn{async _call(e){return new G(await super._call(e))}},wx=class extends dn{};var Ha=class extends y{},xx=class extends Ha{},yx=class extends Ha{};var Xa=class extends y{forward_params=["input_ids","attention_mask","encoder_outputs","decoder_input_ids","decoder_attention_mask","past_key_values"]},bx=class extends Xa{},vx=class extends Xa{};var Ka=class extends y{},kx=class extends Ka{},Ex=class extends Ka{async _call(e){return new Sc(await super._call(e))}},Sc=class extends Zs{};var Oc=class extends y{},Ax=class extends Oc{};var Ic=class extends y{forward_params=["input_ids","attention_mask","position_ids","audio_values","past_key_values"]},Cc=class extends Ic{_merge_input_ids_with_audio_features(e){let r=e.audio_features.dims.at(-1),s=e.audio_features.view(-1,r);return vf({audio_token_id:this.config.ignore_index??this.config.audio_token_id,...e,audio_features:s})}},Mx=class extends Cc{};var fn=class extends y{},Tx=class extends fn{},Sx=class extends fn{async _call(e){return new xt(await super._call(e))}},Ox=class extends fn{async _call(e){return new G(await super._call(e))}};var ms=class extends y{},Ix=class extends ms{},Cx=class extends ms{async _call(e){return new xt(await super._call(e))}},Px=class extends ms{async _call(e){return new G(await super._call(e))}},zx=class extends ms{async _call(e){return new he(await super._call(e))}};var Ya=class extends y{},Lx=class extends Ya{},Nx=class extends Ya{};var $x=class extends y{main_input_name="pixel_values";forward_params=["pixel_values","decoder_input_ids","encoder_hidden_states","past_key_values"]};var Qa=class extends y{},Rx=class extends Qa{},Dx=class extends Qa{async _call(e){return new G(await super._call(e))}};var Pc=class extends y{},Ux=class extends Pc{};var Ja=class extends y{},Bx=class extends Ja{},Fx=class extends Ja{async _call(e){return new G(await super._call(e))}};var zc=class extends y{},jx=class extends zc{async _call(e){return new wf(await super._call(e))}};var Lc=class extends y{},Gx=class extends Lc{};var Nc=class extends Re{constructor({waveform:e,spectrogram:r}){super(),this.waveform=e,this.spectrogram=r}},$c=class extends y{},qx=class extends $c{async _call(e){return new Nc(await super._call(e))}};var mn=class extends y{},Wx=class extends mn{},Vx=class extends mn{async _call(e){return new xt(await super._call(e))}},Hx=class extends mn{async _call(e){return new G(await super._call(e))}};var Rc=class extends Re{constructor({logits:e,embeddings:r}){super(),this.logits=e,this.embeddings=r}},jr=class extends y{},Xx=class extends jr{},Kx=class extends jr{async _call(e){return new xt(await super._call(e))}},Yx=class extends jr{async _call(e){return new G(await super._call(e))}},Qx=class extends jr{async _call(e){return new Rc(await super._call(e))}},Jx=class extends jr{async _call(e){return new he(await super._call(e))}};var Dc=class extends y{},Zx=class extends Dc{};var ey=class extends Kn{return_timestamps=null;return_token_timestamps=null;num_frames=null;alignment_heads=null;task=null;language=null;no_timestamps_token_id=null;prompt_ids=null;is_multilingual=null;lang_to_id=null;task_to_id=null;max_initial_timestamp_index=1};var Za=class extends y{requires_attention_mask=!1;main_input_name="input_features";forward_params=["input_features","attention_mask","decoder_input_ids","decoder_attention_mask","past_key_values"]},ty=class extends Za{},Uc=class extends Za{_prepare_generation_config(e,r){return super._prepare_generation_config(e,r,ey)}_retrieve_init_tokens(e){let r=[e.decoder_start_token_id],s=e.language,n=e.task;if(e.is_multilingual){s||(Q.warn("No language specified - defaulting to English (en)."),s="en");let a=`<|${NA(s)}|>`;r.push(e.lang_to_id[a]),r.push(e.task_to_id[n??"transcribe"])}else if(s||n)throw new Error("Cannot specify `task` or `language` for an English-only model. If the model is intended to be multilingual, pass `is_multilingual=true` to generate, or update the generation config.");return!e.return_timestamps&&e.no_timestamps_token_id&&r.at(-1)!==e.no_timestamps_token_id?r.push(e.no_timestamps_token_id):e.return_timestamps&&r.at(-1)===e.no_timestamps_token_id&&(Q.warn("<|notimestamps|> prompt token is removed from generation_config since `return_timestamps` is set to `true`."),r.pop()),r.filter(o=>o!=null)}async generate({inputs:e=null,generation_config:r=null,logits_processor:s=null,stopping_criteria:n=null,...o}){r=this._prepare_generation_config(r,o);let a=o.decoder_input_ids??this._retrieve_init_tokens(r);if(r.return_timestamps&&(s??=new is,s.push(new Ol(r,a))),r.begin_suppress_tokens&&(s??=new is,s.push(new Ws(r.begin_suppress_tokens,a.length))),r.return_token_timestamps){if(!r.alignment_heads)throw new Error("Model generation config has no `alignment_heads`, token-level timestamps not available. See https://gist.github.com/hollance/42e32852f24243b748ae6bc1f985b13a on how to add this property to the generation config.");r.task==="translate"&&Q.warn("Token-level timestamps may not be reliable for task 'translate'."),r.output_attentions=!0,r.return_dict_in_generate=!0}let i=await super.generate({inputs:e,generation_config:r,logits_processor:s,decoder_input_ids:a,...o});return r.return_token_timestamps&&(i.token_timestamps=this._extract_token_timestamps(i,r.alignment_heads,r.num_frames)),i}_extract_token_timestamps(e,r,s=null,n=.02){if(!e.cross_attentions)throw new Error("Model outputs must contain cross attentions to extract timestamps. This is most likely because the model was not exported with `output_attentions=True`.");s==null&&Q.warn("`num_frames` has not been set, meaning the entire audio will be analyzed. This may lead to inaccurate token-level timestamps for short audios (< 30 seconds).");let o=this.config.median_filter_width;o===void 0&&(Q.warn("Model config has no `median_filter_width`, using default value of 7."),o=7);let a=e.cross_attentions,i=Array.from({length:this.config.decoder_layers},(x,k)=>Ee(a.map(E=>E[k]),2)),l=Rt(r.map(([x,k])=>{if(x>=i.length)throw new Error(`Layer index ${x} is out of bounds for cross attentions (length ${i.length}).`);return s?i[x].slice(null,k,null,[0,s]):i[x].slice(null,k)})).transpose(1,0,2,3),[u,p]=Yu(l,-2,0,!0),f=l.clone();for(let x=0;x<f.dims[0];++x){let k=f[x];for(let E=0;E<k.dims[0];++E){let A=k[E],S=u[x][E][0].data,T=p[x][E][0].data;for(let P=0;P<A.dims[0];++P){let C=A[P].data;for(let v=0;v<C.length;++v)C[v]=(C[v]-T[v])/S[v];C.set(Wk(C,o))}}}let m=[nl(f,1)],h=e.sequences.dims,w=new D("float32",new Float32Array(h[0]*h[1]),h);for(let x=0;x<h[0];++x){let k=m[x].neg().squeeze_(0),[E,A]=Hk(k.tolist()),S=Array.from({length:E.length-1},(C,v)=>E[v+1]-E[v]),T=ft([1],S).map(C=>!!C),P=[];for(let C=0;C<T.length;++C)T[C]&&P.push(A[C]*n);w[x].data.set(P,1)}return w}},ry=class extends Uc{};var Gr=class extends y{},sy=class extends Gr{},ny=class extends Gr{async _call(e){return new we(await super._call(e))}},oy=class extends Gr{async _call(e){return new G(await super._call(e))}},ay=class extends Gr{async _call(e){return new he(await super._call(e))}},iy=class extends Gr{async _call(e){return new Ae(await super._call(e))}};var qr=class extends y{},ly=class extends qr{},cy=class extends qr{async _call(e){return new we(await super._call(e))}},uy=class extends qr{async _call(e){return new G(await super._call(e))}},py=class extends qr{async _call(e){return new he(await super._call(e))}},dy=class extends qr{async _call(e){return new Ae(await super._call(e))}};var ei=class extends y{},fy=class extends ei{},my=class extends ei{async _call(e){return new Bc(await super._call(e))}},Bc=class extends Re{constructor({logits:e,pred_boxes:r}){super(),this.logits=e,this.pred_boxes=r}};var ti=class extends y{},hy=class extends ti{},_y=class extends ti{};var Uz=new Map([["bert","BertModel"],["neobert","NeoBertModel"],["modernbert","ModernBertModel"],["nomic_bert","NomicBertModel"],["roformer","RoFormerModel"],["electra","ElectraModel"],["esm","EsmModel"],["convbert","ConvBertModel"],["camembert","CamembertModel"],["deberta","DebertaModel"],["deberta-v2","DebertaV2Model"],["mpnet","MPNetModel"],["albert","AlbertModel"],["distilbert","DistilBertModel"],["roberta","RobertaModel"],["xlm","XLMModel"],["xlm-roberta","XLMRobertaModel"],["clap","ClapModel"],["clip","CLIPModel"],["clipseg","CLIPSegModel"],["chinese_clip","ChineseCLIPModel"],["siglip","SiglipModel"],["jina_clip","JinaCLIPModel"],["mobilebert","MobileBertModel"],["squeezebert","SqueezeBertModel"],["wav2vec2","Wav2Vec2Model"],["wav2vec2-bert","Wav2Vec2BertModel"],["unispeech","UniSpeechModel"],["unispeech-sat","UniSpeechSatModel"],["hubert","HubertModel"],["wavlm","WavLMModel"],["audio-spectrogram-transformer","ASTModel"],["vits","VitsModel"],["pyannote","PyAnnoteModel"],["wespeaker-resnet","WeSpeakerResNetModel"],["detr","DetrModel"],["rt_detr","RTDetrModel"],["rt_detr_v2","RTDetrV2Model"],["rf_detr","RFDetrModel"],["d_fine","DFineModel"],["table-transformer","TableTransformerModel"],["vit","ViTModel"],["ijepa","IJepaModel"],["pvt","PvtModel"],["vit_msn","ViTMSNModel"],["vit_mae","ViTMAEModel"],["groupvit","GroupViTModel"],["fastvit","FastViTModel"],["mobilevit","MobileViTModel"],["mobilevitv2","MobileViTV2Model"],["owlvit","OwlViTModel"],["owlv2","Owlv2Model"],["beit","BeitModel"],["deit","DeiTModel"],["hiera","HieraModel"],["convnext","ConvNextModel"],["convnextv2","ConvNextV2Model"],["dinov2","Dinov2Model"],["dinov2_with_registers","Dinov2WithRegistersModel"],["dinov3_vit","DINOv3ViTModel"],["dinov3_convnext","DINOv3ConvNextModel"],["resnet","ResNetModel"],["swin","SwinModel"],["swin2sr","Swin2SRModel"],["donut-swin","DonutSwinModel"],["yolos","YolosModel"],["dpt","DPTModel"],["glpn","GLPNModel"],["hifigan","SpeechT5HifiGan"],["efficientnet","EfficientNetModel"],["decision_transformer","DecisionTransformerModel"],["patchtst","PatchTSTModel"],["patchtsmixer","PatchTSMixerModel"],["mobilenet_v1","MobileNetV1Model"],["mobilenet_v2","MobileNetV2Model"],["mobilenet_v3","MobileNetV3Model"],["mobilenet_v4","MobileNetV4Model"],["maskformer","MaskFormerModel"],["mgp-str","MgpstrForSceneTextRecognition"],["style_text_to_speech_2","StyleTextToSpeech2Model"]]),Bz=new Map([["t5","T5Model"],["longt5","LongT5Model"],["mt5","MT5Model"],["bart","BartModel"],["mbart","MBartModel"],["marian","MarianModel"],["whisper","WhisperModel"],["m2m_100","M2M100Model"],["blenderbot","BlenderbotModel"],["blenderbot-small","BlenderbotSmallModel"]]),Fz=new Map([["mimi","MimiModel"],["dac","DacModel"],["snac","SnacModel"]]),jz=new Map([["bloom","BloomModel"],["jais","JAISModel"],["gpt2","GPT2Model"],["gpt_oss","GptOssModel"],["gptj","GPTJModel"],["gpt_bigcode","GPTBigCodeModel"],["gpt_neo","GPTNeoModel"],["gpt_neox","GPTNeoXModel"],["codegen","CodeGenModel"],["llama","LlamaModel"],["apertus","ApertusModel"],["nanochat","NanoChatModel"],["arcee","ArceeModel"],["afmoe","AfmoeModel"],["lfm2","Lfm2Model"],["lfm2_moe","Lfm2MoeModel"],["smollm3","SmolLM3Model"],["exaone","ExaoneModel"],["olmo","OlmoModel"],["olmo2","Olmo2Model"],["olmo3","Olmo3Model"],["mobilellm","MobileLLMModel"],["granite","GraniteModel"],["granitemoehybrid","GraniteMoeHybridModel"],["cohere","CohereModel"],["cohere2","Cohere2Model"],["gemma","GemmaModel"],["gemma2","Gemma2Model"],["vaultgemma","VaultGemmaModel"],["gemma3_text","Gemma3Model"],["helium","HeliumModel"],["glm","GlmModel"],["openelm","OpenELMModel"],["qwen2","Qwen2Model"],["qwen3","Qwen3Model"],["phi","PhiModel"],["phi3","Phi3Model"],["mpt","MptModel"],["opt","OPTModel"],["mistral","MistralModel"],["ministral","MinistralModel"],["ministral3","Ministral3Model"],["ernie4_5","Ernie4_5_Model"],["starcoder2","Starcoder2Model"],["falcon","FalconModel"],["falcon_h1","FalconH1Model"],["stablelm","StableLmModel"],["modernbert-decoder","ModernBertDecoderModel"],["hunyuan_v1_dense","HunYuanDenseV1Model"],["youtu","YoutuModel"]]),o2=new Map([["speecht5","SpeechT5ForSpeechToText"],["whisper","WhisperForConditionalGeneration"],["lite-whisper","LiteWhisperForConditionalGeneration"],["moonshine","MoonshineForConditionalGeneration"]]),a2=new Map([["speecht5","SpeechT5ForTextToSpeech"]]),i2=new Map([["vits","VitsModel"],["musicgen","MusicgenForConditionalGeneration"],["supertonic","SupertonicForConditionalGeneration"]]),l2=new Map([["bert","BertForSequenceClassification"],["neobert","NeoBertForSequenceClassification"],["modernbert","ModernBertForSequenceClassification"],["roformer","RoFormerForSequenceClassification"],["electra","ElectraForSequenceClassification"],["esm","EsmForSequenceClassification"],["convbert","ConvBertForSequenceClassification"],["camembert","CamembertForSequenceClassification"],["deberta","DebertaForSequenceClassification"],["deberta-v2","DebertaV2ForSequenceClassification"],["mpnet","MPNetForSequenceClassification"],["albert","AlbertForSequenceClassification"],["distilbert","DistilBertForSequenceClassification"],["roberta","RobertaForSequenceClassification"],["xlm","XLMForSequenceClassification"],["xlm-roberta","XLMRobertaForSequenceClassification"],["bart","BartForSequenceClassification"],["mbart","MBartForSequenceClassification"],["mobilebert","MobileBertForSequenceClassification"],["squeezebert","SqueezeBertForSequenceClassification"]]),c2=new Map([["bert","BertForTokenClassification"],["neobert","NeoBertForTokenClassification"],["modernbert","ModernBertForTokenClassification"],["roformer","RoFormerForTokenClassification"],["electra","ElectraForTokenClassification"],["esm","EsmForTokenClassification"],["convbert","ConvBertForTokenClassification"],["camembert","CamembertForTokenClassification"],["deberta","DebertaForTokenClassification"],["deberta-v2","DebertaV2ForTokenClassification"],["mpnet","MPNetForTokenClassification"],["distilbert","DistilBertForTokenClassification"],["roberta","RobertaForTokenClassification"],["xlm","XLMForTokenClassification"],["xlm-roberta","XLMRobertaForTokenClassification"]]),u2=new Map([["t5","T5ForConditionalGeneration"],["longt5","LongT5ForConditionalGeneration"],["mt5","MT5ForConditionalGeneration"],["bart","BartForConditionalGeneration"],["mbart","MBartForConditionalGeneration"],["marian","MarianMTModel"],["m2m_100","M2M100ForConditionalGeneration"],["blenderbot","BlenderbotForConditionalGeneration"],["blenderbot-small","BlenderbotSmallForConditionalGeneration"]]),p2=new Map([["bloom","BloomForCausalLM"],["gpt2","GPT2LMHeadModel"],["gpt_oss","GptOssForCausalLM"],["jais","JAISLMHeadModel"],["gptj","GPTJForCausalLM"],["gpt_bigcode","GPTBigCodeForCausalLM"],["gpt_neo","GPTNeoForCausalLM"],["gpt_neox","GPTNeoXForCausalLM"],["codegen","CodeGenForCausalLM"],["llama","LlamaForCausalLM"],["nanochat","NanoChatForCausalLM"],["apertus","ApertusForCausalLM"],["llama4_text","Llama4ForCausalLM"],["arcee","ArceeForCausalLM"],["afmoe","AfmoeForCausalLM"],["lfm2","Lfm2ForCausalLM"],["lfm2_moe","Lfm2MoeForCausalLM"],["smollm3","SmolLM3ForCausalLM"],["exaone","ExaoneForCausalLM"],["olmo","OlmoForCausalLM"],["olmo2","Olmo2ForCausalLM"],["olmo3","Olmo3ForCausalLM"],["mobilellm","MobileLLMForCausalLM"],["granite","GraniteForCausalLM"],["granitemoehybrid","GraniteMoeHybridForCausalLM"],["cohere","CohereForCausalLM"],["cohere2","Cohere2ForCausalLM"],["gemma","GemmaForCausalLM"],["gemma2","Gemma2ForCausalLM"],["vaultgemma","VaultGemmaForCausalLM"],["gemma3_text","Gemma3ForCausalLM"],["helium","HeliumForCausalLM"],["glm","GlmForCausalLM"],["openelm","OpenELMForCausalLM"],["qwen2","Qwen2ForCausalLM"],["qwen3","Qwen3ForCausalLM"],["phi","PhiForCausalLM"],["phi3","Phi3ForCausalLM"],["mpt","MptForCausalLM"],["opt","OPTForCausalLM"],["mbart","MBartForCausalLM"],["mistral","MistralForCausalLM"],["ministral","MinistralForCausalLM"],["ministral3","Ministral3ForCausalLM"],["ernie4_5","Ernie4_5_ForCausalLM"],["starcoder2","Starcoder2ForCausalLM"],["falcon","FalconForCausalLM"],["falcon_h1","FalconH1ForCausalLM"],["trocr","TrOCRForCausalLM"],["stablelm","StableLmForCausalLM"],["modernbert-decoder","ModernBertDecoderForCausalLM"],["hunyuan_v1_dense","HunYuanDenseV1ForCausalLM"],["youtu","YoutuForCausalLM"],["phi3_v","Phi3VForCausalLM"]]),Gz=new Map([["multi_modality","MultiModalityCausalLM"]]),d2=new Map([["bert","BertForMaskedLM"],["neobert","NeoBertForMaskedLM"],["modernbert","ModernBertForMaskedLM"],["roformer","RoFormerForMaskedLM"],["electra","ElectraForMaskedLM"],["esm","EsmForMaskedLM"],["convbert","ConvBertForMaskedLM"],["camembert","CamembertForMaskedLM"],["deberta","DebertaForMaskedLM"],["deberta-v2","DebertaV2ForMaskedLM"],["mpnet","MPNetForMaskedLM"],["albert","AlbertForMaskedLM"],["distilbert","DistilBertForMaskedLM"],["roberta","RobertaForMaskedLM"],["xlm","XLMWithLMHeadModel"],["xlm-roberta","XLMRobertaForMaskedLM"],["mobilebert","MobileBertForMaskedLM"],["squeezebert","SqueezeBertForMaskedLM"]]),f2=new Map([["bert","BertForQuestionAnswering"],["neobert","NeoBertForQuestionAnswering"],["roformer","RoFormerForQuestionAnswering"],["electra","ElectraForQuestionAnswering"],["convbert","ConvBertForQuestionAnswering"],["camembert","CamembertForQuestionAnswering"],["deberta","DebertaForQuestionAnswering"],["deberta-v2","DebertaV2ForQuestionAnswering"],["mpnet","MPNetForQuestionAnswering"],["albert","AlbertForQuestionAnswering"],["distilbert","DistilBertForQuestionAnswering"],["roberta","RobertaForQuestionAnswering"],["xlm","XLMForQuestionAnswering"],["xlm-roberta","XLMRobertaForQuestionAnswering"],["mobilebert","MobileBertForQuestionAnswering"],["squeezebert","SqueezeBertForQuestionAnswering"]]),m2=new Map([["vision-encoder-decoder","VisionEncoderDecoderModel"],["idefics3","Idefics3ForConditionalGeneration"],["smolvlm","SmolVLMForConditionalGeneration"]]),h2=new Map([["llava","LlavaForConditionalGeneration"],["llava_onevision","LlavaOnevisionForConditionalGeneration"],["moondream1","Moondream1ForConditionalGeneration"],["florence2","Florence2ForConditionalGeneration"],["qwen2_vl","Qwen2VLForConditionalGeneration"],["qwen2_5_vl","Qwen2_5_VLForConditionalGeneration"],["qwen3_vl","Qwen3VLForConditionalGeneration"],["qwen3_5","Qwen3_5ForConditionalGeneration"],["qwen3_5_moe","Qwen3_5MoeForConditionalGeneration"],["idefics3","Idefics3ForConditionalGeneration"],["smolvlm","SmolVLMForConditionalGeneration"],["paligemma","PaliGemmaForConditionalGeneration"],["llava_qwen2","LlavaQwen2ForCausalLM"],["gemma3n","Gemma3nForConditionalGeneration"],["mistral3","Mistral3ForConditionalGeneration"]]),_2=new Map([["ultravox","UltravoxModel"],["voxtral","VoxtralForConditionalGeneration"]]),qz=new Map([["vision-encoder-decoder","VisionEncoderDecoderModel"]]),g2=new Map([["vit","ViTForImageClassification"],["ijepa","IJepaForImageClassification"],["pvt","PvtForImageClassification"],["vit_msn","ViTMSNForImageClassification"],["fastvit","FastViTForImageClassification"],["mobilevit","MobileViTForImageClassification"],["mobilevitv2","MobileViTV2ForImageClassification"],["beit","BeitForImageClassification"],["deit","DeiTForImageClassification"],["hiera","HieraForImageClassification"],["convnext","ConvNextForImageClassification"],["convnextv2","ConvNextV2ForImageClassification"],["dinov2","Dinov2ForImageClassification"],["dinov2_with_registers","Dinov2WithRegistersForImageClassification"],["resnet","ResNetForImageClassification"],["swin","SwinForImageClassification"],["segformer","SegformerForImageClassification"],["efficientnet","EfficientNetForImageClassification"],["mobilenet_v1","MobileNetV1ForImageClassification"],["mobilenet_v2","MobileNetV2ForImageClassification"],["mobilenet_v3","MobileNetV3ForImageClassification"],["mobilenet_v4","MobileNetV4ForImageClassification"]]),w2=new Map([["detr","DetrForObjectDetection"],["rt_detr","RTDetrForObjectDetection"],["rt_detr_v2","RTDetrV2ForObjectDetection"],["rf_detr","RFDetrForObjectDetection"],["d_fine","DFineForObjectDetection"],["table-transformer","TableTransformerForObjectDetection"],["yolos","YolosForObjectDetection"]]),x2=new Map([["owlvit","OwlViTForObjectDetection"],["owlv2","Owlv2ForObjectDetection"],["grounding-dino","GroundingDinoForObjectDetection"]]),ri=new Map([["detr","DetrForSegmentation"],["clipseg","CLIPSegForImageSegmentation"]]),y2=new Map([["segformer","SegformerForSemanticSegmentation"],["sapiens","SapiensForSemanticSegmentation"],["swin","SwinForSemanticSegmentation"],["mobilenet_v1","MobileNetV1ForSemanticSegmentation"],["mobilenet_v2","MobileNetV2ForSemanticSegmentation"],["mobilenet_v3","MobileNetV3ForSemanticSegmentation"],["mobilenet_v4","MobileNetV4ForSemanticSegmentation"]]),b2=new Map([["detr","DetrForSegmentation"],["maskformer","MaskFormerForInstanceSegmentation"]]),v2=new Map([["sam","SamModel"],["sam2","Sam2Model"],["edgetam","EdgeTamModel"],["sam3_tracker","Sam3TrackerModel"]]),k2=new Map([["wav2vec2","Wav2Vec2ForCTC"],["wav2vec2-bert","Wav2Vec2BertForCTC"],["unispeech","UniSpeechForCTC"],["unispeech-sat","UniSpeechSatForCTC"],["wavlm","WavLMForCTC"],["hubert","HubertForCTC"],["parakeet_ctc","ParakeetForCTC"]]),E2=new Map([["wav2vec2","Wav2Vec2ForSequenceClassification"],["wav2vec2-bert","Wav2Vec2BertForSequenceClassification"],["unispeech","UniSpeechForSequenceClassification"],["unispeech-sat","UniSpeechSatForSequenceClassification"],["wavlm","WavLMForSequenceClassification"],["hubert","HubertForSequenceClassification"],["audio-spectrogram-transformer","ASTForAudioClassification"]]),A2=new Map([["wavlm","WavLMForXVector"]]),M2=new Map([["unispeech-sat","UniSpeechSatForAudioFrameClassification"],["wavlm","WavLMForAudioFrameClassification"],["wav2vec2","Wav2Vec2ForAudioFrameClassification"],["pyannote","PyAnnoteForAudioFrameClassification"]]),T2=new Map([["vitmatte","VitMatteForImageMatting"]]),Wz=new Map([["patchtst","PatchTSTForPrediction"],["patchtsmixer","PatchTSMixerForPrediction"]]),S2=new Map([["swin2sr","Swin2SRForImageSuperResolution"]]),O2=new Map([["dpt","DPTForDepthEstimation"],["depth_anything","DepthAnythingForDepthEstimation"],["glpn","GLPNForDepthEstimation"],["sapiens","SapiensForDepthEstimation"],["depth_pro","DepthProForDepthEstimation"],["metric3d","Metric3DForDepthEstimation"],["metric3dv2","Metric3Dv2ForDepthEstimation"]]),I2=new Map([["sapiens","SapiensForNormalEstimation"]]),C2=new Map([["vitpose","VitPoseForPoseEstimation"]]),P2=new Map([["clip","CLIPVisionModelWithProjection"],["siglip","SiglipVisionModel"],["jina_clip","JinaCLIPVisionModel"]]),Ob=[[Uz,j.EncoderOnly],[Bz,j.EncoderDecoder],[jz,j.DecoderOnlyWithoutHead],[Fz,j.AutoEncoder],[l2,j.EncoderOnly],[c2,j.EncoderOnly],[u2,j.Seq2Seq],[o2,j.Seq2Seq],[p2,j.DecoderOnly],[Gz,j.MultiModality],[d2,j.EncoderOnly],[f2,j.EncoderOnly],[m2,j.Vision2Seq],[h2,j.ImageTextToText],[_2,j.AudioTextToText],[g2,j.EncoderOnly],[ri,j.EncoderOnly],[b2,j.EncoderOnly],[y2,j.EncoderOnly],[T2,j.EncoderOnly],[Wz,j.EncoderOnly],[S2,j.EncoderOnly],[O2,j.EncoderOnly],[I2,j.EncoderOnly],[C2,j.EncoderOnly],[w2,j.EncoderOnly],[x2,j.EncoderOnly],[v2,j.MaskGeneration],[k2,j.EncoderOnly],[E2,j.EncoderOnly],[a2,j.Seq2Seq],[i2,j.EncoderOnly],[A2,j.EncoderOnly],[M2,j.EncoderOnly],[P2,j.EncoderOnly]];for(let[t,e]of Ob)for(let r of t.values()){_r.set(r,e);let s=Fc[r];Xs.set(s,r),bf.set(r,s)}var Vz=[["MusicgenForConditionalGeneration",fa,j.Musicgen],["Phi3VForCausalLM",Ma,j.Phi3V],["CLIPTextModelWithProjection",io,j.EncoderOnly],["SiglipTextModel",Ba,j.EncoderOnly],["JinaCLIPTextModel",Xo,j.EncoderOnly],["ClapTextModelWithProjection",oo,j.EncoderOnly],["ClapAudioModelWithProjection",ao,j.EncoderOnly],["DacEncoderModel",go,j.EncoderOnly],["DacDecoderModel",wo,j.EncoderOnly],["MimiEncoderModel",ra,j.EncoderOnly],["MimiDecoderModel",sa,j.EncoderOnly],["SnacEncoderModel",ja,j.EncoderOnly],["SnacDecoderModel",Ga,j.EncoderOnly],["Gemma3nForConditionalGeneration",Po,j.ImageAudioTextToText],["SupertonicForConditionalGeneration",Va,j.Supertonic],["ChatterboxModel",no,j.Chatterbox]];for(let[t,e,r]of Vz)_r.set(t,r),Xs.set(e,t),bf.set(t,e);var Ib=new Map([["modnet",ri],["birefnet",ri],["isnet",ri],["ben",ri]]);for(let[t,e]of Ib.entries())e.set(t,"PreTrainedModel"),_r.set(t,j.EncoderOnly),bf.set(t,y);_r.set("PreTrainedModel",j.EncoderOnly);Xs.set(y,"PreTrainedModel");var Pe={MODEL_FOR_SEQUENCE_CLASSIFICATION_MAPPING_NAMES:l2,MODEL_FOR_TOKEN_CLASSIFICATION_MAPPING_NAMES:c2,MODEL_FOR_TEXT_TO_SPECTROGRAM_MAPPING_NAMES:a2,MODEL_FOR_TEXT_TO_WAVEFORM_MAPPING_NAMES:i2,MODEL_FOR_MASKED_LM_MAPPING_NAMES:d2,MODEL_FOR_QUESTION_ANSWERING_MAPPING_NAMES:f2,MODEL_FOR_IMAGE_CLASSIFICATION_MAPPING_NAMES:g2,MODEL_FOR_IMAGE_SEGMENTATION_MAPPING_NAMES:ri,MODEL_FOR_SEMANTIC_SEGMENTATION_MAPPING_NAMES:y2,MODEL_FOR_UNIVERSAL_SEGMENTATION_MAPPING_NAMES:b2,MODEL_FOR_OBJECT_DETECTION_MAPPING_NAMES:w2,MODEL_FOR_ZERO_SHOT_OBJECT_DETECTION_MAPPING_NAMES:x2,MODEL_FOR_MASK_GENERATION_MAPPING_NAMES:v2,MODEL_FOR_CTC_MAPPING_NAMES:k2,MODEL_FOR_AUDIO_CLASSIFICATION_MAPPING_NAMES:E2,MODEL_FOR_AUDIO_XVECTOR_MAPPING_NAMES:A2,MODEL_FOR_AUDIO_FRAME_CLASSIFICATION_MAPPING_NAMES:M2,MODEL_FOR_DOCUMENT_QUESTION_ANSWERING_MAPPING_NAMES:qz,MODEL_FOR_IMAGE_MATTING_MAPPING_NAMES:T2,MODEL_FOR_IMAGE_TO_IMAGE_MAPPING_NAMES:S2,MODEL_FOR_DEPTH_ESTIMATION_MAPPING_NAMES:O2,MODEL_FOR_NORMAL_ESTIMATION_MAPPING_NAMES:I2,MODEL_FOR_POSE_ESTIMATION_MAPPING_NAMES:C2,MODEL_FOR_IMAGE_FEATURE_EXTRACTION_MAPPING_NAMES:P2,MODEL_FOR_IMAGE_TEXT_TO_TEXT_MAPPING_NAMES:h2,MODEL_FOR_AUDIO_TEXT_TO_TEXT_MAPPING_NAMES:_2,MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING_NAMES:u2,MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING_NAMES:o2,MODEL_FOR_CAUSAL_LM_MAPPING_NAMES:p2,MODEL_FOR_VISION_2_SEQ_MAPPING_NAMES:m2};t2(Pe);var Oe=class{static MODEL_CLASS_MAPPINGS=null;static BASE_IF_FAIL=!1;static async from_pretrained(e,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main",model_file_name:i=null,subfolder:l="onnx",device:u=null,dtype:p=null,use_external_data_format:f=null,session_options:m={}}={}){let h={progress_callback:r,config:s,cache_dir:n,local_files_only:o,revision:a,model_file_name:i,subfolder:l,device:u,dtype:p,use_external_data_format:f,session_options:m};if(h.config=await hr.from_pretrained(e,h),!this.MODEL_CLASS_MAPPINGS)throw new Error("`MODEL_CLASS_MAPPINGS` not implemented for this type of `AutoClass`: "+this.name);let w=h.config.model_type;for(let x of this.MODEL_CLASS_MAPPINGS){let k=x.get(w);if(!k){for(let E of x.values())if(E[0]===w){k=E;break}if(!k)continue}return await Fc[k].from_pretrained(e,h)}if(this.BASE_IF_FAIL)return Ib.has(w)||Q.warn(`Unknown model class "${w}", attempting to construct from base class.`),await y.from_pretrained(e,h);throw Error(`Unsupported model type: ${w}`)}},wr=class extends Oe{static MODEL_CLASS_MAPPINGS=Ob.map(e=>e[0]);static BASE_IF_FAIL=!0},si=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_SEQUENCE_CLASSIFICATION_MAPPING_NAMES]},jc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_TOKEN_CLASSIFICATION_MAPPING_NAMES]},hn=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING_NAMES]},Gc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING_NAMES]},qc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_TEXT_TO_SPECTROGRAM_MAPPING_NAMES]},Wc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_TEXT_TO_WAVEFORM_MAPPING_NAMES]},Vc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_CAUSAL_LM_MAPPING_NAMES]},Hc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_MASKED_LM_MAPPING_NAMES]},Xc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_QUESTION_ANSWERING_MAPPING_NAMES]},Kc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_VISION_2_SEQ_MAPPING_NAMES]},Yc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_IMAGE_CLASSIFICATION_MAPPING_NAMES]},ni=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_IMAGE_SEGMENTATION_MAPPING_NAMES]},oi=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_SEMANTIC_SEGMENTATION_MAPPING_NAMES]},ai=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_UNIVERSAL_SEGMENTATION_MAPPING_NAMES]},Qc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_OBJECT_DETECTION_MAPPING_NAMES]},Jc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_ZERO_SHOT_OBJECT_DETECTION_MAPPING_NAMES]},Cb=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_MASK_GENERATION_MAPPING_NAMES]},Zc=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_CTC_MAPPING_NAMES]},eu=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_AUDIO_CLASSIFICATION_MAPPING_NAMES]},Pb=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_AUDIO_XVECTOR_MAPPING_NAMES]},zb=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_AUDIO_FRAME_CLASSIFICATION_MAPPING_NAMES]},tu=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_DOCUMENT_QUESTION_ANSWERING_MAPPING_NAMES]},Lb=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_IMAGE_MATTING_MAPPING_NAMES]},ru=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_IMAGE_TO_IMAGE_MAPPING_NAMES]},su=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_DEPTH_ESTIMATION_MAPPING_NAMES]},Nb=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_NORMAL_ESTIMATION_MAPPING_NAMES]},$b=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_POSE_ESTIMATION_MAPPING_NAMES]},nu=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_IMAGE_FEATURE_EXTRACTION_MAPPING_NAMES]},Rb=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_IMAGE_TEXT_TO_TEXT_MAPPING_NAMES]},Db=class extends Oe{static MODEL_CLASS_MAPPINGS=[Pe.MODEL_FOR_AUDIO_TEXT_TO_TEXT_MAPPING_NAMES]};async function Qe(t){return Array.isArray(t)||(t=[t]),await Promise.all(t.map(e=>Ke.read(e)))}async function hs(t,e){return Array.isArray(t)||(t=[t]),await Promise.all(t.map(r=>typeof r=="string"||r instanceof URL?qp(r,e):r instanceof Float64Array?new Float32Array(r):r))}function ou(t,e){e&&(t=t.map(a=>a|0));let[r,s,n,o]=t;return{xmin:r,ymin:s,xmax:n,ymax:o}}var de=class extends Ze{constructor({task:e,model:r,tokenizer:s=null,processor:n=null}){super(),this.task=e,this.model=r,this.tokenizer=s,this.processor=n}async dispose(){await this.model.dispose()}};var ii=class extends de{async _call(e,{top_k:r=1}={}){let s=this.tokenizer(e,{padding:!0,truncation:!0}),n=await this.model(s),{problem_type:o,id2label:a}=this.model.config,i=o==="multi_label_classification"?u=>u.sigmoid():u=>new D("float32",Ie(u.data),u.dims),l=[];for(let u of n.logits){let p=i(u),f=await Wt(p,r),m=f[0].tolist(),w=f[1].tolist().map((x,k)=>({label:a?a[x]:`LABEL_${x}`,score:m[k]}));r===1?l.push(...w):l.push(w)}return Array.isArray(e)||r===1?l:l[0]}};var li=class extends de{async _call(e,{ignore_labels:r=["O"]}={}){let s=Array.isArray(e),n=this.tokenizer(s?e:[e],{padding:!0,truncation:!0}),a=(await this.model(n)).logits,i=this.model.config.id2label,l=[];for(let u=0;u<a.dims[0];++u){let p=n.input_ids[u],f=a[u],m=[];for(let h=0;h<f.dims[0];++h){let w=f[h],x=Se(w.data)[1],k=i?i[x]:`LABEL_${x}`;if(r.includes(k))continue;let E=this.tokenizer.decode([p[h].item()],{skip_special_tokens:!0});if(E==="")continue;let A=Ie(w.data);m.push({entity:k,score:A[x],index:h,word:E})}l.push(m)}return s?l:l[0]}};var ci=class extends de{async _call(e,r,{top_k:s=1}={}){let n=this.tokenizer(e,{text_pair:r,padding:!0,truncation:!0}),o=Array.isArray(e),{start_logits:a,end_logits:i}=await this.model(n),l=n.input_ids.tolist(),u=n.attention_mask.tolist(),{all_special_ids:p,sep_token_id:f}=this.tokenizer,m=[];for(let h=0;h<a.dims[0];++h){let w=l[h],x=w.findIndex(C=>C==f),k=a[h].tolist(),E=i[h].tolist();for(let C=1;C<k.length;++C)(u[h]==0||C<=x||p.findIndex(v=>v==w[C])!==-1)&&(k[C]=-1/0,E[C]=-1/0);let A=Ie(k).map((C,v)=>[C,v]),S=Ie(E).map((C,v)=>[C,v]);A[0][0]=0,S[0][0]=0;let T=nk(A,S).filter(C=>C[0][1]<=C[1][1]).map(C=>[C[0][1],C[1][1],C[0][0]*C[1][0]]).sort((C,v)=>v[2]-C[2]),P=[];for(let C=0;C<Math.min(T.length,s);++C){let[v,F,H]=T[C],V=w.slice(v,F+1),J=this.tokenizer.decode(V,{skip_special_tokens:!0});P.push({answer:J,score:H})}s===1?m.push(...P):m.push(P)}return o?m:m[0]}};var ui=class extends de{async _call(e,{top_k:r=5}={}){let{mask_token_id:s,mask_token:n}=this.tokenizer,o=this.tokenizer(e,{padding:!0,truncation:!0}),{logits:a}=await this.model(o),i=[],l=o.input_ids.tolist();for(let u=0;u<l.length;++u){let p=l[u],f=p.findIndex(k=>k==s);if(f===-1)throw Error(`Mask token (${n}) not found in text.`);let m=a[u][f],h=await Wt(new D("float32",Ie(m.data),m.dims),r),w=h[0].tolist(),x=h[1].tolist();i.push(x.map((k,E)=>{let A=p.slice();return A[f]=k,{score:w[E],token:Number(k),token_str:this.tokenizer.decode([k]),sequence:this.tokenizer.decode(A,{skip_special_tokens:!0})}}))}return Array.isArray(e)?i:i[0]}};var xr=class extends de{_key="generated_text";async _call(e,r={}){Array.isArray(e)||(e=[e]),this.model.config.prefix&&(e=e.map(l=>this.model.config.prefix+l));let s=this.model.config.task_specific_params;s&&s[this.task]&&s[this.task].prefix&&(e=e.map(l=>s[this.task].prefix+l));let n=this.tokenizer,o={padding:!0,truncation:!0},a;this.task==="translation"&&"_build_translation_inputs"in n?a=n._build_translation_inputs(e,o,r):a=n(e,o);let i=await this.model.generate({...a,...r});return n.batch_decode(i,{skip_special_tokens:!0}).map(l=>({[this._key]:l}))}};var pi=class extends xr{_key="summary_text"};var di=class extends xr{_key="translation_text"};function z2(t){return Array.isArray(t)&&t.every(e=>"role"in e&&"content"in e)}var fi=class extends de{async _call(e,r={}){let s=!1,n=!1,o=r.add_special_tokens??(this.tokenizer.add_bos_token||this.tokenizer.add_eos_token)??!1,a=r.tokenizer_encode_kwargs,i;if(typeof e=="string")i=e=[e];else if(Array.isArray(e)&&e.every(w=>typeof w=="string"))s=!0,i=e;else{if(z2(e))e=[e];else if(Array.isArray(e)&&e.every(z2))s=!0;else throw new Error("Input must be a string, an array of strings, a Chat, or an array of Chats");n=!0,i=e.map(w=>this.tokenizer.apply_chat_template(w,{tokenize:!1,add_generation_prompt:!0,...a})),o=!1,a=void 0}let l=n?!1:r.return_full_text??!0;this.tokenizer.padding_side="left";let u=this.tokenizer(i,{add_special_tokens:o,padding:!0,truncation:!0,...a}),p=await this.model.generate({...u,...r}),f=this.tokenizer.batch_decode(p,{skip_special_tokens:!0}),m;!l&&u.input_ids.dims.at(-1)>0&&(m=this.tokenizer.batch_decode(u.input_ids,{skip_special_tokens:!0}).map(w=>w.length));let h=Array.from({length:e.length},w=>[]);for(let w=0;w<f.length;++w){let x=Math.floor(w/p.dims[0]*e.length);m&&(f[w]=f[w].slice(m[x])),h[x].push({generated_text:n?[...e[x],{role:"assistant",content:f[w]}]:f[w]})}return!s&&h.length===1?h[0]:h}};var mi=class extends de{constructor(e){super(e),this.label2id=Object.fromEntries(Object.entries(this.model.config.label2id).map(([r,s])=>[r.toLowerCase(),s])),this.entailment_id=this.label2id.entailment,this.entailment_id===void 0&&(Q.warn("Could not find 'entailment' in label2id mapping. Using 2 as entailment_id."),this.entailment_id=2),this.contradiction_id=this.label2id.contradiction??this.label2id.not_entailment,this.contradiction_id===void 0&&(Q.warn("Could not find 'contradiction' in label2id mapping. Using 0 as contradiction_id."),this.contradiction_id=0)}async _call(e,r,{hypothesis_template:s="This example is {}.",multi_label:n=!1}={}){let o=Array.isArray(e);o||(e=[e]),Array.isArray(r)||(r=[r]);let a=r.map(u=>s.replace("{}",u)),i=n||r.length===1,l=[];for(let u of e){let p=[];for(let h of a){let w=this.tokenizer(u,{text_pair:h,padding:!0,truncation:!0}),x=await this.model(w);i?p.push([x.logits.data[this.contradiction_id],x.logits.data[this.entailment_id]]):p.push(x.logits.data[this.entailment_id])}let m=(i?p.map(h=>Ie(h)[1]):Ie(p)).map((h,w)=>[h,w]).sort((h,w)=>w[0]-h[0]);l.push({sequence:u,labels:m.map(h=>r[h[1]]),scores:m.map(h=>h[0])})}return o?l:l[0]}};var hi=class extends de{async _call(e,{top_k:r=5}={}){let s=this.processor.feature_extractor.config.sampling_rate,n=await hs(e,s),o=this.model.config.id2label,a=[];for(let i of n){let l=await this.processor(i),p=(await this.model(l)).logits[0],f=await Wt(new D("float32",Ie(p.data),p.dims),r),m=f[0].tolist(),w=f[1].tolist().map((x,k)=>({label:o?o[x]:`LABEL_${x}`,score:m[k]}));a.push(w)}return Array.isArray(e)?a:a[0]}};var _i=class extends de{async _call(e,r,{hypothesis_template:s="This is a sound of {}."}={}){let n=!Array.isArray(e);n&&(e=[e]);let o=r.map(p=>s.replace("{}",p)),a=this.tokenizer(o,{padding:!0,truncation:!0}),i=this.processor.feature_extractor.config.sampling_rate,l=await hs(e,i),u=[];for(let p of l){let f=await this.processor(p),m=await this.model({...a,...f}),h=Ie(m.logits_per_audio.data);u.push([...h].map((w,x)=>({score:w,label:r[x]})))}return n?u[0]:u}};var gi=class extends de{async _call(e,r={}){switch(this.model.config.model_type){case"whisper":case"lite-whisper":return this._call_whisper(e,r);case"wav2vec2":case"wav2vec2-bert":case"unispeech":case"unispeech-sat":case"hubert":case"parakeet_ctc":return this._call_wav2vec2(e,r);case"moonshine":return this._call_moonshine(e,r);default:throw new Error(`AutomaticSpeechRecognitionPipeline does not support model type '${this.model.config.model_type}'.`)}}async _call_wav2vec2(e,r){r.language&&Q.warn('`language` parameter is not yet supported for `wav2vec2` models, defaulting to "English".'),r.task&&Q.warn('`task` parameter is not yet supported for `wav2vec2` models, defaulting to "transcribe".');let s=!Array.isArray(e),n=s?[e]:e,o=this.processor.feature_extractor.config.sampling_rate,a=await hs(n,o),i=[];for(let l of a){let u=await this.processor(l),f=(await this.model(u)).logits[0],m=[];for(let w of f)m.push(Se(w.data)[1]);let h=this.tokenizer.decode(m,{skip_special_tokens:!0}).trim();i.push({text:h})}return s?i[0]:i}async _call_whisper(e,r){let s=r.return_timestamps??!1,n=r.chunk_length_s??0,o=r.force_full_sequences??!1,a=r.stride_length_s??null,i={...r};s==="word"&&(i.return_token_timestamps=!0,i.return_timestamps=!1);let l=!Array.isArray(e),u=l?[e]:e,p=this.processor.feature_extractor.config,f=p.chunk_length/this.model.config.max_source_positions,m=p.hop_length,h=p.sampling_rate,w=await hs(u,h),x=[];for(let k of w){let E=[];if(n>0){if(a===null)a=n/6;else if(n<=a)throw Error("`chunk_length_s` must be larger than `stride_length_s`.");let T=h*n,P=h*a,C=T-2*P,v=0;for(;;){let F=v+T,H=k.subarray(v,F),V=await this.processor(H),J=v===0,X=F>=k.length;if(E.push({stride:[H.length,J?0:P,X?0:P],input_features:V.input_features,is_last:X}),X)break;v+=C}}else E=[{stride:[k.length,0,0],input_features:(await this.processor(k)).input_features,is_last:!0}];for(let T of E){i.num_frames=Math.floor(T.stride[0]/m);let P=await this.model.generate({inputs:T.input_features,...i});s==="word"?(T.tokens=P.sequences.tolist()[0],T.token_timestamps=P.token_timestamps.tolist()[0].map(C=>Is(C,2))):T.tokens=P[0].tolist(),T.stride=T.stride.map(C=>C/h)}let[A,S]=this.tokenizer._decode_asr(E,{time_precision:f,return_timestamps:s,force_full_sequences:o});x.push({text:A,...S})}return l?x[0]:x}async _call_moonshine(e,r){let s=!Array.isArray(e),n=s?[e]:e,o=this.processor.feature_extractor.config.sampling_rate,a=await hs(n,o),i=[];for(let l of a){let u=await this.processor(l),p=Math.floor(l.length/o)*6,f=await this.model.generate({max_new_tokens:p,...r,...u}),m=this.processor.batch_decode(f,{skip_special_tokens:!0})[0];i.push({text:m})}return s?i[0]:i}};var wi=class extends de{DEFAULT_VOCODER_ID="Xenova/speecht5_hifigan";constructor(e){super(e),this.vocoder=e.vocoder??null}async _prepare_speaker_embeddings(e,r){if((typeof e=="string"||e instanceof URL)&&(e=new Float32Array(await(await fe.fetch(e)).arrayBuffer())),e instanceof Float32Array)e=new D("float32",e,[e.length]);else if(!(e instanceof D))throw new Error("Speaker embeddings must be a `Tensor`, `Float32Array`, `string`, or `URL`.");if(r>1){if(e.dims[0]===1)e=e.repeat(r,1);else if(e.dims[0]!==r)throw new Error(`Expected speaker embeddings batch size to be 1 or ${r}, but got ${e.dims[0]}.`)}return e}_postprocess_waveform(e,r,s,n=null){let o=r.data,[a,i]=r.dims,l=n?n.data:null,u=[];for(let p=0;p<a;++p){let f=l?Math.min(Math.ceil(l[p]),i):i,m=p*i;u.push(new $n(o.slice(m,m+f),s))}return Array.isArray(e)?u:u[0]}async _call(e,r){return this.processor?this._call_text_to_spectrogram(e,r):this.model.config.model_type==="supertonic"?this._call_supertonic(e,r):this._call_text_to_waveform(e)}async _call_supertonic(e,{speaker_embeddings:r,num_inference_steps:s,speed:n}){if(!r)throw new Error("Speaker embeddings must be provided for Supertonic models.");let{sampling_rate:o,style_dim:a}=this.model.config,i=this.tokenizer(e,{padding:!0,truncation:!0}),l=i.input_ids.dims[0];r=await this._prepare_speaker_embeddings(r,l),r=r.view(l,-1,a);let{waveform:u,durations:p}=await this.model.generate_speech({...i,style:r,num_inference_steps:s,speed:n});return this._postprocess_waveform(e,u,o,p)}async _call_text_to_waveform(e){let r=this.tokenizer(e,{padding:!0,truncation:!0}),{waveform:s}=await this.model(r),n=this.model.config.sampling_rate;return this._postprocess_waveform(e,s,n)}async _call_text_to_spectrogram(e,{speaker_embeddings:r}){this.vocoder||(Q.info("No vocoder specified, using default HifiGan vocoder."),this.vocoder=await wr.from_pretrained(this.DEFAULT_VOCODER_ID,{dtype:"fp32"}));let{input_ids:s}=this.tokenizer(e,{padding:!0,truncation:!0}),n=s.dims[0];r=await this._prepare_speaker_embeddings(r,n),r=r.view(n,-1);let{waveform:o}=await this.model.generate_speech(s,r,{vocoder:this.vocoder}),a=this.processor.feature_extractor.config.sampling_rate;return this._postprocess_waveform(e,o,a)}};var xi=class extends de{async _call(e,r={}){let s=Array.isArray(e),n=await Qe(e),{pixel_values:o}=await this.processor(n),a=[];for(let i of o){i.dims=[1,...i.dims];let l=await this.model.generate({inputs:i,...r}),u=this.tokenizer.batch_decode(l,{skip_special_tokens:!0}).map(p=>({generated_text:p.trim()}));a.push(u)}return s?a:a[0]}};var yi=class extends de{async _call(e,{top_k:r=5}={}){let s=await Qe(e),{pixel_values:n}=await this.processor(s),o=await this.model({pixel_values:n}),{id2label:a}=this.model.config,i=[];for(let l of o.logits){let u=await Wt(new D("float32",Ie(l.data),l.dims),r),p=u[0].tolist(),m=u[1].tolist().map((h,w)=>({label:a?a[h]:`LABEL_${h}`,score:p[w]}));i.push(m)}return Array.isArray(e)?i:i[0]}};var L2={panoptic:"post_process_panoptic_segmentation",instance:"post_process_instance_segmentation",semantic:"post_process_semantic_segmentation"},_s=class extends de{async _call(e,{threshold:r=.5,mask_threshold:s=.5,overlap_mask_area_threshold:n=.8,label_ids_to_fuse:o=null,target_sizes:a=null,subtask:i=null}={}){if(Array.isArray(e)&&e.length!==1)throw Error("Image segmentation pipeline currently only supports a batch size of 1.");let u=await Qe(e),p=u.map(A=>[A.height,A.width]),f=await this.processor(u),{inputNames:m,outputNames:h}=this.model.sessions.model;if(!m.includes("pixel_values")){if(m.length!==1)throw Error(`Expected a single input name, but got ${m.length} inputs: ${m}.`);let A=m[0];if(A in f)throw Error(`Input name ${A} already exists in the inputs.`);f[A]=f.pixel_values}let w=await this.model(f),x=null;if(i!==null)x=L2[i];else if(this.processor.image_processor){for(let[A,S]of Object.entries(L2))if(S in this.processor.image_processor){x=this.processor.image_processor[S].bind(this.processor.image_processor),i=A;break}}let k=this.model.config.id2label,E=[];if(i)if(i==="panoptic"||i==="instance"){let A=x(w,r,s,n,o,a??p)[0],S=A.segmentation;for(let T of A.segments_info){let P=new Uint8ClampedArray(S.data.length);for(let v=0;v<S.data.length;++v)S.data[v]===T.id&&(P[v]=255);let C=new Ke(P,S.dims[1],S.dims[0],1);E.push({score:T.score,label:k[T.label_id],mask:C})}}else if(i==="semantic"){let{segmentation:A,labels:S}=x(w,a??p)[0];for(let T of S){let P=new Uint8ClampedArray(A.data.length);for(let v=0;v<A.data.length;++v)A.data[v]===T&&(P[v]=255);let C=new Ke(P,A.dims[1],A.dims[0],1);E.push({score:null,label:k[T],mask:C})}}else throw Error(`Subtask ${i} not supported.`);else{let S=w[h[0]];for(let T=0;T<p.length;++T){let P=p[T],C=S[T];C.data.some(F=>F<-1e-5||F>1+1e-5)&&C.sigmoid_();let v=await Ke.fromTensor(C.mul_(255).to("uint8")).resize(P[1],P[0]);E.push({label:null,score:null,mask:v})}}return E}};var bi=class extends _s{async _call(e,r={}){let s=await Qe(e),n=await super._call(e,r),o=s.map((a,i)=>{let l=a.clone();return l.putAlpha(n[i].mask),l});return Array.isArray(e)?o:o[0]}};var vi=class extends de{async _call(e,r,{hypothesis_template:s="This is a photo of {}"}={}){let n=Array.isArray(e),o=await Qe(e),a=r.map(m=>s.replace("{}",m)),i=this.tokenizer(a,{padding:this.model.config.model_type==="siglip"?"max_length":!0,truncation:!0}),{pixel_values:l}=await this.processor(o),u=await this.model({...i,pixel_values:l}),p=this.model.config.model_type==="siglip"?m=>m.sigmoid().data:m=>Ie(m.data),f=[];for(let m of u.logits_per_image){let w=[...p(m)].map((x,k)=>({score:x,label:r[k]}));w.sort((x,k)=>k.score-x.score),f.push(w)}return n?f:f[0]}};var ki=class extends de{async _call(e,{threshold:r=.9,percentage:s=!1}={}){let n=Array.isArray(e);if(n&&e.length!==1)throw Error("Object detection pipeline currently only supports a batch size of 1.");let o=await Qe(e),a=s?null:o.map(h=>[h.height,h.width]),{pixel_values:i,pixel_mask:l}=await this.processor(o),u=await this.model({pixel_values:i,pixel_mask:l}),p=this.processor.image_processor.post_process_object_detection(u,r,a),{id2label:f}=this.model.config,m=p.map(h=>h.boxes.map((w,x)=>({score:h.scores[x],label:f[h.classes[x]],box:ou(w,!s)})));return n?m:m[0]}};var Ei=class extends de{async _call(e,r,{threshold:s=.1,top_k:n=null,percentage:o=!1}={}){let a=Array.isArray(e),i=await Qe(e),l=this.tokenizer(r,{padding:!0,truncation:!0}),u=await this.processor(i),p=[];for(let f=0;f<i.length;++f){let m=i[f],h=o?null:[[m.height,m.width]],w=u.pixel_values[f].unsqueeze_(0),x=await this.model({...l,pixel_values:w}),k;if("post_process_grounded_object_detection"in this.processor){let E=this.processor.post_process_grounded_object_detection(x,l.input_ids,{box_threshold:s,text_threshold:s,target_sizes:h})[0];k=E.boxes.map((A,S)=>({score:E.scores[S],label:E.labels[S],box:ou(A,!o)}))}else{let E=this.processor.image_processor.post_process_object_detection(x,s,h,!0)[0];k=E.boxes.map((A,S)=>({score:E.scores[S],label:r[E.classes[S]],box:ou(A,!o)}))}k.sort((E,A)=>A.score-E.score),n!==null&&(k=k.slice(0,n)),p.push(k)}return a?p:p[0]}};var Ai=class extends de{async _call(e,r,s={}){if(Array.isArray(e)){if(e.length!==1)throw Error("Document Question Answering pipeline currently only supports a batch size of 1.");e=e[0]}let n=(await Qe(e))[0],{pixel_values:o}=await this.processor(n),a=`<s_docvqa><s_question>${r}</s_question><s_answer>`,i=this.tokenizer(a,{add_special_tokens:!1,padding:!0,truncation:!0}).input_ids,l=await this.model.generate({inputs:o,max_length:this.model.config.decoder.max_position_embeddings,decoder_input_ids:i,...s}),p=this.tokenizer.batch_decode(l)[0].match(/<s_answer>(.*?)<\/s_answer>/),f=null;return p&&p.length>=2&&(f=p[1].trim()),[{answer:f}]}};var Mi=class extends de{async _call(e){let r=await Qe(e),s=await this.processor(r),n=await this.model(s),o=[];for(let a of n.reconstruction){let i=a.squeeze().clamp_(0,1).mul_(255).round_().to("uint8");o.push(Ke.fromTensor(i))}return Array.isArray(e)?o:o[0]}};var Ti=class extends de{async _call(e){let r=await Qe(e),s=await this.processor(r),{predicted_depth:n}=await this.model(s),o=[];for(let a=0;a<r.length;++a){let i=n[a],[l,u]=i.dims.slice(-2),[p,f]=r[a].size,m=(await $t(i.view(1,1,l,u),{size:[f,p],mode:"bilinear"})).view(f,p),h=m.min().item(),w=m.max().item(),x=m.sub(h).div_(w-h).mul_(255).to("uint8").unsqueeze(0),k=Ke.fromTensor(x);o.push({predicted_depth:m,depth:k})}return Array.isArray(e)?o:o[0]}};var Si=class extends de{async _call(e,{pooling:r="none",normalize:s=!1,quantize:n=!1,precision:o="binary"}={}){let a=this.tokenizer(e,{padding:!0,truncation:!0}),i=await this.model(a),l=i.last_hidden_state??i.logits??i.token_embeddings;switch(r){case"none":break;case"mean":l=ob(l,a.attention_mask);break;case"first_token":case"cls":l=l.slice(null,0);break;case"last_token":case"eos":l=l.slice(null,-1);break;default:throw Error(`Pooling method '${r}' not supported.`)}return s&&(l=l.normalize(2,-1)),n&&(l=lb(l,o)),l}};var Oi=class extends de{async _call(e,{pool:r=null}={}){let s=await Qe(e),{pixel_values:n}=await this.processor(s),o=await this.model({pixel_values:n}),a;if(r){if(!("pooler_output"in o))throw Error("No pooled output was returned. Make sure the model has a 'pooler' layer when using the 'pool' option.");a=o.pooler_output}else a=o.last_hidden_state??o.logits??o.image_embeds;return a}};var Ii=Object.freeze({"text-classification":{tokenizer:Z,pipeline:ii,model:si,default:{model:"Xenova/distilbert-base-uncased-finetuned-sst-2-english"},type:"text"},"token-classification":{tokenizer:Z,pipeline:li,model:jc,default:{model:"Xenova/bert-base-multilingual-cased-ner-hrl"},type:"text"},"question-answering":{tokenizer:Z,pipeline:ci,model:Xc,default:{model:"Xenova/distilbert-base-cased-distilled-squad"},type:"text"},"fill-mask":{tokenizer:Z,pipeline:ui,model:Hc,default:{model:"onnx-community/ettin-encoder-32m-ONNX",dtype:"fp32"},type:"text"},summarization:{tokenizer:Z,pipeline:pi,model:hn,default:{model:"Xenova/distilbart-cnn-6-6"},type:"text"},translation:{tokenizer:Z,pipeline:di,model:hn,default:{model:"Xenova/t5-small"},type:"text"},"text2text-generation":{tokenizer:Z,pipeline:xr,model:hn,default:{model:"Xenova/flan-t5-small"},type:"text"},"text-generation":{tokenizer:Z,pipeline:fi,model:Vc,default:{model:"onnx-community/Qwen3-0.6B-ONNX",dtype:"q4"},type:"text"},"zero-shot-classification":{tokenizer:Z,pipeline:mi,model:si,default:{model:"Xenova/distilbert-base-uncased-mnli"},type:"text"},"audio-classification":{pipeline:hi,model:eu,processor:it,default:{model:"Xenova/wav2vec2-base-superb-ks"},type:"audio"},"zero-shot-audio-classification":{tokenizer:Z,pipeline:_i,model:wr,processor:it,default:{model:"Xenova/clap-htsat-unfused"},type:"multimodal"},"automatic-speech-recognition":{tokenizer:Z,pipeline:gi,model:[Gc,Zc],processor:it,default:{model:"Xenova/whisper-tiny.en"},type:"multimodal"},"text-to-audio":{tokenizer:Z,pipeline:wi,model:[Wc,qc],processor:[it,null],default:{model:"onnx-community/Supertonic-TTS-ONNX",dtype:"fp32"},type:"text"},"image-to-text":{tokenizer:Z,pipeline:xi,model:Kc,processor:it,default:{model:"Xenova/vit-gpt2-image-captioning"},type:"multimodal"},"image-classification":{pipeline:yi,model:Yc,processor:it,default:{model:"Xenova/vit-base-patch16-224"},type:"multimodal"},"image-segmentation":{pipeline:_s,model:[ni,oi,ai],processor:it,default:{model:"Xenova/detr-resnet-50-panoptic"},type:"multimodal"},"background-removal":{pipeline:bi,model:[ni,oi,ai],processor:it,default:{model:"Xenova/modnet"},type:"image"},"zero-shot-image-classification":{tokenizer:Z,pipeline:vi,model:wr,processor:it,default:{model:"Xenova/clip-vit-base-patch32"},type:"multimodal"},"object-detection":{pipeline:ki,model:Qc,processor:it,default:{model:"Xenova/detr-resnet-50"},type:"multimodal"},"zero-shot-object-detection":{tokenizer:Z,pipeline:Ei,model:Jc,processor:it,default:{model:"Xenova/owlvit-base-patch32"},type:"multimodal"},"document-question-answering":{tokenizer:Z,pipeline:Ai,model:tu,processor:it,default:{model:"Xenova/donut-base-finetuned-docvqa"},type:"multimodal"},"image-to-image":{pipeline:Mi,model:ru,processor:it,default:{model:"Xenova/swin2SR-classical-sr-x2-64"},type:"image"},"depth-estimation":{pipeline:Ti,model:su,processor:it,default:{model:"onnx-community/depth-anything-v2-small"},type:"image"},"feature-extraction":{tokenizer:Z,pipeline:Si,model:wr,default:{model:"onnx-community/all-MiniLM-L6-v2-ONNX",dtype:"fp32"},type:"text"},"image-feature-extraction":{processor:it,pipeline:Oi,model:[nu,wr],default:{model:"onnx-community/dinov3-vits16-pretrain-lvd1689m-ONNX",dtype:"fp32"},type:"image"}}),gy=Object.freeze({"sentiment-analysis":"text-classification",ner:"token-classification",asr:"automatic-speech-recognition","text-to-speech":"text-to-audio",embeddings:"feature-extraction"});async function wy(t,{config:e=null,dtype:r=null,device:s=null,model_file_name:n=null}={}){e=await hr.from_pretrained(t,{config:e});let o=["config.json"],a=e["transformers.js_config"]??{},i=a.use_external_data_format,l="onnx",u=s??a.device,p=r??a.dtype,f,m=e.architectures||[],h=!1;for(let k of m){let E=_r.get(k);if(E!==void 0){f=E,h=!0;break}}if(!h&&e.model_type){let k=_r.get(e.model_type);k!==void 0&&(f=k,h=!0)}if(!h){let k=m.length>0?m.join(", "):"(none)";Q.warn(`[get_model_files] Architecture(s) not found in MODEL_TYPE_MAPPING: [${k}] for model type '${e.model_type}'. Falling back to EncoderOnly (single model.onnx file). If you encounter issues, please report at: ${ns}`),f=j.EncoderOnly}let w=(k,E=null)=>{E=E??k;let A=Wu(u,k),S=Vu(p,k,A),T=tl[S]??"",P=`${E}${T}.onnx`,C=l?`${l}/${P}`:P;o.push(C);let v=wb(i,P,k);for(let F of xb(P,v)){let H=l?`${l}/${F}`:F;o.push(H)}},x=n??"model";return f===j.DecoderOnly?(w("model",x),o.push("generation_config.json")):f===j.DecoderOnlyWithoutHead?w("model",x):f===j.Seq2Seq||f===j.Vision2Seq?(w("model","encoder_model"),w("decoder_model_merged"),o.push("generation_config.json")):f===j.MaskGeneration?(w("model","vision_encoder"),w("prompt_encoder_mask_decoder")):f===j.EncoderDecoder?(w("model","encoder_model"),w("decoder_model_merged")):f===j.ImageTextToText?(w("embed_tokens"),w("vision_encoder"),w("decoder_model_merged"),e.is_encoder_decoder&&w("model","encoder_model"),o.push("generation_config.json")):f===j.AudioTextToText?(w("embed_tokens"),w("audio_encoder"),w("decoder_model_merged"),o.push("generation_config.json")):f===j.ImageAudioTextToText?(w("embed_tokens"),w("audio_encoder"),w("vision_encoder"),w("decoder_model_merged"),o.push("generation_config.json")):f===j.Musicgen?(w("model","text_encoder"),w("decoder_model_merged"),w("encodec_decode"),o.push("generation_config.json")):f===j.MultiModality?(w("prepare_inputs_embeds"),w("model","language_model"),w("lm_head"),w("gen_head"),w("gen_img_embeds"),w("image_decode"),o.push("generation_config.json")):f===j.Phi3V?(w("prepare_inputs_embeds"),w("model"),w("vision_encoder"),o.push("generation_config.json")):f===j.Chatterbox?(w("embed_tokens"),w("speech_encoder"),w("model","language_model"),w("conditional_decoder"),o.push("generation_config.json")):f===j.AutoEncoder?(w("encoder_model"),w("decoder_model")):f===j.Supertonic?(w("text_encoder"),w("latent_denoiser"),w("voice_decoder")):w("model",x),o}async function xy(t){if(!t)throw new Error("modelId is required");return(await pr(t,Or,{})).exists?[Or]:[]}async function gs(t,{config:e=null,dtype:r=null,device:s=null,model_file_name:n=null,include_tokenizer:o=!0,include_processor:a=!0}={}){let i=await wy(t,{config:e,dtype:r,device:s,model_file_name:n});if(o){let l=await zn(t);i.push(...l)}if(a){let l=await xy(t);i.push(...l)}return i}function Hz(t){let e=Ii[t];return e?{tokenizer:!!e.tokenizer,processor:!!e.processor}:null}async function ws(t,e,r={}){t=gy[t]??t;let s=Hz(t);if(!s)throw new Error(`Unsupported pipeline task: ${t}. Must be one of [${Object.keys(Ii).join(", ")}]`);return gs(e,{...r,include_tokenizer:s.tokenizer,include_processor:s.processor})}async function Xz(t,e=null,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main",device:i=null,dtype:l=null,subfolder:u="onnx",use_external_data_format:p=null,model_file_name:f=null,session_options:m={}}={}){t=gy[t]??t;let h=Ii[t.split("_",1)[0]];if(!h)throw Error(`Unsupported pipeline: ${t}. Must be one of [${Object.keys(Ii)}]`);e||(e=h.default.model,Q.info(`No model specified. Using default model: "${e}".`),!l&&h.default.dtype&&(l=h.default.dtype));let w={};if(r){let S=await ws(t,e,{device:i,dtype:l});(await Promise.all(S.map(async P=>pr(e,P)))).forEach((P,C)=>{P.exists&&(w[S[C]]={loaded:0,total:P.size??0})})}let x={progress_callback:r?S=>{if(S.status==="progress"){w[S.file]={loaded:S.loaded,total:S.total};let T=Object.values(w).reduce((v,F)=>v+F.loaded,0),P=Object.values(w).reduce((v,F)=>v+F.total,0),C=P>0?T/P*100:0;r({status:"progress_total",name:S.name,progress:C,loaded:T,total:P,files:structuredClone(w)})}r(S)}:void 0,config:s,cache_dir:n,local_files_only:o,revision:a,device:i,dtype:l,subfolder:u,use_external_data_format:p,model_file_name:f,session_options:m},k=new Map([["tokenizer",h.tokenizer],["model",h.model],["processor",h.processor]]),E=await Kz(k,e,x);E.task=t,Mr(r,{status:"ready",task:t,model:e});let A=h.pipeline;return new A(E)}async function Kz(t,e,r){let s=Object.create(null),n=[];for(let[o,a]of t.entries()){if(!a)continue;let i;Array.isArray(a)?i=new Promise(async(l,u)=>{let p;for(let f of a){if(f===null){l(null);return}try{l(await f.from_pretrained(e,r));return}catch(m){if(m.message?.includes("Unsupported model type"))p=m;else if(m.message?.includes("Could not locate file"))p=m;else{u(m);return}}}u(p)}):i=a.from_pretrained(e,r),s[o]=i,n.push(i)}await Promise.all(n);for(let[o,a]of Object.entries(s))s[o]=await a;return s}var Yz=t=>t>=19968&&t<=40959||t>=13312&&t<=19903||t>=131072&&t<=173791||t>=173824&&t<=177983||t>=177984&&t<=178207||t>=178208&&t<=183983||t>=63744&&t<=64255||t>=194560&&t<=195103,yy=class{put(e){throw Error("Not implemented")}end(){throw Error("Not implemented")}},N2=ge.IS_PROCESS_AVAILABLE?t=>process.stdout.write(t):t=>console.log(t),by=class extends yy{constructor(e,{skip_prompt:r=!1,callback_function:s=null,token_callback_function:n=null,skip_special_tokens:o=!0,decode_kwargs:a={},...i}={}){super(),this.tokenizer=e,this.skip_prompt=r,this.callback_function=s??N2,this.token_callback_function=n,this.decode_kwargs={skip_special_tokens:o,...a,...i},this.token_cache=[],this.print_len=0,this.next_tokens_are_prompt=!0,this.special_ids=new Set(this.tokenizer.all_special_ids.map(BigInt))}put(e){if(e.length>1)throw Error("TextStreamer only supports batch size of 1");let r=this.next_tokens_are_prompt;if(r&&(this.next_tokens_are_prompt=!1,this.skip_prompt))return;let s=e[0];if(this.token_callback_function?.(s),s.length===1&&this.special_ids.has(s[0])){if(this.decode_kwargs.skip_special_tokens)return;if(this.token_cache.length>0){let l=this.tokenizer.decode(this.token_cache,this.decode_kwargs).slice(this.print_len);this.on_finalized_text(l,!1),this.token_cache=[],this.print_len=0}let a=this.tokenizer.decode(s,this.decode_kwargs);this.on_finalized_text(a,!1);return}this.token_cache=ft(this.token_cache,s);let n=this.tokenizer.decode(this.token_cache,this.decode_kwargs),o;r||n.endsWith(`
26
- `)?(o=n.slice(this.print_len),this.token_cache=[],this.print_len=0):n.length>0&&Yz(n.charCodeAt(n.length-1))?(o=n.slice(this.print_len),this.print_len+=o.length):(o=n.slice(this.print_len,n.lastIndexOf(" ")+1),this.print_len+=o.length),this.on_finalized_text(o,!1)}end(){let e;this.token_cache.length>0?(e=this.tokenizer.decode(this.token_cache,this.decode_kwargs).slice(this.print_len),this.token_cache=[],this.print_len=0):e="",this.next_tokens_are_prompt=!0,this.on_finalized_text(e,!0)}on_finalized_text(e,r){e.length>0&&this.callback_function?.(e),r&&this.callback_function===N2&&ge.IS_PROCESS_AVAILABLE&&this.callback_function?.(`
27
- `)}},Ub=class extends by{constructor(e,{skip_prompt:r=!1,callback_function:s=null,token_callback_function:n=null,on_chunk_start:o=null,on_chunk_end:a=null,on_finalize:i=null,time_precision:l=.02,skip_special_tokens:u=!0,decode_kwargs:p={}}={}){super(e,{skip_prompt:r,skip_special_tokens:u,callback_function:s,token_callback_function:n,decode_kwargs:p}),this.timestamp_begin=e.timestamp_begin,this.on_chunk_start=o,this.on_chunk_end=a,this.on_finalize=i,this.time_precision=l,this.waiting_for_timestamp=!1}put(e){if(e.length>1)throw Error("WhisperTextStreamer only supports batch size of 1");let r=e[0];if(r.length===1){let s=Number(r[0])-this.timestamp_begin;if(s>=0){let n=s*this.time_precision;this.waiting_for_timestamp?this.on_chunk_end?.(n):this.on_chunk_start?.(n),this.waiting_for_timestamp=!this.waiting_for_timestamp,this.token_callback_function?.(r);return}}return super.put(e)}end(){super.end(),this.on_finalize?.()}};var Ci=class{constructor(e,r){this.image=e,this.timestamp=r}},au=class{constructor(e,r){e.length>0&&e[0]instanceof Ke&&(e=e.map((s,n)=>new Ci(s,(n+1)/(e.length+1)*r))),this.frames=e,this.duration=r}get width(){return this.frames[0].image.width}get height(){return this.frames[0].image.height}get fps(){return this.frames.length/this.duration}};async function $2(t,{num_frames:e=null,fps:r=null}={}){if(!ge.IS_BROWSER_ENV)throw new Error("`load_video` is currently only supported in browser environments.");if(e==null&&r==null)throw new Error("Either num_frames or fps must be provided.");let s=[],n=document.createElement("video");if(n.crossOrigin="anonymous",n.muted=!0,typeof t=="string")n.src=t;else if(t instanceof Blob)n.src=URL.createObjectURL(t);else if(t instanceof HTMLVideoElement)n.src=t.src;else throw new Error("Invalid URL or video element provided.");if(await new Promise(f=>n.onloadedmetadata=f),n.seekable.start(0)===n.seekable.end(0)){let m=await(await fe.fetch(n.src)).blob();n.src=URL.createObjectURL(m),await new Promise(h=>n.onloadedmetadata=h)}let o=n.duration,a,i;e!=null?(a=e,i=e===1?0:o/(e-1)):(i=1/r,a=Math.floor(o/i));let l=[];for(let f=0;f<a;++f)l.push(e===1?o/2:f*i);let u=document.createElement("canvas");u.width=n.videoWidth,u.height=n.videoHeight;let p=u.getContext("2d",{willReadFrequently:!0});for(let f of l){n.currentTime=f,await new Promise(x=>{n.onseeked=x}),p.drawImage(n,0,0,u.width,u.height);let m=p.getImageData(0,0,u.width,u.height),h=new Ke(m.data,u.width,u.height,4),w=new Ci(h,f);s.push(w)}return n.remove(),new au(s,o)}async function R2(t,e,r={}){let s=await ur(r?.cache_dir);if(!s)return{allCached:!1,files:e.map(a=>({file:a,cached:!1}))};let n=await Promise.all(e.map(async o=>{let{localPath:a,proposedCacheKey:i}=Ss(t,o,r,s),l=await Os(s,a,i);return{file:o,cached:!!l}}));return{allCached:n.every(o=>o.cached),files:n}}async function D2(t,e={}){if(!t)throw new Error("modelId is required");let r=await gs(t,e);return await R2(t,r,e)}async function U2(t,e,r={}){if(!t)throw new Error("task is required");if(!e)throw new Error("modelId is required");let s=await ws(t,e,r);return await R2(e,s,r)}async function B2(t,e,r={}){let s=await ur(r?.cache_dir);if(!s)return{filesDeleted:0,filesCached:0,files:e.map(o=>({file:o,deleted:!1,wasCached:!1}))};if(!s.delete)throw new Error("Cache does not support delete operation");let n=await Promise.all(e.map(async o=>{let{localPath:a,proposedCacheKey:i}=Ss(t,o,r,s),u=!!await Os(s,a,i),p=!1;if(u){let f=await s.delete(i),m=!f&&i!==a?await s.delete(a):!1;p=f||m}return{file:o,deleted:p,wasCached:u}}));return{filesDeleted:n.filter(o=>o.deleted).length,filesCached:n.filter(o=>o.wasCached).length,files:n}}async function F2(t,e={}){if(!t)throw new Error("modelId is required");let r=await gs(t,e);return await B2(t,r,e)}async function j2(t,e,r={}){if(!t)throw new Error("task is required");if(!e)throw new Error("modelId is required");let s=await ws(t,e,r);return await B2(e,s,r)}var vy=class{static async get_files(e,r={}){return gs(e,r)}static async get_pipeline_files(e,r,s={}){return ws(e,r,s)}static async get_model_files(e,r={}){return wy(e,r)}static async get_tokenizer_files(e){return zn(e)}static async get_processor_files(e){return xy(e)}static async is_cached(e,r={}){return D2(e,r)}static async is_pipeline_cached(e,r,s={}){return U2(e,r,s)}static async get_file_metadata(e,r,s={}){return pr(e,r,s)}static async clear_cache(e,r={}){return F2(e,r)}static async clear_pipeline_cache(e,r,s={}){return j2(e,r,s)}};0&&(module.exports={ASTFeatureExtractor,ASTForAudioClassification,ASTModel,ASTPreTrainedModel,AfmoeForCausalLM,AfmoeModel,AfmoePreTrainedModel,AlbertForMaskedLM,AlbertForQuestionAnswering,AlbertForSequenceClassification,AlbertModel,AlbertPreTrainedModel,AlbertTokenizer,ApertusForCausalLM,ApertusModel,ApertusPreTrainedModel,ArceeForCausalLM,ArceeModel,ArceePreTrainedModel,AudioClassificationPipeline,AutoConfig,AutoFeatureExtractor,AutoImageProcessor,AutoModel,AutoModelForAudioClassification,AutoModelForAudioFrameClassification,AutoModelForAudioTextToText,AutoModelForCTC,AutoModelForCausalLM,AutoModelForDepthEstimation,AutoModelForDocumentQuestionAnswering,AutoModelForImageClassification,AutoModelForImageFeatureExtraction,AutoModelForImageMatting,AutoModelForImageSegmentation,AutoModelForImageTextToText,AutoModelForImageToImage,AutoModelForMaskGeneration,AutoModelForMaskedLM,AutoModelForNormalEstimation,AutoModelForObjectDetection,AutoModelForPoseEstimation,AutoModelForQuestionAnswering,AutoModelForSemanticSegmentation,AutoModelForSeq2SeqLM,AutoModelForSequenceClassification,AutoModelForSpeechSeq2Seq,AutoModelForTextToSpectrogram,AutoModelForTextToWaveform,AutoModelForTokenClassification,AutoModelForUniversalSegmentation,AutoModelForVision2Seq,AutoModelForXVector,AutoModelForZeroShotObjectDetection,AutoProcessor,AutoTokenizer,AutomaticSpeechRecognitionPipeline,BackgroundRemovalPipeline,BartForConditionalGeneration,BartForSequenceClassification,BartModel,BartPretrainedModel,BartTokenizer,BaseStreamer,BeitFeatureExtractor,BeitForImageClassification,BeitModel,BeitPreTrainedModel,BertForMaskedLM,BertForQuestionAnswering,BertForSequenceClassification,BertForTokenClassification,BertModel,BertPreTrainedModel,BertTokenizer,BitImageProcessor,BlenderbotForConditionalGeneration,BlenderbotModel,BlenderbotPreTrainedModel,BlenderbotSmallForConditionalGeneration,BlenderbotSmallModel,BlenderbotSmallPreTrainedModel,BlenderbotSmallTokenizer,BlenderbotTokenizer,BloomForCausalLM,BloomModel,BloomPreTrainedModel,BloomTokenizer,CLIPFeatureExtractor,CLIPImageProcessor,CLIPModel,CLIPPreTrainedModel,CLIPSegForImageSegmentation,CLIPSegModel,CLIPSegPreTrainedModel,CLIPTextModel,CLIPTextModelWithProjection,CLIPTokenizer,CLIPVisionModel,CLIPVisionModelWithProjection,CamembertForMaskedLM,CamembertForQuestionAnswering,CamembertForSequenceClassification,CamembertForTokenClassification,CamembertModel,CamembertPreTrainedModel,CamembertTokenizer,ChatterboxFeatureExtractor,ChatterboxModel,ChatterboxPreTrainedModel,ChatterboxProcessor,ChineseCLIPFeatureExtractor,ChineseCLIPModel,ChineseCLIPPreTrainedModel,ClapAudioModelWithProjection,ClapFeatureExtractor,ClapModel,ClapPreTrainedModel,ClapTextModelWithProjection,ClassifierFreeGuidanceLogitsProcessor,CodeGenForCausalLM,CodeGenModel,CodeGenPreTrainedModel,CodeGenTokenizer,CodeLlamaTokenizer,Cohere2ForCausalLM,Cohere2Model,Cohere2PreTrainedModel,CohereForCausalLM,CohereModel,CoherePreTrainedModel,CohereTokenizer,ConvBertForMaskedLM,ConvBertForQuestionAnswering,ConvBertForSequenceClassification,ConvBertForTokenClassification,ConvBertModel,ConvBertPreTrainedModel,ConvBertTokenizer,ConvNextFeatureExtractor,ConvNextForImageClassification,ConvNextImageProcessor,ConvNextModel,ConvNextPreTrainedModel,ConvNextV2ForImageClassification,ConvNextV2Model,ConvNextV2PreTrainedModel,DFineForObjectDetection,DFineModel,DFinePreTrainedModel,DINOv3ConvNextModel,DINOv3ConvNextPreTrainedModel,DINOv3ViTImageProcessor,DINOv3ViTModel,DINOv3ViTPreTrainedModel,DPTFeatureExtractor,DPTForDepthEstimation,DPTImageProcessor,DPTModel,DPTPreTrainedModel,DacDecoderModel,DacDecoderOutput,DacEncoderModel,DacEncoderOutput,DacFeatureExtractor,DacModel,DacPreTrainedModel,DebertaForMaskedLM,DebertaForQuestionAnswering,DebertaForSequenceClassification,DebertaForTokenClassification,DebertaModel,DebertaPreTrainedModel,DebertaTokenizer,DebertaV2ForMaskedLM,DebertaV2ForQuestionAnswering,DebertaV2ForSequenceClassification,DebertaV2ForTokenClassification,DebertaV2Model,DebertaV2PreTrainedModel,DebertaV2Tokenizer,DecisionTransformerModel,DecisionTransformerPreTrainedModel,DeiTFeatureExtractor,DeiTForImageClassification,DeiTImageProcessor,DeiTModel,DeiTPreTrainedModel,DepthAnythingForDepthEstimation,DepthAnythingPreTrainedModel,DepthEstimationPipeline,DepthProForDepthEstimation,DepthProPreTrainedModel,DetrFeatureExtractor,DetrForObjectDetection,DetrForSegmentation,DetrImageProcessor,DetrModel,DetrObjectDetectionOutput,DetrPreTrainedModel,DetrSegmentationOutput,Dinov2ForImageClassification,Dinov2Model,Dinov2PreTrainedModel,Dinov2WithRegistersForImageClassification,Dinov2WithRegistersModel,Dinov2WithRegistersPreTrainedModel,DistilBertForMaskedLM,DistilBertForQuestionAnswering,DistilBertForSequenceClassification,DistilBertForTokenClassification,DistilBertModel,DistilBertPreTrainedModel,DistilBertTokenizer,DocumentQuestionAnsweringPipeline,DonutFeatureExtractor,DonutImageProcessor,DonutSwinModel,DonutSwinPreTrainedModel,EdgeTamModel,EfficientNetForImageClassification,EfficientNetImageProcessor,EfficientNetModel,EfficientNetPreTrainedModel,ElectraForMaskedLM,ElectraForQuestionAnswering,ElectraForSequenceClassification,ElectraForTokenClassification,ElectraModel,ElectraPreTrainedModel,ElectraTokenizer,EncodecFeatureExtractor,EosTokenCriteria,Ernie4_5ForCausalLM,Ernie4_5Model,Ernie4_5PretrainedModel,EsmForMaskedLM,EsmForSequenceClassification,EsmForTokenClassification,EsmModel,EsmPreTrainedModel,EsmTokenizer,ExaoneForCausalLM,ExaoneModel,ExaonePreTrainedModel,FalconForCausalLM,FalconH1ForCausalLM,FalconH1Model,FalconH1PreTrainedModel,FalconModel,FalconPreTrainedModel,FalconTokenizer,FastViTForImageClassification,FastViTModel,FastViTPreTrainedModel,FeatureExtractionPipeline,FeatureExtractor,FillMaskPipeline,Florence2ForConditionalGeneration,Florence2PreTrainedModel,Florence2Processor,ForcedBOSTokenLogitsProcessor,ForcedEOSTokenLogitsProcessor,GLPNFeatureExtractor,GLPNForDepthEstimation,GLPNModel,GLPNPreTrainedModel,GPT2LMHeadModel,GPT2Model,GPT2PreTrainedModel,GPT2Tokenizer,GPTBigCodeForCausalLM,GPTBigCodeModel,GPTBigCodePreTrainedModel,GPTJForCausalLM,GPTJModel,GPTJPreTrainedModel,GPTNeoForCausalLM,GPTNeoModel,GPTNeoPreTrainedModel,GPTNeoXForCausalLM,GPTNeoXModel,GPTNeoXPreTrainedModel,GPTNeoXTokenizer,Gemma2ForCausalLM,Gemma2Model,Gemma2PreTrainedModel,Gemma3ForCausalLM,Gemma3Model,Gemma3PreTrainedModel,Gemma3nAudioFeatureExtractor,Gemma3nForConditionalGeneration,Gemma3nPreTrainedModel,Gemma3nProcessor,GemmaForCausalLM,GemmaModel,GemmaPreTrainedModel,GemmaTokenizer,GlmForCausalLM,GlmModel,GlmPreTrainedModel,GptOssForCausalLM,GptOssModel,GptOssPreTrainedModel,GraniteForCausalLM,GraniteModel,GraniteMoeHybridForCausalLM,GraniteMoeHybridModel,GraniteMoeHybridPreTrainedModel,GranitePreTrainedModel,GroundingDinoForObjectDetection,GroundingDinoImageProcessor,GroundingDinoPreTrainedModel,GroundingDinoProcessor,GroupViTModel,GroupViTPreTrainedModel,HeliumForCausalLM,HeliumModel,HeliumPreTrainedModel,HerbertTokenizer,HieraForImageClassification,HieraModel,HieraPreTrainedModel,HubertForCTC,HubertForSequenceClassification,HubertModel,HubertPreTrainedModel,HunYuanDenseV1ForCausalLM,HunYuanDenseV1Model,HunYuanDenseV1PreTrainedModel,IJepaForImageClassification,IJepaModel,IJepaPreTrainedModel,Idefics3ForConditionalGeneration,Idefics3ImageProcessor,Idefics3PreTrainedModel,Idefics3Processor,ImageClassificationPipeline,ImageFeatureExtractionPipeline,ImageFeatureExtractor,ImageProcessor,ImageSegmentationPipeline,ImageToImagePipeline,ImageToTextPipeline,InterruptableStoppingCriteria,JAISLMHeadModel,JAISModel,JAISPreTrainedModel,JinaCLIPImageProcessor,JinaCLIPModel,JinaCLIPPreTrainedModel,JinaCLIPProcessor,JinaCLIPTextModel,JinaCLIPVisionModel,Lfm2ForCausalLM,Lfm2Model,Lfm2MoeForCausalLM,Lfm2MoeModel,Lfm2MoePreTrainedModel,Lfm2PreTrainedModel,LiteWhisperForConditionalGeneration,Llama4ForCausalLM,Llama4PreTrainedModel,LlamaForCausalLM,LlamaModel,LlamaPreTrainedModel,LlamaTokenizer,LlavaForConditionalGeneration,LlavaOnevisionForConditionalGeneration,LlavaOnevisionImageProcessor,LlavaPreTrainedModel,LlavaProcessor,LlavaQwen2ForCausalLM,LogLevel,LogitsProcessor,LogitsProcessorList,LogitsWarper,LongT5ForConditionalGeneration,LongT5Model,LongT5PreTrainedModel,M2M100ForConditionalGeneration,M2M100Model,M2M100PreTrainedModel,M2M100Tokenizer,MBart50Tokenizer,MBartForCausalLM,MBartForConditionalGeneration,MBartForSequenceClassification,MBartModel,MBartPreTrainedModel,MBartTokenizer,MPNetForMaskedLM,MPNetForQuestionAnswering,MPNetForSequenceClassification,MPNetForTokenClassification,MPNetModel,MPNetPreTrainedModel,MPNetTokenizer,MT5ForConditionalGeneration,MT5Model,MT5PreTrainedModel,MarianMTModel,MarianModel,MarianPreTrainedModel,MarianTokenizer,Mask2FormerImageProcessor,MaskFormerFeatureExtractor,MaskFormerForInstanceSegmentation,MaskFormerImageProcessor,MaskFormerModel,MaskFormerPreTrainedModel,MaxLengthCriteria,Metric3DForDepthEstimation,Metric3DPreTrainedModel,Metric3Dv2ForDepthEstimation,Metric3Dv2PreTrainedModel,MgpstrForSceneTextRecognition,MgpstrModelOutput,MgpstrPreTrainedModel,MgpstrProcessor,MgpstrTokenizer,MimiDecoderModel,MimiDecoderOutput,MimiEncoderModel,MimiEncoderOutput,MimiModel,MimiPreTrainedModel,MinLengthLogitsProcessor,MinNewTokensLengthLogitsProcessor,MistralForCausalLM,MistralModel,MistralPreTrainedModel,MobileBertForMaskedLM,MobileBertForQuestionAnswering,MobileBertForSequenceClassification,MobileBertModel,MobileBertPreTrainedModel,MobileBertTokenizer,MobileLLMForCausalLM,MobileLLMModel,MobileLLMPreTrainedModel,MobileNetV1FeatureExtractor,MobileNetV1ForImageClassification,MobileNetV1ForSemanticSegmentation,MobileNetV1ImageProcessor,MobileNetV1Model,MobileNetV1PreTrainedModel,MobileNetV2FeatureExtractor,MobileNetV2ForImageClassification,MobileNetV2ForSemanticSegmentation,MobileNetV2ImageProcessor,MobileNetV2Model,MobileNetV2PreTrainedModel,MobileNetV3FeatureExtractor,MobileNetV3ForImageClassification,MobileNetV3ForSemanticSegmentation,MobileNetV3ImageProcessor,MobileNetV3Model,MobileNetV3PreTrainedModel,MobileNetV4FeatureExtractor,MobileNetV4ForImageClassification,MobileNetV4ForSemanticSegmentation,MobileNetV4ImageProcessor,MobileNetV4Model,MobileNetV4PreTrainedModel,MobileViTFeatureExtractor,MobileViTForImageClassification,MobileViTImageProcessor,MobileViTModel,MobileViTPreTrainedModel,MobileViTV2ForImageClassification,MobileViTV2Model,MobileViTV2PreTrainedModel,ModelRegistry,ModernBertDecoderForCausalLM,ModernBertDecoderModel,ModernBertDecoderPreTrainedModel,ModernBertForMaskedLM,ModernBertForSequenceClassification,ModernBertForTokenClassification,ModernBertModel,ModernBertPreTrainedModel,Moondream1ForConditionalGeneration,MoonshineFeatureExtractor,MoonshineForConditionalGeneration,MoonshineModel,MoonshinePreTrainedModel,MoonshineProcessor,MptForCausalLM,MptModel,MptPreTrainedModel,MultiModalityCausalLM,MultiModalityPreTrainedModel,MusicgenForCausalLM,MusicgenForConditionalGeneration,MusicgenModel,MusicgenPreTrainedModel,NanoChatForCausalLM,NanoChatModel,NanoChatPreTrainedModel,NeoBertForMaskedLM,NeoBertForQuestionAnswering,NeoBertForSequenceClassification,NeoBertForTokenClassification,NeoBertModel,NeoBertPreTrainedModel,NllbTokenizer,NoBadWordsLogitsProcessor,NoRepeatNGramLogitsProcessor,NomicBertModel,NomicBertPreTrainedModel,NougatImageProcessor,NougatTokenizer,OPTForCausalLM,OPTModel,OPTPreTrainedModel,ObjectDetectionPipeline,Olmo2ForCausalLM,Olmo2Model,Olmo2PreTrainedModel,Olmo3ForCausalLM,Olmo3Model,Olmo3PreTrainedModel,OlmoForCausalLM,OlmoModel,OlmoPreTrainedModel,OpenELMForCausalLM,OpenELMModel,OpenELMPreTrainedModel,OwlViTFeatureExtractor,OwlViTForObjectDetection,OwlViTImageProcessor,OwlViTModel,OwlViTPreTrainedModel,OwlViTProcessor,Owlv2ForObjectDetection,Owlv2ImageProcessor,Owlv2Model,Owlv2PreTrainedModel,PaliGemmaForConditionalGeneration,PaliGemmaPreTrainedModel,PaliGemmaProcessor,ParakeetFeatureExtractor,ParakeetForCTC,ParakeetPreTrainedModel,PatchTSMixerForPrediction,PatchTSMixerModel,PatchTSMixerPreTrainedModel,PatchTSTForPrediction,PatchTSTModel,PatchTSTPreTrainedModel,Phi3ForCausalLM,Phi3Model,Phi3PreTrainedModel,Phi3VForCausalLM,Phi3VImageProcessor,Phi3VPreTrainedModel,Phi3VProcessor,PhiForCausalLM,PhiModel,PhiPreTrainedModel,PixtralImageProcessor,PixtralProcessor,PreTrainedModel,PreTrainedTokenizer,PretrainedConfig,Processor,PvtForImageClassification,PvtImageProcessor,PvtModel,PvtPreTrainedModel,PyAnnoteFeatureExtractor,PyAnnoteForAudioFrameClassification,PyAnnoteModel,PyAnnotePreTrainedModel,PyAnnoteProcessor,QuestionAnsweringPipeline,Qwen2ForCausalLM,Qwen2Model,Qwen2PreTrainedModel,Qwen2Tokenizer,Qwen2VLForConditionalGeneration,Qwen2VLImageProcessor,Qwen2VLPreTrainedModel,Qwen2VLProcessor,Qwen2_5_VLForConditionalGeneration,Qwen2_5_VLProcessor,Qwen3ForCausalLM,Qwen3Model,Qwen3PreTrainedModel,Qwen3VLForConditionalGeneration,Qwen3VLProcessor,Qwen3_5ForConditionalGeneration,Qwen3_5MoeForConditionalGeneration,RFDetrForObjectDetection,RFDetrModel,RFDetrObjectDetectionOutput,RFDetrPreTrainedModel,RTDetrForObjectDetection,RTDetrImageProcessor,RTDetrModel,RTDetrObjectDetectionOutput,RTDetrPreTrainedModel,RTDetrV2ForObjectDetection,RTDetrV2Model,RTDetrV2ObjectDetectionOutput,RTDetrV2PreTrainedModel,RawAudio,RawImage,RawVideo,RawVideoFrame,RepetitionPenaltyLogitsProcessor,ResNetForImageClassification,ResNetModel,ResNetPreTrainedModel,RoFormerForMaskedLM,RoFormerForQuestionAnswering,RoFormerForSequenceClassification,RoFormerForTokenClassification,RoFormerModel,RoFormerPreTrainedModel,RoFormerTokenizer,RobertaForMaskedLM,RobertaForQuestionAnswering,RobertaForSequenceClassification,RobertaForTokenClassification,RobertaModel,RobertaPreTrainedModel,RobertaTokenizer,Sam2ImageProcessor,Sam2ImageSegmentationOutput,Sam2Model,Sam2PreTrainedModel,Sam2Processor,Sam2VideoProcessor,Sam3ImageProcessor,Sam3TrackerModel,SamImageProcessor,SamImageSegmentationOutput,SamModel,SamPreTrainedModel,SamProcessor,SapiensFeatureExtractor,SapiensForDepthEstimation,SapiensForNormalEstimation,SapiensForSemanticSegmentation,SapiensImageProcessor,SapiensPreTrainedModel,SeamlessM4TFeatureExtractor,SegformerFeatureExtractor,SegformerForImageClassification,SegformerForSemanticSegmentation,SegformerImageProcessor,SegformerModel,SegformerPreTrainedModel,SiglipImageProcessor,SiglipModel,SiglipPreTrainedModel,SiglipTextModel,SiglipTokenizer,SiglipVisionModel,SmolLM3ForCausalLM,SmolLM3Model,SmolLM3PreTrainedModel,SmolVLMForConditionalGeneration,SmolVLMImageProcessor,SmolVLMProcessor,SnacDecoderModel,SnacEncoderModel,SnacFeatureExtractor,SnacModel,SnacPreTrainedModel,SpeechT5FeatureExtractor,SpeechT5ForSpeechToText,SpeechT5ForTextToSpeech,SpeechT5HifiGan,SpeechT5Model,SpeechT5PreTrainedModel,SpeechT5Processor,SpeechT5Tokenizer,SqueezeBertForMaskedLM,SqueezeBertForQuestionAnswering,SqueezeBertForSequenceClassification,SqueezeBertModel,SqueezeBertPreTrainedModel,SqueezeBertTokenizer,StableLmForCausalLM,StableLmModel,StableLmPreTrainedModel,Starcoder2ForCausalLM,Starcoder2Model,Starcoder2PreTrainedModel,StoppingCriteria,StoppingCriteriaList,StyleTextToSpeech2Model,StyleTextToSpeech2PreTrainedModel,SummarizationPipeline,SupertonicForConditionalGeneration,SupertonicPreTrainedModel,SuppressTokensAtBeginLogitsProcessor,Swin2SRForImageSuperResolution,Swin2SRImageProcessor,Swin2SRModel,Swin2SRPreTrainedModel,SwinForImageClassification,SwinForSemanticSegmentation,SwinModel,SwinPreTrainedModel,T5ForConditionalGeneration,T5Model,T5PreTrainedModel,T5Tokenizer,TableTransformerForObjectDetection,TableTransformerModel,TableTransformerObjectDetectionOutput,TableTransformerPreTrainedModel,TemperatureLogitsWarper,Tensor,Text2TextGenerationPipeline,TextClassificationPipeline,TextGenerationPipeline,TextStreamer,TextToAudioPipeline,TokenClassificationPipeline,TokenizersBackend,TopKLogitsWarper,TopPLogitsWarper,TrOCRForCausalLM,TrOCRPreTrainedModel,TranslationPipeline,UltravoxModel,UltravoxPreTrainedModel,UltravoxProcessor,UniSpeechForCTC,UniSpeechForSequenceClassification,UniSpeechModel,UniSpeechPreTrainedModel,UniSpeechSatForAudioFrameClassification,UniSpeechSatForCTC,UniSpeechSatForSequenceClassification,UniSpeechSatModel,UniSpeechSatPreTrainedModel,VLChatProcessor,VLMImageProcessor,VaultGemmaForCausalLM,VaultGemmaModel,VaultGemmaPreTrainedModel,ViTFeatureExtractor,ViTForImageClassification,ViTImageProcessor,ViTMAEModel,ViTMAEPreTrainedModel,ViTMSNForImageClassification,ViTMSNModel,ViTMSNPreTrainedModel,ViTModel,ViTPreTrainedModel,VisionEncoderDecoderModel,VitMatteForImageMatting,VitMatteImageProcessor,VitMattePreTrainedModel,VitPoseForPoseEstimation,VitPoseImageProcessor,VitPosePreTrainedModel,VitsModel,VitsModelOutput,VitsPreTrainedModel,VitsTokenizer,VoxtralForConditionalGeneration,VoxtralProcessor,Wav2Vec2BertForCTC,Wav2Vec2BertForSequenceClassification,Wav2Vec2BertModel,Wav2Vec2BertPreTrainedModel,Wav2Vec2CTCTokenizer,Wav2Vec2FeatureExtractor,Wav2Vec2ForAudioFrameClassification,Wav2Vec2ForCTC,Wav2Vec2ForSequenceClassification,Wav2Vec2Model,Wav2Vec2PreTrainedModel,Wav2Vec2Processor,Wav2Vec2ProcessorWithLM,WavLMForAudioFrameClassification,WavLMForCTC,WavLMForSequenceClassification,WavLMForXVector,WavLMModel,WavLMPreTrainedModel,WeSpeakerFeatureExtractor,WeSpeakerResNetModel,WeSpeakerResNetPreTrainedModel,WhisperFeatureExtractor,WhisperForConditionalGeneration,WhisperModel,WhisperPreTrainedModel,WhisperProcessor,WhisperTextStreamer,WhisperTimeStampLogitsProcessor,WhisperTokenizer,XLMForQuestionAnswering,XLMForSequenceClassification,XLMForTokenClassification,XLMModel,XLMPreTrainedModel,XLMRobertaForMaskedLM,XLMRobertaForQuestionAnswering,XLMRobertaForSequenceClassification,XLMRobertaForTokenClassification,XLMRobertaModel,XLMRobertaPreTrainedModel,XLMRobertaTokenizer,XLMTokenizer,XLMWithLMHeadModel,XVectorOutput,YolosFeatureExtractor,YolosForObjectDetection,YolosImageProcessor,YolosModel,YolosObjectDetectionOutput,YolosPreTrainedModel,YoutuForCausalLM,YoutuModel,YoutuPreTrainedModel,ZeroShotAudioClassificationPipeline,ZeroShotClassificationPipeline,ZeroShotImageClassificationPipeline,ZeroShotObjectDetectionPipeline,cat,cos_sim,dot,env,full,full_like,interpolate,interpolate_4d,layer_norm,load_image,load_video,log_softmax,matmul,mean,mean_pooling,ones,ones_like,permute,pipeline,quantize_embeddings,rand,randn,random,read_audio,rfft,slice,softmax,stack,std_mean,topk,zeros,zeros_like});
23
+ ${s}${o}`+n.repeat(t)+`${s}`,a}function Mz(t,e,r,s){return`${e}${s}`+r.repeat(t)+`${e}`}function Sz(t,e,r,s,n,o){return t===0&&e===0?Mz(r,s,n,o):Az(r,t,e,s,n,o)}var Gl=class extends re{static image_processor_class=Oe;static tokenizer_class=oe;static uses_processor_config=!0;fake_image_token="<fake_token_around_image>";image_token="<image>";global_img_token="<global-img>";async _call(e,r=null,s={}){s.return_row_col_info??=!0;let n;r&&(n=await this.image_processor(r,s)),Array.isArray(e)||(e=[e]);let o=n.rows??[new Array(e.length).fill(0)],a=n.cols??[new Array(e.length).fill(0)],i=this.config.image_seq_len,l=[],c=[];for(let f=0;f<e.length;++f){let _=e[f],m=o[f],w=a[f];l.push(Gk(_,this.image_token));let x=m.map((A,T)=>Sz(A,w[T],i,this.fake_image_token,this.image_token,this.global_img_token)),k=_.split(this.image_token);if(k.length===0)throw new Error("The image token should be present in the text.");let E=k[0];for(let A=0;A<x.length;++A)E+=x[A]+k[A+1];c.push(E)}return{...this.tokenizer(c),...n}}};var wf=class extends re{static image_processor_class=Oe;static tokenizer_class=oe;static uses_processor_config=!0;constructor(e,r,s){super(e,r,s),this.image_tag=this.config.image_tag,this.image_start_tag=this.config.image_start_tag,this.image_end_tag=this.config.image_end_tag,this.num_image_tokens=this.config.num_image_tokens}async _call(e,{images:r=null,chat_template:s="default"}={}){r?Array.isArray(r)||(r=[r]):r=await Promise.all(e.filter(k=>k.images).flatMap(k=>k.images).map(k=>Qe.read(k)));let n=this.tokenizer,o=n.apply_chat_template(e,{tokenize:!1,add_generation_prompt:!0,chat_template:s}),a=k=>n.encode(k,{add_special_tokens:!1}),i=o.split(this.image_tag),l=i.length-1;if(r.length!==l)throw new Error(`Number of images provided (${r.length}) does not match number of "${this.image_tag}" image tags (${l})`);let[c,p,f]=n.convert_tokens_to_ids([this.image_tag,this.image_start_tag,this.image_end_tag]),_=a(i[0]),m=new Array(_.length).fill(!1);for(let k=1;k<i.length;++k){let E=new Array(this.num_image_tokens).fill(c),A=a(i[k]);_=wt(_,[p],E,[f],A);let T=new Array(this.num_image_tokens).fill(!0);m=wt(m,[!1],T,[!1],new Array(A.length).fill(!1))}let w=[1,_.length],x={input_ids:new $("int64",_,w),attention_mask:new $("int64",new Array(_.length).fill(1),w),images_seq_mask:new $("bool",m,w),images_emb_mask:new $("bool",new Array(l*this.num_image_tokens).fill(!0),[1,l,this.num_image_tokens])};if(r&&r.length>0){let k=await this.image_processor(r);return k.pixel_values.unsqueeze_(0),{...x,...k}}return x}};var xf=class extends re{static tokenizer_class=oe;static image_processor_class=Oe;async _call(e=null,r=null,s={}){if(!e&&!r)throw new Error("Either text or images must be provided");let n=e?this.tokenizer(e,s):{},o=r?await this.image_processor(r,s):{};return{...n,...o}}};var yf=class extends re{static tokenizer_class=oe;static image_processor_class=Oe;async _call(e,r=null,s={}){let{image_rows:n,image_cols:o,image_sizes:a,...i}=await this.image_processor(e,{...s,return_row_col_info:!0});if(r){let l=this.config.image_token??"<image>",{tile_size:c=512,downsample_factor:p=2,encoder_patch_size:f=16,use_thumbnail:_=!0}=this.image_processor.config,m=T=>Math.ceil(Math.floor(T/f)/p),w=m(c)**2,x=this.config.image_start_token??"<|image_start|>",k=this.config.image_end_token??"<|image_end|>",E=this.config.image_thumbnail??"<|img_thumbnail|>";Array.isArray(r)||(r=[r]);let A=0;r=r.map(T=>{let S=T.split(l);return S[0]+S.slice(1).map(P=>{let O=A++,[v,j]=a[O],H=n[O],B=o[O],V=m(v)*m(j),q=x;if(H>1||B>1){let Q=l.repeat(w);for(let F=0;F<H;++F)for(let C=0;C<B;++C)q+=`<|img_row_${F+1}_col_${C+1}|>`+Q;_&&(q+=E+l.repeat(V))}else q+=l.repeat(V);return q+k+P}).join("")})}return{...i,...r?this.tokenizer(r,s):{}}}};var bf=class extends re{static tokenizer_class=oe;static image_processor_class=Oe;static uses_processor_config=!0;async _call(e,r=null,s={}){let n=await this.image_processor(e,s);if(r){let[a,i]=n.pixel_values.dims.slice(-2),{image_token:l,patch_size:c,num_additional_image_tokens:p}=this.config,f=Math.floor(a/c)*Math.floor(i/c)+p;r=structuredClone(r),Array.isArray(r)||(r=[r]);for(let _=0;_<r.length;++_)r[_]=r[_].replace(l,l.repeat(f))}let o=r?this.tokenizer(r,s):{};return{...n,...o}}};var z2={char:["char_decode",1],bpe:["bpe_decode",2],wp:["wp_decode",102]},vf=class extends re{static tokenizer_class=oe;static image_processor_class=Oe;get char_tokenizer(){return this.components.char_tokenizer}get bpe_tokenizer(){return this.components.bpe_tokenizer}get wp_tokenizer(){return this.components.wp_tokenizer}_decode_helper(e,r){if(!z2.hasOwnProperty(r))throw new Error(`Format ${r} is not supported.`);let[s,n]=z2[r],o=this[s].bind(this),[a,i]=e.dims,l=[],c=[],p=e.tolist();for(let _=0;_<a;++_){let m=p[_],w=[],x=[];for(let E=1;E<i;++E){let[A,T]=Pe(Le(m[E]));if(x.push(A),T==n)break;w.push(T)}let k=x.length>0?x.reduce((E,A)=>E*A,1):0;c.push(w),l.push(k)}return[o(c),l]}char_decode(e){return this.char_tokenizer.batch_decode(e).map(r=>r.replaceAll(" ",""))}bpe_decode(e){return this.bpe_tokenizer.batch_decode(e)}wp_decode(e){return this.wp_tokenizer.batch_decode(e).map(r=>r.replaceAll(" ",""))}batch_decode([e,r,s]){let[n,o]=this._decode_helper(e,"char"),[a,i]=this._decode_helper(r,"bpe"),[l,c]=this._decode_helper(s,"wp"),p=[],f=[];for(let _=0;_<n.length;++_){let[m,w]=Pe([o[_],i[_],c[_]]);p.push([n[_],a[_],l[_]][w]),f.push(m)}return{generated_text:p,scores:f,char_preds:n,bpe_preds:a,wp_preds:l}}static async from_pretrained(...e){let r=await super.from_pretrained(...e),s=await oe.from_pretrained("Xenova/gpt2"),n=await oe.from_pretrained("Xenova/bert-base-uncased");return r.components={image_processor:r.image_processor,char_tokenizer:r.tokenizer,bpe_tokenizer:s,wp_tokenizer:n},r}async _call(e,r=null){let s=await this.image_processor(e);return r&&(s.labels=this.tokenizer(r).input_ids),s}};var kf=class extends re{static tokenizer_class=oe;static feature_extractor_class=Ve;async _call(e){return await this.feature_extractor(e)}};var Ef=class extends re{static tokenizer_class=oe;static image_processor_class=Oe};var Zn="<image>";function Tz(t,e,r,s,n){return`${s.repeat(r*n)}${e}${t}
24
+ `}var Af=class extends re{static tokenizer_class=oe;static image_processor_class=Oe;static uses_processor_config=!1;async _call(e,r=null,s={}){r||(Z.warn("You are using PaliGemma without a text prefix. It will perform as a picture-captioning model."),r=""),Array.isArray(e)||(e=[e]),Array.isArray(r)||(r=[r]);let n=this.tokenizer.bos_token,o=this.image_processor.config.image_seq_length,a;r.some(c=>c.includes(Zn))?a=r.map(c=>{let p=c.replaceAll(Zn,Zn.repeat(o)),f=p.lastIndexOf(Zn),_=f===-1?0:f+Zn.length;return p.slice(0,_)+n+p.slice(_)+`
25
+ `}):(Z.warn("You are passing both `text` and `images` to `PaliGemmaProcessor`. The processor expects special image tokens in the text, as many tokens as there are images per each text. It is recommended to add `<image>` tokens in the very beginning of your text. For this call, we will infer how many images each text has and add special tokens."),a=r.map(c=>Tz(c,n,o,Zn,e.length)));let i=this.tokenizer(a,s);return{...await this.image_processor(e,s),...i}}};var N2="<|image|>",Oz=/<\|image_\d+\|>/g,Mf=class extends re{static image_processor_class=Oe;static tokenizer_class=oe;async _call(e,r=null,{padding:s=!0,truncation:n=!0,num_crops:o=null}={}){Array.isArray(e)||(e=[e]);let a,i;if(r){i=await this.image_processor(r,{num_crops:o});let{num_img_tokens:l}=i,c=e.map((f,_)=>f.split(Oz).join(N2.repeat(l[_])));a=this.tokenizer(c,{padding:s,truncation:n});let p=this.tokenizer._tokenizer.token_to_id(N2);a.input_ids.map_(f=>f==p?-f:f)}else a=this.tokenizer(e);return{...a,...i}}};var Sf=class extends re{static tokenizer_class=oe;static image_processor_class=Oe;static uses_processor_config=!0;async _call(e,r=null,s={}){let n=await this.image_processor(e,s);if(r){let[a,i]=n.pixel_values.dims.slice(-2),{image_token:l,image_break_token:c,image_end_token:p,patch_size:f,spatial_merge_size:_}=this.config,m=f*_,w=Math.floor(a/m),x=Math.floor(i/m);r=structuredClone(r),Array.isArray(r)||(r=[r]);for(let k=0;k<r.length;++k){let E=l.repeat(x),A=E+c,T=E+p,S=A.repeat(w-1)+T;r[k]=r[k].replace(l,S)}}let o=r?this.tokenizer(r,s):{};return{...n,...o}}};var Tf=class extends re{static feature_extractor_class=Kn;async _call(e){return await this.feature_extractor(e)}post_process_speaker_diarization(...e){return this.feature_extractor.post_process_speaker_diarization(...e)}get sampling_rate(){return this.feature_extractor.config.sampling_rate}};var eo=class extends re{static image_processor_class=Oe;static tokenizer_class=oe;async _call(e,r=null,...s){Array.isArray(e)||(e=[e]);let n,o;if(r&&(n=await this.image_processor(r),o=n.image_grid_thw),o){let i=this.image_processor.config.merge_size**2,l=0,c=o.tolist();e=e.map(p=>{for(;p.includes("<|image_pad|>");){let f=Number(c[l++].reduce((_,m)=>_*m,1n));p=p.replace("<|image_pad|>","<|placeholder|>".repeat(Math.floor(f/i)))}return p.replaceAll("<|placeholder|>","<|image_pad|>")})}return{...this.tokenizer(e),...n}}};var to=class extends eo{};var Of=class extends to{};var ro=class extends re{static image_processor_class=Oe;async _call(...e){return await this.image_processor(...e)}post_process_masks(...e){return this.image_processor.post_process_masks(...e)}reshape_input_points(...e){return this.image_processor.reshape_input_points(...e)}};var ql=class extends ro{},If=class extends ql{};var Cf=class extends re{static tokenizer_class=oe;static feature_extractor_class=Ve;async _call(e){return await this.feature_extractor(e)}};var Lf=class extends re{static tokenizer_class=oe;static feature_extractor_class=Ve;static uses_processor_config=!0;async _call(e,r=null,s={}){if(Array.isArray(e))throw new Error("Batched inputs are not supported yet.");let n={};if(r){let a=r.length,{input_features:i}=await this.feature_extractor(r,{...s,max_length:a}),l=Math.round(a/this.config.encoder_ds_factor+1e-4),c=1+Math.ceil(l/this.config.stack_factor);n.audio_token_len=[c],n.audio_values=i;let p=this.config.audio_placeholder;if(!e.includes(p))throw new Error(`The input text does not contain the image token ${p}.`);e=e.replaceAll(p,p.repeat(c))}return{...this.tokenizer(e,{add_special_tokens:!1,...s}),...n}}};var Pf="[AUDIO]",Iz="[BEGIN_AUDIO]",Cz=375;function Lz(t,e){let r=[];for(let s=0;s<t.length;s+=e)r.push(t.subarray(s,Math.min(s+e,t.length)));return r}var zf=class extends re{static tokenizer_class=oe;static feature_extractor_class=Ve;static uses_processor_config=!1;async _call(e,r=null,s={}){if(Array.isArray(e))throw new Error("Batched inputs are not supported yet.");let n={};if(r){if(!e.includes(Pf))throw new Error(`The input text does not contain the audio token ${Pf}.`);Array.isArray(r)||(r=[r]);let a=e.split(Pf),i=a.length-1;if(i!==r.length)throw new Error(`The number of audio inputs (${r.length}) does not match the number of audio tokens in the text (${i}).`);let l=this.feature_extractor.config.n_samples,c=r.map(w=>Lz(w,l)),p=c.map(w=>w.length),f=c.flat(),_=(await Promise.all(f.map(w=>this.feature_extractor(w,s)))).map(w=>w.input_features);n.audio_values=_.length>1?ve(_,0):_[0];let m=a[0];for(let w=0;w<p.length;++w){m+=Iz;for(let x=0;x<p[w];++x)m+=Pf.repeat(Cz);m+=a[w+1]}e=m}return{...this.tokenizer(e,{add_special_tokens:!1,...s}),...n}}};var $2=32,r1=6,Nf=8,Pz=10,zz=32,$f=class extends re{static tokenizer_class=oe;static feature_extractor_class=Ve;static uses_processor_config=!1;get num_mel_frames_first_audio_chunk(){return(r1+1)*Nf}get num_samples_first_audio_chunk(){let{hop_length:e,n_fft:r}=this.feature_extractor.config;return(this.num_mel_frames_first_audio_chunk-1)*e+Math.floor(r/2)}get num_samples_per_audio_chunk(){let{hop_length:e,n_fft:r}=this.feature_extractor.config;return Nf*e+r}get num_right_pad_tokens(){return r1+1+Pz}get audio_length_per_tok(){return Nf}get raw_audio_length_per_tok(){return Nf*this.feature_extractor.config.hop_length}async _call(e,{is_streaming:r=!1,is_first_audio_chunk:s=!0}={}){if(Fe(e,"VoxtralRealtimeProcessor"),!r&&!s)throw new Error("In non-streaming mode (`is_streaming=false`), `is_first_audio_chunk` must be `true`.");if(s)if(r){let n=$2*this.raw_audio_length_per_tok,o=new Float32Array(n+e.length);o.set(e,n);let a=await this.feature_extractor(o,{center:!0}),l=1+($2+r1),c=new BigInt64Array(l).fill(BigInt(zz));return c[0]=1n,{input_ids:new $("int64",c,[1,l]),...a}}else{let n=this.num_right_pad_tokens*this.raw_audio_length_per_tok,o=new Float32Array(e.length+n);return o.set(e),await this.feature_extractor(o,{center:!0})}else return await this.feature_extractor(e,{center:!1})}};var Rf=class extends re{static tokenizer_class=oe;static feature_extractor_class=Ve;async _call(e){return await this.feature_extractor(e)}};var Df=class extends re{static tokenizer_class=oe;static feature_extractor_class=Ve;async _call(e){return await this.feature_extractor(e)}};var Ff=class extends re{static tokenizer_class=oe;static feature_extractor_class=Ve;async _call(e){return await this.feature_extractor(e)}};var Wl=class{static async from_pretrained(e,r={}){let s=await ft(e,Mr,!0,r),{image_processor_type:n,feature_extractor_type:o,processor_class:a}=s;if(a&&Bf[a])return Bf[a].from_pretrained(e,r);if(!n&&!o)throw new Error("No `image_processor_type` or `feature_extractor_type` found in the config.");let i={};if(n){let c=Jn[n.replace(/Fast$/,"")];if(!c)throw new Error(`Unknown image_processor_type: '${n}'.`);i.image_processor=new c(s)}if(o){let c=Jn[o];if(c)i.image_processor=new c(s);else{let p=Sl[o];if(!p)throw new Error(`Unknown feature_extractor_type: '${o}'.`);i.feature_extractor=new p(s)}}let l={};return new re(l,i,null)}};async function Nz(t,e){return await ft(t,"config.json",!0,e)}function so(t){let e={},r={};switch(t.model_type){case"llava":case"paligemma":case"gemma3":case"florence2":case"llava_onevision":case"idefics3":case"granite_speech":case"ultravox":case"voxtral":case"voxtral_realtime":case"smolvlm":case"gemma3n":case"lfm2_vl":case"chatterbox":case"mistral3":case"qwen2_5_vl":case"qwen3_vl":case"qwen3_vl_moe":r=so(t.text_config);break;case"moondream1":r=so(t.phi_config);break;case"musicgen":r=so(t.decoder);break;case"multi_modality":r=so(t.language_config);break;case"gpt2":case"gptj":case"jais":case"codegen":case"gpt_bigcode":e.num_heads="n_head",e.num_layers="n_layer",e.hidden_size="n_embd";break;case"gpt_neox":case"stablelm":case"opt":case"falcon":case"modernbert-decoder":e.num_heads="num_attention_heads",e.num_layers="num_hidden_layers",e.hidden_size="hidden_size";break;case"gpt_oss":case"llama":case"llama4_text":case"nanochat":case"apertus":case"arcee":case"afmoe":case"lfm2":case"lfm2_moe":case"smollm3":case"olmo":case"olmo2":case"olmo3":case"mobilellm":case"granite":case"granitemoehybrid":case"cohere":case"cohere2":case"mistral":case"voxtral_realtime_text":case"voxtral_realtime_encoder":case"starcoder2":case"qwen2":case"qwen2_moe":case"qwen2_vl":case"qwen2_vl_text":case"qwen2_5_vl_text":case"qwen3_moe":case"qwen3_vl_text":case"qwen3_vl_moe_text":case"phi":case"phi3":case"phi3_v":case"llava_qwen2":e.num_heads="num_key_value_heads",e.num_layers="num_hidden_layers",e.hidden_size="hidden_size",e.num_attention_heads="num_attention_heads",e.dim_kv="head_dim";break;case"qwen3":case"gemma":case"gemma2":case"vaultgemma":case"gemma3_text":case"gemma3n_text":case"glm":case"helium":case"ernie4_5":case"hunyuan_v1_dense":case"falcon_h1":case"ministral":case"ministral3":e.num_heads="num_key_value_heads",e.num_layers="num_hidden_layers",e.dim_kv="head_dim";break;case"openelm":e.num_heads="num_kv_heads",e.num_layers="num_transformer_layers",e.dim_kv="head_dim";break;case"gpt_neo":case"donut-swin":e.num_heads="num_heads",e.num_layers="num_layers",e.hidden_size="hidden_size";break;case"bloom":e.num_heads="n_head",e.num_layers="n_layer",e.hidden_size="hidden_size";break;case"mpt":e.num_heads="n_heads",e.num_layers="n_layers",e.hidden_size="d_model";break;case"exaone":e.num_heads="num_key_value_heads",e.num_layers="num_layers",e.dim_kv="head_dim",e.num_attention_heads="num_attention_heads";break;case"youtu":e.num_heads="num_key_value_heads",e.num_layers="num_hidden_layers",e.dim_kv="qk_head_dim",e.num_attention_heads="num_attention_heads";break;case"t5":case"mt5":case"longt5":e.num_decoder_layers="num_decoder_layers",e.num_decoder_heads="num_heads",e.decoder_dim_kv="d_kv",e.num_encoder_layers="num_layers",e.num_encoder_heads="num_heads",e.encoder_dim_kv="d_kv";break;case"bart":case"mbart":case"marian":case"whisper":case"lite-whisper":case"m2m_100":case"blenderbot":case"blenderbot-small":case"florence2_language":e.num_decoder_layers="decoder_layers",e.num_decoder_heads="decoder_attention_heads",e.decoder_hidden_size="d_model",e.num_encoder_layers="encoder_layers",e.num_encoder_heads="encoder_attention_heads",e.encoder_hidden_size="d_model";break;case"speecht5":e.num_decoder_layers="decoder_layers",e.num_decoder_heads="decoder_attention_heads",e.decoder_hidden_size="hidden_size",e.num_encoder_layers="encoder_layers",e.num_encoder_heads="encoder_attention_heads",e.encoder_hidden_size="hidden_size";break;case"trocr":e.num_encoder_layers=e.num_decoder_layers="decoder_layers",e.num_encoder_heads=e.num_decoder_heads="decoder_attention_heads",e.encoder_hidden_size=e.decoder_hidden_size="d_model";break;case"musicgen_decoder":e.num_encoder_layers=e.num_decoder_layers="num_hidden_layers",e.num_encoder_heads=e.num_decoder_heads="num_attention_heads",e.encoder_hidden_size=e.decoder_hidden_size="hidden_size";break;case"moonshine":e.num_decoder_layers="decoder_num_hidden_layers",e.num_decoder_heads="decoder_num_key_value_heads",e.num_encoder_layers="encoder_num_hidden_layers",e.num_encoder_heads="encoder_num_key_value_heads",e.encoder_hidden_size=e.decoder_hidden_size="hidden_size";break;case"vision-encoder-decoder":let n=so(t.decoder),o="num_decoder_layers"in n,a=Ye(t,["model_type","is_encoder_decoder"]);return o?(a.num_decoder_layers=n.num_decoder_layers,a.num_decoder_heads=n.num_decoder_heads,a.decoder_hidden_size=n.decoder_hidden_size,a.num_encoder_layers=n.num_encoder_layers,a.num_encoder_heads=n.num_encoder_heads,a.encoder_hidden_size=n.encoder_hidden_size):(a.num_layers=n.num_layers,a.num_heads=n.num_heads,a.hidden_size=n.hidden_size),a}let s={...r,...Ye(t,["model_type","multi_query","is_encoder_decoder"])};for(let n in e)s[n]=t[e[n]];return s}function Qs(t,e){if(t instanceof Ks||(t=new Ks(t)),["lfm2","lfm2_moe"].includes(t.model_type)){let r=e?.prefix??"past_key_values",s=r==="present"?"present":"past",n={},{layer_types:o,num_attention_heads:a,num_key_value_heads:i,hidden_size:l,conv_L_cache:c}=t,p=l/a,f=e?.batch_size??1;for(let _=0;_<o.length;++_)if(o[_]==="full_attention")for(let m of["key","value"])n[`${r}.${_}.${m}`]=[f,i,0,p];else if(o[_]==="conv")n[`${s}_conv.${_}`]=[f,l,c];else throw new Error(`Unsupported layer type: ${o[_]}`);return n}else if(["granitemoehybrid","falcon_h1"].includes(t.model_type)){let r=e?.prefix??"past_key_values",s=r==="present"?"present":"past",n={},{layer_types:o,num_hidden_layers:a,num_attention_heads:i,num_key_value_heads:l,hidden_size:c,mamba_d_conv:p,mamba_n_heads:f,mamba_d_head:_,mamba_d_state:m,mamba_n_groups:w,mamba_expand:x,mamba_d_ssm:k}=t,E=c/i,A=e?.batch_size??1,T=(k??x*c)+2*w*m;for(let S=0;S<a;++S)if((!o||o[S]==="mamba")&&(n[`${s}_conv.${S}`]=[A,T,p],n[`${s}_ssm.${S}`]=[A,f,_,m]),!o||o[S]==="attention")for(let P of["key","value"])n[`${r}.${S}.${P}`]=[A,l,0,E];return n}else if(["qwen3_next","qwen3_5_text","qwen3_5_moe_text","olmo_hybrid"].includes(t.model_type)){let r=e?.prefix??"past_key_values",s=r==="present"?"present":"past",n={},{head_dim:o,layer_types:a,num_attention_heads:i,num_key_value_heads:l,hidden_size:c,linear_num_value_heads:p,linear_num_key_heads:f,linear_key_head_dim:_,linear_value_head_dim:m,linear_conv_kernel_dim:w}=t,x=_*f,k=m*p,E=o??c/i,A=e?.batch_size??1;for(let T=0;T<a.length;++T)if(a[T]==="full_attention")for(let S of["key","value"])n[`${r}.${T}.${S}`]=[A,l,0,E];else if(a[T]==="linear_attention"){if(t.model_type==="olmo_hybrid")n[`${s}_conv.${T}.key`]=[A,x,w],n[`${s}_conv.${T}.value`]=[A,k,w],n[`${s}_conv.${T}.query`]=[A,x,w];else{let S=x*2+k;n[`${s}_conv.${T}`]=[A,S,w]}n[`${s}_recurrent.${T}`]=[A,p,_,m]}else throw new Error(`Unsupported layer type: ${a[T]}`);return n}else if(["lfm2_vl","qwen3_5","qwen3_5_moe","voxtral_realtime"].includes(t.model_type)){let r;return t.model_type==="voxtral_realtime"&&e?.session_name==="audio_encoder"?r=t.audio_config:r=t.text_config,Qs(r,e)}return $z(t,e)}function $z(t,{prefix:e="past_key_values",batch_size:r=1}={}){let s={},n=t.normalized_config;if(n.is_encoder_decoder&&"num_encoder_heads"in n&&"num_decoder_heads"in n){let o=n.encoder_dim_kv??n.encoder_hidden_size/n.num_encoder_heads,a=n.decoder_dim_kv??n.decoder_hidden_size/n.num_decoder_heads,i=[r,n.num_encoder_heads,0,o],l=[r,n.num_decoder_heads,0,a];for(let c=0;c<n.num_decoder_layers;++c)s[`${e}.${c}.encoder.key`]=i,s[`${e}.${c}.encoder.value`]=i,s[`${e}.${c}.decoder.key`]=l,s[`${e}.${c}.decoder.value`]=l}else{let o=n.num_heads,a=n.num_layers,i=n.dim_kv??n.hidden_size/(n.num_attention_heads??o);if(n.model_type==="falcon"){let l=[r*o,0,i];for(let c=0;c<a;++c)s[`${e}.${c}.key`]=l,s[`${e}.${c}.value`]=l}else if(n.multi_query){let l=[r*o,0,2*i];for(let c=0;c<a;++c)s[`${e}.${c}.key_value`]=l}else if(n.model_type==="bloom"){let l=[r*o,i,0],c=[r*o,0,i];for(let p=0;p<a;++p)s[`${e}.${p}.key`]=l,s[`${e}.${p}.value`]=c}else if(n.model_type==="openelm")for(let l=0;l<a;++l){let c=[r,o[l],0,i];s[`${e}.${l}.key`]=c,s[`${e}.${l}.value`]=c}else{let l=[r,o,0,i];for(let c=0;c<a;++c)s[`${e}.${c}.key`]=l,s[`${e}.${c}.value`]=l}}return s}var Ks=class t{model_type=null;is_encoder_decoder=!1;max_position_embeddings;"transformers.js_config";constructor(e){Object.assign(this,e),this.normalized_config=so(this)}static async from_pretrained(e,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main"}={}){s&&!(s instanceof t)&&(s=new t(s));let i=s??await Nz(e,{progress_callback:r,config:s,cache_dir:n,local_files_only:o,revision:a});return new this(i)}},Rt=class{static async from_pretrained(...e){return Ks.from_pretrained(...e)}};function s1(t,e,r){return t?typeof t=="object"&&t!==null?t.hasOwnProperty(e)?+t[e]:t.hasOwnProperty(r)?+t[r]:0:+t:0}function n1(t,e){let r=[];for(let s=0;s<e;++s)r.push(`${t}_data${s===0?"":"_"+s}`);return r}async function R2(t,e,r,s){let n=`${e}${s}.onnx`,o=`${r.subfolder??""}/${n}`;return await cl(t,o,!0,r,ie.IS_NODE_ENV)}async function D2(t,e,r,s,n,o={}){let a=`${e}${r}.onnx`,i=ie.IS_NODE_ENV,l=[],c=s1(n,a,e);if(c>0){if(c>Uu)throw new Error(`The number of external data chunks (${c}) exceeds the maximum allowed value (${Uu}).`);let p=n1(a,c);for(let f of p){let _=`${s.subfolder??""}/${f}`;l.push(new Promise(async(m,w)=>{let x=await cl(t,_,!0,s,i);m(x instanceof Uint8Array?{path:f,data:x}:f)}))}}else o.externalData!==void 0&&(l=o.externalData.map(async p=>{if(typeof p.data=="string"){let f=await cl(t,p.data,!0,s);return{...p,data:f}}return p}));return Promise.all(l)}async function Rz(t,e,r,s=!1,n=void 0){let o=r.config?.["transformers.js_config"]??{},a=lp(r.device??o.device,e,{warn:S=>Z.info(S)}),i=u2(a),l=o.device_config??{};l.hasOwnProperty(a)&&(o={...o,...l[a]});let c=cp(r.dtype??o.dtype,e,a,{configDtype:o.dtype,warn:S=>Z.info(S)});if(yl.hasOwnProperty(c)){if(a==="webgpu"&&!ie.IS_NODE_ENV&&c===yt.fp16&&!await _2())throw new Error(`The device (${a}) does not support fp16.`)}else throw new Error(`Invalid dtype: ${c}. Should be one of: ${Object.keys(yt).join(", ")}`);let p=o.kv_cache_dtype,f=p?typeof p=="string"?p:p[c]??"float32":void 0;if(f&&!["float32","float16"].includes(f))throw new Error(`Invalid kv_cache_dtype: ${f}. Should be one of: float32, float16`);let _=yl[c],m={...r.session_options};m.executionProviders??=i;let w=o.free_dimension_overrides;w?m.freeDimensionOverrides??=w:a.startsWith("webnn")&&!m.freeDimensionOverrides&&Z.warn(`WebNN does not currently support dynamic shapes and requires 'free_dimension_overrides' to be set in config.json, preferably as a field within config["transformers.js_config"]["device_config"]["${a}"]. When 'free_dimension_overrides' is not set, you may experience significant performance degradation.`);let x=R2(t,e,r,_),k=r.use_external_data_format??o.use_external_data_format,E=await D2(t,e,_,r,k,m);if(E.length>0&&!ie.IS_NODE_ENV&&(m.externalData=E),s&&a==="webgpu"&&p!==!1){let S=Qs(r.config,{prefix:"present",session_name:n});if(Object.keys(S).length>0&&!xl()){let P={};for(let O in S)P[O]="gpu-buffer";m.preferredOutputLocation=P}}return{buffer_or_path:await x,session_options:m,session_config:{dtype:c,kv_cache_dtype:f,device:a}}}async function F2(t,e,r,s=void 0){return Object.fromEntries(await Promise.all(Object.keys(e).map(async n=>{let o=s?.[n]??!1,{buffer_or_path:a,session_options:i,session_config:l}=await Rz(t,e[n],r,o,n),c=await op(a,i,l);return[n,c]})))}function B2(t){for(let e in t)ip(t[e])?t[e]=new $(t[e]):typeof t[e]=="object"&&B2(t[e]);return t}async function de(t,e){let r=Dz(t,e);try{let s=Object.fromEntries(Object.entries(r).map(([o,a])=>{let i=a.ort_tensor;return ie.IS_NODE_ENV&&typeof Float16Array<"u"&&i.cpuData instanceof Float16Array&&(i.cpuData=new Uint16Array(i.cpuData.buffer)),[o,i]})),n=await ap(t,s);return B2(n)}catch(s){let n=Object.fromEntries(Object.entries(r).map(([o,a])=>{let i={type:a.type,dims:a.dims,location:a.location};return i.location!=="gpu-buffer"&&(i.data=a.data),[o,i]}));throw Z.error(`An error occurred during model execution: "${s}".`),Z.error("Inputs given to model:",n),s}}function Dz(t,e){let r=Object.create(null),s=[];for(let a of t.inputNames){let i=e[a];if(!(i instanceof $)){s.push(a);continue}r[a]=xl()?i.clone():i}if(s.length>0)throw new Error(`An error occurred during model execution: "Missing the following inputs: ${s.join(", ")}.`);let n=Object.keys(e).length,o=t.inputNames.length;if(n>o){let a=Object.keys(e).filter(i=>!t.inputNames.includes(i));Z.warn(`WARNING: Too many inputs were provided (${n} > ${o}). The following inputs will be ignored: "${a.join(", ")}".`)}return r}var Re=class{};var G=class extends Re{constructor({logits:e,...r}){super(),this.logits=e;let s=Object.values(r);s.length>0&&(this.attentions=s)}},he=class extends Re{constructor({logits:e}){super(),this.logits=e}},we=class extends Re{constructor({logits:e}){super(),this.logits=e}},Me=class extends Re{constructor({start_logits:e,end_logits:r}){super(),this.start_logits=e,this.end_logits=r}},kt=class extends Re{constructor({logits:e}){super(),this.logits=e}};var Uf=class extends Re{constructor({alphas:e}){super(),this.alphas=e}};var Dt=class extends st{_call(e,r){throw Error("`_call` should be implemented in a subclass")}},no=class extends st{_call(e,r){throw Error("`_call` should be implemented in a subclass")}},cs=class extends st{constructor(){super(),this.processors=[]}push(e){this.processors.push(e)}extend(e){this.processors.push(...e)}_call(e,r){let s=r;for(let n of this.processors)s=n(e,s);return s}[Symbol.iterator](){return this.processors.values()}},Vl=class extends Dt{constructor(e){super(),this.bos_token_id=e}_call(e,r){for(let s=0;s<e.length;++s)if(e[s].length===1){let n=r[s].data;n.fill(-1/0),n[this.bos_token_id]=0}return r}},Hl=class extends Dt{constructor(e,r){super(),this.max_length=e,this.eos_token_id=Array.isArray(r)?r:[r]}_call(e,r){for(let s=0;s<e.length;++s)if(e[s].length===this.max_length-1){let n=r[s].data;n.fill(-1/0);for(let o of this.eos_token_id)n[o]=0}return r}},Ys=class extends Dt{constructor(e,r){super(),this.begin_suppress_tokens=e,this.begin_index=r}_call(e,r){for(let s=0;s<e.length;++s)if(e[s].length===this.begin_index){let n=r[s].data;for(let o of this.begin_suppress_tokens)n[o]=-1/0}return r}},Xl=class extends Dt{constructor(e,r){super(),this.eos_token_id=Array.isArray(e.eos_token_id)?e.eos_token_id[0]:e.eos_token_id,this.no_timestamps_token_id=e.no_timestamps_token_id,this.timestamp_begin=this.no_timestamps_token_id+1,this.begin_index=r.length,r.at(-1)===this.no_timestamps_token_id&&(this.begin_index-=1),this.max_initial_timestamp_index=e.max_initial_timestamp_index}_call(e,r){for(let s=0;s<e.length;++s){let n=r[s].data;if(n[this.no_timestamps_token_id]=-1/0,e[s].length===this.begin_index-1){n.fill(-1/0),n[this.timestamp_begin]=0;continue}let o=e[s].slice(this.begin_index),a=o.length>=1&&o[o.length-1]>=this.timestamp_begin,i=o.length<2||o[o.length-2]>=this.timestamp_begin;if(a&&(i?n.subarray(this.timestamp_begin).fill(-1/0):n.subarray(0,this.eos_token_id).fill(-1/0)),e[s].length===this.begin_index&&this.max_initial_timestamp_index!==null){let f=this.timestamp_begin+this.max_initial_timestamp_index;n.subarray(f+1).fill(-1/0)}let l=Vu(n),c=Math.log(l.subarray(this.timestamp_begin).map(Math.exp).reduce((f,_)=>f+_)),p=Pe(l.subarray(0,this.timestamp_begin))[0];c>p&&n.subarray(0,this.timestamp_begin).fill(-1/0)}return r}},Kl=class extends Dt{constructor(e){super(),this.no_repeat_ngram_size=e}getNgrams(e){let r=e.length,s=[];for(let o=0;o<r+1-this.no_repeat_ngram_size;++o){let a=[];for(let i=0;i<this.no_repeat_ngram_size;++i)a.push(e[o+i]);s.push(a.map(Number))}let n=new Map;for(let o of s){let a=o.slice(0,o.length-1),i=JSON.stringify(a),l=n.get(i)??[];l.push(o[o.length-1]),n.set(i,l)}return n}getGeneratedNgrams(e,r){let s=r.slice(r.length+1-this.no_repeat_ngram_size,r.length);return e.get(JSON.stringify(s.map(Number)))??[]}calcBannedNgramTokens(e){let r=[];if(e.length+1<this.no_repeat_ngram_size)return r;{let s=this.getNgrams(e);return this.getGeneratedNgrams(s,e)}}_call(e,r){for(let s=0;s<e.length;++s){let n=r[s].data,o=this.calcBannedNgramTokens(e[s]);for(let a of o)n[a]=-1/0}return r}},Ql=class extends Dt{constructor(e){super(),this.penalty=e}_call(e,r){for(let s=0;s<e.length;++s){let n=r[s].data;for(let o of new Set(e[s])){let a=Number(o);n[a]<0?n[a]*=this.penalty:n[a]/=this.penalty}}return r}},Yl=class extends Dt{constructor(e,r){super(),this.min_length=e,this.eos_token_id=Array.isArray(r)?r:[r]}_call(e,r){for(let s=0;s<e.length;++s)if(e[s].length<this.min_length){let n=r[s].data;for(let o of this.eos_token_id)n[o]=-1/0}return r}},Jl=class extends Dt{constructor(e,r,s){super(),this.prompt_length_to_skip=e,this.min_new_tokens=r,this.eos_token_id=Array.isArray(s)?s:[s]}_call(e,r){for(let s=0;s<e.length;++s)if(e[s].length-this.prompt_length_to_skip<this.min_new_tokens){let o=r[s].data;for(let a of this.eos_token_id)o[a]=-1/0}return r}},Zl=class extends Dt{constructor(e,r){super(),this.bad_words_ids=e,this.eos_token_id=Array.isArray(r)?r:[r]}_call(e,r){for(let s=0;s<e.length;++s){let n=r[s].data,o=e[s];for(let a of this.bad_words_ids){if(o.length<a.length-1)continue;let i=!0;for(let l=1;l<=a.length-1;++l)if(a.at(-l-1)!=o.at(-l)){i=!1;break}i&&(n[a.at(-1)]=-1/0)}}return r}},ec=class extends Dt{constructor(e){if(super(),e<=1)throw new Error(`Require guidance scale >1 to use the classifier free guidance processor, got guidance scale ${e}.`);this.guidance_scale=e}_call(e,r){if(r.dims[0]!==2*e.length)throw new Error(`Logits should have twice the batch size of the input ids, the first half of batches corresponding to the conditional inputs, and the second half of batches corresponding to the unconditional inputs. Got batch size ${r.dims[0]} for the logits and ${e.length} for the input ids.`);let s=e.length,n=r.slice([0,s],null),o=r.slice([s,r.dims[0]],null);for(let a=0;a<o.data.length;++a)o.data[a]+=(n.data[a]-o.data[a])*this.guidance_scale;return o}},tc=class extends no{constructor(e){if(super(),typeof e!="number"||e<=0){let r=`\`temperature\` (=${e}) must be a strictly positive float, otherwise your next token scores will be invalid.`;e===0&&(r+=" If you're looking for greedy decoding strategies, set `do_sample=false`.")}this.temperature=e}_call(e,r){let s=r.data;for(let n=0;n<s.length;++n)s[n]/=this.temperature;return r}},o1=class extends no{constructor(e,{filter_value:r=-1/0,min_tokens_to_keep:s=1}={}){if(super(),e<0||e>1)throw new Error(`\`top_p\` must be a float > 0 and < 1, but is ${e}`);if(!Number.isInteger(s)||s<1)throw new Error(`\`min_tokens_to_keep\` must be a positive integer, but is ${s}`);this.top_p=e,this.filter_value=r,this.min_tokens_to_keep=s}},a1=class extends no{constructor(e,{filter_value:r=-1/0,min_tokens_to_keep:s=1}={}){if(super(),!Number.isInteger(e)||e<0)throw new Error(`\`top_k\` must be a positive integer, but is ${e}`);this.top_k=Math.max(e,s),this.filter_value=r}};var oo=class{max_length=20;max_new_tokens=null;min_length=0;min_new_tokens=null;early_stopping=!1;max_time=null;do_sample=!1;num_beams=1;num_beam_groups=1;penalty_alpha=null;use_cache=!0;temperature=1;top_k=50;top_p=1;typical_p=1;epsilon_cutoff=0;eta_cutoff=0;diversity_penalty=0;repetition_penalty=1;encoder_repetition_penalty=1;length_penalty=1;no_repeat_ngram_size=0;bad_words_ids=null;force_words_ids=null;renormalize_logits=!1;constraints=null;forced_bos_token_id=null;forced_eos_token_id=null;remove_invalid_values=!1;exponential_decay_length_penalty=null;suppress_tokens=null;streamer=null;begin_suppress_tokens=null;forced_decoder_ids=null;guidance_scale=null;num_return_sequences=1;output_attentions=!1;output_hidden_states=!1;output_scores=!1;return_dict_in_generate=!1;pad_token_id=null;bos_token_id=null;eos_token_id=null;encoder_no_repeat_ngram_size=0;decoder_start_token_id=null;generation_kwargs={};constructor(e){Object.assign(this,Ye(e,Object.getOwnPropertyNames(this)))}};var Sr=class extends st{_call(e,r){throw Error("StoppingCriteria needs to be subclassed")}},Js=class t extends st{constructor(){super(),this.criteria=[]}push(e){this.criteria.push(e)}extend(e){e instanceof t?e=e.criteria:e instanceof Sr&&(e=[e]),this.criteria.push(...e)}_call(e,r){let s=new Array(e.length).fill(!1);for(let n of this.criteria){let o=n(e,r);for(let a=0;a<s.length;++a)s[a]||=o[a]}return s}[Symbol.iterator](){return this.criteria.values()}},rc=class extends Sr{constructor(e,r=null){super(),this.max_length=e,this.max_position_embeddings=r}_call(e){return e.map(r=>r.length>=this.max_length)}},sc=class extends Sr{constructor(e){super(),Array.isArray(e)||(e=[e]),this.eos_token_id=e}_call(e,r){return e.map(s=>{let n=s.at(-1);return this.eos_token_id.some(o=>n==o)})}},i1=class extends Sr{constructor(){super(),this.interrupted=!1}interrupt(){this.interrupted=!0}reset(){this.interrupted=!1}_call(e,r){return new Array(e.length).fill(this.interrupted)}};var Zs=class extends st{constructor(e){super(),this.generation_config=e}async _call(e){return this.sample(e)}async sample(e){throw Error("sample should be implemented in subclasses.")}getLogits(e,r){let s=e.dims.at(-1),n=e.data;if(r===-1)n=n.slice(-s);else{let o=r*s;n=n.slice(o,o+s)}return n}randomSelect(e){return xE(e)}static getSampler(e){if(e.do_sample)return new c1(e);if(e.num_beams>1)return new u1(e);if(e.num_return_sequences>1)throw Error(`num_return_sequences has to be 1 when doing greedy search, but is ${e.num_return_sequences}.`);return new l1(e)}},l1=class extends Zs{async sample(e){let r=Pe(e.data)[1];return[[BigInt(r),0]]}},c1=class extends Zs{async sample(e){let r=e.dims.at(-1);this.generation_config.top_k>0&&(r=Math.min(this.generation_config.top_k,r));let[s,n]=await Wt(e,r),o=Le(s.data);return Array.from({length:this.generation_config.num_beams},()=>{let a=this.randomSelect(o);return[n.data[a],Math.log(o[a])]})}},u1=class extends Zs{async sample(e){let r=e.dims.at(-1);this.generation_config.top_k>0&&(r=Math.min(this.generation_config.top_k,r));let[s,n]=await Wt(e,r),o=Le(s.data);return Array.from({length:this.generation_config.num_beams},(a,i)=>[n.data[i],Math.log(o[i])])}};var p1=class{constructor(e){if(e)for(let r in e){if(r in this)throw new TypeError(`Key "${r}" conflicts with an existing property on DynamicCache`);let s=e[r];if(!(s instanceof $))throw new TypeError(`Expected a Tensor for key "${r}", got ${typeof s}`);this[r]=s}}get_seq_length(){let e=this;for(let r in e)if(r.startsWith("past_key_values."))return e[r].dims.at(-2);throw new Error("Unable to determine sequence length from the cache.")}async dispose(){let e=[];for(let r of Object.values(this))r.location==="gpu-buffer"&&e.push(r.dispose());await Promise.all(e)}},ao=p1;var en=null;function j2(t){en=t}function d1(t){if(t instanceof $)return t;if(t.length===0)throw Error("items must be non-empty");if(Array.isArray(t[0])){if(t.some(e=>e.length!==t[0].length))throw Error("Unable to create tensor, you should probably activate truncation and/or padding with 'padding=True' and/or 'truncation=True' to have batched tensors with the same length.");return new $("int64",BigInt64Array.from(t.flat().map(e=>BigInt(e))),[t.length,t[0].length])}else return new $("int64",BigInt64Array.from(t.map(e=>BigInt(e))),[1,t.length])}function f1(t){return new $("bool",[t],[1])}var K={EncoderOnly:0,EncoderDecoder:1,Seq2Seq:2,Vision2Seq:3,DecoderOnly:4,DecoderOnlyWithoutHead:5,MaskGeneration:6,ImageTextToText:7,Musicgen:8,MultiModality:9,Phi3V:10,AudioTextToText:11,AutoEncoder:12,ImageAudioTextToText:13,Supertonic:14,Chatterbox:15,MultimodalLanguageModelOnly:16,VoxtralRealtime:17},io={[K.DecoderOnly]:{can_generate:!0,forward:Ct,prepare_inputs:lo,sessions:(t,e)=>({model:e.model_file_name??"model"}),cache_sessions:{model:!0},optional_configs:{generation_config:"generation_config.json"}},[K.DecoderOnlyWithoutHead]:{can_generate:!1,forward:Ct,prepare_inputs:lo,sessions:(t,e)=>({model:e.model_file_name??"model"})},[K.Seq2Seq]:{can_generate:!0,forward:jf,prepare_inputs:oc,sessions:()=>({model:"encoder_model",decoder_model_merged:"decoder_model_merged"}),cache_sessions:{decoder_model_merged:!0},optional_configs:{generation_config:"generation_config.json"}},[K.Vision2Seq]:{can_generate:!0,forward:jf,prepare_inputs:oc,sessions:()=>({model:"encoder_model",decoder_model_merged:"decoder_model_merged"}),cache_sessions:{decoder_model_merged:!0},optional_configs:{generation_config:"generation_config.json"}},[K.Musicgen]:{can_generate:!0,forward:jf,sessions:()=>({model:"text_encoder",decoder_model_merged:"decoder_model_merged",encodec_decode:"encodec_decode"}),cache_sessions:{decoder_model_merged:!0},optional_configs:{generation_config:"generation_config.json"}},[K.EncoderDecoder]:{can_generate:!1,forward:jf,sessions:()=>({model:"encoder_model",decoder_model_merged:"decoder_model_merged"}),cache_sessions:{decoder_model_merged:!0}},[K.MaskGeneration]:{sessions:()=>({model:"vision_encoder",prompt_encoder_mask_decoder:"prompt_encoder_mask_decoder"})},[K.ImageTextToText]:{can_generate:!0,forward:U2,prepare_inputs:nc,sessions:t=>{let e={embed_tokens:"embed_tokens",vision_encoder:"vision_encoder",decoder_model_merged:"decoder_model_merged"};return t.is_encoder_decoder&&(e.model="encoder_model"),e},cache_sessions:{decoder_model_merged:!0},optional_configs:{generation_config:"generation_config.json"}},[K.AudioTextToText]:{can_generate:!0,forward:Bz,prepare_inputs:nc,sessions:()=>({embed_tokens:"embed_tokens",audio_encoder:"audio_encoder",decoder_model_merged:"decoder_model_merged"}),cache_sessions:{decoder_model_merged:!0},optional_configs:{generation_config:"generation_config.json"}},[K.ImageAudioTextToText]:{can_generate:!0,prepare_inputs:nc,sessions:()=>({embed_tokens:"embed_tokens",audio_encoder:"audio_encoder",vision_encoder:"vision_encoder",decoder_model_merged:"decoder_model_merged"}),optional_configs:{generation_config:"generation_config.json"}},[K.Phi3V]:{can_generate:!0,prepare_inputs:nc,sessions:()=>({prepare_inputs_embeds:"prepare_inputs_embeds",model:"model",vision_encoder:"vision_encoder"}),cache_sessions:{model:!0},optional_configs:{generation_config:"generation_config.json"}},[K.MultiModality]:{can_generate:!0,sessions:()=>({prepare_inputs_embeds:"prepare_inputs_embeds",model:"language_model",lm_head:"lm_head",gen_head:"gen_head",gen_img_embeds:"gen_img_embeds",image_decode:"image_decode"}),cache_sessions:{model:!0},optional_configs:{generation_config:"generation_config.json"}},[K.AutoEncoder]:{can_generate:!1,forward:Fz,sessions:()=>({encoder_model:"encoder_model",decoder_model:"decoder_model"})},[K.Supertonic]:{sessions:()=>({text_encoder:"text_encoder",latent_denoiser:"latent_denoiser",voice_decoder:"voice_decoder"})},[K.Chatterbox]:{can_generate:!0,forward:Vt,sessions:()=>({embed_tokens:"embed_tokens",speech_encoder:"speech_encoder",model:"language_model",conditional_decoder:"conditional_decoder"}),cache_sessions:{model:!0},optional_configs:{generation_config:"generation_config.json"}},[K.MultimodalLanguageModelOnly]:{can_generate:!0,forward:U2,prepare_inputs:nc,sessions:()=>({embed_tokens:"embed_tokens",decoder_model_merged:"decoder_model_merged"}),cache_sessions:{decoder_model_merged:!0},optional_configs:{generation_config:"generation_config.json"}},[K.VoxtralRealtime]:{can_generate:!0,prepare_inputs:lo,sessions:()=>({embed_tokens:"embed_tokens",audio_encoder:"audio_encoder",decoder_model_merged:"decoder_model_merged"}),cache_sessions:{decoder_model_merged:!0,audio_encoder:!0},optional_configs:{generation_config:"generation_config.json"}},default:{can_generate:!1,forward:Vt,sessions:(t,e)=>({model:e.model_file_name??"model"})}};function G2(t,e,r={}){let s=io[t]??io.default;return{sessions:s.sessions(e,r),cache_sessions:s.cache_sessions,optional_configs:s.optional_configs}}var sr=new Map,Gf=new Map,tn=new Map,y=class extends st{main_input_name="input_ids";forward_params=["input_ids","attention_mask"];_return_dict_in_generate_keys=null;constructor(e,r,s){super(),this.config=e,this.sessions=r,this.configs=s;let n=tn.get(this.constructor),o=sr.get(n),a=io[o]??io.default;this.can_generate=a.can_generate,this._forward=a.forward,this._prepare_inputs_for_generation=a.prepare_inputs,this.can_generate&&this.forward_params.push("past_key_values"),this.custom_config=this.config["transformers.js_config"]??{}}async dispose(){let e=[];for(let r of Object.values(this.sessions))e.push(r.release?.());return await Promise.all(e)}static async from_pretrained(e,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main",model_file_name:i=null,subfolder:l="onnx",device:c=null,dtype:p=null,use_external_data_format:f=null,session_options:_={}}={}){let m={progress_callback:r,config:s,cache_dir:n,local_files_only:o,revision:a,model_file_name:i,subfolder:l,device:c,dtype:p,use_external_data_format:f,session_options:_},w=tn.get(this),x=sr.get(w);s=m.config=await Rt.from_pretrained(e,m);let k=io[x]??io.default;if(x===void 0){let S=w??s?.model_type;S!=="custom"&&Z.warn(`Model type for '${S}' not found, assuming encoder-only architecture. Please report this at ${as}.`)}let E=k.sessions(s,m),A=[F2(e,E,m,k.cache_sessions)];k.optional_configs&&A.push(jz(e,k.optional_configs,m));let T=await Promise.all(A);return new this(s,...T)}async _call(e){return await this.forward(e)}async forward(e){return await this._forward(this,e)}get generation_config(){return this.configs?.generation_config??null}_get_logits_processor(e,r,s=null){let n=new cs;if(e.repetition_penalty!==null&&e.repetition_penalty!==1&&n.push(new Ql(e.repetition_penalty)),e.no_repeat_ngram_size!==null&&e.no_repeat_ngram_size>0&&n.push(new Kl(e.no_repeat_ngram_size)),e.bad_words_ids!==null&&n.push(new Zl(e.bad_words_ids,e.eos_token_id)),e.min_length!==null&&e.eos_token_id!==null&&e.min_length>0&&n.push(new Yl(e.min_length,e.eos_token_id)),e.min_new_tokens!==null&&e.eos_token_id!==null&&e.min_new_tokens>0&&n.push(new Jl(r,e.min_new_tokens,e.eos_token_id)),e.forced_bos_token_id!==null&&n.push(new Vl(e.forced_bos_token_id)),e.forced_eos_token_id!==null&&n.push(new Hl(e.max_length,e.forced_eos_token_id)),e.begin_suppress_tokens!==null){let o=r>1||e.forced_bos_token_id===null?r:r+1;n.push(new Ys(e.begin_suppress_tokens,o))}return e.guidance_scale!==null&&e.guidance_scale>1&&n.push(new ec(e.guidance_scale)),e.temperature===0&&e.do_sample&&(Z.warn("`do_sample` changed to false because `temperature: 0` implies greedy sampling (always selecting the most likely token), which is incompatible with `do_sample: true`."),e.do_sample=!1),e.do_sample&&e.temperature!==null&&e.temperature!==1&&n.push(new tc(e.temperature)),s!==null&&n.extend(s),n}_prepare_generation_config(e,r,s=oo){let n={...this.config};for(let a of["decoder","generator","text_config"])a in n&&Object.assign(n,n[a]);let o=new s(n);return Object.assign(o,this.generation_config??{}),e&&Object.assign(o,e),r&&Object.assign(o,Ye(r,Object.getOwnPropertyNames(o))),o}_get_stopping_criteria(e,r=null){let s=new Js;return e.max_length!==null&&s.push(new rc(e.max_length,this.config.max_position_embeddings??null)),e.eos_token_id!==null&&s.push(new sc(e.eos_token_id)),r&&s.extend(r),s}_validate_model_class(){if(!this.can_generate){let e=[en.MODEL_FOR_CAUSAL_LM_MAPPING_NAMES,en.MODEL_FOR_VISION_2_SEQ_MAPPING_NAMES,en.MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING_NAMES,en.MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING_NAMES].filter(Boolean),r=tn.get(this.constructor),s=new Set,n=this.config.model_type;for(let a of e){let i=a?.get(n);i&&s.add(i)}let o=`The current model class (${r}) is not compatible with \`.generate()\`, as it doesn't have a language model head.`;throw s.size>0&&(o+=` Please use the following class instead: ${[...s].join(", ")}`),Error(o)}}prepare_inputs_for_generation(...e){if(!this._prepare_inputs_for_generation)throw new Error("prepare_inputs_for_generation is not implemented for this model.");return this._prepare_inputs_for_generation(this,...e)}_update_model_kwargs_for_generation({generated_input_ids:e,outputs:r,model_inputs:s,is_encoder_decoder:n}){return s.past_key_values=this.getPastKeyValues(r,s.past_key_values),s.input_ids=new $("int64",e.flat(),[e.length,1]),n?"decoder_attention_mask"in s:s.attention_mask=ve([s.attention_mask,et([s.attention_mask.dims[0],1])],1),s.position_ids=null,s}_prepare_model_inputs({inputs:e,bos_token_id:r,model_kwargs:s}){let n=Ye(s,this.forward_params),o=this.main_input_name;if(o in n){if(e)throw new Error("`inputs`: {inputs}` were passed alongside {input_name} which is not allowed. Make sure to either pass {inputs} or {input_name}=...")}else n[o]=e;return{inputs_tensor:n[o],model_inputs:n,model_input_name:o}}async _prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:e,model_inputs:r,model_input_name:s,generation_config:n}){if(this.sessions.model.inputNames.includes("inputs_embeds")&&!r.inputs_embeds&&"_prepare_inputs_embeds"in this){let{input_ids:a,pixel_values:i,attention_mask:l,...c}=r,p=await this._prepare_inputs_embeds(r);r={...c,...Ye(p,["inputs_embeds","attention_mask"])}}let{last_hidden_state:o}=await Vt(this,r);if(n.guidance_scale!==null&&n.guidance_scale>1)o=ve([o,jn(o,0)],0),"attention_mask"in r&&(r.attention_mask=ve([r.attention_mask,_p(r.attention_mask)],0));else if(r.decoder_input_ids){let a=d1(r.decoder_input_ids).dims[0];if(a!==o.dims[0]){if(o.dims[0]!==1)throw new Error(`The encoder outputs have a different batch size (${o.dims[0]}) than the decoder inputs (${a}).`);o=ve(Array.from({length:a},()=>o),0)}}return r.encoder_outputs=o,r}_prepare_decoder_input_ids_for_generation({batch_size:e,model_input_name:r,model_kwargs:s,decoder_start_token_id:n,bos_token_id:o,generation_config:a}){let{decoder_input_ids:i,...l}=s;if(!(i instanceof $)){if(i)Array.isArray(i[0])||(i=Array.from({length:e},()=>i));else if(n??=o,this.config.model_type==="musicgen")i=Array.from({length:e*this.config.decoder.num_codebooks},()=>[n]);else if(Array.isArray(n)){if(n.length!==e)throw new Error(`\`decoder_start_token_id\` expcted to have length ${e} but got ${n.length}`);i=n}else i=Array.from({length:e},()=>[n]);i=d1(i)}return s.decoder_attention_mask=El(i),{input_ids:i,model_inputs:l}}async generate({inputs:e=null,generation_config:r=null,logits_processor:s=null,stopping_criteria:n=null,streamer:o=null,...a}){this._validate_model_class(),r=this._prepare_generation_config(r,a);let{inputs_tensor:i,model_inputs:l,model_input_name:c}=this._prepare_model_inputs({inputs:e,model_kwargs:a}),p=this.config.is_encoder_decoder;p&&("encoder_outputs"in l||(l=await this._prepare_encoder_decoder_kwargs_for_generation({inputs_tensor:i,model_inputs:l,model_input_name:c,generation_config:r})));let f;p?{input_ids:f,model_inputs:l}=this._prepare_decoder_input_ids_for_generation({batch_size:l[c].dims.at(0),model_input_name:c,model_kwargs:l,decoder_start_token_id:r.decoder_start_token_id,bos_token_id:r.bos_token_id,generation_config:r}):f=l[c];let _=f.dims.at(-1);r.max_new_tokens!==null&&(r.max_length=_+r.max_new_tokens);let m=this._get_logits_processor(r,_,s),w=this._get_stopping_criteria(r,n),x=l[c].dims.at(0),k=Zs.getSampler(r),E=new Array(x).fill(0),A=f.tolist();o&&o.put(A);let T,S={},P={};for(;;){if(l=this.prepare_inputs_for_generation(A,l,r),T=await this.forward(l),r.return_dict_in_generate)if(r.output_attentions){let q=this.getAttentions(T);for(let Q in q)Q in S||(S[Q]=[]),S[Q].push(q[Q])}else this._return_dict_in_generate_keys&&Object.assign(P,Ye(T,this._return_dict_in_generate_keys));let j=T.logits.slice(null,-1,null).to("float32"),H=m(A,j),B=[];for(let q=0;q<H.dims.at(0);++q){let Q=H[q],F=await k(Q);for(let[C,te]of F){let le=BigInt(C);E[q]+=te,A[q].push(le),B.push([le]);break}}if(o&&o.put(B),w(A).every(q=>q))break;l=this._update_model_kwargs_for_generation({generated_input_ids:B,outputs:T,model_inputs:l,is_encoder_decoder:p})}o&&o.end();let O=this.getPastKeyValues(T,l.past_key_values,!0),v=new $("int64",A.flat(),[A.length,A[0].length]);if(r.return_dict_in_generate)return{sequences:v,past_key_values:O,...S,...P};for(let j of Object.values(T))j.location==="gpu-buffer"&&j.dispose();return v}getPastKeyValues(e,r,s=!1){let n=Object.create(null);for(let o in e)if(o.startsWith("present")){let a=o.replace("present_ssm","past_ssm").replace("present_conv","past_conv").replace("present_recurrent","past_recurrent").replace("present","past_key_values"),i=o.includes("encoder");if(i&&r?n[a]=r[a]:n[a]=e[o],r&&(!i||s)){let l=r[a];l.location==="gpu-buffer"&&l.dispose()}}return new ao(n)}getAttentions(e){let r={};for(let s of["cross_attentions","encoder_attentions","decoder_attentions"])for(let n in e)n.startsWith(s)&&(s in r||(r[s]=[]),r[s].push(e[n]));return r}addPastKeyValues(e,r){if(r)Object.assign(e,r);else{let s=this.sessions.decoder_model_merged??this.sessions.model,n=(e[this.main_input_name]??e.attention_mask)?.dims?.[0]??1,o=s?.config?.kv_cache_dtype??"float32",a=o==="float16"?Ar.float16:Ar.float32,i=Qs(this.config,{batch_size:n});for(let l in i){let c=i[l].reduce((p,f)=>p*f,1);e[l]=new $(o,new a(c),i[l])}}}async _encode_input(e,r,s){if(!Object.hasOwn(this.sessions,e))throw new Error(`Model does not have a ${e} session.`);let n=this.sessions[e];return(await de(n,Ye(r,n.inputNames)))[s]}async encode_image(e){return this._encode_input("vision_encoder",e,"image_features")}async encode_text(e){return this._encode_input("embed_tokens",e,"inputs_embeds")}async encode_audio(e){return this._encode_input("audio_encoder",e,"audio_features")}};async function jf(t,e){let{encoder_outputs:r,input_ids:s,decoder_input_ids:n,...o}=e;if(!r){let a=Ye(e,t.sessions.model.inputNames);r=(await Vt(t,a)).last_hidden_state}return o.input_ids=n,o.encoder_hidden_states=r,t.sessions.decoder_model_merged.inputNames.includes("encoder_attention_mask")&&(o.encoder_attention_mask=e.attention_mask),await Ct(t,o,!0)}async function Vt(t,e){let r=t.sessions.model,s=Ye(e,r.inputNames);if(r.inputNames.includes("inputs_embeds")&&!s.inputs_embeds){if(!e.input_ids)throw new Error("Both `input_ids` and `inputs_embeds` are missing in the model inputs.");s.inputs_embeds=await t.encode_text({input_ids:e.input_ids})}if(r.inputNames.includes("token_type_ids")&&!s.token_type_ids){if(!s.input_ids)throw new Error("Both `input_ids` and `token_type_ids` are missing in the model inputs.");s.token_type_ids=_p(s.input_ids)}if(r.inputNames.includes("pixel_mask")&&!s.pixel_mask){if(!s.pixel_values)throw new Error("Both `pixel_values` and `pixel_mask` are missing in the model inputs.");let n=s.pixel_values.dims;s.pixel_mask=et([n[0],n[2],n[3]])}return await de(r,s)}async function Fz(t,e){let r=await t.encode(e);return await t.decode(r)}async function Ct(t,e,r=!1){let s=t.sessions[r?"decoder_model_merged":"model"],{past_key_values:n,...o}=e;if(s.inputNames.includes("use_cache_branch")&&(o.use_cache_branch=f1(!!n)),s.inputNames.includes("position_ids")&&o.attention_mask&&!o.position_ids){let i=["paligemma","gemma3_text","gemma3"].includes(t.config.model_type)?1:0;o.position_ids=Uz(o,n,i)}s.inputNames.includes("num_logits_to_keep")&&!o.num_logits_to_keep&&(o.num_logits_to_keep=new $("int64",[0n],[])),t.addPastKeyValues(o,n);let a=Ye(o,s.inputNames);return await de(s,a)}async function q2(t,{encode_function:e,merge_function:r,modality_input_names:s,modality_output_name:n,input_ids:o=null,attention_mask:a=null,position_ids:i=null,inputs_embeds:l=null,past_key_values:c=null,generation_config:p=null,logits_processor:f=null,..._}){if(!l){l=await t.encode_text({input_ids:o,..._});let w=Ye(_,s);if(Object.keys(w).length>0){if(o.dims[1]!==1){let x=await e({...w,..._});({inputs_embeds:l,attention_mask:a}=r({[n]:x,inputs_embeds:l,input_ids:o,attention_mask:a}))}else if(c&&o.dims[1]===1){let x=o.dims[1],k=c.get_seq_length();a=ve([et([o.dims[0],k]),a.slice(null,[a.dims[1]-x,a.dims[1]])],1)}}}if(!i&&["qwen2_vl","qwen2_vl_text","qwen2_5_vl","qwen2_5_vl_text","qwen3_vl","qwen3_vl_text","qwen3_vl_moe","qwen3_vl_moe_text","qwen3_5","qwen3_5_text","qwen3_5_moe","qwen3_5_moe_text"].includes(t.config.model_type)){let{image_grid_thw:w,video_grid_thw:x}=_;[i]=t.get_rope_index(o,w,x,a)}return await Ct(t,{inputs_embeds:l,past_key_values:c,attention_mask:a,position_ids:i,generation_config:p,logits_processor:f},!0)}async function Bz(t,e){return await q2(t,{...e,modality_input_names:["audio_values","input_features"],modality_output_name:"audio_features",encode_function:t.encode_audio.bind(t),merge_function:t._merge_input_ids_with_audio_features.bind(t)})}async function U2(t,e){return await q2(t,{...e,modality_input_names:["pixel_values"],modality_output_name:"image_features",encode_function:t.encode_image.bind(t),merge_function:t._merge_input_ids_with_image_features.bind(t)})}function _1(t,e=0){let[r,s]=t.dims,n=t.data,o=new BigInt64Array(n.length);for(let a=0;a<r;++a){let i=a*s,l=BigInt(e);for(let c=0;c<s;++c){let p=i+c;n[p]===0n?o[p]=BigInt(1):(o[p]=l,l+=n[p])}}return{data:o,dims:t.dims}}function Uz(t,e=null,r=0){let{input_ids:s,inputs_embeds:n,attention_mask:o}=t,{data:a,dims:i}=_1(o,r),l=new $("int64",a,i);if(e){let c=-(s??n).dims.at(1);l=l.slice(null,[c,null])}return l}function lo(t,e,r,s){let n=r.past_key_values?r.past_key_values.get_seq_length():0;if((t.sessions.decoder_model_merged??t.sessions.model)?.inputNames.includes("num_logits_to_keep")&&!r.num_logits_to_keep&&(r.num_logits_to_keep=new $("int64",[1n],[])),!r.attention_mask){let a;for(let i of["input_ids","inputs_embeds","position_ids"])if(r[i]){a=r[i].dims;break}if(!a)throw new Error("attention_mask is not provided, and unable to infer its shape from model inputs.");r.attention_mask=et([a[0],n+a[1]])}if(r.past_key_values){let{input_ids:a,attention_mask:i}=r;i&&i.dims[1]>a.dims[1]||n<a.dims[1]&&(r.input_ids=a.slice(null,[n,null]))}return r}function oc(t,e,r,s){return r.past_key_values&&(e=e.map(n=>[n.at(-1)])),{...r,decoder_input_ids:d1(e)}}function nc(t,...e){return t.config.is_encoder_decoder?oc(t,...e):lo(t,...e)}function W2({modality_token_id:t,inputs_embeds:e,modality_features:r,input_ids:s,attention_mask:n}){let o=s.tolist().map(c=>c.reduce((p,f,_)=>(f==t&&p.push(_),p),[])),a=o.reduce((c,p)=>c+p.length,0),i=r.dims[0];if(a!==i)throw new Error(`Number of tokens and features do not match: tokens: ${a}, features ${i}`);let l=0;for(let c=0;c<o.length;++c){let p=o[c],f=e[c];for(let _=0;_<p.length;++_)f[p[_]].data.set(r[l++].data)}return{inputs_embeds:e,attention_mask:n}}function co({image_token_id:t,inputs_embeds:e,image_features:r,input_ids:s,attention_mask:n}){return W2({modality_token_id:t,inputs_embeds:e,modality_features:r,input_ids:s,attention_mask:n})}function qf({audio_token_id:t,inputs_embeds:e,audio_features:r,input_ids:s,attention_mask:n}){return W2({modality_token_id:t,inputs_embeds:e,modality_features:r,input_ids:s,attention_mask:n})}async function jz(t,e,r){return Object.fromEntries(await Promise.all(Object.keys(e).map(async s=>{let n=await ft(t,e[s],!1,r);return[s,n]})))}var tu={};Os(tu,{ASTForAudioClassification:()=>r_,ASTModel:()=>t_,ASTPreTrainedModel:()=>_o,AfmoeForCausalLM:()=>Jf,AfmoeModel:()=>Yf,AfmoePreTrainedModel:()=>po,AlbertForMaskedLM:()=>Xf,AlbertForQuestionAnswering:()=>Hf,AlbertForSequenceClassification:()=>Vf,AlbertModel:()=>Wf,AlbertPreTrainedModel:()=>us,ApertusForCausalLM:()=>Qf,ApertusModel:()=>Kf,ApertusPreTrainedModel:()=>uo,ArceeForCausalLM:()=>e_,ArceeModel:()=>Zf,ArceePreTrainedModel:()=>fo,BartForConditionalGeneration:()=>n_,BartForSequenceClassification:()=>o_,BartModel:()=>s_,BartPretrainedModel:()=>rn,BeitForImageClassification:()=>i_,BeitModel:()=>a_,BeitPreTrainedModel:()=>mo,BertForMaskedLM:()=>c_,BertForQuestionAnswering:()=>d_,BertForSequenceClassification:()=>u_,BertForTokenClassification:()=>p_,BertModel:()=>l_,BertPreTrainedModel:()=>Tr,BlenderbotForConditionalGeneration:()=>__,BlenderbotModel:()=>f_,BlenderbotPreTrainedModel:()=>ho,BlenderbotSmallForConditionalGeneration:()=>h_,BlenderbotSmallModel:()=>m_,BlenderbotSmallPreTrainedModel:()=>go,BloomForCausalLM:()=>w_,BloomModel:()=>g_,BloomPreTrainedModel:()=>wo,CLIPModel:()=>M_,CLIPPreTrainedModel:()=>nr,CLIPSegForImageSegmentation:()=>C_,CLIPSegModel:()=>I_,CLIPSegPreTrainedModel:()=>ko,CLIPTextModel:()=>S_,CLIPTextModelWithProjection:()=>vo,CLIPVisionModel:()=>T_,CLIPVisionModelWithProjection:()=>O_,CamembertForMaskedLM:()=>y_,CamembertForQuestionAnswering:()=>k_,CamembertForSequenceClassification:()=>b_,CamembertForTokenClassification:()=>v_,CamembertModel:()=>x_,CamembertPreTrainedModel:()=>Or,ChatterboxModel:()=>xo,ChatterboxPreTrainedModel:()=>ac,ChineseCLIPModel:()=>E_,ChineseCLIPPreTrainedModel:()=>ic,ClapAudioModelWithProjection:()=>bo,ClapModel:()=>A_,ClapPreTrainedModel:()=>sn,ClapTextModelWithProjection:()=>yo,CodeGenForCausalLM:()=>P_,CodeGenModel:()=>L_,CodeGenPreTrainedModel:()=>Eo,Cohere2ForCausalLM:()=>R_,Cohere2Model:()=>$_,Cohere2PreTrainedModel:()=>Mo,CohereForCausalLM:()=>N_,CohereModel:()=>z_,CoherePreTrainedModel:()=>Ao,ConvBertForMaskedLM:()=>F_,ConvBertForQuestionAnswering:()=>j_,ConvBertForSequenceClassification:()=>B_,ConvBertForTokenClassification:()=>U_,ConvBertModel:()=>D_,ConvBertPreTrainedModel:()=>Ir,ConvNextForImageClassification:()=>q_,ConvNextModel:()=>G_,ConvNextPreTrainedModel:()=>So,ConvNextV2ForImageClassification:()=>V_,ConvNextV2Model:()=>W_,ConvNextV2PreTrainedModel:()=>To,DFineForObjectDetection:()=>Q_,DFineModel:()=>K_,DFinePreTrainedModel:()=>Io,DINOv3ConvNextModel:()=>ym,DINOv3ConvNextPreTrainedModel:()=>_c,DINOv3ViTModel:()=>bm,DINOv3ViTPreTrainedModel:()=>mc,DPTForDepthEstimation:()=>Om,DPTModel:()=>Tm,DPTPreTrainedModel:()=>$o,DacDecoderModel:()=>Lo,DacDecoderOutput:()=>cc,DacEncoderModel:()=>Co,DacEncoderOutput:()=>lc,DacModel:()=>Y_,DacPreTrainedModel:()=>nn,DebertaForMaskedLM:()=>Z_,DebertaForQuestionAnswering:()=>rm,DebertaForSequenceClassification:()=>em,DebertaForTokenClassification:()=>tm,DebertaModel:()=>J_,DebertaPreTrainedModel:()=>Cr,DebertaV2ForMaskedLM:()=>nm,DebertaV2ForQuestionAnswering:()=>im,DebertaV2ForSequenceClassification:()=>om,DebertaV2ForTokenClassification:()=>am,DebertaV2Model:()=>sm,DebertaV2PreTrainedModel:()=>Lr,DecisionTransformerModel:()=>lm,DecisionTransformerPreTrainedModel:()=>uc,DeiTForImageClassification:()=>um,DeiTModel:()=>cm,DeiTPreTrainedModel:()=>Po,DepthAnythingForDepthEstimation:()=>pm,DepthAnythingPreTrainedModel:()=>pc,DepthProForDepthEstimation:()=>dm,DepthProPreTrainedModel:()=>dc,DetrForObjectDetection:()=>_m,DetrForSegmentation:()=>mm,DetrModel:()=>fm,DetrObjectDetectionOutput:()=>an,DetrPreTrainedModel:()=>on,DetrSegmentationOutput:()=>fc,Dinov2ForImageClassification:()=>gm,Dinov2Model:()=>hm,Dinov2PreTrainedModel:()=>zo,Dinov2WithRegistersForImageClassification:()=>xm,Dinov2WithRegistersModel:()=>wm,Dinov2WithRegistersPreTrainedModel:()=>No,DistilBertForMaskedLM:()=>Mm,DistilBertForQuestionAnswering:()=>Am,DistilBertForSequenceClassification:()=>km,DistilBertForTokenClassification:()=>Em,DistilBertModel:()=>vm,DistilBertPreTrainedModel:()=>Pr,DonutSwinModel:()=>Sm,DonutSwinPreTrainedModel:()=>hc,EdgeTamModel:()=>kx,EfficientNetForImageClassification:()=>Cm,EfficientNetModel:()=>Im,EfficientNetPreTrainedModel:()=>Ro,ElectraForMaskedLM:()=>Pm,ElectraForQuestionAnswering:()=>$m,ElectraForSequenceClassification:()=>zm,ElectraForTokenClassification:()=>Nm,ElectraModel:()=>Lm,ElectraPreTrainedModel:()=>zr,Ernie4_5ForCausalLM:()=>Dm,Ernie4_5Model:()=>Rm,Ernie4_5PretrainedModel:()=>Do,EsmForMaskedLM:()=>Bm,EsmForSequenceClassification:()=>Um,EsmForTokenClassification:()=>jm,EsmModel:()=>Fm,EsmPreTrainedModel:()=>ps,ExaoneForCausalLM:()=>qm,ExaoneModel:()=>Gm,ExaonePreTrainedModel:()=>Fo,FalconForCausalLM:()=>Vm,FalconH1ForCausalLM:()=>Xm,FalconH1Model:()=>Hm,FalconH1PreTrainedModel:()=>Uo,FalconModel:()=>Wm,FalconPreTrainedModel:()=>Bo,FastViTForImageClassification:()=>Qm,FastViTModel:()=>Km,FastViTPreTrainedModel:()=>jo,Florence2ForConditionalGeneration:()=>Ym,Florence2PreTrainedModel:()=>gc,GLPNForDepthEstimation:()=>ih,GLPNModel:()=>ah,GLPNPreTrainedModel:()=>Xo,GPT2LMHeadModel:()=>gh,GPT2Model:()=>hh,GPT2PreTrainedModel:()=>Zo,GPTBigCodeForCausalLM:()=>ch,GPTBigCodeModel:()=>lh,GPTBigCodePreTrainedModel:()=>Ko,GPTJForCausalLM:()=>xh,GPTJModel:()=>wh,GPTJPreTrainedModel:()=>ea,GPTNeoForCausalLM:()=>ph,GPTNeoModel:()=>uh,GPTNeoPreTrainedModel:()=>Qo,GPTNeoXForCausalLM:()=>fh,GPTNeoXModel:()=>dh,GPTNeoXPreTrainedModel:()=>Yo,Gemma2ForCausalLM:()=>th,Gemma2Model:()=>eh,Gemma2PreTrainedModel:()=>qo,Gemma3ForCausalLM:()=>sh,Gemma3Model:()=>rh,Gemma3PreTrainedModel:()=>Wo,Gemma3nForCausalLM:()=>Vo,Gemma3nForConditionalGeneration:()=>ln,Gemma3nPreTrainedModel:()=>wc,GemmaForCausalLM:()=>Zm,GemmaModel:()=>Jm,GemmaPreTrainedModel:()=>Go,GlmForCausalLM:()=>oh,GlmModel:()=>nh,GlmPreTrainedModel:()=>Ho,GptOssForCausalLM:()=>mh,GptOssModel:()=>_h,GptOssPreTrainedModel:()=>Jo,GraniteForCausalLM:()=>bh,GraniteModel:()=>yh,GraniteMoeHybridForCausalLM:()=>kh,GraniteMoeHybridModel:()=>vh,GraniteMoeHybridPreTrainedModel:()=>ra,GranitePreTrainedModel:()=>ta,GraniteSpeechForConditionalGeneration:()=>Eh,GroundingDinoForObjectDetection:()=>Ah,GroundingDinoPreTrainedModel:()=>yc,GroupViTModel:()=>Mh,GroupViTPreTrainedModel:()=>bc,HeliumForCausalLM:()=>Th,HeliumModel:()=>Sh,HeliumPreTrainedModel:()=>sa,HieraForImageClassification:()=>Ih,HieraModel:()=>Oh,HieraPreTrainedModel:()=>na,HubertForCTC:()=>Rh,HubertForSequenceClassification:()=>Dh,HubertModel:()=>$h,HubertPreTrainedModel:()=>Nh,HunYuanDenseV1ForCausalLM:()=>Bh,HunYuanDenseV1Model:()=>Fh,HunYuanDenseV1PreTrainedModel:()=>oa,IJepaForImageClassification:()=>Wh,IJepaModel:()=>qh,IJepaPreTrainedModel:()=>aa,Idefics3ForConditionalGeneration:()=>Gh,JAISLMHeadModel:()=>Hh,JAISModel:()=>Vh,JAISPreTrainedModel:()=>ia,JinaCLIPModel:()=>Xh,JinaCLIPPreTrainedModel:()=>cn,JinaCLIPTextModel:()=>la,JinaCLIPVisionModel:()=>Kh,Lfm2ForCausalLM:()=>Yh,Lfm2Model:()=>Qh,Lfm2MoeForCausalLM:()=>Zh,Lfm2MoeModel:()=>Jh,Lfm2MoePreTrainedModel:()=>ua,Lfm2PreTrainedModel:()=>ca,Lfm2VlForConditionalGeneration:()=>eg,LiteWhisperForConditionalGeneration:()=>Ny,Llama4ForCausalLM:()=>sg,Llama4PreTrainedModel:()=>kc,LlamaForCausalLM:()=>rg,LlamaModel:()=>tg,LlamaPreTrainedModel:()=>pa,LlavaForConditionalGeneration:()=>Ft,LlavaOnevisionForConditionalGeneration:()=>Ft,LlavaPreTrainedModel:()=>vc,LlavaQwen2ForCausalLM:()=>jh,LongT5ForConditionalGeneration:()=>og,LongT5Model:()=>ng,LongT5PreTrainedModel:()=>da,M2M100ForConditionalGeneration:()=>ig,M2M100Model:()=>ag,M2M100PreTrainedModel:()=>fa,MBartForCausalLM:()=>mg,MBartForConditionalGeneration:()=>fg,MBartForSequenceClassification:()=>_g,MBartModel:()=>dg,MBartPreTrainedModel:()=>fs,MPNetForMaskedLM:()=>Zg,MPNetForQuestionAnswering:()=>rw,MPNetForSequenceClassification:()=>ew,MPNetForTokenClassification:()=>tw,MPNetModel:()=>Jg,MPNetPreTrainedModel:()=>Nr,MT5ForConditionalGeneration:()=>aw,MT5Model:()=>ow,MT5PreTrainedModel:()=>Aa,MarianMTModel:()=>cg,MarianModel:()=>lg,MarianPreTrainedModel:()=>_a,MaskFormerForInstanceSegmentation:()=>pg,MaskFormerModel:()=>ug,MaskFormerPreTrainedModel:()=>ma,Metric3DForDepthEstimation:()=>hg,Metric3DPreTrainedModel:()=>Ec,Metric3Dv2ForDepthEstimation:()=>gg,Metric3Dv2PreTrainedModel:()=>Ac,MgpstrForSceneTextRecognition:()=>wg,MgpstrModelOutput:()=>Mc,MgpstrPreTrainedModel:()=>Sc,MimiDecoderModel:()=>ga,MimiDecoderOutput:()=>Oc,MimiEncoderModel:()=>ha,MimiEncoderOutput:()=>Tc,MimiModel:()=>xg,MimiPreTrainedModel:()=>un,MistralForCausalLM:()=>bg,MistralModel:()=>yg,MistralPreTrainedModel:()=>wa,MobileBertForMaskedLM:()=>kg,MobileBertForQuestionAnswering:()=>Ag,MobileBertForSequenceClassification:()=>Eg,MobileBertModel:()=>vg,MobileBertPreTrainedModel:()=>_s,MobileLLMForCausalLM:()=>Sg,MobileLLMModel:()=>Mg,MobileLLMPreTrainedModel:()=>xa,MobileNetV1ForImageClassification:()=>Og,MobileNetV1ForSemanticSegmentation:()=>Ig,MobileNetV1Model:()=>Tg,MobileNetV1PreTrainedModel:()=>pn,MobileNetV2ForImageClassification:()=>Lg,MobileNetV2ForSemanticSegmentation:()=>Pg,MobileNetV2Model:()=>Cg,MobileNetV2PreTrainedModel:()=>dn,MobileNetV3ForImageClassification:()=>Ng,MobileNetV3ForSemanticSegmentation:()=>$g,MobileNetV3Model:()=>zg,MobileNetV3PreTrainedModel:()=>fn,MobileNetV4ForImageClassification:()=>Dg,MobileNetV4ForSemanticSegmentation:()=>Fg,MobileNetV4Model:()=>Rg,MobileNetV4PreTrainedModel:()=>_n,MobileViTForImageClassification:()=>Ug,MobileViTModel:()=>Bg,MobileViTPreTrainedModel:()=>ya,MobileViTV2ForImageClassification:()=>Gg,MobileViTV2Model:()=>jg,MobileViTV2PreTrainedModel:()=>ba,ModernBertDecoderForCausalLM:()=>Kg,ModernBertDecoderModel:()=>Xg,ModernBertDecoderPreTrainedModel:()=>va,ModernBertForMaskedLM:()=>Wg,ModernBertForSequenceClassification:()=>Vg,ModernBertForTokenClassification:()=>Hg,ModernBertModel:()=>qg,ModernBertPreTrainedModel:()=>ms,Moondream1ForConditionalGeneration:()=>Uh,MoonshineForConditionalGeneration:()=>Yg,MoonshineModel:()=>Qg,MoonshinePreTrainedModel:()=>ka,MptForCausalLM:()=>nw,MptModel:()=>sw,MptPreTrainedModel:()=>Ea,MultiModalityCausalLM:()=>iw,MultiModalityPreTrainedModel:()=>Ic,MusicgenForCausalLM:()=>cw,MusicgenForConditionalGeneration:()=>Sa,MusicgenModel:()=>lw,MusicgenPreTrainedModel:()=>Ma,NanoChatForCausalLM:()=>pw,NanoChatModel:()=>uw,NanoChatPreTrainedModel:()=>Ta,NeoBertForMaskedLM:()=>fw,NeoBertForQuestionAnswering:()=>hw,NeoBertForSequenceClassification:()=>_w,NeoBertForTokenClassification:()=>mw,NeoBertModel:()=>dw,NeoBertPreTrainedModel:()=>$r,NomicBertModel:()=>gw,NomicBertPreTrainedModel:()=>Cc,OPTForCausalLM:()=>Ow,OPTModel:()=>Tw,OPTPreTrainedModel:()=>za,Olmo2ForCausalLM:()=>bw,Olmo2Model:()=>yw,Olmo2PreTrainedModel:()=>Ia,Olmo3ForCausalLM:()=>kw,Olmo3Model:()=>vw,Olmo3PreTrainedModel:()=>Ca,OlmoForCausalLM:()=>xw,OlmoHybridForCausalLM:()=>Aw,OlmoHybridModel:()=>Ew,OlmoHybridPreTrainedModel:()=>La,OlmoModel:()=>ww,OlmoPreTrainedModel:()=>Oa,OpenELMForCausalLM:()=>Sw,OpenELMModel:()=>Mw,OpenELMPreTrainedModel:()=>Pa,OwlViTForObjectDetection:()=>Pw,OwlViTModel:()=>Lw,OwlViTPreTrainedModel:()=>$a,Owlv2ForObjectDetection:()=>Cw,Owlv2Model:()=>Iw,Owlv2PreTrainedModel:()=>Na,PaliGemmaForConditionalGeneration:()=>zw,ParakeetForCTC:()=>Nw,ParakeetPreTrainedModel:()=>Lc,PatchTSMixerForPrediction:()=>Rw,PatchTSMixerModel:()=>$w,PatchTSMixerPreTrainedModel:()=>Ra,PatchTSTForPrediction:()=>Fw,PatchTSTModel:()=>Dw,PatchTSTPreTrainedModel:()=>Da,Phi3ForCausalLM:()=>Gw,Phi3Model:()=>jw,Phi3PreTrainedModel:()=>Ba,Phi3VForCausalLM:()=>Ua,Phi3VPreTrainedModel:()=>Pc,PhiForCausalLM:()=>Uw,PhiModel:()=>Bw,PhiPreTrainedModel:()=>Fa,PreTrainedModel:()=>y,PvtForImageClassification:()=>Ww,PvtModel:()=>qw,PvtPreTrainedModel:()=>ja,PyAnnoteForAudioFrameClassification:()=>Hw,PyAnnoteModel:()=>Vw,PyAnnotePreTrainedModel:()=>Ga,Qwen2ForCausalLM:()=>Kw,Qwen2Model:()=>Xw,Qwen2MoeForCausalLM:()=>Yw,Qwen2MoeModel:()=>Qw,Qwen2MoePreTrainedModel:()=>Wa,Qwen2PreTrainedModel:()=>qa,Qwen2VLForCausalLM:()=>hs,Qwen2VLForConditionalGeneration:()=>mn,Qwen2VLPreTrainedModel:()=>zc,Qwen2_5_VLForCausalLM:()=>gs,Qwen2_5_VLForConditionalGeneration:()=>Va,Qwen3ForCausalLM:()=>Zw,Qwen3Model:()=>Jw,Qwen3MoeForCausalLM:()=>tx,Qwen3MoeModel:()=>ex,Qwen3MoePreTrainedModel:()=>Xa,Qwen3NextForCausalLM:()=>sx,Qwen3NextModel:()=>rx,Qwen3NextPreTrainedModel:()=>Ka,Qwen3PreTrainedModel:()=>Ha,Qwen3VLForCausalLM:()=>xs,Qwen3VLForConditionalGeneration:()=>ws,Qwen3VLMoeForCausalLM:()=>Qa,Qwen3VLMoeForConditionalGeneration:()=>nx,Qwen3_5ForCausalLM:()=>ys,Qwen3_5ForConditionalGeneration:()=>hn,Qwen3_5MoeForCausalLM:()=>Ya,Qwen3_5MoeForConditionalGeneration:()=>ox,RFDetrForObjectDetection:()=>cx,RFDetrModel:()=>lx,RFDetrObjectDetectionOutput:()=>Nc,RFDetrPreTrainedModel:()=>Za,RTDetrForObjectDetection:()=>X_,RTDetrModel:()=>H_,RTDetrObjectDetectionOutput:()=>or,RTDetrPreTrainedModel:()=>Oo,RTDetrV2ForObjectDetection:()=>bx,RTDetrV2Model:()=>yx,RTDetrV2ObjectDetectionOutput:()=>$c,RTDetrV2PreTrainedModel:()=>ei,ResNetForImageClassification:()=>ix,ResNetModel:()=>ax,ResNetPreTrainedModel:()=>Ja,RoFormerForMaskedLM:()=>hx,RoFormerForQuestionAnswering:()=>xx,RoFormerForSequenceClassification:()=>gx,RoFormerForTokenClassification:()=>wx,RoFormerModel:()=>mx,RoFormerPreTrainedModel:()=>Dr,RobertaForMaskedLM:()=>px,RobertaForQuestionAnswering:()=>_x,RobertaForSequenceClassification:()=>dx,RobertaForTokenClassification:()=>fx,RobertaModel:()=>ux,RobertaPreTrainedModel:()=>Rr,Sam2ImageSegmentationOutput:()=>Fc,Sam2Model:()=>ti,Sam2PreTrainedModel:()=>Bc,Sam3TrackerModel:()=>Ex,SamImageSegmentationOutput:()=>Rc,SamModel:()=>vx,SamPreTrainedModel:()=>Dc,SapiensForDepthEstimation:()=>Mx,SapiensForNormalEstimation:()=>Sx,SapiensForSemanticSegmentation:()=>Ax,SapiensPreTrainedModel:()=>gn,SegformerForImageClassification:()=>Ox,SegformerForSemanticSegmentation:()=>Ix,SegformerModel:()=>Tx,SegformerPreTrainedModel:()=>wn,SiglipModel:()=>Cx,SiglipPreTrainedModel:()=>ri,SiglipTextModel:()=>si,SiglipVisionModel:()=>Lx,SmolLM3ForCausalLM:()=>zx,SmolLM3Model:()=>Px,SmolLM3PreTrainedModel:()=>ni,SnacDecoderModel:()=>ai,SnacEncoderModel:()=>oi,SnacModel:()=>Nx,SnacPreTrainedModel:()=>xn,SpeechT5ForSpeechToText:()=>Rx,SpeechT5ForTextToSpeech:()=>Dx,SpeechT5HifiGan:()=>Fx,SpeechT5Model:()=>$x,SpeechT5PreTrainedModel:()=>yn,SqueezeBertForMaskedLM:()=>Ux,SqueezeBertForQuestionAnswering:()=>Gx,SqueezeBertForSequenceClassification:()=>jx,SqueezeBertModel:()=>Bx,SqueezeBertPreTrainedModel:()=>bs,StableLmForCausalLM:()=>Wx,StableLmModel:()=>qx,StableLmPreTrainedModel:()=>ii,Starcoder2ForCausalLM:()=>Hx,Starcoder2Model:()=>Vx,Starcoder2PreTrainedModel:()=>li,StyleTextToSpeech2Model:()=>Xx,StyleTextToSpeech2PreTrainedModel:()=>Uc,SupertonicForConditionalGeneration:()=>ci,SupertonicPreTrainedModel:()=>jc,Swin2SRForImageSuperResolution:()=>Zx,Swin2SRModel:()=>Jx,Swin2SRPreTrainedModel:()=>ui,SwinForImageClassification:()=>Qx,SwinForSemanticSegmentation:()=>Yx,SwinModel:()=>Kx,SwinPreTrainedModel:()=>bn,T5ForConditionalGeneration:()=>ty,T5Model:()=>ey,T5PreTrainedModel:()=>pi,TableTransformerForObjectDetection:()=>sy,TableTransformerModel:()=>ry,TableTransformerObjectDetectionOutput:()=>Gc,TableTransformerPreTrainedModel:()=>di,TrOCRForCausalLM:()=>ny,TrOCRPreTrainedModel:()=>qc,UltravoxModel:()=>ds,UltravoxPreTrainedModel:()=>xc,UniSpeechForCTC:()=>ay,UniSpeechForSequenceClassification:()=>iy,UniSpeechModel:()=>oy,UniSpeechPreTrainedModel:()=>vn,UniSpeechSatForAudioFrameClassification:()=>py,UniSpeechSatForCTC:()=>cy,UniSpeechSatForSequenceClassification:()=>uy,UniSpeechSatModel:()=>ly,UniSpeechSatPreTrainedModel:()=>vs,VaultGemmaForCausalLM:()=>fy,VaultGemmaModel:()=>dy,VaultGemmaPreTrainedModel:()=>fi,ViTForImageClassification:()=>hy,ViTMAEModel:()=>gy,ViTMAEPreTrainedModel:()=>Wc,ViTMSNForImageClassification:()=>xy,ViTMSNModel:()=>wy,ViTMSNPreTrainedModel:()=>mi,ViTModel:()=>my,ViTPreTrainedModel:()=>_i,VisionEncoderDecoderModel:()=>_y,VitMatteForImageMatting:()=>yy,VitMattePreTrainedModel:()=>Vc,VitPoseForPoseEstimation:()=>by,VitPosePreTrainedModel:()=>Hc,VitsModel:()=>vy,VitsModelOutput:()=>Xc,VitsPreTrainedModel:()=>Kc,VoxtralForConditionalGeneration:()=>ky,VoxtralRealtimeForConditionalGeneration:()=>hi,VoxtralRealtimePreTrainedModel:()=>Qc,Wav2Vec2BertForCTC:()=>Ay,Wav2Vec2BertForSequenceClassification:()=>My,Wav2Vec2BertModel:()=>Ey,Wav2Vec2BertPreTrainedModel:()=>kn,Wav2Vec2ForAudioFrameClassification:()=>zh,Wav2Vec2ForCTC:()=>Lh,Wav2Vec2ForSequenceClassification:()=>Ph,Wav2Vec2Model:()=>Ch,Wav2Vec2PreTrainedModel:()=>Ht,WavLMForAudioFrameClassification:()=>Cy,WavLMForCTC:()=>Ty,WavLMForSequenceClassification:()=>Oy,WavLMForXVector:()=>Iy,WavLMModel:()=>Sy,WavLMPreTrainedModel:()=>Fr,WeSpeakerResNetModel:()=>Ly,WeSpeakerResNetPreTrainedModel:()=>Jc,WhisperForConditionalGeneration:()=>Zc,WhisperModel:()=>zy,WhisperPreTrainedModel:()=>gi,XLMForQuestionAnswering:()=>By,XLMForSequenceClassification:()=>Dy,XLMForTokenClassification:()=>Fy,XLMModel:()=>$y,XLMPreTrainedModel:()=>Br,XLMRobertaForMaskedLM:()=>jy,XLMRobertaForQuestionAnswering:()=>Wy,XLMRobertaForSequenceClassification:()=>Gy,XLMRobertaForTokenClassification:()=>qy,XLMRobertaModel:()=>Uy,XLMRobertaPreTrainedModel:()=>Ur,XLMWithLMHeadModel:()=>Ry,XVectorOutput:()=>Yc,YolosForObjectDetection:()=>Hy,YolosModel:()=>Vy,YolosObjectDetectionOutput:()=>eu,YolosPreTrainedModel:()=>wi,YoutuForCausalLM:()=>Ky,YoutuModel:()=>Xy,YoutuPreTrainedModel:()=>xi});var us=class extends y{},Wf=class extends us{},Vf=class extends us{async _call(e){return new G(await super._call(e))}},Hf=class extends us{async _call(e){return new Me(await super._call(e))}},Xf=class extends us{async _call(e){return new we(await super._call(e))}};var uo=class extends y{},Kf=class extends uo{},Qf=class extends uo{};var po=class extends y{},Yf=class extends po{},Jf=class extends po{};var fo=class extends y{},Zf=class extends fo{},e_=class extends fo{};var _o=class extends y{},t_=class extends _o{},r_=class extends _o{};var rn=class extends y{},s_=class extends rn{},n_=class extends rn{},o_=class extends rn{async _call(e){return new G(await super._call(e))}};var mo=class extends y{},a_=class extends mo{},i_=class extends mo{async _call(e){return new G(await super._call(e))}};var Tr=class extends y{},l_=class extends Tr{},c_=class extends Tr{async _call(e){return new we(await super._call(e))}},u_=class extends Tr{async _call(e){return new G(await super._call(e))}},p_=class extends Tr{async _call(e){return new he(await super._call(e))}},d_=class extends Tr{async _call(e){return new Me(await super._call(e))}};var ho=class extends y{},f_=class extends ho{},__=class extends ho{};var go=class extends y{},m_=class extends go{},h_=class extends go{};var wo=class extends y{},g_=class extends wo{},w_=class extends wo{};var Or=class extends y{},x_=class extends Or{},y_=class extends Or{async _call(e){return new we(await super._call(e))}},b_=class extends Or{async _call(e){return new G(await super._call(e))}},v_=class extends Or{async _call(e){return new he(await super._call(e))}},k_=class extends Or{async _call(e){return new Me(await super._call(e))}};var Gz=4299n,V2=6561n,ac=class extends y{forward_params=["input_ids","inputs_embeds","attention_mask","position_ids","audio_values","exaggeration","audio_features","audio_tokens","speaker_embeddings","speaker_features","past_key_values"];main_input_name="input_ids";_return_dict_in_generate_keys=["audio_tokens","speaker_embeddings","speaker_features"]},xo=class extends ac{async encode_speech(e){return de(this.sessions.speech_encoder,{audio_values:e})}async forward({input_ids:e=null,attention_mask:r=null,audio_values:s=null,exaggeration:n=null,position_ids:o=null,inputs_embeds:a=null,past_key_values:i=null,generation_config:l=null,logits_processor:c=null,audio_features:p=null,audio_tokens:f=null,speaker_embeddings:_=null,speaker_features:m=null,...w}){let x;if(!a){let E=this.sessions.embed_tokens.inputNames,A={input_ids:e};if(E.includes("exaggeration")){if(!(n instanceof $)){let T=e.dims[0];if(n==null)n=We([T],.5);else if(typeof n=="number")n=We([T],n);else if(Array.isArray(n))n=new $("float32",n,[T]);else throw new Error("Unsupported type for `exaggeration` input")}A.exaggeration=n}if(E.includes("position_ids")&&(A.position_ids=o),{inputs_embeds:a}=await de(this.sessions.embed_tokens,A),p&&f&&_&&m&&(x={audio_features:p,audio_tokens:f,speaker_embeddings:_,speaker_features:m}),x||s)x??=await this.encode_speech(s),a=ve([x.audio_features,a],1),r=et([a.dims[0],a.dims[1]]);else{let T=a.dims[1];if(!i||T!==1)throw new Error("Incorrect state encountered during generation.");let S=i.get_seq_length();r=et([a.dims[0],S+T])}}return{...await Ct(this,{inputs_embeds:a,past_key_values:i,attention_mask:r,generation_config:l,logits_processor:c},!1),...x}}prepare_inputs_for_generation(e,r,s){if(!r.position_ids&&this.sessions.embed_tokens.inputNames.includes("position_ids"))if(r.input_ids.dims[1]===1){let n=Array.from({length:e.length},(o,a)=>e[a].length-e[a].findLastIndex(i=>i==V2)-1);r.position_ids=new $("int64",n,[e.length,1])}else{let o=r.input_ids.tolist().map(a=>{let i=0;return a.map(l=>l>=V2?0:i++)});r.position_ids=new $("int64",o.flat(),r.input_ids.dims)}return r.input_ids.dims[1]===1&&(delete r.audio_values,delete r.audio_features,delete r.audio_tokens,delete r.speaker_embeddings,delete r.speaker_features),lo(this,e,r,s)}async generate(e){let{sequences:r,audio_tokens:s,speaker_embeddings:n,speaker_features:o}=await super.generate({...e,return_dict_in_generate:!0}),a=r.slice(null,[e.input_ids.dims[1],-1]),i=We([a.dims[0],3],Gz),l=ve([s,a,i],1),{waveform:c}=await de(this.sessions.conditional_decoder,{speech_tokens:l,speaker_features:o,speaker_embeddings:n});return c}};var ic=class extends y{},E_=class extends ic{};var sn=class extends y{},A_=class extends sn{},yo=class extends sn{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"text_model"})}},bo=class extends sn{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"audio_model"})}};var nr=class extends y{},M_=class extends nr{},S_=class extends nr{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"text_model"})}},vo=class extends nr{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"text_model"})}},T_=class extends nr{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"vision_model"})}},O_=class extends nr{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"vision_model"})}};var ko=class extends y{},I_=class extends ko{},C_=class extends ko{};var Eo=class extends y{},L_=class extends Eo{},P_=class extends Eo{};var Ao=class extends y{},z_=class extends Ao{},N_=class extends Ao{};var Mo=class extends y{},$_=class extends Mo{},R_=class extends Mo{};var Ir=class extends y{},D_=class extends Ir{},F_=class extends Ir{async _call(e){return new we(await super._call(e))}},B_=class extends Ir{async _call(e){return new G(await super._call(e))}},U_=class extends Ir{async _call(e){return new he(await super._call(e))}},j_=class extends Ir{async _call(e){return new Me(await super._call(e))}};var So=class extends y{},G_=class extends So{},q_=class extends So{async _call(e){return new G(await super._call(e))}};var To=class extends y{},W_=class extends To{},V_=class extends To{async _call(e){return new G(await super._call(e))}};var Oo=class extends y{},H_=class extends Oo{},X_=class extends Oo{async _call(e){return new or(await super._call(e))}},or=class extends Re{constructor({logits:e,pred_boxes:r}){super(),this.logits=e,this.pred_boxes=r}};var Io=class extends y{},K_=class extends Io{},Q_=class extends Io{async _call(e){return new or(await super._call(e))}};var lc=class extends Re{constructor({audio_codes:e}){super(),this.audio_codes=e}},cc=class extends Re{constructor({audio_values:e}){super(),this.audio_values=e}},nn=class extends y{main_input_name="input_values";forward_params=["input_values"]},Y_=class extends nn{async encode(e){return new lc(await de(this.sessions.encoder_model,e))}async decode(e){return new cc(await de(this.sessions.decoder_model,e))}},Co=class extends nn{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"encoder_model"})}},Lo=class extends nn{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"decoder_model"})}};var Cr=class extends y{},J_=class extends Cr{},Z_=class extends Cr{async _call(e){return new we(await super._call(e))}},em=class extends Cr{async _call(e){return new G(await super._call(e))}},tm=class extends Cr{async _call(e){return new he(await super._call(e))}},rm=class extends Cr{async _call(e){return new Me(await super._call(e))}};var Lr=class extends y{},sm=class extends Lr{},nm=class extends Lr{async _call(e){return new we(await super._call(e))}},om=class extends Lr{async _call(e){return new G(await super._call(e))}},am=class extends Lr{async _call(e){return new he(await super._call(e))}},im=class extends Lr{async _call(e){return new Me(await super._call(e))}};var uc=class extends y{},lm=class extends uc{};var Po=class extends y{},cm=class extends Po{},um=class extends Po{async _call(e){return new G(await super._call(e))}};var pc=class extends y{},pm=class extends pc{};var dc=class extends y{},dm=class extends dc{};var on=class extends y{},fm=class extends on{},_m=class extends on{async _call(e){return new an(await super._call(e))}},mm=class extends on{async _call(e){return new fc(await super._call(e))}},an=class extends Re{constructor({logits:e,pred_boxes:r}){super(),this.logits=e,this.pred_boxes=r}},fc=class extends Re{constructor({logits:e,pred_boxes:r,pred_masks:s}){super(),this.logits=e,this.pred_boxes=r,this.pred_masks=s}};var zo=class extends y{},hm=class extends zo{},gm=class extends zo{async _call(e){return new G(await super._call(e))}};var No=class extends y{},wm=class extends No{},xm=class extends No{async _call(e){return new G(await super._call(e))}};var _c=class extends y{},ym=class extends _c{};var mc=class extends y{},bm=class extends mc{};var Pr=class extends y{},vm=class extends Pr{},km=class extends Pr{async _call(e){return new G(await super._call(e))}},Em=class extends Pr{async _call(e){return new he(await super._call(e))}},Am=class extends Pr{async _call(e){return new Me(await super._call(e))}},Mm=class extends Pr{async _call(e){return new we(await super._call(e))}};var hc=class extends y{},Sm=class extends hc{};var $o=class extends y{},Tm=class extends $o{},Om=class extends $o{};var Ro=class extends y{},Im=class extends Ro{},Cm=class extends Ro{async _call(e){return new G(await super._call(e))}};var zr=class extends y{},Lm=class extends zr{},Pm=class extends zr{async _call(e){return new we(await super._call(e))}},zm=class extends zr{async _call(e){return new G(await super._call(e))}},Nm=class extends zr{async _call(e){return new he(await super._call(e))}},$m=class extends zr{async _call(e){return new Me(await super._call(e))}};var Do=class extends y{},Rm=class extends Do{},Dm=class extends Do{};var ps=class extends y{},Fm=class extends ps{},Bm=class extends ps{async _call(e){return new we(await super._call(e))}},Um=class extends ps{async _call(e){return new G(await super._call(e))}},jm=class extends ps{async _call(e){return new he(await super._call(e))}};var Fo=class extends y{},Gm=class extends Fo{},qm=class extends Fo{};var Bo=class extends y{},Wm=class extends Bo{},Vm=class extends Bo{};var Uo=class extends y{},Hm=class extends Uo{},Xm=class extends Uo{};var jo=class extends y{},Km=class extends jo{},Qm=class extends jo{async _call(e){return new G(await super._call(e))}};var gc=class extends y{forward_params=["input_ids","inputs_embeds","attention_mask","pixel_values","encoder_outputs","decoder_input_ids","decoder_inputs_embeds","decoder_attention_mask","past_key_values"];main_input_name="inputs_embeds"},Ym=class extends gc{_merge_input_ids_with_image_features({inputs_embeds:e,image_features:r,input_ids:s,attention_mask:n}){return{inputs_embeds:ve([r,e],1),attention_mask:ve([et(r.dims.slice(0,2)),n],1)}}async _prepare_inputs_embeds({input_ids:e,pixel_values:r,inputs_embeds:s,attention_mask:n}){if(!e&&!r)throw new Error("Either `input_ids` or `pixel_values` should be provided.");let o,a;return e&&(o=await this.encode_text({input_ids:e})),r&&(a=await this.encode_image({pixel_values:r})),o&&a?{inputs_embeds:s,attention_mask:n}=this._merge_input_ids_with_image_features({inputs_embeds:o,image_features:a,input_ids:e,attention_mask:n}):s=o||a,{inputs_embeds:s,attention_mask:n}}async forward({input_ids:e,pixel_values:r,attention_mask:s,decoder_input_ids:n,decoder_attention_mask:o,encoder_outputs:a,past_key_values:i,inputs_embeds:l,decoder_inputs_embeds:c}){if(l||({inputs_embeds:l,attention_mask:s}=await this._prepare_inputs_embeds({input_ids:e,pixel_values:r,inputs_embeds:l,attention_mask:s})),!a){let{last_hidden_state:f}=await Vt(this,{inputs_embeds:l,attention_mask:s});a=f}if(!c){if(!n)throw new Error("Either `decoder_input_ids` or `decoder_inputs_embeds` should be provided.");c=await this.encode_text({input_ids:n})}return await Ct(this,{inputs_embeds:c,attention_mask:o,encoder_attention_mask:s,encoder_hidden_states:a,past_key_values:i},!0)}};var Go=class extends y{},Jm=class extends Go{},Zm=class extends Go{};var qo=class extends y{},eh=class extends qo{},th=class extends qo{};var Wo=class extends y{},rh=class extends Wo{},sh=class extends Wo{};var wc=class extends y{forward_params=["input_ids","attention_mask","inputs_embeds","per_layer_inputs","position_ids","pixel_values","input_features","input_features_mask","past_key_values"]},ln=class extends wc{async forward({input_ids:e=null,attention_mask:r=null,pixel_values:s=null,input_features:n=null,input_features_mask:o=null,position_ids:a=null,inputs_embeds:i=null,per_layer_inputs:l=null,past_key_values:c=null,generation_config:p=null,logits_processor:f=null,..._}){if((!i||!l)&&({inputs_embeds:i,per_layer_inputs:l}=await de(this.sessions.embed_tokens,{input_ids:e}),e.dims[1]!==1)){if(s){let{image_features:w}=await de(this.sessions.vision_encoder,{pixel_values:s});({inputs_embeds:i,attention_mask:r}=this._merge_input_ids_with_image_features({image_features:w,inputs_embeds:i,input_ids:e,attention_mask:r}))}if(n){let{audio_features:w}=await de(this.sessions.audio_encoder,{input_features:n,input_features_mask:o});({inputs_embeds:i,attention_mask:r}=this._merge_input_ids_with_audio_features({audio_features:w,inputs_embeds:i,input_ids:e,attention_mask:r}))}}return await Ct(this,{inputs_embeds:i,per_layer_inputs:l,past_key_values:c,attention_mask:r,position_ids:a,generation_config:p,logits_processor:f},!0)}_merge_input_ids_with_image_features(e){let r=e.image_features.dims.at(-1),s=e.image_features.view(-1,r);return co({image_token_id:this.config.image_token_id,...e,image_features:s})}_merge_input_ids_with_audio_features(e){let r=e.audio_features.dims.at(-1),s=e.audio_features.view(-1,r);return qf({audio_token_id:this.config.audio_token_id,...e,audio_features:s})}},Vo=class extends ln{};var Ho=class extends y{},nh=class extends Ho{},oh=class extends Ho{};var Xo=class extends y{},ah=class extends Xo{},ih=class extends Xo{};var Ko=class extends y{},lh=class extends Ko{},ch=class extends Ko{};var Qo=class extends y{},uh=class extends Qo{},ph=class extends Qo{};var Yo=class extends y{},dh=class extends Yo{},fh=class extends Yo{};var Jo=class extends y{},_h=class extends Jo{},mh=class extends Jo{};var Zo=class extends y{},hh=class extends Zo{},gh=class extends Zo{};var ea=class extends y{},wh=class extends ea{},xh=class extends ea{};var ta=class extends y{},yh=class extends ta{},bh=class extends ta{};var ra=class extends y{},vh=class extends ra{},kh=class extends ra{};var xc=class extends y{forward_params=["input_ids","attention_mask","position_ids","audio_values","past_key_values"]},ds=class extends xc{_merge_input_ids_with_audio_features(e){let r=e.audio_features.dims.at(-1),s=e.audio_features.view(-1,r);return qf({audio_token_id:this.config.ignore_index??this.config.audio_token_id??this.config.audio_token_index,...e,audio_features:s})}};var Eh=class extends ds{forward_params=["input_ids","attention_mask","input_features","past_key_values"]};var yc=class extends y{},Ah=class extends yc{};var bc=class extends y{},Mh=class extends bc{};var sa=class extends y{},Sh=class extends sa{},Th=class extends sa{};var na=class extends y{},Oh=class extends na{},Ih=class extends na{async _call(e){return new G(await super._call(e))}};var Ht=class extends y{},Ch=class extends Ht{},Lh=class extends Ht{async _call(e){return new kt(await super._call(e))}},Ph=class extends Ht{async _call(e){return new G(await super._call(e))}},zh=class extends Ht{async _call(e){return new he(await super._call(e))}};var Nh=class extends y{},$h=class extends Ht{},Rh=class extends Ht{async _call(e){return new kt(await super._call(e))}},Dh=class extends Ht{async _call(e){return new G(await super._call(e))}};var oa=class extends y{},Fh=class extends oa{},Bh=class extends oa{};var vc=class extends y{forward_params=["input_ids","attention_mask","pixel_values","position_ids","past_key_values"]},Ft=class extends vc{_merge_input_ids_with_image_features(e){let r=e.image_features.dims.at(-1),s=e.image_features.view(-1,r);return co({image_token_id:this.config.image_token_index??this.config.image_token_id,...e,image_features:s})}},Uh=class extends Ft{},jh=class extends Ft{};var Gh=class extends Ft{forward_params=["input_ids","attention_mask","pixel_values","pixel_attention_mask","position_ids","past_key_values"]};var aa=class extends y{},qh=class extends aa{},Wh=class extends aa{async _call(e){return new G(await super._call(e))}};var ia=class extends y{},Vh=class extends ia{},Hh=class extends ia{};var cn=class extends y{},Xh=class extends cn{async forward(e){let r=!e.input_ids,s=!e.pixel_values;if(r&&s)throw new Error("Either `input_ids` or `pixel_values` should be provided.");if(r&&(e.input_ids=et([e.pixel_values.dims[0],1])),s){let{image_size:c}=this.config.vision_config;e.pixel_values=We([0,3,c,c],0)}let{text_embeddings:n,image_embeddings:o,l2norm_text_embeddings:a,l2norm_image_embeddings:i}=await super.forward(e),l={};return r||(l.text_embeddings=n,l.l2norm_text_embeddings=a),s||(l.image_embeddings=o,l.l2norm_image_embeddings=i),l}},la=class extends cn{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"text_model"})}},Kh=class extends cn{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"vision_model"})}};var ca=class extends y{},Qh=class extends ca{},Yh=class extends ca{};var ua=class extends y{},Jh=class extends ua{},Zh=class extends ua{};var eg=class extends Ft{forward_params=["input_ids","attention_mask","pixel_values","pixel_attention_mask","spatial_shapes","position_ids","past_key_values"]};var pa=class extends y{},tg=class extends pa{},rg=class extends pa{};var kc=class extends y{},sg=class extends kc{};var da=class extends y{},ng=class extends da{},og=class extends da{};var fa=class extends y{},ag=class extends fa{},ig=class extends fa{};var _a=class extends y{},lg=class extends _a{},cg=class extends _a{};var ma=class extends y{},ug=class extends ma{},pg=class extends ma{};var fs=class extends y{},dg=class extends fs{},fg=class extends fs{},_g=class extends fs{async _call(e){return new G(await super._call(e))}},mg=class extends fs{};var Ec=class extends y{},hg=class extends Ec{};var Ac=class extends y{},gg=class extends Ac{};var Mc=class extends Re{constructor({char_logits:e,bpe_logits:r,wp_logits:s}){super(),this.char_logits=e,this.bpe_logits=r,this.wp_logits=s}get logits(){return[this.char_logits,this.bpe_logits,this.wp_logits]}},Sc=class extends y{},wg=class extends Sc{async _call(e){return new Mc(await super._call(e))}};var Tc=class extends Re{constructor({audio_codes:e}){super(),this.audio_codes=e}},Oc=class extends Re{constructor({audio_values:e}){super(),this.audio_values=e}},un=class extends y{main_input_name="input_values";forward_params=["input_values"]},xg=class extends un{async encode(e){return new Tc(await de(this.sessions.encoder_model,e))}async decode(e){return new Oc(await de(this.sessions.decoder_model,e))}},ha=class extends un{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"encoder_model"})}},ga=class extends un{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"decoder_model"})}};var wa=class extends y{},yg=class extends wa{},bg=class extends wa{};var _s=class extends y{},vg=class extends _s{},kg=class extends _s{async _call(e){return new we(await super._call(e))}},Eg=class extends _s{async _call(e){return new G(await super._call(e))}},Ag=class extends _s{async _call(e){return new Me(await super._call(e))}};var xa=class extends y{},Mg=class extends xa{},Sg=class extends xa{};var pn=class extends y{},Tg=class extends pn{},Og=class extends pn{async _call(e){return new G(await super._call(e))}},Ig=class extends pn{};var dn=class extends y{},Cg=class extends dn{},Lg=class extends dn{async _call(e){return new G(await super._call(e))}},Pg=class extends dn{};var fn=class extends y{},zg=class extends fn{},Ng=class extends fn{async _call(e){return new G(await super._call(e))}},$g=class extends fn{};var _n=class extends y{},Rg=class extends _n{},Dg=class extends _n{async _call(e){return new G(await super._call(e))}},Fg=class extends _n{};var ya=class extends y{},Bg=class extends ya{},Ug=class extends ya{async _call(e){return new G(await super._call(e))}};var ba=class extends y{},jg=class extends ba{},Gg=class extends ba{async _call(e){return new G(await super._call(e))}};var ms=class extends y{},qg=class extends ms{},Wg=class extends ms{async _call(e){return new we(await super._call(e))}},Vg=class extends ms{async _call(e){return new G(await super._call(e))}},Hg=class extends ms{async _call(e){return new he(await super._call(e))}};var va=class extends y{},Xg=class extends va{},Kg=class extends va{};var ka=class extends y{requires_attention_mask=!1;main_input_name="input_values";forward_params=["input_values","decoder_input_ids","past_key_values"]},Qg=class extends ka{},Yg=class extends ka{};var Nr=class extends y{},Jg=class extends Nr{},Zg=class extends Nr{async _call(e){return new we(await super._call(e))}},ew=class extends Nr{async _call(e){return new G(await super._call(e))}},tw=class extends Nr{async _call(e){return new he(await super._call(e))}},rw=class extends Nr{async _call(e){return new Me(await super._call(e))}};var Ea=class extends y{},sw=class extends Ea{},nw=class extends Ea{};var Aa=class extends y{},ow=class extends Aa{},aw=class extends Aa{};var Ic=class extends y{},iw=class extends Ic{forward_params=["input_ids","pixel_values","images_seq_mask","images_emb_mask","attention_mask","position_ids","past_key_values"];constructor(...e){super(...e),this._generation_mode="text"}async forward(e){let r=this._generation_mode??"text",s;if(r==="text"||!e.past_key_values){let l=this.sessions.prepare_inputs_embeds,c=Ye(e,l.inputNames);s=await de(l,c)}else{let l=this.sessions.gen_img_embeds,c=Ye({image_ids:e.input_ids},l.inputNames);s=await de(l,c)}let n={...e,...s},o=await Ct(this,n),a=this.sessions[r==="text"?"lm_head":"gen_head"];if(!a)throw new Error(`Unable to find "${a}" generation head`);let i=await de(a,Ye(o,a.inputNames));return{...s,...o,...i}}prepare_inputs_for_generation(e,r,s){let n=!!r.past_key_values;return s.guidance_scale!==null&&s.guidance_scale>1&&(n?r.input_ids=ve([r.input_ids,r.input_ids],0):(r.input_ids=ve([r.input_ids,jn(r.input_ids,BigInt(s.pad_token_id))],0),r.attention_mask=ve([r.attention_mask,jn(r.attention_mask,0n)],0))),(n||!r.pixel_values)&&(r.pixel_values=We([0,0,3,384,384],1)),n&&(r.images_seq_mask=new $("bool",new Array(1).fill(!0).fill(!1,0,1),[1,1]),r.images_emb_mask=new $("bool",new Array(0).fill(!1),[1,1,0])),r}async generate(e){return this._generation_mode="text",super.generate(e)}async generate_images(e){this._generation_mode="image";let r=(e.inputs??e[this.main_input_name]).dims[1],n=(await super.generate(e)).slice(null,[r,null]),o=this.sessions.image_decode,{decoded_image:a}=await de(o,{generated_tokens:n}),i=a.add_(1).mul_(255/2).clamp_(0,255).to("uint8"),l=[];for(let c of i){let p=Qe.fromTensor(c);l.push(p)}return l}};var Ma=class extends y{},lw=class extends Ma{},cw=class extends Ma{},Sa=class extends y{forward_params=["input_ids","attention_mask","encoder_outputs","decoder_input_ids","decoder_attention_mask","past_key_values"];_apply_and_filter_by_delay_pattern_mask(e){let[r,s]=e.dims,n=this.config.decoder.num_codebooks,o=s-n,a=0;for(let c=0;c<e.size;++c){if(e.data[c]==this.config.decoder.pad_token_id)continue;let p=c%s,f=Math.floor(c/s)%n,_=p-f;_>0&&_<=o&&(e.data[a++]=e.data[c])}let i=Math.floor(r/n),l=a/(i*n);return new $(e.type,e.data.slice(0,a),[i,n,l])}prepare_inputs_for_generation(e,r,s){let n=BigInt(this.config.decoder.pad_token_id),o=structuredClone(e);for(let a=0;a<o.length;++a)for(let i=0;i<o[a].length;++i)a%this.config.decoder.num_codebooks>=i&&(o[a][i]=n);return s.guidance_scale!==null&&s.guidance_scale>1&&(o=o.concat(o)),oc(this,o,r,s)}async generate(e){let r=await super.generate(e),s=this._apply_and_filter_by_delay_pattern_mask(r).unsqueeze_(0),{audio_values:n}=await de(this.sessions.encodec_decode,{audio_codes:s});return n}};var Ta=class extends y{},uw=class extends Ta{},pw=class extends Ta{};var $r=class extends y{},dw=class extends $r{},fw=class extends $r{async _call(e){return new we(await super._call(e))}},_w=class extends $r{async _call(e){return new G(await super._call(e))}},mw=class extends $r{async _call(e){return new he(await super._call(e))}},hw=class extends $r{async _call(e){return new Me(await super._call(e))}};var Cc=class extends y{},gw=class extends Cc{};var Oa=class extends y{},ww=class extends Oa{},xw=class extends Oa{};var Ia=class extends y{},yw=class extends Ia{},bw=class extends Ia{};var Ca=class extends y{},vw=class extends Ca{},kw=class extends Ca{};var La=class extends y{},Ew=class extends La{},Aw=class extends La{};var Pa=class extends y{},Mw=class extends Pa{},Sw=class extends Pa{};var za=class extends y{},Tw=class extends za{},Ow=class extends za{};var Na=class extends y{},Iw=class extends Na{},Cw=class extends Na{};var $a=class extends y{},Lw=class extends $a{},Pw=class extends $a{};var zw=class extends Ft{};var Lc=class extends y{},Nw=class extends Lc{async _call(e){return new kt(await super._call(e))}};var Ra=class extends y{},$w=class extends Ra{},Rw=class extends Ra{};var Da=class extends y{},Dw=class extends Da{},Fw=class extends Da{};var Fa=class extends y{},Bw=class extends Fa{},Uw=class extends Fa{};var Ba=class extends y{},jw=class extends Ba{},Gw=class extends Ba{};var Pc=class extends y{forward_params=["input_ids","inputs_embeds","attention_mask","position_ids","pixel_values","image_sizes","past_key_values"]},Ua=class extends Pc{async forward({input_ids:e=null,attention_mask:r=null,pixel_values:s=null,image_sizes:n=null,position_ids:o=null,inputs_embeds:a=null,past_key_values:i=null,generation_config:l=null,logits_processor:c=null,...p}){if(!a){let _;if(s&&e.dims[1]!==1){if(!n)throw new Error("`image_sizes` must be provided when `pixel_values` is provided.");({image_features:_}=await de(this.sessions.vision_encoder,{pixel_values:s,image_sizes:n}))}else{let m=this.config.normalized_config.hidden_size;_=new $("float32",[],[0,m])}({inputs_embeds:a}=await de(this.sessions.prepare_inputs_embeds,{input_ids:e,image_features:_}))}return await Ct(this,{inputs_embeds:a,past_key_values:i,attention_mask:r,position_ids:o,generation_config:l,logits_processor:c},!1)}};var ja=class extends y{},qw=class extends ja{},Ww=class extends ja{async _call(e){return new G(await super._call(e))}};var Ga=class extends y{},Vw=class extends Ga{},Hw=class extends Ga{async _call(e){return new he(await super._call(e))}};var qa=class extends y{},Xw=class extends qa{},Kw=class extends qa{};var Wa=class extends y{},Qw=class extends Wa{},Yw=class extends Wa{};var zc=class extends y{forward_params=["input_ids","attention_mask","position_ids","past_key_values","pixel_values","image_grid_thw"]},mn=class extends zc{image_grid_thw_name="grid_thw";get_rope_index(e,r,s,n){let{vision_config:o,image_token_id:a,video_token_id:i,vision_start_token_id:l}=this.config,c=o.spatial_merge_size??2,p=[];if(r||s){let f=e.tolist();n||(n=El(e));let _=n.tolist(),m=Array.from({length:3},A=>Array.from({length:e.dims[0]},T=>Array.from({length:e.dims[1]},S=>1))),w=r?r.tolist():[],x=s?s.tolist():[],k=0,E=0;for(let A=0;A<f.length;++A){let T=f[A].filter((L,z)=>_[A][z]==1),P=T.reduce((L,z,R)=>(z==l&&L.push(R),L),[]).map(L=>T[L+1]),O=P.filter(L=>L==a).length,v=P.filter(L=>L==i).length,j=[],H=0,B=O,V=v;for(let L=0;L<P.length;++L){let z=T.findIndex((It,ot)=>ot>H&&It==a),R=T.findIndex((It,ot)=>ot>H&&It==i),J=B>0&&z!==-1?z:T.length+1,Ce=V>0&&R!==-1?R:T.length+1,ae,Ue,Je,rt;J<Ce?([Ue,Je,rt]=w[k],++k,--B,ae=J):([Ue,Je,rt]=x[E],++E,--V,ae=Ce);let[nt,at,Se]=[Number(Ue),Math.floor(Number(Je)/c),Math.floor(Number(rt)/c)],xe=ae-H,He=j.length>0?Pe(j.at(-1))[0]+1:0;j.push(Array.from({length:3*xe},(It,ot)=>He+ot%xe));let Ot=xe+He,ke=nt*at*Se,De=Array.from({length:ke},(It,ot)=>Ot+Math.floor(ot/(at*Se))),qr=Array.from({length:ke},(It,ot)=>Ot+Math.floor(ot/Se)%at),As=Array.from({length:ke},(It,ot)=>Ot+ot%Se);j.push([De,qr,As].flat()),H=ae+ke}if(H<T.length){let L=j.length>0?Pe(j.at(-1))[0]+1:0,z=T.length-H;j.push(Array.from({length:3*z},(R,J)=>L+J%z))}let q=j.reduce((L,z)=>L+z.length,0),Q=new Array(q),F=0;for(let L=0;L<3;++L)for(let z=0;z<j.length;++z){let R=j[z],J=R.length/3;for(let Ce=L*J;Ce<(L+1)*J;++Ce)Q[F++]=R[Ce]}let C=0,te=_[A];for(let L=0;L<te.length;++L)if(te[L]==1){for(let z=0;z<3;++z)m[z][A][L]=Q[z*q/3+C];++C}let le=Pe(Q)[0];p.push(le+1-f[A].length)}return[new $("int64",m.flat(1/0),[3,e.dims[0],e.dims[1]]),new $("int64",p,[p.length,1])]}else if(n){let{data:f,dims:_}=_1(n),m=BigInt64Array.from({length:3*f.length},(x,k)=>f[k%f.length]),w=Array.from({length:_[0]},(x,k)=>Pe(f.subarray(_[1]*k,_[1]*(k+1)))[0]+1n+BigInt(_[1]));return[new $("int64",m,[3,..._]),new $("int64",w,[w.length,1])]}else{let[f,_]=e.dims,m=BigInt64Array.from({length:3*f*_},(w,x)=>BigInt(Math.floor(x%_/f)));return[new $("int64",m,[3,...e.dims]),fp([f,1])]}}async encode_image({pixel_values:e,image_grid_thw:r}){return(await de(this.sessions.vision_encoder,{pixel_values:e,[this.image_grid_thw_name]:r})).image_features}_merge_input_ids_with_image_features(e){return co({image_token_id:this.config.image_token_id,...e})}prepare_inputs_for_generation(e,r,s){if(r.attention_mask&&!r.position_ids)if(!r.past_key_values)[r.position_ids,r.rope_deltas]=this.get_rope_index(r.input_ids,r.image_grid_thw,r.video_grid_thw,r.attention_mask);else{r.pixel_values=null;let n=r.past_key_values.get_seq_length();if(n<r.input_ids.dims[1]){let[o,a]=this.get_rope_index(r.input_ids,r.image_grid_thw,r.video_grid_thw,r.attention_mask);r.rope_deltas=a,r.position_ids=o.slice(null,null,[n,null]),r.input_ids=r.input_ids.slice(null,[n,null])}else{r.rope_deltas||([,r.rope_deltas]=this.get_rope_index(r.input_ids,r.image_grid_thw,r.video_grid_thw,r.attention_mask));let o=BigInt(n),a=r.rope_deltas.map(i=>o+i);r.position_ids=Tt([a,a,a],0)}}return r}},hs=class extends mn{};var Va=class extends mn{image_grid_thw_name="image_grid_thw"},gs=class extends hs{image_grid_thw_name="image_grid_thw"};var Ha=class extends y{},Jw=class extends Ha{},Zw=class extends Ha{};var Xa=class extends y{},ex=class extends Xa{},tx=class extends Xa{};var Ka=class extends y{},rx=class extends Ka{},sx=class extends Ka{};var ws=class extends Va{},xs=class extends gs{};var nx=class extends ws{},Qa=class extends xs{};var hn=class extends ws{},ys=class extends hn{};var ox=class extends hn{},Ya=class extends ys{};var Ja=class extends y{},ax=class extends Ja{},ix=class extends Ja{async _call(e){return new G(await super._call(e))}};var Za=class extends y{},lx=class extends Za{},cx=class extends Za{async _call(e){return new Nc(await super._call(e))}},Nc=class extends or{};var Rr=class extends y{},ux=class extends Rr{},px=class extends Rr{async _call(e){return new we(await super._call(e))}},dx=class extends Rr{async _call(e){return new G(await super._call(e))}},fx=class extends Rr{async _call(e){return new he(await super._call(e))}},_x=class extends Rr{async _call(e){return new Me(await super._call(e))}};var Dr=class extends y{},mx=class extends Dr{},hx=class extends Dr{async _call(e){return new we(await super._call(e))}},gx=class extends Dr{async _call(e){return new G(await super._call(e))}},wx=class extends Dr{async _call(e){return new he(await super._call(e))}},xx=class extends Dr{async _call(e){return new Me(await super._call(e))}};var ei=class extends y{},yx=class extends ei{},bx=class extends ei{async _call(e){return new $c(await super._call(e))}},$c=class extends or{};var Rc=class extends Re{constructor({iou_scores:e,pred_masks:r}){super(),this.iou_scores=e,this.pred_masks=r}},Dc=class extends y{},vx=class extends Dc{async get_image_embeddings({pixel_values:e}){return await Vt(this,{pixel_values:e})}async forward(e){!e.image_embeddings||!e.image_positional_embeddings?e={...e,...await this.get_image_embeddings(e)}:e={...e},e.input_labels??=et(e.input_points.dims.slice(0,-1));let r={image_embeddings:e.image_embeddings,image_positional_embeddings:e.image_positional_embeddings};return e.input_points&&(r.input_points=e.input_points),e.input_labels&&(r.input_labels=e.input_labels),e.input_boxes&&(r.input_boxes=e.input_boxes),await de(this.sessions.prompt_encoder_mask_decoder,r)}async _call(e){return new Rc(await super._call(e))}};var Fc=class extends Re{constructor({iou_scores:e,pred_masks:r,object_score_logits:s}){super(),this.iou_scores=e,this.pred_masks=r,this.object_score_logits=s}},Bc=class extends y{},ti=class extends Bc{async get_image_embeddings({pixel_values:e}){return await Vt(this,{pixel_values:e})}async forward(e){let{num_feature_levels:r}=this.config.vision_config;if(Array.from({length:r},(a,i)=>`image_embeddings.${i}`).some(a=>!e[a])?e={...e,...await this.get_image_embeddings(e)}:e={...e},e.input_points){if(e.input_boxes&&e.input_boxes.dims[1]!==1)throw new Error("When both `input_points` and `input_boxes` are provided, the number of boxes per image must be 1.");let a=e.input_points.dims;e.input_labels??=et(a.slice(0,-1)),e.input_boxes??=We([a[0],0,4],0)}else if(e.input_boxes){let a=e.input_boxes.dims;e.input_labels=We([a[0],a[1],0],-1n),e.input_points=We([a[0],1,0,2],0)}else throw new Error("At least one of `input_points` or `input_boxes` must be provided.");let n=this.sessions.prompt_encoder_mask_decoder,o=Ye(e,n.inputNames);return await de(n,o)}async _call(e){return new Fc(await super._call(e))}},kx=class extends ti{},Ex=class extends ti{};var gn=class extends y{},Ax=class extends gn{},Mx=class extends gn{},Sx=class extends gn{};var wn=class extends y{},Tx=class extends wn{},Ox=class extends wn{},Ix=class extends wn{};var ri=class extends y{},Cx=class extends ri{},si=class extends ri{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"text_model"})}},Lx=class extends nr{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"vision_model"})}};var ni=class extends y{},Px=class extends ni{},zx=class extends ni{};var xn=class extends y{main_input_name="input_values";forward_params=["input_values"]},Nx=class extends xn{async encode(e){return await de(this.sessions.encoder_model,e)}async decode(e){return await de(this.sessions.decoder_model,e)}},oi=class extends xn{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"encoder_model"})}},ai=class extends xn{static async from_pretrained(e,r={}){return super.from_pretrained(e,{...r,model_file_name:r.model_file_name??"decoder_model"})}};var yn=class extends y{},$x=class extends yn{},Rx=class extends yn{},Dx=class extends yn{async generate_speech(e,r,{threshold:s=.5,minlenratio:n=0,maxlenratio:o=20,vocoder:a=null}={}){let i={input_ids:e},{encoder_outputs:l,encoder_attention_mask:c}=await Vt(this,i),p=l.dims[1]/this.config.reduction_factor,f=Math.floor(p*o),_=Math.floor(p*n),m=this.config.num_mel_bins,w=[],x=null,k=null,E=0;for(;;){++E;let S=f1(!!k),P;k?P=k.output_sequence_out:P=new $("float32",new Float32Array(m),[1,1,m]);let O={use_cache_branch:S,output_sequence:P,encoder_attention_mask:c,speaker_embeddings:r,encoder_hidden_states:l};this.addPastKeyValues(O,x),k=await de(this.sessions.decoder_model_merged,O),x=this.getPastKeyValues(k,x);let{prob:v,spectrum:j}=k;if(w.push(j),E>=_&&(Array.from(v.data).filter(H=>H>=s).length>0||E>=f))break}let A=ve(w),{waveform:T}=await de(a.sessions.model,{spectrogram:A});return{spectrogram:A,waveform:T}}},Fx=class extends y{main_input_name="spectrogram"};var bs=class extends y{},Bx=class extends bs{},Ux=class extends bs{async _call(e){return new we(await super._call(e))}},jx=class extends bs{async _call(e){return new G(await super._call(e))}},Gx=class extends bs{async _call(e){return new Me(await super._call(e))}};var ii=class extends y{},qx=class extends ii{},Wx=class extends ii{};var li=class extends y{},Vx=class extends li{},Hx=class extends li{};var Uc=class extends y{},Xx=class extends Uc{};var jc=class extends y{},ci=class extends jc{async generate_speech({input_ids:e,attention_mask:r,style:s,num_inference_steps:n=5,speed:o=1.05}){let{sampling_rate:a,chunk_compress_factor:i,base_chunk_size:l,latent_dim:c}=this.config,{last_hidden_state:p,durations:f}=await de(this.sessions.text_encoder,{input_ids:e,attention_mask:r,style:s}),_=f.div(o).mul_(a),m=l*i,w=_.data,x=Int32Array.from(w,B=>Math.ceil(B/m)),k=Math.max(...x),E=e.dims[0],A=new BigInt64Array(E*k);for(let B=0;B<E;++B)A.fill(1n,B*k,B*k+x[B]);let T=new $("int64",A,[E,k]),S=c*i,P=S*k,O=Wb([E,S,k]),v=O.data;for(let B=0;B<E;++B)if(x[B]!==k)for(let V=0;V<S;++V)v.fill(0,B*P+V*k+x[B],B*P+(V+1)*k);let j=We([E],n);for(let B=0;B<n;++B){let V=We([E],B);({denoised_latents:O}=await de(this.sessions.latent_denoiser,{style:s,noisy_latents:O,latent_mask:T,encoder_outputs:p,attention_mask:r,timestep:V,num_inference_steps:j}))}let{waveform:H}=await de(this.sessions.voice_decoder,{latents:O});return{waveform:H,durations:_}}};var bn=class extends y{},Kx=class extends bn{},Qx=class extends bn{async _call(e){return new G(await super._call(e))}},Yx=class extends bn{};var ui=class extends y{},Jx=class extends ui{},Zx=class extends ui{};var pi=class extends y{forward_params=["input_ids","attention_mask","encoder_outputs","decoder_input_ids","decoder_attention_mask","past_key_values"]},ey=class extends pi{},ty=class extends pi{};var di=class extends y{},ry=class extends di{},sy=class extends di{async _call(e){return new Gc(await super._call(e))}},Gc=class extends an{};var qc=class extends y{},ny=class extends qc{};var vn=class extends y{},oy=class extends vn{},ay=class extends vn{async _call(e){return new kt(await super._call(e))}},iy=class extends vn{async _call(e){return new G(await super._call(e))}};var vs=class extends y{},ly=class extends vs{},cy=class extends vs{async _call(e){return new kt(await super._call(e))}},uy=class extends vs{async _call(e){return new G(await super._call(e))}},py=class extends vs{async _call(e){return new he(await super._call(e))}};var fi=class extends y{},dy=class extends fi{},fy=class extends fi{};var _y=class extends y{main_input_name="pixel_values";forward_params=["pixel_values","decoder_input_ids","encoder_hidden_states","past_key_values"]};var _i=class extends y{},my=class extends _i{},hy=class extends _i{async _call(e){return new G(await super._call(e))}};var Wc=class extends y{},gy=class extends Wc{};var mi=class extends y{},wy=class extends mi{},xy=class extends mi{async _call(e){return new G(await super._call(e))}};var Vc=class extends y{},yy=class extends Vc{async _call(e){return new Uf(await super._call(e))}};var Hc=class extends y{},by=class extends Hc{};var Xc=class extends Re{constructor({waveform:e,spectrogram:r}){super(),this.waveform=e,this.spectrogram=r}},Kc=class extends y{},vy=class extends Kc{async _call(e){return new Xc(await super._call(e))}};var ky=class extends ds{};var H2=2,qz=1,m1=new WeakMap;function Wz(t,e){let{text_config:r,audio_config:s}=t.config,n=t.sessions.audio_encoder,{num_mel_bins:o,hidden_size:a}=s,i=o+a,l=new ao,c=n?.config?.kv_cache_dtype??"float32",p=c==="float16"?Ar.float16:Ar.float32,f=Qs(s,{batch_size:1});for(let w in f){let x=f[w].reduce((k,E)=>k*E,1);l[w]=new $(c,new p(x),f[w])}let _=new $(c,new p(i*H2),[1,i,H2]),m=e[Symbol.asyncIterator]?.()??e[Symbol.iterator]?.();if(!m)throw new Error("input_features must be iterable or async iterable");return{encoder_session:n,enc_kv_cache:l,enc_padding_cache:_,enc_past_seq_len:0,audio_embed_queue:[],audio_embed_total_tokens:0,audio_queue_offset:0,audio_consumed:0,stream_exhausted:!1,chunks_iter:m,text_hidden_size:r.hidden_size}}async function Vz(t,e){let r=e.dims[2],s=Math.floor((qz+r-3)/2)+1,n=new $("int64",BigInt64Array.from({length:s},(p,f)=>BigInt(t.enc_past_seq_len+f)),[1,s]),o=t.enc_past_seq_len+s,a=et([1,o]),{audio_embeds:i,present_padding_cache:l,...c}=await de(t.encoder_session,{input_features:e,attention_mask:a,position_ids:n,past_padding_cache:t.enc_padding_cache,...t.enc_kv_cache});t.enc_padding_cache.location==="gpu-buffer"&&t.enc_padding_cache.dispose(),t.enc_padding_cache=l;for(let p in c)if(p.startsWith("present.")){let f=p.replace("present","past_key_values"),_=t.enc_kv_cache[f];_?.location==="gpu-buffer"&&_.dispose(),t.enc_kv_cache[f]=c[p]}return t.enc_past_seq_len=o,i}async function Hz(t,e){for(;t.audio_embed_total_tokens<e&&!t.stream_exhausted;){let r=await t.chunks_iter.next();if(r.done){t.stream_exhausted=!0;break}let s=await Vz(t,r.value);t.audio_embed_queue.push({data:s.data,tokens:s.dims[1]}),t.audio_embed_total_tokens+=s.dims[1]}}function Xz(t,e,r){if(t.audio_embed_queue.length===0)return;let s=e.data,n=0,o=r;for(;o>0&&t.audio_embed_queue.length>0;){let a=t.audio_embed_queue[0],i=a.tokens-t.audio_queue_offset,l=Math.min(o,i),c=t.audio_queue_offset*t.text_hidden_size;for(let p=0;p<l*t.text_hidden_size;++p)s[n*t.text_hidden_size+p]+=a.data[c+p];n+=l,o-=l,t.audio_queue_offset+=l,t.audio_queue_offset>=a.tokens&&(t.audio_embed_queue.shift(),t.audio_queue_offset=0)}t.audio_consumed+=r-o}var h1=class extends Sr{constructor(e){super(),this._s=e}_call(e){let r=this._s.stream_exhausted&&this._s.audio_embed_queue.length===0;return e.map(()=>r)}},Qc=class extends y{forward_params=["input_ids","attention_mask","position_ids","past_key_values"]},hi=class extends Qc{async forward({input_ids:e,past_key_values:r,...s}){let n=e.dims[1],o=m1.get(this);o&&await Hz(o,o.audio_consumed+n);let{inputs_embeds:a}=await de(this.sessions.embed_tokens,{input_ids:e});o&&Xz(o,a,n);let i={inputs_embeds:a,...s};this.addPastKeyValues(i,r);let l=this.sessions.decoder_model_merged,c=Ye(i,l.inputNames);return await de(l,c)}async generate({input_features:e,stopping_criteria:r,...s}){if(!e)throw new Error("input_features (generator/iterable) must be provided");let n=Wz(this,e);m1.set(this,n);let o=new Js;o.push(new h1(n)),r&&o.extend(r);try{return await super.generate({...s,stopping_criteria:o})}finally{n.enc_kv_cache.dispose(),m1.delete(this)}}};var kn=class extends y{},Ey=class extends kn{},Ay=class extends kn{async _call(e){return new kt(await super._call(e))}},My=class extends kn{async _call(e){return new G(await super._call(e))}};var Yc=class extends Re{constructor({logits:e,embeddings:r}){super(),this.logits=e,this.embeddings=r}},Fr=class extends y{},Sy=class extends Fr{},Ty=class extends Fr{async _call(e){return new kt(await super._call(e))}},Oy=class extends Fr{async _call(e){return new G(await super._call(e))}},Iy=class extends Fr{async _call(e){return new Yc(await super._call(e))}},Cy=class extends Fr{async _call(e){return new he(await super._call(e))}};var Jc=class extends y{},Ly=class extends Jc{};var Py=class extends oo{return_timestamps=null;return_token_timestamps=null;num_frames=null;alignment_heads=null;task=null;language=null;no_timestamps_token_id=null;prompt_ids=null;is_multilingual=null;lang_to_id=null;task_to_id=null;max_initial_timestamp_index=1};var gi=class extends y{requires_attention_mask=!1;main_input_name="input_features";forward_params=["input_features","attention_mask","decoder_input_ids","decoder_attention_mask","past_key_values"]},zy=class extends gi{},Zc=class extends gi{_prepare_generation_config(e,r){return super._prepare_generation_config(e,r,Py)}_retrieve_init_tokens(e){let r=[e.decoder_start_token_id],s=e.language,n=e.task;if(e.is_multilingual){s||(Z.warn("No language specified - defaulting to English (en)."),s="en");let a=`<|${x2(s)}|>`;r.push(e.lang_to_id[a]),r.push(e.task_to_id[n??"transcribe"])}else if(s||n)throw new Error("Cannot specify `task` or `language` for an English-only model. If the model is intended to be multilingual, pass `is_multilingual=true` to generate, or update the generation config.");return!e.return_timestamps&&e.no_timestamps_token_id&&r.at(-1)!==e.no_timestamps_token_id?r.push(e.no_timestamps_token_id):e.return_timestamps&&r.at(-1)===e.no_timestamps_token_id&&(Z.warn("<|notimestamps|> prompt token is removed from generation_config since `return_timestamps` is set to `true`."),r.pop()),r.filter(o=>o!=null)}async generate({inputs:e=null,generation_config:r=null,logits_processor:s=null,stopping_criteria:n=null,...o}){r=this._prepare_generation_config(r,o);let a=o.decoder_input_ids??this._retrieve_init_tokens(r);if(r.return_timestamps&&(s??=new cs,s.push(new Xl(r,a))),r.begin_suppress_tokens&&(s??=new cs,s.push(new Ys(r.begin_suppress_tokens,a.length))),r.return_token_timestamps){if(!r.alignment_heads)throw new Error("Model generation config has no `alignment_heads`, token-level timestamps not available. See https://gist.github.com/hollance/42e32852f24243b748ae6bc1f985b13a on how to add this property to the generation config.");r.task==="translate"&&Z.warn("Token-level timestamps may not be reliable for task 'translate'."),r.output_attentions=!0,r.return_dict_in_generate=!0}let i=await super.generate({inputs:e,generation_config:r,logits_processor:s,decoder_input_ids:a,...o});return r.return_token_timestamps&&(i.token_timestamps=this._extract_token_timestamps(i,r.alignment_heads,r.num_frames)),i}_extract_token_timestamps(e,r,s=null,n=.02){if(!e.cross_attentions)throw new Error("Model outputs must contain cross attentions to extract timestamps. This is most likely because the model was not exported with `output_attentions=True`.");s==null&&Z.warn("`num_frames` has not been set, meaning the entire audio will be analyzed. This may lead to inaccurate token-level timestamps for short audios (< 30 seconds).");let o=this.config.median_filter_width;o===void 0&&(Z.warn("Model config has no `median_filter_width`, using default value of 7."),o=7);let a=e.cross_attentions,i=Array.from({length:this.config.decoder_layers},(x,k)=>ve(a.map(E=>E[k]),2)),l=Tt(r.map(([x,k])=>{if(x>=i.length)throw new Error(`Layer index ${x} is out of bounds for cross attentions (length ${i.length}).`);return s?i[x].slice(null,k,null,[0,s]):i[x].slice(null,k)})).transpose(1,0,2,3),[c,p]=dp(l,-2,0,!0),f=l.clone();for(let x=0;x<f.dims[0];++x){let k=f[x];for(let E=0;E<k.dims[0];++E){let A=k[E],T=c[x][E][0].data,S=p[x][E][0].data;for(let P=0;P<A.dims[0];++P){let O=A[P].data;for(let v=0;v<O.length;++v)O[v]=(O[v]-S[v])/T[v];O.set(PE(O,o))}}}let _=[kl(f,1)],m=e.sequences.dims,w=new $("float32",new Float32Array(m[0]*m[1]),m);for(let x=0;x<m[0];++x){let k=_[x].neg().squeeze_(0),[E,A]=NE(k.tolist()),T=Array.from({length:E.length-1},(O,v)=>E[v+1]-E[v]),S=wt([1],T).map(O=>!!O),P=[];for(let O=0;O<S.length;++O)S[O]&&P.push(A[O]*n);w[x].data.set(P,1)}return w}},Ny=class extends Zc{};var Br=class extends y{},$y=class extends Br{},Ry=class extends Br{async _call(e){return new we(await super._call(e))}},Dy=class extends Br{async _call(e){return new G(await super._call(e))}},Fy=class extends Br{async _call(e){return new he(await super._call(e))}},By=class extends Br{async _call(e){return new Me(await super._call(e))}};var Ur=class extends y{},Uy=class extends Ur{},jy=class extends Ur{async _call(e){return new we(await super._call(e))}},Gy=class extends Ur{async _call(e){return new G(await super._call(e))}},qy=class extends Ur{async _call(e){return new he(await super._call(e))}},Wy=class extends Ur{async _call(e){return new Me(await super._call(e))}};var wi=class extends y{},Vy=class extends wi{},Hy=class extends wi{async _call(e){return new eu(await super._call(e))}},eu=class extends Re{constructor({logits:e,pred_boxes:r}){super(),this.logits=e,this.pred_boxes=r}};var xi=class extends y{},Xy=class extends xi{},Ky=class extends xi{};var Kz=new Map([["bert","BertModel"],["neobert","NeoBertModel"],["modernbert","ModernBertModel"],["nomic_bert","NomicBertModel"],["roformer","RoFormerModel"],["electra","ElectraModel"],["esm","EsmModel"],["convbert","ConvBertModel"],["camembert","CamembertModel"],["deberta","DebertaModel"],["deberta-v2","DebertaV2Model"],["mpnet","MPNetModel"],["albert","AlbertModel"],["distilbert","DistilBertModel"],["roberta","RobertaModel"],["xlm","XLMModel"],["xlm-roberta","XLMRobertaModel"],["clap","ClapModel"],["clip","CLIPModel"],["clipseg","CLIPSegModel"],["chinese_clip","ChineseCLIPModel"],["siglip","SiglipModel"],["jina_clip","JinaCLIPModel"],["mobilebert","MobileBertModel"],["squeezebert","SqueezeBertModel"],["wav2vec2","Wav2Vec2Model"],["wav2vec2-bert","Wav2Vec2BertModel"],["unispeech","UniSpeechModel"],["unispeech-sat","UniSpeechSatModel"],["hubert","HubertModel"],["wavlm","WavLMModel"],["audio-spectrogram-transformer","ASTModel"],["vits","VitsModel"],["pyannote","PyAnnoteModel"],["wespeaker-resnet","WeSpeakerResNetModel"],["detr","DetrModel"],["rt_detr","RTDetrModel"],["rt_detr_v2","RTDetrV2Model"],["rf_detr","RFDetrModel"],["d_fine","DFineModel"],["table-transformer","TableTransformerModel"],["vit","ViTModel"],["ijepa","IJepaModel"],["pvt","PvtModel"],["vit_msn","ViTMSNModel"],["vit_mae","ViTMAEModel"],["groupvit","GroupViTModel"],["fastvit","FastViTModel"],["mobilevit","MobileViTModel"],["mobilevitv2","MobileViTV2Model"],["owlvit","OwlViTModel"],["owlv2","Owlv2Model"],["beit","BeitModel"],["deit","DeiTModel"],["hiera","HieraModel"],["convnext","ConvNextModel"],["convnextv2","ConvNextV2Model"],["dinov2","Dinov2Model"],["dinov2_with_registers","Dinov2WithRegistersModel"],["dinov3_vit","DINOv3ViTModel"],["dinov3_convnext","DINOv3ConvNextModel"],["resnet","ResNetModel"],["swin","SwinModel"],["swin2sr","Swin2SRModel"],["donut-swin","DonutSwinModel"],["yolos","YolosModel"],["dpt","DPTModel"],["glpn","GLPNModel"],["hifigan","SpeechT5HifiGan"],["efficientnet","EfficientNetModel"],["decision_transformer","DecisionTransformerModel"],["patchtst","PatchTSTModel"],["patchtsmixer","PatchTSMixerModel"],["mobilenet_v1","MobileNetV1Model"],["mobilenet_v2","MobileNetV2Model"],["mobilenet_v3","MobileNetV3Model"],["mobilenet_v4","MobileNetV4Model"],["maskformer","MaskFormerModel"],["mgp-str","MgpstrForSceneTextRecognition"],["style_text_to_speech_2","StyleTextToSpeech2Model"]]),Qz=new Map([["t5","T5Model"],["longt5","LongT5Model"],["mt5","MT5Model"],["bart","BartModel"],["mbart","MBartModel"],["marian","MarianModel"],["whisper","WhisperModel"],["m2m_100","M2M100Model"],["blenderbot","BlenderbotModel"],["blenderbot-small","BlenderbotSmallModel"]]),Yz=new Map([["mimi","MimiModel"],["dac","DacModel"],["snac","SnacModel"]]),Jz=new Map([["bloom","BloomModel"],["jais","JAISModel"],["gpt2","GPT2Model"],["gpt_oss","GptOssModel"],["gptj","GPTJModel"],["gpt_bigcode","GPTBigCodeModel"],["gpt_neo","GPTNeoModel"],["gpt_neox","GPTNeoXModel"],["codegen","CodeGenModel"],["llama","LlamaModel"],["apertus","ApertusModel"],["nanochat","NanoChatModel"],["arcee","ArceeModel"],["afmoe","AfmoeModel"],["lfm2","Lfm2Model"],["lfm2_moe","Lfm2MoeModel"],["smollm3","SmolLM3Model"],["exaone","ExaoneModel"],["olmo","OlmoModel"],["olmo2","Olmo2Model"],["olmo3","Olmo3Model"],["olmo_hybrid","OlmoHybridModel"],["mobilellm","MobileLLMModel"],["granite","GraniteModel"],["granitemoehybrid","GraniteMoeHybridModel"],["cohere","CohereModel"],["cohere2","Cohere2Model"],["gemma","GemmaModel"],["gemma2","Gemma2Model"],["vaultgemma","VaultGemmaModel"],["gemma3_text","Gemma3Model"],["helium","HeliumModel"],["glm","GlmModel"],["openelm","OpenELMModel"],["qwen2","Qwen2Model"],["qwen2_moe","Qwen2MoeModel"],["qwen3","Qwen3Model"],["qwen3_moe","Qwen3MoeModel"],["qwen3_next","Qwen3NextModel"],["phi","PhiModel"],["phi3","Phi3Model"],["mpt","MptModel"],["opt","OPTModel"],["mistral","MistralModel"],["ministral","MinistralModel"],["ministral3","Ministral3Model"],["ernie4_5","Ernie4_5ForCausalLM"],["starcoder2","Starcoder2Model"],["falcon","FalconModel"],["falcon_h1","FalconH1Model"],["stablelm","StableLmModel"],["modernbert-decoder","ModernBertDecoderModel"],["hunyuan_v1_dense","HunYuanDenseV1Model"],["youtu","YoutuModel"]]),X2=new Map([["speecht5","SpeechT5ForSpeechToText"],["whisper","WhisperForConditionalGeneration"],["lite-whisper","LiteWhisperForConditionalGeneration"],["moonshine","MoonshineForConditionalGeneration"]]),K2=new Map([["speecht5","SpeechT5ForTextToSpeech"]]),Q2=new Map([["vits","VitsModel"],["musicgen","MusicgenForConditionalGeneration"],["supertonic","SupertonicForConditionalGeneration"]]),Y2=new Map([["bert","BertForSequenceClassification"],["neobert","NeoBertForSequenceClassification"],["modernbert","ModernBertForSequenceClassification"],["roformer","RoFormerForSequenceClassification"],["electra","ElectraForSequenceClassification"],["esm","EsmForSequenceClassification"],["convbert","ConvBertForSequenceClassification"],["camembert","CamembertForSequenceClassification"],["deberta","DebertaForSequenceClassification"],["deberta-v2","DebertaV2ForSequenceClassification"],["mpnet","MPNetForSequenceClassification"],["albert","AlbertForSequenceClassification"],["distilbert","DistilBertForSequenceClassification"],["roberta","RobertaForSequenceClassification"],["xlm","XLMForSequenceClassification"],["xlm-roberta","XLMRobertaForSequenceClassification"],["bart","BartForSequenceClassification"],["mbart","MBartForSequenceClassification"],["mobilebert","MobileBertForSequenceClassification"],["squeezebert","SqueezeBertForSequenceClassification"]]),J2=new Map([["bert","BertForTokenClassification"],["neobert","NeoBertForTokenClassification"],["modernbert","ModernBertForTokenClassification"],["roformer","RoFormerForTokenClassification"],["electra","ElectraForTokenClassification"],["esm","EsmForTokenClassification"],["convbert","ConvBertForTokenClassification"],["camembert","CamembertForTokenClassification"],["deberta","DebertaForTokenClassification"],["deberta-v2","DebertaV2ForTokenClassification"],["mpnet","MPNetForTokenClassification"],["distilbert","DistilBertForTokenClassification"],["roberta","RobertaForTokenClassification"],["xlm","XLMForTokenClassification"],["xlm-roberta","XLMRobertaForTokenClassification"]]),Z2=new Map([["t5","T5ForConditionalGeneration"],["longt5","LongT5ForConditionalGeneration"],["mt5","MT5ForConditionalGeneration"],["bart","BartForConditionalGeneration"],["mbart","MBartForConditionalGeneration"],["marian","MarianMTModel"],["m2m_100","M2M100ForConditionalGeneration"],["blenderbot","BlenderbotForConditionalGeneration"],["blenderbot-small","BlenderbotSmallForConditionalGeneration"]]),eM=new Map([["bloom","BloomForCausalLM"],["gpt2","GPT2LMHeadModel"],["gpt_oss","GptOssForCausalLM"],["jais","JAISLMHeadModel"],["gptj","GPTJForCausalLM"],["gpt_bigcode","GPTBigCodeForCausalLM"],["gpt_neo","GPTNeoForCausalLM"],["gpt_neox","GPTNeoXForCausalLM"],["codegen","CodeGenForCausalLM"],["llama","LlamaForCausalLM"],["nanochat","NanoChatForCausalLM"],["apertus","ApertusForCausalLM"],["llama4_text","Llama4ForCausalLM"],["arcee","ArceeForCausalLM"],["afmoe","AfmoeForCausalLM"],["lfm2","Lfm2ForCausalLM"],["lfm2_moe","Lfm2MoeForCausalLM"],["smollm3","SmolLM3ForCausalLM"],["exaone","ExaoneForCausalLM"],["olmo","OlmoForCausalLM"],["olmo2","Olmo2ForCausalLM"],["olmo3","Olmo3ForCausalLM"],["olmo_hybrid","OlmoHybridForCausalLM"],["mobilellm","MobileLLMForCausalLM"],["granite","GraniteForCausalLM"],["granitemoehybrid","GraniteMoeHybridForCausalLM"],["cohere","CohereForCausalLM"],["cohere2","Cohere2ForCausalLM"],["gemma","GemmaForCausalLM"],["gemma2","Gemma2ForCausalLM"],["vaultgemma","VaultGemmaForCausalLM"],["gemma3_text","Gemma3ForCausalLM"],["gemma3","Gemma3ForCausalLM"],["helium","HeliumForCausalLM"],["glm","GlmForCausalLM"],["openelm","OpenELMForCausalLM"],["qwen2","Qwen2ForCausalLM"],["qwen2_moe","Qwen2MoeForCausalLM"],["qwen3","Qwen3ForCausalLM"],["qwen3_moe","Qwen3MoeForCausalLM"],["qwen3_next","Qwen3NextForCausalLM"],["qwen2_vl","Qwen2VLForCausalLM"],["qwen2_5_vl","Qwen2_5_VLForCausalLM"],["qwen3_vl","Qwen3VLForCausalLM"],["qwen3_vl_moe","Qwen3VLMoeForCausalLM"],["qwen3_5","Qwen3_5ForCausalLM"],["qwen3_5_moe","Qwen3_5MoeForCausalLM"],["gemma3n","Gemma3nForCausalLM"],["phi","PhiForCausalLM"],["phi3","Phi3ForCausalLM"],["mpt","MptForCausalLM"],["opt","OPTForCausalLM"],["mbart","MBartForCausalLM"],["mistral","MistralForCausalLM"],["ministral","MinistralForCausalLM"],["ministral3","Ministral3ForCausalLM"],["ernie4_5","Ernie4_5ForCausalLM"],["starcoder2","Starcoder2ForCausalLM"],["falcon","FalconForCausalLM"],["falcon_h1","FalconH1ForCausalLM"],["trocr","TrOCRForCausalLM"],["stablelm","StableLmForCausalLM"],["modernbert-decoder","ModernBertDecoderForCausalLM"],["hunyuan_v1_dense","HunYuanDenseV1ForCausalLM"],["youtu","YoutuForCausalLM"],["phi3_v","Phi3VForCausalLM"]]),Zz=new Map([["multi_modality","MultiModalityCausalLM"]]),tM=new Map([["bert","BertForMaskedLM"],["neobert","NeoBertForMaskedLM"],["modernbert","ModernBertForMaskedLM"],["roformer","RoFormerForMaskedLM"],["electra","ElectraForMaskedLM"],["esm","EsmForMaskedLM"],["convbert","ConvBertForMaskedLM"],["camembert","CamembertForMaskedLM"],["deberta","DebertaForMaskedLM"],["deberta-v2","DebertaV2ForMaskedLM"],["mpnet","MPNetForMaskedLM"],["albert","AlbertForMaskedLM"],["distilbert","DistilBertForMaskedLM"],["roberta","RobertaForMaskedLM"],["xlm","XLMWithLMHeadModel"],["xlm-roberta","XLMRobertaForMaskedLM"],["mobilebert","MobileBertForMaskedLM"],["squeezebert","SqueezeBertForMaskedLM"]]),rM=new Map([["bert","BertForQuestionAnswering"],["neobert","NeoBertForQuestionAnswering"],["roformer","RoFormerForQuestionAnswering"],["electra","ElectraForQuestionAnswering"],["convbert","ConvBertForQuestionAnswering"],["camembert","CamembertForQuestionAnswering"],["deberta","DebertaForQuestionAnswering"],["deberta-v2","DebertaV2ForQuestionAnswering"],["mpnet","MPNetForQuestionAnswering"],["albert","AlbertForQuestionAnswering"],["distilbert","DistilBertForQuestionAnswering"],["roberta","RobertaForQuestionAnswering"],["xlm","XLMForQuestionAnswering"],["xlm-roberta","XLMRobertaForQuestionAnswering"],["mobilebert","MobileBertForQuestionAnswering"],["squeezebert","SqueezeBertForQuestionAnswering"]]),sM=new Map([["vision-encoder-decoder","VisionEncoderDecoderModel"],["idefics3","Idefics3ForConditionalGeneration"],["smolvlm","SmolVLMForConditionalGeneration"]]),nM=new Map([["llava","LlavaForConditionalGeneration"],["llava_onevision","LlavaOnevisionForConditionalGeneration"],["moondream1","Moondream1ForConditionalGeneration"],["florence2","Florence2ForConditionalGeneration"],["qwen2_vl","Qwen2VLForConditionalGeneration"],["qwen2_5_vl","Qwen2_5_VLForConditionalGeneration"],["qwen3_vl","Qwen3VLForConditionalGeneration"],["qwen3_vl_moe","Qwen3VLMoeForConditionalGeneration"],["qwen3_5","Qwen3_5ForConditionalGeneration"],["qwen3_5_moe","Qwen3_5MoeForConditionalGeneration"],["lfm2_vl","Lfm2VlForConditionalGeneration"],["idefics3","Idefics3ForConditionalGeneration"],["smolvlm","SmolVLMForConditionalGeneration"],["paligemma","PaliGemmaForConditionalGeneration"],["llava_qwen2","LlavaQwen2ForCausalLM"],["gemma3n","Gemma3nForConditionalGeneration"],["mistral3","Mistral3ForConditionalGeneration"]]),oM=new Map([["granite_speech","GraniteSpeechForConditionalGeneration"],["ultravox","UltravoxModel"],["voxtral","VoxtralForConditionalGeneration"],["voxtral_realtime","VoxtralRealtimeForConditionalGeneration"]]),eN=new Map([["vision-encoder-decoder","VisionEncoderDecoderModel"]]),aM=new Map([["vit","ViTForImageClassification"],["ijepa","IJepaForImageClassification"],["pvt","PvtForImageClassification"],["vit_msn","ViTMSNForImageClassification"],["fastvit","FastViTForImageClassification"],["mobilevit","MobileViTForImageClassification"],["mobilevitv2","MobileViTV2ForImageClassification"],["beit","BeitForImageClassification"],["deit","DeiTForImageClassification"],["hiera","HieraForImageClassification"],["convnext","ConvNextForImageClassification"],["convnextv2","ConvNextV2ForImageClassification"],["dinov2","Dinov2ForImageClassification"],["dinov2_with_registers","Dinov2WithRegistersForImageClassification"],["resnet","ResNetForImageClassification"],["swin","SwinForImageClassification"],["segformer","SegformerForImageClassification"],["efficientnet","EfficientNetForImageClassification"],["mobilenet_v1","MobileNetV1ForImageClassification"],["mobilenet_v2","MobileNetV2ForImageClassification"],["mobilenet_v3","MobileNetV3ForImageClassification"],["mobilenet_v4","MobileNetV4ForImageClassification"]]),iM=new Map([["detr","DetrForObjectDetection"],["rt_detr","RTDetrForObjectDetection"],["rt_detr_v2","RTDetrV2ForObjectDetection"],["rf_detr","RFDetrForObjectDetection"],["d_fine","DFineForObjectDetection"],["table-transformer","TableTransformerForObjectDetection"],["yolos","YolosForObjectDetection"]]),lM=new Map([["owlvit","OwlViTForObjectDetection"],["owlv2","Owlv2ForObjectDetection"],["grounding-dino","GroundingDinoForObjectDetection"]]),yi=new Map([["detr","DetrForSegmentation"],["clipseg","CLIPSegForImageSegmentation"]]),cM=new Map([["segformer","SegformerForSemanticSegmentation"],["sapiens","SapiensForSemanticSegmentation"],["swin","SwinForSemanticSegmentation"],["mobilenet_v1","MobileNetV1ForSemanticSegmentation"],["mobilenet_v2","MobileNetV2ForSemanticSegmentation"],["mobilenet_v3","MobileNetV3ForSemanticSegmentation"],["mobilenet_v4","MobileNetV4ForSemanticSegmentation"]]),uM=new Map([["detr","DetrForSegmentation"],["maskformer","MaskFormerForInstanceSegmentation"]]),pM=new Map([["sam","SamModel"],["sam2","Sam2Model"],["edgetam","EdgeTamModel"],["sam3_tracker","Sam3TrackerModel"]]),dM=new Map([["wav2vec2","Wav2Vec2ForCTC"],["wav2vec2-bert","Wav2Vec2BertForCTC"],["unispeech","UniSpeechForCTC"],["unispeech-sat","UniSpeechSatForCTC"],["wavlm","WavLMForCTC"],["hubert","HubertForCTC"],["parakeet_ctc","ParakeetForCTC"]]),fM=new Map([["wav2vec2","Wav2Vec2ForSequenceClassification"],["wav2vec2-bert","Wav2Vec2BertForSequenceClassification"],["unispeech","UniSpeechForSequenceClassification"],["unispeech-sat","UniSpeechSatForSequenceClassification"],["wavlm","WavLMForSequenceClassification"],["hubert","HubertForSequenceClassification"],["audio-spectrogram-transformer","ASTForAudioClassification"]]),_M=new Map([["wavlm","WavLMForXVector"]]),mM=new Map([["unispeech-sat","UniSpeechSatForAudioFrameClassification"],["wavlm","WavLMForAudioFrameClassification"],["wav2vec2","Wav2Vec2ForAudioFrameClassification"],["pyannote","PyAnnoteForAudioFrameClassification"]]),hM=new Map([["vitmatte","VitMatteForImageMatting"]]),tN=new Map([["patchtst","PatchTSTForPrediction"],["patchtsmixer","PatchTSMixerForPrediction"]]),gM=new Map([["swin2sr","Swin2SRForImageSuperResolution"]]),wM=new Map([["dpt","DPTForDepthEstimation"],["depth_anything","DepthAnythingForDepthEstimation"],["glpn","GLPNForDepthEstimation"],["sapiens","SapiensForDepthEstimation"],["depth_pro","DepthProForDepthEstimation"],["metric3d","Metric3DForDepthEstimation"],["metric3dv2","Metric3Dv2ForDepthEstimation"]]),xM=new Map([["sapiens","SapiensForNormalEstimation"]]),yM=new Map([["vitpose","VitPoseForPoseEstimation"]]),bM=new Map([["clip","CLIPVisionModelWithProjection"],["siglip","SiglipVisionModel"],["jina_clip","JinaCLIPVisionModel"]]),g1=[[Kz,K.EncoderOnly],[Qz,K.EncoderDecoder],[Jz,K.DecoderOnlyWithoutHead],[Yz,K.AutoEncoder],[Y2,K.EncoderOnly],[J2,K.EncoderOnly],[Z2,K.Seq2Seq],[X2,K.Seq2Seq],[eM,K.DecoderOnly],[Zz,K.MultiModality],[tM,K.EncoderOnly],[rM,K.EncoderOnly],[sM,K.Vision2Seq],[nM,K.ImageTextToText],[oM,K.AudioTextToText],[aM,K.EncoderOnly],[yi,K.EncoderOnly],[uM,K.EncoderOnly],[cM,K.EncoderOnly],[hM,K.EncoderOnly],[tN,K.EncoderOnly],[gM,K.EncoderOnly],[wM,K.EncoderOnly],[xM,K.EncoderOnly],[yM,K.EncoderOnly],[iM,K.EncoderOnly],[lM,K.EncoderOnly],[pM,K.MaskGeneration],[dM,K.EncoderOnly],[fM,K.EncoderOnly],[K2,K.Seq2Seq],[Q2,K.EncoderOnly],[_M,K.EncoderOnly],[mM,K.EncoderOnly],[bM,K.EncoderOnly]];for(let[t,e]of g1)for(let r of t.values()){sr.set(r,e);let s=tu[r];tn.set(s,r),Gf.set(r,s)}var rN=[["MusicgenForConditionalGeneration",Sa,K.Musicgen],["Phi3VForCausalLM",Ua,K.Phi3V],["CLIPTextModelWithProjection",vo,K.EncoderOnly],["SiglipTextModel",si,K.EncoderOnly],["JinaCLIPTextModel",la,K.EncoderOnly],["ClapTextModelWithProjection",yo,K.EncoderOnly],["ClapAudioModelWithProjection",bo,K.EncoderOnly],["DacEncoderModel",Co,K.EncoderOnly],["DacDecoderModel",Lo,K.EncoderOnly],["MimiEncoderModel",ha,K.EncoderOnly],["MimiDecoderModel",ga,K.EncoderOnly],["SnacEncoderModel",oi,K.EncoderOnly],["SnacDecoderModel",ai,K.EncoderOnly],["Gemma3nForConditionalGeneration",ln,K.ImageAudioTextToText],["SupertonicForConditionalGeneration",ci,K.Supertonic],["ChatterboxModel",xo,K.Chatterbox],["Qwen2VLForCausalLM",hs,K.MultimodalLanguageModelOnly],["Qwen2_5_VLForCausalLM",gs,K.MultimodalLanguageModelOnly],["Qwen3VLForCausalLM",xs,K.MultimodalLanguageModelOnly],["Qwen3VLMoeForCausalLM",Qa,K.MultimodalLanguageModelOnly],["Qwen3_5ForCausalLM",ys,K.MultimodalLanguageModelOnly],["Qwen3_5MoeForCausalLM",Ya,K.MultimodalLanguageModelOnly],["Gemma3nForCausalLM",Vo,K.MultimodalLanguageModelOnly],["VoxtralRealtimeForConditionalGeneration",hi,K.VoxtralRealtime]];for(let[t,e,r]of rN)sr.set(t,r),tn.set(e,t),Gf.set(t,e);var vM=new Map([["modnet",yi],["birefnet",yi],["isnet",yi],["ben",yi]]);for(let[t,e]of vM.entries())e.set(t,"PreTrainedModel"),sr.set(t,K.EncoderOnly),Gf.set(t,y);var kM=new Set(vM.keys());sr.set("PreTrainedModel",K.EncoderOnly);tn.set(y,"PreTrainedModel");var Ne={MODEL_FOR_SEQUENCE_CLASSIFICATION_MAPPING_NAMES:Y2,MODEL_FOR_TOKEN_CLASSIFICATION_MAPPING_NAMES:J2,MODEL_FOR_TEXT_TO_SPECTROGRAM_MAPPING_NAMES:K2,MODEL_FOR_TEXT_TO_WAVEFORM_MAPPING_NAMES:Q2,MODEL_FOR_MASKED_LM_MAPPING_NAMES:tM,MODEL_FOR_QUESTION_ANSWERING_MAPPING_NAMES:rM,MODEL_FOR_IMAGE_CLASSIFICATION_MAPPING_NAMES:aM,MODEL_FOR_IMAGE_SEGMENTATION_MAPPING_NAMES:yi,MODEL_FOR_SEMANTIC_SEGMENTATION_MAPPING_NAMES:cM,MODEL_FOR_UNIVERSAL_SEGMENTATION_MAPPING_NAMES:uM,MODEL_FOR_OBJECT_DETECTION_MAPPING_NAMES:iM,MODEL_FOR_ZERO_SHOT_OBJECT_DETECTION_MAPPING_NAMES:lM,MODEL_FOR_MASK_GENERATION_MAPPING_NAMES:pM,MODEL_FOR_CTC_MAPPING_NAMES:dM,MODEL_FOR_AUDIO_CLASSIFICATION_MAPPING_NAMES:fM,MODEL_FOR_AUDIO_XVECTOR_MAPPING_NAMES:_M,MODEL_FOR_AUDIO_FRAME_CLASSIFICATION_MAPPING_NAMES:mM,MODEL_FOR_DOCUMENT_QUESTION_ANSWERING_MAPPING_NAMES:eN,MODEL_FOR_IMAGE_MATTING_MAPPING_NAMES:hM,MODEL_FOR_IMAGE_TO_IMAGE_MAPPING_NAMES:gM,MODEL_FOR_DEPTH_ESTIMATION_MAPPING_NAMES:wM,MODEL_FOR_NORMAL_ESTIMATION_MAPPING_NAMES:xM,MODEL_FOR_POSE_ESTIMATION_MAPPING_NAMES:yM,MODEL_FOR_IMAGE_FEATURE_EXTRACTION_MAPPING_NAMES:bM,MODEL_FOR_IMAGE_TEXT_TO_TEXT_MAPPING_NAMES:nM,MODEL_FOR_AUDIO_TEXT_TO_TEXT_MAPPING_NAMES:oM,MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING_NAMES:Z2,MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING_NAMES:X2,MODEL_FOR_CAUSAL_LM_MAPPING_NAMES:eM,MODEL_FOR_VISION_2_SEQ_MAPPING_NAMES:sM};j2(Ne);var Ie=class{static MODEL_CLASS_MAPPINGS=null;static BASE_IF_FAIL=!1;static supports(e){if(!this.MODEL_CLASS_MAPPINGS)return!1;for(let r of this.MODEL_CLASS_MAPPINGS)if(r.has(e))return!0;return this.BASE_IF_FAIL}static async from_pretrained(e,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main",model_file_name:i=null,subfolder:l="onnx",device:c=null,dtype:p=null,use_external_data_format:f=null,session_options:_={}}={}){let m={progress_callback:r,config:s,cache_dir:n,local_files_only:o,revision:a,model_file_name:i,subfolder:l,device:c,dtype:p,use_external_data_format:f,session_options:_};if(m.config=await Rt.from_pretrained(e,m),!this.MODEL_CLASS_MAPPINGS)throw new Error("`MODEL_CLASS_MAPPINGS` not implemented for this type of `AutoClass`: "+this.name);let{model_type:w}=m.config;for(let x of this.MODEL_CLASS_MAPPINGS){let k=x.get(w);if(!k){for(let E of x.values())if(E[0]===w){k=E;break}if(!k)continue}return await tu[k].from_pretrained(e,m)}if(this.BASE_IF_FAIL)return kM.has(w)||Z.warn(`Unknown model class "${w}", attempting to construct from base class.`),await y.from_pretrained(e,m);throw Error(`Unsupported model type: ${w}`)}},_r=class extends Ie{static MODEL_CLASS_MAPPINGS=g1.map(e=>e[0]);static BASE_IF_FAIL=!0},bi=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_SEQUENCE_CLASSIFICATION_MAPPING_NAMES]},ru=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_TOKEN_CLASSIFICATION_MAPPING_NAMES]},En=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING_NAMES]},su=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING_NAMES]},nu=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_TEXT_TO_SPECTROGRAM_MAPPING_NAMES]},ou=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_TEXT_TO_WAVEFORM_MAPPING_NAMES]},au=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_CAUSAL_LM_MAPPING_NAMES]},iu=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_MASKED_LM_MAPPING_NAMES]},lu=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_QUESTION_ANSWERING_MAPPING_NAMES]},cu=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_VISION_2_SEQ_MAPPING_NAMES]},uu=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_IMAGE_CLASSIFICATION_MAPPING_NAMES]},vi=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_IMAGE_SEGMENTATION_MAPPING_NAMES]},ki=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_SEMANTIC_SEGMENTATION_MAPPING_NAMES]},Ei=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_UNIVERSAL_SEGMENTATION_MAPPING_NAMES]},pu=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_OBJECT_DETECTION_MAPPING_NAMES]},du=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_ZERO_SHOT_OBJECT_DETECTION_MAPPING_NAMES]},w1=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_MASK_GENERATION_MAPPING_NAMES]},fu=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_CTC_MAPPING_NAMES]},_u=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_AUDIO_CLASSIFICATION_MAPPING_NAMES]},x1=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_AUDIO_XVECTOR_MAPPING_NAMES]},y1=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_AUDIO_FRAME_CLASSIFICATION_MAPPING_NAMES]},mu=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_DOCUMENT_QUESTION_ANSWERING_MAPPING_NAMES]},b1=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_IMAGE_MATTING_MAPPING_NAMES]},hu=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_IMAGE_TO_IMAGE_MAPPING_NAMES]},gu=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_DEPTH_ESTIMATION_MAPPING_NAMES]},v1=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_NORMAL_ESTIMATION_MAPPING_NAMES]},k1=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_POSE_ESTIMATION_MAPPING_NAMES]},wu=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_IMAGE_FEATURE_EXTRACTION_MAPPING_NAMES]},E1=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_IMAGE_TEXT_TO_TEXT_MAPPING_NAMES]},A1=class extends Ie{static MODEL_CLASS_MAPPINGS=[Ne.MODEL_FOR_AUDIO_TEXT_TO_TEXT_MAPPING_NAMES]};async function tt(t){return Array.isArray(t)||(t=[t]),await Promise.all(t.map(e=>Qe.read(e)))}async function ks(t,e){return Array.isArray(t)||(t=[t]),await Promise.all(t.map(r=>typeof r=="string"||r instanceof URL?ad(r,e):r instanceof Float64Array?new Float32Array(r):r))}function xu(t,e){e&&(t=t.map(a=>a|0));let[r,s,n,o]=t;return{xmin:r,ymin:s,xmax:n,ymax:o}}var _e=class extends st{constructor({task:e,model:r,tokenizer:s=null,processor:n=null}){super(),this.task=e,this.model=r,this.tokenizer=s,this.processor=n}async dispose(){await this.model.dispose()}};var Ai=class extends _e{async _call(e,{top_k:r=1}={}){let s=this.tokenizer(e,{padding:!0,truncation:!0}),n=await this.model(s),{problem_type:o,id2label:a}=this.model.config,i=o==="multi_label_classification"?c=>c.sigmoid():c=>new $("float32",Le(c.data),c.dims),l=[];for(let c of n.logits){let p=i(c),f=await Wt(p,r),_=f[0].tolist(),w=f[1].tolist().map((x,k)=>({label:a?a[x]:`LABEL_${x}`,score:_[k]}));r===1?l.push(...w):l.push(w)}return Array.isArray(e)||r===1?l:l[0]}};var Mi=class extends _e{async _call(e,{ignore_labels:r=["O"]}={}){let s=Array.isArray(e),n=this.tokenizer(s?e:[e],{padding:!0,truncation:!0}),a=(await this.model(n)).logits,i=this.model.config.id2label,l=[];for(let c=0;c<a.dims[0];++c){let p=n.input_ids[c],f=a[c],_=[];for(let m=0;m<f.dims[0];++m){let w=f[m],x=Pe(w.data)[1],k=i?i[x]:`LABEL_${x}`;if(r.includes(k))continue;let E=this.tokenizer.decode([p[m].item()],{skip_special_tokens:!0});if(E==="")continue;let A=Le(w.data);_.push({entity:k,score:A[x],index:m,word:E})}l.push(_)}return s?l:l[0]}};var Si=class extends _e{async _call(e,r,{top_k:s=1}={}){let n=this.tokenizer(e,{text_pair:r,padding:!0,truncation:!0}),o=Array.isArray(e),{start_logits:a,end_logits:i}=await this.model(n),l=n.input_ids.tolist(),c=n.attention_mask.tolist(),{all_special_ids:p,sep_token_id:f}=this.tokenizer,_=[];for(let m=0;m<a.dims[0];++m){let w=l[m],x=w.findIndex(O=>O==f),k=a[m].tolist(),E=i[m].tolist();for(let O=1;O<k.length;++O)(c[m]==0||O<=x||p.findIndex(v=>v==w[O])!==-1)&&(k[O]=-1/0,E[O]=-1/0);let A=Le(k).map((O,v)=>[O,v]),T=Le(E).map((O,v)=>[O,v]);A[0][0]=0,T[0][0]=0;let S=jk(A,T).filter(O=>O[0][1]<=O[1][1]).map(O=>[O[0][1],O[1][1],O[0][0]*O[1][0]]).sort((O,v)=>v[2]-O[2]),P=[];for(let O=0;O<Math.min(S.length,s);++O){let[v,j,H]=S[O],B=w.slice(v,j+1),V=this.tokenizer.decode(B,{skip_special_tokens:!0});P.push({answer:V,score:H})}s===1?_.push(...P):_.push(P)}return o?_:_[0]}};var Ti=class extends _e{async _call(e,{top_k:r=5}={}){let{mask_token_id:s,mask_token:n}=this.tokenizer,o=this.tokenizer(e,{padding:!0,truncation:!0}),{logits:a}=await this.model(o),i=[],l=o.input_ids.tolist();for(let c=0;c<l.length;++c){let p=l[c],f=p.findIndex(k=>k==s);if(f===-1)throw Error(`Mask token (${n}) not found in text.`);let _=a[c][f],m=await Wt(new $("float32",Le(_.data),_.dims),r),w=m[0].tolist(),x=m[1].tolist();i.push(x.map((k,E)=>{let A=p.slice();return A[f]=k,{score:w[E],token:Number(k),token_str:this.tokenizer.decode([k]),sequence:this.tokenizer.decode(A,{skip_special_tokens:!0})}}))}return Array.isArray(e)?i:i[0]}};var mr=class extends _e{_key="generated_text";async _call(e,r={}){Array.isArray(e)||(e=[e]),this.model.config.prefix&&(e=e.map(l=>this.model.config.prefix+l));let s=this.model.config.task_specific_params;s&&s[this.task]&&s[this.task].prefix&&(e=e.map(l=>s[this.task].prefix+l));let n=this.tokenizer,o={padding:!0,truncation:!0},a;this.task==="translation"&&"_build_translation_inputs"in n?a=n._build_translation_inputs(e,o,r):a=n(e,o);let i=await this.model.generate({...a,...r});return n.batch_decode(i,{skip_special_tokens:!0}).map(l=>({[this._key]:l}))}};var Oi=class extends mr{_key="summary_text"};var Ii=class extends mr{_key="translation_text"};function EM(t){return Array.isArray(t)&&t.every(e=>"role"in e&&"content"in e)}var Ci=class extends _e{async _call(e,r={}){let s=!1,n=!1,o=r.add_special_tokens??(this.tokenizer.add_bos_token||this.tokenizer.add_eos_token)??!1,a=r.tokenizer_encode_kwargs,i;if(typeof e=="string")i=e=[e];else if(Array.isArray(e)&&e.every(w=>typeof w=="string"))s=!0,i=e;else{if(EM(e))e=[e];else if(Array.isArray(e)&&e.every(EM))s=!0;else throw new Error("Input must be a string, an array of strings, a Chat, or an array of Chats");n=!0,i=e.map(w=>this.tokenizer.apply_chat_template(w,{tokenize:!1,add_generation_prompt:!0,...a})),o=!1,a=void 0}let l=n?!1:r.return_full_text??!0;this.tokenizer.padding_side="left";let c=this.tokenizer(i,{add_special_tokens:o,padding:!0,truncation:!0,...a}),p=await this.model.generate({...c,...r}),f=this.tokenizer.batch_decode(p,{skip_special_tokens:!0}),_;!l&&c.input_ids.dims.at(-1)>0&&(_=this.tokenizer.batch_decode(c.input_ids,{skip_special_tokens:!0}).map(w=>w.length));let m=Array.from({length:e.length},w=>[]);for(let w=0;w<f.length;++w){let x=Math.floor(w/p.dims[0]*e.length);_&&(f[w]=f[w].slice(_[x])),m[x].push({generated_text:n?[...e[x],{role:"assistant",content:f[w]}]:f[w]})}return!s&&m.length===1?m[0]:m}};var Li=class extends _e{constructor(e){super(e),this.label2id=Object.fromEntries(Object.entries(this.model.config.label2id).map(([r,s])=>[r.toLowerCase(),s])),this.entailment_id=this.label2id.entailment,this.entailment_id===void 0&&(Z.warn("Could not find 'entailment' in label2id mapping. Using 2 as entailment_id."),this.entailment_id=2),this.contradiction_id=this.label2id.contradiction??this.label2id.not_entailment,this.contradiction_id===void 0&&(Z.warn("Could not find 'contradiction' in label2id mapping. Using 0 as contradiction_id."),this.contradiction_id=0)}async _call(e,r,{hypothesis_template:s="This example is {}.",multi_label:n=!1}={}){let o=Array.isArray(e);o||(e=[e]),Array.isArray(r)||(r=[r]);let a=r.map(c=>s.replace("{}",c)),i=n||r.length===1,l=[];for(let c of e){let p=[];for(let m of a){let w=this.tokenizer(c,{text_pair:m,padding:!0,truncation:!0}),x=await this.model(w);i?p.push([x.logits.data[this.contradiction_id],x.logits.data[this.entailment_id]]):p.push(x.logits.data[this.entailment_id])}let _=(i?p.map(m=>Le(m)[1]):Le(p)).map((m,w)=>[m,w]).sort((m,w)=>w[0]-m[0]);l.push({sequence:c,labels:_.map(m=>r[m[1]]),scores:_.map(m=>m[0])})}return o?l:l[0]}};var Pi=class extends _e{async _call(e,{top_k:r=5}={}){let s=this.processor.feature_extractor.config.sampling_rate,n=await ks(e,s),o=this.model.config.id2label,a=[];for(let i of n){let l=await this.processor(i),p=(await this.model(l)).logits[0],f=await Wt(new $("float32",Le(p.data),p.dims),r),_=f[0].tolist(),w=f[1].tolist().map((x,k)=>({label:o?o[x]:`LABEL_${x}`,score:_[k]}));a.push(w)}return Array.isArray(e)?a:a[0]}};var zi=class extends _e{async _call(e,r,{hypothesis_template:s="This is a sound of {}."}={}){let n=!Array.isArray(e);n&&(e=[e]);let o=r.map(p=>s.replace("{}",p)),a=this.tokenizer(o,{padding:!0,truncation:!0}),i=this.processor.feature_extractor.config.sampling_rate,l=await ks(e,i),c=[];for(let p of l){let f=await this.processor(p),_=await this.model({...a,...f}),m=Le(_.logits_per_audio.data);c.push([...m].map((w,x)=>({score:w,label:r[x]})))}return n?c[0]:c}};var Ni=class extends _e{async _call(e,r={}){switch(this.model.config.model_type){case"whisper":case"lite-whisper":return this._call_whisper(e,r);case"wav2vec2":case"wav2vec2-bert":case"unispeech":case"unispeech-sat":case"hubert":case"parakeet_ctc":return this._call_wav2vec2(e,r);case"moonshine":return this._call_moonshine(e,r);default:throw new Error(`AutomaticSpeechRecognitionPipeline does not support model type '${this.model.config.model_type}'.`)}}async _call_wav2vec2(e,r){r.language&&Z.warn('`language` parameter is not yet supported for `wav2vec2` models, defaulting to "English".'),r.task&&Z.warn('`task` parameter is not yet supported for `wav2vec2` models, defaulting to "transcribe".');let s=!Array.isArray(e),n=s?[e]:e,o=this.processor.feature_extractor.config.sampling_rate,a=await ks(n,o),i=[];for(let l of a){let c=await this.processor(l),f=(await this.model(c)).logits[0],_=[];for(let w of f)_.push(Pe(w.data)[1]);let m=this.tokenizer.decode(_,{skip_special_tokens:!0}).trim();i.push({text:m})}return s?i[0]:i}async _call_whisper(e,r){let s=r.return_timestamps??!1,n=r.chunk_length_s??0,o=r.force_full_sequences??!1,a=r.stride_length_s??null,i={...r};s==="word"&&(i.return_token_timestamps=!0,i.return_timestamps=!1);let l=!Array.isArray(e),c=l?[e]:e,p=this.processor.feature_extractor.config,f=p.chunk_length/this.model.config.max_source_positions,_=p.hop_length,m=p.sampling_rate,w=await ks(c,m),x=[];for(let k of w){let E=[];if(n>0){if(a===null)a=n/6;else if(n<=a)throw Error("`chunk_length_s` must be larger than `stride_length_s`.");let S=m*n,P=m*a,O=S-2*P,v=0;for(;;){let j=v+S,H=k.subarray(v,j),B=await this.processor(H),V=v===0,q=j>=k.length;if(E.push({stride:[H.length,V?0:P,q?0:P],input_features:B.input_features,is_last:q}),q)break;v+=O}}else E=[{stride:[k.length,0,0],input_features:(await this.processor(k)).input_features,is_last:!0}];for(let S of E){i.num_frames=Math.floor(S.stride[0]/_);let P=await this.model.generate({inputs:S.input_features,...i});s==="word"?(S.tokens=P.sequences.tolist()[0],S.token_timestamps=P.token_timestamps.tolist()[0].map(O=>zs(O,2))):S.tokens=P[0].tolist(),S.stride=S.stride.map(O=>O/m)}let[A,T]=this.tokenizer._decode_asr(E,{time_precision:f,return_timestamps:s,force_full_sequences:o});x.push({text:A,...T})}return l?x[0]:x}async _call_moonshine(e,r){let s=!Array.isArray(e),n=s?[e]:e,o=this.processor.feature_extractor.config.sampling_rate,a=await ks(n,o),i=[];for(let l of a){let c=await this.processor(l),p=Math.floor(l.length/o)*6,f=await this.model.generate({max_new_tokens:p,...r,...c}),_=this.processor.batch_decode(f,{skip_special_tokens:!0})[0];i.push({text:_})}return s?i[0]:i}};var $i=class extends _e{DEFAULT_VOCODER_ID="Xenova/speecht5_hifigan";constructor(e){super(e),this.vocoder=e.vocoder??null}async _prepare_speaker_embeddings(e,r){if((typeof e=="string"||e instanceof URL)&&(e=new Float32Array(await(await fe.fetch(e)).arrayBuffer())),e instanceof Float32Array)e=new $("float32",e,[e.length]);else if(!(e instanceof $))throw new Error("Speaker embeddings must be a `Tensor`, `Float32Array`, `string`, or `URL`.");if(r>1){if(e.dims[0]===1)e=e.repeat(r,1);else if(e.dims[0]!==r)throw new Error(`Expected speaker embeddings batch size to be 1 or ${r}, but got ${e.dims[0]}.`)}return e}_postprocess_waveform(e,r,s,n=null){let o=r.data,[a,i]=r.dims,l=n?n.data:null,c=[];for(let p=0;p<a;++p){let f=l?Math.min(Math.ceil(l[p]),i):i,_=p*i;c.push(new Vn(o.slice(_,_+f),s))}return Array.isArray(e)?c:c[0]}async _call(e,r){return this.processor?this._call_text_to_spectrogram(e,r):this.model.config.model_type==="supertonic"?this._call_supertonic(e,r):this._call_text_to_waveform(e)}async _call_supertonic(e,{speaker_embeddings:r,num_inference_steps:s,speed:n}){if(!r)throw new Error("Speaker embeddings must be provided for Supertonic models.");let{sampling_rate:o,style_dim:a}=this.model.config,i=this.tokenizer(e,{padding:!0,truncation:!0}),l=i.input_ids.dims[0];r=await this._prepare_speaker_embeddings(r,l),r=r.view(l,-1,a);let{waveform:c,durations:p}=await this.model.generate_speech({...i,style:r,num_inference_steps:s,speed:n});return this._postprocess_waveform(e,c,o,p)}async _call_text_to_waveform(e){let r=this.tokenizer(e,{padding:!0,truncation:!0}),{waveform:s}=await this.model(r),n=this.model.config.sampling_rate;return this._postprocess_waveform(e,s,n)}async _call_text_to_spectrogram(e,{speaker_embeddings:r}){this.vocoder||(Z.info("No vocoder specified, using default HifiGan vocoder."),this.vocoder=await _r.from_pretrained(this.DEFAULT_VOCODER_ID,{dtype:"fp32"}));let{input_ids:s}=this.tokenizer(e,{padding:!0,truncation:!0}),n=s.dims[0];r=await this._prepare_speaker_embeddings(r,n),r=r.view(n,-1);let{waveform:o}=await this.model.generate_speech(s,r,{vocoder:this.vocoder}),a=this.processor.feature_extractor.config.sampling_rate;return this._postprocess_waveform(e,o,a)}};var Ri=class extends _e{async _call(e,r={}){let s=Array.isArray(e),n=await tt(e),{pixel_values:o}=await this.processor(n),a=[];for(let i of o){i.dims=[1,...i.dims];let l=await this.model.generate({inputs:i,...r}),c=this.tokenizer.batch_decode(l,{skip_special_tokens:!0}).map(p=>({generated_text:p.trim()}));a.push(c)}return s?a:a[0]}};var Di=class extends _e{async _call(e,{top_k:r=5}={}){let s=await tt(e),{pixel_values:n}=await this.processor(s),o=await this.model({pixel_values:n}),{id2label:a}=this.model.config,i=[];for(let l of o.logits){let c=await Wt(new $("float32",Le(l.data),l.dims),r),p=c[0].tolist(),_=c[1].tolist().map((m,w)=>({label:a?a[m]:`LABEL_${m}`,score:p[w]}));i.push(_)}return Array.isArray(e)?i:i[0]}};var AM={panoptic:"post_process_panoptic_segmentation",instance:"post_process_instance_segmentation",semantic:"post_process_semantic_segmentation"},Es=class extends _e{async _call(e,{threshold:r=.5,mask_threshold:s=.5,overlap_mask_area_threshold:n=.8,label_ids_to_fuse:o=null,target_sizes:a=null,subtask:i=null}={}){if(Array.isArray(e)&&e.length!==1)throw Error("Image segmentation pipeline currently only supports a batch size of 1.");let c=await tt(e),p=c.map(A=>[A.height,A.width]),f=await this.processor(c),{inputNames:_,outputNames:m}=this.model.sessions.model;if(!_.includes("pixel_values")){if(_.length!==1)throw Error(`Expected a single input name, but got ${_.length} inputs: ${_}.`);let A=_[0];if(A in f)throw Error(`Input name ${A} already exists in the inputs.`);f[A]=f.pixel_values}let w=await this.model(f),x=null;if(i!==null)x=AM[i];else if(this.processor.image_processor){for(let[A,T]of Object.entries(AM))if(T in this.processor.image_processor){x=this.processor.image_processor[T].bind(this.processor.image_processor),i=A;break}}let k=this.model.config.id2label,E=[];if(i)if(i==="panoptic"||i==="instance"){let A=x(w,r,s,n,o,a??p)[0],T=A.segmentation;for(let S of A.segments_info){let P=new Uint8ClampedArray(T.data.length);for(let v=0;v<T.data.length;++v)T.data[v]===S.id&&(P[v]=255);let O=new Qe(P,T.dims[1],T.dims[0],1);E.push({score:S.score,label:k[S.label_id],mask:O})}}else if(i==="semantic"){let{segmentation:A,labels:T}=x(w,a??p)[0];for(let S of T){let P=new Uint8ClampedArray(A.data.length);for(let v=0;v<A.data.length;++v)A.data[v]===S&&(P[v]=255);let O=new Qe(P,A.dims[1],A.dims[0],1);E.push({score:null,label:k[S],mask:O})}}else throw Error(`Subtask ${i} not supported.`);else{let T=w[m[0]];for(let S=0;S<p.length;++S){let P=p[S],O=T[S];O.data.some(j=>j<-1e-5||j>1+1e-5)&&O.sigmoid_();let v=await Qe.fromTensor(O.mul_(255).to("uint8")).resize(P[1],P[0]);E.push({label:null,score:null,mask:v})}}return E}};var Fi=class extends Es{async _call(e,r={}){let s=await tt(e),n=await super._call(e,r),o=s.map((a,i)=>{let l=a.clone();return l.putAlpha(n[i].mask),l});return Array.isArray(e)?o:o[0]}};var Bi=class extends _e{async _call(e,r,{hypothesis_template:s="This is a photo of {}"}={}){let n=Array.isArray(e),o=await tt(e),a=r.map(_=>s.replace("{}",_)),i=this.tokenizer(a,{padding:this.model.config.model_type==="siglip"?"max_length":!0,truncation:!0}),{pixel_values:l}=await this.processor(o),c=await this.model({...i,pixel_values:l}),p=this.model.config.model_type==="siglip"?_=>_.sigmoid().data:_=>Le(_.data),f=[];for(let _ of c.logits_per_image){let w=[...p(_)].map((x,k)=>({score:x,label:r[k]}));w.sort((x,k)=>k.score-x.score),f.push(w)}return n?f:f[0]}};var Ui=class extends _e{async _call(e,{threshold:r=.9,percentage:s=!1}={}){let n=Array.isArray(e);if(n&&e.length!==1)throw Error("Object detection pipeline currently only supports a batch size of 1.");let o=await tt(e),a=s?null:o.map(m=>[m.height,m.width]),{pixel_values:i,pixel_mask:l}=await this.processor(o),c=await this.model({pixel_values:i,pixel_mask:l}),p=this.processor.image_processor.post_process_object_detection(c,r,a),{id2label:f}=this.model.config,_=p.map(m=>m.boxes.map((w,x)=>({score:m.scores[x],label:f[m.classes[x]],box:xu(w,!s)})));return n?_:_[0]}};var ji=class extends _e{async _call(e,r,{threshold:s=.1,top_k:n=null,percentage:o=!1}={}){let a=Array.isArray(e),i=await tt(e),l=this.tokenizer(r,{padding:!0,truncation:!0}),c=await this.processor(i),p=[];for(let f=0;f<i.length;++f){let _=i[f],m=o?null:[[_.height,_.width]],w=c.pixel_values[f].unsqueeze_(0),x=await this.model({...l,pixel_values:w}),k;if("post_process_grounded_object_detection"in this.processor){let E=this.processor.post_process_grounded_object_detection(x,l.input_ids,{box_threshold:s,text_threshold:s,target_sizes:m})[0];k=E.boxes.map((A,T)=>({score:E.scores[T],label:E.labels[T],box:xu(A,!o)}))}else{let E=this.processor.image_processor.post_process_object_detection(x,s,m,!0)[0];k=E.boxes.map((A,T)=>({score:E.scores[T],label:r[E.classes[T]],box:xu(A,!o)}))}k.sort((E,A)=>A.score-E.score),n!==null&&(k=k.slice(0,n)),p.push(k)}return a?p:p[0]}};var Gi=class extends _e{async _call(e,r,s={}){if(Array.isArray(e)){if(e.length!==1)throw Error("Document Question Answering pipeline currently only supports a batch size of 1.");e=e[0]}let n=(await tt(e))[0],{pixel_values:o}=await this.processor(n),a=`<s_docvqa><s_question>${r}</s_question><s_answer>`,i=this.tokenizer(a,{add_special_tokens:!1,padding:!0,truncation:!0}).input_ids,l=await this.model.generate({inputs:o,max_length:this.model.config.decoder.max_position_embeddings,decoder_input_ids:i,...s}),p=this.tokenizer.batch_decode(l)[0].match(/<s_answer>(.*?)<\/s_answer>/),f=null;return p&&p.length>=2&&(f=p[1].trim()),[{answer:f}]}};var qi=class extends _e{async _call(e){let r=await tt(e),s=await this.processor(r),n=await this.model(s),o=[];for(let a of n.reconstruction){let i=a.squeeze().clamp_(0,1).mul_(255).round_().to("uint8");o.push(Qe.fromTensor(i))}return Array.isArray(e)?o:o[0]}};var Wi=class extends _e{async _call(e){let r=await tt(e),s=await this.processor(r),{predicted_depth:n}=await this.model(s),o=[];for(let a=0;a<r.length;++a){let i=n[a],[l,c]=i.dims.slice(-2),[p,f]=r[a].size,_=(await bt(i.view(1,1,l,c),{size:[f,p],mode:"bilinear"})).view(f,p),m=_.min().item(),w=_.max().item(),x=_.sub(m).div_(w-m).mul_(255).to("uint8").unsqueeze(0),k=Qe.fromTensor(x);o.push({predicted_depth:_,depth:k})}return Array.isArray(e)?o:o[0]}};var Vi=class extends _e{async _call(e,{pooling:r="none",normalize:s=!1,quantize:n=!1,precision:o="binary"}={}){let a=this.tokenizer(e,{padding:!0,truncation:!0}),i=await this.model(a),l=i.last_hidden_state??i.logits??i.token_embeddings;switch(r){case"none":break;case"mean":l=Gb(l,a.attention_mask);break;case"first_token":case"cls":l=l.slice(null,0);break;case"last_token":case"eos":l=l.slice(null,-1);break;default:throw Error(`Pooling method '${r}' not supported.`)}return s&&(l=l.normalize(2,-1)),n&&(l=Vb(l,o)),l}};var Hi=class extends _e{async _call(e,{pool:r=null}={}){let s=await tt(e),{pixel_values:n}=await this.processor(s),o=await this.model({pixel_values:n}),a;if(r){if(!("pooler_output"in o))throw Error("No pooled output was returned. Make sure the model has a 'pooler' layer when using the 'pool' option.");a=o.pooler_output}else a=o.last_hidden_state??o.logits??o.image_embeds;return a}};var Xi=Object.freeze({"text-classification":{pipeline:Ai,model:bi,default:{model:"Xenova/distilbert-base-uncased-finetuned-sst-2-english"},type:"text"},"token-classification":{pipeline:Mi,model:ru,default:{model:"Xenova/bert-base-multilingual-cased-ner-hrl"},type:"text"},"question-answering":{pipeline:Si,model:lu,default:{model:"Xenova/distilbert-base-cased-distilled-squad"},type:"text"},"fill-mask":{pipeline:Ti,model:iu,default:{model:"onnx-community/ettin-encoder-32m-ONNX",dtype:"fp32"},type:"text"},summarization:{pipeline:Oi,model:En,default:{model:"Xenova/distilbart-cnn-6-6"},type:"text"},translation:{pipeline:Ii,model:En,default:{model:"Xenova/t5-small"},type:"text"},"text2text-generation":{pipeline:mr,model:En,default:{model:"Xenova/flan-t5-small"},type:"text"},"text-generation":{pipeline:Ci,model:au,default:{model:"onnx-community/Qwen3-0.6B-ONNX",dtype:"q4"},type:"text"},"zero-shot-classification":{pipeline:Li,model:bi,default:{model:"Xenova/distilbert-base-uncased-mnli"},type:"text"},"audio-classification":{pipeline:Pi,model:_u,default:{model:"Xenova/wav2vec2-base-superb-ks"},type:"audio"},"zero-shot-audio-classification":{pipeline:zi,model:_r,default:{model:"Xenova/clap-htsat-unfused"},type:"multimodal"},"automatic-speech-recognition":{pipeline:Ni,model:[su,fu],default:{model:"Xenova/whisper-tiny.en"},type:"multimodal"},"text-to-audio":{pipeline:$i,model:[ou,nu],default:{model:"onnx-community/Supertonic-TTS-ONNX",dtype:"fp32"},type:"text"},"image-to-text":{pipeline:Ri,model:cu,default:{model:"Xenova/vit-gpt2-image-captioning"},type:"multimodal"},"image-classification":{pipeline:Di,model:uu,default:{model:"Xenova/vit-base-patch16-224"},type:"multimodal"},"image-segmentation":{pipeline:Es,model:[vi,ki,Ei],default:{model:"Xenova/detr-resnet-50-panoptic"},type:"multimodal"},"background-removal":{pipeline:Fi,model:[vi,ki,Ei],default:{model:"Xenova/modnet"},type:"image"},"zero-shot-image-classification":{pipeline:Bi,model:_r,default:{model:"Xenova/clip-vit-base-patch32"},type:"multimodal"},"object-detection":{pipeline:Ui,model:pu,default:{model:"Xenova/detr-resnet-50"},type:"multimodal"},"zero-shot-object-detection":{pipeline:ji,model:du,default:{model:"Xenova/owlvit-base-patch32"},type:"multimodal"},"document-question-answering":{pipeline:Gi,model:mu,default:{model:"Xenova/donut-base-finetuned-docvqa"},type:"multimodal"},"image-to-image":{pipeline:qi,model:hu,default:{model:"Xenova/swin2SR-classical-sr-x2-64"},type:"image"},"depth-estimation":{pipeline:Wi,model:gu,default:{model:"onnx-community/depth-anything-v2-small"},type:"image"},"feature-extraction":{pipeline:Vi,model:_r,default:{model:"onnx-community/all-MiniLM-L6-v2-ONNX",dtype:"fp32"},type:"text"},"image-feature-extraction":{pipeline:Hi,model:[wu,_r],default:{model:"onnx-community/dinov3-vits16-pretrain-lvd1689m-ONNX",dtype:"fp32"},type:"image"}}),Qy=Object.freeze({"sentiment-analysis":"text-classification",ner:"token-classification",asr:"automatic-speech-recognition","text-to-speech":"text-to-audio",embeddings:"feature-extraction"});function sN(t,{config:e=null,cache_dir:r=null,local_files_only:s=!1,revision:n="main"}={}){if(e!==null)return Rt.from_pretrained(t,{config:e,cache_dir:r,local_files_only:s,revision:n});let o=JSON.stringify([t,r,s,n]);return Gu(o,()=>Rt.from_pretrained(t,{config:e,cache_dir:r,local_files_only:s,revision:n}))}async function Yy(t,{config:e=null,dtype:r=null,device:s=null,model_file_name:n=null}={}){e=await sN(t,{config:e});let o=["config.json"],a=e["transformers.js_config"]??{},i=a.use_external_data_format,l="onnx",c=s??a.device,p=r??a.dtype,f,_=e.architectures||[],m=!1;for(let E of _){let A=sr.get(E);if(A!==void 0){f=A,m=!0;break}}if(!m&&e.model_type){let E=sr.get(e.model_type);if(E!==void 0&&(f=E,m=!0),!m){for(let A of Object.values(en))if(A.has(e.model_type)){f=sr.get(A.get(e.model_type)),m=!0;break}}}if(!m){let E=_.length>0?_.join(", "):"(none)";Z.warn(`[get_model_files] Architecture(s) not found in MODEL_TYPE_MAPPING: [${E}] for model type '${e.model_type}'. Falling back to EncoderOnly (single model.onnx file). If you encounter issues, please report at: ${as}`),f=K.EncoderOnly}let w=(E,A=null)=>{A=A??E;let T=lp(c,E),S=cp(p,E,T),P=yl[S]??"",O=`${A}${P}.onnx`,v=l?`${l}/${O}`:O;o.push(v);let j=s1(i,O,E);for(let H of n1(O,j)){let B=l?`${l}/${H}`:H;o.push(B)}},{sessions:x,optional_configs:k}=G2(f,e,{model_file_name:n});for(let[E,A]of Object.entries(x))w(E,A);if(k)for(let E of Object.values(k))o.push(E);return o}async function Jy(t){if(!t)throw new Error("modelId is required");return(await pr(t,Mr,{})).exists?[Mr]:[]}async function jr(t,{config:e=null,dtype:r=null,device:s=null,model_file_name:n=null,include_tokenizer:o=!0,include_processor:a=!0}={}){let i=await Yy(t,{config:e,dtype:r,device:s,model_file_name:n});if(o){let l=await Gn(t);i.push(...l)}if(a){let l=await Jy(t);i.push(...l)}return i}async function Gr(t,e,r={}){t=Qy[t]??t;let s=Xi[t];if(!s)throw new Error(`Unsupported pipeline task: ${t}. Must be one of [${Object.keys(Xi).join(", ")}]`);let{type:n}=s;return jr(e,{...r,include_tokenizer:n!=="audio"&&n!=="image",include_processor:n!=="text"})}async function nN(t,e=null,{progress_callback:r=null,config:s=null,cache_dir:n=null,local_files_only:o=!1,revision:a="main",device:i=null,dtype:l=null,subfolder:c="onnx",use_external_data_format:p=null,model_file_name:f=null,session_options:_={}}={}){t=Qy[t]??t;let m=Xi[t.split("_",1)[0]];if(!m)throw Error(`Unsupported pipeline: ${t}. Must be one of [${Object.keys(Xi)}]`);e||(e=m.default.model,Z.info(`No model specified. Using default model: "${e}".`),!l&&m.default.dtype&&(l=m.default.dtype));let w=await Gr(t,e,{device:i,dtype:l}),x={};r&&(await Promise.all(w.map(async V=>pr(e,V)))).forEach((V,q)=>{V.exists&&(x[w[q]]={loaded:0,total:V.size??0})});let k={progress_callback:r?B=>{if(B.status==="progress"){x[B.file]={loaded:B.loaded,total:B.total};let V=Object.values(x).reduce((F,C)=>F+C.loaded,0),q=Object.values(x).reduce((F,C)=>F+C.total,0),Q=q>0?V/q*100:0;r({status:"progress_total",name:B.name,progress:Q,loaded:V,total:q,files:structuredClone(x)})}r(B)}:void 0,config:s,cache_dir:n,local_files_only:o,revision:a,device:i,dtype:l,subfolder:c,use_external_data_format:p,model_file_name:f,session_options:_},E=w.includes("tokenizer.json"),A=w.includes("preprocessor_config.json"),T=m.model,S;if(Array.isArray(T)){let B=s??await Rt.from_pretrained(e,k),{model_type:V}=B,q=T.find(Q=>Q.supports(V));if(!q)throw Error(`Unsupported model type "${V}" for task "${t}". None of the candidate model classes support this type.`);S=q.from_pretrained(e,{...k,config:B})}else S=T.from_pretrained(e,k);let[P,O,v]=await Promise.all([E?oe.from_pretrained(e,k):null,A?Wl.from_pretrained(e,k):null,S]),j={task:t,model:v};P&&(j.tokenizer=P),O&&(j.processor=O),kr(r,{status:"ready",task:t,model:e});let H=m.pipeline;return new H(j)}var oN=t=>t>=19968&&t<=40959||t>=13312&&t<=19903||t>=131072&&t<=173791||t>=173824&&t<=177983||t>=177984&&t<=178207||t>=178208&&t<=183983||t>=63744&&t<=64255||t>=194560&&t<=195103,Zy=class{put(e){throw Error("Not implemented")}end(){throw Error("Not implemented")}},MM=ie.IS_PROCESS_AVAILABLE?t=>process.stdout.write(t):t=>console.log(t),e0=class extends Zy{constructor(e,{skip_prompt:r=!1,callback_function:s=null,token_callback_function:n=null,skip_special_tokens:o=!0,decode_kwargs:a={},...i}={}){super(),this.tokenizer=e,this.skip_prompt=r,this.callback_function=s??MM,this.token_callback_function=n,this.decode_kwargs={skip_special_tokens:o,...a,...i},this.token_cache=[],this.print_len=0,this.next_tokens_are_prompt=!0,this.special_ids=new Set(this.tokenizer.all_special_ids.map(BigInt))}put(e){if(e.length>1)throw Error("TextStreamer only supports batch size of 1");let r=this.next_tokens_are_prompt;if(r&&(this.next_tokens_are_prompt=!1,this.skip_prompt))return;let s=e[0];if(this.token_callback_function?.(s),s.length===1&&this.special_ids.has(s[0])){if(this.decode_kwargs.skip_special_tokens)return;if(this.token_cache.length>0){let l=this.tokenizer.decode(this.token_cache,this.decode_kwargs).slice(this.print_len);this.on_finalized_text(l,!1),this.token_cache=[],this.print_len=0}let a=this.tokenizer.decode(s,this.decode_kwargs);this.on_finalized_text(a,!1);return}this.token_cache=wt(this.token_cache,s);let n=this.tokenizer.decode(this.token_cache,this.decode_kwargs),o;r||n.endsWith(`
26
+ `)?(o=n.slice(this.print_len),this.token_cache=[],this.print_len=0):n.length>0&&oN(n.charCodeAt(n.length-1))?(o=n.slice(this.print_len),this.print_len+=o.length):(o=n.slice(this.print_len,n.lastIndexOf(" ")+1),this.print_len+=o.length),this.on_finalized_text(o,!1)}end(){let e;this.token_cache.length>0?(e=this.tokenizer.decode(this.token_cache,this.decode_kwargs).slice(this.print_len),this.token_cache=[],this.print_len=0):e="",this.next_tokens_are_prompt=!0,this.on_finalized_text(e,!0)}on_finalized_text(e,r){e.length>0&&this.callback_function?.(e),r&&this.callback_function===MM&&ie.IS_PROCESS_AVAILABLE&&this.callback_function?.(`
27
+ `)}},M1=class extends e0{constructor(e,{skip_prompt:r=!1,callback_function:s=null,token_callback_function:n=null,on_chunk_start:o=null,on_chunk_end:a=null,on_finalize:i=null,time_precision:l=.02,skip_special_tokens:c=!0,decode_kwargs:p={}}={}){super(e,{skip_prompt:r,skip_special_tokens:c,callback_function:s,token_callback_function:n,decode_kwargs:p}),this.timestamp_begin=e.timestamp_begin,this.on_chunk_start=o,this.on_chunk_end=a,this.on_finalize=i,this.time_precision=l,this.waiting_for_timestamp=!1}put(e){if(e.length>1)throw Error("WhisperTextStreamer only supports batch size of 1");let r=e[0];if(r.length===1){let s=Number(r[0])-this.timestamp_begin;if(s>=0){let n=s*this.time_precision;this.waiting_for_timestamp?this.on_chunk_end?.(n):this.on_chunk_start?.(n),this.waiting_for_timestamp=!this.waiting_for_timestamp,this.token_callback_function?.(r);return}}return super.put(e)}end(){super.end(),this.on_finalize?.()}};var Ki=class{constructor(e,r){this.image=e,this.timestamp=r}},yu=class{constructor(e,r){e.length>0&&e[0]instanceof Qe&&(e=e.map((s,n)=>new Ki(s,(n+1)/(e.length+1)*r))),this.frames=e,this.duration=r}get width(){return this.frames[0].image.width}get height(){return this.frames[0].image.height}get fps(){return this.frames.length/this.duration}};async function SM(t,{num_frames:e=null,fps:r=null}={}){if(!ie.IS_BROWSER_ENV)throw new Error("`load_video` is currently only supported in browser environments.");if(e==null&&r==null)throw new Error("Either num_frames or fps must be provided.");let s=[],n=document.createElement("video");if(n.crossOrigin="anonymous",n.muted=!0,typeof t=="string")n.src=t;else if(t instanceof Blob)n.src=URL.createObjectURL(t);else if(t instanceof HTMLVideoElement)n.src=t.src;else throw new Error("Invalid URL or video element provided.");if(await new Promise(f=>n.onloadedmetadata=f),n.seekable.start(0)===n.seekable.end(0)){let _=await(await fe.fetch(n.src)).blob();n.src=URL.createObjectURL(_),await new Promise(m=>n.onloadedmetadata=m)}let o=n.duration,a,i;e!=null?(a=e,i=e===1?0:o/(e-1)):(i=1/r,a=Math.floor(o/i));let l=[];for(let f=0;f<a;++f)l.push(e===1?o/2:f*i);let c=document.createElement("canvas");c.width=n.videoWidth,c.height=n.videoHeight;let p=c.getContext("2d",{willReadFrequently:!0});for(let f of l){n.currentTime=f,await new Promise(x=>{n.onseeked=x}),p.drawImage(n,0,0,c.width,c.height);let _=p.getImageData(0,0,c.width,c.height),m=new Qe(_.data,c.width,c.height,4),w=new Ki(m,f);s.push(w)}return n.remove(),new yu(s,o)}async function t0(t,e,r={}){let s=await er(r?.cache_dir);if(!s)return{allCached:!1,files:e.map(a=>({file:a,cached:!1}))};let n=await Promise.all(e.map(async o=>{let{localPath:a,proposedCacheKey:i}=Yr(t,o,r,s),l=await Jr(s,a,i);return{file:o,cached:!!l}}));return{allCached:n.every(o=>o.cached),files:n}}async function TM(t,e,r={}){let s=await er(r?.cache_dir);if(!s)return!1;let{localPath:n,proposedCacheKey:o}=Yr(t,e,r,s);return!!await Jr(s,n,o)}async function OM(t,e={}){if(!t)throw new Error("modelId is required");if(!await TM(t,"config.json",e))return!1;let r=await jr(t,e);return(await t0(t,r,e)).allCached}async function IM(t,e={}){if(!t)throw new Error("modelId is required");let r=await jr(t,e);return await t0(t,r,e)}async function CM(t,e,r={}){if(!t)throw new Error("task is required");if(!e)throw new Error("modelId is required");if(!await TM(e,"config.json",r))return!1;let s=await Gr(t,e,r);return(await t0(e,s,r)).allCached}async function LM(t,e,r={}){if(!t)throw new Error("task is required");if(!e)throw new Error("modelId is required");let s=await Gr(t,e,r);return await t0(e,s,r)}async function PM(t,e,r={}){let s=await er(r?.cache_dir);if(!s)return{filesDeleted:0,filesCached:0,files:e.map(o=>({file:o,deleted:!1,wasCached:!1}))};if(!s.delete)throw new Error("Cache does not support delete operation");let n=await Promise.all(e.map(async o=>{let{localPath:a,proposedCacheKey:i}=Yr(t,o,r,s),c=!!await Jr(s,a,i),p=!1;if(c){let f=await s.delete(i),_=!f&&i!==a?await s.delete(a):!1;p=f||_}return{file:o,deleted:p,wasCached:c}}));return{filesDeleted:n.filter(o=>o.deleted).length,filesCached:n.filter(o=>o.wasCached).length,files:n}}async function zM(t,e={}){if(!t)throw new Error("modelId is required");let r=await jr(t,e);return await PM(t,r,e)}async function NM(t,e,r={}){if(!t)throw new Error("task is required");if(!e)throw new Error("modelId is required");let s=await Gr(t,e,r);return await PM(e,s,r)}var r0=class{static async get_files(e,r={}){return jr(e,r)}static async get_pipeline_files(e,r,s={}){return Gr(e,r,s)}static async get_model_files(e,r={}){return Yy(e,r)}static async get_tokenizer_files(e){return Gn(e)}static async get_processor_files(e){return Jy(e)}static async is_cached(e,r={}){return OM(e,r)}static async is_cached_files(e,r={}){return IM(e,r)}static async is_pipeline_cached(e,r,s={}){return CM(e,r,s)}static async is_pipeline_cached_files(e,r,s={}){return LM(e,r,s)}static async get_file_metadata(e,r,s={}){return pr(e,r,s)}static async clear_cache(e,r={}){return zM(e,r)}static async clear_pipeline_cache(e,r,s={}){return NM(e,r,s)}};0&&(module.exports={ASTFeatureExtractor,ASTForAudioClassification,ASTModel,ASTPreTrainedModel,AfmoeForCausalLM,AfmoeModel,AfmoePreTrainedModel,AlbertForMaskedLM,AlbertForQuestionAnswering,AlbertForSequenceClassification,AlbertModel,AlbertPreTrainedModel,AlbertTokenizer,ApertusForCausalLM,ApertusModel,ApertusPreTrainedModel,ArceeForCausalLM,ArceeModel,ArceePreTrainedModel,AudioClassificationPipeline,AutoConfig,AutoFeatureExtractor,AutoImageProcessor,AutoModel,AutoModelForAudioClassification,AutoModelForAudioFrameClassification,AutoModelForAudioTextToText,AutoModelForCTC,AutoModelForCausalLM,AutoModelForDepthEstimation,AutoModelForDocumentQuestionAnswering,AutoModelForImageClassification,AutoModelForImageFeatureExtraction,AutoModelForImageMatting,AutoModelForImageSegmentation,AutoModelForImageTextToText,AutoModelForImageToImage,AutoModelForMaskGeneration,AutoModelForMaskedLM,AutoModelForNormalEstimation,AutoModelForObjectDetection,AutoModelForPoseEstimation,AutoModelForQuestionAnswering,AutoModelForSemanticSegmentation,AutoModelForSeq2SeqLM,AutoModelForSequenceClassification,AutoModelForSpeechSeq2Seq,AutoModelForTextToSpectrogram,AutoModelForTextToWaveform,AutoModelForTokenClassification,AutoModelForUniversalSegmentation,AutoModelForVision2Seq,AutoModelForXVector,AutoModelForZeroShotObjectDetection,AutoProcessor,AutoTokenizer,AutomaticSpeechRecognitionPipeline,BackgroundRemovalPipeline,BartForConditionalGeneration,BartForSequenceClassification,BartModel,BartPretrainedModel,BartTokenizer,BaseStreamer,BeitFeatureExtractor,BeitForImageClassification,BeitModel,BeitPreTrainedModel,BertForMaskedLM,BertForQuestionAnswering,BertForSequenceClassification,BertForTokenClassification,BertModel,BertPreTrainedModel,BertTokenizer,BitImageProcessor,BlenderbotForConditionalGeneration,BlenderbotModel,BlenderbotPreTrainedModel,BlenderbotSmallForConditionalGeneration,BlenderbotSmallModel,BlenderbotSmallPreTrainedModel,BlenderbotSmallTokenizer,BlenderbotTokenizer,BloomForCausalLM,BloomModel,BloomPreTrainedModel,BloomTokenizer,CLIPFeatureExtractor,CLIPImageProcessor,CLIPModel,CLIPPreTrainedModel,CLIPSegForImageSegmentation,CLIPSegModel,CLIPSegPreTrainedModel,CLIPTextModel,CLIPTextModelWithProjection,CLIPTokenizer,CLIPVisionModel,CLIPVisionModelWithProjection,CamembertForMaskedLM,CamembertForQuestionAnswering,CamembertForSequenceClassification,CamembertForTokenClassification,CamembertModel,CamembertPreTrainedModel,CamembertTokenizer,ChatterboxFeatureExtractor,ChatterboxModel,ChatterboxPreTrainedModel,ChatterboxProcessor,ChineseCLIPFeatureExtractor,ChineseCLIPModel,ChineseCLIPPreTrainedModel,ClapAudioModelWithProjection,ClapFeatureExtractor,ClapModel,ClapPreTrainedModel,ClapTextModelWithProjection,ClassifierFreeGuidanceLogitsProcessor,CodeGenForCausalLM,CodeGenModel,CodeGenPreTrainedModel,CodeGenTokenizer,CodeLlamaTokenizer,Cohere2ForCausalLM,Cohere2Model,Cohere2PreTrainedModel,CohereForCausalLM,CohereModel,CoherePreTrainedModel,CohereTokenizer,ConvBertForMaskedLM,ConvBertForQuestionAnswering,ConvBertForSequenceClassification,ConvBertForTokenClassification,ConvBertModel,ConvBertPreTrainedModel,ConvBertTokenizer,ConvNextFeatureExtractor,ConvNextForImageClassification,ConvNextImageProcessor,ConvNextModel,ConvNextPreTrainedModel,ConvNextV2ForImageClassification,ConvNextV2Model,ConvNextV2PreTrainedModel,DFineForObjectDetection,DFineModel,DFinePreTrainedModel,DINOv3ConvNextModel,DINOv3ConvNextPreTrainedModel,DINOv3ViTImageProcessor,DINOv3ViTModel,DINOv3ViTPreTrainedModel,DPTFeatureExtractor,DPTForDepthEstimation,DPTImageProcessor,DPTModel,DPTPreTrainedModel,DacDecoderModel,DacDecoderOutput,DacEncoderModel,DacEncoderOutput,DacFeatureExtractor,DacModel,DacPreTrainedModel,DebertaForMaskedLM,DebertaForQuestionAnswering,DebertaForSequenceClassification,DebertaForTokenClassification,DebertaModel,DebertaPreTrainedModel,DebertaTokenizer,DebertaV2ForMaskedLM,DebertaV2ForQuestionAnswering,DebertaV2ForSequenceClassification,DebertaV2ForTokenClassification,DebertaV2Model,DebertaV2PreTrainedModel,DebertaV2Tokenizer,DecisionTransformerModel,DecisionTransformerPreTrainedModel,DeiTFeatureExtractor,DeiTForImageClassification,DeiTImageProcessor,DeiTModel,DeiTPreTrainedModel,DepthAnythingForDepthEstimation,DepthAnythingPreTrainedModel,DepthEstimationPipeline,DepthProForDepthEstimation,DepthProPreTrainedModel,DetrFeatureExtractor,DetrForObjectDetection,DetrForSegmentation,DetrImageProcessor,DetrModel,DetrObjectDetectionOutput,DetrPreTrainedModel,DetrSegmentationOutput,Dinov2ForImageClassification,Dinov2Model,Dinov2PreTrainedModel,Dinov2WithRegistersForImageClassification,Dinov2WithRegistersModel,Dinov2WithRegistersPreTrainedModel,DistilBertForMaskedLM,DistilBertForQuestionAnswering,DistilBertForSequenceClassification,DistilBertForTokenClassification,DistilBertModel,DistilBertPreTrainedModel,DistilBertTokenizer,DocumentQuestionAnsweringPipeline,DonutFeatureExtractor,DonutImageProcessor,DonutSwinModel,DonutSwinPreTrainedModel,DynamicCache,EdgeTamModel,EfficientNetForImageClassification,EfficientNetImageProcessor,EfficientNetModel,EfficientNetPreTrainedModel,ElectraForMaskedLM,ElectraForQuestionAnswering,ElectraForSequenceClassification,ElectraForTokenClassification,ElectraModel,ElectraPreTrainedModel,ElectraTokenizer,EncodecFeatureExtractor,EosTokenCriteria,Ernie4_5ForCausalLM,Ernie4_5Model,Ernie4_5PretrainedModel,EsmForMaskedLM,EsmForSequenceClassification,EsmForTokenClassification,EsmModel,EsmPreTrainedModel,EsmTokenizer,ExaoneForCausalLM,ExaoneModel,ExaonePreTrainedModel,FalconForCausalLM,FalconH1ForCausalLM,FalconH1Model,FalconH1PreTrainedModel,FalconModel,FalconPreTrainedModel,FalconTokenizer,FastViTForImageClassification,FastViTModel,FastViTPreTrainedModel,FeatureExtractionPipeline,FeatureExtractor,FillMaskPipeline,Florence2ForConditionalGeneration,Florence2PreTrainedModel,Florence2Processor,ForcedBOSTokenLogitsProcessor,ForcedEOSTokenLogitsProcessor,GLPNFeatureExtractor,GLPNForDepthEstimation,GLPNModel,GLPNPreTrainedModel,GPT2LMHeadModel,GPT2Model,GPT2PreTrainedModel,GPT2Tokenizer,GPTBigCodeForCausalLM,GPTBigCodeModel,GPTBigCodePreTrainedModel,GPTJForCausalLM,GPTJModel,GPTJPreTrainedModel,GPTNeoForCausalLM,GPTNeoModel,GPTNeoPreTrainedModel,GPTNeoXForCausalLM,GPTNeoXModel,GPTNeoXPreTrainedModel,GPTNeoXTokenizer,Gemma2ForCausalLM,Gemma2Model,Gemma2PreTrainedModel,Gemma3ForCausalLM,Gemma3Model,Gemma3PreTrainedModel,Gemma3nAudioFeatureExtractor,Gemma3nForCausalLM,Gemma3nForConditionalGeneration,Gemma3nPreTrainedModel,Gemma3nProcessor,GemmaForCausalLM,GemmaModel,GemmaPreTrainedModel,GemmaTokenizer,GlmForCausalLM,GlmModel,GlmPreTrainedModel,GptOssForCausalLM,GptOssModel,GptOssPreTrainedModel,GraniteForCausalLM,GraniteModel,GraniteMoeHybridForCausalLM,GraniteMoeHybridModel,GraniteMoeHybridPreTrainedModel,GranitePreTrainedModel,GraniteSpeechFeatureExtractor,GraniteSpeechForConditionalGeneration,GraniteSpeechProcessor,GroundingDinoForObjectDetection,GroundingDinoImageProcessor,GroundingDinoPreTrainedModel,GroundingDinoProcessor,GroupViTModel,GroupViTPreTrainedModel,HeliumForCausalLM,HeliumModel,HeliumPreTrainedModel,HerbertTokenizer,HieraForImageClassification,HieraModel,HieraPreTrainedModel,HubertForCTC,HubertForSequenceClassification,HubertModel,HubertPreTrainedModel,HunYuanDenseV1ForCausalLM,HunYuanDenseV1Model,HunYuanDenseV1PreTrainedModel,IJepaForImageClassification,IJepaModel,IJepaPreTrainedModel,Idefics3ForConditionalGeneration,Idefics3ImageProcessor,Idefics3Processor,ImageClassificationPipeline,ImageFeatureExtractionPipeline,ImageFeatureExtractor,ImageProcessor,ImageSegmentationPipeline,ImageToImagePipeline,ImageToTextPipeline,InterruptableStoppingCriteria,JAISLMHeadModel,JAISModel,JAISPreTrainedModel,JinaCLIPImageProcessor,JinaCLIPModel,JinaCLIPPreTrainedModel,JinaCLIPProcessor,JinaCLIPTextModel,JinaCLIPVisionModel,Lfm2ForCausalLM,Lfm2Model,Lfm2MoeForCausalLM,Lfm2MoeModel,Lfm2MoePreTrainedModel,Lfm2PreTrainedModel,Lfm2VlForConditionalGeneration,Lfm2VlImageProcessor,Lfm2VlProcessor,LiteWhisperForConditionalGeneration,Llama4ForCausalLM,Llama4PreTrainedModel,LlamaForCausalLM,LlamaModel,LlamaPreTrainedModel,LlamaTokenizer,LlavaForConditionalGeneration,LlavaOnevisionForConditionalGeneration,LlavaOnevisionImageProcessor,LlavaPreTrainedModel,LlavaProcessor,LlavaQwen2ForCausalLM,LogLevel,LogitsProcessor,LogitsProcessorList,LogitsWarper,LongT5ForConditionalGeneration,LongT5Model,LongT5PreTrainedModel,M2M100ForConditionalGeneration,M2M100Model,M2M100PreTrainedModel,M2M100Tokenizer,MBart50Tokenizer,MBartForCausalLM,MBartForConditionalGeneration,MBartForSequenceClassification,MBartModel,MBartPreTrainedModel,MBartTokenizer,MPNetForMaskedLM,MPNetForQuestionAnswering,MPNetForSequenceClassification,MPNetForTokenClassification,MPNetModel,MPNetPreTrainedModel,MPNetTokenizer,MT5ForConditionalGeneration,MT5Model,MT5PreTrainedModel,MarianMTModel,MarianModel,MarianPreTrainedModel,MarianTokenizer,Mask2FormerImageProcessor,MaskFormerFeatureExtractor,MaskFormerForInstanceSegmentation,MaskFormerImageProcessor,MaskFormerModel,MaskFormerPreTrainedModel,MaxLengthCriteria,Metric3DForDepthEstimation,Metric3DPreTrainedModel,Metric3Dv2ForDepthEstimation,Metric3Dv2PreTrainedModel,MgpstrForSceneTextRecognition,MgpstrModelOutput,MgpstrPreTrainedModel,MgpstrProcessor,MgpstrTokenizer,MimiDecoderModel,MimiDecoderOutput,MimiEncoderModel,MimiEncoderOutput,MimiModel,MimiPreTrainedModel,MinLengthLogitsProcessor,MinNewTokensLengthLogitsProcessor,MistralForCausalLM,MistralModel,MistralPreTrainedModel,MobileBertForMaskedLM,MobileBertForQuestionAnswering,MobileBertForSequenceClassification,MobileBertModel,MobileBertPreTrainedModel,MobileBertTokenizer,MobileLLMForCausalLM,MobileLLMModel,MobileLLMPreTrainedModel,MobileNetV1FeatureExtractor,MobileNetV1ForImageClassification,MobileNetV1ForSemanticSegmentation,MobileNetV1ImageProcessor,MobileNetV1Model,MobileNetV1PreTrainedModel,MobileNetV2FeatureExtractor,MobileNetV2ForImageClassification,MobileNetV2ForSemanticSegmentation,MobileNetV2ImageProcessor,MobileNetV2Model,MobileNetV2PreTrainedModel,MobileNetV3FeatureExtractor,MobileNetV3ForImageClassification,MobileNetV3ForSemanticSegmentation,MobileNetV3ImageProcessor,MobileNetV3Model,MobileNetV3PreTrainedModel,MobileNetV4FeatureExtractor,MobileNetV4ForImageClassification,MobileNetV4ForSemanticSegmentation,MobileNetV4ImageProcessor,MobileNetV4Model,MobileNetV4PreTrainedModel,MobileViTFeatureExtractor,MobileViTForImageClassification,MobileViTImageProcessor,MobileViTModel,MobileViTPreTrainedModel,MobileViTV2ForImageClassification,MobileViTV2Model,MobileViTV2PreTrainedModel,ModelRegistry,ModernBertDecoderForCausalLM,ModernBertDecoderModel,ModernBertDecoderPreTrainedModel,ModernBertForMaskedLM,ModernBertForSequenceClassification,ModernBertForTokenClassification,ModernBertModel,ModernBertPreTrainedModel,Moondream1ForConditionalGeneration,MoonshineFeatureExtractor,MoonshineForConditionalGeneration,MoonshineModel,MoonshinePreTrainedModel,MoonshineProcessor,MptForCausalLM,MptModel,MptPreTrainedModel,MultiModalityCausalLM,MultiModalityPreTrainedModel,MusicgenForCausalLM,MusicgenForConditionalGeneration,MusicgenModel,MusicgenPreTrainedModel,NanoChatForCausalLM,NanoChatModel,NanoChatPreTrainedModel,NeoBertForMaskedLM,NeoBertForQuestionAnswering,NeoBertForSequenceClassification,NeoBertForTokenClassification,NeoBertModel,NeoBertPreTrainedModel,NllbTokenizer,NoBadWordsLogitsProcessor,NoRepeatNGramLogitsProcessor,NomicBertModel,NomicBertPreTrainedModel,NougatImageProcessor,NougatTokenizer,OPTForCausalLM,OPTModel,OPTPreTrainedModel,ObjectDetectionPipeline,Olmo2ForCausalLM,Olmo2Model,Olmo2PreTrainedModel,Olmo3ForCausalLM,Olmo3Model,Olmo3PreTrainedModel,OlmoForCausalLM,OlmoHybridForCausalLM,OlmoHybridModel,OlmoHybridPreTrainedModel,OlmoModel,OlmoPreTrainedModel,OpenELMForCausalLM,OpenELMModel,OpenELMPreTrainedModel,OwlViTFeatureExtractor,OwlViTForObjectDetection,OwlViTImageProcessor,OwlViTModel,OwlViTPreTrainedModel,OwlViTProcessor,Owlv2ForObjectDetection,Owlv2ImageProcessor,Owlv2Model,Owlv2PreTrainedModel,PaliGemmaForConditionalGeneration,PaliGemmaProcessor,ParakeetFeatureExtractor,ParakeetForCTC,ParakeetPreTrainedModel,PatchTSMixerForPrediction,PatchTSMixerModel,PatchTSMixerPreTrainedModel,PatchTSTForPrediction,PatchTSTModel,PatchTSTPreTrainedModel,Phi3ForCausalLM,Phi3Model,Phi3PreTrainedModel,Phi3VForCausalLM,Phi3VImageProcessor,Phi3VPreTrainedModel,Phi3VProcessor,PhiForCausalLM,PhiModel,PhiPreTrainedModel,PixtralImageProcessor,PixtralProcessor,PreTrainedModel,PreTrainedTokenizer,PretrainedConfig,Processor,PvtForImageClassification,PvtImageProcessor,PvtModel,PvtPreTrainedModel,PyAnnoteFeatureExtractor,PyAnnoteForAudioFrameClassification,PyAnnoteModel,PyAnnotePreTrainedModel,PyAnnoteProcessor,QuestionAnsweringPipeline,Qwen2ForCausalLM,Qwen2Model,Qwen2MoeForCausalLM,Qwen2MoeModel,Qwen2MoePreTrainedModel,Qwen2PreTrainedModel,Qwen2Tokenizer,Qwen2VLForCausalLM,Qwen2VLForConditionalGeneration,Qwen2VLImageProcessor,Qwen2VLPreTrainedModel,Qwen2VLProcessor,Qwen2_5_VLForCausalLM,Qwen2_5_VLForConditionalGeneration,Qwen2_5_VLProcessor,Qwen3ForCausalLM,Qwen3Model,Qwen3MoeForCausalLM,Qwen3MoeModel,Qwen3MoePreTrainedModel,Qwen3NextForCausalLM,Qwen3NextModel,Qwen3NextPreTrainedModel,Qwen3PreTrainedModel,Qwen3VLForCausalLM,Qwen3VLForConditionalGeneration,Qwen3VLMoeForCausalLM,Qwen3VLMoeForConditionalGeneration,Qwen3VLProcessor,Qwen3_5ForCausalLM,Qwen3_5ForConditionalGeneration,Qwen3_5MoeForCausalLM,Qwen3_5MoeForConditionalGeneration,RFDetrForObjectDetection,RFDetrModel,RFDetrObjectDetectionOutput,RFDetrPreTrainedModel,RTDetrForObjectDetection,RTDetrImageProcessor,RTDetrModel,RTDetrObjectDetectionOutput,RTDetrPreTrainedModel,RTDetrV2ForObjectDetection,RTDetrV2Model,RTDetrV2ObjectDetectionOutput,RTDetrV2PreTrainedModel,RawAudio,RawImage,RawVideo,RawVideoFrame,RepetitionPenaltyLogitsProcessor,ResNetForImageClassification,ResNetModel,ResNetPreTrainedModel,RoFormerForMaskedLM,RoFormerForQuestionAnswering,RoFormerForSequenceClassification,RoFormerForTokenClassification,RoFormerModel,RoFormerPreTrainedModel,RoFormerTokenizer,RobertaForMaskedLM,RobertaForQuestionAnswering,RobertaForSequenceClassification,RobertaForTokenClassification,RobertaModel,RobertaPreTrainedModel,RobertaTokenizer,Sam2ImageProcessor,Sam2ImageSegmentationOutput,Sam2Model,Sam2PreTrainedModel,Sam2Processor,Sam2VideoProcessor,Sam3ImageProcessor,Sam3TrackerModel,SamImageProcessor,SamImageSegmentationOutput,SamModel,SamPreTrainedModel,SamProcessor,SapiensFeatureExtractor,SapiensForDepthEstimation,SapiensForNormalEstimation,SapiensForSemanticSegmentation,SapiensImageProcessor,SapiensPreTrainedModel,SeamlessM4TFeatureExtractor,SegformerFeatureExtractor,SegformerForImageClassification,SegformerForSemanticSegmentation,SegformerImageProcessor,SegformerModel,SegformerPreTrainedModel,SiglipImageProcessor,SiglipModel,SiglipPreTrainedModel,SiglipTextModel,SiglipTokenizer,SiglipVisionModel,SmolLM3ForCausalLM,SmolLM3Model,SmolLM3PreTrainedModel,SmolVLMImageProcessor,SmolVLMProcessor,SnacDecoderModel,SnacEncoderModel,SnacFeatureExtractor,SnacModel,SnacPreTrainedModel,SpeechT5FeatureExtractor,SpeechT5ForSpeechToText,SpeechT5ForTextToSpeech,SpeechT5HifiGan,SpeechT5Model,SpeechT5PreTrainedModel,SpeechT5Processor,SpeechT5Tokenizer,SqueezeBertForMaskedLM,SqueezeBertForQuestionAnswering,SqueezeBertForSequenceClassification,SqueezeBertModel,SqueezeBertPreTrainedModel,SqueezeBertTokenizer,StableLmForCausalLM,StableLmModel,StableLmPreTrainedModel,Starcoder2ForCausalLM,Starcoder2Model,Starcoder2PreTrainedModel,StoppingCriteria,StoppingCriteriaList,StyleTextToSpeech2Model,StyleTextToSpeech2PreTrainedModel,SummarizationPipeline,SupertonicForConditionalGeneration,SupertonicPreTrainedModel,SuppressTokensAtBeginLogitsProcessor,Swin2SRForImageSuperResolution,Swin2SRImageProcessor,Swin2SRModel,Swin2SRPreTrainedModel,SwinForImageClassification,SwinForSemanticSegmentation,SwinModel,SwinPreTrainedModel,T5ForConditionalGeneration,T5Model,T5PreTrainedModel,T5Tokenizer,TableTransformerForObjectDetection,TableTransformerModel,TableTransformerObjectDetectionOutput,TableTransformerPreTrainedModel,TemperatureLogitsWarper,Tensor,Text2TextGenerationPipeline,TextClassificationPipeline,TextGenerationPipeline,TextStreamer,TextToAudioPipeline,TokenClassificationPipeline,TokenizersBackend,TopKLogitsWarper,TopPLogitsWarper,TrOCRForCausalLM,TrOCRPreTrainedModel,TranslationPipeline,UltravoxModel,UltravoxPreTrainedModel,UltravoxProcessor,UniSpeechForCTC,UniSpeechForSequenceClassification,UniSpeechModel,UniSpeechPreTrainedModel,UniSpeechSatForAudioFrameClassification,UniSpeechSatForCTC,UniSpeechSatForSequenceClassification,UniSpeechSatModel,UniSpeechSatPreTrainedModel,VLChatProcessor,VLMImageProcessor,VaultGemmaForCausalLM,VaultGemmaModel,VaultGemmaPreTrainedModel,ViTFeatureExtractor,ViTForImageClassification,ViTImageProcessor,ViTMAEModel,ViTMAEPreTrainedModel,ViTMSNForImageClassification,ViTMSNModel,ViTMSNPreTrainedModel,ViTModel,ViTPreTrainedModel,VisionEncoderDecoderModel,VitMatteForImageMatting,VitMatteImageProcessor,VitMattePreTrainedModel,VitPoseForPoseEstimation,VitPoseImageProcessor,VitPosePreTrainedModel,VitsModel,VitsModelOutput,VitsPreTrainedModel,VitsTokenizer,VoxtralForConditionalGeneration,VoxtralProcessor,VoxtralRealtimeFeatureExtractor,VoxtralRealtimeForConditionalGeneration,VoxtralRealtimePreTrainedModel,VoxtralRealtimeProcessor,Wav2Vec2BertForCTC,Wav2Vec2BertForSequenceClassification,Wav2Vec2BertModel,Wav2Vec2BertPreTrainedModel,Wav2Vec2CTCTokenizer,Wav2Vec2FeatureExtractor,Wav2Vec2ForAudioFrameClassification,Wav2Vec2ForCTC,Wav2Vec2ForSequenceClassification,Wav2Vec2Model,Wav2Vec2PreTrainedModel,Wav2Vec2Processor,Wav2Vec2ProcessorWithLM,WavLMForAudioFrameClassification,WavLMForCTC,WavLMForSequenceClassification,WavLMForXVector,WavLMModel,WavLMPreTrainedModel,WeSpeakerFeatureExtractor,WeSpeakerResNetModel,WeSpeakerResNetPreTrainedModel,WhisperFeatureExtractor,WhisperForConditionalGeneration,WhisperModel,WhisperPreTrainedModel,WhisperProcessor,WhisperTextStreamer,WhisperTimeStampLogitsProcessor,WhisperTokenizer,XLMForQuestionAnswering,XLMForSequenceClassification,XLMForTokenClassification,XLMModel,XLMPreTrainedModel,XLMRobertaForMaskedLM,XLMRobertaForQuestionAnswering,XLMRobertaForSequenceClassification,XLMRobertaForTokenClassification,XLMRobertaModel,XLMRobertaPreTrainedModel,XLMRobertaTokenizer,XLMTokenizer,XLMWithLMHeadModel,XVectorOutput,YolosFeatureExtractor,YolosForObjectDetection,YolosImageProcessor,YolosModel,YolosObjectDetectionOutput,YolosPreTrainedModel,YoutuForCausalLM,YoutuModel,YoutuPreTrainedModel,ZeroShotAudioClassificationPipeline,ZeroShotClassificationPipeline,ZeroShotImageClassificationPipeline,ZeroShotObjectDetectionPipeline,cat,cos_sim,dot,env,full,full_like,interpolate,interpolate_4d,layer_norm,load_image,load_video,log_softmax,matmul,mean,mean_pooling,ones,ones_like,permute,pipeline,quantize_embeddings,rand,randn,random,read_audio,rfft,slice,softmax,stack,std_mean,topk,zeros,zeros_like});