diff --git a/stable b/stable index 629510306..c182623d1 120000 --- a/stable +++ b/stable @@ -1 +1 @@ -v0.51.0 \ No newline at end of file +v0.52.0 \ No newline at end of file diff --git a/v0.52 b/v0.52 new file mode 120000 index 000000000..c182623d1 --- /dev/null +++ b/v0.52 @@ -0,0 +1 @@ +v0.52.0 \ No newline at end of file diff --git a/v0.52.0/404.html b/v0.52.0/404.html new file mode 100644 index 000000000..978cc3ba1 --- /dev/null +++ b/v0.52.0/404.html @@ -0,0 +1,21 @@ + + + + + + 404 | PromptingTools.jl + + + + + + + + + + +
+ + + + \ No newline at end of file diff --git a/v0.52.0/assets/app.DdT6vy3O.js b/v0.52.0/assets/app.DdT6vy3O.js new file mode 100644 index 000000000..b2c821037 --- /dev/null +++ b/v0.52.0/assets/app.DdT6vy3O.js @@ -0,0 +1,110 @@ +import { R as RawTheme } from "./chunks/theme.B5V8JnTZ.js"; +import { R as inBrowser, a6 as useUpdateHead, a7 as RouterSymbol, a8 as initData, a9 as dataSymbol, aa as Content, ab as ClientOnly, ac as siteDataRef, ad as createSSRApp, ae as createRouter, af as pathToFile, d as defineComponent, u as useData, v as onMounted, s as watchEffect, ag as usePrefetch, ah as useCopyCode, ai as useCodeGroups, a4 as h } from "./chunks/framework.CTxMrREi.js"; +function resolveThemeExtends(theme) { + if (theme.extends) { + const base = resolveThemeExtends(theme.extends); + return { + ...base, + ...theme, + async enhanceApp(ctx) { + if (base.enhanceApp) + await base.enhanceApp(ctx); + if (theme.enhanceApp) + await theme.enhanceApp(ctx); + } + }; + } + return theme; +} +const Theme = resolveThemeExtends(RawTheme); +const VitePressApp = defineComponent({ + name: "VitePressApp", + setup() { + const { site, lang, dir } = useData(); + onMounted(() => { + watchEffect(() => { + document.documentElement.lang = lang.value; + document.documentElement.dir = dir.value; + }); + }); + if (site.value.router.prefetchLinks) { + usePrefetch(); + } + useCopyCode(); + useCodeGroups(); + if (Theme.setup) + Theme.setup(); + return () => h(Theme.Layout); + } +}); +async function createApp() { + globalThis.__VITEPRESS__ = true; + const router = newRouter(); + const app = newApp(); + app.provide(RouterSymbol, router); + const data = initData(router.route); + app.provide(dataSymbol, data); + app.component("Content", Content); + app.component("ClientOnly", ClientOnly); + Object.defineProperties(app.config.globalProperties, { + $frontmatter: { + get() { + return data.frontmatter.value; + } + }, + $params: { + get() { + return data.page.value.params; + } + } + }); + if (Theme.enhanceApp) { + await Theme.enhanceApp({ + app, + router, + siteData: siteDataRef + }); + } + return { app, router, data }; +} +function newApp() { + return createSSRApp(VitePressApp); +} +function newRouter() { + let isInitialPageLoad = inBrowser; + let initialPath; + return createRouter((path) => { + let pageFilePath = pathToFile(path); + let pageModule = null; + if (pageFilePath) { + if (isInitialPageLoad) { + initialPath = pageFilePath; + } + if (isInitialPageLoad || initialPath === pageFilePath) { + pageFilePath = pageFilePath.replace(/\.js$/, ".lean.js"); + } + if (false) ; + else { + pageModule = import( + /*@vite-ignore*/ + pageFilePath + ); + } + } + if (inBrowser) { + isInitialPageLoad = false; + } + return pageModule; + }, Theme.NotFound); +} +if (inBrowser) { + createApp().then(({ app, router, data }) => { + router.go().then(() => { + useUpdateHead(router.route, data.site); + app.mount("#app"); + }); + }); +} +export { + createApp +}; diff --git a/v0.52.0/assets/chunks/@localSearchIndexroot.BEn6dwOI.js b/v0.52.0/assets/chunks/@localSearchIndexroot.BEn6dwOI.js new file mode 100644 index 000000000..051d27626 --- /dev/null +++ b/v0.52.0/assets/chunks/@localSearchIndexroot.BEn6dwOI.js @@ -0,0 +1,4 @@ +const _localSearchIndexroot = '{"documentCount":182,"nextId":182,"documentIds":{"0":"/PromptingTools.jl/v0.52.0/coverage_of_model_providers#Coverage-of-Model-Providers","1":"/PromptingTools.jl/v0.52.0/examples/building_RAG#Building-a-Simple-Retrieval-Augmented-Generation-(RAG)-System-with-RAGTools","2":"/PromptingTools.jl/v0.52.0/examples/building_RAG#RAG-in-Two-Lines","3":"/PromptingTools.jl/v0.52.0/examples/building_RAG#Evaluations","4":"/PromptingTools.jl/v0.52.0/examples/building_RAG#Generate-Q-and-A-pairs","5":"/PromptingTools.jl/v0.52.0/examples/building_RAG#Explore-one-Q-and-A-pair","6":"/PromptingTools.jl/v0.52.0/examples/building_RAG#Evaluate-this-Q-and-A-pair","7":"/PromptingTools.jl/v0.52.0/examples/building_RAG#Evaluate-the-Whole-Set","8":"/PromptingTools.jl/v0.52.0/examples/building_RAG#What-would-we-do-next?","9":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Various-Examples","10":"/PromptingTools.jl/v0.52.0/examples/readme_examples#ai*-Functions-Overview","11":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Seamless-Integration-Into-Your-Workflow","12":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Advanced-Prompts-/-Conversations","13":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Templated-Prompts","14":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Asynchronous-Execution","15":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Model-Aliases","16":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Embeddings","17":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Classification","18":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Routing-to-Defined-Categories","19":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Data-Extraction","20":"/PromptingTools.jl/v0.52.0/examples/readme_examples#OCR-and-Image-Comprehension","21":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Experimental-Agent-Workflows-/-Output-Validation-with-airetry!","22":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Using-Ollama-models","23":"/PromptingTools.jl/v0.52.0/examples/readme_examples#Using-MistralAI-API-and-other-OpenAI-compatible-APIs","24":"/PromptingTools.jl/v0.52.0/examples/working_with_aitemplates#Using-AITemplates","25":"/PromptingTools.jl/v0.52.0/examples/working_with_custom_apis#Custom-APIs","26":"/PromptingTools.jl/v0.52.0/examples/working_with_custom_apis#Using-MistralAI","27":"/PromptingTools.jl/v0.52.0/examples/working_with_custom_apis#Using-other-OpenAI-compatible-APIs","28":"/PromptingTools.jl/v0.52.0/examples/working_with_custom_apis#Using-llama.cpp-server","29":"/PromptingTools.jl/v0.52.0/examples/working_with_custom_apis#Using-Databricks-Foundation-Models","30":"/PromptingTools.jl/v0.52.0/examples/working_with_custom_apis#Using-Together.ai","31":"/PromptingTools.jl/v0.52.0/examples/working_with_custom_apis#Using-Fireworks.ai","32":"/PromptingTools.jl/v0.52.0/examples/working_with_google_ai_studio#Working-with-Google-AI-Studio","33":"/PromptingTools.jl/v0.52.0/examples/working_with_google_ai_studio#Text-Generation-with-aigenerate","34":"/PromptingTools.jl/v0.52.0/examples/working_with_google_ai_studio#Simple-message","35":"/PromptingTools.jl/v0.52.0/examples/working_with_google_ai_studio#Advanced-Prompts","36":"/PromptingTools.jl/v0.52.0/examples/working_with_google_ai_studio#Gotchas","37":"/PromptingTools.jl/v0.52.0/examples/working_with_ollama#Local-models-with-Ollama.ai","38":"/PromptingTools.jl/v0.52.0/examples/working_with_ollama#Text-Generation-with-aigenerate","39":"/PromptingTools.jl/v0.52.0/examples/working_with_ollama#Simple-message","40":"/PromptingTools.jl/v0.52.0/examples/working_with_ollama#Standard-string-interpolation","41":"/PromptingTools.jl/v0.52.0/examples/working_with_ollama#Advanced-Prompts","42":"/PromptingTools.jl/v0.52.0/examples/working_with_ollama#Schema-Changes-/-Custom-models","43":"/PromptingTools.jl/v0.52.0/examples/working_with_ollama#Providing-Images-with-aiscan","44":"/PromptingTools.jl/v0.52.0/examples/working_with_ollama#Embeddings-with-aiembed","45":"/PromptingTools.jl/v0.52.0/examples/working_with_ollama#Simple-embedding-for-one-document","46":"/PromptingTools.jl/v0.52.0/examples/working_with_ollama#Multiple-documents-embedding","47":"/PromptingTools.jl/v0.52.0/examples/working_with_ollama#Using-postprocessing-function","48":"/PromptingTools.jl/v0.52.0/extra_tools/agent_tools_intro#Agent-Tools-Introduction","49":"/PromptingTools.jl/v0.52.0/extra_tools/agent_tools_intro#Highlights","50":"/PromptingTools.jl/v0.52.0/extra_tools/agent_tools_intro#Examples","51":"/PromptingTools.jl/v0.52.0/extra_tools/agent_tools_intro#Automatic-Fixing-of-AI-Calls","52":"/PromptingTools.jl/v0.52.0/extra_tools/agent_tools_intro#References","53":"/PromptingTools.jl/v0.52.0/extra_tools/api_tools_intro#APITools-Introduction","54":"/PromptingTools.jl/v0.52.0/extra_tools/api_tools_intro#Highlights","55":"/PromptingTools.jl/v0.52.0/extra_tools/api_tools_intro#References","56":"/PromptingTools.jl/v0.52.0/extra_tools/rag_tools_intro#RAG-Tools-Introduction","57":"/PromptingTools.jl/v0.52.0/extra_tools/rag_tools_intro#Highlights","58":"/PromptingTools.jl/v0.52.0/extra_tools/rag_tools_intro#Examples","59":"/PromptingTools.jl/v0.52.0/extra_tools/rag_tools_intro#RAG-Interface","60":"/PromptingTools.jl/v0.52.0/extra_tools/rag_tools_intro#System-Overview","61":"/PromptingTools.jl/v0.52.0/extra_tools/rag_tools_intro#RAG-Diagram","62":"/PromptingTools.jl/v0.52.0/extra_tools/rag_tools_intro#Passing-Keyword-Arguments","63":"/PromptingTools.jl/v0.52.0/extra_tools/rag_tools_intro#Deepdive","64":"/PromptingTools.jl/v0.52.0/extra_tools/rag_tools_intro#References","65":"/PromptingTools.jl/v0.52.0/extra_tools/text_utilities_intro#Text-Utilities","66":"/PromptingTools.jl/v0.52.0/extra_tools/text_utilities_intro#Highlights","67":"/PromptingTools.jl/v0.52.0/extra_tools/text_utilities_intro#References","68":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Frequently-Asked-Questions","69":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Why-OpenAI","70":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#What-if-I-cannot-access-OpenAI?","71":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Data-Privacy-and-OpenAI","72":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Creating-OpenAI-API-Key","73":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#getting-an-error-argumenterror-api-key-cannot-be-empty-despite-having-set-openai-api-key-getting-an-error-argumenterror-apikey-cannot-be-empty-despite-having-set-openaiapi-key","74":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Getting-an-error-"Rate-limit-exceeded"-from-OpenAI?","75":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Getting-the-error-"429-Too-Many-Requests"?","76":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Setting-OpenAI-Spending-Limits","77":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#How-much-does-it-cost?-Is-it-worth-paying-for?","78":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Configuring-the-Environment-Variable-for-API-Key","79":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Setting-the-API-Key-via-Preferences.jl","80":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Understanding-the-API-Keyword-Arguments-in-aigenerate-(api_kwargs)","81":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Instant-Access-from-Anywhere","82":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Open-Source-Alternatives","83":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Setup-Guide-for-Ollama","84":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Changing-the-Default-Model-or-Schema","85":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#How-to-have-Multi-turn-Conversations?","86":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#How-to-have-typed-responses?","87":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#How-to-quickly-create-a-prompt-template?","88":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Do-we-have-a-RecursiveCharacterTextSplitter-like-Langchain?","89":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#How-would-I-fine-tune-a-model?","90":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Can-I-see-how-my-prompt-is-rendered-/-what-is-sent-to-the-API?","91":"/PromptingTools.jl/v0.52.0/frequently_asked_questions#Automatic-Logging-/-Tracing","92":"/PromptingTools.jl/v0.52.0/getting_started#Getting-Started","93":"/PromptingTools.jl/v0.52.0/getting_started#Prerequisites","94":"/PromptingTools.jl/v0.52.0/getting_started#Installation","95":"/PromptingTools.jl/v0.52.0/getting_started#Quick-Start-with-@ai_str","96":"/PromptingTools.jl/v0.52.0/getting_started#Using-aigenerate-with-placeholders","97":"/PromptingTools.jl/v0.52.0/how_it_works#How-It-Works","98":"/PromptingTools.jl/v0.52.0/how_it_works#Key-Concepts","99":"/PromptingTools.jl/v0.52.0/how_it_works#API/Model-Providers","100":"/PromptingTools.jl/v0.52.0/how_it_works#Schemas","101":"/PromptingTools.jl/v0.52.0/how_it_works#Prompts","102":"/PromptingTools.jl/v0.52.0/how_it_works#Messages","103":"/PromptingTools.jl/v0.52.0/how_it_works#Prompt-Templates","104":"/PromptingTools.jl/v0.52.0/how_it_works#ai*-Functions-Overview","105":"/PromptingTools.jl/v0.52.0/how_it_works#Walkthrough-Example-for-aigenerate","106":"/PromptingTools.jl/v0.52.0/how_it_works#Walkthrough-Example-for-aiextract","107":"/PromptingTools.jl/v0.52.0/prompts/RAG#Basic-Rag-Templates","108":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGAnswerFromContext","109":"/PromptingTools.jl/v0.52.0/prompts/RAG#Ranking-Templates","110":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGRankGPT","111":"/PromptingTools.jl/v0.52.0/prompts/RAG#Metadata-Templates","112":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGExtractMetadataLong","113":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGExtractMetadataShort","114":"/PromptingTools.jl/v0.52.0/prompts/RAG#Refinement-Templates","115":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGAnswerRefiner","116":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGWebSearchRefiner","117":"/PromptingTools.jl/v0.52.0/prompts/RAG#Evaluation-Templates","118":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGCreateQAFromContext","119":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGJudgeAnswerFromContext","120":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGJudgeAnswerFromContextShort","121":"/PromptingTools.jl/v0.52.0/prompts/RAG#Query-Transformations-Templates","122":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGJuliaQueryHyDE","123":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGQueryHyDE","124":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGQueryKeywordExpander","125":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGQueryOptimizer","126":"/PromptingTools.jl/v0.52.0/prompts/RAG#Template:-RAGQuerySimplifier","127":"/PromptingTools.jl/v0.52.0/prompts/agents#Code-Fixing-Templates","128":"/PromptingTools.jl/v0.52.0/prompts/agents#Template:-CodeFixerRCI","129":"/PromptingTools.jl/v0.52.0/prompts/agents#Template:-CodeFixerShort","130":"/PromptingTools.jl/v0.52.0/prompts/agents#Template:-CodeFixerTiny","131":"/PromptingTools.jl/v0.52.0/prompts/agents#Feedback-Templates","132":"/PromptingTools.jl/v0.52.0/prompts/agents#Template:-FeedbackFromEvaluator","133":"/PromptingTools.jl/v0.52.0/prompts/classification#Classification-Templates","134":"/PromptingTools.jl/v0.52.0/prompts/classification#Template:-InputClassifier","135":"/PromptingTools.jl/v0.52.0/prompts/classification#Template:-JudgeIsItTrue","136":"/PromptingTools.jl/v0.52.0/prompts/classification#Template:-QuestionRouter","137":"/PromptingTools.jl/v0.52.0/prompts/critic#Critic-Templates","138":"/PromptingTools.jl/v0.52.0/prompts/critic#Template:-ChiefEditorTranscriptCritic","139":"/PromptingTools.jl/v0.52.0/prompts/critic#Template:-GenericTranscriptCritic","140":"/PromptingTools.jl/v0.52.0/prompts/critic#Template:-JuliaExpertTranscriptCritic","141":"/PromptingTools.jl/v0.52.0/prompts/extraction#Xml-Formatted-Templates","142":"/PromptingTools.jl/v0.52.0/prompts/extraction#Template:-ExtractDataCoTXML","143":"/PromptingTools.jl/v0.52.0/prompts/extraction#Template:-ExtractDataXML","144":"/PromptingTools.jl/v0.52.0/prompts/extraction#Extraction-Templates","145":"/PromptingTools.jl/v0.52.0/prompts/extraction#Template:-ExtractData","146":"/PromptingTools.jl/v0.52.0/prompts/general#General-Templates","147":"/PromptingTools.jl/v0.52.0/prompts/general#Template:-BlankSystemUser","148":"/PromptingTools.jl/v0.52.0/prompts/general#Template:-PromptEngineerForTask","149":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Persona-Task-Templates","150":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-AnalystChaptersInTranscript","151":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-AnalystDecisionsInTranscript","152":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-AnalystThemesInResponses","153":"/PromptingTools.jl/v0.52.0/prompts/persona-task#theme-1-theme-description","154":"/PromptingTools.jl/v0.52.0/prompts/persona-task#theme-2-theme-description","155":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-AssistantAsk","156":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-ConversationLabeler","157":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-DetailOrientedTask","158":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-DrafterEmailBrief","159":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-GenericTopicExpertAsk","160":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-GenericWriter","161":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-JavaScriptExpertAsk","162":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-JuliaBlogWriter","163":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-JuliaExpertAsk","164":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-JuliaExpertCoTTask","165":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-JuliaExpertTestCode","166":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-JuliaRecapCoTTask","167":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-JuliaRecapTask","168":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-LinuxBashExpertAsk","169":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-StorytellerExplainSHAP","170":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Xml-Formatted-Templates","171":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-JuliaExpertAskXML","172":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-JuliaExpertCoTTaskXML","173":"/PromptingTools.jl/v0.52.0/prompts/persona-task#Template:-JuliaExpertTestCodeXML","174":"/PromptingTools.jl/v0.52.0/prompts/visual#Visual-Templates","175":"/PromptingTools.jl/v0.52.0/prompts/visual#Template:-BlogTitleImageGenerator","176":"/PromptingTools.jl/v0.52.0/prompts/visual#Template:-OCRTask","177":"/PromptingTools.jl/v0.52.0/reference_agenttools#Reference-for-AgentTools","178":"/PromptingTools.jl/v0.52.0/reference_apitools#Reference-for-APITools","179":"/PromptingTools.jl/v0.52.0/reference#Reference","180":"/PromptingTools.jl/v0.52.0/reference_experimental#Reference-for-Experimental-Module","181":"/PromptingTools.jl/v0.52.0/reference_ragtools#Reference-for-RAGTools"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[4,1,158],"1":[10,1,78],"2":[4,10,197],"3":[1,1,40],"4":[5,1,74],"5":[6,1,68],"6":[6,1,180],"7":[4,1,366],"8":[6,1,111],"9":[2,1,1],"10":[3,2,306],"11":[5,2,128],"12":[3,2,152],"13":[2,2,161],"14":[2,2,40],"15":[2,2,97],"16":[1,2,65],"17":[1,2,97],"18":[4,3,81],"19":[2,2,158],"20":[4,2,103],"21":[8,2,274],"22":[3,2,108],"23":[8,2,195],"24":[2,1,322],"25":[2,1,27],"26":[2,2,145],"27":[5,2,87],"28":[4,2,118],"29":[4,2,85],"30":[3,2,109],"31":[3,2,162],"32":[5,1,83],"33":[4,5,14],"34":[2,8,55],"35":[2,8,90],"36":[1,8,59],"37":[5,1,147],"38":[4,5,1],"39":[2,8,51],"40":[3,8,35],"41":[2,8,122],"42":[4,8,134],"43":[4,5,40],"44":[3,5,1],"45":[5,7,42],"46":[3,7,53],"47":[3,7,61],"48":[3,1,37],"49":[1,3,185],"50":[1,3,1],"51":[5,4,227],"52":[1,3,919],"53":[2,1,23],"54":[1,2,41],"55":[1,2,87],"56":[3,1,99],"57":[1,3,91],"58":[1,3,375],"59":[2,3,1],"60":[2,4,195],"61":[2,4,79],"62":[3,5,105],"63":[1,4,165],"64":[1,3,779],"65":[2,1,28],"66":[1,2,126],"67":[1,2,513],"68":[3,1,1],"69":[2,3,54],"70":[7,5,36],"71":[4,3,65],"72":[4,3,54],"73":[19,3,120],"74":[10,3,151],"75":[9,3,87],"76":[4,3,57],"77":[10,3,99],"78":[7,3,97],"79":[7,3,41],"80":[10,3,8],"81":[4,3,47],"82":[3,3,31],"83":[4,3,108],"84":[6,3,83],"85":[7,3,120],"86":[6,3,256],"87":[8,3,193],"88":[8,3,70],"89":[8,3,87],"90":[14,3,155],"91":[3,3,141],"92":[2,1,1],"93":[1,2,112],"94":[1,2,37],"95":[5,2,112],"96":[4,2,101],"97":[3,1,49],"98":[2,3,91],"99":[3,5,56],"100":[1,5,77],"101":[1,5,61],"102":[1,5,77],"103":[2,5,139],"104":[3,5,308],"105":[4,3,203],"106":[4,3,451],"107":[3,1,1],"108":[2,3,61],"109":[2,1,1],"110":[2,2,90],"111":[2,1,1],"112":[2,2,160],"113":[2,2,66],"114":[2,1,1],"115":[2,2,111],"116":[2,2,119],"117":[2,1,1],"118":[2,2,140],"119":[2,2,116],"120":[2,2,63],"121":[3,1,1],"122":[2,3,85],"123":[2,3,83],"124":[2,3,122],"125":[2,3,85],"126":[2,3,65],"127":[3,1,1],"128":[2,3,236],"129":[2,3,126],"130":[2,3,60],"131":[2,1,1],"132":[2,2,23],"133":[2,1,1],"134":[2,2,73],"135":[2,2,41],"136":[2,2,101],"137":[2,1,1],"138":[2,2,188],"139":[2,2,136],"140":[2,2,178],"141":[3,1,1],"142":[2,3,101],"143":[2,3,83],"144":[2,1,1],"145":[2,2,74],"146":[2,1,1],"147":[2,2,35],"148":[2,2,71],"149":[3,1,1],"150":[2,3,198],"151":[2,3,207],"152":[2,3,124],"153":[4,1,5],"154":[4,1,36],"155":[2,4,47],"156":[2,4,108],"157":[2,4,46],"158":[2,4,160],"159":[2,4,65],"160":[2,4,65],"161":[2,4,63],"162":[2,4,118],"163":[2,4,51],"164":[2,4,85],"165":[2,4,171],"166":[2,4,168],"167":[2,4,174],"168":[2,4,66],"169":[2,4,175],"170":[3,4,1],"171":[2,6,60],"172":[2,6,96],"173":[2,6,181],"174":[2,1,1],"175":[2,2,76],"176":[2,2,51],"177":[3,1,1182],"178":[3,1,101],"179":[1,1,2712],"180":[4,1,68],"181":[3,1,1818]},"averageFieldLength":[3.1648351648351647,2.868131868131868,136.14285714285717],"storedFields":{"0":{"title":"Coverage of Model Providers","titles":[]},"1":{"title":"Building a Simple Retrieval-Augmented Generation (RAG) System with RAGTools","titles":[]},"2":{"title":"RAG in Two Lines","titles":["Building a Simple Retrieval-Augmented Generation (RAG) System with RAGTools"]},"3":{"title":"Evaluations","titles":[]},"4":{"title":"Generate Q&A pairs","titles":["Evaluations"]},"5":{"title":"Explore one Q&A pair","titles":["Evaluations"]},"6":{"title":"Evaluate this Q&A pair","titles":["Evaluations"]},"7":{"title":"Evaluate the Whole Set","titles":["Evaluations"]},"8":{"title":"What would we do next?","titles":[]},"9":{"title":"Various Examples","titles":[]},"10":{"title":"ai* Functions Overview","titles":["Various Examples"]},"11":{"title":"Seamless Integration Into Your Workflow","titles":["Various Examples"]},"12":{"title":"Advanced Prompts / Conversations","titles":["Various Examples"]},"13":{"title":"Templated Prompts","titles":["Various Examples"]},"14":{"title":"Asynchronous Execution","titles":["Various Examples"]},"15":{"title":"Model Aliases","titles":["Various Examples"]},"16":{"title":"Embeddings","titles":["Various Examples"]},"17":{"title":"Classification","titles":["Various Examples"]},"18":{"title":"Routing to Defined Categories","titles":["Various Examples","Classification"]},"19":{"title":"Data Extraction","titles":["Various Examples"]},"20":{"title":"OCR and Image Comprehension","titles":["Various Examples"]},"21":{"title":"Experimental Agent Workflows / Output Validation with airetry!","titles":["Various Examples"]},"22":{"title":"Using Ollama models","titles":["Various Examples"]},"23":{"title":"Using MistralAI API and other OpenAI-compatible APIs","titles":["Various Examples"]},"24":{"title":"Using AITemplates","titles":[]},"25":{"title":"Custom APIs","titles":[]},"26":{"title":"Using MistralAI","titles":["Custom APIs"]},"27":{"title":"Using other OpenAI-compatible APIs","titles":["Custom APIs"]},"28":{"title":"Using llama.cpp server","titles":["Custom APIs"]},"29":{"title":"Using Databricks Foundation Models","titles":["Custom APIs"]},"30":{"title":"Using Together.ai","titles":["Custom APIs"]},"31":{"title":"Using Fireworks.ai","titles":["Custom APIs"]},"32":{"title":"Working with Google AI Studio","titles":[]},"33":{"title":"Text Generation with aigenerate","titles":["Working with Google AI Studio"]},"34":{"title":"Simple message","titles":["Working with Google AI Studio","Text Generation with aigenerate"]},"35":{"title":"Advanced Prompts","titles":["Working with Google AI Studio","Text Generation with aigenerate"]},"36":{"title":"Gotchas","titles":["Working with Google AI Studio","Text Generation with aigenerate"]},"37":{"title":"Local models with Ollama.ai","titles":[]},"38":{"title":"Text Generation with aigenerate","titles":["Local models with Ollama.ai"]},"39":{"title":"Simple message","titles":["Local models with Ollama.ai","Text Generation with aigenerate"]},"40":{"title":"Standard string interpolation","titles":["Local models with Ollama.ai","Text Generation with aigenerate"]},"41":{"title":"Advanced Prompts","titles":["Local models with Ollama.ai","Text Generation with aigenerate"]},"42":{"title":"Schema Changes / Custom models","titles":["Local models with Ollama.ai","Text Generation with aigenerate"]},"43":{"title":"Providing Images with aiscan","titles":["Local models with Ollama.ai"]},"44":{"title":"Embeddings with aiembed","titles":["Local models with Ollama.ai"]},"45":{"title":"Simple embedding for one document","titles":["Local models with Ollama.ai","Embeddings with aiembed"]},"46":{"title":"Multiple documents embedding","titles":["Local models with Ollama.ai","Embeddings with aiembed"]},"47":{"title":"Using postprocessing function","titles":["Local models with Ollama.ai","Embeddings with aiembed"]},"48":{"title":"Agent Tools Introduction","titles":[]},"49":{"title":"Highlights","titles":["Agent Tools Introduction"]},"50":{"title":"Examples","titles":["Agent Tools Introduction"]},"51":{"title":"Automatic Fixing of AI Calls","titles":["Agent Tools Introduction","Examples"]},"52":{"title":"References","titles":["Agent Tools Introduction"]},"53":{"title":"APITools Introduction","titles":[]},"54":{"title":"Highlights","titles":["APITools Introduction"]},"55":{"title":"References","titles":["APITools Introduction"]},"56":{"title":"RAG Tools Introduction","titles":[]},"57":{"title":"Highlights","titles":["RAG Tools Introduction"]},"58":{"title":"Examples","titles":["RAG Tools Introduction"]},"59":{"title":"RAG Interface","titles":["RAG Tools Introduction"]},"60":{"title":"System Overview","titles":["RAG Tools Introduction","RAG Interface"]},"61":{"title":"RAG Diagram","titles":["RAG Tools Introduction","RAG Interface"]},"62":{"title":"Passing Keyword Arguments","titles":["RAG Tools Introduction","RAG Interface","RAG Diagram"]},"63":{"title":"Deepdive","titles":["RAG Tools Introduction","RAG Interface"]},"64":{"title":"References","titles":["RAG Tools Introduction"]},"65":{"title":"Text Utilities","titles":[]},"66":{"title":"Highlights","titles":["Text Utilities"]},"67":{"title":"References","titles":["Text Utilities"]},"68":{"title":"Frequently Asked Questions","titles":[]},"69":{"title":"Why OpenAI","titles":["Frequently Asked Questions"]},"70":{"title":"What if I cannot access OpenAI?","titles":["Frequently Asked Questions","Why OpenAI"]},"71":{"title":"Data Privacy and OpenAI","titles":["Frequently Asked Questions"]},"72":{"title":"Creating OpenAI API Key","titles":["Frequently Asked Questions"]},"73":{"title":"Getting an error "ArgumentError: api_key cannot be empty" despite having set OPENAI_API_KEY? {#Getting-an-error-"ArgumentError:-apikey-cannot-be-empty"-despite-having-set-OPENAIAPI_KEY?}","titles":["Frequently Asked Questions"]},"74":{"title":"Getting an error "Rate limit exceeded" from OpenAI?","titles":["Frequently Asked Questions"]},"75":{"title":"Getting the error "429 Too Many Requests"?","titles":["Frequently Asked Questions"]},"76":{"title":"Setting OpenAI Spending Limits","titles":["Frequently Asked Questions"]},"77":{"title":"How much does it cost? Is it worth paying for?","titles":["Frequently Asked Questions"]},"78":{"title":"Configuring the Environment Variable for API Key","titles":["Frequently Asked Questions"]},"79":{"title":"Setting the API Key via Preferences.jl","titles":["Frequently Asked Questions"]},"80":{"title":"Understanding the API Keyword Arguments in aigenerate (api_kwargs)","titles":["Frequently Asked Questions"]},"81":{"title":"Instant Access from Anywhere","titles":["Frequently Asked Questions"]},"82":{"title":"Open Source Alternatives","titles":["Frequently Asked Questions"]},"83":{"title":"Setup Guide for Ollama","titles":["Frequently Asked Questions"]},"84":{"title":"Changing the Default Model or Schema","titles":["Frequently Asked Questions"]},"85":{"title":"How to have Multi-turn Conversations?","titles":["Frequently Asked Questions"]},"86":{"title":"How to have typed responses?","titles":["Frequently Asked Questions"]},"87":{"title":"How to quickly create a prompt template?","titles":["Frequently Asked Questions"]},"88":{"title":"Do we have a RecursiveCharacterTextSplitter like Langchain?","titles":["Frequently Asked Questions"]},"89":{"title":"How would I fine-tune a model?","titles":["Frequently Asked Questions"]},"90":{"title":"Can I see how my prompt is rendered / what is sent to the API?","titles":["Frequently Asked Questions"]},"91":{"title":"Automatic Logging / Tracing","titles":["Frequently Asked Questions"]},"92":{"title":"Getting Started","titles":[]},"93":{"title":"Prerequisites","titles":["Getting Started"]},"94":{"title":"Installation","titles":["Getting Started"]},"95":{"title":"Quick Start with @ai_str","titles":["Getting Started"]},"96":{"title":"Using aigenerate with placeholders","titles":["Getting Started"]},"97":{"title":"How It Works","titles":[]},"98":{"title":"Key Concepts","titles":["How It Works"]},"99":{"title":"API/Model Providers","titles":["How It Works","Key Concepts"]},"100":{"title":"Schemas","titles":["How It Works","Key Concepts"]},"101":{"title":"Prompts","titles":["How It Works","Key Concepts"]},"102":{"title":"Messages","titles":["How It Works","Key Concepts"]},"103":{"title":"Prompt Templates","titles":["How It Works","Key Concepts"]},"104":{"title":"ai* Functions Overview","titles":["How It Works","Key Concepts"]},"105":{"title":"Walkthrough Example for aigenerate","titles":["How It Works"]},"106":{"title":"Walkthrough Example for aiextract","titles":["How It Works"]},"107":{"title":"Basic-Rag Templates","titles":[]},"108":{"title":"Template: RAGAnswerFromContext","titles":["Basic-Rag Templates"]},"109":{"title":"Ranking Templates","titles":[]},"110":{"title":"Template: RAGRankGPT","titles":["Ranking Templates"]},"111":{"title":"Metadata Templates","titles":[]},"112":{"title":"Template: RAGExtractMetadataLong","titles":["Metadata Templates"]},"113":{"title":"Template: RAGExtractMetadataShort","titles":["Metadata Templates"]},"114":{"title":"Refinement Templates","titles":[]},"115":{"title":"Template: RAGAnswerRefiner","titles":["Refinement Templates"]},"116":{"title":"Template: RAGWebSearchRefiner","titles":["Refinement Templates"]},"117":{"title":"Evaluation Templates","titles":[]},"118":{"title":"Template: RAGCreateQAFromContext","titles":["Evaluation Templates"]},"119":{"title":"Template: RAGJudgeAnswerFromContext","titles":["Evaluation Templates"]},"120":{"title":"Template: RAGJudgeAnswerFromContextShort","titles":["Evaluation Templates"]},"121":{"title":"Query-Transformations Templates","titles":[]},"122":{"title":"Template: RAGJuliaQueryHyDE","titles":["Query-Transformations Templates"]},"123":{"title":"Template: RAGQueryHyDE","titles":["Query-Transformations Templates"]},"124":{"title":"Template: RAGQueryKeywordExpander","titles":["Query-Transformations Templates"]},"125":{"title":"Template: RAGQueryOptimizer","titles":["Query-Transformations Templates"]},"126":{"title":"Template: RAGQuerySimplifier","titles":["Query-Transformations Templates"]},"127":{"title":"Code-Fixing Templates","titles":[]},"128":{"title":"Template: CodeFixerRCI","titles":["Code-Fixing Templates"]},"129":{"title":"Template: CodeFixerShort","titles":["Code-Fixing Templates"]},"130":{"title":"Template: CodeFixerTiny","titles":["Code-Fixing Templates"]},"131":{"title":"Feedback Templates","titles":[]},"132":{"title":"Template: FeedbackFromEvaluator","titles":["Feedback Templates"]},"133":{"title":"Classification Templates","titles":[]},"134":{"title":"Template: InputClassifier","titles":["Classification Templates"]},"135":{"title":"Template: JudgeIsItTrue","titles":["Classification Templates"]},"136":{"title":"Template: QuestionRouter","titles":["Classification Templates"]},"137":{"title":"Critic Templates","titles":[]},"138":{"title":"Template: ChiefEditorTranscriptCritic","titles":["Critic Templates"]},"139":{"title":"Template: GenericTranscriptCritic","titles":["Critic Templates"]},"140":{"title":"Template: JuliaExpertTranscriptCritic","titles":["Critic Templates"]},"141":{"title":"Xml-Formatted Templates","titles":[]},"142":{"title":"Template: ExtractDataCoTXML","titles":["Xml-Formatted Templates"]},"143":{"title":"Template: ExtractDataXML","titles":["Xml-Formatted Templates"]},"144":{"title":"Extraction Templates","titles":[]},"145":{"title":"Template: ExtractData","titles":["Extraction Templates"]},"146":{"title":"General Templates","titles":[]},"147":{"title":"Template: BlankSystemUser","titles":["General Templates"]},"148":{"title":"Template: PromptEngineerForTask","titles":["General Templates"]},"149":{"title":"Persona-Task Templates","titles":[]},"150":{"title":"Template: AnalystChaptersInTranscript","titles":["Persona-Task Templates"]},"151":{"title":"Template: AnalystDecisionsInTranscript","titles":["Persona-Task Templates"]},"152":{"title":"Template: AnalystThemesInResponses","titles":["Persona-Task Templates"]},"153":{"title":"Theme 1: [Theme Description]","titles":[]},"154":{"title":"Theme 2: [Theme Description]","titles":[]},"155":{"title":"Template: AssistantAsk","titles":["Theme 2: [Theme Description]"]},"156":{"title":"Template: ConversationLabeler","titles":["Theme 2: [Theme Description]"]},"157":{"title":"Template: DetailOrientedTask","titles":["Theme 2: [Theme Description]"]},"158":{"title":"Template: DrafterEmailBrief","titles":["Theme 2: [Theme Description]"]},"159":{"title":"Template: GenericTopicExpertAsk","titles":["Theme 2: [Theme Description]"]},"160":{"title":"Template: GenericWriter","titles":["Theme 2: [Theme Description]"]},"161":{"title":"Template: JavaScriptExpertAsk","titles":["Theme 2: [Theme Description]"]},"162":{"title":"Template: JuliaBlogWriter","titles":["Theme 2: [Theme Description]"]},"163":{"title":"Template: JuliaExpertAsk","titles":["Theme 2: [Theme Description]"]},"164":{"title":"Template: JuliaExpertCoTTask","titles":["Theme 2: [Theme Description]"]},"165":{"title":"Template: JuliaExpertTestCode","titles":["Theme 2: [Theme Description]"]},"166":{"title":"Template: JuliaRecapCoTTask","titles":["Theme 2: [Theme Description]"]},"167":{"title":"Template: JuliaRecapTask","titles":["Theme 2: [Theme Description]"]},"168":{"title":"Template: LinuxBashExpertAsk","titles":["Theme 2: [Theme Description]"]},"169":{"title":"Template: StorytellerExplainSHAP","titles":["Theme 2: [Theme Description]"]},"170":{"title":"Xml-Formatted Templates","titles":["Theme 2: [Theme Description]"]},"171":{"title":"Template: JuliaExpertAskXML","titles":["Theme 2: [Theme Description]","Xml-Formatted Templates"]},"172":{"title":"Template: JuliaExpertCoTTaskXML","titles":["Theme 2: [Theme Description]","Xml-Formatted Templates"]},"173":{"title":"Template: JuliaExpertTestCodeXML","titles":["Theme 2: [Theme Description]","Xml-Formatted Templates"]},"174":{"title":"Visual Templates","titles":[]},"175":{"title":"Template: BlogTitleImageGenerator","titles":["Visual Templates"]},"176":{"title":"Template: OCRTask","titles":["Visual Templates"]},"177":{"title":"Reference for AgentTools","titles":[]},"178":{"title":"Reference for APITools","titles":[]},"179":{"title":"Reference","titles":[]},"180":{"title":"Reference for Experimental Module","titles":[]},"181":{"title":"Reference for RAGTools","titles":[]}},"dirtCount":0,"index":[["θ",{"2":{"177":1}}],["β",{"2":{"177":1}}],["α",{"2":{"177":2}}],["→",{"2":{"106":1}}],["zoom",{"2":{"106":1}}],["zshrc",{"2":{"78":1}}],["zero",{"2":{"67":1,"165":1,"173":1,"179":4}}],["~300",{"2":{"179":3}}],["~0",{"2":{"77":1}}],["~",{"2":{"73":1,"78":1,"81":1}}],["~word",{"2":{"64":1,"181":1}}],["~words",{"2":{"64":1,"181":1}}],["^",{"2":{"67":2,"179":2}}],["÷",{"2":{"52":1,"64":1,"177":1,"181":1}}],["├─",{"2":{"52":9,"177":11}}],["👋",{"2":{"179":1}}],["😊",{"2":{"42":1}}],["😃",{"2":{"2":1,"52":1,"177":1}}],["905",{"2":{"179":1}}],["909",{"2":{"156":1}}],["93",{"2":{"177":1}}],["911",{"2":{"106":2}}],["911t",{"2":{"86":2}}],["94",{"2":{"52":1,"177":1}}],["9999999999999982",{"2":{"47":1}}],["99",{"2":{"28":1,"177":1}}],["9",{"2":{"22":1,"23":1,"26":1,"31":1,"179":2,"181":4}}],["9examples",{"2":{"7":1}}],["|im",{"2":{"179":4}}],["|",{"2":{"21":2,"51":2,"52":1,"177":1}}],["|>",{"2":{"13":3,"20":1,"24":1,"51":1,"52":4,"67":1,"86":2,"91":4,"104":1,"177":5,"179":16,"181":1}}],["y`",{"2":{"166":1,"167":1}}],["yarrr",{"2":{"87":2,"179":2}}],["yay",{"2":{"52":1,"177":1}}],["y",{"2":{"52":2,"81":1,"177":4,"179":2,"181":2}}],["years",{"2":{"156":1}}],["yes",{"2":{"41":1,"88":1,"90":1,"96":1}}],["yedi",{"2":{"35":1,"41":2,"179":5}}],["yet",{"2":{"32":1,"52":3,"105":1,"139":1,"158":1,"177":2,"179":6,"180":1,"181":2}}],["yellow",{"2":{"21":2,"51":3,"52":5,"177":5}}],["york",{"2":{"179":4}}],["yoda",{"2":{"12":2,"35":1,"41":1,"179":5}}],["youtube",{"2":{"150":1,"151":1}}],["young",{"2":{"12":1,"35":1,"41":1,"179":1}}],["yours",{"2":{"179":10}}],["yourself",{"2":{"41":2}}],["your",{"0":{"11":1},"2":{"2":4,"4":1,"8":1,"10":1,"11":3,"12":1,"13":3,"15":1,"22":1,"23":3,"24":9,"26":1,"27":1,"28":1,"29":1,"32":2,"35":2,"37":2,"41":1,"42":1,"52":3,"56":1,"57":1,"60":1,"61":1,"64":5,"66":2,"71":5,"72":1,"73":2,"74":2,"75":4,"76":1,"77":1,"78":6,"79":2,"81":1,"83":2,"84":3,"85":2,"87":2,"89":1,"90":1,"91":2,"93":5,"94":1,"95":2,"98":1,"100":1,"102":1,"103":4,"104":1,"105":4,"106":3,"115":1,"116":1,"119":1,"122":1,"123":1,"125":2,"128":6,"129":1,"134":1,"136":1,"138":1,"139":2,"140":1,"142":1,"150":3,"151":4,"152":1,"155":2,"156":1,"157":1,"158":1,"159":5,"161":5,"163":2,"164":4,"165":3,"168":5,"169":2,"171":2,"172":4,"173":3,"177":3,"179":46,"181":13}}],["you",{"2":{"0":1,"1":2,"2":3,"4":2,"5":1,"7":6,"8":1,"10":9,"11":9,"12":11,"13":7,"14":2,"15":2,"16":2,"17":3,"18":1,"19":6,"20":4,"21":6,"22":5,"23":12,"24":32,"25":1,"26":9,"27":3,"28":5,"29":5,"30":9,"31":9,"32":2,"33":1,"34":4,"35":3,"37":4,"39":6,"40":2,"41":10,"42":9,"43":1,"46":3,"49":1,"51":4,"52":25,"54":1,"55":1,"56":1,"57":2,"58":7,"60":7,"62":4,"64":19,"66":2,"67":5,"69":1,"71":2,"72":1,"73":6,"74":11,"75":5,"76":3,"77":9,"78":5,"79":2,"81":1,"82":2,"83":7,"84":5,"85":4,"86":5,"87":21,"89":2,"90":3,"91":12,"93":5,"94":1,"95":3,"96":3,"98":4,"99":3,"100":1,"101":3,"102":1,"103":8,"104":8,"105":8,"106":19,"108":2,"110":1,"112":2,"113":2,"115":3,"116":3,"118":1,"124":2,"126":1,"128":4,"129":2,"130":2,"134":2,"135":1,"136":3,"138":1,"150":3,"151":1,"152":1,"154":1,"155":2,"157":1,"158":1,"159":1,"160":3,"161":1,"162":4,"163":2,"164":3,"165":3,"167":1,"168":1,"169":1,"171":2,"172":2,"173":3,"177":24,"178":1,"179":192,"181":36}}],["└─",{"2":{"52":9,"177":13}}],["└",{"2":{"11":1}}],["┌",{"2":{"11":1}}],["72",{"2":{"179":4}}],["74",{"2":{"96":1}}],["754",{"2":{"136":1}}],["75",{"2":{"64":1,"181":1}}],["77",{"2":{"52":1,"177":1}}],["786",{"2":{"129":1}}],["78",{"2":{"31":1}}],["787",{"2":{"16":1,"179":1}}],["70b",{"2":{"29":3}}],["7",{"2":{"11":1,"52":7,"58":1,"158":1,"177":8,"179":2,"181":4}}],["7examples",{"2":{"7":1}}],["`top",{"2":{"181":1}}],["`test",{"2":{"64":1,"181":1}}],["`textchunker",{"2":{"64":1,"181":1}}],["`build",{"2":{"181":1}}],["`begin`",{"2":{"166":1,"167":1}}],["`1",{"2":{"179":1}}],["`1+1`",{"2":{"179":5}}],["`2`",{"2":{"179":5}}],["`empty",{"2":{"179":2}}],["`error`",{"2":{"179":2}}],["`end`",{"2":{"166":1,"167":1}}],["`example`",{"2":{"24":2}}],["`$`",{"2":{"166":1,"167":1}}],["`$a+$a`",{"2":{"40":1,"179":6}}],["`while`",{"2":{"166":1,"167":1}}],["`function`",{"2":{"166":1,"167":1}}],["`function",{"2":{"166":1,"167":1}}],["`for`",{"2":{"166":1,"167":1}}],["`false`",{"2":{"106":1}}],["`fahrenheit`",{"2":{"19":1}}],["`image",{"2":{"179":2}}],["`isx",{"2":{"166":1,"167":1}}],["`if",{"2":{"166":1,"167":1}}],["`index`",{"2":{"64":2,"181":3}}],["`innerjoin`",{"2":{"7":1}}],["`x",{"2":{"166":2,"167":2}}],["`other",{"2":{"151":1}}],["`out",{"2":{"52":1,"177":1}}],["`dict",{"2":{"166":1,"167":1}}],["`distributed`",{"2":{"58":1}}],["`data`",{"2":{"145":1}}],["`register",{"2":{"179":1}}],["`return",{"2":{"104":1}}],["`run",{"2":{"177":1}}],["`ragresult`",{"2":{"64":1,"181":1}}],["`you",{"2":{"102":1}}],["`score",{"2":{"181":1}}],["`schema",{"2":{"106":1}}],["`schema`",{"2":{"27":1,"28":1}}],["`streamcallback",{"2":{"179":3}}],["`success",{"2":{"52":1,"177":1}}],["`model",{"2":{"179":1}}],["`model`",{"2":{"28":1}}],["`maybeextract",{"2":{"179":1}}],["`map`",{"2":{"74":1}}],["`message`",{"2":{"179":2}}],["`msg",{"2":{"37":1}}],["`processor`",{"2":{"181":1}}],["`pt",{"2":{"27":1,"28":1}}],["`pkg`",{"2":{"24":1}}],["`usermessage`",{"2":{"52":1,"177":1}}],["`using`",{"2":{"24":1}}],["`unit`",{"2":{"19":1}}],["`local",{"2":{"179":1}}],["`location`",{"2":{"19":1}}],["`last",{"2":{"21":2,"51":2,"52":2,"177":2}}],["`number`",{"2":{"166":1,"167":1}}],["`nothing`",{"2":{"106":1}}],["`n",{"2":{"21":1,"51":1,"52":1,"177":1}}],["`condition`",{"2":{"106":1}}],["`convert`",{"2":{"106":1}}],["`conversation`",{"2":{"52":1,"104":1,"177":1}}],["`config",{"2":{"52":1,"177":1}}],["`config`",{"2":{"21":1,"51":1,"52":1,"177":1}}],["`celsius`",{"2":{"19":1}}],["`abstractstring`",{"2":{"166":1,"167":1}}],["`a",{"2":{"166":1,"167":1}}],["`answerer",{"2":{"62":1}}],["`answerer`",{"2":{"62":1}}],["`answer",{"2":{"62":1}}],["`add`",{"2":{"24":1,"165":1,"173":1}}],["`aigenerate",{"2":{"52":1,"177":1}}],["`aicall`",{"2":{"21":1,"51":1,"52":2,"177":2}}],["`airag`",{"2":{"6":1,"64":1,"181":1}}],["`api",{"2":{"21":1,"37":1,"51":1,"52":1,"177":1}}],["`ask`",{"2":{"13":1,"24":2,"179":2}}],["``",{"2":{"13":1,"179":1}}],["```plaintext",{"2":{"129":1,"130":1}}],["````",{"2":{"52":1,"177":1}}],["```julia",{"2":{"24":2,"67":1,"128":2,"129":1,"165":2,"173":2,"177":1,"179":3,"181":1}}],["```sql",{"2":{"20":1,"179":2}}],["```",{"2":{"11":2,"24":2,"52":1,"119":1,"120":1,"128":1,"129":1,"130":1,"150":2,"151":2,"165":2,"173":2,"177":2,"181":1}}],["`",{"2":{"11":2,"21":1,"24":2,"27":1,"28":1,"37":2,"51":1,"52":2,"58":1,"62":1,"64":1,"106":2,"128":2,"162":2,"165":6,"166":8,"167":8,"173":6,"177":3,"179":6,"181":1}}],["│",{"2":{"7":12,"11":5,"52":14,"177":16}}],["22",{"2":{"177":1}}],["2277",{"2":{"138":1}}],["26078",{"2":{"177":3}}],["267",{"2":{"126":1}}],["29",{"2":{"179":2}}],["29826",{"2":{"177":3}}],["2900",{"2":{"67":2,"179":2}}],["21",{"2":{"179":1}}],["2190",{"2":{"151":1}}],["210",{"2":{"130":1}}],["278",{"2":{"113":1}}],["2733",{"2":{"52":4,"177":4}}],["256",{"2":{"181":2}}],["2500",{"2":{"179":7}}],["25px",{"2":{"67":1,"179":6,"181":1}}],["25",{"2":{"64":3,"181":4}}],["248",{"2":{"171":1}}],["2487",{"2":{"128":1}}],["24",{"2":{"36":1}}],["24622",{"2":{"20":1,"179":2}}],["239",{"2":{"176":1}}],["23",{"2":{"52":1,"177":1,"179":1}}],["23rd",{"2":{"31":1}}],["237",{"2":{"13":1,"24":1,"163":1,"179":2}}],["2s",{"2":{"21":1,"51":1,"52":2,"177":2}}],["2",{"0":{"154":1},"1":{"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1},"2":{"7":3,"11":1,"13":1,"19":1,"20":3,"21":5,"24":3,"29":3,"46":1,"47":2,"51":5,"52":19,"55":1,"58":1,"64":2,"67":7,"73":1,"74":1,"77":1,"86":1,"87":1,"88":2,"106":2,"110":1,"112":2,"113":1,"118":1,"119":1,"128":3,"129":1,"134":1,"136":1,"152":1,"156":1,"158":2,"162":1,"164":1,"165":2,"166":3,"167":3,"173":2,"177":33,"178":1,"179":34,"181":14}}],["2064",{"2":{"140":1}}],["2000",{"2":{"165":1,"173":1}}],["200",{"2":{"77":1,"179":5}}],["20506",{"2":{"52":1,"177":1}}],["20737",{"2":{"52":4,"177":4}}],["2049",{"2":{"150":1}}],["20493",{"2":{"52":2,"177":2}}],["2048",{"2":{"28":1,"179":5}}],["2021",{"2":{"112":2}}],["2020",{"2":{"96":1}}],["20240307",{"2":{"179":1}}],["2024",{"2":{"31":1,"179":1}}],["2023",{"2":{"15":1,"58":1}}],["20",{"2":{"7":6,"18":1,"67":2,"122":1,"123":1,"179":8,"181":3}}],["2examples",{"2":{"7":1}}],["$f",{"2":{"106":1}}],["$25",{"2":{"106":1}}],["$10",{"2":{"76":1}}],["$50",{"2":{"113":1}}],["$5",{"2":{"76":1}}],["$user",{"2":{"52":1,"177":1}}],["$upper",{"2":{"52":1,"177":1}}],["$lower",{"2":{"52":1,"177":1}}],["$",{"2":{"7":3,"52":9,"67":7,"86":1,"95":1,"106":1,"177":9,"179":7}}],["$0",{"2":{"4":1,"11":1,"20":2,"23":1,"26":1,"30":1,"31":1,"58":1,"85":1,"95":2,"96":1,"179":5}}],[">0",{"2":{"181":1}}],[">tryparse",{"2":{"86":1}}],[">x",{"2":{"7":2,"181":1}}],[">",{"2":{"7":1,"13":1,"18":3,"21":1,"31":1,"46":1,"51":1,"52":8,"58":1,"62":1,"64":1,"67":5,"95":1,"106":2,"110":2,"128":2,"150":2,"151":3,"166":1,"167":1,"177":9,"179":28,"181":8}}],["x123",{"2":{"179":2}}],["x^2`",{"2":{"166":1,"167":1}}],["xml",{"0":{"141":1,"170":1},"1":{"142":1,"143":1,"171":1,"172":1,"173":1},"2":{"142":1,"143":1,"171":1,"172":1,"173":1,"179":1}}],["x3c",{"2":{"20":1,"27":1,"52":6,"58":1,"60":1,"64":5,"67":13,"86":5,"128":4,"142":4,"143":4,"150":3,"151":3,"158":2,"165":1,"171":2,"172":12,"173":17,"177":11,"179":151,"181":116}}],["xyz",{"2":{"11":3,"52":1,"77":1,"104":2,"177":3,"181":1}}],["x",{"2":{"7":4,"21":2,"46":2,"51":2,"52":6,"74":4,"81":1,"86":2,"166":2,"167":2,"177":17,"179":11,"181":11}}],["x26",{"2":{"4":1,"67":2,"118":1,"179":12,"181":2}}],["08",{"2":{"179":2}}],["02",{"2":{"179":1}}],["024",{"2":{"7":1}}],["07",{"2":{"179":1}}],["05",{"2":{"177":1,"179":2}}],["0s",{"2":{"177":1}}],["0011",{"2":{"179":1}}],["0015",{"2":{"179":3}}],["002",{"2":{"179":3}}],["000",{"2":{"64":1,"67":2,"74":3,"179":2,"181":10}}],["0001",{"2":{"30":1,"31":1,"77":2,"95":1,"96":1}}],["0002",{"2":{"11":1}}],["0045",{"2":{"20":1,"179":1}}],["0117",{"2":{"20":1,"179":2}}],["014",{"2":{"7":7}}],["015",{"2":{"7":2}}],["0dict",{"2":{"7":3}}],["0",{"2":{"6":2,"10":2,"16":2,"19":1,"22":1,"23":2,"26":2,"31":1,"32":1,"33":1,"42":1,"47":2,"52":8,"58":6,"64":24,"66":2,"67":4,"77":1,"83":2,"85":2,"87":2,"95":2,"104":1,"108":1,"113":1,"120":1,"122":1,"123":1,"124":1,"125":1,"126":1,"129":1,"130":1,"132":1,"136":1,"138":1,"139":1,"140":1,"142":1,"143":1,"156":1,"159":1,"160":1,"161":1,"162":1,"164":1,"165":3,"167":1,"168":1,"169":1,"172":1,"173":4,"175":1,"177":29,"179":66,"181":84}}],["39931",{"2":{"177":2}}],["390",{"2":{"122":1}}],["383",{"2":{"160":1}}],["31",{"2":{"95":1}}],["344",{"2":{"161":1}}],["34900",{"2":{"67":2,"179":2}}],["34",{"2":{"58":1,"179":1}}],["34315",{"2":{"52":1,"177":1}}],["374",{"2":{"168":1}}],["375",{"2":{"108":1}}],["37581",{"2":{"52":1,"177":1}}],["37",{"2":{"52":1,"177":1}}],["354",{"2":{"123":1}}],["35",{"2":{"52":4,"67":2,"177":4,"179":2}}],["35603",{"2":{"52":1,"177":1}}],["32000",{"2":{"177":3}}],["32991",{"2":{"52":5,"177":5}}],["32",{"2":{"52":2,"95":1,"177":2}}],["337",{"2":{"159":1}}],["33",{"2":{"52":5,"177":5}}],["33333dict",{"2":{"7":1}}],["3x",{"2":{"52":1,"177":1}}],["366",{"2":{"134":1}}],["36",{"2":{"52":1,"177":1}}],["362",{"2":{"20":1,"179":1}}],["3000",{"2":{"165":1,"173":1}}],["300",{"2":{"162":1}}],["30088",{"2":{"52":2,"177":2}}],["30",{"2":{"19":2,"77":1,"122":1,"123":1,"179":14,"181":2}}],["3examples",{"2":{"7":1}}],["3",{"2":{"6":2,"7":11,"10":1,"11":1,"24":1,"37":1,"52":3,"58":4,"67":3,"74":1,"88":1,"91":1,"95":1,"96":3,"104":1,"106":2,"112":3,"113":2,"128":4,"129":1,"152":3,"156":1,"158":1,"165":2,"166":1,"167":1,"173":2,"177":8,"179":26,"181":5}}],["+",{"2":{"6":1,"52":2,"58":2,"60":1,"63":1,"64":1,"106":2,"165":1,"173":1,"177":2,"179":5,"181":1}}],["5th",{"2":{"181":1}}],["595",{"2":{"172":1}}],["570",{"2":{"142":1}}],["57694",{"2":{"52":1,"177":1}}],["519",{"2":{"143":1,"164":1}}],["514",{"2":{"125":1}}],["512",{"2":{"52":5,"177":5,"181":1}}],["5=best",{"2":{"120":1}}],["5c198fb229b56012f8737dcbe6a90b2806c5ec26",{"2":{"67":1,"179":6,"181":1}}],["50m",{"2":{"179":2}}],["504",{"2":{"175":1}}],["500",{"2":{"145":1,"181":2}}],["50086",{"2":{"52":4,"177":4}}],["50",{"2":{"52":4,"85":1,"177":4}}],["52910",{"2":{"52":4,"177":4}}],["55394",{"2":{"52":1,"177":1}}],["5examples",{"2":{"7":1}}],["5",{"2":{"6":5,"11":2,"20":1,"22":3,"28":1,"30":2,"31":1,"37":3,"40":1,"47":1,"52":11,"55":1,"58":3,"62":2,"64":11,"74":1,"75":1,"83":2,"85":1,"91":1,"93":1,"95":3,"98":1,"102":1,"105":1,"112":2,"113":1,"119":14,"120":2,"124":1,"152":2,"156":2,"158":2,"165":1,"169":1,"173":1,"177":11,"178":1,"179":45,"181":25}}],["837",{"2":{"179":1}}],["84",{"2":{"177":1}}],["886",{"2":{"162":1}}],["82",{"2":{"52":1,"177":1}}],["87",{"2":{"30":1}}],["8755f69180b7ac7ee76a69ae68ec36872a116ad4",{"2":{"20":1,"179":2}}],["8x7b",{"2":{"28":1,"37":1,"106":1}}],["80k",{"2":{"181":3}}],["80kg",{"2":{"19":1,"179":6}}],["8080",{"2":{"28":1,"62":3,"64":3,"179":2,"181":3}}],["8081",{"2":{"23":1,"179":2}}],["80",{"2":{"19":1,"179":4,"181":6}}],["8examples",{"2":{"7":1}}],["8",{"2":{"6":1,"52":1,"177":1,"181":4}}],["64",{"2":{"181":2}}],["636",{"2":{"110":1}}],["60",{"2":{"52":3,"74":1,"77":1,"179":6,"181":2}}],["67",{"2":{"52":10,"177":11}}],["67dict",{"2":{"7":3}}],["69",{"2":{"22":1,"179":2}}],["66667dict",{"2":{"7":3}}],["6examples",{"2":{"7":1}}],["6",{"2":{"6":1,"7":1,"42":1,"52":6,"67":1,"74":1,"177":7,"179":2,"181":5}}],["48",{"2":{"177":1}}],["48343",{"2":{"52":1,"177":1}}],["420",{"2":{"120":1,"175":1}}],["429",{"0":{"75":1}}],["4k",{"2":{"67":1,"179":1}}],["46",{"2":{"87":1,"179":1}}],["46632",{"2":{"52":1,"177":1}}],["46839",{"2":{"52":2,"177":2}}],["43094",{"2":{"52":1,"177":1}}],["43",{"2":{"52":1,"177":1}}],["44816",{"2":{"52":2,"177":2}}],["41",{"2":{"52":1,"132":1,"177":1}}],["4examples",{"2":{"7":1}}],["402",{"2":{"148":1}}],["40796033843072876",{"2":{"47":1}}],["4096×2",{"2":{"22":1,"46":1,"179":1}}],["4096",{"2":{"22":1,"45":2,"46":1,"47":1,"179":2}}],["40",{"2":{"7":8,"58":1,"179":2}}],["4",{"2":{"6":3,"7":2,"15":5,"23":1,"24":1,"26":1,"52":10,"58":3,"67":1,"91":3,"95":1,"96":1,"112":1,"152":1,"156":1,"177":10,"179":10,"181":14}}],["1`",{"2":{"179":1}}],["1+1",{"2":{"179":1}}],["16",{"2":{"179":2}}],["1643",{"2":{"173":1}}],["16k",{"2":{"67":1,"177":1,"179":1}}],["17",{"2":{"179":2}}],["175b",{"2":{"179":3}}],["1712",{"2":{"169":1}}],["172",{"2":{"157":1}}],["1>",{"2":{"150":1}}],["184",{"2":{"155":1}}],["18",{"2":{"147":1,"177":1,"179":1}}],["180",{"2":{"19":1,"179":4}}],["180cm",{"2":{"19":1,"179":6}}],["150",{"2":{"158":1}}],["1501",{"2":{"158":1}}],["1506",{"2":{"152":1}}],["1515",{"2":{"139":1}}],["151",{"2":{"135":1}}],["1536×2",{"2":{"179":1}}],["1536",{"2":{"16":1,"179":1}}],["1=worst",{"2":{"120":1}}],["13184",{"2":{"177":2}}],["1396",{"2":{"118":1}}],["1392",{"2":{"116":1}}],["1384",{"2":{"112":1}}],["1m",{"2":{"96":1}}],["1em",{"2":{"67":1,"179":6,"181":1}}],["1examples",{"2":{"7":1}}],["1px",{"2":{"67":1,"179":6,"181":1}}],["1475",{"2":{"165":1}}],["1415",{"2":{"119":1}}],["14966",{"2":{"52":4,"177":4}}],["14",{"2":{"52":1,"177":1}}],["128",{"2":{"181":2}}],["124",{"2":{"179":1}}],["127",{"2":{"83":1,"179":5}}],["12940",{"2":{"52":1,"177":1}}],["12",{"2":{"52":2,"74":1,"177":2,"179":2,"181":1}}],["123",{"2":{"24":1,"84":1}}],["120",{"2":{"10":2,"74":1,"104":2,"179":10}}],["11",{"2":{"181":1}}],["111",{"2":{"179":2}}],["11434",{"2":{"83":1,"179":2}}],["1143",{"2":{"67":1,"166":1,"167":1,"179":1}}],["114",{"2":{"23":1,"26":1}}],["1141",{"2":{"20":1,"179":2}}],["1106",{"2":{"15":2}}],["1928",{"2":{"118":3}}],["190",{"2":{"19":2,"179":6}}],["19",{"2":{"19":2,"58":1,"179":6}}],["10897",{"2":{"179":5}}],["10`",{"2":{"166":1,"167":1}}],["1073",{"2":{"124":1}}],["1074",{"2":{"115":1}}],["10examples",{"2":{"7":1}}],["10×8",{"2":{"7":1}}],["100k",{"2":{"181":1}}],["1000",{"2":{"77":1,"86":1,"165":1,"173":1,"175":1,"179":4,"181":3}}],["100x",{"2":{"74":1}}],["100",{"2":{"7":3,"52":4,"62":2,"64":5,"158":1,"177":3,"179":16,"181":15}}],["10",{"2":{"6":1,"7":4,"11":1,"52":8,"58":1,"64":1,"67":1,"73":2,"74":2,"106":1,"124":1,"177":6,"179":18,"181":11}}],["1024x1024",{"2":{"179":2}}],["1024",{"2":{"179":2}}],["102",{"2":{"4":1,"11":1}}],["1",{"0":{"153":1},"2":{"5":1,"6":1,"7":13,"10":2,"13":3,"16":2,"18":1,"21":6,"24":4,"28":1,"30":1,"32":1,"33":1,"37":2,"40":1,"45":1,"47":1,"51":6,"52":48,"58":6,"64":9,"66":2,"67":9,"73":1,"77":1,"83":1,"85":1,"87":4,"88":2,"91":1,"95":1,"96":2,"104":3,"105":1,"106":3,"108":1,"110":2,"112":4,"113":1,"115":2,"116":2,"118":5,"119":17,"120":3,"122":1,"123":1,"124":1,"125":1,"126":1,"128":3,"129":3,"130":1,"132":1,"134":3,"135":2,"136":2,"138":1,"139":1,"140":1,"142":1,"143":1,"145":2,"147":2,"148":1,"150":5,"151":4,"152":3,"155":1,"156":2,"157":2,"158":2,"159":1,"160":1,"161":1,"162":1,"163":1,"165":3,"166":6,"167":5,"168":1,"169":1,"171":1,"172":1,"173":2,"175":1,"176":1,"177":63,"179":78,"181":47}}],["q4",{"2":{"28":1,"37":1}}],["qaevalresult",{"2":{"6":1,"181":5}}],["qaevalitems",{"2":{"181":1}}],["qaevalitem",{"2":{"4":1,"5":1,"64":5,"181":13}}],["qa",{"2":{"4":1,"6":2,"7":5,"57":1,"64":8,"179":3,"181":38}}],["q",{"0":{"4":1,"5":1,"6":1},"2":{"3":1,"4":1,"6":1,"64":4,"181":4}}],["quantization",{"2":{"156":1,"181":6}}],["quantum",{"2":{"58":1}}],["quarter",{"2":{"64":1,"181":1}}],["quality=",{"2":{"179":1}}],["quality`",{"2":{"179":1}}],["quality",{"2":{"3":2,"5":1,"7":1,"8":1,"13":2,"17":1,"24":3,"88":1,"103":1,"105":2,"119":2,"120":2,"150":1,"155":1,"159":1,"161":1,"163":1,"168":1,"171":1,"179":6,"181":2}}],["queried",{"2":{"179":2}}],["queries",{"2":{"134":1}}],["query",{"0":{"121":1},"1":{"122":1,"123":1,"124":1,"125":1,"126":1},"2":{"55":3,"63":3,"67":7,"110":4,"115":7,"116":8,"122":7,"123":5,"124":13,"125":11,"126":8,"178":3,"179":15,"181":35}}],["question=",{"2":{"181":4}}],["question>",{"2":{"171":2}}],["questionrouter",{"0":{"136":1},"2":{"179":1}}],["questions",{"0":{"68":1},"1":{"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1},"2":{"3":1,"4":1,"13":1,"15":1,"23":1,"24":2,"26":1,"31":1,"34":1,"37":1,"42":1,"58":1,"64":3,"67":1,"95":1,"108":1,"122":2,"155":1,"159":1,"161":1,"163":1,"168":1,"171":1,"179":5,"181":8}}],["question",{"2":{"2":5,"5":1,"6":4,"7":2,"8":1,"13":1,"23":1,"24":7,"26":1,"57":2,"58":8,"61":2,"62":3,"64":30,"77":1,"101":1,"102":1,"103":2,"105":2,"108":5,"110":4,"115":1,"116":1,"118":7,"119":8,"120":6,"123":1,"136":7,"150":1,"151":1,"152":4,"154":2,"155":1,"159":1,"161":1,"163":1,"168":1,"179":6,"181":74}}],["quirks",{"2":{"86":1}}],["quicker",{"2":{"177":1}}],["quick",{"0":{"95":1},"2":{"29":1,"73":1,"87":2,"93":1,"158":1,"179":6}}],["quickly",{"0":{"87":1},"2":{"11":1,"56":1,"67":1,"150":1,"179":1,"181":1}}],["quite",{"2":{"28":1,"63":1,"74":1,"88":1,"106":1,"181":1}}],["quote",{"2":{"152":1}}],["quotes",{"2":{"128":3,"150":1,"181":1}}],["quota",{"2":{"75":1}}],["quot",{"0":{"73":4,"74":2,"75":2},"2":{"1":4,"2":2,"6":2,"7":8,"10":8,"11":6,"13":4,"15":10,"17":8,"18":2,"21":6,"24":2,"28":2,"29":2,"30":2,"31":2,"32":2,"33":2,"34":2,"37":4,"42":10,"49":6,"51":6,"52":26,"55":6,"58":2,"60":2,"64":20,"67":52,"73":8,"74":4,"75":4,"77":2,"78":4,"79":6,"81":2,"83":2,"84":10,"85":6,"86":8,"88":16,"89":6,"90":4,"91":2,"93":6,"95":4,"96":2,"98":2,"99":4,"100":6,"102":8,"103":6,"104":8,"105":6,"106":16,"112":2,"113":2,"118":2,"132":2,"150":2,"151":2,"152":2,"153":2,"154":2,"165":2,"167":2,"169":2,"173":2,"177":64,"178":6,"179":258,"181":41}}],["=context",{"2":{"181":1}}],["=1",{"2":{"181":1}}],["=template",{"2":{"179":2}}],["=pt",{"2":{"179":3}}],["=prompt",{"2":{"179":1}}],["=url",{"2":{"179":1}}],["=user",{"2":{"147":1}}],["=system",{"2":{"147":1,"179":1}}],["=main",{"2":{"52":1,"179":1}}],["=nothing",{"2":{"52":2,"177":4,"181":2}}],["==true",{"2":{"179":1}}],["==",{"2":{"21":2,"51":3,"52":4,"86":1,"165":4,"173":4,"177":13,"179":4,"181":2}}],["=wordcount",{"2":{"13":1,"179":2}}],["=>dic",{"2":{"179":1}}],["=>dict",{"2":{"106":6,"179":2}}],["=>",{"2":{"6":8,"7":1,"86":3,"90":4,"105":4,"106":16,"166":1,"167":1,"179":46,"181":3}}],["=",{"2":{"1":2,"2":6,"4":4,"6":8,"7":13,"10":1,"12":6,"13":7,"14":2,"15":3,"16":4,"17":2,"18":4,"19":2,"20":3,"21":14,"22":5,"23":7,"24":8,"25":1,"26":3,"27":5,"28":1,"29":9,"30":1,"31":3,"32":1,"34":2,"35":2,"37":2,"39":2,"40":5,"41":2,"42":8,"43":1,"45":2,"46":5,"47":3,"48":1,"51":14,"52":68,"55":4,"56":1,"58":8,"60":2,"62":28,"64":146,"67":28,"78":2,"79":1,"81":1,"84":2,"85":2,"86":11,"88":5,"90":9,"91":6,"93":2,"95":1,"96":1,"100":1,"103":1,"104":3,"105":10,"106":20,"164":1,"165":1,"166":2,"167":1,"172":1,"173":1,"177":134,"178":7,"179":541,"181":423}}],["jxnl",{"2":{"150":1,"151":1}}],["javascript",{"2":{"161":2}}],["javascriptexpertask",{"0":{"161":1}}],["jargon",{"2":{"124":1}}],["jarvislabs",{"2":{"89":1}}],["jack",{"2":{"19":1,"87":4,"179":9}}],["james",{"2":{"19":1,"179":8}}],["jane",{"2":{"7":4,"112":2}}],["jedi",{"2":{"12":3,"35":1,"179":1}}],["joy",{"2":{"41":1}}],["job",{"2":{"7":4,"77":1,"179":5}}],["job=",{"2":{"7":1}}],["jobs",{"2":{"7":7}}],["john",{"2":{"7":3,"40":2,"85":6,"90":2}}],["joint",{"2":{"181":1}}],["join",{"2":{"6":3,"7":23,"106":2,"179":3}}],["joining",{"2":{"5":2,"6":2,"7":2,"70":1}}],["joins",{"2":{"2":1,"5":3,"6":1,"7":15,"181":1}}],["joinpath",{"2":{"2":2,"24":1,"179":3}}],["jsonl",{"2":{"89":2,"179":1}}],["json",{"2":{"4":2,"24":2,"87":1,"89":1,"91":1,"105":1,"106":14,"179":19}}],["json3",{"2":{"1":1,"4":2,"22":1,"45":1,"106":7,"179":3}}],["jump",{"2":{"177":1,"179":1}}],["judgment",{"2":{"158":1}}],["judging",{"2":{"119":1,"181":1}}],["judge=",{"2":{"181":1}}],["judgerating",{"2":{"179":1,"181":2}}],["judgeisittrue",{"0":{"135":1},"2":{"13":1,"17":2,"179":7}}],["judgeallscores",{"2":{"6":1,"179":1,"181":2}}],["judged",{"2":{"6":2}}],["judge",{"2":{"2":1,"6":3,"7":2,"10":1,"17":1,"52":1,"104":1,"119":4,"120":3,"135":1,"177":1,"179":3,"181":8}}],["juicy",{"2":{"31":2,"106":8}}],["just",{"2":{"2":1,"10":1,"13":1,"23":1,"24":4,"26":1,"31":1,"52":1,"55":1,"73":1,"75":1,"81":1,"83":2,"85":1,"86":1,"103":1,"104":1,"106":4,"108":1,"115":1,"116":1,"136":1,"156":2,"177":1,"178":1,"179":13}}],["juliaqa",{"2":{"181":1}}],["juliaquestion",{"2":{"58":1}}],["juliakwargs",{"2":{"181":1}}],["juliakw",{"2":{"181":3}}],["juliakeywordsprocessor",{"2":{"181":1}}],["juliakeywordsindexer",{"2":{"181":1}}],["julianotagger",{"2":{"181":1}}],["julianotagfilter",{"2":{"181":1}}],["julianoreranker",{"2":{"181":1}}],["julianorephraser",{"2":{"181":1}}],["julianorefiner",{"2":{"181":1}}],["julianoprocessor",{"2":{"181":1}}],["julianopostprocessor",{"2":{"181":1}}],["julianoembedder",{"2":{"181":1}}],["julianew",{"2":{"12":1,"179":1}}],["juliahcat",{"2":{"181":1}}],["juliahamming",{"2":{"181":1}}],["juliahandle",{"2":{"179":1}}],["juliahyderephraser",{"2":{"181":1}}],["juliahtmlstyler",{"2":{"181":1}}],["juliais",{"2":{"179":1}}],["juliainitialize",{"2":{"179":1}}],["juliaindex",{"2":{"58":1,"64":2,"181":6}}],["juliaweather",{"2":{"179":1}}],["juliawrap",{"2":{"67":2,"179":7}}],["juliagetpropertynested",{"2":{"181":1}}],["juliaget",{"2":{"179":1,"181":7}}],["juliagenerate",{"2":{"64":1,"179":1,"181":1}}],["juliagroqopenaischema",{"2":{"179":1}}],["juliagamma",{"2":{"177":1}}],["juliabin",{"2":{"181":2}}],["juliabinary",{"2":{"181":1}}],["juliabinarycosinesimilarity",{"2":{"181":1}}],["juliabinarybatchembedder",{"2":{"181":1}}],["juliabitpacked",{"2":{"181":1}}],["juliabitpackedcosinesimilarity",{"2":{"181":1}}],["juliabitpackedbatchembedder",{"2":{"181":1}}],["juliabatchembedder",{"2":{"181":1}}],["juliabm25similarity",{"2":{"181":1}}],["juliabeta",{"2":{"177":1}}],["juliablogwriter",{"0":{"162":1}}],["juliabuild",{"2":{"64":3,"179":3,"181":5}}],["juliaopentagger",{"2":{"181":1}}],["juliaopenai",{"2":{"179":3}}],["juliaollama",{"2":{"179":1}}],["juliaobj",{"2":{"106":1}}],["juliaoutput",{"2":{"51":1}}],["juliaout",{"2":{"21":1,"52":2,"177":2}}],["juliaupdate",{"2":{"179":1}}],["juliaunique",{"2":{"179":1}}],["juliaunwrap",{"2":{"91":1}}],["juliauct",{"2":{"177":1}}],["juliausing",{"2":{"1":1,"10":1,"12":1,"13":1,"16":1,"20":1,"21":1,"24":1,"25":1,"32":2,"37":1,"47":1,"48":1,"53":1,"66":1,"86":1,"88":1,"91":3,"94":1,"104":1,"105":2,"106":1,"179":10,"181":1}}],["juliaload",{"2":{"179":2,"181":1}}],["julialocalserveropenaischema",{"2":{"179":1}}],["juliallmleaderboard",{"2":{"89":1}}],["julialength",{"2":{"67":1,"179":1}}],["julialanguage",{"2":{"112":1}}],["julialang",{"2":{"57":1,"66":1,"67":1,"179":1}}],["juliaalign",{"2":{"181":1}}],["juliaalltagfilter",{"2":{"181":1}}],["juliaalternative",{"2":{"179":1}}],["juliaadvancedretriever",{"2":{"181":1}}],["juliaadvancedgenerator",{"2":{"181":1}}],["juliaadd",{"2":{"177":1,"181":1}}],["juliaabstractretriever",{"2":{"181":1}}],["juliaabstractmultiindex",{"2":{"181":1}}],["juliaabstractindexbuilder",{"2":{"181":1}}],["juliaabstractgenerator",{"2":{"181":1}}],["juliaabstractchunkindex",{"2":{"181":1}}],["juliaabstractcandidatechunks",{"2":{"181":1}}],["juliaa=1",{"2":{"179":1}}],["juliaaai",{"2":{"179":1}}],["juliaauth",{"2":{"179":1}}],["juliaa",{"2":{"179":2,"181":1}}],["juliaapi",{"2":{"179":2}}],["juliaanswer",{"2":{"181":1}}],["juliaanytagfilter",{"2":{"181":1}}],["juliaanthropic",{"2":{"179":1}}],["juliaanthropicschema",{"2":{"179":1}}],["juliaannotatednode",{"2":{"181":1}}],["juliaannotater",{"2":{"64":1,"181":1}}],["juliaannotate",{"2":{"64":2,"181":2}}],["juliaagenttools",{"2":{"177":1}}],["juliaassume",{"2":{"64":1,"181":1}}],["juliaaiimage",{"2":{"179":2}}],["juliaaitemplate",{"2":{"179":1}}],["juliaaitemplates",{"2":{"87":1,"179":2}}],["juliaaimessage",{"2":{"179":1}}],["juliaaiscan",{"2":{"177":1,"179":3}}],["juliaaiextract",{"2":{"177":1,"179":3}}],["juliaaiembed",{"2":{"30":1,"31":1,"177":1,"179":3}}],["juliaairag",{"2":{"64":1,"181":1}}],["juliaairetry",{"2":{"52":1,"177":1}}],["juliaaicodefixer",{"2":{"52":1,"177":2}}],["juliaaicode",{"2":{"52":1,"179":1}}],["juliaaicall",{"2":{"52":3,"177":6}}],["juliaaiclassify",{"2":{"17":2,"177":1,"179":5}}],["juliaaigenerate",{"2":{"52":1,"87":2,"177":1,"179":8}}],["juliaai",{"2":{"34":1,"85":1,"95":2,"179":1}}],["juliart",{"2":{"181":1}}],["juliarank",{"2":{"181":2}}],["juliarankgptresult",{"2":{"181":1}}],["juliarankgptreranker",{"2":{"181":1}}],["juliaragresult",{"2":{"181":1}}],["juliaragconfig",{"2":{"181":1}}],["juliaragtools",{"2":{"181":1}}],["juliarun",{"2":{"177":2,"181":2}}],["juliarerank",{"2":{"181":2}}],["juliarefiner",{"2":{"181":1}}],["juliarefine",{"2":{"181":3}}],["juliarender",{"2":{"179":7}}],["juliarendered",{"2":{"105":1}}],["juliaremove",{"2":{"179":1}}],["juliaregister",{"2":{"179":2}}],["juliaretryconfig",{"2":{"177":1}}],["juliaretrieve",{"2":{"64":1,"181":1}}],["juliaretriever",{"2":{"62":1,"64":2,"181":2}}],["juliareciprocal",{"2":{"181":2}}],["juliareceive",{"2":{"181":1}}],["juliarecaptask",{"0":{"167":1}}],["juliarecapcottask",{"0":{"166":1}}],["juliarecursive",{"2":{"67":2,"179":2}}],["juliareplace",{"2":{"67":1,"179":1}}],["juliarephrase",{"2":{"62":1,"181":3}}],["juliaresponse",{"2":{"179":1}}],["juliaresize",{"2":{"179":2}}],["juliares",{"2":{"64":1,"181":1}}],["juliaresult",{"2":{"58":1,"104":1,"106":1,"179":4,"181":1}}],["juliaresults",{"2":{"7":1}}],["juliar",{"2":{"55":2,"178":2}}],["juliaflashranker",{"2":{"181":1}}],["juliafunction",{"2":{"179":1}}],["juliafind",{"2":{"179":2,"181":8}}],["juliafinalize",{"2":{"179":3}}],["juliafields",{"2":{"179":4}}],["juliafireworksopenaischema",{"2":{"179":1}}],["juliafilechunker",{"2":{"181":1}}],["juliafilename",{"2":{"24":1}}],["juliafiles",{"2":{"2":1}}],["juliafeedback",{"2":{"106":1}}],["juliafor",{"2":{"52":1,"177":1}}],["juliasplit",{"2":{"181":1}}],["juliaspec",{"2":{"179":1}}],["juliascore",{"2":{"181":1}}],["juliaschema",{"2":{"42":1,"179":3}}],["juliasubchunkindex",{"2":{"181":1}}],["juliastemmer",{"2":{"181":1}}],["juliastyler",{"2":{"181":1}}],["juliastreamed",{"2":{"179":1}}],["juliastreamchunk",{"2":{"179":1}}],["juliastreamcallback",{"2":{"179":1}}],["juliasimpleretriever",{"2":{"181":1}}],["juliasimplerephraser",{"2":{"181":1}}],["juliasimplerefiner",{"2":{"181":1}}],["juliasimpleindexer",{"2":{"181":1}}],["juliasimplegenerator",{"2":{"181":1}}],["juliasimplebm25retriever",{"2":{"181":1}}],["juliasimpleanswerer",{"2":{"181":1}}],["juliasig",{"2":{"106":3}}],["juliasharegptschema",{"2":{"179":1}}],["juliasave",{"2":{"179":3}}],["juliasaverschema",{"2":{"179":1}}],["juliasample",{"2":{"177":1}}],["juliasamplenode",{"2":{"177":1}}],["juliasetpropertynested",{"2":{"181":1}}],["juliaset",{"2":{"179":2,"181":1}}],["juliaselect",{"2":{"177":1}}],["juliasentences",{"2":{"58":1}}],["juliaserialize",{"2":{"2":1}}],["juliamultiindex",{"2":{"181":1}}],["juliamultifinder",{"2":{"181":1}}],["juliamulticandidatechunks",{"2":{"181":1}}],["juliamerge",{"2":{"181":1}}],["juliamessages",{"2":{"179":1}}],["juliameta",{"2":{"91":1}}],["juliamarkdown",{"2":{"179":1}}],["juliamistralopenaischema",{"2":{"179":1}}],["juliamodelspec",{"2":{"179":1}}],["juliamodel",{"2":{"40":1,"106":2,"179":2}}],["juliamsgs",{"2":{"24":1}}],["juliamsg",{"2":{"12":1,"13":2,"20":1,"22":1,"23":1,"24":1,"26":1,"28":1,"29":1,"30":1,"31":1,"34":1,"39":1,"43":1,"45":2,"46":1,"47":1,"52":1,"64":1,"96":1,"179":11,"181":3}}],["juliadistance",{"2":{"179":1}}],["juliadetect",{"2":{"179":1}}],["juliadecode",{"2":{"179":1}}],["juliadeepseekopenaischema",{"2":{"179":1}}],["juliadatabricksopenaischema",{"2":{"179":1}}],["juliadatamessage",{"2":{"179":1}}],["juliadataexpertask",{"2":{"24":2}}],["juliadry",{"2":{"90":1}}],["juliadocumenttermmatrix",{"2":{"181":1}}],["juliadoc",{"2":{"64":1,"181":1}}],["juliadocs",{"2":{"46":1}}],["juliadf",{"2":{"7":1}}],["juliapositions1",{"2":{"181":2}}],["juliapermutation",{"2":{"181":1}}],["juliapack",{"2":{"181":1}}],["juliapackage",{"2":{"112":1}}],["juliaparent",{"2":{"181":1}}],["juliapassthroughtagger",{"2":{"181":1}}],["juliapush",{"2":{"179":1}}],["juliapprint",{"2":{"58":1,"179":2}}],["juliapreprocess",{"2":{"181":1}}],["juliapreferences",{"2":{"179":1}}],["juliaprompt",{"2":{"106":1}}],["juliapromptingtools",{"2":{"60":1,"179":5,"181":1}}],["juliaprompts",{"2":{"14":1}}],["juliaprint",{"2":{"52":1,"177":1,"179":3,"181":1}}],["juliapt",{"2":{"24":2,"42":1,"52":1,"64":1,"87":2,"90":1,"91":1,"179":5,"181":3}}],["juliacc",{"2":{"181":1}}],["juliachunkkeywordsindex",{"2":{"181":2}}],["juliachunkembeddingsindex",{"2":{"181":1}}],["juliachoices",{"2":{"18":1,"86":1,"179":5}}],["juliacandidatechunks",{"2":{"181":1}}],["juliacallback",{"2":{"179":1}}],["juliacall",{"2":{"179":1}}],["juliacustomopenaischema",{"2":{"179":1}}],["juliacfg",{"2":{"62":1,"64":1,"181":3}}],["juliacreate",{"2":{"55":1,"178":1,"179":1,"181":1}}],["juliacb",{"2":{"52":1,"177":1}}],["juliacohere",{"2":{"181":1}}],["juliacoherereranker",{"2":{"181":1}}],["juliacosinesimilarity",{"2":{"181":1}}],["juliacountry",{"2":{"95":1}}],["juliacommands",{"2":{"67":1,"179":1}}],["juliacode",{"2":{"52":2,"179":4}}],["juliaconfigure",{"2":{"179":1}}],["juliaconv",{"2":{"179":2}}],["juliaconversation",{"2":{"35":1,"41":1,"85":1}}],["juliacontextenumerator",{"2":{"181":1}}],["juliacontext",{"2":{"67":1,"179":1}}],["juliaconst",{"2":{"15":1,"22":1,"23":1,"26":1,"179":15}}],["juliatokenize",{"2":{"181":1}}],["juliatoken",{"2":{"181":1}}],["juliatogetheropenaischema",{"2":{"179":1}}],["juliatags",{"2":{"181":1}}],["juliatavilysearchrefiner",{"2":{"181":1}}],["juliatavily",{"2":{"178":1}}],["juliatypeof",{"2":{"179":5}}],["juliatrigrams",{"2":{"181":1}}],["juliatrigram",{"2":{"181":1}}],["juliatrigramannotater",{"2":{"181":1}}],["juliatranslate",{"2":{"181":2}}],["juliatracerschema",{"2":{"179":1}}],["juliatracermessagelike",{"2":{"179":1}}],["juliatracermessage",{"2":{"179":1}}],["juliatryparse",{"2":{"179":1}}],["juliatruncate",{"2":{"177":1}}],["juliathompsonsampling",{"2":{"177":1}}],["juliatemplate",{"2":{"105":1}}],["juliatextchunker",{"2":{"181":1}}],["juliatext1",{"2":{"67":1,"179":1}}],["juliatext",{"2":{"16":1,"67":7,"179":7}}],["juliatpl",{"2":{"24":1}}],["juliatmps",{"2":{"13":2,"24":1,"179":4}}],["juliajulia>",{"2":{"13":1,"52":1,"177":1,"179":1}}],["juliaexperimental",{"2":{"180":1}}],["juliaexperttask",{"2":{"179":1}}],["juliaexperttestcodexml",{"0":{"173":1}}],["juliaexperttestcode",{"0":{"165":1}}],["juliaexperttranscriptcritic",{"0":{"140":1}}],["juliaexpertcottaskxml",{"0":{"172":1}}],["juliaexpertcottask",{"0":{"164":1}}],["juliaexpertaskxml",{"0":{"171":1}}],["juliaexpertask",{"0":{"163":1},"2":{"13":4,"24":6,"52":1,"104":2,"177":1,"179":6}}],["juliaextract",{"2":{"179":8,"181":1}}],["juliaencode",{"2":{"179":1}}],["juliaenv",{"2":{"78":1}}],["juliaeval",{"2":{"179":1}}],["juliaevaluate",{"2":{"177":1}}],["juliaevals",{"2":{"4":1,"5":1}}],["juliaerror",{"2":{"52":1,"177":1}}],["juliax",{"2":{"6":1,"179":1,"181":1}}],["julia>",{"2":{"5":1}}],["julia",{"2":{"2":3,"4":1,"6":1,"7":1,"10":1,"13":6,"19":2,"20":3,"21":2,"23":1,"24":14,"27":1,"29":1,"31":1,"43":1,"49":1,"51":2,"52":9,"56":1,"57":1,"58":26,"64":3,"67":1,"73":6,"74":1,"78":3,"81":1,"86":2,"87":1,"90":1,"93":3,"102":1,"103":1,"104":1,"105":2,"106":2,"112":2,"122":4,"128":4,"129":2,"130":1,"140":8,"162":3,"163":2,"164":2,"165":3,"166":7,"167":8,"171":2,"172":2,"173":3,"177":12,"179":69,"181":17}}],["jls",{"2":{"2":2}}],["jl",{"0":{"79":1},"2":{"0":3,"1":1,"2":3,"8":2,"10":1,"23":3,"24":1,"26":2,"27":1,"29":1,"30":1,"31":1,"47":1,"52":1,"58":3,"63":1,"64":1,"65":1,"67":3,"70":1,"78":2,"81":2,"82":1,"89":1,"93":2,"94":1,"97":1,"100":1,"104":1,"105":1,"106":1,"112":4,"177":1,"179":20,"181":5}}],["nfeedback",{"2":{"177":6}}],["n```",{"2":{"128":1,"129":1,"179":1}}],["nwhat",{"2":{"105":1}}],["nwe",{"2":{"7":1}}],["nparagraph",{"2":{"67":6,"88":2,"179":6}}],["n=5",{"2":{"64":1,"181":1}}],["n=2",{"2":{"21":1,"51":1,"52":1,"177":1}}],["nsfw",{"2":{"52":1,"177":1}}],["nsemijoin",{"2":{"7":1}}],["nbsp",{"2":{"52":9,"55":1,"64":6,"67":5,"177":37,"178":2,"179":163,"180":1,"181":142}}],["ngl",{"2":{"28":2}}],["nli",{"2":{"17":1}}],["nt2",{"2":{"181":3}}],["nt1",{"2":{"181":3}}],["nt",{"2":{"181":4}}],["nthreads",{"2":{"181":6}}],["nthe",{"2":{"7":1}}],["ntasks=2",{"2":{"74":2}}],["ntasks=1",{"2":{"64":1,"74":1,"181":4}}],["ntasks=10",{"2":{"14":1}}],["ntasks",{"2":{"64":1,"74":1,"181":7}}],["n7",{"2":{"7":1}}],["n6",{"2":{"7":1}}],["n5",{"2":{"7":1}}],["numerical",{"2":{"58":1}}],["num",{"2":{"37":2,"110":4,"177":6,"181":2}}],["number",{"2":{"14":1,"28":1,"52":14,"55":1,"58":1,"64":8,"66":1,"67":2,"74":4,"86":10,"106":1,"110":1,"136":1,"165":1,"173":1,"177":26,"178":1,"179":24,"181":19}}],["numbers",{"2":{"2":1,"52":4,"165":2,"173":2,"177":1,"179":3,"181":1}}],["null",{"2":{"7":1,"179":3}}],["n4",{"2":{"7":1}}],["n3",{"2":{"7":1}}],["n2",{"2":{"7":1}}],["n2×3",{"2":{"7":1}}],["n2×2",{"2":{"7":2}}],["n1",{"2":{"7":1}}],["njob",{"2":{"7":2}}],["njulia",{"2":{"7":1}}],["niche",{"2":{"124":1}}],["nice",{"2":{"13":1,"24":1,"39":1,"40":1,"42":1,"179":4}}],["nid",{"2":{"7":2}}],["nintroduction",{"2":{"7":1}}],["n─────┼───────────────",{"2":{"7":1}}],["n─────┼─────────────────────────",{"2":{"7":1}}],["n─────┼─────────────────",{"2":{"7":1}}],["naming",{"2":{"179":1}}],["name`",{"2":{"179":1}}],["named",{"2":{"165":1,"173":1,"179":15}}],["namedtuple=namedtuple",{"2":{"181":1}}],["namedtuples",{"2":{"166":1,"167":1,"181":1}}],["namedtuple",{"2":{"10":2,"52":7,"64":61,"104":2,"177":9,"178":2,"179":74,"181":79}}],["namespace",{"2":{"94":1}}],["names",{"2":{"7":3,"27":1,"28":1,"58":1,"60":1,"62":1,"67":1,"106":2,"112":5,"162":1,"166":1,"167":1,"179":21,"181":1}}],["name",{"2":{"7":6,"11":1,"12":2,"13":2,"15":1,"24":6,"28":1,"29":1,"30":1,"31":2,"37":1,"40":3,"42":1,"83":1,"84":1,"85":5,"87":7,"89":1,"90":3,"103":2,"106":9,"112":1,"128":2,"156":1,"158":1,"165":1,"173":1,"177":1,"179":78,"181":1}}],["name=",{"2":{"7":1,"12":1,"84":1,"87":2,"90":1,"91":1,"166":1,"167":1,"179":4}}],["narrative",{"2":{"169":2}}],["nature",{"2":{"151":1,"179":1}}],["naturally",{"2":{"179":1}}],["natural",{"2":{"58":1,"124":1,"126":1,"179":1}}],["native",{"2":{"106":1}}],["navigate",{"2":{"1":1}}],["n",{"2":{"7":17,"13":2,"21":2,"24":8,"51":2,"52":7,"62":2,"64":8,"67":24,"88":10,"103":2,"105":4,"106":4,"128":1,"129":1,"177":18,"179":30,"181":18}}],["neighboring",{"2":{"181":1}}],["network",{"2":{"181":3}}],["nedeed",{"2":{"179":1}}],["never",{"2":{"179":1,"181":1}}],["negative",{"2":{"165":1,"169":1,"173":1,"181":1}}],["nesting",{"2":{"165":1,"173":1}}],["nested",{"2":{"0":1,"62":2,"64":5,"165":1,"173":1,"179":3,"181":16}}],["neuroplasticity",{"2":{"112":2}}],["nexample",{"2":{"106":1}}],["next",{"0":{"8":1},"2":{"21":1,"51":1,"52":1,"85":1,"105":2,"151":14,"158":1,"177":2,"179":2,"181":3}}],["nearest",{"2":{"87":2,"179":2}}],["near",{"2":{"56":1}}],["news",{"2":{"179":2}}],["newline",{"2":{"67":3,"179":4,"181":2}}],["newlines",{"2":{"66":1,"67":2,"88":1,"179":3}}],["new",{"2":{"12":2,"24":2,"31":1,"52":8,"60":3,"64":2,"72":1,"73":1,"74":1,"83":1,"85":1,"93":1,"95":1,"103":1,"105":1,"115":2,"116":1,"128":1,"129":1,"150":1,"151":1,"166":1,"167":1,"177":8,"179":26,"181":5}}],["necessary>",{"2":{"158":1}}],["necessary",{"2":{"10":1,"23":1,"27":1,"41":1,"49":1,"52":2,"56":1,"63":1,"90":1,"91":1,"97":1,"104":1,"140":1,"150":1,"177":1,"179":14}}],["needing",{"2":{"118":1}}],["needs",{"2":{"52":1,"100":1,"106":1,"128":1,"140":1,"177":1,"179":1}}],["needed>",{"2":{"158":1}}],["needed",{"2":{"10":1,"19":1,"21":1,"49":1,"51":1,"64":1,"86":1,"104":1,"115":2,"116":2,"138":1,"140":1,"169":1,"177":2,"179":5,"181":1}}],["need",{"2":{"3":1,"4":2,"5":1,"7":1,"10":2,"11":2,"28":1,"32":1,"37":1,"39":1,"42":1,"51":1,"52":1,"54":1,"57":1,"58":3,"62":1,"64":1,"66":1,"67":1,"74":1,"75":1,"77":1,"78":1,"84":1,"86":2,"87":1,"93":2,"101":2,"104":2,"106":4,"128":1,"129":1,"130":1,"150":1,"151":1,"152":1,"164":1,"165":1,"167":1,"169":1,"172":1,"173":1,"177":1,"179":25,"181":3}}],["noprocessor",{"2":{"179":1,"181":4}}],["nopostprocessor",{"2":{"64":2,"179":1,"181":6}}],["noembedder",{"2":{"179":1,"181":3}}],["noisy",{"2":{"116":1}}],["noise",{"2":{"2":1}}],["noschema",{"2":{"90":3,"105":1,"179":3}}],["noreranker",{"2":{"179":1,"181":4}}],["norephraser",{"2":{"179":1,"181":5}}],["norefiner",{"2":{"64":3,"179":1,"181":7}}],["normal",{"2":{"179":8}}],["normalization",{"2":{"47":1}}],["normalizes",{"2":{"181":1}}],["normalized",{"2":{"16":1,"66":1,"67":1,"179":3,"181":1}}],["normalize",{"2":{"16":2,"47":2,"67":2,"179":8,"181":3}}],["norm",{"2":{"67":2,"179":2}}],["nodes",{"2":{"52":1,"64":5,"177":4,"181":15}}],["node",{"2":{"52":5,"64":3,"177":31,"179":4,"181":38}}],["nods",{"2":{"41":2}}],["nomic",{"2":{"31":2}}],["now",{"2":{"23":1,"24":1,"26":1,"32":1,"41":1,"52":2,"58":1,"77":1,"81":1,"86":1,"87":1,"89":1,"106":1,"177":3,"179":8,"181":1}}],["non",{"2":{"11":1,"21":1,"51":1,"52":1,"84":1,"177":1,"179":13,"181":2}}],["none",{"2":{"4":1,"21":1,"51":1,"64":2,"112":1,"113":1,"118":1,"136":2,"150":1,"151":1,"152":1,"165":1,"167":1,"169":1,"172":1,"173":1,"181":3}}],["no",{"2":{"10":1,"15":1,"20":1,"21":1,"51":1,"52":5,"58":3,"64":3,"104":1,"105":2,"128":1,"130":1,"136":2,"151":1,"158":1,"177":6,"179":20,"181":20}}],["notfound",{"2":{"177":1}}],["notagfilter",{"2":{"179":1,"181":6}}],["notagger",{"2":{"64":2,"179":1,"181":10}}],["notation",{"2":{"52":1,"177":1}}],["notification",{"2":{"76":1}}],["notion",{"2":{"49":1}}],["notice",{"2":{"21":3,"22":1,"34":1,"51":2,"52":2,"58":1,"60":1,"62":2,"85":2,"86":1,"89":1,"95":1,"103":1,"105":1,"106":1,"177":2,"179":6,"181":1}}],["nothing",{"2":{"6":1,"7":1,"12":1,"19":4,"31":1,"52":19,"64":9,"73":1,"86":1,"90":1,"106":4,"115":2,"116":2,"150":1,"156":1,"177":24,"179":130,"181":55}}],["not",{"2":{"1":1,"5":1,"7":3,"10":3,"11":1,"12":2,"19":1,"22":1,"23":1,"24":2,"27":1,"32":1,"35":2,"36":2,"41":1,"42":2,"43":1,"49":1,"52":21,"55":1,"60":1,"64":1,"67":5,"69":1,"71":2,"72":2,"73":2,"75":2,"76":1,"78":1,"83":1,"85":1,"86":4,"88":1,"93":3,"97":1,"104":3,"106":9,"110":1,"115":1,"116":4,"118":1,"119":3,"124":1,"126":1,"128":2,"139":1,"150":5,"151":1,"152":1,"164":1,"165":1,"166":2,"167":2,"169":2,"173":1,"175":1,"177":23,"178":1,"179":85,"180":2,"181":11}}],["notes",{"2":{"52":2,"64":4,"67":2,"150":4,"151":1,"160":6,"162":7,"177":5,"179":7,"181":8}}],["notexist",{"2":{"21":1,"51":1,"52":2,"177":2}}],["noteworthy",{"2":{"10":1,"64":1,"181":1}}],["note",{"2":{"0":1,"1":2,"6":1,"7":4,"19":1,"21":1,"23":1,"24":1,"27":1,"30":1,"31":1,"37":1,"42":2,"51":1,"52":2,"63":1,"64":1,"69":1,"75":1,"87":1,"103":1,"105":1,"106":1,"158":1,"177":4,"179":33,"180":1,"181":3}}],["pwd",{"2":{"179":2}}],["pct",{"2":{"169":3}}],["photos",{"2":{"176":1}}],["phrase",{"2":{"156":1}}],["phrasings",{"2":{"124":1}}],["phase",{"2":{"63":3,"64":1,"181":1}}],["phases",{"2":{"60":1}}],["python",{"2":{"43":1,"58":1,"166":1,"167":1,"179":2}}],["pkgdir",{"2":{"24":1}}],["pkg",{"2":{"24":2,"32":2,"52":1,"73":1,"94":2,"179":2}}],["png",{"2":{"20":2,"43":2,"179":10}}],["p",{"2":{"18":2,"86":4,"177":2,"179":5}}],["plots",{"2":{"112":2}}],["plural",{"2":{"89":1}}],["plus",{"2":{"17":2,"86":2,"179":4}}],["please",{"2":{"24":1,"73":1,"75":2,"119":1,"175":1,"177":1,"179":1}}],["plausible",{"2":{"169":2}}],["plain",{"2":{"158":2,"181":1}}],["plaintextblog",{"2":{"175":1}}],["plaintextexplain",{"2":{"169":1}}],["plaintextextract",{"2":{"113":1}}],["plaintextnotes",{"2":{"160":1,"162":1}}],["plaintextuser",{"2":{"134":1,"136":1,"158":1}}],["plaintextusing",{"2":{"24":1}}],["plaintextoriginal",{"2":{"125":1}}],["plaintexthere",{"2":{"124":1,"126":1}}],["plaintextquery",{"2":{"123":1}}],["plaintextwrite",{"2":{"122":1}}],["plaintextwe",{"2":{"115":1,"116":1}}],["plaintextignore",{"2":{"128":1}}],["plaintexti",{"2":{"110":1}}],["plaintextyour",{"2":{"175":1}}],["plaintextyou",{"2":{"110":1,"112":1,"118":1,"119":1,"120":1,"122":1,"123":1,"124":1,"125":1,"126":1,"134":1,"135":1,"136":1,"142":1,"143":1,"145":1,"148":1,"155":1,"157":1,"159":1,"161":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"171":1,"172":1,"173":1,"176":1}}],["plaintextact",{"2":{"108":1,"115":1,"116":1,"138":1,"139":1,"140":1,"150":1,"151":1,"156":1,"158":1,"160":1,"162":1}}],["plaintextaimessage",{"2":{"12":1}}],["plaintext2",{"2":{"90":3,"105":2}}],["plaintext>",{"2":{"12":1}}],["plaintext",{"2":{"11":1,"58":1,"95":2,"96":1,"108":1,"112":1,"113":1,"118":1,"119":1,"120":1,"128":1,"129":2,"130":2,"132":2,"135":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"147":2,"148":1,"150":1,"151":1,"152":1,"154":1,"155":1,"156":1,"157":1,"159":1,"161":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"171":1,"172":1,"173":1,"176":1}}],["placing",{"2":{"128":1,"129":1}}],["places",{"2":{"106":1,"112":1,"179":2}}],["placeholder",{"2":{"24":1,"64":1,"87":1,"103":1,"105":1,"135":1,"142":1,"143":1,"145":1,"148":1,"179":6,"181":1}}],["placeholders",{"0":{"96":1},"2":{"13":2,"24":4,"98":1,"103":1,"105":4,"106":2,"108":2,"110":2,"112":2,"113":2,"115":2,"116":2,"118":2,"119":2,"120":2,"122":2,"123":2,"124":2,"125":2,"126":2,"128":2,"129":2,"130":2,"132":2,"134":2,"135":1,"136":2,"138":2,"139":2,"140":2,"142":1,"143":1,"145":1,"147":2,"148":1,"150":2,"151":2,"152":2,"155":2,"156":2,"157":2,"158":2,"159":2,"160":2,"161":2,"162":2,"163":2,"164":2,"165":2,"166":2,"167":2,"168":2,"169":3,"171":2,"172":2,"173":2,"175":2,"176":2,"179":8}}],["place",{"2":{"21":1,"52":1,"60":1,"100":1,"151":1,"177":2,"179":4}}],["platform",{"2":{"75":1,"179":2}}],["plant",{"2":{"18":2,"86":1,"179":8}}],["plan",{"2":{"16":1,"23":1,"75":1,"151":1,"179":2}}],["playful",{"2":{"175":1}}],["plays",{"2":{"151":1}}],["playing",{"2":{"150":1}}],["play",{"2":{"8":1,"21":1,"51":1,"52":2,"177":2}}],["pprint",{"2":{"10":1,"57":2,"58":1,"64":4,"179":11,"181":12}}],["pesona",{"2":{"160":1}}],["penicillin",{"2":{"118":2}}],["perched",{"2":{"179":1}}],["permanently",{"2":{"179":1}}],["permanent",{"2":{"179":1}}],["permutation",{"2":{"179":7,"181":12}}],["persistent",{"2":{"179":1}}],["persistently",{"2":{"84":1}}],["persist",{"2":{"179":1}}],["persists",{"2":{"79":1}}],["personality",{"2":{"179":1}}],["personally",{"2":{"90":1}}],["personal",{"2":{"83":1}}],["persona",{"0":{"149":1},"1":{"150":1,"151":1,"152":1},"2":{"24":1,"147":1,"148":1,"159":1,"160":4,"162":1,"179":5}}],["personas",{"2":{"24":1}}],["person",{"2":{"7":2,"19":1,"179":6}}],["periods",{"2":{"181":1}}],["period",{"2":{"74":1}}],["perfectly",{"2":{"119":1}}],["perfect",{"2":{"67":1,"106":1,"122":1,"179":3}}],["performance",{"2":{"14":1,"58":2,"125":1,"140":1,"166":1,"167":1,"179":1,"181":2}}],["perform",{"2":{"7":1}}],["per",{"2":{"64":1,"74":5,"77":3,"106":4,"112":1,"177":1,"179":9,"181":4}}],["perhaps",{"2":{"41":1}}],["perplexity",{"2":{"23":1,"27":1}}],["people",{"2":{"7":4,"96":1,"150":1,"179":2}}],["punctuation",{"2":{"181":2}}],["push",{"2":{"179":4}}],["puppy",{"2":{"156":1}}],["pure",{"2":{"124":1}}],["purposes",{"2":{"90":1,"105":1}}],["purpose",{"2":{"5":2,"6":1,"7":6,"10":2,"103":1,"104":2,"106":1,"138":2,"160":6,"162":6,"165":1,"173":1,"179":1}}],["published",{"2":{"58":1,"112":1}}],["pull",{"2":{"37":1,"83":2}}],["put",{"2":{"2":1,"52":1,"74":1,"106":1,"177":1,"179":1}}],["pipe",{"2":{"177":1,"179":1}}],["pipelines",{"2":{"52":1,"177":2,"180":1}}],["pipeline",{"2":{"6":1,"56":1,"58":2,"60":2,"62":1,"64":10,"90":3,"181":16}}],["pinpoint",{"2":{"151":1}}],["pinpointing",{"2":{"128":1}}],["pirate",{"2":{"87":4,"179":6}}],["piece",{"2":{"64":1,"181":3}}],["pieces",{"2":{"2":1,"63":1}}],["picking",{"2":{"142":1}}],["pick",{"2":{"8":1,"52":1,"100":1,"106":1,"134":1,"136":1,"177":1,"179":1}}],["picture",{"2":{"5":2,"6":1,"7":2}}],["pounds",{"2":{"179":1}}],["port",{"2":{"179":5}}],["porsche",{"2":{"86":2,"106":2}}],["pop",{"2":{"177":1}}],["population=",{"2":{"96":1}}],["population",{"2":{"95":1,"96":4}}],["popular",{"2":{"82":1}}],["points",{"2":{"119":1,"128":4,"138":1,"139":1,"150":9,"151":4,"158":1,"159":1,"161":1,"168":1,"175":1,"177":1,"179":2,"181":1}}],["point",{"2":{"60":1,"64":1,"87":2,"106":1,"118":1,"128":1,"150":2,"151":1,"158":2,"179":2,"181":1}}],["pose",{"2":{"151":1}}],["positive",{"2":{"77":1,"158":1,"165":1,"169":1,"173":1}}],["positions1",{"2":{"181":3}}],["positions3",{"2":{"181":2}}],["positions2",{"2":{"181":5}}],["positions",{"2":{"179":10,"181":32}}],["position",{"2":{"67":1,"179":1,"181":9}}],["pos",{"2":{"67":4,"179":4,"181":1}}],["post",{"2":{"162":2,"175":5,"179":6,"181":1}}],["posts",{"2":{"138":1,"162":1}}],["postorderdfs",{"2":{"52":3,"177":8}}],["postprocessor",{"2":{"64":8,"181":11}}],["postprocessing",{"0":{"47":1},"2":{"47":1,"63":1,"64":1,"181":3}}],["postprocess",{"2":{"45":1,"61":1,"64":3,"179":7,"181":5}}],["possibly",{"2":{"181":1}}],["possible",{"2":{"7":1,"52":1,"67":4,"122":1,"123":2,"150":1,"165":1,"173":1,"176":1,"177":1,"179":6,"181":4}}],["possess",{"2":{"12":1}}],["possessions",{"2":{"12":1,"35":1}}],["powerful",{"2":{"15":1,"21":1,"52":1,"56":1,"89":1,"106":2,"124":1,"148":1,"177":1,"179":1,"181":1}}],["powered",{"2":{"14":1,"96":1}}],["power",{"2":{"12":1,"112":1}}],["poor",{"2":{"4":1}}],["potentially",{"2":{"63":1,"64":2,"181":2}}],["potential",{"2":{"2":2,"52":1,"63":1,"125":1,"169":1,"177":2}}],["pt",{"2":{"1":1,"15":2,"22":2,"23":3,"24":6,"25":1,"26":2,"27":1,"28":1,"29":4,"30":2,"31":2,"32":1,"35":2,"37":5,"39":1,"41":2,"42":6,"47":1,"52":6,"64":10,"81":1,"84":5,"87":2,"89":2,"90":4,"105":12,"106":3,"177":19,"179":72,"181":30}}],["palm",{"2":{"179":1}}],["packed",{"2":{"181":8}}],["pack",{"2":{"179":1,"181":9}}],["packages",{"2":{"13":2,"24":2,"52":1,"58":1,"112":1,"166":1,"167":1,"179":4,"180":1,"181":2}}],["package",{"2":{"1":1,"2":1,"10":1,"24":10,"32":1,"37":1,"52":1,"56":1,"73":1,"94":1,"97":2,"100":1,"104":1,"112":1,"177":1,"179":9,"181":5}}],["payout",{"2":{"169":1}}],["payload",{"2":{"106":1}}],["paying",{"0":{"77":1},"2":{"77":1}}],["pay",{"2":{"74":1,"77":3}}],["painting",{"2":{"67":1,"179":1}}],["pair",{"0":{"5":1,"6":1},"2":{"179":5,"181":2}}],["pairs",{"0":{"4":1},"2":{"3":1,"6":1,"57":1,"64":3,"179":3,"181":3}}],["padding",{"2":{"67":1,"179":6,"181":1}}],["padawan",{"2":{"12":1,"35":1,"179":1}}],["pauses",{"2":{"41":1}}],["paper",{"2":{"21":2,"52":2,"123":1,"128":1,"177":2,"181":1}}],["page",{"2":{"8":1,"24":1,"32":1,"47":1,"71":1,"72":1,"93":1,"179":2}}],["pages",{"2":{"2":3,"11":1,"176":1}}],["paris",{"2":{"95":1,"181":3}}],["parents",{"2":{"177":1}}],["parent",{"2":{"64":1,"91":1,"177":4,"179":16,"181":41}}],["param2",{"2":{"181":1}}],["param1",{"2":{"181":1}}],["parameter",{"2":{"64":1,"105":1,"106":3,"177":1,"179":5,"181":5}}],["parameters",{"2":{"2":1,"6":2,"7":3,"10":2,"52":1,"64":16,"104":2,"106":5,"177":3,"179":8,"181":29}}],["paragraphs",{"2":{"67":2,"88":1,"179":2}}],["paragraph",{"2":{"67":3,"88":1,"179":3,"181":2}}],["parallelism",{"2":{"58":1}}],["parallel",{"2":{"52":1,"58":7,"64":1,"177":1,"181":6}}],["paralellize",{"2":{"46":1}}],["parts",{"2":{"57":1,"139":1,"151":1,"177":1,"179":1}}],["particular",{"2":{"64":1,"65":1,"169":1,"179":1,"181":1}}],["particularly",{"2":{"52":1,"67":2,"142":1,"143":1,"145":1,"177":2,"179":4}}],["partially",{"2":{"179":1}}],["partial",{"2":{"24":2,"58":1,"90":2,"179":2,"181":2}}],["part",{"2":{"12":1,"52":1,"63":2,"64":2,"150":2,"177":1,"179":6,"181":2}}],["parseable",{"2":{"86":2}}],["parses",{"2":{"52":1,"179":1}}],["parser",{"2":{"52":1,"179":1}}],["parse",{"2":{"20":1,"52":2,"77":1,"177":1,"179":4}}],["parsed",{"2":{"8":1,"52":6,"106":1,"179":8}}],["parsing",{"2":{"7":1,"19":1,"52":6,"177":1,"179":7}}],["patience",{"2":{"41":1}}],["pathways",{"2":{"165":1,"173":1}}],["path=",{"2":{"20":1,"43":1,"179":5}}],["path",{"2":{"12":1,"35":2,"41":1,"43":2,"179":33}}],["paths",{"2":{"4":1,"64":4,"179":2,"181":6}}],["patterns",{"2":{"179":3}}],["pattern",{"2":{"1":1,"11":1,"179":4}}],["past",{"2":{"85":2,"128":5,"177":2,"179":1}}],["paste",{"2":{"2":1}}],["passage",{"2":{"122":3,"123":3,"181":2}}],["passages",{"2":{"110":7,"181":1}}],["passtroughtagger",{"2":{"64":1,"181":1}}],["passthroughtagger",{"2":{"64":3,"179":1,"181":6}}],["passthrough",{"2":{"63":1,"179":1,"181":3}}],["pass",{"2":{"52":1,"60":1,"62":3,"64":4,"85":1,"177":1,"179":9,"181":22}}],["passes",{"2":{"21":1,"51":1,"181":4}}],["passed",{"2":{"6":1,"7":4,"52":2,"58":1,"60":2,"64":9,"86":1,"177":8,"179":8,"181":9}}],["passing",{"0":{"62":1},"2":{"0":1,"52":1,"177":1}}],["pragmatic",{"2":{"138":1,"139":1,"140":1}}],["practics",{"2":{"179":1}}],["practically",{"2":{"177":1}}],["practical",{"2":{"96":1,"106":1,"159":1,"161":1,"168":1,"179":1,"181":1}}],["practices",{"2":{"58":6,"64":1,"140":1,"181":6}}],["practice",{"2":{"4":1,"7":1,"105":1}}],["pristine",{"2":{"179":1}}],["primary",{"2":{"179":1}}],["pricing",{"2":{"77":1}}],["price",{"2":{"77":1}}],["privacy",{"0":{"71":1},"2":{"69":1}}],["principles",{"2":{"60":1}}],["printed",{"2":{"64":1,"179":2,"181":4}}],["printstyled",{"2":{"181":1}}],["prints",{"2":{"52":1,"64":1,"177":1,"179":2,"181":3}}],["println",{"2":{"52":5,"177":2,"179":7}}],["print",{"2":{"24":1,"49":3,"52":6,"58":1,"64":4,"67":1,"177":8,"179":35,"181":21}}],["printing",{"2":{"10":1,"57":1,"58":2,"179":1,"181":1}}],["priority",{"2":{"179":1}}],["prioritizing",{"2":{"142":1,"143":1,"145":1}}],["prioritize",{"2":{"112":1,"118":1,"151":1,"165":1,"166":1,"167":1,"173":1,"177":2}}],["prior",{"2":{"37":1,"179":1,"181":1}}],["pr",{"2":{"24":1}}],["prettify",{"2":{"181":1}}],["pretty",{"2":{"10":1,"52":1,"57":1,"58":2,"64":3,"90":1,"177":1,"179":5,"181":7}}],["predicts",{"2":{"169":1}}],["prediction",{"2":{"169":6}}],["predictions",{"2":{"169":2}}],["prerequisites",{"0":{"93":1}}],["pre",{"2":{"90":1,"103":1,"179":2,"181":1}}],["preprocessor",{"2":{"181":2}}],["preprocessed",{"2":{"181":1}}],["preprocess",{"2":{"179":1,"181":4}}],["prepayment",{"2":{"93":1}}],["preparing",{"2":{"118":1}}],["prepare",{"2":{"61":1,"62":1,"64":1,"181":2}}],["prepared",{"2":{"52":1,"177":1}}],["preparation",{"2":{"60":1,"63":1,"181":11}}],["prepend",{"2":{"85":1}}],["prepended",{"2":{"52":1,"179":2}}],["prefences",{"2":{"179":1}}],["prefer",{"2":{"46":1,"67":2,"90":1,"156":1,"166":1,"167":1,"179":2}}],["preferencesfor",{"2":{"179":1}}],["preferences",{"0":{"79":1},"2":{"23":2,"26":2,"42":1,"73":1,"79":3,"84":2,"179":36}}],["preference",{"2":{"0":1,"179":5}}],["prefix",{"2":{"52":3,"179":5}}],["preorderdfs",{"2":{"52":1,"177":3}}],["precedence",{"2":{"150":1,"154":1,"179":1}}],["preceding",{"2":{"2":1,"181":1}}],["precision",{"2":{"124":1,"150":1,"176":1}}],["precisely",{"2":{"150":2,"154":1,"158":1,"164":1}}],["precise",{"2":{"24":3,"103":1,"105":2,"148":1,"155":1,"159":1,"161":1,"163":1,"168":1,"171":1}}],["precompile",{"2":{"73":1}}],["precompiled",{"2":{"73":1}}],["precompilation",{"2":{"73":3}}],["present",{"2":{"124":1,"151":1,"152":1,"179":4}}],["preserve",{"2":{"67":1,"179":1,"181":1}}],["preserving",{"2":{"67":2,"179":2}}],["preset",{"2":{"0":1,"179":3}}],["press",{"2":{"24":2}}],["prev",{"2":{"181":1}}],["previously",{"2":{"67":1,"87":1,"88":1,"103":1,"128":1,"179":1,"181":3}}],["previous",{"2":{"24":1,"52":4,"85":1,"95":1,"101":2,"115":1,"116":1,"128":2,"150":1,"154":1,"177":5,"179":5}}],["previews",{"2":{"179":2}}],["preview",{"2":{"13":2,"15":2,"24":3,"87":2,"177":3,"179":10}}],["prevent",{"2":{"11":1,"76":1,"179":1}}],["proxy",{"2":{"177":1}}],["proposed",{"2":{"177":1}}],["propertynames",{"2":{"179":5}}],["property",{"2":{"179":6,"181":6}}],["properties",{"2":{"52":2,"91":1,"106":3,"177":1,"179":9,"181":1}}],["proper",{"2":{"52":1,"177":1,"179":1,"181":3}}],["properly",{"2":{"8":1}}],["professional",{"2":{"138":1,"158":1}}],["proficient",{"2":{"24":2}}],["project",{"2":{"87":2,"89":1,"179":1}}],["projects",{"2":{"79":1}}],["prototyping",{"2":{"87":1}}],["programming",{"2":{"58":2,"140":1,"162":1}}],["programmatically",{"2":{"52":1,"179":1}}],["programmer",{"2":{"13":1,"24":4,"102":1,"140":1,"161":1,"163":1,"164":1,"165":1,"166":1,"167":1,"171":1,"172":1,"173":1,"179":2}}],["program",{"2":{"52":2,"86":2,"177":2}}],["promising",{"2":{"52":1,"177":1}}],["prompting",{"2":{"179":1}}],["promptingtools",{"2":{"0":2,"1":4,"10":2,"12":1,"13":2,"15":2,"19":1,"21":1,"22":1,"23":4,"24":11,"25":3,"26":3,"27":1,"28":1,"29":1,"30":1,"31":1,"32":4,"37":3,"45":2,"46":1,"47":1,"48":2,"52":13,"53":1,"55":1,"56":2,"58":1,"64":6,"65":1,"66":1,"67":7,"73":5,"78":1,"79":3,"81":3,"82":1,"84":1,"85":4,"86":1,"87":5,"88":1,"89":1,"90":8,"91":3,"93":1,"94":4,"97":1,"104":1,"105":6,"106":2,"177":72,"178":4,"179":563,"180":3,"181":283}}],["promptengineerfortask",{"0":{"148":1}}],["prompts",{"0":{"12":1,"13":1,"35":1,"41":1,"101":1},"2":{"12":1,"13":2,"14":1,"17":2,"24":5,"74":1,"75":1,"98":2,"101":1,"103":2,"179":10}}],["prompt",{"0":{"87":1,"90":1,"103":1},"2":{"10":2,"17":3,"23":2,"24":2,"27":2,"31":2,"36":1,"42":3,"52":3,"60":1,"74":2,"84":2,"86":2,"87":3,"90":3,"91":1,"95":1,"96":1,"98":1,"101":1,"103":2,"104":2,"106":8,"108":2,"110":2,"112":2,"113":2,"115":2,"116":2,"118":2,"119":2,"120":3,"122":2,"123":2,"124":2,"125":2,"126":2,"128":2,"129":2,"130":2,"132":2,"134":2,"135":2,"136":2,"138":2,"139":2,"140":2,"142":3,"143":3,"145":2,"147":5,"148":9,"150":3,"151":3,"152":1,"154":1,"155":2,"156":2,"157":2,"158":2,"159":2,"160":2,"161":2,"162":2,"163":2,"164":2,"165":2,"166":2,"167":2,"168":2,"169":2,"171":3,"172":3,"173":3,"175":3,"176":2,"177":3,"179":245,"181":3}}],["prob",{"2":{"179":4}}],["probabilities",{"2":{"179":1}}],["probability",{"2":{"169":4,"179":2}}],["probably",{"2":{"1":1,"11":2}}],["problems",{"2":{"67":2,"128":1,"164":1,"166":1,"167":1,"172":1,"179":2}}],["problem",{"2":{"41":1,"140":1,"164":1,"166":1,"167":1}}],["produce",{"2":{"36":1}}],["production",{"2":{"180":1}}],["product",{"2":{"7":1,"16":1,"67":3,"179":5}}],["processed",{"2":{"67":1,"179":2,"181":2}}],["processes",{"2":{"64":1,"67":1,"177":1,"179":1,"181":1}}],["processor=rt",{"2":{"64":1,"181":1}}],["processor",{"2":{"64":11,"181":24}}],["process",{"2":{"21":1,"51":1,"64":2,"65":1,"74":2,"86":2,"89":2,"124":1,"126":1,"177":4,"179":9,"181":8}}],["processing",{"2":{"8":1,"58":2,"64":1,"67":1,"86":1,"95":1,"105":1,"177":1,"179":5,"181":1}}],["pro",{"2":{"14":1,"32":1,"33":1,"72":1,"95":1,"96":2,"179":2}}],["provide",{"2":{"2":2,"4":1,"5":2,"6":1,"7":2,"10":4,"12":1,"18":1,"19":2,"21":1,"23":2,"26":2,"30":1,"35":1,"37":1,"43":1,"51":2,"52":11,"54":1,"57":1,"58":3,"60":1,"62":1,"64":5,"69":1,"73":1,"85":1,"87":1,"96":1,"100":1,"101":1,"103":2,"104":3,"106":6,"110":1,"112":1,"113":2,"115":3,"116":3,"118":1,"120":1,"124":1,"128":3,"136":1,"138":3,"139":4,"140":2,"147":1,"150":2,"156":1,"158":1,"160":1,"162":1,"177":16,"179":56,"181":12}}],["provides",{"2":{"2":1,"42":1,"48":1,"56":1,"65":1,"67":1,"112":1,"118":1,"151":1,"165":1,"166":1,"167":1,"173":1,"177":3,"179":3,"181":2}}],["provided",{"2":{"2":1,"7":1,"10":3,"15":1,"17":2,"20":1,"21":2,"24":2,"31":1,"49":1,"51":2,"52":7,"56":1,"58":2,"60":1,"63":3,"64":10,"66":1,"67":2,"87":1,"104":3,"105":1,"106":8,"108":2,"112":2,"113":2,"115":1,"116":1,"118":4,"119":9,"120":2,"122":2,"123":1,"125":1,"128":2,"130":1,"134":1,"135":3,"136":2,"138":1,"140":3,"142":1,"143":1,"145":1,"150":1,"152":2,"154":1,"156":2,"158":1,"160":1,"162":1,"164":2,"165":1,"169":2,"172":1,"173":2,"175":1,"176":1,"177":14,"179":91,"181":42}}],["provider",{"2":{"0":4,"27":2,"90":2,"99":1,"100":1,"105":1,"106":2}}],["providers",{"0":{"0":1,"99":1},"2":{"0":1,"23":1,"27":1,"64":1,"90":1,"98":2,"99":2,"106":1,"179":3,"181":4}}],["providing",{"0":{"43":1},"2":{"0":1,"27":1,"28":1,"31":1,"43":1,"49":2,"64":2,"151":1,"177":2,"179":1,"181":2}}],["v3",{"2":{"181":3}}],["vocab",{"2":{"181":10}}],["vocabulary",{"2":{"64":1,"124":1,"181":8}}],["voyage",{"2":{"179":4}}],["voyager",{"2":{"70":1}}],["v2",{"2":{"37":1,"64":1,"181":1}}],["v1",{"2":{"28":1,"30":1,"31":1,"73":2,"179":9,"181":2}}],["v0",{"2":{"28":1,"106":1}}],["vcat",{"2":{"12":1}}],["vscodedisplay",{"2":{"13":2,"24":2,"179":4}}],["vscode",{"2":{"11":1,"13":1,"24":1,"179":2}}],["vs",{"2":{"10":1,"52":2,"57":1,"64":1,"67":1,"98":1,"177":2,"179":1,"181":2}}],["vidid",{"2":{"179":2}}],["video",{"2":{"150":3,"151":1}}],["videos",{"2":{"150":2,"151":2}}],["vibrant",{"2":{"67":1,"179":2}}],["visible",{"2":{"176":1}}],["visits",{"2":{"177":6}}],["visit",{"2":{"75":1}}],["vision",{"2":{"10":1,"104":1,"179":4}}],["visualize",{"2":{"179":1}}],["visualization",{"2":{"58":1}}],["visual",{"0":{"174":1},"1":{"175":1,"176":1},"2":{"72":1,"93":1}}],["viewers",{"2":{"179":2}}],["view",{"2":{"52":1,"177":1,"179":2,"181":9}}],["via",{"0":{"79":1},"2":{"2":1,"6":1,"12":1,"16":1,"20":1,"23":2,"26":2,"28":1,"42":1,"52":2,"58":1,"60":1,"63":1,"64":2,"66":1,"73":1,"83":1,"93":1,"99":1,"106":3,"108":1,"115":1,"116":1,"135":1,"142":1,"143":1,"145":1,"177":2,"179":20,"181":9}}],["vect",{"2":{"181":2}}],["vectorstore",{"2":{"126":1}}],["vectors",{"2":{"64":1,"179":3,"181":5}}],["vectorized",{"2":{"7":1}}],["vector",{"2":{"4":1,"13":2,"16":1,"19":2,"24":3,"31":1,"45":4,"47":1,"52":3,"58":1,"61":1,"64":18,"67":13,"85":1,"86":1,"87":4,"89":1,"90":4,"91":1,"100":1,"103":1,"105":4,"106":1,"177":5,"179":157,"181":82}}],["ve",{"2":{"37":1,"42":1,"74":1,"83":1,"105":1}}],["vegetable",{"2":{"17":1,"179":2}}],["verification",{"2":{"181":1}}],["verify",{"2":{"179":1}}],["versus",{"2":{"181":1}}],["version=",{"2":{"87":1,"179":1}}],["versions",{"2":{"73":1,"91":1}}],["version",{"2":{"7":1,"13":2,"24":1,"42":1,"51":1,"52":1,"58":1,"64":1,"73":1,"83":1,"87":1,"96":1,"108":1,"110":1,"112":1,"113":1,"115":1,"116":1,"118":1,"119":1,"120":1,"122":1,"123":1,"124":1,"125":1,"126":1,"128":2,"129":1,"130":1,"132":1,"134":1,"135":1,"136":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"147":1,"148":1,"150":2,"151":1,"152":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"171":1,"172":1,"173":1,"175":1,"176":1,"177":1,"179":9,"181":3}}],["verbatim",{"2":{"152":3,"154":1}}],["verbosity",{"2":{"52":2,"64":1,"177":4,"181":2}}],["verbose=2",{"2":{"177":1}}],["verbose=true",{"2":{"64":1,"179":3,"181":1}}],["verbose=false",{"2":{"52":1,"177":1}}],["verbose",{"2":{"4":1,"6":1,"7":2,"10":1,"13":1,"21":1,"51":1,"52":6,"64":16,"104":1,"177":7,"179":38,"181":68}}],["very",{"2":{"10":1,"18":2,"21":1,"66":1,"74":1,"83":1,"104":1,"119":2,"159":1,"161":1,"164":1,"166":1,"167":1,"168":1,"172":1,"179":2,"181":1}}],["vararg",{"2":{"179":2}}],["varextracteddata235",{"2":{"179":1}}],["varying",{"2":{"179":1}}],["variety",{"2":{"23":1,"26":1,"138":1}}],["various",{"0":{"9":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1},"2":{"52":1,"60":1,"96":1,"168":1,"177":1,"181":2}}],["variables",{"2":{"12":1,"13":1,"24":1,"29":1,"52":2,"73":1,"78":1,"87":1,"90":1,"94":1,"95":1,"96":1,"112":1,"166":1,"167":1,"179":33}}],["variable",{"0":{"78":1},"2":{"0":1,"30":1,"31":1,"52":2,"54":1,"78":3,"85":1,"90":1,"91":1,"93":3,"112":1,"140":1,"169":2,"179":12}}],["vanilla",{"2":{"106":1}}],["vanished",{"2":{"67":1,"179":1}}],["vast",{"2":{"67":1,"179":1}}],["valid",{"2":{"49":1,"64":1,"177":1,"179":1,"181":3}}],["validated",{"2":{"181":1}}],["validate",{"2":{"21":2,"51":1,"165":1,"173":1}}],["validation",{"0":{"21":1},"2":{"51":1}}],["value2",{"2":{"181":1}}],["value1",{"2":{"181":1}}],["value",{"2":{"7":2,"21":1,"51":1,"52":3,"112":1,"113":1,"166":1,"167":1,"169":2,"177":8,"179":17,"181":2}}],["values",{"2":{"6":1,"7":10,"52":1,"60":1,"112":1,"169":6,"177":1,"179":8,"181":6}}],["valuable",{"2":{"1":1}}],["vllm",{"2":{"0":1,"70":1,"179":1}}],["lucene",{"2":{"181":2}}],["l99",{"2":{"179":1}}],["l924",{"2":{"179":1}}],["l926",{"2":{"179":1}}],["l116",{"2":{"179":1}}],["l154",{"2":{"179":1}}],["l123",{"2":{"42":1}}],["l315",{"2":{"179":1}}],["lngpt3t",{"2":{"90":1}}],["l244",{"2":{"181":1}}],["l245",{"2":{"179":1}}],["l215",{"2":{"181":1}}],["l288",{"2":{"67":1,"179":1}}],["l252",{"2":{"67":1,"179":1}}],["llava",{"2":{"42":1}}],["llamaindex",{"2":{"115":1,"116":1,"123":1,"125":1}}],["llama123",{"2":{"42":3}}],["llama2",{"2":{"37":1,"39":1,"42":2,"83":1,"84":1,"179":1}}],["llama",{"0":{"28":1},"2":{"0":1,"25":1,"28":3,"29":6,"70":2,"98":1,"99":1,"179":6}}],["ll",{"2":{"21":1,"23":1,"26":1,"32":1,"34":1,"51":1,"52":1,"58":1,"75":1,"76":1,"83":1,"97":1,"106":3,"128":1,"177":1,"179":4}}],["llmtextanalysis",{"2":{"87":1}}],["llm",{"2":{"10":3,"11":1,"13":1,"19":1,"22":1,"24":1,"49":2,"52":5,"62":1,"64":2,"77":1,"98":1,"99":1,"104":4,"135":1,"177":7,"179":8,"181":3}}],["llms",{"2":{"10":1,"13":1,"19":1,"64":1,"82":1,"83":1,"101":2,"104":1,"106":1,"110":1,"179":2,"181":2}}],["lt",{"2":{"10":3,"37":1,"55":2,"61":1,"64":4,"67":1,"78":1,"83":1,"87":3,"93":1,"100":2,"101":1,"102":1,"103":3,"104":3,"106":1,"177":1,"178":2,"179":23,"181":31}}],["laptop",{"2":{"106":1}}],["launch",{"2":{"78":1,"83":1}}],["launching",{"2":{"78":1,"93":1}}],["launched",{"2":{"37":1}}],["latter",{"2":{"70":1}}],["latency",{"2":{"179":1,"181":3}}],["latest",{"2":{"13":1,"15":1,"24":4,"28":1,"58":2,"71":1,"73":1,"83":1,"108":1,"115":1,"116":1,"128":1,"163":1,"171":1,"177":1,"179":8}}],["later",{"2":{"2":1,"4":1,"7":1,"13":1,"47":1,"76":1,"106":1,"179":2,"181":2}}],["lament",{"2":{"67":1,"179":1}}],["langchain",{"0":{"88":1},"2":{"67":3,"88":1,"126":1,"179":3}}],["languages",{"2":{"32":1,"58":1,"179":2}}],["language",{"2":{"10":1,"13":3,"14":3,"21":1,"22":1,"24":6,"49":1,"52":2,"58":6,"98":1,"99":1,"101":1,"104":1,"122":2,"124":1,"126":1,"162":2,"163":2,"164":2,"165":1,"166":2,"167":2,"171":2,"172":2,"173":1,"177":2,"179":5,"181":3}}],["lazily",{"2":{"52":1,"177":1}}],["lazy",{"2":{"10":4,"21":2,"49":5,"51":2,"52":5,"86":1,"104":6,"177":20,"180":1}}],["layers",{"2":{"28":1}}],["largeint",{"2":{"86":3}}],["large",{"2":{"22":1,"30":1,"52":1,"58":1,"64":1,"66":1,"67":1,"98":1,"99":1,"101":1,"165":1,"173":1,"177":2,"179":2,"181":9}}],["larger",{"2":{"7":5,"64":1,"66":1,"67":1,"96":2,"158":1,"179":3,"181":1}}],["last",{"2":{"21":3,"49":3,"51":4,"52":32,"75":1,"85":4,"86":4,"105":1,"106":2,"128":1,"177":36,"179":38,"181":5}}],["lastly",{"2":{"10":1,"52":1,"177":1,"181":1}}],["lake",{"2":{"19":2}}],["labeling",{"2":{"156":2}}],["labeled",{"2":{"152":1}}],["labels",{"2":{"18":1,"156":1,"175":1}}],["label",{"2":{"18":1,"134":3,"156":4,"169":3}}],["lawyer",{"2":{"7":4}}],["led",{"2":{"118":1}}],["leetcode",{"2":{"67":1,"179":1}}],["legend",{"2":{"58":1}}],["legacy",{"2":{"20":1,"179":2}}],["less",{"2":{"52":1,"158":1,"162":1,"177":1}}],["leveraging",{"2":{"179":2}}],["leverages",{"2":{"23":1,"26":1,"54":1,"106":1,"177":1}}],["leverage",{"2":{"13":1,"14":1,"21":1,"52":1,"58":1,"100":1,"106":1,"160":2,"162":2,"177":1,"179":2}}],["level",{"2":{"52":2,"60":3,"62":1,"64":2,"67":1,"162":1,"177":4,"179":13,"181":4}}],["leaves",{"2":{"177":2}}],["leave",{"2":{"162":1}}],["leaving",{"2":{"67":2,"179":2}}],["leadership",{"2":{"152":1}}],["leads",{"2":{"35":1,"179":2}}],["leaf",{"2":{"64":2,"181":2}}],["least",{"2":{"63":1,"64":1,"152":1,"179":3,"181":1}}],["learn",{"2":{"179":1}}],["learned",{"2":{"12":1,"105":1}}],["learning",{"2":{"10":1,"49":1,"52":1,"58":1,"104":1,"177":1}}],["lengths",{"2":{"181":1}}],["length=20",{"2":{"67":1,"179":1}}],["length=13",{"2":{"67":1,"179":1}}],["length=10000",{"2":{"67":2,"179":2}}],["length=10",{"2":{"64":1,"67":2,"88":1,"179":2,"181":3}}],["length",{"2":{"7":1,"8":1,"21":2,"24":1,"28":1,"51":2,"52":32,"58":1,"64":4,"66":7,"67":35,"88":1,"138":1,"177":49,"179":53,"181":30}}],["left",{"2":{"6":1,"7":12,"52":1,"177":1,"179":1}}],["letters",{"2":{"175":1,"181":1}}],["letter",{"2":{"128":1,"129":1}}],["let",{"2":{"1":1,"2":2,"3":1,"5":1,"6":2,"7":2,"12":1,"19":1,"20":1,"22":1,"23":1,"24":3,"26":1,"30":1,"32":1,"37":1,"41":2,"51":1,"52":8,"58":3,"62":1,"64":1,"67":1,"74":1,"85":1,"86":2,"87":1,"105":2,"106":7,"128":1,"129":1,"177":9,"179":6,"181":5}}],["lossless",{"2":{"181":1}}],["losses",{"2":{"177":1}}],["losing",{"2":{"41":1}}],["lot",{"2":{"65":1}}],["lower",{"2":{"52":3,"64":1,"67":1,"177":3,"179":1,"181":1}}],["lowercased",{"2":{"181":1}}],["lowercase",{"2":{"20":1,"52":2,"177":2,"179":2,"181":1}}],["low",{"2":{"52":1,"74":1,"177":1,"179":8,"181":5}}],["love",{"2":{"35":1}}],["loads",{"2":{"87":1,"179":5}}],["loading",{"2":{"64":1,"179":1,"181":1}}],["loaded",{"2":{"24":1,"78":1,"179":2,"181":2}}],["load",{"2":{"23":1,"24":6,"26":1,"56":1,"87":10,"103":1,"106":1,"179":35,"181":3}}],["longer",{"2":{"112":1,"158":1,"179":1,"181":1}}],["longest",{"2":{"66":6,"67":17,"179":17}}],["long",{"2":{"23":2,"24":1,"26":1,"27":1,"29":1,"52":3,"74":1,"177":4,"179":1}}],["location",{"2":{"19":3,"91":1,"179":9}}],["localserver",{"2":{"179":1}}],["localserveropenaischema",{"2":{"0":1,"179":5}}],["localpreferences",{"2":{"79":1,"179":2}}],["locally",{"2":{"25":1,"43":1,"64":3,"70":1,"98":1,"99":1,"106":1,"179":2,"181":3}}],["localhost",{"2":{"23":1,"28":1,"62":3,"64":3,"179":7,"181":3}}],["local",{"0":{"37":1},"1":{"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1},"2":{"0":2,"23":1,"43":1,"52":1,"69":1,"73":1,"77":1,"84":1,"177":1,"179":20,"181":1}}],["logprobs",{"2":{"179":4}}],["logged",{"2":{"64":1,"181":1}}],["logging",{"0":{"91":1},"2":{"52":2,"64":5,"177":6,"179":5,"181":16}}],["logical",{"2":{"140":1}}],["logically",{"2":{"140":1}}],["logic",{"2":{"64":5,"67":1,"100":1,"105":1,"140":1,"177":1,"179":8,"181":9}}],["logit",{"2":{"10":1,"18":1,"104":1,"179":12}}],["logo",{"2":{"20":1,"179":2}}],["logs",{"2":{"10":1,"64":2,"104":1,"179":3,"181":4}}],["log",{"2":{"7":1,"11":1,"64":1,"91":2,"179":33,"181":1}}],["loose",{"2":{"181":1}}],["loosely",{"2":{"101":1,"103":1,"128":1}}],["look",{"2":{"64":1,"74":1,"88":1,"105":1,"179":1,"181":2}}],["looking",{"2":{"23":1,"26":1,"58":3,"177":1,"181":1}}],["looks",{"2":{"15":1,"52":1,"63":1,"103":1,"179":4,"181":2}}],["lookups",{"2":{"181":1}}],["lookup",{"2":{"2":2,"8":1,"124":1,"179":2,"181":3}}],["loop",{"2":{"7":1,"24":1,"74":1,"177":2}}],["lifting",{"2":{"106":1}}],["lifecycle",{"2":{"177":1}}],["life",{"2":{"29":1}}],["lightweight",{"2":{"181":1}}],["light",{"2":{"95":1,"106":1,"179":4}}],["libraries",{"2":{"58":1,"166":1,"167":1}}],["library",{"2":{"37":1,"83":1}}],["living",{"2":{"35":1,"179":1}}],["linux",{"2":{"168":3}}],["linuxbashexpertask",{"0":{"168":1}}],["links",{"2":{"179":6}}],["link",{"2":{"24":1,"37":1,"150":1,"179":1}}],["line",{"2":{"11":1,"24":1,"28":2,"78":1,"150":1,"151":1,"179":3,"181":1}}],["lines",{"0":{"2":1},"2":{"2":1,"52":3,"67":1,"179":9,"181":2}}],["linearalgebra",{"2":{"1":2,"16":2,"47":2,"56":1,"179":5,"181":5}}],["limitations",{"2":{"97":1,"179":2}}],["limits",{"0":{"76":1},"2":{"72":1,"74":4,"76":1,"177":1,"179":2}}],["limited",{"2":{"67":1,"169":1,"179":3}}],["limit",{"0":{"74":1},"2":{"14":1,"74":7,"76":4,"106":1,"179":9,"181":6}}],["listened",{"2":{"67":1,"179":1}}],["listed",{"2":{"7":2,"110":2}}],["list",{"2":{"10":1,"24":1,"37":2,"55":4,"57":1,"58":1,"67":1,"83":1,"104":1,"106":1,"128":3,"134":1,"136":1,"139":1,"140":1,"151":2,"178":4,"179":26,"181":12}}],["literate",{"2":{"8":1,"24":1,"47":1}}],["likelyhood",{"2":{"179":2}}],["likely",{"2":{"10":2,"74":1,"77":1}}],["like",{"0":{"88":1},"2":{"2":2,"6":1,"7":2,"12":1,"13":1,"19":1,"21":1,"24":2,"25":1,"30":1,"31":1,"32":1,"35":1,"39":1,"42":2,"49":2,"51":1,"52":4,"60":1,"63":1,"64":3,"67":1,"85":1,"86":1,"87":5,"91":4,"96":1,"106":1,"112":1,"157":1,"165":1,"166":1,"167":1,"173":1,"177":5,"179":24,"181":10}}],["kw2",{"2":{"181":2}}],["kw",{"2":{"181":3}}],["kwarg",{"2":{"10":1,"52":1,"60":3,"73":1,"85":1,"104":1,"177":1,"181":4}}],["kwargs`",{"2":{"62":1}}],["kwargs=",{"2":{"20":1,"23":1,"27":1,"28":1,"37":2,"52":3,"58":1,"60":1,"91":1,"104":2,"106":2,"177":3,"179":10,"181":2}}],["kwargs",{"0":{"80":1},"2":{"0":2,"10":3,"21":2,"29":1,"51":2,"52":15,"58":2,"60":2,"62":22,"64":81,"87":1,"90":1,"91":2,"104":3,"106":2,"177":33,"178":2,"179":165,"181":150}}],["king",{"2":{"55":2,"178":2}}],["kinds",{"2":{"7":3}}],["knows",{"2":{"64":1,"100":1,"181":1}}],["knowing",{"2":{"17":1}}],["knowledge",{"2":{"13":1,"15":1,"24":4,"56":2,"108":1,"115":1,"116":1,"159":1,"161":1,"163":1,"168":1,"171":1,"179":2}}],["know",{"2":{"12":1,"23":1,"24":2,"26":1,"30":2,"31":1,"74":1,"86":1,"108":2,"115":2,"116":2,"166":1,"167":1,"179":1}}],["known",{"2":{"10":1,"32":1,"67":1,"88":1,"104":1,"179":4}}],["k=5",{"2":{"181":1}}],["k=5`",{"2":{"181":1}}],["k=100",{"2":{"64":1,"181":1}}],["k=",{"2":{"7":10}}],["k",{"2":{"2":1,"6":2,"7":2,"28":1,"37":1,"62":2,"64":7,"181":29}}],["kept",{"2":{"42":1}}],["keeping",{"2":{"177":1}}],["keeps",{"2":{"6":1,"179":2}}],["keep",{"2":{"2":1,"8":1,"21":1,"27":1,"28":1,"52":1,"112":1,"150":1,"151":1,"154":1,"177":2,"179":1,"181":3}}],["key1",{"2":{"179":1}}],["keylocal",{"2":{"179":1}}],["keypreset",{"2":{"179":1}}],["key=env",{"2":{"23":1,"26":1}}],["keywordsprocessor",{"2":{"64":1,"179":1,"181":6}}],["keywords",{"2":{"64":5,"112":1,"113":2,"124":3,"156":1,"179":1,"181":27}}],["keywordsindexer",{"2":{"64":1,"179":1,"181":4}}],["keyword",{"0":{"62":1,"80":1},"2":{"10":5,"12":1,"14":1,"15":1,"24":2,"43":2,"49":1,"52":5,"60":2,"62":2,"64":11,"74":1,"85":2,"87":1,"96":1,"103":1,"104":5,"113":1,"124":1,"147":1,"177":11,"179":55,"181":18}}],["keys",{"2":{"7":1,"23":1,"27":1,"58":1,"105":1,"106":1,"179":10,"181":10}}],["key",{"0":{"72":1,"73":3,"78":1,"79":1,"98":1},"1":{"99":1,"100":1,"101":1,"102":1,"103":1,"104":1},"2":{"0":3,"6":1,"7":9,"8":1,"23":5,"24":2,"26":2,"27":3,"29":3,"30":1,"31":1,"32":3,"52":2,"54":2,"55":4,"64":2,"72":3,"73":9,"78":10,"79":5,"93":12,"97":1,"98":1,"105":1,"106":2,"122":1,"123":1,"138":1,"142":1,"143":1,"145":1,"150":3,"151":5,"156":1,"166":3,"167":3,"175":2,"177":3,"178":5,"179":136,"181":17}}],["uct",{"2":{"177":12,"179":1}}],["ultimately",{"2":{"86":1}}],["u>",{"2":{"67":1,"179":6,"181":1}}],["u>promptingtools",{"2":{"67":1,"179":6,"181":1}}],["uint16",{"2":{"177":1}}],["uint64",{"2":{"45":2,"181":7}}],["uint8",{"2":{"45":1}}],["utils",{"2":{"67":1,"179":1}}],["utilized",{"2":{"112":1,"179":1}}],["utilizes",{"2":{"0":1}}],["utilizing",{"2":{"58":1}}],["utility",{"2":{"49":2,"66":1,"88":1,"105":1,"151":1,"179":6}}],["utilities",{"0":{"65":1},"1":{"66":1,"67":1},"2":{"21":1,"48":1,"49":2,"51":1,"52":1,"56":1,"64":1,"65":1,"66":1,"67":2,"177":2,"181":2}}],["ut",{"2":{"19":1}}],["unpack",{"2":{"181":4}}],["unhealthy",{"2":{"179":1}}],["unable",{"2":{"179":1}}],["unanswered",{"2":{"67":1,"179":1}}],["unbiased",{"2":{"156":1}}],["unchanged",{"2":{"181":1}}],["unclear",{"2":{"139":2,"181":1}}],["uncommon",{"2":{"124":1}}],["unfortunately",{"2":{"106":2}}],["unwrapping",{"2":{"179":2}}],["unwraps",{"2":{"177":1,"179":1}}],["unwrap",{"2":{"91":1,"177":2,"179":11}}],["unnecessary",{"2":{"88":1,"118":1,"126":1}}],["unexpected",{"2":{"76":1}}],["unexported",{"2":{"48":1,"56":1,"81":1}}],["unlock",{"2":{"104":1}}],["unlike",{"2":{"75":1,"181":1}}],["unless",{"2":{"67":1,"158":2,"166":2,"167":2,"179":2}}],["unspecified",{"2":{"179":6}}],["unspoken",{"2":{"67":1,"179":1}}],["unsuccessfully",{"2":{"52":1,"179":1}}],["unsafe",{"2":{"52":7,"177":2,"179":7}}],["unusable",{"2":{"37":1}}],["un",{"2":{"24":1,"37":1}}],["until",{"2":{"21":3,"51":2,"52":2,"74":1,"177":1,"179":1}}],["unique",{"2":{"64":1,"112":1,"177":1,"179":10,"181":8}}],["universal",{"2":{"52":1,"177":1}}],["union",{"2":{"19":3,"31":1,"52":11,"64":4,"67":1,"106":1,"177":17,"179":93,"181":35}}],["units",{"2":{"181":1}}],["unitrange",{"2":{"45":1}}],["unit",{"2":{"19":2,"77":1,"98":1,"102":1,"128":1,"165":2,"173":2,"179":1,"181":5}}],["unicode",{"2":{"1":2,"56":1,"181":3}}],["unknown",{"2":{"17":3,"135":2,"179":5}}],["underscores",{"2":{"181":1}}],["understood",{"2":{"90":1,"140":1}}],["understandable",{"2":{"119":1,"179":1}}],["understand",{"2":{"49":1,"52":1,"64":1,"97":1,"138":1,"140":1,"150":1,"151":1,"162":1,"179":2,"181":1}}],["understanding",{"0":{"80":1},"2":{"41":1,"97":1,"118":1,"138":1}}],["underlying",{"2":{"10":1,"24":1,"49":1,"52":1,"56":1,"104":1,"106":1,"156":1,"177":2,"179":2,"181":5}}],["under",{"2":{"2":1,"18":1,"23":1,"26":1,"28":1,"49":1,"58":1,"67":1,"87":2,"97":1,"105":2,"106":1,"179":7}}],["updating",{"2":{"179":1}}],["updates",{"2":{"58":1,"177":2,"179":2,"181":1}}],["updated",{"2":{"52":1,"177":4,"179":3}}],["update",{"2":{"20":1,"52":1,"73":1,"177":1,"179":7,"181":1}}],["upto",{"2":{"179":2}}],["upfront",{"2":{"62":1,"64":1,"181":1}}],["uppercase",{"2":{"181":1}}],["uppercased",{"2":{"112":1}}],["upper",{"2":{"52":2,"177":4}}],["uploads",{"2":{"20":1,"179":2}}],["upon",{"2":{"12":1,"52":3,"70":1,"151":1,"177":2,"179":2}}],["up",{"2":{"1":1,"8":1,"11":1,"15":1,"52":2,"54":1,"58":1,"63":1,"72":1,"75":1,"85":1,"86":1,"103":1,"105":1,"106":3,"108":1,"115":1,"116":1,"158":1,"177":3,"179":2,"181":5}}],["usable",{"2":{"98":1,"103":1}}],["usage",{"2":{"21":1,"36":1,"67":1,"71":1,"140":1,"177":1,"179":5,"181":1}}],["usd",{"2":{"74":1}}],["usually",{"2":{"52":1,"73":1,"103":1,"177":2,"179":4}}],["usual",{"2":{"29":1,"30":2,"31":2}}],["us",{"2":{"10":1,"21":2,"49":2,"51":2,"52":1,"58":1,"71":1,"104":1,"177":1}}],["using",{"0":{"22":1,"23":1,"24":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"47":1,"96":1},"2":{"1":4,"5":1,"7":2,"8":2,"10":1,"23":1,"24":4,"27":1,"37":1,"42":1,"47":1,"56":2,"57":1,"58":4,"63":3,"64":7,"67":6,"81":1,"84":1,"87":1,"88":1,"93":1,"94":2,"104":1,"106":2,"110":1,"112":1,"118":1,"128":1,"151":4,"165":2,"169":1,"172":1,"173":2,"177":8,"179":39,"181":40}}],["uses",{"2":{"10":2,"11":1,"13":1,"28":1,"49":1,"64":1,"88":1,"104":2,"129":1,"179":9,"181":34}}],["useful",{"2":{"10":1,"15":1,"17":1,"21":1,"51":1,"52":4,"64":4,"67":3,"83":1,"104":2,"115":2,"116":1,"142":1,"143":1,"166":1,"167":1,"171":1,"172":1,"173":1,"177":2,"179":14,"181":16}}],["users",{"2":{"162":1,"179":1}}],["user=",{"2":{"87":1,"91":1,"103":1,"179":3}}],["usermessagewithimages",{"2":{"102":1,"179":5}}],["usermessage",{"2":{"10":1,"12":4,"24":5,"35":1,"41":1,"49":1,"52":2,"85":2,"87":2,"90":3,"98":2,"102":2,"103":2,"104":1,"105":2,"177":14,"179":25}}],["user",{"2":{"10":3,"12":2,"13":1,"15":1,"17":1,"24":1,"35":1,"36":1,"41":1,"49":1,"52":10,"56":1,"63":1,"87":3,"90":3,"98":1,"100":1,"102":3,"103":1,"104":3,"105":1,"106":5,"108":1,"110":1,"112":2,"113":1,"115":1,"116":1,"118":2,"119":4,"120":2,"122":2,"123":2,"124":3,"125":1,"126":3,"128":6,"129":2,"130":1,"132":2,"134":3,"135":1,"136":3,"138":10,"139":6,"140":11,"142":4,"143":4,"145":4,"147":5,"148":3,"150":2,"151":2,"154":2,"155":1,"156":2,"157":1,"158":6,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":5,"166":2,"167":2,"168":1,"169":1,"171":1,"172":1,"173":9,"175":1,"176":1,"177":13,"179":48}}],["used",{"2":{"6":2,"7":1,"15":4,"16":1,"17":2,"18":1,"52":2,"64":6,"67":4,"71":2,"85":1,"91":1,"98":1,"128":1,"129":1,"169":1,"177":11,"179":88,"181":25}}],["use",{"2":{"0":1,"1":1,"2":5,"7":2,"8":3,"10":3,"12":2,"13":4,"15":2,"16":1,"17":1,"18":3,"19":2,"20":1,"21":4,"22":2,"23":3,"24":8,"25":1,"26":2,"27":1,"28":1,"29":4,"30":4,"31":4,"32":1,"33":1,"34":1,"37":1,"39":1,"42":1,"43":1,"46":1,"51":4,"52":9,"54":1,"55":1,"56":1,"57":1,"58":1,"60":1,"61":1,"62":1,"63":1,"64":46,"67":7,"69":2,"71":4,"74":1,"77":2,"78":1,"79":1,"81":1,"82":1,"84":2,"85":3,"86":4,"87":6,"89":2,"91":2,"95":3,"96":4,"97":1,"100":1,"104":2,"105":3,"106":6,"128":4,"130":1,"150":9,"151":2,"156":1,"158":3,"159":1,"161":1,"162":1,"164":1,"166":1,"167":1,"168":1,"169":1,"175":1,"177":19,"178":1,"179":125,"181":85}}],["urls",{"2":{"102":1,"179":2}}],["url=env",{"2":{"29":1}}],["url=provider",{"2":{"27":1}}],["url=",{"2":{"23":1,"28":1,"179":2}}],["url",{"2":{"0":3,"10":1,"20":2,"23":1,"27":4,"43":1,"62":3,"64":4,"104":1,"178":1,"179":47,"181":7}}],["rules",{"2":{"181":1}}],["runtime",{"2":{"52":2,"177":2}}],["runs",{"2":{"52":2,"64":1,"73":1,"83":1,"177":1,"179":2,"181":3}}],["running",{"2":{"7":1,"22":2,"23":1,"24":1,"37":1,"58":1,"73":1,"83":3,"177":1,"179":2}}],["run",{"2":{"6":2,"7":3,"10":3,"14":1,"21":5,"22":1,"42":1,"49":3,"51":3,"52":10,"58":1,"61":1,"64":1,"73":1,"78":1,"79":1,"83":1,"86":2,"87":1,"90":5,"93":1,"96":1,"104":4,"106":2,"177":31,"179":52,"181":11}}],["ripple",{"2":{"67":1,"179":1}}],["river",{"2":{"67":1,"179":1}}],["right",{"2":{"7":11,"100":2,"106":2,"142":1,"177":1,"179":1,"181":4}}],["rm",{"2":{"24":1,"73":1}}],["rolls",{"2":{"181":1}}],["role=",{"2":{"179":8}}],["role",{"2":{"23":1,"27":1,"58":1,"90":2,"105":3,"151":1}}],["root",{"2":{"52":3,"64":5,"177":11,"179":1,"181":8}}],["robust",{"2":{"21":1,"69":1,"93":1,"104":1}}],["robustness",{"2":{"13":1,"49":1}}],["row",{"2":{"7":3}}],["rows",{"2":{"6":1,"7":18,"181":5}}],["roughly",{"2":{"98":1,"181":3}}],["routines",{"2":{"64":2,"181":2}}],["routing",{"0":{"18":1},"2":{"18":1,"134":1,"136":1,"179":3}}],["routed",{"2":{"136":1}}],["route",{"2":{"136":1}}],["router",{"2":{"10":1,"104":1,"136":1}}],["routes",{"2":{"0":1}}],["rounds=3",{"2":{"181":1}}],["rounds=5",{"2":{"177":1}}],["rounds",{"2":{"52":1,"106":1,"128":1,"177":18,"181":1}}],["round",{"2":{"7":2,"177":5}}],["raises",{"2":{"179":1}}],["raised",{"2":{"52":1,"152":1,"179":2}}],["rainy",{"2":{"179":4}}],["rationale",{"2":{"181":2}}],["ratio",{"2":{"175":1,"177":1}}],["rating",{"2":{"6":1,"120":1,"181":3}}],["ratelimit",{"2":{"74":2}}],["rate",{"0":{"74":1},"2":{"74":3,"181":3}}],["rare",{"2":{"73":1}}],["radius",{"2":{"67":1,"179":6,"181":1}}],["raw=true",{"2":{"179":1}}],["raw",{"2":{"52":1,"55":2,"178":2,"179":1}}],["rand",{"2":{"52":2,"179":3,"181":4}}],["random",{"2":{"52":1,"177":2,"179":3}}],["range",{"2":{"30":1,"31":1,"67":1,"179":1}}],["ranked",{"2":{"181":5}}],["rankermodel",{"2":{"181":1}}],["ranker",{"2":{"181":1}}],["rankgptresult",{"2":{"179":1,"181":4}}],["rankgptreranker",{"2":{"179":1,"181":4}}],["rankgpt",{"2":{"110":3,"181":9}}],["rankings",{"2":{"181":2}}],["ranking",{"0":{"109":1},"1":{"110":1},"2":{"8":1,"60":1,"110":1,"179":1,"181":15}}],["rankanswer",{"2":{"7":1}}],["rank",{"2":{"6":1,"110":4,"179":5,"181":40}}],["ranks",{"2":{"2":1,"181":3}}],["ragjuliaqueryhyde",{"0":{"122":1}}],["ragjudgeanswerfromcontextshort",{"0":{"120":1}}],["ragjudgeanswerfromcontext",{"0":{"119":1},"2":{"6":1,"181":2}}],["ragwebsearchrefiner",{"0":{"116":1},"2":{"181":2}}],["ragextractmetadatalong",{"0":{"112":1}}],["ragextractmetadatashort",{"0":{"113":1},"2":{"64":1,"181":4}}],["ragrankgpt",{"0":{"110":1},"2":{"181":1}}],["ragresult",{"2":{"52":3,"58":3,"63":2,"64":6,"179":1,"181":19}}],["ragcreateqafromcontext",{"0":{"118":1},"2":{"64":1,"181":1}}],["ragconfig",{"2":{"58":1,"60":1,"62":1,"64":3,"179":1,"181":10}}],["ragcontext",{"2":{"6":1}}],["ragquerysimplifier",{"0":{"126":1}}],["ragquerykeywordexpander",{"0":{"124":1}}],["ragqueryoptimizer",{"0":{"125":1},"2":{"64":1,"181":3}}],["ragqueryhyde",{"0":{"123":1},"2":{"62":3,"64":1,"181":4}}],["ragdetails",{"2":{"64":1,"181":1}}],["raganswerrefiner",{"0":{"115":1},"2":{"64":2,"181":4}}],["raganswerfromcontext",{"0":{"108":1},"2":{"64":2,"181":4}}],["ragtoolsexperimentalext",{"2":{"181":1}}],["ragtools",{"0":{"1":1,"181":1},"1":{"2":1},"2":{"1":3,"10":1,"56":3,"60":1,"63":1,"64":6,"66":2,"179":138,"180":2,"181":280}}],["rag",{"0":{"1":1,"2":1,"56":1,"59":1,"61":1,"107":1},"1":{"2":1,"57":1,"58":1,"59":1,"60":2,"61":2,"62":3,"63":2,"64":1,"108":1},"2":{"1":3,"2":1,"6":1,"7":2,"8":1,"10":2,"56":3,"57":5,"58":3,"61":1,"63":1,"64":8,"104":1,"108":1,"112":1,"113":1,"115":1,"116":1,"118":1,"119":1,"120":1,"122":1,"123":1,"124":1,"125":1,"126":1,"180":1,"181":22}}],["r",{"2":{"2":1,"21":2,"51":2,"52":1,"58":1,"105":1,"177":1,"181":2}}],["rt",{"2":{"1":1,"4":3,"6":1,"56":1,"64":3,"181":21}}],["rewritten",{"2":{"179":2}}],["rejected",{"2":{"175":1,"179":1}}],["reveal",{"2":{"169":1}}],["revisions",{"2":{"139":1}}],["revise",{"2":{"138":3,"139":3,"140":3}}],["revised",{"2":{"125":1,"128":1,"179":2}}],["reviewing",{"2":{"179":2}}],["review",{"2":{"4":1,"8":1,"49":1,"128":1,"129":1,"138":1,"139":1,"140":1,"169":1}}],["reorganization",{"2":{"138":1}}],["reuse",{"2":{"87":1}}],["recipient",{"2":{"179":4}}],["reciprocal",{"2":{"179":2,"181":8}}],["recall",{"2":{"128":1,"166":1,"167":2}}],["recognized",{"2":{"181":1}}],["recognizes",{"2":{"103":1}}],["record",{"2":{"179":1}}],["recorded",{"2":{"64":1,"179":1,"181":1}}],["recommended",{"2":{"179":2}}],["recommendation",{"2":{"67":1,"179":1}}],["recommend",{"2":{"67":2,"88":1,"179":2}}],["recursive=true",{"2":{"73":1}}],["recursively",{"2":{"67":1,"179":1,"181":1}}],["recursivecharactertextsplitter",{"0":{"88":1},"2":{"67":3,"88":1,"179":3}}],["recursive",{"2":{"66":2,"67":8,"88":3,"128":1,"179":11,"181":1}}],["receiving",{"2":{"179":3}}],["receive",{"2":{"74":1,"76":1,"179":1,"181":2}}],["received",{"2":{"10":1,"52":1,"86":2,"104":1,"177":1,"179":9}}],["recent",{"2":{"177":2,"179":2}}],["recently",{"2":{"74":1}}],["reception",{"2":{"47":1}}],["requested",{"2":{"128":1,"166":1,"167":1,"172":1,"179":1,"181":4}}],["request",{"2":{"74":2,"77":1,"85":2,"86":1,"98":1,"101":1,"103":1,"105":1,"106":3,"128":3,"129":2,"139":4,"140":6,"179":21}}],["requests",{"0":{"75":1},"2":{"55":1,"74":7,"75":3,"178":2,"179":3}}],["requirements",{"2":{"138":1,"139":1,"140":4,"142":1,"143":1,"145":1,"179":1,"181":1}}],["requirement",{"2":{"106":2}}],["required",{"2":{"56":1,"105":2,"106":7,"148":1,"177":1,"179":12,"181":6}}],["require",{"2":{"15":1,"118":1,"179":1}}],["requires",{"2":{"0":1,"29":1,"30":1,"31":1,"64":2,"65":1,"89":1,"122":1,"139":1,"179":8,"181":7}}],["removing",{"2":{"177":2,"181":1}}],["removes",{"2":{"177":1,"179":6}}],["remove",{"2":{"52":5,"67":1,"177":4,"179":16,"181":1}}],["reminder",{"2":{"166":1,"167":1}}],["remaining",{"2":{"74":2}}],["remembers",{"2":{"179":1}}],["remembered",{"2":{"179":1}}],["remember",{"2":{"2":1,"10":1,"24":1,"35":1,"49":1,"73":1,"87":1,"101":2,"104":1,"105":1,"138":1,"139":1,"140":1,"179":4}}],["reducing",{"2":{"64":1,"181":5}}],["reduces",{"2":{"181":2}}],["reduce",{"2":{"64":1,"181":4}}],["red",{"2":{"21":1,"51":1,"52":2,"58":1,"177":2}}],["react",{"2":{"179":1}}],["reach",{"2":{"100":1,"177":1}}],["reaching",{"2":{"67":1,"138":1,"179":1}}],["reasonable",{"2":{"181":3}}],["reasonably",{"2":{"181":1}}],["reason",{"2":{"179":9}}],["reasoning",{"2":{"142":3,"169":1,"179":5}}],["real",{"2":{"177":5,"181":12}}],["really",{"2":{"19":1,"179":4}}],["reader=",{"2":{"181":1}}],["reads",{"2":{"181":2}}],["readme",{"2":{"179":1}}],["readability",{"2":{"138":1}}],["ready",{"2":{"11":1,"83":1,"179":1,"180":1}}],["readtimeout",{"2":{"10":1,"104":1,"179":10}}],["read",{"2":{"4":1,"11":1,"24":1,"58":1,"75":1,"90":1,"106":5,"112":1,"120":1,"128":1,"129":1,"150":1,"152":1,"179":1,"181":1}}],["regarding",{"2":{"142":1,"143":1,"145":1}}],["regards",{"2":{"87":2,"179":2}}],["regardless",{"2":{"7":2}}],["region",{"2":{"32":1,"179":2}}],["regions",{"2":{"32":1,"179":3}}],["registration",{"2":{"29":1}}],["registry",{"2":{"23":1,"26":1,"37":2,"39":1,"42":1,"105":1,"179":29}}],["registers",{"2":{"179":1}}],["registering",{"2":{"179":3}}],["register",{"2":{"27":2,"28":2,"29":2,"30":2,"31":2,"42":1,"84":2,"91":3,"93":1,"103":1,"179":15,"181":1}}],["registered",{"2":{"23":1,"26":1,"30":1,"31":1,"87":1,"179":1}}],["regenerate",{"2":{"21":1,"51":1}}],["regex",{"2":{"19":1,"24":1,"64":1,"179":2,"181":6}}],["renders",{"2":{"179":3}}],["rendered",{"0":{"90":1},"2":{"90":1,"105":7,"179":2,"181":1}}],["render",{"2":{"13":1,"24":2,"90":6,"98":2,"100":1,"105":6,"179":20}}],["rendering",{"2":{"13":1,"90":4,"100":1,"179":5}}],["refusals",{"2":{"179":3}}],["refresh",{"2":{"128":1,"179":3}}],["ref",{"2":{"67":1,"179":1}}],["refining",{"2":{"64":2,"181":5}}],["refines",{"2":{"177":1,"181":3}}],["refined",{"2":{"115":3,"116":3,"181":1}}],["refinements",{"2":{"177":1}}],["refinement",{"0":{"114":1},"1":{"115":1,"116":1},"2":{"181":2}}],["refiner",{"2":{"64":13,"181":24}}],["refine",{"2":{"61":1,"63":2,"64":4,"115":6,"116":6,"125":1,"177":1,"179":3,"181":17}}],["reflections",{"2":{"138":1,"139":2,"140":1}}],["reflection",{"2":{"128":1,"129":1,"138":4,"139":4,"140":4}}],["reflecting",{"2":{"67":1,"128":1,"151":1,"179":1}}],["reflects",{"2":{"120":1}}],["reflect",{"2":{"12":1,"138":1,"139":1,"140":1}}],["referring",{"2":{"181":1}}],["referred",{"2":{"7":1,"29":1}}],["refers",{"2":{"10":1,"28":1,"49":1,"104":1,"177":1,"179":2,"181":2}}],["references",{"0":{"52":1,"55":1,"64":1,"67":1},"2":{"52":1,"60":1,"124":1,"177":1,"181":3}}],["reference",{"0":{"177":1,"178":1,"179":1,"180":1,"181":1},"2":{"4":1,"10":1,"80":1,"88":1,"90":1,"118":3,"179":7,"181":12}}],["refer",{"2":{"0":1,"90":1,"128":1,"151":1,"179":6}}],["repetition",{"2":{"118":1}}],["repeats",{"2":{"128":2}}],["repeat",{"2":{"21":1,"51":1,"128":1,"150":1,"151":1,"158":1}}],["repeated",{"2":{"21":1,"51":1,"128":1,"179":2}}],["repeatedly",{"2":{"10":1,"49":1,"104":1,"177":1}}],["report",{"2":{"179":1}}],["reports",{"2":{"64":1,"138":1,"181":1}}],["reported",{"2":{"36":1,"179":1}}],["rephrasing",{"2":{"64":6,"124":2,"125":1,"181":19}}],["rephrases",{"2":{"125":1,"126":1,"181":2}}],["rephraser",{"2":{"62":7,"64":11,"181":25}}],["rephrased",{"2":{"58":1,"63":1,"64":2,"124":1,"126":1,"181":9}}],["rephrase",{"2":{"8":1,"61":1,"62":2,"63":2,"64":1,"122":1,"123":1,"125":2,"126":1,"179":3,"181":16}}],["representation",{"2":{"181":1}}],["representative",{"2":{"7":1}}],["represented",{"2":{"179":2,"181":8}}],["represents",{"2":{"152":1,"179":3,"181":1}}],["representing",{"2":{"52":1,"64":3,"67":1,"119":1,"179":83,"181":3}}],["reply",{"2":{"52":1,"85":1,"95":1,"138":1,"139":1,"140":1,"177":1,"179":3}}],["repl",{"2":{"24":2,"58":1,"73":3,"81":1,"96":1,"179":1}}],["replaces",{"2":{"181":1}}],["replaced",{"2":{"67":1,"105":1,"179":3,"181":1}}],["replacements",{"2":{"90":1,"179":6}}],["replacement",{"2":{"67":4,"105":1,"179":8}}],["replace",{"2":{"12":1,"64":1,"66":2,"67":3,"90":1,"98":1,"103":2,"105":3,"179":5,"181":2}}],["rescore",{"2":{"181":8}}],["resized",{"2":{"179":4}}],["resize",{"2":{"179":5}}],["reserved",{"2":{"166":1,"167":1,"179":3}}],["reset",{"2":{"74":1,"177":2,"179":1}}],["resets",{"2":{"74":1}}],["researcher",{"2":{"152":1,"156":1}}],["research",{"2":{"58":1,"69":1,"112":1}}],["res",{"2":{"64":1,"181":1}}],["resolutions",{"2":{"179":1}}],["resolution",{"2":{"179":1}}],["resolved",{"2":{"179":1}}],["resolves",{"2":{"128":1}}],["resolve",{"2":{"64":1,"181":4}}],["resources",{"2":{"23":1,"26":1,"58":1,"71":1,"72":1,"76":1,"77":1,"78":2,"93":2}}],["respect",{"2":{"181":1}}],["respective",{"2":{"181":1}}],["respectively",{"2":{"52":1,"60":1,"67":1,"177":2,"179":1}}],["resp",{"2":{"179":3}}],["respond",{"2":{"10":1,"52":2,"85":1,"104":1,"110":1,"125":1,"134":2,"136":2,"177":3}}],["responses",{"0":{"86":1},"2":{"14":1,"24":1,"86":1,"105":1,"139":1,"152":10,"154":2,"177":2,"179":9}}],["response",{"2":{"7":1,"10":5,"49":1,"60":1,"63":5,"64":5,"74":1,"77":1,"85":4,"86":14,"95":1,"102":2,"104":5,"105":5,"106":8,"119":1,"128":1,"138":1,"139":2,"140":1,"165":1,"177":1,"178":1,"179":72,"181":8}}],["restrictive",{"2":{"166":1,"167":1}}],["restricted",{"2":{"6":1,"7":1}}],["restart",{"2":{"42":1,"52":1,"177":1}}],["rest",{"2":{"19":1,"55":1,"94":1,"101":1,"177":1,"178":1}}],["resulting",{"2":{"181":5}}],["results",{"2":{"7":10,"13":1,"19":1,"52":2,"55":8,"58":1,"63":1,"110":1,"115":1,"116":12,"122":1,"123":1,"125":2,"126":1,"129":2,"130":1,"177":6,"178":8,"179":2,"181":16}}],["result",{"2":{"2":1,"7":1,"52":3,"57":1,"58":7,"61":1,"62":2,"64":22,"104":2,"106":8,"177":9,"179":31,"181":70}}],["retain",{"2":{"177":1,"179":2}}],["retrive",{"2":{"60":1,"181":1}}],["retries=3",{"2":{"106":1}}],["retries=2",{"2":{"86":1}}],["retries`",{"2":{"52":1,"177":1}}],["retries",{"2":{"21":6,"51":3,"52":22,"106":2,"177":26,"179":10}}],["retrieving",{"2":{"125":1,"181":1}}],["retrievable",{"2":{"64":1,"181":1}}],["retrieval",{"0":{"1":1},"1":{"2":1},"2":{"1":1,"6":3,"7":5,"56":1,"60":2,"63":2,"64":13,"124":3,"126":1,"179":2,"180":1,"181":25}}],["retrieves",{"2":{"64":1,"181":1}}],["retriever=advancedretriever",{"2":{"64":1,"181":1}}],["retriever",{"2":{"61":1,"62":6,"64":35,"181":44}}],["retrieved",{"2":{"57":1,"60":1,"63":1,"64":1,"181":3}}],["retrieve",{"2":{"10":2,"57":2,"58":4,"60":2,"61":3,"62":1,"63":1,"64":14,"103":1,"179":1,"181":21}}],["retrying",{"2":{"21":1,"49":2,"52":7,"86":2,"106":1,"177":7}}],["retry",{"2":{"21":3,"49":1,"51":3,"52":15,"106":6,"177":22,"179":10}}],["retryconfig",{"2":{"21":3,"49":1,"51":3,"52":10,"177":14,"179":1}}],["returning",{"2":{"179":2,"181":1}}],["returned",{"2":{"95":1,"106":2,"177":1,"179":15,"181":3}}],["returns",{"2":{"7":7,"10":5,"18":3,"52":12,"64":11,"66":1,"67":5,"73":1,"104":5,"105":2,"138":1,"139":1,"140":1,"177":16,"178":1,"179":72,"181":47}}],["return",{"2":{"2":1,"6":2,"7":1,"10":4,"18":1,"19":4,"24":1,"31":1,"52":6,"55":1,"58":3,"60":2,"64":11,"67":1,"77":1,"85":5,"86":5,"90":4,"91":1,"104":5,"106":11,"115":2,"116":3,"177":13,"178":1,"179":95,"181":33}}],["reranking",{"2":{"63":1,"64":8,"181":16}}],["reranker",{"2":{"60":2,"64":8,"181":19}}],["reranked",{"2":{"58":1,"181":5}}],["rerank",{"2":{"2":2,"8":2,"60":3,"61":1,"63":2,"64":5,"179":2,"181":28}}],["reload",{"2":{"87":3,"179":2}}],["relentless",{"2":{"67":1,"179":1}}],["releases",{"2":{"180":1}}],["release",{"2":{"35":1}}],["relevancy",{"2":{"110":1,"179":1}}],["relevance",{"2":{"6":1,"110":2,"119":2,"138":1,"181":8}}],["relevant",{"2":{"2":1,"57":1,"58":1,"60":1,"61":2,"63":3,"64":7,"94":1,"110":1,"112":1,"116":1,"119":2,"120":1,"124":3,"125":1,"126":1,"148":1,"150":1,"151":1,"177":2,"179":1,"181":11}}],["related",{"2":{"13":1,"75":1,"118":1,"124":2,"152":1,"179":2,"181":2}}],["relational",{"2":{"7":1}}],["rely",{"2":{"0":1}}],["re",{"2":{"1":1,"2":3,"7":1,"8":1,"10":1,"12":1,"20":1,"22":2,"23":1,"24":11,"26":1,"29":1,"31":1,"35":1,"41":1,"42":1,"49":1,"58":1,"60":2,"62":1,"64":1,"67":2,"73":1,"75":1,"83":2,"91":2,"98":1,"102":1,"103":4,"104":1,"105":5,"106":3,"110":1,"112":1,"119":1,"120":1,"122":1,"129":1,"155":2,"159":1,"161":1,"162":1,"163":2,"168":1,"169":1,"171":2,"177":1,"179":16,"181":16}}],["gsk",{"2":{"179":1}}],["ggi",{"2":{"179":3}}],["gguf",{"2":{"28":1}}],["gnarled",{"2":{"67":1,"179":1}}],["glossy",{"2":{"179":1}}],["globally",{"2":{"49":1}}],["global",{"2":{"0":1,"42":1,"52":1,"179":3}}],["glittering",{"2":{"67":1,"179":1}}],["glasses",{"2":{"39":1}}],["glad",{"2":{"31":1}}],["gpu=99",{"2":{"37":2}}],["gpu",{"2":{"28":1,"37":1}}],["gpt4o",{"2":{"181":3}}],["gpt4v",{"2":{"20":2,"179":5}}],["gpt4",{"2":{"15":1,"95":1,"96":1,"179":3}}],["gpt4t",{"2":{"6":1,"7":2,"15":3,"17":1,"21":1,"51":1,"95":1,"179":5,"181":2}}],["gpt3t",{"2":{"105":1}}],["gpt3",{"2":{"15":1,"105":1,"179":5}}],["gpt",{"2":{"6":1,"7":1,"15":5,"91":4,"95":2,"96":1,"179":21,"181":5}}],["guidance",{"2":{"106":1}}],["guidelines>",{"2":{"173":2}}],["guidelines",{"2":{"138":1,"151":1,"158":3,"165":2,"166":1,"167":1,"173":1}}],["guides",{"2":{"75":1,"179":1}}],["guide",{"0":{"83":1},"2":{"22":1,"41":1,"52":2,"58":2,"69":1,"78":2,"93":1,"165":1,"173":1,"177":3,"179":2}}],["guarantees",{"2":{"86":1}}],["guardian",{"2":{"67":1,"179":1}}],["guardrails",{"2":{"52":1,"177":1}}],["guessed",{"2":{"52":1,"177":1}}],["guesser",{"2":{"52":3,"177":3}}],["guesses",{"2":{"21":1,"51":1,"52":2,"177":2}}],["guess",{"2":{"21":1,"51":2,"52":31,"177":31}}],["guessing",{"2":{"21":1,"51":2,"52":1,"177":1}}],["g",{"2":{"19":1,"52":2,"110":1,"134":1,"136":1,"139":1,"179":8}}],["giraffe",{"2":{"179":7}}],["github",{"2":{"67":1,"73":1,"78":1,"93":1,"110":1,"179":6,"181":5}}],["gitignore",{"2":{"11":3}}],["give",{"2":{"24":1,"52":1,"70":1,"86":2,"177":1,"181":1}}],["given",{"2":{"19":2,"57":1,"64":2,"67":4,"74":1,"115":2,"116":2,"125":1,"134":2,"136":2,"139":1,"148":1,"152":1,"156":1,"160":1,"162":1,"164":1,"175":1,"177":5,"179":32,"181":8}}],["gives",{"2":{"5":1,"13":1,"98":1,"99":1,"115":1,"116":1,"179":2}}],["gracefully",{"2":{"179":6}}],["grammatical",{"2":{"138":1}}],["grammar",{"2":{"106":1,"138":1}}],["grasp",{"2":{"125":1}}],["granularity",{"2":{"58":1}}],["grab",{"2":{"52":1,"177":1}}],["gratefully",{"2":{"12":1}}],["grins",{"2":{"41":2}}],["group",{"2":{"86":1,"179":1,"181":4}}],["grow",{"2":{"12":1}}],["groq",{"2":{"0":1,"179":6}}],["groqopenaischema",{"2":{"0":1,"179":2}}],["greater",{"2":{"179":1,"181":1}}],["greatingpirate",{"2":{"87":5,"179":7}}],["great",{"2":{"11":1,"24":2,"67":2,"95":1,"157":2,"179":2}}],["gt",{"2":{"7":14,"10":3,"15":1,"21":3,"37":1,"42":2,"51":2,"52":4,"61":16,"64":9,"67":1,"78":1,"79":1,"83":1,"84":2,"87":3,"93":1,"96":2,"98":10,"100":1,"103":3,"104":3,"105":2,"106":5,"177":7,"179":24,"181":15}}],["gamma",{"2":{"177":4,"179":1}}],["game",{"2":{"21":1,"51":1,"52":2,"169":1,"177":2}}],["gaps",{"2":{"158":1}}],["gaze",{"2":{"67":1,"179":1}}],["gauge",{"2":{"24":1}}],["gave",{"2":{"12":1}}],["gain",{"2":{"6":1}}],["garbage",{"2":{"2":2}}],["goes",{"2":{"179":1}}],["goals",{"2":{"138":3,"139":1}}],["goal",{"2":{"125":1,"128":1,"179":2}}],["going",{"2":{"62":1,"106":1}}],["got",{"2":{"52":2,"177":2,"179":1}}],["gotchas",{"0":{"36":1},"2":{"52":1,"177":1}}],["good",{"2":{"4":1,"8":1,"13":1,"24":2,"52":1,"76":1,"86":1,"148":1,"165":1,"173":1,"177":1,"179":3,"181":5}}],["googlegenaipromptingtoolsext",{"2":{"179":1}}],["googlegenai",{"2":{"32":2,"179":1}}],["google",{"0":{"32":1},"1":{"33":1,"34":1,"35":1,"36":1},"2":{"0":1,"11":1,"32":3,"36":1,"70":1,"112":1,"179":9}}],["googleschema",{"2":{"0":1,"179":2}}],["golden",{"2":{"4":1,"8":1}}],["go",{"2":{"2":1,"12":1,"41":3,"64":1,"72":1,"76":1,"83":2,"93":2,"103":1,"165":1,"173":1,"181":2}}],["germany",{"2":{"181":2}}],["genai",{"2":{"77":1,"180":1}}],["gensym",{"2":{"64":2,"181":3}}],["genie",{"2":{"58":1}}],["general",{"0":{"146":1},"1":{"147":1,"148":1},"2":{"10":1,"23":1,"26":1,"104":1,"106":1,"112":1,"118":1,"151":2,"165":2,"166":1,"167":1,"173":3,"179":1}}],["generally",{"2":{"7":1,"106":1}}],["generator",{"2":{"61":1,"62":1,"64":24,"181":25}}],["generating",{"2":{"10":1,"48":1,"64":11,"104":1,"175":1,"177":2,"179":16,"181":20}}],["generativeai",{"2":{"53":1}}],["generative",{"2":{"1":1,"57":1,"65":1,"66":1}}],["generation",{"0":{"1":1,"33":1,"38":1},"1":{"2":1,"34":1,"35":1,"36":1,"39":1,"40":1,"41":1,"42":1},"2":{"1":1,"6":1,"51":1,"56":1,"60":2,"63":3,"64":3,"106":1,"118":1,"177":2,"179":25,"180":1,"181":7}}],["generated",{"2":{"6":1,"8":1,"10":5,"18":1,"24":1,"47":1,"49":1,"52":2,"57":1,"58":1,"64":5,"66":1,"67":1,"71":1,"95":1,"104":2,"118":2,"177":2,"179":28,"181":10}}],["generates",{"2":{"2":1,"10":1,"21":1,"63":3,"64":1,"104":1,"122":1,"123":1,"179":5,"181":4}}],["generate",{"0":{"4":1},"2":{"0":1,"2":1,"3":1,"7":1,"8":1,"10":4,"49":3,"52":1,"56":1,"57":3,"58":5,"60":2,"61":3,"63":2,"64":10,"66":2,"86":2,"87":1,"89":1,"93":1,"104":2,"106":3,"118":1,"122":1,"124":1,"139":1,"140":1,"148":1,"175":4,"177":3,"179":32,"181":18}}],["genericwriter",{"0":{"160":1}}],["generictopicexpertask",{"0":{"159":1}}],["generictranscriptcritic",{"0":{"139":1}}],["generic",{"2":{"4":1,"103":1,"118":1,"139":1,"155":1,"159":1,"160":1}}],["gestures",{"2":{"41":1}}],["getpropertynested",{"2":{"64":2,"179":1,"181":5}}],["getindex",{"2":{"52":1,"177":1}}],["getting",{"0":{"73":2,"74":1,"75":1,"92":1},"1":{"93":1,"94":1,"95":1,"96":1},"2":{"22":1,"150":1}}],["get",{"2":{"10":1,"21":1,"32":1,"46":1,"51":2,"52":3,"55":2,"56":1,"58":1,"61":5,"63":5,"64":11,"69":1,"72":2,"73":2,"78":1,"79":1,"83":1,"84":1,"85":1,"86":4,"93":1,"95":1,"104":1,"105":1,"106":2,"177":4,"178":2,"179":49,"181":60}}],["gemini",{"2":{"0":1,"32":3,"33":2,"34":3,"35":1,"36":1,"179":11}}],["tf",{"2":{"181":1}}],["td",{"2":{"181":1}}],["tp",{"2":{"181":1}}],["tpl=pt",{"2":{"87":1,"179":2}}],["tpl",{"2":{"24":1,"87":2,"90":2,"179":2}}],["tsang",{"2":{"177":1}}],["tldr",{"2":{"162":1,"175":6}}],["tl",{"2":{"39":1}}],["tmixtral",{"2":{"30":2,"106":2}}],["tmp",{"2":{"24":1}}],["tmps",{"2":{"13":1,"179":2}}],["typically",{"2":{"179":3}}],["typing",{"2":{"20":1,"179":2}}],["typed",{"0":{"86":1},"2":{"86":2,"94":1}}],["type=fruit",{"2":{"179":1}}],["type=food",{"2":{"10":1,"31":1,"104":1,"106":1}}],["type=maybetags",{"2":{"181":1}}],["type=manymeasurements",{"2":{"19":1,"179":2}}],["type=mymeasurement",{"2":{"179":4}}],["type=currentweather",{"2":{"19":1}}],["types",{"2":{"12":1,"52":2,"60":2,"61":4,"63":1,"64":7,"81":1,"84":1,"86":4,"102":1,"104":1,"106":4,"166":2,"167":2,"177":2,"179":5,"181":8}}],["type",{"2":{"6":1,"10":1,"11":1,"15":1,"19":2,"52":3,"57":1,"58":1,"60":2,"62":2,"63":1,"64":3,"86":2,"91":1,"95":1,"98":1,"104":1,"106":21,"128":1,"166":1,"167":1,"177":8,"179":132,"181":81}}],["tiktokenizer",{"2":{"179":1}}],["titles",{"2":{"150":2,"151":2}}],["title",{"2":{"150":2,"151":1,"156":1,"162":1,"175":2}}],["tiniest",{"2":{"130":1}}],["tinyrag",{"2":{"181":2}}],["tiny",{"2":{"23":3,"26":3,"179":2,"181":1}}],["tier",{"2":{"74":3,"179":2}}],["timing",{"2":{"52":1,"177":1}}],["timed",{"2":{"52":1,"177":1}}],["timeout",{"2":{"52":3,"179":8}}],["timestamp",{"2":{"150":2,"151":3,"179":4}}],["timestamps",{"2":{"150":3,"151":2}}],["times",{"2":{"21":1,"49":2,"51":1,"52":3,"87":1,"177":4}}],["time",{"2":{"3":1,"7":1,"10":1,"13":1,"21":1,"24":3,"31":1,"36":1,"51":1,"52":3,"67":1,"71":1,"77":2,"78":1,"84":1,"89":1,"98":1,"101":1,"103":1,"104":1,"177":4,"179":29,"180":1,"181":3}}],["tired",{"2":{"19":1}}],["tips",{"2":{"21":1,"67":1,"150":2,"151":2,"179":2}}],["tip",{"2":{"14":1,"67":1,"72":1,"95":1,"96":2,"113":1,"179":1}}],["tell",{"2":{"169":1}}],["tedious",{"2":{"84":1}}],["tens",{"2":{"77":1}}],["tenth",{"2":{"75":1}}],["tends",{"2":{"88":1}}],["tend",{"2":{"10":1,"67":1,"70":1,"84":1,"104":1,"179":1}}],["terms",{"2":{"112":1,"124":2}}],["term",{"2":{"56":1,"112":1,"181":1}}],["terminal",{"2":{"28":1,"37":1,"58":1,"66":1,"78":4,"83":1,"93":2}}],["testing",{"2":{"179":5}}],["testechoopenaischema",{"2":{"179":2}}],["testechoollamaschema",{"2":{"179":2}}],["testechoollamamanagedschema",{"2":{"179":2}}],["testechogoogleschema",{"2":{"179":2}}],["testechoanthropicschema",{"2":{"179":2}}],["test`",{"2":{"128":1,"165":3,"173":3}}],["tests>",{"2":{"173":2}}],["testset`",{"2":{"165":1,"173":1}}],["testsets",{"2":{"165":1,"173":1}}],["testset",{"2":{"52":1,"128":1,"165":2,"173":2,"179":1}}],["tests",{"2":{"52":4,"128":1,"165":4,"173":4,"179":5}}],["test",{"2":{"42":1,"52":2,"64":5,"165":14,"169":1,"173":14,"179":9,"181":11}}],["teacher",{"2":{"118":1}}],["teach",{"2":{"41":1}}],["technical",{"2":{"112":2,"124":1}}],["technically",{"2":{"28":1}}],["technique",{"2":{"89":1}}],["techniques",{"2":{"58":1}}],["technology",{"2":{"41":1,"156":1}}],["tempdir",{"2":{"179":1}}],["temporary",{"2":{"179":1}}],["temperature=>float64",{"2":{"179":1}}],["temperature=0",{"2":{"10":1,"52":3,"91":1,"104":3,"106":2,"177":3,"179":3}}],["temperature",{"2":{"19":1,"177":2,"179":18}}],["temperatureunits",{"2":{"19":2}}],["templating",{"2":{"13":1,"96":1,"179":1}}],["template",{"0":{"87":1,"108":1,"110":1,"112":1,"113":1,"115":1,"116":1,"118":1,"119":1,"120":1,"122":1,"123":1,"124":1,"125":1,"126":1,"128":1,"129":1,"130":1,"132":1,"134":1,"135":1,"136":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"147":1,"148":1,"150":1,"151":1,"152":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"171":1,"172":1,"173":1,"175":1,"176":1},"2":{"13":5,"17":1,"20":1,"24":10,"52":1,"60":2,"62":5,"64":17,"87":13,"90":1,"91":1,"103":7,"105":4,"124":1,"128":1,"129":1,"130":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"147":1,"150":1,"151":1,"152":1,"157":1,"158":1,"166":1,"167":1,"177":9,"179":126,"181":47}}],["templated",{"0":{"13":1},"2":{"17":1,"24":1}}],["templates=true",{"2":{"179":1}}],["templates",{"0":{"103":1,"107":1,"109":1,"111":1,"114":1,"117":1,"121":1,"127":1,"131":1,"133":1,"137":1,"141":1,"144":1,"146":1,"149":1,"170":1,"174":1},"1":{"108":1,"110":1,"112":1,"113":1,"115":1,"116":1,"118":1,"119":1,"120":1,"122":1,"123":1,"124":1,"125":1,"126":1,"128":1,"129":1,"130":1,"132":1,"134":1,"135":1,"136":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"147":1,"148":1,"150":1,"151":1,"152":1,"171":1,"172":1,"173":1,"175":1,"176":1},"2":{"10":1,"13":2,"17":1,"24":13,"87":12,"90":2,"91":1,"96":1,"98":1,"103":3,"104":1,"177":4,"179":48}}],["text=",{"2":{"181":1}}],["text1",{"2":{"67":1,"179":1}}],["text2",{"2":{"67":2,"179":2}}],["texts",{"2":{"64":3,"67":2,"138":1,"179":2,"181":6}}],["textchunker",{"2":{"64":1,"179":1,"181":7}}],["textanalysis",{"2":{"8":1}}],["text",{"0":{"33":1,"38":1,"65":1},"1":{"34":1,"35":1,"36":1,"39":1,"40":1,"41":1,"42":1,"66":1,"67":1},"2":{"2":3,"8":1,"10":6,"16":1,"19":2,"20":1,"30":1,"31":2,"52":3,"58":1,"64":9,"65":2,"66":7,"67":41,"88":2,"102":1,"104":4,"106":1,"112":7,"113":6,"138":8,"158":4,"160":1,"162":1,"175":2,"176":1,"177":1,"179":76,"181":36}}],["trove",{"2":{"87":2,"179":2}}],["troubleshooting",{"2":{"37":1}}],["treated",{"2":{"179":2}}],["treasure",{"2":{"87":2,"179":2}}],["trees",{"2":{"52":1,"177":3}}],["tree",{"2":{"18":2,"21":2,"49":1,"52":7,"64":2,"67":1,"86":1,"177":17,"179":7,"181":4}}],["traced",{"2":{"179":2}}],["tracemessage",{"2":{"179":1}}],["trace",{"2":{"179":2}}],["tracers",{"2":{"179":3}}],["tracerschema",{"2":{"91":7,"179":17}}],["tracer",{"2":{"179":95}}],["tracermessagelike",{"2":{"179":2}}],["tracermessage",{"2":{"91":2,"179":10}}],["tracing",{"0":{"91":1},"2":{"91":2,"179":15}}],["tracked",{"2":{"179":1,"181":1}}],["tracker",{"2":{"64":9,"179":1,"181":28}}],["tracking",{"2":{"177":1,"179":2}}],["tracks",{"2":{"64":1,"179":1,"181":1}}],["track",{"2":{"64":5,"177":1,"179":1,"181":16}}],["trained",{"2":{"150":1,"151":1,"156":1}}],["train",{"2":{"71":1}}],["training",{"2":{"71":1,"179":1}}],["trail",{"2":{"67":1,"179":1}}],["transcripts",{"2":{"150":2,"151":2}}],["transcript",{"2":{"138":5,"139":6,"140":4,"150":7,"151":6,"156":6}}],["transcribe",{"2":{"20":2,"176":2,"179":8}}],["transformation",{"2":{"179":1}}],["transformations",{"0":{"121":1},"1":{"122":1,"123":1,"124":1,"125":1,"126":1},"2":{"123":1}}],["transform",{"2":{"64":1,"179":1,"181":2}}],["translate",{"2":{"14":1,"179":2,"181":6}}],["truncation",{"2":{"181":2}}],["truncated",{"2":{"179":4,"181":1}}],["truncates",{"2":{"177":1}}],["truncate",{"2":{"177":2,"179":2,"181":17}}],["truths",{"2":{"67":1,"179":1}}],["trusted",{"2":{"58":1}}],["true",{"2":{"4":1,"6":2,"7":1,"12":2,"17":3,"21":1,"35":1,"45":1,"51":1,"52":32,"55":1,"64":17,"86":4,"87":2,"90":2,"135":2,"177":25,"178":1,"179":108,"181":58}}],["tryparse",{"2":{"52":4,"86":2,"177":4,"179":1}}],["try",{"2":{"18":1,"31":1,"41":1,"52":2,"64":1,"87":1,"106":4,"108":1,"115":1,"116":1,"122":1,"123":1,"177":1,"179":8,"181":4}}],["trying",{"2":{"12":1,"35":1,"41":1,"49":1,"177":1,"179":5}}],["trial",{"2":{"181":1}}],["trims",{"2":{"179":1}}],["tries",{"2":{"177":1,"179":1,"181":3}}],["triple",{"2":{"128":1,"129":1,"152":1,"179":1}}],["trivially",{"2":{"86":1}}],["trigram",{"2":{"64":3,"179":1,"181":8}}],["trigrams",{"2":{"64":6,"66":4,"179":2,"181":23}}],["trigramannotater",{"2":{"64":4,"179":1,"181":10}}],["triggers",{"2":{"52":1,"106":1,"177":2}}],["triggered",{"2":{"49":1,"52":1,"177":1}}],["trigger",{"2":{"10":1,"49":1,"52":2,"104":1,"177":3,"179":2}}],["trick",{"2":{"10":1,"18":1,"41":1,"104":1,"179":5}}],["tuning",{"2":{"89":1,"179":1}}],["tune",{"0":{"89":1}}],["tuned",{"2":{"31":1}}],["tuple",{"2":{"45":1,"177":1,"179":36,"181":5}}],["tuples",{"2":{"18":1,"166":1,"167":1,"179":5}}],["turn",{"0":{"85":1},"2":{"35":2,"42":1,"96":1,"179":2}}],["turbo",{"2":{"7":1,"15":3,"91":1,"95":2,"105":1,"106":2,"179":11}}],["tutorials",{"2":{"58":2}}],["tutorial",{"2":{"8":1,"72":1,"93":1,"94":1}}],["t",{"2":{"6":1,"8":1,"24":1,"27":1,"28":1,"30":1,"37":1,"39":1,"52":2,"84":1,"101":1,"106":2,"108":3,"112":1,"113":1,"115":5,"116":3,"118":1,"150":2,"151":1,"152":1,"165":1,"167":1,"169":1,"173":1,"177":5,"179":33,"181":23}}],["tweak",{"2":{"2":2,"7":1,"52":2,"177":2}}],["two",{"0":{"2":1},"2":{"2":1,"5":4,"6":1,"7":7,"10":1,"16":1,"17":3,"21":1,"51":2,"52":2,"66":2,"67":2,"74":1,"86":5,"90":1,"105":1,"106":1,"128":1,"177":4,"179":18,"181":6}}],["taking",{"2":{"124":1,"126":1}}],["taken",{"2":{"179":2}}],["takes",{"2":{"74":1,"179":1}}],["take",{"2":{"7":1,"24":2,"100":1,"105":1,"129":1,"130":1,"150":1,"154":1,"172":1,"177":1,"179":1}}],["tapestry",{"2":{"67":2,"179":2}}],["target",{"2":{"64":2,"138":1,"160":1,"162":2,"169":2,"181":14}}],["tavilysearchrefiner",{"2":{"179":1,"181":6}}],["tavily",{"2":{"54":3,"55":1,"178":5,"179":5,"180":1,"181":3}}],["tall",{"2":{"19":2,"179":10}}],["tabular",{"2":{"13":1,"179":2}}],["table",{"2":{"7":2,"24":1,"77":1,"169":4}}],["tables",{"2":{"7":1}}],["task>",{"2":{"172":4}}],["tasked",{"2":{"124":1,"126":1}}],["task=",{"2":{"20":1,"179":2}}],["tasks",{"2":{"14":2,"15":1,"17":1,"19":1,"23":1,"26":1,"30":1,"34":1,"42":1,"46":2,"58":1,"64":2,"69":1,"96":1,"134":1,"136":1,"152":1,"157":1,"177":1,"179":3,"181":8}}],["task",{"0":{"149":1},"1":{"150":1,"151":1,"152":1},"2":{"11":1,"19":1,"24":1,"58":1,"89":1,"91":1,"102":1,"103":1,"106":3,"115":1,"116":1,"119":1,"122":1,"123":1,"124":2,"125":1,"126":1,"128":1,"129":1,"134":1,"136":1,"138":1,"139":1,"140":1,"147":1,"148":6,"156":1,"157":4,"164":7,"165":1,"166":6,"167":6,"169":5,"172":6,"173":1,"175":1,"176":4,"179":6}}],["tag2",{"2":{"64":1,"181":1}}],["tag1",{"2":{"64":1,"181":1}}],["tagging",{"2":{"64":2,"181":4}}],["tagger=opentagger",{"2":{"64":1,"181":1}}],["tagger",{"2":{"64":27,"181":43}}],["tag",{"2":{"2":1,"58":1,"63":1,"64":4,"181":30}}],["tags",{"2":{"2":3,"61":4,"63":8,"64":17,"142":2,"143":1,"172":3,"173":2,"179":9,"181":108}}],["tailored",{"2":{"1":1,"138":1,"148":1}}],["txtouterjoin",{"2":{"7":1}}],["txtrightjoin",{"2":{"7":1}}],["txtleftjoin",{"2":{"7":1}}],["txtinnerjoin",{"2":{"7":1}}],["txtin",{"2":{"7":1}}],["txtwe",{"2":{"7":1}}],["txtjulia",{"2":{"7":3}}],["txtdatabase",{"2":{"7":1}}],["txt",{"2":{"2":2,"5":1,"6":1}}],["toml",{"2":{"79":1,"179":2}}],["touches",{"2":{"63":1}}],["total",{"2":{"58":1,"64":6,"177":1,"179":1,"181":14}}],["toy",{"2":{"52":1,"106":1,"177":1}}],["tone",{"2":{"24":1,"138":2,"158":1}}],["took",{"2":{"52":1,"106":1,"177":1,"181":1}}],["too",{"0":{"75":1},"2":{"16":1,"47":1,"52":1,"67":1,"106":1,"118":1,"150":2,"166":1,"167":1,"177":2,"179":5}}],["tool",{"2":{"12":1,"21":1,"22":1,"106":4,"142":4,"179":20}}],["tools",{"0":{"48":1,"56":1},"1":{"49":1,"50":1,"51":1,"52":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1},"2":{"10":1,"57":1,"58":1,"67":2,"106":2,"179":10}}],["tokenizes",{"2":{"181":2}}],["tokenized",{"2":{"181":2}}],["tokenizers",{"2":{"181":1}}],["tokenizer",{"2":{"179":1}}],["tokenize",{"2":{"66":2,"179":1,"181":2}}],["tokens=",{"2":{"179":1}}],["tokens=2500",{"2":{"20":1,"179":2}}],["tokens",{"2":{"11":1,"20":2,"22":1,"23":1,"26":1,"30":1,"31":1,"36":1,"64":2,"74":4,"77":1,"85":1,"95":2,"96":1,"179":67,"181":21}}],["token",{"2":{"10":1,"18":1,"29":1,"64":1,"77":1,"104":1,"177":1,"179":53,"181":11}}],["today",{"2":{"7":1,"22":1,"23":1,"26":1,"30":1,"40":1,"42":1,"85":1,"179":8}}],["topics",{"2":{"23":1,"26":1,"30":1,"31":1,"158":1}}],["topic",{"2":{"5":2,"6":1,"7":2,"156":6,"159":5,"162":5}}],["top",{"2":{"2":1,"6":2,"7":12,"52":1,"57":1,"58":1,"60":1,"62":4,"64":22,"84":1,"169":1,"177":1,"179":6,"181":46}}],["to",{"0":{"18":1,"85":1,"86":1,"87":1,"90":1},"2":{"0":1,"1":3,"2":11,"3":1,"4":2,"5":4,"6":5,"7":17,"8":2,"10":21,"11":13,"12":9,"13":6,"14":2,"15":4,"16":4,"17":3,"18":2,"19":6,"21":11,"22":1,"23":6,"24":20,"25":1,"26":5,"27":1,"28":6,"29":7,"30":3,"31":6,"32":1,"34":5,"35":6,"36":1,"37":7,"39":3,"40":2,"41":2,"42":6,"43":1,"46":1,"47":1,"48":1,"49":16,"51":11,"52":100,"54":3,"55":9,"56":6,"57":9,"58":20,"60":9,"61":1,"62":4,"63":14,"64":159,"65":1,"66":14,"67":43,"69":1,"70":1,"71":7,"72":2,"73":2,"74":4,"75":3,"76":4,"77":2,"78":5,"79":1,"81":2,"82":3,"83":3,"84":3,"85":8,"86":18,"87":17,"88":2,"89":4,"90":11,"91":6,"93":9,"94":1,"95":4,"96":2,"97":3,"98":3,"99":1,"100":9,"101":6,"103":6,"104":21,"105":7,"106":31,"108":2,"110":4,"112":3,"115":8,"116":8,"118":4,"119":5,"120":2,"122":4,"123":3,"124":3,"125":6,"126":1,"128":10,"129":5,"130":2,"134":2,"136":5,"138":10,"139":5,"140":7,"142":2,"143":1,"145":1,"148":2,"150":14,"151":10,"152":6,"156":1,"158":1,"159":1,"160":2,"161":1,"162":5,"164":1,"165":4,"166":2,"167":2,"168":1,"169":5,"172":1,"173":4,"175":2,"177":146,"178":10,"179":740,"180":3,"181":431}}],["together",{"0":{"30":1},"2":{"0":1,"2":1,"5":3,"6":1,"7":3,"19":1,"30":3,"36":1,"64":1,"70":1,"91":1,"97":1,"106":6,"112":1,"179":7,"181":2}}],["togetheropenaischema",{"2":{"0":1,"30":2,"106":1,"179":2}}],["thomsonsampling",{"2":{"177":1}}],["thompson",{"2":{"177":3}}],["thompsonsampling",{"2":{"177":6,"179":1}}],["thoroughly",{"2":{"118":1}}],["thought",{"2":{"142":1,"164":1,"166":1,"172":1,"179":2}}],["though",{"2":{"106":1}}],["those",{"2":{"58":1,"64":1,"95":1,"142":1,"143":1,"145":1,"151":1,"179":2,"181":1}}],["than",{"2":{"28":1,"64":2,"67":2,"96":2,"106":1,"128":1,"158":1,"179":7,"181":8}}],["thanks",{"2":{"103":1,"177":2}}],["thank",{"2":{"12":1}}],["that",{"2":{"0":2,"3":1,"5":1,"6":3,"7":15,"10":2,"13":2,"15":3,"16":1,"18":1,"19":1,"21":4,"22":3,"23":3,"24":6,"26":2,"32":1,"36":2,"37":2,"42":2,"48":1,"49":5,"51":4,"52":22,"54":1,"56":2,"58":1,"60":3,"62":3,"63":1,"64":23,"67":6,"69":1,"72":1,"74":4,"75":1,"83":3,"85":2,"86":1,"87":1,"89":1,"90":2,"91":1,"93":1,"94":1,"97":1,"98":3,"99":2,"100":1,"101":2,"103":4,"104":3,"105":2,"106":10,"108":1,"110":1,"115":2,"116":2,"118":2,"120":1,"122":3,"123":2,"124":5,"126":1,"128":1,"134":2,"136":3,"138":1,"139":1,"140":3,"148":2,"150":3,"151":1,"152":2,"156":1,"158":1,"160":1,"162":2,"164":1,"166":2,"167":2,"169":2,"172":1,"175":1,"177":25,"179":99,"180":1,"181":68}}],["third",{"2":{"21":1,"51":1,"52":1,"177":1}}],["think",{"2":{"99":1,"106":1,"128":1,"129":2,"130":1,"160":1,"162":1,"164":1,"165":1,"172":1,"173":1,"179":2,"181":1}}],["thinking",{"2":{"21":2,"51":2,"52":3,"177":3}}],["things",{"2":{"12":1,"35":1}}],["this",{"0":{"6":1},"2":{"0":2,"1":2,"2":1,"3":1,"4":1,"6":2,"7":2,"8":1,"10":1,"11":2,"13":1,"17":1,"21":2,"24":3,"32":1,"35":1,"37":1,"41":2,"47":1,"49":2,"52":10,"54":2,"58":1,"60":1,"62":2,"64":6,"65":1,"67":4,"71":1,"73":2,"74":1,"75":2,"78":1,"87":1,"91":1,"93":1,"94":1,"97":2,"102":1,"104":1,"105":2,"106":2,"122":1,"124":4,"125":1,"126":1,"128":1,"129":1,"130":1,"140":1,"150":2,"151":2,"152":3,"166":2,"167":2,"169":2,"177":15,"179":78,"180":2,"181":32}}],["throw==false",{"2":{"52":1,"177":1}}],["throw=true",{"2":{"52":2,"177":2}}],["thrown",{"2":{"52":1,"73":1,"177":1}}],["throw",{"2":{"52":4,"106":1,"177":4,"179":6}}],["throughout",{"2":{"94":1}}],["through",{"2":{"0":1,"7":1,"11":1,"35":1,"52":1,"67":1,"97":1,"112":1,"164":1,"165":1,"172":1,"173":1,"177":3,"179":5,"181":2}}],["thread",{"2":{"85":1,"91":2,"179":21}}],["threads`",{"2":{"58":1}}],["threads",{"2":{"46":1,"64":7,"179":1,"181":28}}],["threshold",{"2":{"64":1,"181":4}}],["three",{"2":{"12":1,"17":1,"60":1,"66":1,"84":1,"86":1,"138":2,"139":2,"140":2,"179":4,"181":3}}],["then",{"2":{"10":2,"11":1,"12":1,"19":1,"28":1,"37":1,"47":1,"52":2,"60":1,"63":1,"64":4,"67":1,"85":1,"86":2,"87":2,"91":1,"97":1,"104":1,"105":2,"177":1,"179":11,"181":13}}],["theory",{"2":{"7":1,"169":1}}],["their",{"2":{"7":2,"10":1,"23":1,"26":1,"31":1,"52":1,"58":2,"64":3,"67":1,"71":1,"100":1,"104":1,"110":3,"113":1,"134":1,"136":1,"138":1,"139":1,"177":2,"179":12,"181":12}}],["there",{"2":{"7":2,"19":1,"23":3,"24":1,"26":2,"27":1,"30":1,"31":1,"34":1,"37":1,"39":2,"40":1,"41":1,"42":2,"52":5,"54":1,"63":1,"64":2,"66":1,"67":3,"69":1,"70":1,"73":1,"83":1,"84":1,"90":2,"99":1,"100":1,"102":1,"103":1,"105":2,"128":2,"129":1,"158":1,"177":5,"179":15,"181":4}}],["themselves",{"2":{"179":1}}],["themed",{"2":{"156":1}}],["theme",{"0":{"153":2,"154":2},"1":{"155":2,"156":2,"157":2,"158":2,"159":2,"160":2,"161":2,"162":2,"163":2,"164":2,"165":2,"166":2,"167":2,"168":2,"169":2,"170":2,"171":2,"172":2,"173":2},"2":{"152":6,"156":7}}],["themes",{"2":{"152":5,"156":1,"175":1}}],["them",{"2":{"2":4,"3":1,"6":1,"7":1,"8":1,"10":1,"12":1,"16":1,"21":1,"23":2,"24":6,"26":1,"27":1,"36":1,"37":1,"52":4,"58":1,"60":1,"62":1,"64":5,"66":1,"67":3,"77":1,"99":1,"103":1,"104":1,"106":1,"128":1,"150":3,"165":1,"166":1,"167":1,"169":1,"173":1,"177":4,"179":23,"181":6}}],["they",{"2":{"1":1,"10":1,"20":1,"21":2,"23":2,"24":2,"26":1,"27":1,"52":4,"64":1,"66":1,"101":1,"104":2,"106":1,"139":1,"150":1,"151":1,"154":2,"169":2,"177":4,"179":8,"181":3}}],["these",{"2":{"0":1,"10":1,"15":1,"37":1,"52":1,"58":3,"64":2,"67":1,"74":1,"104":1,"112":1,"118":1,"119":1,"138":1,"140":2,"142":1,"143":1,"145":1,"151":3,"160":1,"162":1,"177":1,"179":5,"181":3}}],["the",{"0":{"7":1,"75":1,"78":1,"79":1,"80":1,"84":1,"90":1},"2":{"0":12,"1":4,"2":24,"3":3,"4":2,"5":7,"6":9,"7":91,"8":6,"10":39,"11":11,"12":8,"13":12,"14":2,"15":7,"16":5,"17":5,"18":6,"19":10,"20":7,"21":22,"22":5,"23":16,"24":49,"25":1,"26":9,"27":8,"28":12,"29":6,"30":4,"31":9,"32":3,"33":2,"34":3,"35":5,"36":5,"37":4,"39":1,"41":6,"42":3,"43":3,"45":1,"46":1,"48":1,"49":33,"51":21,"52":194,"53":1,"55":15,"56":9,"57":13,"58":48,"60":34,"61":2,"62":6,"63":29,"64":247,"65":1,"66":14,"67":98,"69":3,"70":3,"71":5,"72":3,"73":15,"74":11,"75":3,"76":1,"77":4,"78":7,"79":2,"81":1,"82":2,"83":3,"84":4,"85":19,"86":18,"87":20,"88":3,"89":4,"90":19,"91":14,"93":6,"94":4,"95":14,"96":8,"97":5,"98":9,"99":4,"100":9,"101":5,"102":13,"103":9,"104":37,"105":35,"106":75,"108":6,"110":10,"112":10,"113":3,"115":26,"116":32,"118":17,"119":20,"120":5,"122":6,"123":6,"124":11,"125":7,"126":4,"128":31,"129":12,"130":2,"134":6,"135":2,"136":13,"138":21,"139":19,"140":26,"142":6,"143":4,"145":3,"147":1,"148":4,"150":14,"151":20,"152":17,"154":1,"155":1,"156":8,"158":15,"159":2,"160":7,"161":1,"162":9,"163":3,"164":5,"165":12,"166":6,"167":7,"168":1,"169":22,"171":4,"172":6,"173":13,"175":9,"176":2,"177":339,"178":16,"179":1419,"180":3,"181":841}}],["f1",{"2":{"181":2}}],["fn",{"2":{"179":2}}],["ffs",{"2":{"128":1,"129":1}}],["f2",{"2":{"52":2,"177":2,"181":2}}],["fmixtral",{"2":{"31":2}}],["f",{"2":{"21":2,"31":1,"51":2,"52":11,"106":1,"166":1,"167":1,"177":16,"179":6}}],["fences",{"2":{"179":2}}],["fence",{"2":{"128":1,"129":1,"179":2}}],["fear",{"2":{"41":1}}],["features",{"2":{"77":1,"140":1,"169":4,"179":2}}],["feature",{"2":{"17":1,"21":1,"169":7,"179":1}}],["february",{"2":{"179":1}}],["feb",{"2":{"31":1,"36":1}}],["feedbackfromevaluator",{"0":{"132":1},"2":{"177":3}}],["feedback",{"0":{"131":1},"1":{"132":1},"2":{"21":6,"49":6,"51":8,"52":55,"86":2,"106":5,"128":9,"129":4,"130":4,"132":5,"177":125,"179":4}}],["feel",{"2":{"23":1,"26":1,"31":1,"34":1,"42":1,"57":1,"66":1}}],["feels",{"2":{"12":1}}],["feelings",{"2":{"12":1,"35":2,"41":2,"179":8}}],["fewer",{"2":{"181":1}}],["few",{"2":{"2":2,"6":1,"11":1,"128":1,"150":1,"158":1,"177":2,"179":5}}],["flexibility",{"2":{"177":1}}],["flexible",{"2":{"52":2,"56":1,"177":2,"179":1}}],["fleming",{"2":{"118":3}}],["flowed",{"2":{"67":1,"179":1}}],["flow",{"2":{"61":4,"64":2,"86":1,"179":5,"181":3}}],["flows",{"2":{"35":1}}],["float",{"2":{"179":1,"181":5}}],["float32",{"2":{"58":4,"181":5}}],["float64",{"2":{"16":1,"19":1,"22":2,"45":2,"46":2,"47":2,"64":13,"177":1,"179":26,"181":35}}],["float64int64float64dict",{"2":{"7":1}}],["flashrank",{"2":{"181":4}}],["flashranker",{"2":{"179":1,"181":3}}],["flag",{"2":{"86":1,"177":2,"179":3,"181":10}}],["flags",{"2":{"15":1,"95":1}}],["flavors",{"2":{"10":1,"49":1,"104":1,"179":2}}],["flavor",{"2":{"0":1,"179":16,"181":1}}],["fruit",{"2":{"179":2}}],["friendly",{"2":{"30":1,"158":2}}],["francisco",{"2":{"19":1}}],["france",{"2":{"15":1,"64":2,"95":3,"105":4,"181":7}}],["frameworks",{"2":{"58":1}}],["frame",{"2":{"7":8}}],["frames",{"2":{"6":1,"7":7}}],["frequencies",{"2":{"181":1}}],["frequently",{"0":{"68":1},"1":{"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1},"2":{"37":1,"179":1}}],["free",{"2":{"23":1,"26":1,"31":2,"34":1,"36":1,"42":1,"57":1,"66":1,"70":1,"74":2,"75":1,"77":1,"179":5,"181":1}}],["freedom",{"2":{"12":1}}],["french",{"2":{"14":1,"91":1,"179":3}}],["from",{"0":{"74":1,"81":1},"2":{"2":5,"3":1,"6":2,"7":13,"8":1,"10":6,"11":2,"12":2,"19":2,"20":1,"23":1,"25":1,"26":1,"31":1,"32":1,"35":1,"37":2,"41":1,"49":1,"51":1,"52":15,"55":2,"56":1,"57":4,"58":2,"60":2,"61":1,"63":2,"64":17,"66":2,"67":2,"72":1,"78":1,"81":2,"85":1,"86":1,"93":1,"95":1,"102":3,"104":4,"105":1,"106":6,"112":1,"113":2,"115":1,"116":4,"118":2,"119":3,"120":1,"122":1,"123":1,"124":1,"125":1,"126":2,"128":2,"132":2,"134":1,"136":1,"140":1,"148":1,"150":1,"151":1,"152":3,"158":1,"166":1,"167":1,"169":2,"176":1,"177":29,"178":2,"179":106,"181":57}}],["fairly",{"2":{"179":1}}],["fail",{"2":{"52":1,"177":3,"179":4}}],["failure",{"2":{"21":1,"49":3,"51":1,"52":1,"177":3}}],["failures",{"2":{"21":1,"51":1,"52":2,"177":1,"179":3}}],["fails",{"2":{"21":3,"49":1,"51":3,"52":2,"177":3,"179":7}}],["failedresponse",{"2":{"86":3}}],["failed",{"2":{"7":2,"19":1,"52":1,"86":2,"177":1,"179":3,"181":1}}],["favors",{"2":{"177":1}}],["favorite",{"2":{"83":1,"91":1}}],["far",{"2":{"177":2}}],["famous",{"2":{"162":1}}],["familiar",{"2":{"1":1}}],["faq",{"2":{"71":1,"93":1,"103":1}}],["fallback",{"2":{"179":7}}],["falls",{"2":{"52":1,"177":1}}],["fall",{"2":{"52":3,"177":3}}],["false`",{"2":{"52":1,"177":1}}],["false",{"2":{"2":1,"7":2,"17":2,"21":1,"51":1,"52":13,"55":3,"64":2,"135":2,"177":14,"178":3,"179":58,"181":16}}],["fahrenheit",{"2":{"19":1,"179":8}}],["faster",{"2":{"21":1,"28":1,"46":1,"51":1,"52":1,"64":1,"177":1,"181":1}}],["fast",{"2":{"18":1,"28":1,"179":1,"181":1}}],["face",{"2":{"42":1}}],["facilitating",{"2":{"179":2}}],["facilitate",{"2":{"10":1,"49":1,"52":1,"63":1,"104":1,"177":1,"179":2}}],["facing",{"2":{"15":1}}],["facts",{"2":{"167":1}}],["fact",{"2":{"10":1,"17":1,"49":1,"104":1}}],["focused",{"2":{"128":1,"151":1,"162":1}}],["focus",{"2":{"124":1,"158":1,"169":1,"177":1,"179":2}}],["focusing",{"2":{"58":1,"138":1}}],["four",{"2":{"17":1,"86":2,"179":2}}],["foundation",{"0":{"29":1},"2":{"29":1,"179":3}}],["found",{"2":{"7":1,"52":2,"64":2,"81":1,"177":1,"179":22,"181":6}}],["food",{"2":{"10":1,"31":5,"104":1,"106":24}}],["footers",{"2":{"2":1}}],["follow",{"2":{"85":1,"128":1,"129":1,"138":2,"139":2,"140":2,"150":2,"152":1,"154":1,"158":4,"164":2,"169":1,"172":1,"179":1}}],["followed",{"2":{"24":1,"64":1,"181":1}}],["follows",{"2":{"7":1,"48":1,"53":1,"56":1,"115":1,"128":1,"179":1,"181":3}}],["following",{"2":{"5":1,"7":2,"11":1,"17":1,"24":1,"52":1,"58":2,"66":1,"81":1,"88":2,"94":1,"98":1,"115":1,"116":1,"129":1,"158":1,"177":2,"179":10,"181":1}}],["folder",{"2":{"2":1,"11":3,"13":1,"87":4,"179":4}}],["forget",{"2":{"179":1,"181":1}}],["forward",{"2":{"179":1}}],["forwarded",{"2":{"64":12,"181":16}}],["forbidden",{"2":{"165":1,"173":1}}],["forum",{"2":{"76":1}}],["forefront",{"2":{"69":1}}],["forever",{"2":{"67":1,"179":1}}],["formulate",{"2":{"118":1}}],["form",{"2":{"71":1,"179":1,"181":10}}],["former",{"2":{"67":1,"179":1}}],["forms",{"2":{"52":1,"177":1,"181":1}}],["format=",{"2":{"179":2}}],["format=dict",{"2":{"106":2}}],["formatting",{"2":{"51":1,"63":1,"90":1,"142":1,"143":1,"145":1,"150":1,"151":1,"152":1,"158":1,"176":1,"181":3}}],["formatted",{"0":{"141":1,"170":1},"1":{"142":1,"143":1,"171":1,"172":1,"173":1},"2":{"0":2,"89":1,"90":1,"100":1,"105":1,"106":1,"142":1,"143":1,"152":1,"171":1,"172":1,"173":1,"177":1,"181":1}}],["format",{"2":{"10":1,"21":1,"51":1,"52":2,"63":1,"86":1,"89":2,"100":1,"102":1,"104":1,"105":2,"106":3,"110":1,"113":1,"128":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"148":1,"150":1,"151":1,"152":2,"156":2,"158":3,"160":1,"162":2,"177":2,"179":10,"181":1}}],["forth",{"2":{"41":1}}],["fortunately",{"2":{"6":1,"106":1}}],["forces",{"2":{"142":1}}],["force=true",{"2":{"73":1}}],["force",{"2":{"12":1,"18":1,"24":1,"35":2,"41":1,"73":2,"179":3}}],["for",{"0":{"45":1,"77":1,"78":1,"83":1,"105":1,"106":1,"177":1,"178":1,"180":1,"181":1},"2":{"0":5,"2":6,"3":1,"4":2,"5":1,"6":2,"7":14,"8":1,"10":9,"12":2,"13":2,"14":2,"15":2,"16":1,"17":3,"18":7,"19":2,"21":7,"22":1,"23":5,"24":14,"26":2,"27":1,"30":5,"31":8,"32":2,"33":1,"35":2,"36":3,"37":3,"39":1,"41":2,"42":2,"47":1,"48":1,"49":6,"51":5,"52":30,"53":1,"54":1,"55":3,"56":1,"57":3,"58":28,"60":6,"62":3,"63":5,"64":65,"66":2,"67":12,"69":2,"71":2,"72":1,"74":1,"75":1,"77":4,"78":3,"80":1,"81":1,"82":1,"83":1,"84":1,"86":5,"87":4,"88":3,"89":2,"90":4,"91":1,"93":3,"95":3,"96":3,"97":1,"99":2,"100":2,"103":2,"104":9,"105":7,"106":13,"108":1,"112":2,"113":1,"115":1,"116":2,"118":4,"119":2,"120":1,"122":2,"123":1,"124":5,"125":2,"126":3,"128":3,"129":3,"134":2,"136":3,"138":1,"139":3,"140":2,"142":4,"143":4,"145":3,"147":2,"148":1,"150":2,"151":6,"152":3,"155":1,"156":1,"157":1,"158":8,"159":1,"160":2,"161":1,"162":2,"163":1,"164":1,"165":7,"166":4,"167":4,"168":1,"169":1,"171":2,"172":2,"173":8,"175":2,"177":65,"178":3,"179":347,"180":4,"181":267}}],["five",{"2":{"179":1}}],["fits",{"2":{"97":1,"134":1,"136":2}}],["fit",{"2":{"66":1,"67":2,"169":1,"179":2,"181":3}}],["fixes",{"2":{"177":1}}],["fixed",{"2":{"86":1,"177":1,"179":2}}],["fix",{"2":{"49":2,"52":1,"73":1,"128":1,"130":1,"177":4,"179":1}}],["fixing",{"0":{"51":1,"127":1},"1":{"128":1,"129":1,"130":1},"2":{"10":1,"48":1,"49":1,"52":4,"104":1,"106":1,"177":21}}],["field3",{"2":{"179":4}}],["field2",{"2":{"179":4}}],["field1",{"2":{"179":8}}],["fieldnames",{"2":{"106":1}}],["fields",{"2":{"24":1,"52":4,"60":1,"86":1,"105":1,"106":2,"138":1,"139":1,"140":1,"177":6,"179":35,"181":21}}],["field",{"2":{"10":5,"49":1,"52":2,"64":1,"95":1,"104":6,"106":8,"177":3,"179":18,"181":2}}],["finished",{"2":{"179":2}}],["finish",{"2":{"139":2,"179":5}}],["finance",{"2":{"58":1}}],["finalizes",{"2":{"179":3}}],["finalize",{"2":{"179":17}}],["finally",{"2":{"63":1,"179":1}}],["final",{"2":{"6":1,"52":2,"58":2,"63":1,"64":5,"105":1,"119":1,"177":1,"181":21}}],["finetuning",{"2":{"89":5,"179":2}}],["fine",{"0":{"89":1},"2":{"31":1,"89":1,"179":1}}],["finders",{"2":{"181":1}}],["finder",{"2":{"64":10,"181":23}}],["findings",{"2":{"112":1}}],["finding",{"2":{"41":1,"64":2,"181":2}}],["find",{"2":{"2":1,"8":1,"11":1,"12":1,"13":1,"23":1,"26":1,"29":1,"35":1,"41":2,"49":1,"52":1,"58":5,"61":2,"63":3,"64":7,"66":2,"67":3,"91":1,"177":3,"179":21,"181":51}}],["finds",{"2":{"2":1,"64":1,"177":1,"181":14}}],["filled",{"2":{"179":2}}],["fill",{"2":{"71":1,"106":1,"158":1,"179":14,"181":1}}],["fills",{"2":{"7":1}}],["filechunker",{"2":{"179":1,"181":4}}],["filenames",{"2":{"64":1,"181":1}}],["filename",{"2":{"24":2,"89":1,"179":2}}],["file",{"2":{"4":1,"11":6,"24":3,"28":1,"32":1,"37":1,"64":4,"73":1,"78":1,"89":2,"91":1,"150":1,"151":1,"152":1,"179":23,"181":10}}],["files`",{"2":{"64":1,"181":1}}],["files",{"2":{"2":2,"24":1,"61":1,"64":6,"72":1,"93":1,"181":14}}],["filtered",{"2":{"58":1,"64":2,"181":4}}],["filtering",{"2":{"8":1,"17":1,"63":2,"64":2,"181":6}}],["filter",{"2":{"2":2,"7":1,"64":7,"112":2,"179":1,"181":13}}],["filters",{"2":{"2":2,"8":1,"63":1}}],["fired",{"2":{"165":1,"173":1}}],["firefunction",{"2":{"31":2}}],["fireworks",{"0":{"31":1},"2":{"0":1,"23":1,"27":1,"31":4,"70":1,"106":1,"179":2}}],["fireworksopenaischema",{"2":{"0":1,"31":2,"179":2}}],["first",{"2":{"1":1,"2":1,"6":1,"7":7,"10":2,"13":1,"15":1,"16":1,"23":1,"24":2,"26":1,"28":1,"37":1,"39":1,"41":1,"52":1,"60":2,"63":1,"64":2,"67":3,"73":2,"74":1,"86":1,"87":3,"90":2,"104":2,"105":1,"110":1,"142":1,"160":1,"162":1,"164":1,"166":1,"167":1,"172":1,"177":2,"179":23,"181":14}}],["fur",{"2":{"179":1}}],["furthermore",{"2":{"106":1}}],["further",{"2":{"67":2,"86":2,"177":1,"179":2}}],["fusion",{"2":{"179":2,"181":8}}],["fulfills",{"2":{"140":1}}],["fulfilling",{"2":{"128":1}}],["fully",{"2":{"58":1,"64":1,"86":1,"140":3,"181":1}}],["full",{"2":{"7":1,"64":3,"86":1,"179":9,"181":10}}],["fuzzy",{"2":{"67":1,"179":1}}],["functor",{"2":{"52":1,"177":2}}],["functionality",{"2":{"48":1,"56":1,"140":1,"165":1,"173":1,"177":1,"179":3,"180":3,"181":3}}],["functionalities",{"2":{"0":1,"140":1,"179":1}}],["function",{"0":{"47":1},"2":{"6":1,"7":2,"8":1,"10":4,"12":1,"16":1,"17":1,"20":1,"21":5,"22":2,"24":1,"31":1,"45":1,"47":1,"49":2,"51":6,"52":37,"54":2,"55":1,"58":2,"60":2,"61":1,"63":1,"64":20,"67":12,"73":2,"85":1,"86":2,"87":1,"89":1,"90":1,"100":1,"104":4,"106":10,"110":1,"112":1,"128":3,"140":1,"143":3,"145":3,"165":3,"173":3,"177":58,"179":96,"181":42}}],["functions",{"0":{"10":1,"104":1},"2":{"0":2,"2":1,"7":1,"10":5,"15":1,"21":2,"23":1,"24":1,"27":1,"37":1,"49":4,"51":1,"52":7,"57":1,"58":2,"60":5,"61":1,"63":1,"64":1,"66":2,"73":1,"81":1,"84":1,"85":1,"87":2,"90":1,"103":1,"104":4,"164":1,"165":1,"166":1,"167":1,"172":1,"173":1,"177":8,"179":11,"181":12}}],["func",{"2":{"52":2,"177":4,"181":1}}],["future",{"2":{"1":1,"4":2,"23":1,"58":1,"87":1,"106":1,"177":1,"179":2,"180":1,"181":1}}],["ml",{"2":{"169":1}}],["mm",{"2":{"150":2,"151":3}}],["mdoel",{"2":{"105":1}}],["mdash",{"2":{"52":9,"55":1,"64":6,"67":5,"177":37,"178":2,"179":163,"180":1,"181":142}}],["m1",{"2":{"37":1}}],["mcts",{"2":{"21":1,"49":1,"52":1,"177":1}}],["m",{"2":{"21":2,"23":1,"26":1,"28":3,"30":1,"31":2,"34":1,"37":1,"42":1,"51":2,"52":3,"85":3,"106":1,"177":3,"179":5}}],["msg1",{"2":{"179":2}}],["msgs",{"2":{"179":1}}],["msg=aigenerate",{"2":{"179":7}}],["msg",{"2":{"12":2,"16":5,"19":4,"20":2,"22":4,"23":2,"26":1,"27":1,"29":1,"31":2,"35":1,"40":2,"41":1,"45":1,"46":1,"47":2,"52":12,"58":1,"64":2,"86":4,"91":5,"105":3,"106":2,"177":9,"179":134,"181":6}}],["myfield",{"2":{"179":1}}],["myfunction",{"2":{"179":2}}],["mytemplates",{"2":{"177":1}}],["mytype",{"2":{"86":1}}],["myaijudgemodel",{"2":{"181":1}}],["myadd",{"2":{"165":6,"173":6}}],["myabstractresponse",{"2":{"86":5}}],["mybool",{"2":{"86":2}}],["myreranker",{"2":{"60":4,"64":2,"181":2}}],["mymeasurementwrapper",{"2":{"179":1}}],["mymeasurement",{"2":{"19":5,"179":32}}],["my",{"0":{"90":1},"2":{"12":1,"13":1,"23":3,"26":2,"31":1,"34":1,"35":1,"41":1,"74":1,"83":1,"85":3,"106":1,"179":13}}],["music",{"2":{"150":1,"151":1}}],["must",{"2":{"1":1,"12":2,"21":2,"37":1,"41":2,"51":2,"52":8,"64":1,"87":3,"93":1,"103":1,"106":3,"113":1,"115":1,"116":1,"119":1,"123":1,"128":3,"129":1,"134":2,"136":2,"150":1,"151":1,"152":2,"154":1,"158":1,"162":1,"165":2,"169":1,"173":2,"175":1,"177":12,"179":16,"180":1,"181":8}}],["murmured",{"2":{"67":1,"179":1}}],["mutates",{"2":{"64":1,"181":1}}],["mutated",{"2":{"64":1,"181":4}}],["mutating",{"2":{"52":1,"63":1,"64":1,"177":2,"181":2}}],["mutable",{"2":{"52":1,"179":3}}],["multihits",{"2":{"181":1}}],["multihop",{"2":{"181":1}}],["multicandidatechunks",{"2":{"179":1,"181":2}}],["multifinder",{"2":{"64":1,"179":1,"181":4}}],["multiindex",{"2":{"64":2,"179":1,"181":14}}],["multiplier",{"2":{"181":5}}],["multiplication",{"2":{"47":1}}],["multiple",{"0":{"46":1},"2":{"6":1,"8":1,"14":1,"21":1,"46":1,"52":3,"60":1,"64":2,"67":3,"86":1,"91":1,"96":1,"100":1,"103":1,"105":1,"106":1,"165":1,"166":2,"167":2,"173":1,"177":6,"179":24,"181":10}}],["multi",{"0":{"85":1},"2":{"35":1,"42":1,"64":3,"96":1,"177":2,"179":6,"181":7}}],["much",{"0":{"77":1},"2":{"7":2,"8":1,"13":1,"24":1,"41":1,"52":1,"64":2,"104":2,"106":1,"177":3,"179":3,"181":2}}],["mix",{"2":{"179":1,"181":1}}],["mixed",{"2":{"106":1}}],["mixtral",{"2":{"28":1,"30":1,"31":2,"37":2,"106":2,"179":1}}],["million",{"2":{"96":2}}],["mickey",{"2":{"67":1,"179":1}}],["middleware",{"2":{"179":1}}],["middle",{"2":{"41":1,"110":1,"177":1,"181":1}}],["mimics",{"2":{"67":1,"179":1}}],["mimic",{"2":{"27":1,"86":1,"99":1,"177":2,"179":3}}],["mind",{"2":{"106":1}}],["minute",{"2":{"74":5}}],["minutes",{"2":{"11":2,"77":2,"179":3}}],["min",{"2":{"64":8,"67":1,"179":1,"181":12}}],["minichunks",{"2":{"67":1,"179":1}}],["minimize",{"2":{"181":1}}],["minimal",{"2":{"56":1}}],["minimum",{"2":{"2":1,"64":2,"67":2,"93":1,"179":2,"181":7}}],["mini",{"2":{"52":2,"177":2,"181":2}}],["mistakes",{"2":{"128":2}}],["mistrall",{"2":{"179":2}}],["mistralai",{"0":{"23":1,"26":1},"2":{"23":3,"25":1,"26":1,"27":1,"70":1,"78":2,"106":1,"179":5}}],["mistral",{"2":{"0":1,"22":3,"23":7,"26":7,"37":1,"40":1,"47":1,"83":2,"179":22}}],["mistralopenaischema",{"2":{"0":1,"23":2,"26":2,"179":4}}],["missing",{"2":{"7":1,"52":1,"139":1,"140":2,"158":1,"179":6}}],["might",{"2":{"7":1,"10":1,"23":2,"26":1,"52":2,"67":1,"75":2,"76":1,"78":1,"104":1,"177":2,"179":4}}],["madrid",{"2":{"95":1,"96":3}}],["made",{"2":{"49":1,"52":5,"118":1,"151":1,"177":6,"179":2}}],["map",{"2":{"181":1}}],["mapped",{"2":{"179":1}}],["mapping",{"2":{"86":1,"179":2}}],["mapreduce",{"2":{"46":1}}],["mask",{"2":{"66":1}}],["mastering",{"2":{"58":1}}],["master",{"2":{"12":2,"35":1,"41":1,"179":5}}],["magenta",{"2":{"58":1,"181":3}}],["maintaining",{"2":{"176":1}}],["maintain",{"2":{"151":1,"179":2}}],["mainly",{"2":{"124":1}}],["main",{"2":{"49":2,"57":1,"58":1,"60":3,"61":1,"64":1,"66":1,"87":1,"102":1,"106":1,"156":1,"179":7,"180":1,"181":3}}],["machine",{"2":{"58":1}}],["machines",{"2":{"35":1}}],["mac",{"2":{"37":1,"78":1}}],["macros",{"2":{"52":1,"179":5}}],["macro",{"2":{"15":1,"34":1,"85":3,"95":1,"128":1,"179":8}}],["may",{"2":{"24":1,"34":1,"42":1,"87":2,"138":1,"140":1,"150":1,"177":1,"179":6,"180":1,"181":1}}],["maybeextract",{"2":{"19":1,"179":18}}],["marks",{"2":{"179":1,"181":1}}],["markup",{"2":{"179":1}}],["marked",{"2":{"118":1,"179":3}}],["markdown",{"2":{"20":3,"150":1,"151":1,"152":1,"158":1,"162":2,"179":20}}],["marsaglia",{"2":{"177":1}}],["mars",{"2":{"17":1,"179":2}}],["margin=",{"2":{"181":1}}],["margin",{"2":{"2":1,"181":4}}],["manner",{"2":{"150":1,"181":3}}],["management",{"2":{"179":1}}],["managed",{"2":{"177":1,"179":4}}],["manage",{"2":{"177":1}}],["manages",{"2":{"106":1,"177":1,"179":1}}],["manageable",{"2":{"63":1,"67":1,"177":1,"179":1}}],["managing",{"2":{"60":1}}],["manually",{"2":{"27":1,"28":1,"73":1}}],["manymeasurements",{"2":{"19":1,"179":2}}],["many",{"0":{"75":1},"2":{"19":1,"23":1,"27":1,"49":2,"66":1,"69":1,"70":1,"83":1,"86":1,"87":1,"100":1,"106":1,"122":1,"123":1,"179":5}}],["mandarin",{"2":{"14":1}}],["manipulations",{"2":{"157":1}}],["manipulation",{"2":{"2":1,"64":1,"65":1,"181":1}}],["matrices",{"2":{"181":5}}],["matrix",{"2":{"22":1,"46":2,"47":1,"63":1,"179":4,"181":29}}],["mat",{"2":{"181":2}}],["matlab",{"2":{"58":1}}],["matter",{"2":{"36":1}}],["materialized",{"2":{"181":1}}],["materialize",{"2":{"45":1,"179":1}}],["material",{"2":{"12":1}}],["matches",{"2":{"179":5,"181":2}}],["matched",{"2":{"122":1,"123":1,"126":1,"181":2}}],["match",{"2":{"7":2,"11":1,"24":3,"58":5,"63":1,"64":9,"67":7,"179":9,"181":16}}],["matching",{"2":{"7":5,"58":1,"64":3,"67":1,"179":1,"181":9}}],["maximize",{"2":{"181":1}}],["maximum",{"2":{"18":1,"21":2,"52":4,"55":1,"67":4,"74":1,"112":1,"177":6,"178":1,"179":15,"181":3}}],["maxes",{"2":{"74":1}}],["max",{"2":{"8":1,"20":1,"21":4,"51":2,"52":21,"55":1,"64":3,"66":1,"67":21,"86":1,"88":1,"106":1,"177":29,"178":1,"179":50,"181":14}}],["makie",{"2":{"64":1,"181":1}}],["making",{"2":{"0":1,"98":1,"103":1}}],["makes",{"2":{"37":1,"104":1,"150":1}}],["make",{"2":{"4":1,"6":1,"7":1,"8":2,"11":1,"29":1,"37":2,"52":2,"64":3,"65":1,"74":1,"78":2,"87":1,"93":2,"106":2,"108":1,"115":1,"116":1,"136":1,"150":3,"151":1,"160":1,"162":1,"177":2,"179":8,"181":7}}],["mention",{"2":{"150":1}}],["mentioning",{"2":{"140":1,"169":1}}],["mentioned",{"2":{"119":1,"124":1,"140":1,"169":1}}],["merely",{"2":{"90":1,"179":1}}],["merged",{"2":{"181":2}}],["merges",{"2":{"181":3}}],["merge",{"2":{"64":2,"179":1,"181":5}}],["melody",{"2":{"67":1,"179":1}}],["memory`",{"2":{"106":1}}],["memory",{"2":{"58":1,"128":1,"157":1,"181":2}}],["memories",{"2":{"12":1,"67":1,"179":1}}],["meetings",{"2":{"150":2,"151":2}}],["meeting",{"2":{"140":1}}],["meets",{"2":{"138":2,"140":1}}],["meet",{"2":{"39":1,"40":1,"42":1,"140":1}}],["messaging",{"2":{"138":1,"179":3}}],["message",{"0":{"34":1,"39":1},"2":{"21":1,"49":2,"51":1,"52":18,"58":1,"64":1,"75":1,"83":2,"85":2,"87":2,"91":3,"95":2,"100":3,"105":2,"106":3,"128":1,"129":2,"132":1,"138":1,"147":1,"177":21,"179":119,"181":4}}],["message`",{"2":{"21":1,"51":1,"52":1,"177":1}}],["messagese",{"2":{"179":1}}],["messages",{"0":{"102":1},"2":{"12":2,"23":1,"24":1,"27":1,"36":1,"52":1,"85":1,"86":1,"87":1,"89":1,"90":5,"91":1,"98":1,"101":1,"102":2,"105":6,"106":1,"177":4,"179":54}}],["mesages",{"2":{"24":1}}],["mechanisms",{"2":{"104":1}}],["mechanism",{"2":{"23":1,"26":1,"67":1,"106":1,"179":1}}],["medium",{"2":{"23":1,"26":1,"181":4}}],["measuring",{"2":{"181":4}}],["measurement",{"2":{"179":1}}],["measurements",{"2":{"19":2,"179":16}}],["measures",{"2":{"64":1,"67":2,"179":2,"181":1}}],["meantime",{"2":{"179":1}}],["meant",{"2":{"128":1,"129":1,"179":2}}],["meaningful",{"2":{"150":1}}],["meaning",{"2":{"125":1,"181":1}}],["means",{"2":{"18":1,"32":1,"37":1,"58":1,"64":2,"66":2,"74":1,"179":2,"181":3}}],["mean",{"2":{"1":1,"7":2,"181":2}}],["me",{"2":{"16":2,"22":3,"23":1,"26":1,"30":2,"31":2,"34":1,"39":1,"42":1,"45":2,"46":4,"47":2,"67":1,"81":1,"86":2,"87":4,"169":1,"179":10}}],["meticulously",{"2":{"142":1,"143":1,"145":1,"151":1}}],["meta",{"2":{"91":1,"179":12}}],["metaprogramming",{"2":{"58":1}}],["metadatamessage",{"2":{"179":2}}],["metadata=true",{"2":{"2":1,"8":1}}],["metadata",{"0":{"111":1},"1":{"112":1,"113":1},"2":{"2":4,"8":1,"63":1,"64":1,"91":5,"112":2,"113":1,"124":1,"179":39,"181":14}}],["met",{"2":{"52":12,"86":2,"106":1,"177":16}}],["methoderror",{"2":{"106":1}}],["methods",{"2":{"52":3,"63":1,"64":1,"98":1,"106":1,"177":3,"179":6,"181":3}}],["method",{"2":{"10":1,"49":2,"52":1,"60":2,"64":14,"67":1,"98":1,"99":1,"104":1,"177":39,"178":2,"179":100,"181":158}}],["metrics",{"2":{"6":1}}],["move",{"2":{"179":1,"181":1}}],["moved",{"2":{"1":1,"177":1,"180":1,"181":1}}],["mock",{"2":{"177":1}}],["monitoring",{"2":{"179":2}}],["month",{"2":{"76":1}}],["monte",{"2":{"21":1,"49":1,"52":1,"177":3}}],["money",{"2":{"76":1,"179":1}}],["moonlight",{"2":{"67":2,"179":2}}],["mouse",{"2":{"67":1,"179":1}}],["modified",{"2":{"179":1,"181":1}}],["modifies",{"2":{"179":2}}],["modification",{"2":{"179":1}}],["modify",{"2":{"24":1}}],["modal",{"2":{"179":2}}],["modality",{"2":{"65":1}}],["modular",{"2":{"57":1,"177":1}}],["modules",{"2":{"66":1}}],["module",{"0":{"180":1},"2":{"1":1,"10":1,"21":1,"24":1,"48":2,"49":1,"52":4,"53":2,"54":1,"56":2,"58":1,"66":1,"104":1,"177":3,"179":4,"180":4,"181":2}}],["modes",{"2":{"181":1}}],["modern",{"2":{"118":2}}],["moderation",{"2":{"17":1}}],["mode",{"2":{"24":2,"64":1,"106":2,"179":4,"181":1}}],["model3",{"2":{"179":1}}],["model2",{"2":{"179":1}}],["model1",{"2":{"179":3}}],["modeling",{"2":{"58":1}}],["model>",{"2":{"27":1}}],["model=pt",{"2":{"64":1,"181":1}}],["model=",{"2":{"20":2,"21":1,"22":3,"23":3,"26":2,"27":1,"30":2,"31":3,"35":1,"37":1,"43":1,"51":1,"52":3,"62":1,"91":3,"104":2,"105":1,"177":3,"179":46,"181":1}}],["modelspec",{"2":{"179":3}}],["models",{"0":{"22":1,"29":1,"37":1,"42":1},"1":{"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1},"2":{"0":1,"10":1,"15":1,"17":1,"22":1,"23":4,"26":3,"28":2,"29":2,"32":1,"36":1,"37":4,"39":1,"42":1,"52":1,"53":1,"64":2,"67":2,"69":2,"70":1,"71":5,"75":1,"83":3,"84":1,"91":1,"96":1,"98":1,"99":1,"101":1,"104":1,"106":1,"142":1,"143":1,"166":1,"167":1,"171":1,"172":1,"173":1,"177":2,"179":36,"181":7}}],["model",{"0":{"0":1,"15":1,"84":1,"89":1,"99":1},"2":{"0":3,"6":2,"7":2,"10":8,"15":8,"16":1,"17":1,"18":1,"21":3,"22":1,"23":2,"26":1,"27":2,"28":4,"29":5,"30":4,"31":6,"32":2,"33":1,"34":2,"35":1,"37":3,"39":2,"40":2,"41":1,"42":6,"45":2,"46":3,"47":1,"49":8,"51":3,"52":16,"56":1,"57":3,"58":2,"60":2,"62":4,"64":43,"77":1,"82":1,"83":1,"84":6,"85":2,"86":1,"89":1,"90":2,"91":3,"95":3,"98":3,"99":1,"100":1,"101":1,"102":3,"104":8,"105":4,"106":17,"115":2,"116":4,"142":1,"148":1,"165":1,"169":5,"173":1,"177":19,"179":260,"181":123}}],["moment",{"2":{"1":1,"23":1,"27":1,"32":1,"43":1,"179":3}}],["mostly",{"2":{"89":1}}],["most",{"2":{"1":1,"8":1,"23":1,"26":1,"52":2,"58":1,"60":1,"63":2,"64":3,"82":1,"110":1,"112":2,"113":2,"123":1,"124":1,"134":1,"136":1,"148":1,"152":1,"156":1,"169":1,"177":4,"179":11,"181":10}}],["moreover",{"2":{"24":1}}],["more",{"2":{"0":2,"2":1,"5":3,"6":4,"7":4,"8":1,"10":1,"12":2,"13":3,"15":2,"16":1,"17":3,"19":2,"20":1,"21":2,"23":1,"24":3,"26":1,"28":1,"29":1,"37":1,"43":1,"52":4,"55":1,"58":4,"63":1,"64":6,"65":1,"66":1,"67":1,"74":1,"75":1,"76":1,"79":1,"80":1,"82":1,"83":1,"84":1,"86":1,"88":1,"90":1,"93":1,"96":2,"103":1,"104":2,"105":1,"106":5,"115":1,"124":1,"125":1,"128":1,"177":11,"178":1,"179":58,"181":34}}],["❌",{"2":{"0":26}}],["✅",{"2":{"0":46}}],["w",{"2":{"181":3}}],["wp",{"2":{"20":1,"179":2}}],["www",{"2":{"20":1,"179":2}}],["wraps",{"2":{"66":1,"179":7,"181":1}}],["wrap",{"2":{"66":2,"67":2,"91":6,"179":12,"181":1}}],["wrapped",{"2":{"91":1,"177":1,"179":1}}],["wrapper",{"2":{"19":1,"49":1,"52":3,"64":1,"67":2,"95":1,"177":3,"179":20,"181":2}}],["wrapping",{"2":{"53":1,"66":1}}],["wrong",{"2":{"51":1,"52":1,"86":1,"177":1,"179":2}}],["written",{"2":{"20":1,"138":3,"140":1,"179":2}}],["writing",{"2":{"13":1,"31":1,"36":1,"71":1,"160":1,"162":1,"164":1,"165":3,"172":1,"173":3,"179":2}}],["writer",{"2":{"138":2,"160":2,"162":1}}],["write",{"2":{"4":1,"11":1,"24":2,"102":1,"103":1,"106":4,"123":1,"128":2,"129":1,"158":3,"160":2,"162":3,"164":1,"165":2,"172":1,"173":2,"177":2,"179":2}}],["walk",{"2":{"97":1}}],["walkthrough",{"0":{"105":1,"106":1},"2":{"90":1}}],["wave",{"2":{"67":1,"179":1}}],["wake",{"2":{"67":1,"179":1}}],["warning",{"2":{"179":2,"181":1}}],["warnings",{"2":{"52":1,"177":1}}],["wars",{"2":{"12":1,"35":1,"41":1,"179":5}}],["waiting",{"2":{"106":1}}],["wait",{"2":{"21":1,"51":1,"52":2,"177":2,"179":2}}],["way",{"2":{"21":1,"24":1,"29":1,"49":1,"52":1,"60":1,"77":1,"78":1,"85":1,"103":1,"123":1,"165":1,"173":1,"177":1,"179":3,"181":1}}],["ways",{"2":{"12":1,"41":1,"84":1,"90":1,"179":1}}],["was",{"2":{"7":1,"8":1,"10":1,"24":2,"47":1,"52":2,"60":1,"64":1,"67":1,"73":1,"77":1,"86":1,"104":1,"106":1,"118":1,"120":1,"128":1,"169":2,"177":4,"179":14,"181":5}}],["wanted",{"2":{"52":1,"177":1,"179":2}}],["wants",{"2":{"15":1}}],["want",{"2":{"2":1,"3":1,"7":2,"10":3,"11":1,"19":1,"21":1,"24":1,"51":1,"52":2,"58":2,"60":1,"63":2,"64":3,"74":2,"82":1,"86":2,"87":3,"95":1,"98":1,"101":1,"103":1,"104":3,"105":1,"177":2,"179":34,"181":7}}],["won",{"2":{"27":1,"28":1,"84":1}}],["wonders",{"2":{"8":1}}],["worth",{"0":{"77":1},"2":{"77":1}}],["worst",{"2":{"67":1,"179":1}}],["worry",{"2":{"37":1}}],["words",{"2":{"58":1,"64":1,"66":5,"67":13,"88":2,"112":1,"113":1,"122":1,"123":1,"124":1,"156":2,"158":3,"162":1,"175":1,"179":14,"181":2}}],["word",{"2":{"20":1,"21":4,"51":4,"52":3,"64":2,"66":1,"77":1,"108":1,"110":2,"112":1,"113":1,"115":1,"116":1,"118":1,"119":1,"120":1,"122":1,"123":1,"124":1,"125":1,"126":1,"128":3,"129":3,"130":1,"132":1,"134":2,"135":1,"136":2,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"147":1,"148":1,"150":1,"151":1,"152":1,"155":1,"156":2,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"171":1,"172":1,"173":1,"175":1,"176":1,"177":3,"179":2,"181":9}}],["wordcount",{"2":{"13":1,"24":1,"87":1,"179":3}}],["world",{"2":{"12":1,"13":1,"14":1,"24":4,"52":3,"67":3,"102":1,"103":1,"105":2,"106":1,"108":1,"112":2,"115":1,"116":1,"118":1,"122":1,"123":1,"125":1,"134":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"148":1,"152":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"171":1,"172":1,"173":1,"176":1,"177":1,"179":21}}],["workaround",{"2":{"106":1}}],["workload",{"2":{"58":1}}],["workflow",{"0":{"11":1},"2":{"49":1,"52":1,"138":2,"139":2,"140":2,"179":1}}],["workflows",{"0":{"21":1},"2":{"0":1,"16":1,"21":1,"48":1,"84":1,"104":1,"180":1}}],["working",{"0":{"32":1},"1":{"33":1,"34":1,"35":1,"36":1},"2":{"10":1,"22":1,"53":1,"62":1,"65":1,"76":1,"83":1,"84":1,"104":1,"128":1,"129":1,"130":1,"179":2,"181":1}}],["work",{"2":{"7":1,"11":1,"24":1,"32":1,"37":1,"52":1,"60":1,"86":1,"90":1,"91":1,"93":1,"101":1,"138":1,"177":1,"181":2}}],["workspace",{"2":{"179":2}}],["works",{"0":{"97":1},"1":{"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1},"2":{"0":1,"23":2,"26":1,"67":1,"78":1,"97":1,"105":1,"106":2,"179":6,"181":1}}],["would",{"0":{"8":1,"89":1},"2":{"3":1,"4":1,"7":2,"13":1,"24":3,"39":1,"58":1,"60":1,"62":2,"73":1,"74":2,"85":1,"86":2,"87":1,"91":3,"106":1,"122":1,"123":1,"179":3,"181":3}}],["welcome",{"2":{"181":1}}],["well",{"2":{"2":1,"21":1,"29":1,"31":1,"51":1,"52":1,"67":1,"106":4,"119":1,"138":3,"140":1,"166":1,"167":1,"177":2,"179":4,"181":5}}],["weaker",{"2":{"179":1}}],["weaving",{"2":{"169":1}}],["weather",{"2":{"19":3,"179":8}}],["web",{"2":{"58":2,"115":1,"116":9,"161":1,"181":10}}],["websearch",{"2":{"54":1,"55":4,"178":5,"179":1}}],["website",{"2":{"11":1,"72":1}}],["were",{"2":{"20":1,"37":1,"62":1,"151":1,"179":1,"181":1}}],["weighs",{"2":{"19":1,"179":6}}],["weight",{"2":{"19":2,"179":14}}],["went",{"2":{"10":1,"104":1}}],["we",{"0":{"8":1,"88":1},"2":{"2":1,"3":3,"4":1,"5":3,"6":4,"7":8,"8":1,"10":6,"11":2,"12":1,"13":1,"15":1,"17":1,"18":2,"19":1,"20":1,"21":13,"22":2,"23":5,"24":3,"26":3,"27":1,"30":1,"31":1,"32":2,"36":2,"37":1,"42":1,"45":1,"51":13,"52":24,"56":1,"58":5,"60":1,"62":2,"63":2,"64":4,"67":1,"71":2,"74":5,"85":2,"86":14,"87":2,"88":1,"94":1,"97":1,"100":2,"101":1,"103":4,"104":4,"105":9,"106":23,"177":22,"179":54,"181":24}}],["wise",{"2":{"181":1}}],["wisp",{"2":{"67":1,"179":1}}],["wiki",{"2":{"177":2}}],["wikipedia",{"2":{"177":2,"181":3}}],["width",{"2":{"66":1,"67":3,"179":12,"181":5}}],["wide",{"2":{"30":1,"31":1,"52":1,"175":1,"177":1}}],["wins",{"2":{"177":9}}],["winning",{"2":{"52":2,"177":2}}],["winks",{"2":{"41":2}}],["win",{"2":{"11":1}}],["windows",{"2":{"58":1,"67":2,"78":1,"179":2}}],["window",{"2":{"2":1,"67":2,"78":1,"93":1,"177":1,"179":3,"181":12}}],["will",{"2":{"1":2,"2":2,"4":1,"10":1,"13":2,"18":2,"19":1,"21":2,"24":1,"28":1,"35":1,"41":2,"49":1,"51":1,"52":24,"58":1,"60":1,"62":1,"64":21,"67":5,"69":1,"74":1,"76":1,"77":2,"78":1,"85":2,"87":4,"90":3,"91":1,"93":2,"94":1,"95":1,"100":4,"104":1,"106":1,"110":1,"113":1,"128":1,"134":1,"136":1,"138":1,"140":1,"164":1,"165":1,"166":2,"167":2,"172":1,"173":1,"175":1,"177":36,"179":66,"181":40}}],["without",{"2":{"41":1,"52":1,"60":1,"67":1,"73":1,"90":1,"103":1,"116":1,"118":1,"147":1,"151":1,"169":1,"179":4,"181":3}}],["within",{"2":{"10":1,"64":1,"67":2,"104":1,"118":1,"177":2,"179":14,"181":7}}],["with",{"0":{"1":1,"21":1,"32":1,"33":1,"37":1,"38":1,"43":1,"44":1,"95":1,"96":1},"1":{"2":1,"33":1,"34":2,"35":2,"36":2,"38":1,"39":2,"40":2,"41":2,"42":2,"43":1,"44":1,"45":2,"46":2,"47":2},"2":{"0":4,"1":3,"2":1,"6":2,"7":4,"8":1,"10":12,"11":2,"12":2,"13":4,"14":1,"15":1,"18":1,"19":5,"20":2,"21":5,"22":2,"23":5,"24":11,"26":2,"27":4,"28":2,"29":1,"30":3,"31":4,"32":1,"34":2,"35":1,"36":1,"37":2,"39":2,"40":1,"41":1,"42":4,"45":1,"46":1,"49":5,"51":6,"52":27,"53":1,"56":3,"57":1,"58":10,"60":3,"61":4,"62":1,"63":2,"64":24,"65":2,"67":8,"69":1,"71":1,"72":2,"73":1,"74":2,"77":4,"78":1,"83":3,"84":2,"85":4,"86":5,"87":2,"89":3,"90":2,"91":7,"93":3,"95":2,"97":1,"98":2,"99":1,"102":3,"103":7,"104":11,"105":2,"106":9,"108":1,"110":2,"112":1,"115":2,"116":2,"119":2,"120":1,"122":1,"123":1,"124":3,"125":2,"126":1,"128":3,"129":2,"130":1,"132":1,"134":3,"136":2,"138":6,"139":4,"140":3,"142":2,"143":1,"145":1,"148":1,"150":2,"151":3,"152":2,"158":5,"159":2,"161":1,"163":1,"165":2,"166":1,"167":1,"168":1,"169":4,"171":1,"173":2,"177":50,"179":145,"181":69}}],["whose",{"2":{"179":2}}],["who",{"2":{"27":1,"55":2,"152":1,"178":2}}],["whole",{"0":{"7":1},"2":{"10":1,"37":1,"85":2,"101":1,"104":1,"165":1,"173":1,"177":1,"179":5}}],["while",{"2":{"128":1,"165":1,"173":1,"177":1,"179":1}}],["whispered",{"2":{"67":4,"179":4}}],["white",{"2":{"21":1,"51":1,"52":1,"67":1,"177":1,"179":6}}],["whichever",{"2":{"46":1}}],["which",{"2":{"0":1,"7":3,"10":3,"17":1,"21":1,"24":1,"28":1,"34":1,"37":2,"42":1,"49":4,"52":4,"57":2,"58":2,"60":1,"63":1,"64":5,"67":2,"74":1,"82":1,"87":1,"88":1,"89":1,"90":1,"98":1,"99":1,"104":3,"105":1,"106":2,"118":2,"138":1,"150":1,"165":1,"173":1,"177":5,"179":43,"181":23}}],["why",{"0":{"69":1},"1":{"70":1},"2":{"13":1,"19":1,"52":2,"106":1,"128":1,"129":1,"177":1,"179":3}}],["whatever",{"2":{"52":1,"82":1,"177":1,"179":1}}],["what",{"0":{"8":1,"70":1,"90":1},"2":{"2":3,"5":1,"6":1,"7":5,"11":1,"12":2,"13":3,"15":1,"19":1,"21":1,"24":1,"35":1,"40":1,"41":1,"51":1,"52":2,"58":4,"64":4,"67":1,"85":3,"86":1,"90":3,"95":4,"96":1,"98":1,"105":3,"118":1,"128":4,"139":1,"148":1,"160":4,"177":2,"179":21,"181":13}}],["whether",{"2":{"7":4,"10":3,"17":1,"52":2,"55":3,"64":4,"104":3,"106":1,"135":2,"177":8,"178":3,"179":24,"181":12}}],["whenever",{"2":{"181":3}}],["when",{"2":{"0":1,"10":4,"11":1,"17":1,"21":2,"22":1,"24":4,"28":1,"49":5,"51":1,"52":2,"58":1,"60":3,"63":1,"64":1,"73":1,"83":1,"84":1,"86":1,"87":1,"98":1,"102":2,"103":2,"104":4,"105":2,"106":3,"148":1,"150":2,"151":1,"155":1,"159":1,"161":1,"163":1,"164":3,"168":1,"171":1,"172":1,"175":1,"177":8,"179":30,"181":5}}],["whereas",{"2":{"7":1,"106":1}}],["where",{"2":{"0":1,"7":1,"10":1,"12":1,"42":1,"49":1,"52":4,"58":1,"64":3,"66":1,"67":1,"73":1,"74":1,"78":1,"86":1,"90":1,"93":1,"103":1,"104":1,"106":1,"122":1,"123":1,"151":2,"158":1,"177":7,"179":26,"181":22}}],["b64",{"2":{"179":4}}],["b",{"2":{"165":2,"173":2,"177":1,"181":3}}],["b>",{"2":{"67":2,"179":12,"181":2}}],["br",{"2":{"181":1}}],["broader",{"2":{"179":2}}],["browser",{"2":{"83":1}}],["br>",{"2":{"67":1,"179":6,"181":1}}],["brand",{"2":{"106":4}}],["branching",{"2":{"52":1,"177":1}}],["branch",{"2":{"52":1,"177":1}}],["branches",{"2":{"52":4,"67":1,"177":4,"179":1}}],["brackets",{"2":{"58":1,"64":2,"151":1,"181":3}}],["breath",{"2":{"129":1,"172":1}}],["breaks",{"2":{"67":1,"179":1,"181":1}}],["break",{"2":{"58":1,"129":1,"130":1}}],["bread",{"2":{"31":2,"106":2}}],["bright",{"2":{"179":2}}],["bring",{"2":{"94":1}}],["brings",{"2":{"12":1}}],["briefly",{"2":{"151":1}}],["brief",{"2":{"24":3,"66":1,"102":1,"103":1,"105":2,"108":1,"115":1,"116":1,"122":1,"128":1,"150":3,"155":1,"156":1,"157":1,"158":7,"159":1,"161":1,"162":1,"163":1,"164":1,"165":1,"168":1,"169":1,"171":1,"172":1,"173":1}}],["bge",{"2":{"30":1}}],["binx",{"2":{"181":4}}],["bin",{"2":{"181":4}}],["binint",{"2":{"181":4}}],["binary",{"2":{"181":18}}],["binarycosinesimilarity",{"2":{"179":1,"181":5}}],["binarybatchembedder",{"2":{"179":1,"181":5}}],["biology",{"2":{"156":1}}],["billing",{"2":{"75":2,"76":1,"93":1}}],["bigger",{"2":{"106":1}}],["big",{"2":{"58":1,"62":1,"64":1,"67":1,"179":1,"181":1}}],["bitmatrix",{"2":{"181":3}}],["bits",{"2":{"179":1,"181":13}}],["bitpackedcosinesimilarity",{"2":{"179":1,"181":5}}],["bitpackedbatchembedder",{"2":{"179":1,"181":5}}],["bit",{"2":{"28":1,"39":1,"63":1,"106":1,"156":1,"181":4}}],["biases",{"2":{"179":1}}],["bias",{"2":{"10":1,"18":1,"104":1,"179":12}}],["blank",{"2":{"147":1}}],["blanksystemuser",{"0":{"147":1},"2":{"90":2,"91":1,"177":1,"179":3}}],["black",{"2":{"21":1,"51":1,"52":1,"67":1,"106":1,"177":1,"179":6,"181":1}}],["blogtitleimagegenerator",{"0":{"175":1}}],["blog",{"2":{"138":1,"162":4,"175":4}}],["blob",{"2":{"67":1,"179":11,"181":1}}],["block",{"2":{"52":15,"64":3,"128":1,"158":1,"177":3,"179":27,"181":7}}],["blocks",{"2":{"52":6,"64":2,"165":2,"173":2,"177":3,"179":25,"181":2}}],["blocking",{"2":{"11":1,"96":1}}],["blue",{"2":{"21":1,"51":1,"52":3,"58":1,"177":3,"179":2,"181":3}}],["bang",{"2":{"95":1}}],["bandit",{"2":{"52":1,"177":2}}],["barplot",{"2":{"64":1,"181":1}}],["bad",{"2":{"52":1,"67":1,"177":1,"179":1}}],["bakllava",{"2":{"42":1,"43":1,"179":3}}],["balance",{"2":{"35":1,"41":2,"75":2}}],["baai",{"2":{"30":1}}],["backpropagate",{"2":{"177":5,"179":1}}],["backticks",{"2":{"128":1,"129":1,"152":1,"179":1}}],["back",{"2":{"52":4,"85":1,"86":1,"105":1,"177":5,"179":5}}],["backspace",{"2":{"24":1}}],["background",{"2":{"11":1,"22":1,"83":1}}],["batched",{"2":{"181":3}}],["batchembedder",{"2":{"64":1,"179":1,"181":11}}],["batch",{"2":{"14":1,"64":3,"181":21}}],["bash",{"2":{"28":1,"168":1}}],["basename",{"2":{"87":1,"179":1}}],["base",{"2":{"23":2,"26":1,"27":1,"52":1,"56":1,"151":1,"179":11,"181":1}}],["base64decode",{"2":{"179":1}}],["base64",{"2":{"10":1,"102":1,"104":1,"179":2}}],["based",{"2":{"7":2,"52":3,"58":2,"60":1,"63":6,"64":8,"108":2,"110":4,"115":1,"116":1,"118":1,"119":1,"120":1,"124":1,"128":2,"129":2,"130":1,"135":1,"136":1,"139":1,"156":2,"166":1,"167":1,"175":1,"177":10,"179":17,"181":27}}],["basic",{"0":{"107":1},"1":{"108":1},"2":{"10":1,"55":3,"98":1,"102":1,"104":1,"178":3}}],["bold",{"2":{"181":4}}],["body",{"2":{"158":2,"179":15}}],["bodies",{"2":{"67":1,"179":1}}],["border",{"2":{"67":4,"179":24,"181":4}}],["boundary",{"2":{"181":1}}],["boundaries",{"2":{"179":1,"181":3}}],["bound",{"2":{"52":7,"177":9}}],["bounds",{"2":{"52":1,"118":1,"177":1}}],["bool=isnothing",{"2":{"179":1}}],["bool=true",{"2":{"52":4,"64":1,"177":1,"179":5,"181":1}}],["bool=false",{"2":{"52":12,"177":6,"179":31,"181":1}}],["boolean",{"2":{"52":2,"86":1,"177":4,"179":18,"181":13}}],["bool",{"2":{"10":2,"21":1,"51":1,"52":14,"55":3,"64":15,"86":3,"104":2,"106":2,"177":16,"178":3,"179":76,"181":63}}],["both",{"2":{"7":4,"21":2,"41":1,"51":2,"52":2,"64":1,"129":1,"177":2,"179":2,"181":9}}],["bm25similarity",{"2":{"64":1,"179":1,"181":6}}],["bm25",{"2":{"8":1,"64":2,"181":15}}],["buffer",{"2":{"179":1}}],["business",{"2":{"158":1}}],["bullets",{"2":{"181":1}}],["bullet",{"2":{"128":5,"150":7,"151":5,"158":3}}],["bundle",{"2":{"89":1}}],["buy",{"2":{"77":1,"93":1}}],["bug",{"2":{"73":2}}],["but",{"2":{"5":1,"6":2,"7":2,"10":3,"11":2,"12":2,"13":1,"18":1,"19":2,"23":1,"24":2,"28":2,"29":1,"30":1,"31":1,"41":2,"55":1,"58":1,"64":2,"67":3,"73":1,"74":1,"78":1,"85":1,"90":1,"96":1,"97":1,"102":1,"104":3,"106":2,"140":1,"151":1,"171":1,"177":1,"178":1,"179":23,"181":11}}],["built",{"2":{"4":1,"57":1,"60":1,"112":1,"177":1,"179":1,"181":1}}],["builds",{"2":{"64":1,"179":7,"181":4}}],["build",{"2":{"1":1,"2":6,"4":1,"8":2,"10":2,"12":1,"49":1,"56":1,"57":4,"58":4,"60":3,"61":3,"63":4,"64":12,"106":1,"179":19,"181":40}}],["building",{"0":{"1":1},"1":{"2":1},"2":{"21":1,"48":1,"52":1,"56":1,"57":1,"58":1,"64":2,"161":1,"177":2,"180":1,"181":6}}],["berlin",{"2":{"181":1}}],["bearer",{"2":{"179":3}}],["belong",{"2":{"151":1,"152":1,"179":1}}],["below",{"2":{"0":1,"22":1,"52":2,"69":1,"73":1,"74":1,"82":1,"106":1,"113":1,"115":1,"123":1,"158":1,"164":1,"172":1,"177":2,"179":6,"181":1}}],["believe",{"2":{"128":1,"129":1,"130":1}}],["beneath",{"2":{"67":2,"179":2}}],["benefits",{"2":{"106":1}}],["benefit",{"2":{"52":1,"177":1}}],["behave",{"2":{"102":1}}],["behavior",{"2":{"49":1,"60":2,"67":2,"91":1,"106":1,"179":2}}],["behavioural",{"2":{"152":1,"156":1}}],["behaviours",{"2":{"52":1,"177":1}}],["behaviour",{"2":{"21":1,"51":1,"52":1,"106":1,"177":1}}],["behind",{"2":{"67":1,"169":1,"179":1}}],["begin",{"2":{"128":1,"138":1,"165":3,"173":3,"179":1}}],["beginning",{"2":{"85":1,"118":1,"179":3}}],["beginners",{"2":{"58":1}}],["begins",{"2":{"63":1,"169":1}}],["before",{"2":{"52":3,"66":1,"67":1,"74":1,"78":1,"85":1,"93":2,"128":1,"142":2,"150":1,"151":1,"179":11,"181":1}}],["besides",{"2":{"179":2}}],["bespoke",{"2":{"52":1,"179":2}}],["best",{"2":{"5":1,"21":1,"23":2,"26":2,"30":1,"31":1,"34":1,"49":1,"51":1,"52":3,"58":7,"64":1,"87":2,"134":2,"136":2,"140":1,"152":1,"153":1,"154":1,"158":1,"177":12,"179":5,"181":7}}],["been",{"2":{"23":1,"26":1,"42":1,"52":3,"90":1,"103":1,"129":1,"139":1,"140":1,"177":4,"179":5}}],["becoming",{"2":{"12":1}}],["become",{"2":{"12":3,"24":1,"35":1,"41":2,"179":7}}],["because",{"2":{"7":1,"11":1,"21":1,"23":1,"26":1,"28":2,"36":1,"51":1,"52":1,"64":1,"104":1,"106":3,"177":3,"179":5,"181":2}}],["beta",{"2":{"177":3,"179":3}}],["betwee",{"2":{"52":1,"177":1}}],["between",{"2":{"6":1,"7":2,"10":1,"16":2,"21":1,"51":1,"52":5,"58":2,"66":4,"67":5,"98":1,"102":1,"119":1,"138":2,"139":2,"156":1,"177":6,"179":15,"181":11}}],["better",{"2":{"8":1,"49":1,"55":1,"64":1,"67":2,"78":1,"106":3,"115":3,"116":3,"138":1,"140":2,"178":1,"179":4,"181":5}}],["be",{"0":{"73":2},"2":{"1":1,"2":1,"7":2,"10":5,"12":1,"15":4,"16":1,"17":1,"18":1,"21":3,"22":1,"23":1,"24":1,"26":1,"28":1,"35":1,"41":1,"49":2,"51":3,"52":22,"55":1,"56":1,"57":1,"58":3,"60":2,"62":3,"63":1,"64":39,"66":1,"67":7,"69":1,"74":1,"75":1,"76":1,"81":1,"83":1,"84":1,"86":2,"87":3,"88":1,"90":2,"91":2,"94":1,"95":2,"97":1,"98":1,"99":1,"100":1,"101":1,"104":4,"106":2,"108":1,"110":3,"113":1,"115":1,"116":1,"118":1,"119":1,"122":1,"123":1,"124":1,"128":6,"129":4,"134":1,"136":2,"138":3,"139":1,"140":1,"148":1,"150":5,"151":4,"152":8,"156":1,"158":2,"162":1,"165":4,"166":2,"167":2,"169":3,"173":4,"175":3,"177":32,"178":1,"179":183,"180":2,"181":90}}],["being",{"2":{"0":1,"5":1,"7":1,"41":1,"52":1,"150":1,"177":1,"179":7}}],["by",{"2":{"0":3,"6":2,"10":2,"13":1,"21":2,"23":1,"24":6,"27":1,"49":3,"52":5,"56":1,"57":2,"58":4,"60":2,"62":1,"64":6,"66":1,"67":5,"71":1,"72":1,"73":1,"88":2,"90":2,"91":1,"104":1,"105":2,"106":2,"110":2,"112":1,"118":1,"119":1,"122":1,"123":1,"126":1,"128":4,"129":3,"130":1,"138":5,"140":2,"142":1,"150":1,"151":1,"153":1,"154":2,"160":1,"162":1,"164":1,"169":1,"172":1,"177":12,"179":60,"181":41}}],["europe",{"2":{"181":4}}],["eyes",{"2":{"179":1}}],["educator",{"2":{"162":1}}],["educational",{"2":{"105":1,"162":1}}],["editor",{"2":{"138":4}}],["editing",{"2":{"11":1}}],["et",{"2":{"181":3}}],["ethos",{"2":{"82":1}}],["ethereal",{"2":{"67":1,"179":1}}],["etc",{"2":{"0":1,"2":1,"15":1,"21":1,"24":1,"51":1,"52":2,"64":1,"69":1,"90":1,"102":1,"104":1,"112":2,"115":1,"157":1,"176":1,"177":2,"179":12,"181":13}}],["echoes",{"2":{"179":5}}],["echoing",{"2":{"67":1,"179":1}}],["ecosystem",{"2":{"122":1}}],["econometrics",{"2":{"58":1}}],["e2e",{"2":{"61":1}}],["equality",{"2":{"86":1}}],["equal",{"2":{"52":1,"55":1,"64":1,"67":2,"177":1,"178":1,"179":2,"181":3}}],["equivalent",{"2":{"2":2,"13":1,"58":1,"104":1,"179":1}}],["essence",{"2":{"151":1}}],["essential",{"2":{"119":1,"177":2}}],["estimated",{"2":{"96":1}}],["estimate",{"2":{"36":1,"179":3}}],["especially",{"2":{"22":1,"52":1,"66":1,"83":1,"84":1,"105":1,"152":1,"177":2}}],["elapsed",{"2":{"179":22,"181":1}}],["elaboration",{"2":{"118":1}}],["elicit",{"2":{"148":1}}],["else`",{"2":{"166":1,"167":1}}],["elseif",{"2":{"166":1,"167":1}}],["else",{"2":{"18":2,"41":1,"52":2,"86":2,"115":2,"116":2,"156":1,"177":2,"179":5}}],["elementwise",{"2":{"181":1}}],["element",{"2":{"13":2,"16":1,"19":1,"22":1,"24":3,"47":1,"85":1,"87":2,"90":3,"105":2,"179":13,"181":1}}],["evolving",{"2":{"177":1}}],["evolved",{"2":{"151":1}}],["ever",{"2":{"179":2}}],["everyone",{"2":{"162":1}}],["every",{"2":{"60":1,"74":1,"77":1,"78":1,"84":1,"101":1,"176":1,"177":1,"181":1}}],["everything",{"2":{"18":2,"86":1,"91":1,"179":7}}],["eventmessage",{"2":{"179":1}}],["event",{"2":{"179":2}}],["even",{"2":{"19":2,"29":1,"30":1,"51":1,"52":2,"55":1,"62":1,"67":1,"150":1,"177":1,"178":1,"179":5,"181":1}}],["eval=false",{"2":{"52":2,"179":2}}],["evalutes",{"2":{"177":1}}],["evaluted",{"2":{"52":1,"177":1}}],["evaluator",{"2":{"132":2,"177":3}}],["evaluating",{"2":{"17":1,"52":2,"118":1,"135":1,"138":1,"179":2,"181":1}}],["evaluation",{"0":{"117":1},"1":{"118":1,"119":1,"120":1},"2":{"4":1,"6":2,"8":1,"10":1,"49":2,"52":10,"57":1,"104":1,"119":1,"120":1,"177":10,"179":10,"181":9}}],["evaluations",{"0":{"3":1},"1":{"4":1,"5":1,"6":1,"7":1},"2":{"52":3,"64":2,"177":5,"181":4}}],["evaluated",{"2":{"52":8,"128":1,"129":1,"177":3,"179":9}}],["evaluates",{"2":{"21":1,"51":1,"52":3,"177":2,"179":3,"181":2}}],["evaluate",{"0":{"6":1,"7":1},"2":{"3":1,"6":2,"7":2,"21":1,"51":1,"52":11,"119":2,"139":1,"140":1,"177":22,"179":4}}],["eval",{"2":{"7":2,"24":1,"52":9,"179":13,"181":1}}],["evals",{"2":{"4":6,"5":1,"6":3,"7":7,"57":1,"64":4,"179":3,"181":18}}],["effectiveness",{"2":{"138":1,"140":1}}],["effective",{"2":{"123":1,"125":1,"148":1}}],["effectively",{"2":{"12":1,"62":2,"66":1,"101":1,"105":2,"177":1,"179":7}}],["efficiently",{"2":{"58":1,"140":1,"177":1}}],["efficient",{"2":{"52":2,"58":1,"65":1,"158":2,"177":2,"181":4}}],["effort",{"2":{"13":1,"56":1}}],["emails",{"2":{"158":3}}],["email",{"2":{"158":10}}],["emphasize",{"2":{"138":1,"166":1,"167":1}}],["empty",{"0":{"73":2},"2":{"52":2,"55":2,"64":2,"67":6,"177":1,"178":2,"179":40,"181":4}}],["emotions",{"2":{"67":2,"179":2}}],["emotional",{"2":{"12":1}}],["emb",{"2":{"58":1,"181":21}}],["embedder",{"2":{"64":17,"181":29}}],["embedded",{"2":{"46":1,"64":1,"181":6}}],["embedding",{"0":{"45":1,"46":1},"2":{"2":1,"8":2,"16":1,"30":1,"31":1,"46":2,"63":1,"64":8,"179":9,"181":54}}],["embeddings",{"0":{"16":1,"44":1},"1":{"45":1,"46":1,"47":1},"2":{"2":1,"10":2,"16":3,"47":1,"61":2,"63":4,"64":8,"102":1,"104":2,"179":20,"181":62}}],["embeds",{"2":{"2":1,"64":1,"181":4}}],["embed",{"2":{"2":3,"16":3,"22":3,"23":1,"26":1,"30":1,"31":2,"45":2,"46":4,"47":1,"179":4}}],["either",{"2":{"10":1,"19":1,"23":1,"26":1,"42":1,"55":1,"60":1,"74":1,"86":1,"104":1,"177":1,"178":1,"179":7}}],["e",{"2":{"10":1,"19":1,"52":4,"104":1,"106":2,"110":1,"134":1,"136":1,"139":1,"177":2,"179":13,"181":1}}],["error=true",{"2":{"179":3}}],["errorexception",{"2":{"52":1,"177":1}}],["errors",{"2":{"19":1,"21":1,"22":1,"49":1,"51":1,"52":7,"64":1,"75":1,"106":1,"128":2,"130":1,"140":3,"177":10,"179":3,"181":5}}],["error",{"0":{"73":2,"74":1,"75":1},"2":{"7":2,"49":2,"52":13,"73":2,"74":3,"75":4,"86":1,"106":4,"128":2,"129":1,"177":14,"179":32}}],["earlier",{"2":{"73":1}}],["eating",{"2":{"31":1,"106":1}}],["easiest",{"2":{"82":1,"95":1}}],["easier",{"2":{"0":1,"7":1,"29":1,"64":1,"65":1,"67":1,"104":1,"150":1,"179":1,"181":2}}],["easily",{"2":{"15":1,"57":1,"64":1,"86":1,"89":1,"95":1,"179":2,"181":2}}],["easy",{"2":{"6":1,"47":1,"78":1,"81":1,"83":1,"90":1,"93":1,"106":1,"147":1,"151":1,"162":1,"179":5}}],["each",{"2":{"2":2,"4":1,"7":4,"10":2,"12":1,"15":1,"21":2,"51":2,"52":3,"58":1,"60":2,"62":1,"63":2,"64":21,"67":12,"77":1,"104":1,"110":1,"112":1,"113":1,"119":1,"124":1,"128":1,"139":1,"140":1,"150":3,"151":6,"152":4,"158":1,"162":1,"165":2,"169":2,"173":2,"177":6,"179":31,"181":59}}],["exit",{"2":{"24":1}}],["existing",{"2":{"24":1,"60":1,"64":2,"91":1,"115":1,"116":1,"179":3,"181":3}}],["existent",{"2":{"21":1,"51":1,"52":1,"177":1}}],["exists",{"2":{"7":2,"181":1}}],["exist",{"2":{"6":1,"7":6,"90":4}}],["exclamation",{"2":{"181":1}}],["exclude",{"2":{"55":2,"151":1,"178":2,"179":1,"181":3}}],["exciting",{"2":{"23":1,"27":1}}],["exceed",{"2":{"74":1,"179":2}}],["exceeds",{"2":{"67":1,"179":1}}],["exceeding",{"2":{"64":1,"67":1,"179":1,"181":7}}],["exceeded",{"0":{"74":1},"2":{"21":1,"51":1,"74":2,"75":1}}],["excessive",{"2":{"58":1}}],["exception",{"2":{"52":4,"60":1,"106":1,"177":2,"179":3}}],["except",{"2":{"21":1,"177":1,"179":1}}],["external",{"2":{"118":1,"179":1}}],["extension",{"2":{"179":2,"181":1}}],["extensions",{"2":{"49":1,"56":1}}],["extensively",{"2":{"160":1,"162":1}}],["extensive",{"2":{"159":1,"166":1}}],["extensible",{"2":{"52":1,"57":1,"60":1,"177":1}}],["extended",{"2":{"52":1,"177":1,"179":1}}],["extend",{"2":{"15":1,"23":1,"56":1}}],["extremely",{"2":{"75":1,"119":2,"129":1,"138":1,"160":1,"162":1}}],["extras",{"2":{"64":3,"179":2,"181":8}}],["extra",{"2":{"28":1,"64":1,"67":2,"86":1,"90":1,"95":1,"151":1,"179":1,"181":1}}],["extractdata",{"0":{"145":1}}],["extractdataxml",{"0":{"143":1}}],["extractdatacotxml",{"0":{"142":1},"2":{"179":1}}],["extracted",{"2":{"112":3,"179":21}}],["extractor",{"2":{"106":1,"179":2}}],["extraction",{"0":{"19":1,"144":1},"1":{"145":1},"2":{"31":1,"64":4,"106":1,"112":2,"142":2,"143":2,"145":2,"179":16,"181":6}}],["extracting",{"2":{"2":1,"19":3,"64":1,"179":2,"181":1}}],["extracts",{"2":{"2":1,"49":1,"52":1,"63":2,"64":2,"112":1,"113":1,"177":1,"179":4,"181":7}}],["extract",{"2":{"2":2,"8":1,"10":2,"19":3,"31":2,"52":5,"91":2,"104":2,"105":1,"106":10,"112":4,"142":1,"143":1,"145":1,"177":5,"179":69,"181":9}}],["executing",{"2":{"181":2}}],["execution",{"0":{"14":1},"2":{"10":1,"49":2,"52":11,"104":1,"129":1,"130":1,"177":6,"179":13}}],["executor",{"2":{"52":1,"179":1}}],["execute",{"2":{"52":3,"177":1,"179":2}}],["executed",{"2":{"49":1,"52":4,"129":1,"177":2,"179":5}}],["executes",{"2":{"10":1,"49":2,"52":2,"104":1,"177":4,"179":2}}],["examine",{"2":{"140":1}}],["example>",{"2":{"173":2}}],["examples",{"0":{"9":1,"50":1,"58":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"51":1},"2":{"2":5,"4":2,"5":1,"6":1,"13":2,"21":1,"24":1,"32":1,"37":1,"52":2,"58":2,"64":9,"67":3,"70":1,"89":1,"90":1,"96":2,"112":1,"152":2,"159":1,"161":1,"164":1,"168":1,"172":1,"177":1,"179":23,"181":20}}],["example",{"0":{"105":1,"106":1},"2":{"0":1,"1":1,"2":1,"5":1,"7":1,"10":1,"13":1,"15":1,"17":1,"18":1,"21":1,"24":3,"31":1,"37":1,"42":1,"49":1,"52":6,"55":1,"58":1,"62":1,"64":5,"67":3,"77":2,"86":3,"88":1,"89":1,"90":2,"91":1,"97":1,"100":1,"103":1,"104":2,"106":4,"112":1,"118":1,"152":4,"156":1,"165":1,"177":10,"178":1,"179":50,"181":21}}],["exact",{"2":{"64":2,"179":5,"181":10}}],["exactly",{"2":{"10":2,"21":1,"24":1,"49":1,"52":1,"64":1,"104":2,"177":5,"179":1,"181":2}}],["expr",{"2":{"179":4}}],["expression",{"2":{"52":6,"138":1,"179":8}}],["export",{"2":{"78":1,"93":1}}],["exported",{"2":{"24":1,"37":1,"52":1,"177":1}}],["expanded",{"2":{"179":2}}],["expanding",{"2":{"124":1}}],["expand",{"2":{"90":1,"105":1,"124":1,"177":8,"179":1}}],["expands",{"2":{"17":1,"90":1,"177":2}}],["expanse",{"2":{"67":1,"179":1}}],["expected",{"2":{"179":2}}],["expectations",{"2":{"140":1}}],["expects",{"2":{"134":1,"136":1,"165":1,"173":1,"179":1}}],["expertise",{"2":{"159":1}}],["expert",{"2":{"123":1,"125":1,"140":4,"142":1,"143":1,"145":1,"158":1,"159":2,"162":1,"165":1,"168":1,"173":1,"179":1}}],["experiencing",{"2":{"73":1}}],["experience",{"2":{"12":1}}],["experiences",{"2":{"12":1}}],["experiment",{"2":{"52":1,"89":1,"177":1,"179":1}}],["experimental",{"0":{"21":1,"180":1},"2":{"1":3,"10":4,"21":2,"48":3,"52":6,"53":2,"55":1,"56":3,"60":1,"63":1,"64":6,"66":1,"86":1,"104":2,"177":70,"178":4,"179":177,"180":5,"181":281}}],["expensive",{"2":{"3":1,"52":3,"177":6}}],["exploits",{"2":{"179":2}}],["exploitation",{"2":{"177":1}}],["exploration",{"2":{"177":1}}],["explorer",{"2":{"73":1}}],["explore",{"0":{"5":1},"2":{"5":1,"8":1,"41":1,"52":2,"58":1,"86":1,"177":2,"179":1}}],["explanatory",{"2":{"179":1}}],["explanations",{"2":{"0":1,"19":1,"139":1,"140":1}}],["explaining",{"2":{"165":1,"173":1}}],["explain",{"2":{"110":1,"128":1,"129":1,"142":1,"169":1,"181":1}}],["explains",{"2":{"97":1,"169":1}}],["explicit",{"2":{"64":2,"142":1,"143":1,"145":1,"179":8,"181":2}}],["explicitly",{"2":{"2":1,"13":1,"21":1,"23":1,"26":1,"42":1,"52":3,"84":1,"87":1,"122":1,"158":2,"166":1,"167":1,"177":3,"179":5,"180":1}}],["enforces",{"2":{"179":2}}],["enforce",{"2":{"179":9}}],["encapsulates",{"2":{"177":1}}],["encapsulated",{"2":{"177":1}}],["encouraging",{"2":{"158":1}}],["encode",{"2":{"106":2,"179":7}}],["encoded",{"2":{"10":1,"102":1,"104":1,"179":3}}],["enclosed",{"2":{"129":1}}],["enclose",{"2":{"128":1}}],["enhance",{"2":{"125":1,"138":2,"148":1,"181":2}}],["enhancing",{"2":{"53":1,"138":1,"151":1,"179":1}}],["enigmatic",{"2":{"67":2,"179":2}}],["enough",{"2":{"67":2,"179":2}}],["ensuring",{"2":{"67":1,"148":1,"176":1,"179":1}}],["ensure",{"2":{"0":1,"52":2,"86":3,"106":1,"125":2,"128":2,"140":2,"142":1,"143":1,"145":1,"150":1,"151":1,"158":1,"177":2,"179":4,"181":4}}],["ensures",{"2":{"0":1,"67":1,"179":1}}],["enabling",{"2":{"63":1,"177":1,"179":1}}],["enable",{"2":{"91":1,"106":1,"179":1,"181":1}}],["enables",{"2":{"10":1,"49":1,"64":2,"104":1,"181":8}}],["enabled",{"2":{"10":1,"64":1,"104":1,"181":2}}],["enjoy",{"2":{"41":1}}],["en",{"2":{"30":1,"177":2}}],["engaging",{"2":{"169":1}}],["engagement",{"2":{"138":3}}],["engage",{"2":{"30":1}}],["english",{"2":{"64":1,"181":5}}],["engineer",{"2":{"148":1}}],["engineering",{"2":{"17":1,"148":1}}],["engine",{"2":{"54":1,"106":1,"112":2,"124":1,"176":1}}],["enumerates",{"2":{"181":4}}],["enumerated",{"2":{"179":2}}],["enumerate",{"2":{"64":1,"181":1}}],["enum",{"2":{"19":1,"86":2}}],["entire",{"2":{"179":13}}],["entity",{"2":{"124":1}}],["entities",{"2":{"12":1,"19":1,"67":1,"112":1,"124":1,"179":3}}],["entry",{"2":{"60":1,"64":1,"147":1,"179":1,"181":1}}],["entries",{"2":{"6":1,"106":2,"179":2}}],["enter",{"2":{"24":2}}],["end=25",{"2":{"181":1}}],["ended",{"2":{"179":1,"181":1}}],["end|>",{"2":{"179":2}}],["end>",{"2":{"179":1}}],["ending",{"2":{"179":1}}],["end`",{"2":{"128":1,"165":2,"166":1,"167":1,"173":2}}],["end",{"2":{"7":1,"19":3,"21":1,"31":1,"34":1,"46":1,"51":1,"52":11,"58":2,"60":1,"64":4,"67":1,"74":1,"86":6,"89":2,"106":5,"165":1,"173":1,"177":15,"179":23,"181":12}}],["endpoints",{"2":{"0":1,"179":1}}],["endpoint",{"2":{"0":2,"64":2,"136":5,"178":1,"179":9,"181":6}}],["environments",{"2":{"52":1,"177":1}}],["environment",{"0":{"78":1},"2":{"32":1,"54":1,"58":1,"73":1,"78":2,"91":1,"93":2,"179":8}}],["env",{"2":{"0":1,"23":1,"26":1,"29":2,"30":1,"31":1,"73":3,"78":1,"93":2,"179":7,"181":1}}],["eg",{"2":{"0":1,"2":1,"6":1,"7":2,"8":1,"10":9,"12":2,"13":1,"15":2,"21":6,"23":2,"24":1,"25":1,"27":2,"28":1,"37":1,"42":1,"51":5,"52":10,"57":1,"58":3,"60":6,"61":1,"62":1,"63":3,"64":15,"66":4,"67":3,"69":3,"74":3,"75":1,"77":2,"78":2,"83":1,"84":2,"86":2,"87":1,"95":2,"96":1,"98":3,"99":3,"100":1,"101":1,"102":3,"103":2,"104":10,"106":3,"112":1,"158":2,"165":1,"173":1,"177":15,"179":57,"180":2,"181":40}}],["hd",{"2":{"179":3}}],["hh",{"2":{"150":2,"151":3}}],["huggingface",{"2":{"181":6}}],["hundred",{"2":{"179":2}}],["hundredth",{"2":{"77":1}}],["hundreds",{"2":{"75":2}}],["humans",{"2":{"179":1}}],["human",{"2":{"17":1,"150":1,"151":1,"179":4}}],["href=",{"2":{"67":1,"179":6,"181":1}}],["htmlstyler",{"2":{"179":1,"181":13}}],["html",{"2":{"58":2,"179":1,"181":15}}],["https",{"2":{"20":1,"37":1,"67":2,"75":1,"106":2,"110":1,"177":2,"178":1,"179":16,"181":7}}],["http",{"2":{"10":2,"23":1,"28":1,"62":3,"64":2,"74":1,"104":2,"178":1,"179":53,"181":5}}],["hcat",{"2":{"46":1,"179":3,"181":4}}],["hit",{"2":{"179":3,"181":2}}],["his",{"2":{"87":2,"179":2}}],["history",{"2":{"52":1,"86":1,"101":1,"177":5,"179":89,"181":1}}],["hint",{"2":{"52":2,"177":2}}],["hints",{"2":{"52":1,"177":1}}],["hi",{"2":{"21":2,"22":1,"23":3,"26":2,"27":1,"28":1,"29":3,"30":1,"31":1,"34":3,"37":1,"39":1,"40":1,"42":2,"51":2,"52":2,"85":3,"87":3,"90":6,"91":3,"96":1,"158":1,"177":12,"179":24}}],["highly",{"2":{"119":2,"125":1,"136":1}}],["highlevel",{"2":{"52":2,"177":2}}],["highlighted",{"2":{"179":1}}],["highlights",{"0":{"49":1,"54":1,"57":1,"66":1}}],["highlighting",{"2":{"20":1,"58":1,"139":1,"140":1,"179":2,"181":1}}],["highlight",{"2":{"10":1,"57":1,"64":1,"128":1,"139":1,"150":1,"181":1}}],["higher",{"2":{"17":1,"52":1,"60":1,"64":2,"67":1,"177":3,"179":8,"181":5}}],["highest",{"2":{"7":1,"58":1,"181":1}}],["high",{"2":{"3":1,"24":3,"58":2,"60":2,"64":2,"103":1,"105":2,"155":1,"159":1,"161":1,"163":1,"168":1,"171":1,"179":5,"181":6}}],["hmm",{"2":{"12":1,"41":1,"179":1}}],["hyderephraser",{"2":{"179":1,"181":3}}],["hyde",{"2":{"63":1,"122":1,"123":1,"181":3}}],["hypothetical",{"2":{"8":1,"122":3,"123":2,"181":2}}],["hybrid",{"2":{"8":1,"63":1,"64":2,"181":4}}],["her",{"2":{"112":1}}],["here>",{"2":{"165":1,"173":1}}],["here",{"2":{"23":1,"24":1,"26":1,"29":1,"30":1,"31":2,"32":1,"34":1,"41":1,"42":1,"52":1,"60":1,"67":1,"83":1,"105":1,"177":1,"179":23}}],["hence",{"2":{"98":1,"179":3}}],["heals",{"2":{"181":1}}],["healing",{"2":{"86":1,"104":1}}],["heavily",{"2":{"112":1}}],["heavy",{"2":{"106":1}}],["heavens",{"2":{"67":1,"179":1}}],["hear",{"2":{"67":2,"179":2}}],["hearty",{"2":{"87":2,"179":2}}],["heart",{"2":{"35":1}}],["header",{"2":{"179":3}}],["headers",{"2":{"2":1,"74":1,"179":7}}],["headings",{"2":{"162":1}}],["headlines",{"2":{"158":1}}],["head",{"2":{"41":1}}],["he",{"2":{"19":1,"179":6}}],["height",{"2":{"19":2,"179":14}}],["held",{"2":{"64":1,"181":1}}],["hello",{"2":{"12":1,"14":1,"22":1,"23":1,"26":1,"30":1,"31":1,"39":1,"40":1,"42":1,"52":3,"67":3,"85":1,"177":1,"179":30}}],["helping",{"2":{"181":1}}],["helpful",{"2":{"19":1,"23":1,"26":1,"34":1,"52":4,"53":1,"85":1,"90":1,"97":1,"119":3,"120":1,"128":1,"139":2,"155":1,"159":1,"161":1,"168":1,"177":2,"179":6}}],["helpfulness",{"2":{"6":1,"119":1}}],["helps",{"2":{"19":1,"179":1}}],["help",{"2":{"12":1,"19":1,"21":1,"23":3,"26":3,"30":1,"31":1,"34":1,"35":1,"39":1,"40":1,"41":2,"42":1,"51":1,"64":1,"81":1,"106":1,"150":1,"179":7,"181":1}}],["helper",{"2":{"10":1,"24":1,"37":1,"104":1,"179":2}}],["haiku",{"2":{"179":4}}],["hamming",{"2":{"179":1,"181":9}}],["happened",{"2":{"129":1}}],["happens",{"2":{"98":1,"150":1}}],["happening",{"2":{"58":1}}],["half",{"2":{"64":1,"89":1,"181":1}}],["hallucination",{"2":{"17":1}}],["hackable",{"2":{"60":1}}],["had",{"2":{"24":1,"179":1}}],["hash",{"2":{"179":2,"181":1}}],["hashed",{"2":{"64":5,"179":1,"181":9}}],["hasn",{"2":{"52":2,"177":2}}],["has",{"2":{"15":1,"21":1,"28":1,"42":1,"52":4,"62":1,"74":2,"86":1,"115":1,"116":1,"128":1,"129":1,"140":1,"150":1,"177":2,"179":19,"181":3}}],["harder",{"2":{"64":2,"181":2}}],["hard",{"2":{"13":1,"19":1,"41":1,"76":2,"95":1,"177":1}}],["handling",{"2":{"52":2,"86":1,"177":1,"179":2}}],["handles",{"2":{"86":1,"179":1,"181":1}}],["handlebars",{"2":{"96":1}}],["handlebar",{"2":{"12":1,"179":1}}],["handle",{"2":{"7":1,"58":1,"64":2,"86":2,"100":1,"106":1,"179":10,"181":5}}],["handcraft",{"2":{"3":1}}],["having",{"0":{"73":2},"2":{"0":1,"67":1,"103":1,"179":1}}],["have",{"0":{"85":1,"86":1,"88":1},"2":{"0":1,"5":1,"6":1,"7":6,"10":2,"11":1,"12":5,"13":1,"15":1,"19":1,"21":2,"22":1,"23":5,"24":3,"26":4,"27":1,"28":2,"30":1,"31":2,"34":1,"35":2,"36":1,"37":1,"41":4,"42":1,"49":2,"51":1,"52":1,"57":1,"58":1,"60":3,"64":4,"66":1,"74":2,"75":1,"77":1,"84":1,"86":1,"87":2,"90":2,"93":1,"94":2,"100":2,"101":1,"103":3,"104":3,"106":4,"112":1,"113":1,"115":1,"116":1,"118":1,"123":1,"139":1,"157":1,"160":1,"162":2,"166":1,"167":1,"175":1,"177":3,"179":28,"181":17}}],["horizontal",{"2":{"181":1}}],["holding",{"2":{"181":3}}],["hold",{"2":{"177":1}}],["holds",{"2":{"2":1,"64":1,"106":1,"181":3}}],["hope",{"2":{"56":1,"57":1,"86":1,"105":1,"115":1,"116":1}}],["honor",{"2":{"52":1,"177":1}}],["hosting",{"2":{"29":1,"83":1}}],["host",{"2":{"29":2,"179":6}}],["hosted",{"2":{"25":1,"64":4,"70":1,"98":1,"99":1,"106":2,"179":2,"181":4}}],["hood",{"2":{"2":1,"18":1,"23":1,"26":1,"28":1,"49":1,"58":1,"97":1,"105":2,"106":1,"179":2}}],["however",{"2":{"3":2,"15":1,"24":1,"75":1,"179":1,"181":1}}],["how",{"0":{"77":1,"85":1,"86":1,"87":1,"89":1,"90":1,"97":1},"1":{"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1},"2":{"0":2,"7":1,"8":1,"10":1,"11":1,"13":4,"21":1,"22":1,"23":2,"24":4,"26":2,"30":1,"32":1,"36":1,"37":1,"51":1,"52":4,"58":7,"60":1,"64":2,"67":2,"71":4,"74":1,"84":1,"85":2,"86":3,"97":2,"101":1,"102":1,"105":1,"106":3,"119":4,"120":1,"138":3,"140":2,"165":1,"173":1,"177":5,"179":30,"181":6}}],["omit",{"2":{"152":1}}],["observability",{"2":{"179":2}}],["observe",{"2":{"60":1}}],["obj",{"2":{"106":3}}],["objective",{"2":{"123":1,"125":1}}],["objects",{"2":{"87":1,"98":1,"147":1,"179":27,"181":2}}],["object>",{"2":{"86":1}}],["object",{"2":{"6":1,"12":4,"21":2,"35":1,"51":2,"52":10,"63":1,"64":6,"86":1,"91":1,"95":1,"98":1,"99":1,"105":1,"106":12,"177":15,"179":65,"181":10}}],["obtained",{"2":{"179":1}}],["obtain",{"2":{"52":1,"64":2,"105":1,"177":1,"181":2}}],["ocean",{"2":{"67":4,"179":4}}],["occur",{"2":{"151":1}}],["occurrences",{"2":{"67":1,"179":1}}],["occurred",{"2":{"52":2,"177":3}}],["occursin",{"2":{"177":2}}],["occurs",{"2":{"52":1,"179":1}}],["ocrtask",{"0":{"176":1},"2":{"20":2,"179":4}}],["ocr",{"0":{"20":1},"2":{"20":1,"176":1,"179":4}}],["overwrite",{"2":{"179":1,"181":1}}],["overwritten",{"2":{"52":1,"177":1}}],["overrules",{"2":{"179":2}}],["overriden",{"2":{"179":1}}],["overrides",{"2":{"179":4}}],["override",{"2":{"52":2,"84":1,"177":2}}],["overall",{"2":{"119":2,"138":1,"140":1,"179":1}}],["overarching",{"2":{"60":1}}],["overload",{"2":{"181":1}}],["overloaded",{"2":{"91":1}}],["overlaps",{"2":{"181":2}}],["overlapping",{"2":{"181":1}}],["overlap",{"2":{"64":1,"181":1}}],["overhead",{"2":{"28":1}}],["over",{"2":{"19":1,"112":1,"118":1,"150":1,"151":1,"154":1,"165":1,"166":1,"167":1,"173":1,"179":12,"180":1}}],["overview",{"0":{"10":1,"60":1,"104":1},"2":{"0":1,"75":1}}],["o",{"2":{"18":2,"86":4,"179":5}}],["olama",{"2":{"179":1}}],["oldest",{"2":{"179":1}}],["old",{"2":{"12":3}}],["ollamamanagedschema",{"2":{"22":1,"42":2,"179":12}}],["ollama",{"0":{"22":1,"37":1,"83":1},"1":{"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1},"2":{"0":2,"22":4,"28":1,"37":4,"42":1,"69":3,"70":1,"77":1,"82":1,"83":8,"84":2,"98":1,"99":1,"179":21}}],["ollamaschema",{"2":{"0":1,"37":1,"42":5,"47":1,"84":3,"179":3}}],["origin",{"2":{"179":1}}],["originated",{"2":{"179":3}}],["originally",{"2":{"179":2}}],["original",{"2":{"63":1,"67":4,"91":1,"115":6,"116":8,"119":1,"125":1,"126":1,"128":1,"176":1,"177":1,"179":9,"181":11}}],["oriented",{"2":{"157":2}}],["orientation",{"2":{"142":1,"143":1,"145":1}}],["organization",{"2":{"138":1,"179":2}}],["organize",{"2":{"128":1,"150":2,"151":1}}],["org",{"2":{"67":1,"177":2,"179":1}}],["ordered",{"2":{"67":1,"179":1}}],["ordering",{"2":{"63":1,"177":4}}],["orders",{"2":{"20":1,"179":2}}],["order",{"2":{"6":1,"64":1,"67":1,"71":1,"110":1,"179":1,"181":3}}],["or",{"0":{"84":1},"2":{"5":3,"6":3,"7":6,"8":1,"10":8,"11":3,"13":1,"17":2,"18":4,"19":1,"20":1,"21":4,"23":3,"24":3,"26":3,"29":1,"30":1,"31":1,"34":1,"37":2,"39":1,"41":1,"42":2,"43":1,"46":1,"49":2,"51":3,"52":23,"55":1,"56":1,"57":1,"60":5,"61":3,"63":2,"64":20,"66":1,"67":8,"69":2,"71":1,"73":2,"83":1,"84":1,"86":3,"87":2,"91":1,"93":1,"95":1,"98":2,"99":2,"101":2,"102":2,"103":2,"104":8,"110":1,"112":1,"115":1,"116":1,"118":2,"124":3,"125":2,"128":4,"129":1,"135":1,"136":1,"138":2,"139":5,"140":6,"150":2,"151":4,"156":3,"158":3,"162":1,"165":2,"166":1,"167":1,"169":1,"173":2,"175":1,"177":24,"178":1,"179":164,"181":51}}],["our",{"2":{"3":1,"6":1,"7":2,"21":1,"37":1,"51":1,"52":3,"71":4,"74":2,"86":6,"89":1,"105":2,"106":3,"124":2,"169":1,"177":3,"179":6,"181":3}}],["outside",{"2":{"169":1}}],["outlined",{"2":{"142":1,"143":1,"145":1}}],["outline",{"2":{"128":1,"160":2,"162":2}}],["outcomes",{"2":{"52":1,"86":1,"177":2}}],["outcome",{"2":{"49":1,"138":6,"139":6,"140":6,"169":5,"177":3,"179":2}}],["outer",{"2":{"6":1,"7":4}}],["outerjoin",{"2":{"6":1}}],["output`",{"2":{"21":1,"51":1,"52":1,"177":1}}],["outputs",{"2":{"7":1,"20":1,"21":2,"24":1,"51":1,"52":3,"106":1,"179":22}}],["output",{"0":{"21":1},"2":{"6":2,"7":8,"10":3,"21":4,"31":1,"49":4,"51":9,"52":43,"58":2,"64":1,"67":4,"86":7,"87":2,"91":1,"102":3,"104":3,"105":1,"106":17,"110":1,"142":1,"143":1,"145":1,"148":1,"152":2,"156":1,"162":1,"177":32,"179":55,"181":11}}],["out",{"2":{"2":1,"10":1,"21":9,"51":5,"52":36,"56":1,"64":4,"71":1,"74":1,"89":1,"104":1,"105":1,"124":1,"126":1,"177":35,"179":11,"181":7}}],["own",{"2":{"2":1,"15":1,"52":1,"56":1,"64":3,"177":1,"179":6,"181":4}}],["otherwise",{"2":{"52":2,"74":1,"177":4,"179":20,"181":1}}],["others",{"2":{"35":1,"106":1,"150":1}}],["other",{"0":{"23":1,"27":1},"2":{"2":1,"23":2,"27":1,"32":1,"35":1,"36":1,"49":1,"52":4,"58":1,"64":3,"67":1,"69":1,"70":1,"73":1,"78":1,"84":1,"87":2,"91":1,"93":1,"99":1,"112":1,"136":1,"138":1,"151":2,"152":1,"164":1,"172":1,"177":4,"179":13,"181":5}}],["ops",{"2":{"181":1}}],["op",{"2":{"181":10}}],["opposite",{"2":{"181":1}}],["opposed",{"2":{"11":1}}],["opportunity",{"2":{"115":1,"116":1}}],["opt",{"2":{"71":1}}],["option",{"2":{"136":2,"179":2,"181":3}}],["options",{"2":{"52":1,"60":1,"64":1,"74":1,"84":1,"93":1,"177":1,"181":2}}],["options=",{"2":{"37":2}}],["optional",{"2":{"2":2,"10":3,"52":2,"58":1,"63":1,"64":1,"104":3,"177":2,"179":38,"181":2}}],["optionally",{"2":{"2":1,"64":1,"67":1,"87":1,"106":1,"179":4,"181":2}}],["optimized",{"2":{"125":2,"177":1}}],["optimizes",{"2":{"122":1}}],["optimize",{"2":{"21":1,"177":1}}],["operate",{"2":{"21":1,"51":1,"52":1,"64":1,"177":1,"181":1}}],["operations",{"2":{"14":1,"52":2,"64":2,"179":4,"181":2}}],["operation",{"2":{"7":7,"177":1,"179":1,"181":4}}],["opens",{"2":{"181":2}}],["opened",{"2":{"74":1}}],["opentagger",{"2":{"64":1,"179":1,"181":4}}],["opening",{"2":{"24":1}}],["openhermes2",{"2":{"22":3,"37":1,"40":1,"47":1,"83":2,"179":10}}],["open",{"0":{"82":1},"2":{"11":1,"23":1,"26":1,"52":1,"57":1,"58":1,"66":1,"73":1,"82":1,"83":1,"106":2,"177":1,"179":1,"181":1}}],["openaistream",{"2":{"179":3}}],["openaischema",{"2":{"0":2,"91":5,"99":1,"100":3,"105":3,"179":41}}],["openaiapi",{"0":{"73":1}}],["openai",{"0":{"23":1,"27":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"76":1},"1":{"70":1},"2":{"0":4,"10":1,"16":1,"21":1,"23":3,"25":1,"26":1,"27":2,"42":1,"51":1,"52":1,"69":1,"71":6,"72":4,"73":3,"74":2,"75":2,"76":3,"77":2,"78":6,"79":2,"80":1,"90":1,"93":9,"98":2,"99":3,"100":3,"104":1,"105":6,"106":1,"112":1,"177":1,"179":64,"181":1}}],["ongoing",{"2":{"179":1}}],["online",{"2":{"72":1,"93":1,"179":4}}],["only",{"2":{"2":1,"7":8,"8":1,"10":3,"12":1,"18":1,"21":6,"23":2,"24":5,"27":2,"32":1,"42":1,"49":2,"51":5,"52":15,"54":1,"58":1,"63":1,"64":2,"67":2,"74":1,"84":1,"87":1,"90":2,"103":1,"104":4,"105":3,"106":2,"108":1,"110":1,"112":1,"115":3,"116":3,"118":1,"125":1,"128":1,"134":1,"136":1,"150":3,"151":1,"152":1,"155":1,"158":1,"159":1,"161":1,"163":1,"168":1,"169":1,"171":1,"177":23,"179":71,"181":10}}],["once",{"2":{"6":1,"7":1,"56":1,"83":1,"89":1,"105":1,"160":1,"162":1,"179":7}}],["ones",{"2":{"23":1,"24":1,"27":1,"64":2,"70":1,"112":1,"179":1,"181":2}}],["one",{"0":{"5":1,"45":1},"2":{"5":1,"6":2,"10":1,"12":1,"13":1,"15":1,"21":1,"24":1,"25":1,"30":1,"31":1,"41":1,"42":1,"43":1,"45":1,"51":1,"52":4,"54":1,"58":1,"60":1,"62":1,"63":1,"64":1,"74":1,"77":2,"78":1,"86":2,"87":1,"103":1,"104":1,"129":1,"134":2,"136":2,"152":2,"158":1,"165":1,"173":1,"177":5,"179":32,"181":10}}],["on",{"2":{"0":1,"7":4,"10":1,"11":1,"13":3,"17":2,"19":1,"21":3,"22":1,"23":2,"24":2,"26":1,"30":1,"37":1,"42":1,"47":1,"51":3,"52":12,"57":1,"58":7,"60":1,"63":5,"64":8,"67":4,"71":1,"72":1,"73":2,"74":1,"75":2,"76":1,"78":2,"87":3,"93":1,"103":1,"104":1,"106":6,"108":2,"110":4,"112":1,"115":2,"116":2,"118":1,"119":3,"120":3,"124":1,"128":3,"129":2,"130":1,"136":1,"138":3,"139":3,"140":3,"151":2,"156":2,"158":2,"162":1,"166":1,"167":1,"169":2,"175":1,"177":23,"179":49,"181":18}}],["office",{"2":{"158":1}}],["offloaded",{"2":{"37":1}}],["offload",{"2":{"28":1}}],["off",{"2":{"15":1,"78":1,"179":1}}],["offering",{"2":{"71":1}}],["offers",{"2":{"21":1}}],["offer",{"2":{"13":1,"15":1,"138":1,"140":1}}],["often",{"2":{"5":1,"6":1,"7":2,"11":1,"29":1,"64":2,"179":19,"181":5}}],["of",{"0":{"0":1,"51":1},"2":{"0":5,"2":5,"3":3,"4":1,"5":4,"6":5,"7":28,"8":1,"10":7,"11":2,"12":3,"13":4,"14":1,"15":2,"16":1,"18":1,"19":4,"20":4,"21":5,"23":4,"24":15,"26":4,"28":1,"29":1,"30":1,"31":3,"32":1,"35":1,"36":2,"37":1,"41":1,"42":1,"45":2,"46":1,"47":1,"48":1,"49":8,"51":5,"52":34,"55":4,"56":3,"57":7,"58":13,"60":7,"63":4,"64":59,"65":2,"66":4,"67":29,"69":2,"71":2,"72":1,"73":2,"74":6,"75":3,"76":2,"77":4,"82":1,"86":5,"87":2,"89":5,"90":5,"91":2,"94":2,"95":7,"96":6,"97":2,"98":3,"99":2,"100":3,"101":1,"102":2,"103":4,"104":6,"105":8,"106":15,"112":1,"118":4,"119":3,"124":1,"125":1,"128":10,"129":2,"134":2,"136":4,"138":3,"139":4,"140":3,"142":1,"150":8,"151":6,"152":2,"155":1,"156":2,"158":2,"159":1,"161":2,"163":2,"164":1,"165":7,"166":2,"167":1,"168":2,"169":4,"171":2,"172":1,"173":7,"175":3,"177":75,"178":4,"179":387,"181":249}}],["sse",{"2":{"179":2}}],["ss",{"2":{"150":2,"151":3}}],["sk",{"2":{"179":1}}],["skilled",{"2":{"158":1}}],["skips",{"2":{"87":1,"103":1,"179":10,"181":2}}],["skipped",{"2":{"52":1,"179":1}}],["skip",{"2":{"52":9,"64":5,"169":1,"177":2,"179":7,"181":8}}],["sky",{"2":{"67":1,"179":3}}],["svilupp",{"2":{"67":1,"179":6,"181":1}}],["snippet",{"2":{"81":1,"122":1}}],["snippets",{"2":{"52":1,"166":1,"167":1,"179":1,"181":7}}],["snowball",{"2":{"181":1}}],["snow",{"2":{"67":1,"179":1}}],["slice",{"2":{"181":4}}],["slicing",{"2":{"166":1,"167":1}}],["sliding",{"2":{"179":1,"181":3}}],["slightly",{"2":{"67":1,"179":3}}],["slots",{"2":{"162":1}}],["slot",{"2":{"106":1}}],["slowly",{"2":{"96":1}}],["slow",{"2":{"96":1,"179":1}}],["sleep",{"2":{"74":1,"179":1}}],["slack",{"2":{"57":1,"66":1}}],["swiftly",{"2":{"67":1,"179":1}}],["switching",{"2":{"52":1,"177":1}}],["switch",{"2":{"11":2,"51":1}}],["swap",{"2":{"64":1,"181":2}}],["src",{"2":{"63":1,"67":1,"179":7,"181":1}}],["sqrt",{"2":{"177":1}}],["square",{"2":{"58":1,"64":2,"181":2}}],["sqlcoder",{"2":{"83":1}}],["sqlservercentral",{"2":{"20":1,"179":2}}],["sql",{"2":{"20":3,"179":6}}],["smoke",{"2":{"67":1,"179":1}}],["smith",{"2":{"112":2}}],["smiling",{"2":{"42":1}}],["smiles",{"2":{"40":1,"41":1}}],["smirks",{"2":{"41":1}}],["smallint",{"2":{"86":5}}],["small",{"2":{"7":1,"11":1,"23":1,"26":1,"63":1,"150":1,"164":1,"167":1,"172":1,"177":2,"179":4}}],["smaller",{"2":{"2":1,"67":6,"106":1,"177":1,"179":7}}],["shift",{"2":{"181":1}}],["shiny",{"2":{"179":1}}],["shimmering",{"2":{"67":2,"179":2}}],["shell",{"2":{"168":1}}],["shapley",{"2":{"169":1}}],["shap",{"2":{"169":10}}],["sharegptschema",{"2":{"179":3}}],["sharegpt",{"2":{"89":1}}],["share",{"2":{"71":1,"72":1,"93":1}}],["shared",{"2":{"62":2,"64":2,"67":1,"90":1,"165":1,"173":1,"179":4,"181":2}}],["sharing",{"2":{"24":1}}],["shallow",{"2":{"52":1,"177":1}}],["shall",{"2":{"12":1}}],["shot",{"2":{"177":1}}],["shortcut",{"2":{"181":1}}],["shortcuts",{"2":{"128":1,"129":1,"130":1}}],["short",{"2":{"52":1,"58":1,"67":1,"112":1,"118":1,"120":1,"150":2,"156":1,"158":1,"177":1,"179":7}}],["shorter",{"2":{"29":1}}],["should",{"2":{"2":1,"7":1,"12":1,"22":1,"35":1,"41":1,"52":1,"60":1,"64":2,"67":1,"78":1,"79":1,"83":2,"86":2,"91":1,"93":1,"102":1,"106":2,"110":3,"118":1,"136":2,"150":4,"151":4,"152":7,"158":2,"162":1,"169":2,"175":2,"177":6,"179":35,"181":2}}],["showcase",{"2":{"148":1}}],["shows",{"2":{"20":1,"24":1,"60":1,"89":1,"179":4}}],["show",{"2":{"2":1,"7":1,"52":2,"83":1,"86":1,"90":1,"177":3,"179":1}}],["side",{"2":{"105":1}}],["sister",{"2":{"89":1}}],["sink",{"2":{"179":1}}],["since",{"2":{"87":1,"105":1,"150":1}}],["singletons",{"2":{"179":5}}],["single",{"2":{"67":2,"89":1,"179":9,"181":4}}],["situations",{"2":{"69":1}}],["silent",{"2":{"67":2,"179":2}}],["sibblings",{"2":{"52":2,"177":2}}],["size=8",{"2":{"181":1}}],["size`",{"2":{"179":1}}],["size",{"2":{"45":2,"46":2,"47":1,"64":2,"179":5,"181":15}}],["sizes",{"2":{"8":1,"64":2,"181":11}}],["sig",{"2":{"106":3}}],["significant",{"2":{"118":1,"151":2}}],["signing",{"2":{"72":1}}],["sign",{"2":{"54":1}}],["signatures",{"2":{"52":1,"177":1}}],["signature",{"2":{"21":1,"51":1,"60":1,"61":4,"106":7,"179":19}}],["sigh",{"2":{"41":1}}],["simultaneously",{"2":{"21":1,"51":1,"52":1,"177":1}}],["similarly",{"2":{"96":1,"179":1}}],["similarity",{"2":{"2":2,"8":1,"47":2,"63":2,"64":5,"66":1,"67":1,"179":1,"181":33}}],["similar",{"2":{"2":1,"10":2,"52":1,"64":3,"67":1,"101":1,"104":2,"177":2,"179":6,"181":6}}],["simplistic",{"2":{"179":1}}],["simplification",{"2":{"105":1}}],["simply",{"2":{"2":1,"10":1,"20":1,"24":1,"28":1,"29":1,"36":1,"52":1,"64":1,"66":1,"86":2,"87":2,"93":1,"95":2,"104":1,"115":1,"116":1,"147":1,"177":1,"179":6,"181":10}}],["simplebm25retriever",{"2":{"179":1,"181":4}}],["simpleanswerer",{"2":{"64":2,"179":1,"181":8}}],["simplegenerator",{"2":{"64":2,"179":1,"181":5}}],["simplerefiner",{"2":{"64":1,"179":1,"181":6}}],["simpleretriever",{"2":{"64":5,"179":1,"181":11}}],["simplerephraser",{"2":{"62":1,"179":1,"181":4}}],["simplest",{"2":{"60":1,"64":1,"85":1,"179":4,"181":1}}],["simpleindexer",{"2":{"58":2,"64":3,"179":1,"181":9}}],["simple",{"0":{"1":1,"34":1,"39":1,"45":1},"1":{"2":1},"2":{"7":1,"8":1,"10":1,"16":1,"22":1,"43":1,"47":1,"49":1,"52":1,"58":1,"74":2,"77":2,"83":1,"87":2,"120":1,"132":1,"175":1,"177":1,"179":15,"181":10}}],["scene",{"2":{"179":1}}],["scenarios",{"2":{"52":1,"177":2,"181":1}}],["science",{"2":{"162":1,"169":1}}],["scientific",{"2":{"58":1}}],["scientist",{"2":{"24":2}}],["scans",{"2":{"179":3}}],["scanned",{"2":{"176":1}}],["scan",{"2":{"150":1,"151":1,"179":4}}],["scaled",{"2":{"181":1}}],["scale",{"2":{"58":1,"119":2,"120":2,"179":1,"181":6}}],["scoring=thompsonsampling",{"2":{"52":1,"177":1}}],["scoring",{"2":{"52":1,"119":1,"177":10,"181":1}}],["score==nothing",{"2":{"181":1}}],["scores2",{"2":{"181":3}}],["scores1",{"2":{"181":3}}],["scores=false",{"2":{"181":1}}],["scores",{"2":{"52":1,"58":1,"64":5,"119":1,"177":7,"181":28}}],["scored",{"2":{"21":1,"51":1,"52":1,"177":1}}],["scoreparametersstringstringstringsubstrin",{"2":{"7":1}}],["scoreretrieval",{"2":{"7":1}}],["score",{"2":{"6":3,"7":10,"10":2,"52":20,"58":1,"64":12,"119":2,"177":32,"179":5,"181":35}}],["scope",{"2":{"52":1,"177":1}}],["script",{"2":{"179":2}}],["scripting",{"2":{"168":2}}],["scratch",{"2":{"52":1,"179":2}}],["scratches",{"2":{"41":1}}],["scrollable",{"2":{"24":1}}],["screenshot",{"2":{"20":3,"176":1,"179":4}}],["schema=myschema",{"2":{"177":1}}],["schema=json3",{"2":{"106":2}}],["schema=openaischema",{"2":{"91":1,"179":1}}],["schema=pt",{"2":{"84":1}}],["schema",{"0":{"42":1,"84":1},"2":{"0":5,"10":2,"22":5,"23":2,"26":1,"27":1,"29":1,"30":1,"31":1,"37":1,"39":1,"42":7,"45":2,"46":2,"47":2,"52":4,"84":5,"90":2,"91":7,"99":1,"100":1,"104":2,"105":7,"106":5,"177":5,"179":198}}],["schemas",{"0":{"100":1},"2":{"0":1,"91":1,"98":1,"100":2,"179":3}}],["satisfactory",{"2":{"139":2}}],["satisfy",{"2":{"128":1,"140":1}}],["saving",{"2":{"64":1,"179":2,"181":2}}],["saverschema",{"2":{"91":7,"179":16}}],["saves",{"2":{"52":1,"177":2,"179":4,"181":1}}],["saved",{"2":{"11":1,"24":2,"52":2,"64":1,"87":1,"91":1,"93":1,"103":1,"177":2,"179":7,"181":4}}],["save",{"2":{"2":2,"4":1,"7":1,"13":1,"24":4,"32":1,"52":2,"63":2,"72":1,"77":2,"87":3,"89":3,"91":2,"93":1,"106":1,"177":1,"179":27}}],["safety",{"2":{"67":1,"179":1}}],["safely",{"2":{"52":1,"179":1}}],["safe",{"2":{"52":4,"179":6}}],["sampling",{"2":{"177":5,"179":1}}],["samplenode",{"2":{"52":25,"177":45,"179":1}}],["sample",{"2":{"52":23,"177":58,"179":11,"181":1}}],["samples=1",{"2":{"52":2,"177":2}}],["samples=2`",{"2":{"21":1,"51":1,"52":1,"177":1}}],["samples",{"2":{"21":3,"49":3,"51":3,"52":33,"177":55,"179":4}}],["same",{"2":{"6":1,"10":2,"11":1,"21":2,"34":1,"49":3,"51":1,"52":2,"64":3,"67":2,"74":1,"78":1,"86":2,"87":1,"93":1,"102":1,"104":2,"105":1,"128":1,"129":1,"177":9,"179":18,"181":18}}],["salty",{"2":{"87":2,"179":2}}],["salt",{"2":{"19":2}}],["san",{"2":{"19":1}}],["says",{"2":{"75":1,"138":2,"139":2,"140":2}}],["say",{"2":{"12":1,"21":2,"22":1,"23":3,"26":2,"27":1,"28":1,"29":3,"30":1,"31":1,"34":2,"37":1,"39":1,"40":1,"42":2,"51":2,"52":2,"85":1,"87":3,"90":6,"91":3,"96":1,"105":1,"108":1,"110":1,"115":1,"116":1,"177":11,"179":22}}],["said",{"2":{"10":1,"49":1,"104":1,"179":2}}],["sorted",{"2":{"181":1}}],["sorry",{"2":{"179":3}}],["soft",{"2":{"76":2}}],["solve",{"2":{"164":1,"166":1,"167":1,"172":2}}],["solving",{"2":{"140":1,"164":2,"166":2,"167":2,"172":1}}],["solutions",{"2":{"93":1}}],["solution",{"2":{"73":1,"128":2,"164":1,"166":1,"167":1,"172":1,"179":2}}],["solid",{"2":{"67":1,"179":6,"181":1}}],["source=",{"2":{"181":1}}],["source2",{"2":{"64":1,"181":1}}],["source1",{"2":{"64":1,"181":1}}],["sourced",{"2":{"10":1}}],["source",{"0":{"82":1},"2":{"5":1,"6":1,"10":1,"13":1,"23":1,"24":1,"26":1,"52":14,"55":1,"58":1,"64":17,"67":7,"82":1,"87":1,"106":2,"108":1,"110":1,"112":1,"113":1,"115":1,"116":1,"118":1,"119":1,"120":1,"122":1,"123":1,"124":1,"125":1,"126":1,"128":1,"129":1,"130":1,"132":1,"134":1,"135":1,"136":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":2,"147":1,"148":1,"150":1,"151":1,"152":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":2,"166":1,"167":1,"168":1,"169":1,"171":1,"172":1,"173":2,"175":1,"176":1,"177":38,"178":2,"179":172,"180":1,"181":159}}],["sources=false",{"2":{"181":1}}],["sources=map",{"2":{"58":1}}],["sources",{"2":{"4":2,"6":1,"58":3,"64":17,"181":50}}],["so",{"2":{"4":1,"7":1,"15":2,"18":1,"21":4,"23":2,"24":1,"26":2,"30":1,"31":2,"36":1,"42":1,"51":1,"52":1,"60":1,"64":3,"67":1,"73":1,"74":2,"75":1,"79":1,"87":2,"101":1,"103":1,"105":3,"106":5,"112":1,"128":1,"129":1,"150":1,"177":3,"179":21,"180":1,"181":4}}],["sometimes",{"2":{"106":1,"116":1}}],["something",{"2":{"30":1,"31":1,"41":1,"42":1,"105":1,"158":2}}],["somewhere",{"2":{"103":1}}],["some",{"2":{"2":2,"7":1,"8":1,"10":1,"20":2,"21":2,"22":1,"24":2,"27":1,"28":1,"37":1,"42":2,"51":1,"52":1,"58":4,"60":3,"63":1,"64":2,"66":2,"67":1,"83":1,"86":1,"93":1,"101":1,"103":2,"104":1,"106":3,"115":2,"151":1,"160":1,"162":1,"164":1,"172":1,"175":1,"177":1,"179":29,"181":12}}],["synthetic",{"2":{"181":2}}],["syntactically",{"2":{"140":1}}],["syntax",{"2":{"2":1,"13":1,"20":1,"21":1,"24":4,"51":1,"52":1,"74":1,"86":1,"87":1,"89":1,"106":1,"140":3,"158":1,"163":1,"166":3,"167":3,"171":1,"177":2,"179":8}}],["sync",{"2":{"179":1}}],["synced",{"2":{"72":1,"93":1}}],["synonyms",{"2":{"124":2}}],["symphony",{"2":{"67":1,"179":1}}],["symbols",{"2":{"179":3,"181":3}}],["symbolic",{"2":{"90":1}}],["symbol=",{"2":{"64":1,"177":1,"181":1}}],["symbol",{"2":{"6":1,"13":2,"24":3,"58":1,"64":3,"87":2,"103":1,"177":6,"179":50,"181":32}}],["system+user",{"2":{"177":1}}],["systematic",{"2":{"164":1,"166":1,"167":1,"172":1}}],["system=",{"2":{"87":1,"91":1,"103":1,"179":3}}],["systemmessage",{"2":{"12":3,"24":3,"35":1,"41":1,"85":1,"87":2,"90":3,"102":1,"103":2,"105":1,"179":11}}],["systems",{"2":{"10":1,"67":2,"104":1,"118":1,"179":5}}],["system",{"0":{"1":1,"60":1},"1":{"2":1},"2":{"3":1,"12":1,"13":2,"17":2,"24":2,"36":2,"52":1,"58":2,"60":2,"78":1,"87":3,"90":3,"100":1,"102":1,"103":3,"105":1,"108":1,"110":1,"112":1,"113":1,"115":1,"116":1,"118":1,"119":1,"120":1,"122":1,"123":1,"124":1,"125":1,"126":1,"128":1,"129":1,"130":1,"132":1,"134":1,"135":1,"136":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"147":5,"148":2,"150":1,"151":1,"152":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"171":1,"172":1,"173":1,"175":1,"176":1,"177":2,"179":59}}],["stemmer",{"2":{"181":2}}],["stemmer=nothing",{"2":{"181":1}}],["stemming",{"2":{"181":1}}],["steam",{"2":{"179":3}}],["steroids",{"2":{"106":1}}],["step=4",{"2":{"181":1}}],["steps`",{"2":{"151":1}}],["steps",{"2":{"24":1,"58":3,"60":1,"63":1,"64":4,"104":1,"105":1,"128":4,"150":1,"151":14,"158":1,"164":1,"166":1,"167":1,"179":2,"181":9}}],["step",{"2":{"2":1,"8":1,"21":2,"51":2,"52":3,"56":1,"58":4,"60":7,"62":3,"63":2,"64":10,"86":1,"87":1,"90":2,"103":1,"105":4,"106":1,"115":1,"116":1,"122":1,"123":1,"125":1,"126":1,"128":6,"129":4,"130":2,"138":2,"139":2,"140":2,"142":2,"160":2,"162":2,"164":2,"172":2,"177":3,"179":2,"181":21}}],["stop",{"2":{"76":1,"179":2,"181":1}}],["stopwords",{"2":{"66":2,"181":4}}],["stood",{"2":{"67":1,"179":1}}],["storage",{"2":{"179":1,"181":2}}],["storyteller",{"2":{"169":1}}],["storytellerexplainshap",{"0":{"169":1}}],["storytelling",{"2":{"169":1}}],["story",{"2":{"67":4,"169":6,"179":4}}],["storing",{"2":{"64":1,"181":8}}],["store",{"2":{"85":1,"87":3,"179":17}}],["stored",{"2":{"52":2,"64":1,"177":2,"181":1}}],["stores",{"2":{"10":1,"49":1,"52":2,"104":1,"177":2,"179":3,"181":3}}],["stipple",{"2":{"58":1}}],["still",{"2":{"1":1,"58":1,"73":1,"179":2}}],["stylistic",{"2":{"138":2}}],["styling",{"2":{"58":1,"181":5}}],["styled",{"2":{"181":1}}],["styles=",{"2":{"181":3}}],["styles",{"2":{"179":2,"181":10}}],["styler=rt",{"2":{"181":4}}],["styler",{"2":{"179":1,"181":21}}],["style=",{"2":{"67":1,"179":6,"181":1}}],["style",{"2":{"2":1,"5":2,"6":1,"7":11,"64":1,"67":1,"90":1,"96":1,"138":2,"142":1,"143":1,"145":1,"148":1,"165":1,"169":1,"173":1,"179":11,"181":12}}],["stdout",{"2":{"52":12,"177":1,"179":23}}],["stub",{"2":{"179":1}}],["stumbled",{"2":{"35":1,"179":1}}],["study",{"2":{"150":1}}],["studying",{"2":{"5":1,"7":1,"151":1}}],["studies",{"2":{"58":1}}],["studied",{"2":{"5":1,"7":1}}],["studio",{"0":{"32":1},"1":{"33":1,"34":1,"35":1,"36":1},"2":{"32":2,"36":1,"179":2}}],["strength",{"2":{"181":2}}],["stream",{"2":{"179":17,"181":3}}],["streaming",{"2":{"179":17}}],["streamed",{"2":{"179":5}}],["streamchunk",{"2":{"179":8}}],["streamcallback",{"2":{"179":39}}],["strong",{"2":{"179":4}}],["strongly",{"2":{"10":1}}],["stranger",{"2":{"67":1,"179":1}}],["strategies",{"2":{"63":1}}],["strategy",{"2":{"2":1,"63":5,"64":2,"179":2,"181":5}}],["strict",{"2":{"138":1,"142":1,"143":1,"145":1,"179":11}}],["strictly",{"2":{"63":1,"118":1,"151":1,"165":1,"173":1}}],["strin",{"2":{"106":1}}],["string=",{"2":{"67":2,"179":4}}],["strings",{"2":{"7":1,"64":3,"66":3,"67":5,"179":19,"181":16}}],["string",{"0":{"40":1},"2":{"7":4,"10":1,"13":5,"19":1,"21":1,"24":8,"31":2,"34":1,"42":1,"51":1,"52":17,"58":6,"64":4,"66":6,"67":30,"86":4,"87":5,"90":1,"91":1,"95":2,"104":1,"105":2,"106":15,"157":1,"165":1,"166":1,"167":1,"173":1,"177":16,"178":1,"179":239,"181":34}}],["stripping",{"2":{"126":1}}],["strip",{"2":{"67":1,"124":1,"126":1,"179":1}}],["struggle",{"2":{"52":1,"177":1}}],["structural",{"2":{"138":1}}],["structures",{"2":{"148":1,"166":1,"167":1,"177":1}}],["structured",{"2":{"10":1,"19":1,"31":1,"60":1,"104":1,"106":1,"142":1,"143":1,"145":1,"179":5}}],["structure",{"2":{"10":1,"19":1,"52":4,"67":3,"104":1,"150":2,"151":3,"152":1,"176":1,"177":3,"179":9,"181":2}}],["structtypes",{"2":{"106":1}}],["structs",{"2":{"64":1,"102":1,"106":1,"179":1,"181":1}}],["struct",{"2":{"10":2,"19":4,"31":1,"49":2,"52":4,"58":1,"60":3,"64":1,"86":5,"104":2,"106":7,"112":1,"177":4,"179":44,"181":8}}],["str",{"0":{"95":1},"2":{"15":1,"67":1,"95":2,"96":4,"179":29,"181":1}}],["stands",{"2":{"179":1}}],["standards",{"2":{"138":1}}],["standard",{"0":{"40":1},"2":{"52":2,"64":1,"166":1,"167":1,"179":11,"181":7}}],["stays",{"2":{"74":1,"118":1,"177":1}}],["stage",{"2":{"64":1,"90":1,"181":13}}],["stabilizes",{"2":{"56":1,"177":1}}],["stark",{"2":{"179":1}}],["stars",{"2":{"67":3,"179":3}}],["star",{"2":{"12":1,"35":1,"41":1,"179":5}}],["start=1",{"2":{"181":1}}],["start|>assistant",{"2":{"179":1}}],["start|>user",{"2":{"179":1}}],["start>system",{"2":{"179":1}}],["startup",{"2":{"81":2,"179":1}}],["starter",{"2":{"58":1}}],["started",{"0":{"92":1},"1":{"93":1,"94":1,"95":1,"96":1},"2":{"56":1,"69":1}}],["starting",{"2":{"52":1,"134":1,"136":1,"177":2,"179":3}}],["starts",{"2":{"52":1,"177":2,"179":2}}],["startswith",{"2":{"52":1,"177":1}}],["start",{"0":{"95":1},"2":{"1":1,"19":1,"24":2,"28":2,"76":1,"78":1,"93":2,"95":1,"97":1,"158":1,"177":1,"179":2,"181":8}}],["status",{"2":{"177":2,"179":23}}],["statistical",{"2":{"58":1}}],["statistics",{"2":{"1":1}}],["stats",{"2":{"52":23,"177":33}}],["stated",{"2":{"140":1}}],["stateless",{"2":{"101":1}}],["state",{"2":{"19":1,"52":2,"69":1,"106":1,"177":2,"179":1}}],["statements",{"2":{"86":1,"165":1,"173":1,"179":1}}],["statement",{"2":{"17":2,"77":1,"101":1,"102":1,"135":4,"136":1,"179":6}}],["states",{"2":{"6":1}}],["splatting",{"2":{"181":1}}],["spliter",{"2":{"88":1}}],["splitters",{"2":{"67":1,"179":1}}],["splitter",{"2":{"66":2,"67":10,"88":2,"179":13,"181":1}}],["splitting",{"2":{"64":2,"67":11,"179":12,"181":3}}],["splits",{"2":{"64":1,"67":1,"179":1,"181":7}}],["split",{"2":{"8":1,"21":2,"51":2,"52":1,"64":1,"66":3,"67":14,"88":3,"150":1,"158":1,"177":4,"179":16,"181":4}}],["spillover",{"2":{"179":3}}],["spiders",{"2":{"179":1}}],["spider",{"2":{"18":1,"86":1,"179":1}}],["speaking",{"2":{"91":1,"179":3}}],["speak",{"2":{"87":3,"169":1,"179":4}}],["spend",{"2":{"76":1}}],["spending",{"0":{"76":1},"2":{"72":1,"76":1,"95":1}}],["speeds",{"2":{"181":3}}],["speed",{"2":{"46":1}}],["spec",{"2":{"179":2}}],["specs",{"2":{"179":1}}],["specialist",{"2":{"134":1,"136":1}}],["specializes",{"2":{"152":1}}],["specialized",{"2":{"52":1,"122":1,"138":1,"139":1,"177":2,"179":1}}],["specializing",{"2":{"123":1,"125":1}}],["special",{"2":{"112":4,"113":2,"118":3,"150":2,"151":2,"154":2,"165":2,"166":2,"167":2,"169":2,"173":5,"181":2}}],["specifying",{"2":{"64":1,"179":1,"181":1}}],["specify",{"2":{"15":1,"34":1,"62":1,"64":2,"67":1,"84":2,"106":1,"128":1,"179":14,"181":4}}],["specified",{"2":{"63":1,"64":1,"67":2,"91":1,"138":1,"152":2,"177":3,"179":11,"181":6}}],["specifies",{"2":{"11":1,"52":1,"177":1}}],["specification",{"2":{"100":1,"106":1,"179":1}}],["specifications",{"2":{"67":1,"106":1,"179":1}}],["specifically",{"2":{"0":1,"112":1,"179":2}}],["specific",{"2":{"0":2,"6":1,"10":1,"13":2,"23":2,"24":1,"26":2,"30":1,"31":1,"42":1,"57":1,"66":1,"67":2,"89":1,"103":1,"104":1,"106":2,"118":1,"122":2,"124":3,"128":2,"129":1,"138":1,"139":2,"140":3,"142":1,"143":1,"145":1,"151":2,"166":1,"167":1,"169":1,"179":10,"181":1}}],["spectacles",{"2":{"41":1}}],["span",{"2":{"181":1}}],["spanish",{"2":{"14":1}}],["spain",{"2":{"95":2,"96":2}}],["sparrow",{"2":{"87":4,"179":5}}],["sparse",{"2":{"63":1,"181":5}}],["sparsearrays",{"2":{"1":2,"56":1,"181":4}}],["spawn",{"2":{"46":1,"179":1}}],["spaces",{"2":{"181":3}}],["space",{"2":{"23":1,"26":1,"67":1,"179":1}}],["s",{"2":{"1":1,"2":2,"3":1,"4":1,"5":2,"6":2,"7":2,"10":2,"11":2,"13":1,"15":1,"18":1,"19":4,"20":1,"21":1,"22":3,"24":6,"32":2,"36":1,"37":1,"39":1,"40":1,"42":1,"43":1,"49":1,"51":1,"52":12,"56":1,"58":5,"60":2,"62":1,"64":8,"67":7,"69":1,"71":3,"74":1,"77":1,"78":2,"83":3,"85":5,"86":4,"87":3,"88":1,"90":1,"98":1,"100":2,"103":1,"104":2,"105":3,"106":14,"115":1,"116":1,"119":3,"120":2,"128":2,"129":1,"136":1,"138":8,"139":5,"140":11,"142":2,"143":2,"145":3,"148":1,"150":2,"151":1,"158":2,"160":2,"162":2,"165":3,"169":2,"173":1,"177":19,"179":78,"181":24}}],["seq",{"2":{"179":5}}],["sequentially",{"2":{"46":1,"52":2,"177":2,"179":1}}],["sequences",{"2":{"67":1,"179":1,"181":1}}],["sequence",{"2":{"21":2,"67":2,"101":1,"179":6}}],["sedan",{"2":{"179":1}}],["segments",{"2":{"67":2,"179":4}}],["segment",{"2":{"64":1,"181":1}}],["separator=",{"2":{"67":1,"179":1}}],["separator",{"2":{"67":9,"177":1,"179":9}}],["separators",{"2":{"64":1,"67":19,"88":4,"179":20,"181":7}}],["separators=",{"2":{"60":1,"64":1,"67":4,"179":4,"181":1}}],["separated",{"2":{"177":1,"179":1,"181":1}}],["separate",{"2":{"2":1,"17":1,"56":1,"158":1,"162":1,"177":2,"179":3,"180":1,"181":2}}],["selects",{"2":{"177":1}}],["selecting",{"2":{"179":1}}],["selection",{"2":{"177":2}}],["selectively",{"2":{"52":1,"177":1}}],["select",{"2":{"58":1,"95":1,"112":1,"134":1,"136":3,"156":1,"177":7,"179":1}}],["selected",{"2":{"13":1,"28":1,"64":1,"90":1,"156":5,"179":3,"181":1}}],["self",{"2":{"48":1,"86":1,"104":1,"128":1,"177":1,"179":1}}],["sessions",{"2":{"79":1,"177":1,"179":2}}],["session",{"2":{"42":1,"52":1,"81":1,"177":7,"179":1}}],["sense",{"2":{"106":1,"179":1}}],["sensitive",{"2":{"22":1,"66":1,"83":1,"179":1}}],["sender",{"2":{"179":4}}],["sends",{"2":{"64":1,"178":1,"181":1}}],["send",{"2":{"52":1,"74":1,"85":1,"86":1,"100":1,"101":1,"105":1,"177":1,"179":5}}],["sending",{"2":{"23":1,"27":1,"66":1,"85":1,"87":2,"179":12}}],["senior",{"2":{"24":2}}],["sentences",{"2":{"58":3,"64":3,"66":3,"67":3,"88":1,"158":1,"169":1,"179":4,"181":11}}],["sentence",{"2":{"31":1,"58":1,"64":4,"66":1,"67":6,"77":1,"88":2,"106":3,"179":6,"181":6}}],["sentiment",{"2":{"17":1}}],["sent",{"0":{"90":1},"2":{"0":1,"22":1,"75":1,"83":1,"90":3,"100":1,"106":1,"179":6,"181":3}}],["several",{"2":{"22":1,"37":1,"106":1,"128":1,"152":1,"158":2,"179":3}}],["seven",{"2":{"7":1}}],["secret",{"2":{"72":1,"93":1,"169":1}}],["secrets",{"2":{"67":4,"179":4}}],["sections",{"2":{"151":2,"158":4,"162":1,"179":2}}],["section",{"2":{"17":1,"22":1,"37":1,"56":1,"69":1,"72":1,"93":1,"96":1,"97":1,"150":2,"151":2,"158":1,"162":1}}],["seconds",{"2":{"10":1,"11":1,"20":2,"22":1,"23":1,"26":1,"30":1,"31":1,"52":3,"74":1,"85":1,"95":2,"96":1,"104":1,"177":2,"179":18}}],["second",{"2":{"7":4,"64":1,"67":3,"85":1,"105":3,"177":1,"179":5,"181":4}}],["seas",{"2":{"87":2,"179":2}}],["seats",{"2":{"86":2}}],["sea",{"2":{"67":1,"179":1}}],["searches",{"2":{"179":3}}],["searching",{"2":{"179":2,"181":1}}],["search",{"2":{"11":1,"13":1,"16":1,"21":2,"24":3,"49":1,"52":2,"54":1,"55":11,"58":4,"63":2,"64":4,"87":1,"110":2,"112":2,"113":2,"115":1,"116":12,"123":2,"124":3,"125":5,"177":4,"178":12,"179":8,"180":1,"181":32}}],["seamless",{"0":{"11":1},"2":{"0":1}}],["semantic",{"2":{"8":1,"16":1,"125":1,"181":3}}],["semi",{"2":{"6":1,"7":4}}],["semijoin",{"2":{"6":1}}],["setter",{"2":{"181":1}}],["settings",{"2":{"78":1,"177":1}}],["setting",{"0":{"76":1,"79":1},"2":{"52":1,"62":1,"88":1,"177":1,"179":1}}],["setpropertynested",{"2":{"64":2,"179":1,"181":7}}],["setup",{"0":{"83":1},"2":{"22":1,"69":1,"78":1,"82":1,"93":1,"165":1,"173":1,"177":1}}],["sets",{"2":{"4":1,"5":4,"6":2,"7":5,"64":1,"106":1,"118":1,"177":1,"179":3,"181":5}}],["set",{"0":{"7":1,"73":2},"2":{"3":2,"4":1,"7":5,"8":1,"10":2,"12":1,"15":1,"18":1,"21":2,"23":1,"24":1,"27":1,"29":2,"30":2,"31":2,"42":2,"48":1,"51":2,"52":20,"54":1,"56":1,"57":2,"58":1,"60":2,"64":5,"65":1,"66":1,"67":1,"72":1,"73":2,"74":1,"76":2,"78":5,"79":2,"84":1,"85":1,"86":1,"93":5,"104":1,"106":2,"112":1,"125":1,"150":1,"151":1,"152":1,"165":1,"167":1,"169":1,"173":1,"177":13,"179":53,"181":18}}],["seem",{"2":{"179":1}}],["seems",{"2":{"179":2}}],["seel",{"2":{"52":1,"177":1}}],["seek",{"2":{"12":1,"35":1,"41":1}}],["see",{"0":{"90":1},"2":{"2":3,"7":1,"8":3,"10":4,"13":3,"17":1,"19":1,"21":1,"22":1,"23":3,"24":4,"26":2,"32":1,"37":2,"49":2,"52":11,"55":1,"56":1,"58":4,"63":1,"64":9,"69":1,"70":1,"74":2,"75":1,"78":2,"79":2,"80":1,"82":1,"83":2,"84":1,"85":1,"86":1,"88":1,"90":4,"91":1,"93":2,"96":1,"97":1,"100":1,"103":2,"104":4,"106":8,"110":1,"177":17,"178":1,"179":80,"181":40}}],["serializable",{"2":{"179":4}}],["serialization",{"2":{"1":1,"87":1,"103":1}}],["serialized",{"2":{"91":1}}],["serializes",{"2":{"91":1}}],["series",{"2":{"67":1,"179":2}}],["serves",{"2":{"58":1}}],["serve",{"2":{"35":1,"83":1}}],["serverpreference",{"2":{"179":1}}],["server`",{"2":{"179":1}}],["servers",{"2":{"179":1}}],["server",{"0":{"28":1},"2":{"0":2,"25":1,"28":4,"37":1,"179":16}}],["services",{"2":{"71":1}}],["service",{"2":{"23":1,"26":1,"71":1,"83":1}}],["sun",{"2":{"181":3}}],["sunny",{"2":{"179":8}}],["sunnweiwei",{"2":{"110":1,"181":1}}],["sum",{"2":{"179":2}}],["summarizing",{"2":{"150":1,"151":1,"152":1}}],["summarize",{"2":{"128":1,"150":2,"151":1}}],["summary",{"2":{"67":1,"150":1,"151":5,"166":1,"167":1,"169":1,"175":1,"179":1}}],["suitability",{"2":{"140":1}}],["suitable",{"2":{"22":1,"67":1,"136":1,"142":1,"143":1,"145":1,"156":1,"158":2,"179":2}}],["suggesting",{"2":{"179":1}}],["suggestion",{"2":{"139":1,"140":1}}],["suggestions",{"2":{"24":1,"138":5,"139":5,"140":5}}],["suggests",{"2":{"148":1}}],["suggested",{"2":{"128":1}}],["suggest",{"2":{"128":1,"129":1}}],["suffixed",{"2":{"179":1}}],["suffix",{"2":{"52":3,"179":5}}],["suffering",{"2":{"35":1,"179":2}}],["super",{"2":{"150":1,"151":1}}],["supertype",{"2":{"99":1}}],["superseded",{"2":{"42":1}}],["supplied",{"2":{"10":1,"49":1,"52":1,"104":1,"177":1}}],["suppose",{"2":{"5":1,"7":1}}],["support",{"2":{"23":2,"27":1,"32":1,"57":1,"58":2,"64":11,"71":1,"179":13,"181":22}}],["supports",{"2":{"0":1,"179":2,"181":2}}],["supported",{"2":{"0":1,"10":1,"43":1,"57":1,"64":2,"106":2,"179":11,"181":4}}],["survey",{"2":{"152":5,"154":1}}],["surrounding",{"2":{"64":1,"181":7}}],["surface",{"2":{"13":1,"60":1,"156":1,"179":2}}],["sure",{"2":{"4":1,"7":1,"8":1,"37":2,"52":1,"64":1,"78":2,"93":2,"106":1,"136":1,"160":1,"162":1,"177":1,"179":4,"181":5}}],["subdocumenttermmatrix",{"2":{"179":1,"181":2}}],["subchunkindex",{"2":{"179":1,"181":5}}],["subcomponents",{"2":{"64":1,"181":1}}],["subject",{"2":{"158":2}}],["subheadings",{"2":{"150":2}}],["subheading",{"2":{"150":1}}],["submitted",{"2":{"71":1,"138":1}}],["sub",{"2":{"58":1,"60":1,"64":6,"77":1,"105":1,"152":1,"179":4,"181":18}}],["subseq",{"2":{"179":5}}],["subsequence",{"2":{"66":6,"67":17,"179":25}}],["subsequent",{"2":{"52":1,"67":1,"86":1,"177":3,"179":3}}],["subset",{"2":{"165":1,"173":1,"181":5}}],["substantial",{"2":{"151":1}}],["substring",{"2":{"58":2,"179":5,"181":2}}],["subarray",{"2":{"45":1}}],["subfolder",{"2":{"11":3}}],["subfolders",{"2":{"11":1}}],["subtype",{"2":{"0":1,"99":1}}],["subtypes",{"2":{"0":1,"52":2,"61":2,"64":3,"100":2,"177":2,"181":4}}],["suceeding",{"2":{"181":1}}],["succinct",{"2":{"122":1}}],["successfully",{"2":{"52":2,"124":1,"177":1,"179":3}}],["successful",{"2":{"52":5,"86":1,"106":1,"113":1,"177":8,"179":2}}],["success",{"2":{"4":1,"52":7,"86":2,"177":13,"179":9}}],["succeeding",{"2":{"2":1}}],["such",{"2":{"0":1,"52":1,"91":1,"112":1,"138":3,"140":1,"156":1,"177":1,"179":9,"181":2}}],["iobuffer",{"2":{"181":1}}],["io",{"2":{"179":24,"181":17}}],["illustrated",{"2":{"153":1,"154":1}}],["illustrate",{"2":{"152":1,"159":1,"161":1,"168":1}}],["i>macro",{"2":{"179":1}}],["i>method",{"2":{"179":5,"181":1}}],["i>",{"2":{"67":1,"179":6,"181":1}}],["i>function",{"2":{"67":1}}],["iphone",{"2":{"12":4,"35":1,"41":2,"179":7}}],["ignored",{"2":{"179":1}}],["ignores",{"2":{"179":2}}],["ignore",{"2":{"11":4,"169":1}}],["immediate",{"2":{"179":1}}],["immediately",{"2":{"87":1,"175":1,"179":1,"181":2}}],["im",{"2":{"179":2}}],["imagine",{"2":{"11":1,"77":1}}],["image",{"0":{"20":1},"2":{"10":2,"20":7,"43":6,"104":2,"175":7,"176":1,"179":88}}],["images",{"0":{"43":1},"2":{"10":2,"20":1,"42":1,"43":1,"55":2,"102":2,"104":2,"178":2,"179":17}}],["improper",{"2":{"140":1}}],["improving",{"2":{"14":1,"52":1,"139":1,"140":1,"177":1}}],["improved",{"2":{"128":1,"129":1}}],["improvements",{"2":{"128":2,"129":2,"138":1,"140":1}}],["improvement",{"2":{"71":1,"128":4,"138":1,"139":1}}],["improves",{"2":{"19":1}}],["improve",{"2":{"8":1,"21":1,"51":1,"52":1,"63":2,"71":3,"116":1,"122":1,"123":1,"124":1,"125":1,"126":1,"128":6,"130":1,"139":1,"177":2,"179":2,"181":2}}],["imprints",{"2":{"67":1,"179":1}}],["impact",{"2":{"58":1,"118":1,"138":2}}],["impartial",{"2":{"17":1,"119":2,"120":1,"135":1}}],["impermanence",{"2":{"12":1}}],["imported",{"2":{"180":1}}],["imports",{"2":{"52":2,"179":7}}],["important",{"2":{"8":1,"64":2,"112":2,"124":1,"150":2,"152":1,"160":1,"162":1,"179":3,"181":2}}],["import",{"2":{"1":1,"21":1,"24":2,"32":1,"37":1,"48":1,"53":1,"56":1,"66":1,"84":1,"179":2,"181":1}}],["implementing",{"2":{"179":1}}],["implement",{"2":{"51":1,"52":1,"58":1,"177":1,"179":1}}],["implements",{"2":{"49":1,"177":2}}],["implemented",{"2":{"0":1,"104":1,"181":4}}],["implementations",{"2":{"58":1,"61":1}}],["implementation",{"2":{"0":1,"58":1,"110":1,"128":1,"129":2,"179":7,"181":12}}],["ie",{"2":{"10":3,"24":1,"52":4,"56":1,"63":1,"64":2,"66":1,"67":2,"74":1,"77":1,"87":2,"88":1,"102":1,"104":3,"106":1,"177":7,"179":19,"181":16}}],["irrelevant",{"2":{"8":1,"116":1}}],["idx",{"2":{"181":3}}],["idiomatic",{"2":{"128":1}}],["idempotent",{"2":{"179":10}}],["identity",{"2":{"179":5,"181":1}}],["identifies",{"2":{"179":2}}],["identified",{"2":{"124":1,"152":1,"181":2}}],["identifiers",{"2":{"64":1,"110":1,"112":1,"179":2,"181":1}}],["identifier",{"2":{"64":1,"110":1,"112":1,"177":1,"179":11,"181":6}}],["identifying",{"2":{"179":2}}],["identify",{"2":{"112":1,"128":1,"139":1,"140":1,"151":1,"152":1}}],["identical",{"2":{"66":1,"106":1,"181":1}}],["ideal",{"2":{"160":1}}],["ideally",{"2":{"1":1,"2":1,"3":1,"156":2,"179":2}}],["ideas",{"2":{"8":1,"175":1}}],["idea",{"2":{"5":1,"13":1,"179":3}}],["id`",{"2":{"52":1,"177":1}}],["ids",{"2":{"7":2,"134":1,"136":1,"179":11,"181":3}}],["id",{"2":{"7":11,"52":53,"58":1,"64":3,"91":2,"134":1,"177":69,"179":70,"181":19}}],["id=",{"2":{"7":2,"67":1,"179":6,"181":1}}],["i",{"0":{"70":1,"89":1,"90":1},"2":{"2":1,"11":1,"12":5,"13":4,"21":2,"22":1,"23":5,"24":1,"26":5,"30":3,"31":5,"34":2,"35":2,"39":1,"40":1,"41":5,"42":1,"51":2,"52":3,"58":1,"67":2,"85":4,"86":2,"88":1,"90":5,"105":1,"106":7,"113":1,"128":2,"129":2,"130":2,"177":10,"179":47,"181":6}}],["if",{"0":{"70":1},"2":{"1":1,"2":1,"10":5,"13":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":2,"22":1,"23":2,"24":4,"26":2,"27":1,"28":1,"32":1,"37":1,"39":1,"42":2,"49":2,"51":3,"52":40,"57":2,"58":2,"60":1,"62":2,"63":3,"64":21,"66":1,"67":8,"73":5,"74":5,"75":2,"77":2,"83":1,"84":1,"85":1,"86":6,"87":5,"91":3,"95":1,"96":1,"100":1,"104":4,"106":6,"108":1,"112":2,"113":2,"115":5,"116":6,"118":2,"128":3,"129":1,"135":1,"136":2,"138":2,"139":3,"140":3,"150":4,"151":2,"152":1,"154":1,"158":2,"165":3,"166":1,"167":2,"169":2,"172":1,"173":3,"177":47,"179":201,"181":60}}],["inherit",{"2":{"181":1}}],["inactive",{"2":{"179":2}}],["inactived",{"2":{"179":1}}],["inanimate",{"2":{"35":1}}],["inefficiencies",{"2":{"140":1}}],["inline",{"2":{"128":3}}],["initializes",{"2":{"179":1}}],["initialized",{"2":{"179":11}}],["initialize",{"2":{"179":13}}],["initialisms",{"2":{"124":1}}],["initiate",{"2":{"52":1,"177":1,"179":1}}],["injects",{"2":{"124":1}}],["injected",{"2":{"110":1,"181":1}}],["inject",{"2":{"95":1,"179":1}}],["inverse",{"2":{"181":2}}],["investigating",{"2":{"181":3}}],["investigate",{"2":{"58":1}}],["involve",{"2":{"179":2}}],["involved",{"2":{"0":1}}],["invalid",{"2":{"52":2,"64":2,"179":2,"181":2}}],["inferred",{"2":{"179":1}}],["inferfaces",{"2":{"179":1}}],["influential",{"2":{"169":1}}],["influence",{"2":{"52":1,"106":1,"177":1}}],["informal",{"2":{"158":1}}],["informative",{"2":{"150":1,"151":1,"162":1}}],["information",{"2":{"0":2,"6":1,"10":1,"17":1,"19":1,"23":3,"26":3,"29":1,"30":1,"49":1,"52":2,"55":1,"56":1,"60":1,"64":4,"71":1,"74":1,"75":1,"80":1,"82":1,"83":1,"84":1,"88":1,"90":1,"98":1,"101":1,"102":2,"104":1,"106":1,"108":2,"115":2,"116":1,"118":4,"119":1,"120":1,"124":2,"126":1,"142":1,"143":1,"145":1,"150":1,"151":1,"158":1,"166":1,"167":1,"169":1,"177":5,"178":1,"179":63,"181":6}}],["informed",{"2":{"6":1}}],["info",{"2":{"4":1,"7":2,"10":1,"11":2,"20":2,"22":1,"23":1,"26":1,"30":1,"31":1,"52":10,"58":1,"67":2,"85":2,"86":2,"95":2,"96":1,"104":1,"106":1,"177":10,"179":13}}],["inplace",{"2":{"177":6}}],["inplace=true",{"2":{"52":1,"177":1}}],["input=",{"2":{"106":2}}],["input2",{"2":{"67":3,"179":3}}],["input1",{"2":{"67":3,"179":3}}],["inputclassifier",{"0":{"134":1},"2":{"18":1,"86":1,"179":3}}],["inputs",{"2":{"10":2,"21":1,"49":3,"51":1,"87":1,"98":1,"100":1,"103":1,"104":2,"106":1,"165":1,"173":1,"179":6,"181":3}}],["input",{"2":{"10":2,"18":4,"64":1,"86":2,"104":2,"106":3,"125":1,"134":7,"136":3,"169":1,"179":23,"181":18}}],["inches",{"2":{"179":1}}],["incredible",{"2":{"150":1}}],["increase",{"2":{"49":1,"76":1,"177":1,"179":3}}],["incorporating",{"2":{"181":2}}],["incorrect",{"2":{"140":1}}],["inconsistencies",{"2":{"139":1}}],["inconsistent",{"2":{"119":1}}],["incomplete",{"2":{"119":1,"179":3}}],["including",{"2":{"10":1,"17":1,"25":1,"49":1,"83":1,"106":1,"169":1,"177":2,"179":18,"181":3}}],["includes",{"2":{"7":1,"64":2,"82":1,"177":2,"179":1,"181":6}}],["included",{"2":{"7":1,"129":1,"151":1,"179":3,"180":1,"181":2}}],["include",{"2":{"2":1,"7":1,"10":1,"55":9,"58":2,"64":1,"104":1,"122":1,"123":1,"124":1,"140":1,"150":2,"151":1,"165":1,"173":1,"178":9,"179":7,"181":9}}],["indentation",{"2":{"181":1}}],["independent",{"2":{"177":1}}],["index>",{"2":{"181":1}}],["indexing",{"2":{"64":1,"166":1,"167":1,"181":1}}],["indexes",{"2":{"181":7}}],["indexed",{"2":{"63":2,"64":1,"181":1}}],["indexer",{"2":{"61":1,"64":12,"181":13}}],["index",{"2":{"2":16,"3":1,"4":2,"6":1,"7":2,"8":3,"10":1,"57":5,"58":11,"60":5,"61":5,"62":2,"63":5,"64":54,"179":2,"181":205}}],["industry",{"2":{"124":1}}],["indifferent",{"2":{"67":1,"179":1}}],["individual",{"2":{"52":2,"75":1,"119":1,"177":2,"179":1,"181":2}}],["indication",{"2":{"152":1}}],["indicating",{"2":{"64":1,"136":2,"177":1,"179":18,"181":13}}],["indicate",{"2":{"138":1,"140":1,"177":2}}],["indicated",{"2":{"110":1}}],["indicates",{"2":{"52":3,"169":1,"177":4,"179":1}}],["indices",{"2":{"8":1,"64":1,"179":2,"181":23}}],["inserting",{"2":{"181":1}}],["inserted",{"2":{"179":2}}],["insert",{"2":{"179":1}}],["insufficient",{"2":{"75":1}}],["inside",{"2":{"52":2,"179":3}}],["insights",{"2":{"6":1,"150":5}}],["inspired",{"2":{"21":1,"52":1,"122":1,"123":1,"169":1,"177":1,"179":3}}],["inspect",{"2":{"13":1,"52":2,"177":1,"179":5}}],["instructor",{"2":{"179":3}}],["instruction",{"2":{"179":1,"181":3}}],["instructions>",{"2":{"173":4}}],["instructions=",{"2":{"64":1,"112":1,"113":1,"118":1,"150":1,"151":1,"152":1,"165":1,"167":1,"169":1,"173":1,"181":2}}],["instructions",{"2":{"4":1,"36":1,"64":2,"101":1,"103":1,"108":1,"112":9,"113":5,"115":1,"116":1,"118":9,"119":1,"128":3,"134":1,"136":1,"138":6,"139":1,"140":2,"142":1,"143":1,"145":1,"150":7,"151":6,"152":3,"154":4,"156":2,"158":2,"162":1,"165":7,"166":4,"167":6,"169":9,"173":6,"175":1,"179":1,"181":2}}],["instruct",{"2":{"28":1,"106":1}}],["installation",{"0":{"94":1},"2":{"83":1}}],["installated",{"2":{"37":1}}],["installing",{"2":{"52":1,"179":2}}],["installed",{"2":{"22":1,"83":1,"94":2}}],["instant",{"0":{"81":1}}],["instantiating",{"2":{"181":1}}],["instantiation",{"2":{"52":2,"179":2}}],["instantiated",{"2":{"10":1,"49":1,"104":1,"179":1}}],["instance",{"2":{"10":2,"19":1,"49":2,"52":2,"60":1,"104":2,"169":3,"177":18,"179":6}}],["instead",{"2":{"15":1,"24":1,"67":1,"88":1,"128":1,"129":1,"169":1,"179":8,"181":2}}],["innerjoin",{"2":{"7":2}}],["inner",{"2":{"6":1,"7":5,"91":1}}],["int16",{"2":{"179":1}}],["intricate",{"2":{"179":5}}],["intro",{"2":{"67":2}}],["introduced",{"2":{"42":1}}],["introduction",{"0":{"48":1,"53":1,"56":1},"1":{"49":1,"50":1,"51":1,"52":1,"54":1,"55":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1},"2":{"5":1,"129":1}}],["int=60",{"2":{"181":1}}],["int=3",{"2":{"181":1}}],["int=32000",{"2":{"177":1}}],["int=35000",{"2":{"67":4,"179":4}}],["int=1",{"2":{"177":1}}],["int=512",{"2":{"52":1,"177":1}}],["int64",{"2":{"7":3,"13":1,"24":1,"45":1,"58":4,"87":1,"179":3}}],["int",{"2":{"7":1,"19":2,"52":18,"64":2,"67":2,"86":5,"177":31,"179":46,"181":38}}],["into",{"0":{"11":1},"2":{"2":3,"10":1,"17":1,"18":1,"35":1,"45":1,"52":1,"56":1,"58":1,"63":1,"64":7,"66":6,"67":6,"81":1,"87":1,"90":2,"94":1,"104":1,"106":4,"124":1,"126":1,"150":2,"151":2,"152":2,"177":2,"179":29,"181":25}}],["intelligent",{"2":{"110":1}}],["intelligence",{"2":{"16":1}}],["intent",{"2":{"125":1}}],["intention",{"2":{"60":1,"180":1}}],["intended",{"2":{"52":1,"63":2,"123":1,"125":1,"138":4,"177":2,"179":2,"181":1}}],["intends",{"2":{"36":1}}],["integrity",{"2":{"138":1}}],["integrates",{"2":{"58":1,"177":1}}],["integration",{"0":{"11":1},"2":{"0":2,"165":1,"173":1}}],["integer",{"2":{"55":1,"64":10,"86":1,"178":1,"179":9,"181":33}}],["integer=1",{"2":{"52":1,"177":2}}],["integers",{"2":{"7":1,"179":3,"181":1}}],["intersection",{"2":{"181":1}}],["interpolate",{"2":{"179":1}}],["interpolated",{"2":{"179":1}}],["interpolation",{"0":{"40":1},"2":{"95":1,"166":1,"167":1,"179":6}}],["interprets",{"2":{"148":1}}],["interested",{"2":{"106":1,"179":1}}],["interesting",{"2":{"41":1}}],["internally",{"2":{"64":1,"181":1}}],["internal",{"2":{"60":1,"64":1,"158":3,"179":1,"181":1}}],["interface",{"0":{"59":1},"1":{"60":1,"61":1,"62":1,"63":1},"2":{"56":1,"63":1,"179":5}}],["intermediate",{"2":{"6":1,"58":2}}],["interaction",{"2":{"177":2}}],["interactions",{"2":{"169":1,"177":5,"179":2}}],["interactive",{"2":{"52":1,"58":1,"177":2}}],["interact",{"2":{"1":1,"10":1,"20":1,"49":1,"52":2,"99":1,"104":1,"177":2}}],["in",{"0":{"2":1,"80":1},"2":{"0":1,"1":2,"2":9,"3":1,"4":2,"6":3,"7":24,"8":4,"10":8,"11":6,"12":1,"13":3,"14":1,"15":3,"17":1,"18":1,"19":4,"20":4,"21":5,"22":2,"23":3,"24":15,"26":2,"28":3,"30":2,"31":2,"32":3,"35":1,"36":1,"37":1,"39":1,"41":1,"42":2,"49":1,"51":3,"52":54,"54":1,"55":4,"57":4,"58":15,"60":6,"62":1,"63":3,"64":23,"65":1,"66":4,"67":7,"69":1,"71":2,"73":6,"74":3,"75":1,"76":1,"77":1,"78":4,"79":2,"81":1,"83":2,"85":4,"86":4,"87":7,"89":2,"90":1,"91":1,"93":4,"95":4,"96":1,"103":2,"104":8,"105":7,"106":16,"110":2,"112":3,"118":4,"119":3,"122":1,"123":2,"124":4,"125":1,"126":1,"128":7,"129":4,"130":1,"134":1,"136":1,"138":4,"139":2,"140":4,"142":4,"143":3,"145":2,"150":2,"151":2,"152":3,"155":1,"156":1,"158":7,"159":3,"161":2,"162":2,"163":1,"164":2,"165":1,"168":3,"171":1,"172":5,"173":3,"176":1,"177":65,"178":4,"179":215,"180":2,"181":134}}],["itr2",{"2":{"67":2,"179":2}}],["itr1",{"2":{"67":2,"179":2}}],["iters",{"2":{"179":1}}],["iterative",{"2":{"177":1,"179":1}}],["iteratively",{"2":{"67":2,"130":1,"177":2,"179":2}}],["iterating",{"2":{"177":1}}],["iterations",{"2":{"129":1}}],["iteration",{"2":{"67":1,"177":2,"179":1}}],["iterates",{"2":{"179":1}}],["iterate",{"2":{"52":1,"177":1}}],["itemsextract",{"2":{"179":10}}],["items",{"2":{"7":2,"8":1,"60":1,"64":2,"106":1,"112":2,"124":1,"179":13,"181":10}}],["item",{"2":{"4":1,"5":1,"6":1,"7":3,"52":1,"64":1,"177":1,"179":1,"181":11}}],["itself",{"2":{"19":1,"51":1,"64":1,"67":1,"179":4,"181":3}}],["its",{"2":{"10":2,"12":1,"21":2,"24":1,"32":1,"49":3,"51":2,"52":2,"58":2,"62":1,"64":4,"67":4,"84":1,"87":1,"88":1,"91":1,"99":1,"102":1,"104":2,"115":1,"116":1,"118":1,"125":1,"138":2,"139":1,"151":3,"162":1,"166":1,"167":1,"169":3,"175":1,"177":6,"179":13,"181":11}}],["it",{"0":{"77":2,"97":1},"1":{"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1},"2":{"0":3,"2":4,"4":2,"5":1,"7":1,"8":2,"10":14,"11":4,"12":4,"13":4,"15":1,"17":1,"18":3,"19":2,"21":8,"22":3,"23":2,"24":11,"26":1,"28":5,"29":3,"30":3,"31":4,"32":3,"36":1,"37":1,"39":1,"40":1,"41":3,"42":4,"43":1,"49":5,"51":6,"52":33,"54":1,"56":2,"57":1,"58":2,"60":1,"64":17,"66":1,"67":14,"69":1,"72":2,"73":4,"74":3,"75":2,"76":1,"77":2,"78":6,"79":1,"83":4,"84":2,"85":4,"86":8,"87":13,"88":1,"89":2,"90":2,"91":2,"93":6,"95":1,"97":3,"98":1,"99":1,"100":3,"101":2,"102":1,"103":4,"104":13,"105":8,"106":17,"115":2,"116":2,"118":1,"119":1,"122":1,"123":2,"124":1,"125":2,"126":2,"128":5,"129":5,"130":1,"134":1,"135":3,"136":2,"138":3,"140":2,"142":1,"148":1,"150":3,"152":2,"154":1,"158":3,"160":2,"162":2,"164":1,"165":4,"166":1,"167":1,"169":2,"172":1,"173":4,"175":1,"177":63,"179":213,"180":2,"181":82}}],["isolate",{"2":{"179":1}}],["istracermessage",{"2":{"179":2}}],["isextracted",{"2":{"179":4}}],["isn",{"2":{"106":1,"115":2,"179":3}}],["isnothing",{"2":{"7":1,"52":1,"86":1,"177":1,"179":1,"181":1}}],["issues",{"2":{"128":2,"140":1}}],["issue",{"2":{"57":1,"64":1,"66":1,"73":1,"128":2,"181":4}}],["islowercase",{"2":{"52":1,"177":1}}],["isvalid",{"2":{"21":1,"51":1,"52":4,"177":1,"179":4}}],["isa",{"2":{"10":4,"52":2,"86":1,"91":3,"104":4,"106":1,"177":2,"179":4}}],["is",{"0":{"77":1,"90":2},"2":{"0":7,"1":2,"2":4,"3":1,"5":2,"6":5,"7":18,"8":1,"10":11,"11":3,"12":1,"13":4,"15":1,"17":4,"19":4,"21":9,"22":2,"24":5,"28":5,"29":1,"30":3,"31":5,"32":1,"35":1,"36":1,"37":2,"39":1,"40":2,"41":4,"42":2,"43":1,"47":1,"48":1,"49":6,"51":8,"52":44,"53":1,"54":1,"55":9,"56":2,"57":2,"58":2,"60":4,"62":2,"63":7,"64":53,"67":21,"71":2,"73":5,"74":3,"75":1,"77":3,"78":1,"82":2,"83":2,"85":4,"86":5,"87":1,"89":1,"90":2,"91":1,"95":8,"96":5,"97":2,"99":3,"101":1,"102":2,"103":3,"104":12,"105":14,"106":16,"113":1,"115":3,"116":2,"118":3,"119":5,"122":1,"123":1,"124":3,"125":4,"126":2,"128":2,"129":2,"134":1,"135":3,"136":1,"138":1,"139":3,"140":2,"142":1,"143":1,"148":1,"150":1,"151":3,"155":1,"156":1,"157":1,"158":3,"159":1,"160":2,"161":1,"162":3,"163":1,"164":3,"165":2,"166":1,"167":1,"168":1,"169":1,"171":2,"172":4,"173":3,"175":1,"177":66,"178":9,"179":253,"180":5,"181":173}}],["dtm",{"2":{"181":2}}],["dynamically",{"2":{"179":2}}],["dynamic",{"2":{"177":1}}],["duplicates",{"2":{"181":1}}],["duplication",{"2":{"64":1,"181":1}}],["due",{"2":{"52":1,"179":2}}],["during",{"2":{"7":1,"52":3,"177":2,"179":3,"181":1}}],["drawn",{"2":{"181":5}}],["draft",{"2":{"158":1}}],["drafts",{"2":{"158":1}}],["drafteremailbrief",{"0":{"158":1}}],["driven",{"2":{"179":1}}],["drives",{"2":{"177":1}}],["drive",{"2":{"106":1}}],["dry",{"2":{"90":4,"179":22}}],["drops",{"2":{"52":1,"177":1}}],["dr",{"2":{"39":1,"112":2}}],["d",{"2":{"30":1,"31":1,"77":1,"88":1,"181":2}}],["dllama",{"2":{"29":3}}],["dspy",{"2":{"21":1,"52":1,"177":1}}],["datetime",{"2":{"179":4}}],["date",{"2":{"112":1}}],["dates",{"2":{"112":1}}],["datadeps",{"2":{"181":2}}],["datastructtype",{"2":{"179":1}}],["dataset",{"2":{"6":1,"89":2,"169":1}}],["data=",{"2":{"179":1}}],["data>",{"2":{"142":4,"143":4,"172":4}}],["datamessage",{"2":{"10":2,"45":2,"46":1,"47":1,"102":1,"104":2,"179":13}}],["dataframerowsourcecontextquestionanswerretrieval",{"2":{"7":1}}],["dataframe",{"2":{"7":11,"13":1,"24":1,"179":2}}],["dataframeswhat",{"2":{"7":1}}],["dataframesmeta",{"2":{"1":1,"2":1}}],["dataframes",{"2":{"1":1,"2":3,"5":1,"13":1,"24":1,"112":2,"179":2,"181":1}}],["database",{"2":{"2":1,"5":2,"6":1,"7":11,"124":2}}],["databricks",{"0":{"29":1},"2":{"0":1,"29":9,"64":1,"179":16,"181":1}}],["databricksopenaischema",{"2":{"0":1,"29":2,"179":3}}],["data",{"0":{"19":1,"71":1},"2":{"0":2,"2":4,"5":5,"6":4,"7":34,"8":2,"10":1,"19":3,"22":1,"24":6,"45":1,"52":9,"58":4,"60":3,"63":1,"71":7,"83":1,"102":1,"104":1,"106":2,"112":1,"142":6,"143":6,"145":6,"147":1,"157":5,"162":1,"164":6,"166":1,"169":1,"172":4,"177":18,"179":22,"181":3}}],["damaging",{"2":{"88":1}}],["day",{"2":{"77":1}}],["dashboard",{"2":{"76":1,"181":1}}],["dashboards",{"2":{"58":1}}],["dance",{"2":{"67":1,"179":1}}],["danced",{"2":{"67":1,"179":1}}],["dangerous",{"2":{"35":1,"179":1}}],["darkness",{"2":{"35":1}}],["daphodil",{"2":{"18":1,"179":1}}],["dall",{"2":{"10":1,"104":1,"179":5}}],["diagnostics",{"2":{"181":1}}],["diagram",{"0":{"61":1},"1":{"62":1},"2":{"60":1}}],["dimensionality",{"2":{"181":4}}],["dimension",{"2":{"181":10}}],["diligent",{"2":{"157":1}}],["dilemma",{"2":{"12":1}}],["dir",{"2":{"91":2,"179":19}}],["direct",{"2":{"152":1}}],["directly",{"2":{"52":1,"62":2,"64":4,"67":1,"76":1,"87":2,"103":1,"118":2,"123":1,"125":1,"179":8,"181":8}}],["directory",{"2":{"24":3,"91":1,"179":11}}],["diverse",{"2":{"125":1}}],["divisible",{"2":{"181":1}}],["division",{"2":{"67":1,"179":1}}],["divides",{"2":{"63":1}}],["div",{"2":{"67":1,"179":6,"181":1}}],["div>",{"2":{"67":1,"179":6,"181":1}}],["digits",{"2":{"52":2,"86":1,"177":2}}],["digits=1",{"2":{"7":1}}],["didn",{"2":{"177":1}}],["did",{"2":{"24":1,"106":1}}],["disables",{"2":{"179":1}}],["disable",{"2":{"179":1}}],["disabled",{"2":{"64":1,"181":1}}],["disney",{"2":{"67":2,"179":2}}],["disk",{"2":{"63":1,"87":2,"103":1,"179":4,"181":1}}],["displayed",{"2":{"179":1}}],["displaysize",{"2":{"179":1,"181":2}}],["display",{"2":{"13":1,"24":1,"58":1,"64":1,"85":1,"179":2,"181":1}}],["dispatching",{"2":{"60":1,"67":1,"179":1,"181":32}}],["dispatches",{"2":{"52":1,"58":1,"64":1,"177":1,"181":1}}],["dispatched",{"2":{"52":1,"177":1}}],["dispatch",{"2":{"13":1,"24":1,"42":1,"60":2,"61":4,"62":2,"64":1,"67":2,"100":1,"103":1,"166":2,"167":2,"177":1,"179":6,"181":3}}],["distinct",{"2":{"151":1,"152":1}}],["distinguished",{"2":{"166":1,"167":1}}],["distinguish",{"2":{"67":1,"179":1}}],["dist",{"2":{"67":6,"179":6}}],["distributed",{"2":{"177":1}}],["distributing",{"2":{"169":1}}],["distributions",{"2":{"168":1}}],["distribution",{"2":{"58":1,"177":2}}],["distract",{"2":{"41":1}}],["distraction",{"2":{"11":1}}],["distances",{"2":{"67":1,"179":1}}],["distance",{"2":{"8":1,"16":2,"66":3,"67":12,"179":15,"181":10}}],["discounted",{"2":{"181":2}}],["discovery",{"2":{"118":1}}],["discovered",{"2":{"118":2}}],["discover",{"2":{"10":1,"41":1,"58":3,"61":1,"64":2,"103":1,"104":1,"177":1,"181":2}}],["discrimination",{"2":{"179":2}}],["discrepancies",{"2":{"138":1}}],["discrete",{"2":{"10":1,"104":1}}],["discussed",{"2":{"151":2}}],["discuss",{"2":{"30":1,"31":1}}],["discussions",{"2":{"151":1}}],["discussion",{"2":{"11":1,"179":1}}],["differs",{"2":{"106":1}}],["differ",{"2":{"10":1,"104":1,"179":1}}],["differences",{"2":{"179":1}}],["difference",{"2":{"6":1,"7":2,"67":1,"104":1,"179":1,"181":1}}],["differently",{"2":{"10":1,"49":1,"86":1,"104":1,"179":1}}],["different",{"2":{"6":1,"7":2,"22":1,"52":4,"64":1,"66":1,"87":1,"128":2,"158":2,"165":1,"166":1,"167":1,"173":1,"177":5,"179":10,"181":8}}],["dict=parameters",{"2":{"181":1}}],["dict=dict",{"2":{"181":1}}],["dicts",{"2":{"179":1}}],["dictates",{"2":{"64":1,"181":3}}],["dictionaries",{"2":{"42":1,"100":1}}],["dictionary",{"2":{"15":1,"52":1,"58":1,"166":1,"167":1,"179":17,"181":1}}],["dict",{"2":{"6":4,"7":2,"58":1,"86":1,"90":3,"91":1,"105":3,"106":9,"179":38,"181":13}}],["doing",{"2":{"179":1}}],["dollar",{"2":{"89":1}}],["dolphin",{"2":{"37":1}}],["domluna",{"2":{"181":1}}],["domain",{"2":{"124":1,"139":1}}],["domains",{"2":{"55":4,"178":4,"181":6}}],["dominating",{"2":{"23":1,"26":1}}],["dot",{"2":{"16":1,"179":2}}],["double",{"2":{"11":1,"71":1,"79":1,"166":1,"167":1,"179":1}}],["doewhat",{"2":{"7":1}}],["doe",{"2":{"7":6}}],["doesn",{"2":{"179":2}}],["does",{"0":{"77":1},"2":{"2":1,"7":1,"10":1,"36":1,"41":1,"49":1,"52":2,"64":1,"71":2,"86":1,"88":1,"90":1,"104":1,"119":2,"128":1,"129":1,"177":1,"179":16,"181":7}}],["don",{"2":{"6":1,"8":1,"24":1,"37":1,"39":1,"101":1,"106":1,"108":3,"112":1,"113":1,"115":3,"116":3,"118":1,"150":2,"151":1,"152":1,"165":1,"167":1,"169":1,"173":1,"179":6,"181":2}}],["done",{"2":{"2":1,"7":1,"52":1,"58":1,"64":1,"84":1,"105":1,"106":1,"138":3,"139":3,"140":3,"177":2,"179":10,"181":1}}],["downstream",{"2":{"86":1,"95":1}}],["downloads",{"2":{"43":1,"179":6}}],["downloaded",{"2":{"22":1}}],["download",{"2":{"10":1,"24":1,"37":1,"43":2,"83":2,"104":1,"179":10,"181":1}}],["down",{"2":{"2":1,"60":1,"67":1,"129":1,"179":1}}],["do",{"0":{"8":1,"88":1},"2":{"2":1,"6":1,"7":4,"10":1,"11":2,"12":3,"13":3,"19":2,"20":1,"21":2,"23":1,"24":1,"26":1,"34":1,"35":1,"36":1,"41":1,"46":1,"51":2,"52":6,"60":2,"67":1,"72":2,"73":2,"74":1,"81":1,"85":1,"86":2,"87":1,"88":1,"93":2,"104":1,"106":6,"110":1,"116":1,"128":2,"129":2,"130":1,"150":3,"151":1,"165":1,"169":1,"173":1,"177":6,"179":28,"181":2}}],["doc9",{"2":{"58":1}}],["doc2",{"2":{"58":1}}],["doc5",{"2":{"58":1}}],["doc15",{"2":{"58":1}}],["doc8",{"2":{"58":1}}],["doc$i",{"2":{"58":1}}],["doc",{"2":{"46":2,"64":4,"179":5,"181":4}}],["doctor1",{"2":{"7":1}}],["doctorwhat",{"2":{"7":2}}],["doctor",{"2":{"7":2}}],["documenttermmatrix",{"2":{"179":1,"181":6}}],["documented",{"2":{"60":1}}],["document",{"0":{"45":1},"2":{"2":1,"7":1,"10":1,"45":1,"61":1,"64":9,"112":1,"179":5,"181":21}}],["documents",{"0":{"46":1},"2":{"2":1,"7":1,"46":1,"57":2,"58":2,"64":3,"67":2,"138":1,"179":6,"181":16}}],["documentation",{"2":{"1":1,"19":1,"32":1,"55":1,"58":1,"64":1,"72":1,"93":1,"100":1,"106":1,"112":1,"122":1,"178":1,"179":8,"181":1}}],["docstring",{"2":{"79":1,"88":1,"106":1,"179":7,"181":1}}],["docstrings",{"2":{"19":1,"60":1,"145":1,"179":1}}],["docs",{"2":{"2":2,"21":1,"24":1,"46":1,"61":1,"64":6,"70":1,"75":2,"106":6,"179":9,"181":33}}],["dplyr",{"2":{"2":3}}],["degrees",{"2":{"179":8}}],["denote",{"2":{"150":1}}],["declaration",{"2":{"179":4}}],["declarations",{"2":{"140":1}}],["decoded",{"2":{"179":1}}],["decodes",{"2":{"179":1}}],["decode",{"2":{"106":1,"179":4}}],["decision",{"2":{"151":9}}],["decisions",{"2":{"6":1,"151":5}}],["decides",{"2":{"181":1}}],["decide",{"2":{"17":1,"18":1,"135":1}}],["deduplicate",{"2":{"64":1,"181":1}}],["dedicated",{"2":{"1":1,"23":1,"26":1,"104":1,"151":1}}],["deviations",{"2":{"140":1}}],["device",{"2":{"41":1}}],["dev",{"2":{"67":1,"179":1}}],["developers",{"2":{"179":1}}],["developing",{"2":{"58":1}}],["development",{"2":{"58":1,"118":1}}],["depot",{"2":{"73":1}}],["depth",{"2":{"55":3,"178":3}}],["depend",{"2":{"179":1}}],["dependencies",{"2":{"24":1,"56":1}}],["depends",{"2":{"13":1}}],["depending",{"2":{"10":1,"64":2,"75":1,"104":1,"162":1,"179":1,"181":2}}],["deem",{"2":{"124":1}}],["deemed",{"2":{"52":1,"179":1}}],["deepseek",{"2":{"179":6}}],["deepseekopenaischema",{"2":{"179":2}}],["deepdive",{"0":{"63":1}}],["deeper",{"2":{"62":2}}],["deep",{"2":{"41":1,"129":1,"130":1,"159":1,"161":1,"168":1,"172":1}}],["democards",{"2":{"67":1,"179":1}}],["demonstrate",{"2":{"52":1,"177":1}}],["demanding",{"2":{"28":1}}],["delim",{"2":{"179":2}}],["delicious",{"2":{"31":2,"106":8}}],["dels",{"2":{"63":1}}],["delay=2",{"2":{"52":1,"177":1}}],["delay",{"2":{"21":1,"51":1,"52":5,"177":7,"179":1}}],["delete",{"2":{"2":1,"4":1,"73":1}}],["def2",{"2":{"181":1}}],["def",{"2":{"181":7}}],["defauls",{"2":{"179":1}}],["defaults",{"2":{"52":10,"56":1,"60":1,"63":1,"64":19,"67":4,"177":17,"179":78,"181":30}}],["default",{"0":{"84":1},"2":{"16":1,"37":1,"42":1,"52":2,"55":7,"58":3,"60":1,"64":41,"67":1,"84":2,"95":1,"104":1,"105":1,"106":1,"177":1,"178":7,"179":59,"181":103}}],["defining",{"2":{"60":3}}],["definitions",{"2":{"179":2}}],["definition",{"2":{"52":1,"128":1,"169":7,"179":2}}],["defines",{"2":{"179":5,"181":4}}],["defined",{"0":{"18":1},"2":{"18":1,"52":1,"62":1,"63":1,"102":1,"103":2,"151":1,"160":1,"177":1,"179":18,"181":3}}],["define",{"2":{"2":1,"10":1,"19":2,"24":1,"37":1,"42":1,"52":1,"64":3,"86":2,"104":1,"105":1,"106":2,"138":1,"177":1,"179":14,"181":3}}],["deferring",{"2":{"52":1,"177":1}}],["deferred",{"2":{"10":1,"49":2,"52":2,"104":1,"177":3}}],["defer",{"2":{"17":1}}],["destination",{"2":{"179":1}}],["descending",{"2":{"110":1}}],["descriptive",{"2":{"150":2,"151":1}}],["description=>",{"2":{"179":2}}],["description=sig",{"2":{"106":2}}],["descriptions",{"2":{"18":1,"179":30}}],["description",{"0":{"153":1,"154":1},"1":{"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1},"2":{"13":1,"18":1,"24":4,"42":1,"87":2,"106":10,"108":1,"110":1,"112":1,"113":1,"115":1,"116":1,"118":1,"119":1,"120":1,"122":1,"123":1,"124":1,"125":1,"126":1,"128":1,"129":1,"130":1,"132":1,"134":1,"135":1,"136":1,"138":1,"139":1,"140":1,"142":2,"143":2,"145":1,"147":1,"148":1,"150":3,"151":1,"152":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":5,"171":1,"172":1,"173":1,"175":1,"176":1,"179":41}}],["describes",{"2":{"134":1,"136":1,"156":1}}],["described",{"2":{"124":1,"138":1}}],["describe",{"2":{"20":2,"43":1,"150":1,"151":2,"164":1,"166":1,"172":1,"179":6}}],["despite",{"0":{"73":2},"2":{"179":1}}],["desired",{"2":{"66":2,"138":1,"140":1,"177":1}}],["designed",{"2":{"0":1,"10":4,"49":1,"52":2,"56":1,"60":2,"87":1,"104":4,"106":1,"177":2,"179":5}}],["deserialize",{"2":{"2":1,"179":1}}],["debugging",{"2":{"97":1,"179":16,"181":1}}],["debug",{"2":{"2":1,"64":1,"181":1}}],["determining",{"2":{"179":1}}],["determines",{"2":{"98":1,"179":1}}],["determine",{"2":{"0":1,"4":1,"7":1,"156":1}}],["detects",{"2":{"179":3}}],["detected",{"2":{"179":1}}],["detect",{"2":{"179":2}}],["detachment",{"2":{"12":2}}],["detail=",{"2":{"179":1}}],["detailorientedtask",{"0":{"157":1}}],["detail",{"2":{"64":1,"79":1,"128":1,"129":1,"142":1,"143":1,"145":1,"157":2,"179":14,"181":1}}],["details",{"2":{"2":1,"10":2,"24":1,"37":1,"49":1,"52":2,"63":1,"64":9,"75":1,"103":2,"104":2,"106":2,"122":1,"123":1,"126":1,"142":1,"143":1,"145":1,"169":1,"177":8,"179":10,"181":30}}],["detailed",{"2":{"0":1,"52":2,"118":1,"138":1,"177":4}}],["aaazzam",{"2":{"179":1}}],["aai",{"2":{"11":2,"96":3,"179":11}}],["axolotl",{"2":{"89":1}}],["a>",{"2":{"67":1,"179":6,"181":1}}],["away",{"2":{"52":1,"67":1,"73":1,"177":1,"179":1}}],["awareness",{"2":{"64":1,"181":2}}],["aware",{"2":{"49":1,"57":1,"66":1}}],["acronyms",{"2":{"124":1}}],["across",{"2":{"52":1,"62":2,"64":2,"79":1,"106":1,"177":2,"179":2,"181":5}}],["achievable",{"2":{"67":1,"179":1}}],["achieve",{"2":{"34":1,"67":3,"81":1,"86":1,"177":1,"179":3}}],["acts",{"2":{"179":1}}],["action",{"2":{"151":1,"177":2}}],["actionable",{"2":{"138":1,"139":1,"140":1,"148":1,"151":1}}],["active",{"2":{"52":13,"177":17}}],["act",{"2":{"85":1,"90":1,"152":1,"179":1}}],["actually",{"2":{"28":1,"36":2,"128":1,"129":1,"169":1,"179":1}}],["actual",{"2":{"24":2,"52":1,"128":1,"129":1,"130":1,"169":1,"177":2}}],["accumulate",{"2":{"181":1}}],["accuracy",{"2":{"58":1,"138":1,"142":1,"143":1,"145":1,"181":5}}],["accurately",{"2":{"140":1,"148":1,"156":1,"176":1}}],["accurate",{"2":{"23":1,"26":1,"179":1}}],["account",{"2":{"72":2,"74":1,"75":2,"76":1,"93":3}}],["according",{"2":{"67":1,"179":2}}],["accesor",{"2":{"181":1}}],["accesses",{"2":{"179":1}}],["accessed",{"2":{"87":1,"179":1}}],["accessible",{"2":{"162":1,"179":1}}],["accessing",{"2":{"72":1,"179":9}}],["accessors",{"2":{"181":1}}],["accessor",{"2":{"52":4,"177":2,"179":2}}],["access",{"0":{"70":1,"81":1},"2":{"21":1,"28":1,"31":1,"45":1,"48":1,"49":1,"51":1,"52":3,"56":1,"73":1,"81":2,"83":1,"86":1,"93":1,"98":1,"99":1,"108":1,"115":1,"116":1,"177":5,"179":25,"181":7}}],["accepts",{"2":{"52":3,"106":1,"177":4}}],["accept",{"2":{"52":3,"177":4,"181":1}}],["affection",{"2":{"179":1}}],["affects",{"2":{"8":1}}],["after",{"2":{"24":1,"52":5,"64":2,"67":3,"74":1,"86":1,"87":1,"95":1,"150":1,"151":1,"165":1,"173":1,"177":3,"179":11,"181":4}}],["amount",{"2":{"179":1}}],["among",{"2":{"169":1}}],["ambiguities",{"2":{"139":1}}],["amazing",{"2":{"100":1}}],["amazingly",{"2":{"22":1}}],["am",{"2":{"31":1,"41":1,"106":1,"179":6}}],["amp",{"0":{"4":1,"5":1,"6":1},"2":{"2":1,"3":1,"6":1,"7":1,"64":4,"181":4}}],["ah",{"2":{"12":1,"179":1}}],["administrator",{"2":{"168":1}}],["adhere",{"2":{"179":2}}],["adheres",{"2":{"140":1}}],["adherence",{"2":{"138":2,"142":1,"143":1,"145":1}}],["adapted",{"2":{"115":1,"116":1,"123":1,"125":1,"126":1}}],["adapt",{"2":{"89":1}}],["advisable",{"2":{"181":1}}],["advice",{"2":{"37":1,"67":2,"179":2}}],["advantages",{"2":{"58":1}}],["advancements",{"2":{"58":1}}],["advance",{"2":{"52":1,"177":1}}],["advancedgenerator",{"2":{"64":1,"179":1,"181":3}}],["advancedretriever",{"2":{"62":3,"64":4,"179":1,"181":7}}],["advanced",{"0":{"12":1,"35":1,"41":1},"2":{"48":1,"55":2,"64":3,"97":1,"112":1,"178":2,"179":1,"181":4}}],["adjectives",{"2":{"31":2,"106":8}}],["adjustments",{"2":{"138":2,"140":1}}],["adjusts",{"2":{"39":1,"41":1,"179":1}}],["adjust",{"2":{"24":1,"49":1,"169":1}}],["addresses",{"2":{"140":1}}],["addressed",{"2":{"128":1,"139":1}}],["address",{"2":{"128":1,"138":1,"169":1,"179":4}}],["addded",{"2":{"64":1,"181":1}}],["adding",{"2":{"64":1,"66":1,"106":1,"140":1,"151":1,"179":3,"181":1}}],["additionalproperties",{"2":{"179":1}}],["additional",{"2":{"52":1,"54":1,"60":1,"64":13,"95":1,"115":1,"116":1,"124":2,"150":1,"177":4,"179":41,"181":22}}],["addition",{"2":{"10":2,"18":1,"31":1,"60":1,"64":1,"104":1,"165":4,"173":4,"179":2,"181":2}}],["added",{"2":{"24":1,"37":1,"52":1,"64":1,"67":2,"177":1,"179":6,"181":5}}],["adds",{"2":{"11":1,"177":1,"179":1,"181":3}}],["add",{"2":{"8":3,"11":1,"13":2,"20":1,"24":7,"32":1,"39":1,"42":1,"47":1,"51":1,"52":3,"64":9,"78":1,"81":2,"87":2,"90":1,"94":1,"106":2,"124":1,"150":1,"177":9,"179":15,"181":34}}],["agreements",{"2":{"158":1}}],["agreed",{"2":{"151":2}}],["agnostic",{"2":{"90":1}}],["agents",{"2":{"48":1,"181":3}}],["agentic",{"2":{"48":1,"52":1,"177":2,"180":1}}],["agent",{"0":{"21":1,"48":1},"1":{"49":1,"50":1,"51":1,"52":1},"2":{"21":1,"52":1,"177":2,"179":1}}],["agenttools",{"0":{"177":1},"2":{"10":3,"21":1,"48":3,"52":6,"66":1,"86":1,"104":2,"177":69,"179":35,"180":2}}],["age",{"2":{"19":2,"179":14}}],["against",{"2":{"58":1,"64":1,"179":1,"181":1}}],["again",{"2":{"11":1,"87":1,"179":2}}],["auditing",{"2":{"179":2}}],["audience",{"2":{"138":5,"160":5,"162":2,"169":2}}],["authorization",{"2":{"179":2}}],["authentication",{"2":{"179":3}}],["auth",{"2":{"179":2}}],["auto",{"2":{"52":5,"138":1,"139":1,"140":1,"177":1,"179":11}}],["automatically",{"2":{"17":1,"24":1,"49":2,"52":2,"57":1,"58":1,"63":1,"73":1,"78":1,"91":6,"106":3,"179":15,"181":1}}],["automatic",{"0":{"51":1,"91":1},"2":{"10":1,"49":1,"52":1,"104":1,"106":1,"179":1}}],["augment",{"2":{"124":1}}],["augmented",{"0":{"1":1},"1":{"2":1},"2":{"1":1,"56":1,"64":2,"180":1,"181":3}}],["avg",{"2":{"7":2}}],["average",{"2":{"7":1,"64":1,"119":1,"181":3}}],["available",{"2":{"6":1,"10":1,"13":2,"23":2,"24":4,"26":2,"32":2,"61":1,"63":2,"64":4,"73":1,"83":2,"103":1,"104":1,"106":1,"134":1,"136":1,"150":1,"179":23,"181":7}}],["avoiding",{"2":{"58":1,"118":1}}],["avoided",{"2":{"11":1}}],["avoid",{"2":{"2":1,"42":1,"52":2,"64":1,"67":1,"74":1,"96":1,"128":1,"129":1,"166":1,"167":1,"179":3,"181":5}}],["april",{"2":{"15":1}}],["apostrophes",{"2":{"181":1}}],["apos",{"2":{"7":12}}],["appends",{"2":{"179":3}}],["append",{"2":{"177":1}}],["appended",{"2":{"52":1,"179":2,"181":1}}],["approximates",{"2":{"177":2}}],["appropriate",{"2":{"134":1,"136":3,"148":1,"179":1}}],["approach>",{"2":{"172":4}}],["approach",{"2":{"52":1,"104":1,"122":1,"164":4,"166":2,"167":1,"172":4,"177":1,"181":3}}],["appreciate",{"2":{"12":1}}],["applying",{"2":{"177":1,"181":1}}],["apply",{"2":{"64":1,"67":1,"142":1,"179":4,"181":2}}],["apples",{"2":{"179":2}}],["apple",{"2":{"31":2,"37":1,"106":8,"179":1}}],["applicable",{"2":{"64":1,"152":1,"181":2}}],["applications",{"2":{"10":1,"56":3,"57":1,"58":1,"64":1,"108":1,"112":1,"113":1,"115":1,"116":1,"118":1,"119":1,"120":1,"122":1,"123":1,"125":1,"126":1,"161":1,"165":1,"173":1,"181":1}}],["application",{"2":{"2":1,"58":1,"98":1,"99":1}}],["applied",{"2":{"10":1,"49":1,"52":1,"57":1,"67":1,"104":1,"177":1,"179":13,"181":1}}],["applies",{"2":{"2":1,"63":1,"67":1,"177":2,"179":1}}],["app",{"2":{"4":1,"83":1,"165":1,"173":1}}],["apikey",{"0":{"73":1}}],["apitools",{"0":{"53":1,"178":1},"1":{"54":1,"55":1},"2":{"53":2,"55":1,"178":4,"179":2,"180":1}}],["apis",{"0":{"23":1,"25":1,"27":1},"1":{"26":1,"27":1,"28":1,"29":1,"30":1,"31":1},"2":{"23":1,"36":1,"53":1,"69":1,"70":1,"77":1,"98":1,"101":1,"180":1}}],["api",{"0":{"23":1,"72":1,"73":2,"78":1,"79":1,"80":2,"90":1,"99":1},"2":{"0":6,"2":1,"7":1,"8":1,"10":2,"20":1,"21":3,"23":10,"25":1,"26":4,"27":8,"28":1,"29":5,"30":2,"31":2,"32":4,"37":1,"42":1,"51":3,"52":8,"54":2,"55":5,"56":1,"62":5,"64":34,"71":3,"72":3,"73":5,"75":2,"76":1,"78":10,"79":4,"80":1,"83":1,"90":2,"91":3,"93":9,"98":2,"99":3,"100":2,"104":4,"105":7,"106":7,"177":10,"178":11,"179":293,"180":1,"181":69}}],["abbreviations",{"2":{"124":1}}],["ab",{"2":{"67":1,"179":2}}],["abcabc",{"2":{"67":1,"179":1}}],["abc",{"2":{"52":3,"67":7,"104":2,"177":3,"179":9,"181":7}}],["ability",{"2":{"31":1,"115":1,"116":1}}],["abilities",{"2":{"23":1,"26":1}}],["about",{"2":{"13":2,"24":1,"37":1,"49":1,"64":1,"86":1,"90":2,"91":2,"102":1,"105":1,"138":1,"159":1,"160":1,"161":1,"162":2,"163":1,"165":1,"166":1,"167":1,"168":1,"171":1,"173":1,"179":19,"181":4}}],["above",{"2":{"10":1,"13":2,"15":1,"17":1,"28":1,"57":1,"64":1,"66":1,"77":1,"104":2,"105":1,"110":1,"119":1,"128":1,"129":1,"130":1,"150":1,"158":1,"166":1,"167":1,"169":1,"177":1,"179":5,"181":2}}],["abs",{"2":{"52":1,"177":1}}],["absence",{"2":{"12":1}}],["abstractfloat",{"2":{"181":4}}],["abstractextracteddata",{"2":{"179":1}}],["abstractembedder",{"2":{"61":2,"64":2,"181":10}}],["abstractdocumenttermmatrix",{"2":{"181":1}}],["abstractdocumentindex",{"2":{"64":4,"181":17}}],["abstractdict",{"2":{"179":3}}],["abstractdatamessage",{"2":{"179":1}}],["abstractprocessor=keywordsprocessor",{"2":{"181":1}}],["abstractprocessor",{"2":{"64":2,"181":7}}],["abstractpromptschema",{"2":{"0":1,"52":1,"98":1,"99":1,"100":2,"177":1,"179":6}}],["abstractpostprocessor",{"2":{"61":1,"64":2,"181":4}}],["abstractstreamflavor",{"2":{"179":1}}],["abstractstreamcallback",{"2":{"179":2}}],["abstractstring=",{"2":{"52":4,"67":2,"179":8,"181":1}}],["abstractstring",{"2":{"10":2,"52":6,"55":8,"61":3,"64":13,"67":15,"104":2,"177":4,"178":10,"179":102,"181":89}}],["abstractsharegptschema",{"2":{"179":1}}],["abstractscoringmethod",{"2":{"177":4}}],["abstractsimilarityfinder",{"2":{"61":1,"64":1,"181":11}}],["abstractgenerationmethod",{"2":{"181":1}}],["abstractgenerator",{"2":{"61":3,"64":4,"179":1,"181":8}}],["abstractgoogleschema",{"2":{"0":1,"179":2}}],["abstracttracer",{"2":{"179":1}}],["abstracttracermessage",{"2":{"179":2}}],["abstracttracerschema",{"2":{"179":13}}],["abstracttrees",{"2":{"52":1,"177":1,"181":1}}],["abstracttagfilter",{"2":{"61":1,"64":1,"181":8}}],["abstracttagger",{"2":{"61":2,"64":4,"181":12}}],["abstractragconfig",{"2":{"61":3,"64":2,"181":3}}],["abstractragresult",{"2":{"60":2,"61":4,"63":1,"64":4,"181":14}}],["abstractretrievalmethod",{"2":{"181":1}}],["abstractretriever",{"2":{"60":2,"61":2,"64":4,"179":1,"181":9}}],["abstractrefiner",{"2":{"61":1,"64":4,"181":8}}],["abstractrephraser",{"2":{"61":1,"64":2,"181":9}}],["abstractreranker",{"2":{"60":1,"61":2,"64":2,"181":10}}],["abstractindexbuilder",{"2":{"61":2,"64":2,"179":1,"181":7}}],["abstractindex",{"2":{"60":1}}],["abstractcodeblock",{"2":{"179":1}}],["abstractcodeoutcome",{"2":{"52":2,"177":2}}],["abstractcontextbuilder",{"2":{"61":1,"64":2,"181":4}}],["abstractchar",{"2":{"67":1,"179":1}}],["abstractchatmessage",{"2":{"24":2,"87":1,"105":1,"179":3}}],["abstractchunker",{"2":{"61":1,"64":2,"181":7}}],["abstractchunkindex",{"2":{"61":4,"64":1,"179":1,"181":17}}],["abstractcandidatechunks",{"2":{"60":1,"179":1,"181":6}}],["abstractvector",{"2":{"52":1,"55":2,"64":6,"67":1,"177":4,"178":2,"179":47,"181":54}}],["abstractmatrix",{"2":{"181":13}}],["abstractmanagedschema",{"2":{"0":1,"179":2}}],["abstractmultiindex",{"2":{"179":1,"181":2}}],["abstractmessage",{"2":{"52":2,"58":1,"85":1,"86":1,"90":2,"101":1,"102":1,"177":6,"179":98,"181":1}}],["abstractannotationstyler",{"2":{"181":4}}],["abstractannotatednode",{"2":{"181":5}}],["abstractanswerer",{"2":{"61":1,"64":2,"181":4}}],["abstractanthropicschema",{"2":{"0":1,"179":6}}],["abstractarray",{"2":{"10":1,"104":1}}],["abstractoutcomes",{"2":{"177":1}}],["abstractollamamanagedschema",{"2":{"0":1,"179":6}}],["abstractollamaschema",{"2":{"0":1,"179":3}}],["abstractopenaischema",{"2":{"0":9,"99":1,"100":1,"179":11}}],["abstract",{"2":{"0":1,"63":1,"64":2,"86":1,"106":2,"166":1,"167":1,"181":8}}],["able",{"2":{"2":1,"177":1}}],["arxiv",{"2":{"181":1}}],["arr",{"2":{"87":2,"179":2,"181":3}}],["arrays",{"2":{"166":1,"167":1,"179":1}}],["array",{"2":{"13":1,"22":1,"24":1,"45":1,"58":3,"67":3,"87":1,"179":8,"181":5}}],["arbitrary",{"2":{"86":1,"179":3}}],["art",{"2":{"69":1}}],["artificial",{"2":{"16":1}}],["articles",{"2":{"58":1,"179":2}}],["article",{"2":{"1":1}}],["arches",{"2":{"63":1}}],["arg2",{"2":{"179":1}}],["arg1",{"2":{"179":1}}],["argmin",{"2":{"67":2,"179":2}}],["argmax",{"2":{"67":1,"179":1}}],["args",{"2":{"52":5,"177":11,"179":1,"181":1}}],["argumenterror",{"0":{"73":2}}],["arguments",{"0":{"62":1,"80":1},"2":{"10":4,"12":1,"19":1,"21":1,"49":2,"52":10,"55":1,"60":2,"62":2,"64":17,"67":5,"96":1,"104":4,"106":2,"142":1,"143":1,"145":1,"147":1,"177":27,"178":1,"179":89,"181":39}}],["argument",{"2":{"6":1,"7":8,"10":2,"15":1,"21":2,"23":1,"24":1,"26":1,"39":1,"45":1,"51":2,"52":4,"58":2,"60":2,"67":1,"74":1,"85":2,"87":1,"104":2,"142":1,"143":1,"145":1,"177":5,"179":12,"181":1}}],["around",{"2":{"10":1,"60":1,"64":1,"67":1,"96":1,"100":1,"104":1,"169":1,"177":1,"179":5,"181":5}}],["areas",{"2":{"128":1}}],["are",{"2":{"0":1,"5":1,"6":1,"7":8,"10":1,"11":1,"12":1,"13":3,"17":1,"19":1,"21":1,"23":5,"24":12,"26":2,"27":3,"36":2,"37":1,"41":1,"49":3,"51":1,"52":12,"57":3,"58":4,"60":4,"61":1,"63":2,"64":11,"66":4,"67":6,"69":1,"70":1,"75":1,"83":1,"84":1,"86":2,"87":1,"90":1,"91":1,"98":2,"100":2,"101":2,"102":2,"103":2,"104":2,"105":4,"106":2,"110":2,"116":3,"118":1,"123":1,"124":1,"125":1,"126":1,"128":4,"134":1,"135":1,"136":3,"138":1,"140":2,"142":1,"143":1,"145":1,"148":1,"150":1,"151":2,"154":1,"155":1,"157":2,"158":1,"159":2,"160":1,"161":2,"162":2,"163":1,"164":1,"165":3,"166":1,"167":1,"168":2,"169":4,"171":1,"172":1,"173":3,"176":1,"177":14,"179":76,"181":41}}],["atop",{"2":{"179":1}}],["atomic",{"2":{"64":10,"181":29}}],["ate",{"2":{"31":1,"106":3,"179":1}}],["attribute",{"2":{"181":2}}],["attract",{"2":{"125":1}}],["attempted",{"2":{"52":1,"177":3}}],["attempts",{"2":{"49":1,"52":2,"86":1,"177":3}}],["attempt",{"2":{"21":1,"51":1,"52":2,"177":2}}],["attach",{"2":{"179":5}}],["attached",{"2":{"12":1,"35":1,"41":1,"179":2}}],["attachments",{"2":{"12":1}}],["attachment",{"2":{"12":1,"35":1,"179":3}}],["at",{"2":{"1":1,"6":1,"7":1,"21":2,"23":1,"27":1,"31":1,"32":1,"34":1,"36":1,"43":1,"48":1,"51":2,"52":5,"54":1,"60":1,"63":1,"64":4,"69":1,"71":1,"74":1,"84":1,"98":1,"103":1,"105":1,"113":2,"119":2,"152":1,"177":12,"179":23,"181":11}}],["aspect",{"2":{"175":1}}],["aspects",{"2":{"138":1,"139":1,"140":1,"165":1,"173":1}}],["as=",{"2":{"87":2,"103":1,"179":1}}],["assesses",{"2":{"181":2}}],["assess",{"2":{"138":1}}],["assertion",{"2":{"179":1}}],["assertions",{"2":{"21":1,"52":1,"177":1}}],["assert",{"2":{"52":1,"106":2,"177":1,"181":2}}],["assigning",{"2":{"169":1}}],["assign",{"2":{"112":1,"119":1}}],["assistance",{"2":{"23":1,"26":1,"42":1}}],["assistant",{"2":{"12":1,"34":1,"85":1,"90":1,"91":1,"103":1,"105":2,"108":1,"110":1,"115":1,"116":1,"119":2,"120":1,"122":1,"124":1,"126":1,"138":3,"139":7,"140":2,"148":1,"155":2,"156":1,"157":1,"179":8}}],["assistantask",{"0":{"155":1},"2":{"10":1,"103":4,"104":1,"105":3}}],["assist",{"2":{"22":1,"23":1,"26":1,"30":2,"31":1,"34":1,"85":1,"179":10}}],["associated",{"2":{"84":1,"105":1,"151":1,"179":5,"181":1}}],["assuming",{"2":{"64":1,"75":1,"77":1,"179":1,"181":3}}],["assumed",{"2":{"177":1,"179":1,"181":4}}],["assumes",{"2":{"37":1,"64":1,"179":5,"181":5}}],["assume",{"2":{"22":1,"74":1,"94":1,"177":1,"181":2}}],["asterisk",{"2":{"11":1}}],["asynchronous",{"0":{"14":1},"2":{"96":1,"179":5}}],["asyncmap",{"2":{"7":1,"14":3,"46":2,"64":1,"74":3,"96":1,"181":4}}],["async",{"2":{"7":1,"46":1,"179":1}}],["asks",{"2":{"130":1,"158":2}}],["ask=",{"2":{"52":1,"104":2,"105":2,"177":1}}],["asked",{"0":{"68":1},"1":{"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1},"2":{"37":1,"181":1}}],["asking",{"2":{"13":1,"24":2,"155":1,"159":1,"161":1,"163":1,"168":1,"171":1,"179":2}}],["ask",{"2":{"2":1,"13":4,"21":2,"23":1,"24":8,"26":1,"31":1,"34":1,"42":1,"51":2,"52":2,"57":1,"66":1,"103":3,"105":7,"129":1,"155":3,"159":3,"161":3,"163":3,"168":3,"171":3,"177":2,"179":6,"181":2}}],["as",{"2":{"0":1,"2":1,"6":1,"7":4,"10":9,"11":1,"15":1,"16":1,"17":1,"18":1,"20":1,"21":2,"23":5,"24":5,"26":2,"27":2,"29":3,"30":2,"31":4,"32":1,"34":1,"39":1,"42":2,"43":2,"47":1,"48":1,"49":2,"51":3,"52":13,"53":1,"54":1,"56":1,"58":2,"60":3,"63":1,"64":1,"67":15,"74":1,"78":3,"85":4,"86":4,"87":5,"88":1,"90":3,"91":1,"93":1,"96":2,"99":1,"102":1,"103":2,"104":7,"105":2,"106":12,"108":1,"112":1,"115":2,"116":1,"119":1,"122":2,"123":2,"128":3,"138":6,"139":1,"140":2,"142":3,"143":3,"145":3,"150":6,"151":4,"152":3,"156":2,"158":4,"160":2,"162":1,"165":3,"169":1,"173":3,"176":2,"177":28,"179":119,"181":34}}],["a",{"0":{"1":1,"4":1,"5":1,"6":1,"87":1,"88":1,"89":1},"1":{"2":1},"2":{"0":3,"1":2,"2":6,"3":3,"4":1,"5":2,"6":9,"7":16,"8":2,"10":14,"11":6,"12":7,"13":7,"15":3,"16":1,"17":4,"18":3,"19":6,"20":5,"21":6,"22":1,"23":3,"24":23,"25":1,"26":3,"28":2,"29":1,"30":3,"31":4,"32":1,"34":2,"35":2,"36":2,"37":1,"39":1,"40":1,"41":5,"42":3,"43":1,"45":1,"47":1,"48":1,"49":12,"51":3,"52":47,"55":2,"56":2,"57":6,"58":8,"60":6,"63":6,"64":42,"65":2,"66":12,"67":35,"73":2,"74":5,"75":1,"76":4,"77":8,"78":5,"83":3,"85":5,"86":14,"87":11,"89":7,"90":3,"91":4,"93":1,"95":2,"98":1,"99":2,"100":1,"101":4,"102":1,"103":8,"104":13,"105":6,"106":24,"108":1,"112":2,"115":1,"116":1,"118":4,"119":4,"120":4,"122":3,"123":3,"124":4,"125":1,"126":4,"128":4,"129":1,"130":1,"134":2,"136":2,"138":7,"139":7,"140":5,"142":2,"143":2,"145":2,"148":5,"150":9,"151":6,"152":3,"155":1,"156":7,"157":2,"158":5,"159":1,"160":3,"161":1,"162":5,"163":1,"164":1,"165":8,"166":2,"167":3,"168":1,"169":6,"171":1,"172":2,"173":8,"175":4,"176":1,"177":85,"178":2,"179":533,"181":216}}],["al",{"2":{"181":3}}],["algorithm",{"2":{"181":5}}],["algorithms",{"2":{"52":1,"58":1,"177":2}}],["alignment",{"2":{"142":1,"143":1,"145":1}}],["aligns",{"2":{"138":1,"179":2,"181":2}}],["aligned",{"2":{"123":1,"125":1,"181":1}}],["align",{"2":{"119":1,"138":1,"140":1,"179":7,"181":4}}],["aliased",{"2":{"31":1}}],["aliases",{"0":{"15":1},"2":{"15":5,"29":1,"37":1,"42":1,"179":34}}],["alias",{"2":{"7":1,"29":1,"30":1,"31":1,"33":1,"42":1,"106":2,"179":32,"181":1}}],["alexander",{"2":{"118":3}}],["almost",{"2":{"60":1}}],["alternative",{"2":{"124":1,"179":7}}],["alternatives",{"0":{"82":1},"2":{"70":1}}],["alternatively",{"2":{"24":1,"52":1,"83":1,"93":1,"177":2,"179":3}}],["alter",{"2":{"52":1,"179":1}}],["already",{"2":{"30":1,"31":1,"37":1,"64":1,"74":1,"83":1,"94":1,"177":1,"181":4}}],["always",{"2":{"23":1,"24":1,"26":1,"28":1,"52":2,"60":1,"66":1,"67":2,"71":1,"72":1,"76":1,"86":1,"87":2,"128":2,"136":1,"138":1,"139":1,"140":1,"167":1,"177":5,"179":6,"181":4}}],["also",{"2":{"2":1,"6":1,"7":2,"10":1,"12":1,"15":1,"18":2,"21":1,"22":1,"23":1,"24":4,"28":1,"29":2,"30":1,"31":1,"51":1,"52":8,"55":1,"64":7,"67":2,"79":1,"86":1,"87":1,"91":1,"104":1,"106":2,"128":1,"129":1,"130":1,"177":7,"178":1,"179":40,"181":19}}],["all=false",{"2":{"179":7}}],["all=true`",{"2":{"104":1}}],["all=true",{"2":{"2":1,"58":1,"64":2,"85":4,"86":1,"91":1,"104":1,"106":1,"179":20,"181":2}}],["alltagfilter",{"2":{"179":1,"181":4}}],["allocated",{"2":{"181":1}}],["allocations",{"2":{"181":1}}],["allocation",{"2":{"58":1}}],["allowing",{"2":{"56":1,"177":1,"179":2}}],["allow",{"2":{"49":1,"82":1,"106":1,"179":4,"181":1}}],["allowed",{"2":{"21":1,"52":1,"106":1,"177":2,"179":31}}],["allows",{"2":{"10":1,"21":1,"22":1,"25":1,"42":1,"49":3,"51":1,"52":2,"64":2,"76":1,"104":1,"177":4,"179":8,"181":2}}],["all",{"2":{"0":1,"2":1,"6":3,"7":9,"10":3,"11":2,"12":1,"13":1,"15":1,"19":1,"23":1,"24":1,"26":1,"35":1,"49":2,"52":16,"58":1,"60":1,"62":2,"63":1,"64":12,"67":1,"85":1,"86":1,"87":2,"90":4,"94":1,"97":1,"99":1,"100":1,"103":1,"104":3,"106":1,"112":1,"119":3,"128":2,"129":1,"151":2,"165":1,"166":1,"167":1,"169":2,"173":1,"176":1,"177":30,"179":72,"181":26}}],["along",{"2":{"0":1,"64":1,"138":1,"177":1,"181":2}}],["anonymous",{"2":{"166":1,"167":1}}],["another",{"2":{"11":1,"52":1,"64":3,"177":2,"179":1,"181":5}}],["ancient",{"2":{"67":1,"179":1}}],["ancestors",{"2":{"52":1,"177":5}}],["ancestor",{"2":{"52":1,"177":1}}],["annotation",{"2":{"181":3}}],["annotations",{"2":{"64":1,"166":1,"167":1,"181":3}}],["annotating",{"2":{"181":1}}],["annotatednode",{"2":{"179":1,"181":11}}],["annotated",{"2":{"64":6,"181":6}}],["annotates",{"2":{"64":1,"181":1}}],["annotater",{"2":{"64":6,"181":10}}],["annotate",{"2":{"10":1,"57":1,"58":1,"64":8,"179":3,"181":16}}],["animal",{"2":{"18":2,"86":2,"179":8}}],["ans",{"2":{"10":5,"95":1,"104":5}}],["answer=",{"2":{"181":4}}],["answer=answer",{"2":{"181":1}}],["answering",{"2":{"119":1,"142":1}}],["answered",{"2":{"64":1,"118":1,"151":1,"181":1}}],["answerer",{"2":{"62":1,"64":11,"181":17}}],["answers",{"2":{"3":1,"8":1,"56":1,"57":1,"108":1,"115":1,"116":1,"118":1,"122":2,"123":1,"138":1,"139":3,"140":1,"150":1,"159":2,"161":2,"168":2,"181":5}}],["answer",{"2":{"2":3,"5":1,"6":4,"7":4,"10":4,"11":2,"17":1,"21":3,"23":1,"24":6,"26":1,"31":1,"51":3,"52":16,"54":1,"55":4,"57":3,"58":7,"60":1,"61":2,"63":1,"64":33,"86":1,"103":2,"104":1,"105":4,"108":4,"115":20,"116":22,"118":6,"119":14,"120":7,"122":1,"123":1,"124":1,"135":1,"139":2,"140":3,"155":2,"159":2,"161":2,"163":2,"168":2,"171":2,"177":13,"178":4,"179":7,"181":103}}],["antropic",{"2":{"179":1}}],["antibiotics",{"2":{"118":2}}],["anti",{"2":{"7":1}}],["anthropicstream",{"2":{"179":3}}],["anthropicschema",{"2":{"0":1,"179":4}}],["anthropic",{"2":{"0":1,"69":1,"70":1,"142":1,"143":1,"171":1,"172":1,"173":1,"179":22}}],["analystthemesinresponses",{"0":{"152":1}}],["analystdecisionsintranscript",{"0":{"151":1}}],["analyst",{"2":{"150":1,"151":1}}],["analystchaptersintranscript",{"0":{"150":1}}],["analysis",{"2":{"6":1,"7":1,"17":1,"24":4,"52":1,"58":2,"152":1,"177":1}}],["analyzed",{"2":{"152":1}}],["analyze",{"2":{"7":1,"118":1,"125":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"151":1}}],["anytagfilter",{"2":{"179":1,"181":4}}],["anything",{"2":{"31":1,"34":1,"39":1,"40":1,"42":1,"150":1,"179":3,"181":1}}],["anymore",{"2":{"84":1}}],["anyone",{"2":{"72":1,"93":1}}],["anywhere",{"0":{"81":1},"2":{"22":1,"81":1,"83":1}}],["anyscale",{"2":{"8":1}}],["any",{"2":{"0":2,"2":1,"4":1,"6":2,"7":2,"10":2,"11":3,"13":1,"17":1,"18":4,"21":1,"23":2,"24":2,"25":1,"26":1,"28":1,"31":2,"32":1,"34":1,"35":1,"42":1,"49":3,"51":1,"52":13,"56":1,"60":2,"63":1,"64":1,"67":1,"72":1,"73":1,"77":1,"78":1,"81":1,"86":3,"87":3,"89":1,"90":2,"91":2,"93":1,"95":1,"100":1,"104":2,"105":1,"106":9,"110":1,"112":2,"113":1,"116":1,"118":1,"124":2,"128":1,"138":1,"139":1,"140":3,"150":2,"151":2,"152":1,"154":1,"164":1,"165":2,"166":1,"167":2,"169":1,"172":1,"173":2,"175":2,"177":10,"179":100,"181":23}}],["an",{"0":{"73":2,"74":1},"2":{"0":2,"2":3,"6":1,"7":3,"10":4,"12":1,"17":1,"19":1,"20":1,"21":1,"22":1,"32":1,"41":1,"42":2,"48":1,"49":3,"51":1,"52":13,"53":1,"54":2,"55":3,"56":1,"57":2,"58":4,"60":2,"61":1,"63":2,"64":11,"66":1,"67":5,"72":2,"73":1,"77":1,"78":1,"86":3,"89":2,"90":1,"93":3,"97":2,"98":1,"99":2,"100":1,"103":1,"104":4,"106":8,"108":1,"110":1,"115":2,"116":2,"119":5,"120":1,"122":1,"124":1,"126":1,"128":1,"129":2,"135":1,"136":1,"138":1,"140":1,"148":1,"152":1,"162":1,"166":1,"169":2,"175":1,"177":22,"178":3,"179":130,"181":34}}],["and",{"0":{"20":1,"23":1,"71":1},"2":{"0":6,"1":5,"2":12,"3":2,"4":2,"6":3,"7":17,"8":5,"10":13,"11":3,"12":3,"13":2,"16":2,"17":3,"18":1,"19":4,"21":9,"22":2,"23":6,"24":15,"26":2,"27":3,"28":2,"29":2,"30":3,"31":3,"32":2,"34":1,"35":2,"36":2,"37":4,"41":2,"42":5,"45":1,"47":1,"48":1,"49":11,"51":9,"52":58,"53":1,"54":2,"56":1,"57":1,"58":11,"60":7,"62":3,"63":5,"64":47,"65":2,"66":6,"67":10,"69":1,"70":1,"71":1,"72":2,"73":2,"74":3,"75":2,"76":2,"77":2,"78":1,"79":2,"81":1,"82":1,"83":3,"84":2,"85":1,"86":13,"87":6,"88":3,"89":1,"90":5,"91":4,"93":4,"94":1,"95":2,"96":2,"97":2,"98":2,"99":1,"100":2,"102":2,"103":5,"104":12,"105":10,"106":27,"108":1,"112":6,"113":1,"115":3,"116":4,"118":5,"119":3,"120":3,"122":2,"123":1,"124":3,"125":1,"126":1,"128":10,"129":4,"130":1,"134":2,"136":2,"138":16,"139":5,"140":10,"142":5,"143":4,"145":4,"147":1,"148":4,"150":17,"151":16,"152":3,"154":1,"155":2,"156":5,"157":2,"158":9,"159":3,"160":2,"161":2,"162":7,"163":2,"164":4,"165":5,"166":2,"167":3,"168":4,"169":10,"171":2,"172":3,"173":5,"175":1,"176":2,"177":98,"178":1,"179":245,"180":2,"181":190}}],["aims",{"2":{"181":4}}],["aimessage>",{"2":{"11":1,"179":1}}],["aimessage",{"2":{"2":1,"10":3,"12":2,"20":2,"22":1,"23":1,"24":1,"26":1,"30":1,"31":1,"34":1,"35":1,"36":1,"39":1,"40":1,"41":1,"42":1,"49":1,"52":6,"58":2,"60":1,"61":2,"85":2,"87":2,"95":2,"96":1,"98":2,"102":1,"104":3,"105":2,"177":11,"179":71}}],["aiagent",{"2":{"177":1}}],["aihelpme",{"2":{"87":1}}],["aitemplatemetadata",{"2":{"13":3,"24":2,"87":2,"179":14}}],["aitemplate",{"2":{"13":3,"24":4,"64":1,"90":2,"103":2,"105":2,"177":4,"179":17,"181":1}}],["aitemplates",{"0":{"24":1},"2":{"10":4,"13":4,"24":3,"87":1,"103":2,"104":3,"179":23,"181":2}}],["air",{"2":{"67":1,"179":1}}],["airetry",{"0":{"21":1},"2":{"10":1,"21":8,"49":3,"51":8,"52":13,"86":6,"104":1,"106":6,"177":14,"179":1}}],["airag",{"2":{"2":2,"6":1,"7":2,"10":1,"57":1,"58":3,"61":1,"62":1,"63":1,"64":7,"179":1,"181":25}}],["aiclassifier",{"2":{"86":1}}],["aiclassify",{"2":{"0":1,"10":2,"13":1,"17":1,"18":2,"52":1,"86":4,"104":1,"134":1,"177":7,"179":21}}],["aicodefixer",{"2":{"49":2,"52":9,"128":1,"129":1,"130":1,"177":31,"179":2,"180":1}}],["aicode",{"2":{"49":3,"52":16,"177":6,"179":13}}],["aicallblock",{"2":{"52":4,"177":13}}],["aicall",{"2":{"10":2,"21":9,"49":3,"51":9,"52":51,"104":2,"106":4,"177":100,"179":2}}],["aiimage",{"2":{"0":2,"10":2,"104":1,"179":8}}],["aiscan",{"0":{"43":1},"2":{"0":2,"10":2,"20":3,"43":1,"104":1,"177":6,"179":19}}],["aiextract",{"0":{"106":1},"2":{"0":1,"6":1,"10":2,"19":2,"31":2,"52":1,"64":3,"102":1,"104":2,"106":5,"142":1,"143":1,"145":1,"177":7,"179":39,"181":6}}],["aiembed",{"0":{"44":1},"1":{"45":1,"46":1,"47":1},"2":{"0":1,"10":2,"16":3,"22":3,"23":1,"27":1,"29":1,"30":1,"31":1,"45":2,"46":2,"47":1,"52":1,"64":2,"102":1,"104":2,"177":7,"179":26,"181":3}}],["aigenerate",{"0":{"33":1,"38":1,"80":1,"96":1,"105":1},"1":{"34":1,"35":1,"36":1,"39":1,"40":1,"41":1,"42":1},"2":{"0":1,"10":9,"12":4,"13":3,"14":2,"21":5,"22":2,"23":4,"24":1,"26":2,"27":2,"28":1,"29":2,"30":1,"31":1,"32":1,"34":1,"35":1,"37":1,"39":1,"40":2,"41":1,"42":2,"49":10,"51":5,"52":18,"64":6,"73":1,"74":1,"85":3,"86":6,"90":2,"91":3,"96":1,"97":1,"98":1,"104":11,"105":2,"106":11,"177":38,"179":63,"180":1,"181":16}}],["ai",{"0":{"10":1,"30":1,"31":1,"32":1,"37":1,"51":1,"95":1,"104":1},"1":{"33":1,"34":1,"35":1,"36":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1},"2":{"0":5,"1":1,"10":12,"11":1,"12":1,"14":1,"15":3,"16":1,"17":1,"21":4,"22":1,"23":2,"24":1,"27":2,"29":1,"30":2,"31":3,"32":2,"34":1,"36":1,"37":2,"49":16,"51":1,"52":20,"56":1,"57":1,"58":1,"64":6,"65":1,"66":2,"67":1,"69":2,"73":1,"81":1,"82":1,"83":1,"85":6,"87":2,"89":1,"90":3,"95":5,"96":3,"98":2,"100":1,"101":1,"102":3,"103":3,"104":13,"105":3,"106":8,"108":1,"115":2,"116":4,"118":1,"119":1,"122":1,"135":1,"138":4,"139":5,"140":2,"148":1,"150":1,"151":1,"155":1,"156":1,"157":1,"169":3,"177":51,"179":102,"181":14}}],["cc",{"2":{"181":1}}],["cn",{"2":{"67":1,"179":1}}],["cfg",{"2":{"61":1,"62":1,"64":9,"181":19}}],["cb",{"2":{"52":15,"177":3,"179":35}}],["cpp",{"0":{"28":1},"2":{"25":1,"28":3,"70":1,"98":1,"99":1,"179":1}}],["c",{"2":{"19":1,"28":2,"67":1,"74":2,"76":2,"177":1,"179":1,"181":2}}],["city",{"2":{"19":3}}],["ceo",{"2":{"152":1}}],["cents",{"2":{"77":2}}],["cent",{"2":{"75":1,"77":1}}],["celestial",{"2":{"67":2,"179":2}}],["celsius",{"2":{"19":2}}],["certainly",{"2":{"67":1,"179":1}}],["certain",{"2":{"0":1,"15":1,"86":1}}],["cumulative",{"2":{"181":2}}],["curr",{"2":{"181":3}}],["currently",{"2":{"23":1,"26":1,"52":1,"54":1,"61":1,"83":1,"177":2,"179":11}}],["currentweather",{"2":{"19":2}}],["current",{"2":{"19":2,"37":1,"52":1,"75":1,"86":1,"91":1,"94":1,"177":3,"179":10,"181":1}}],["curiosity",{"2":{"179":1}}],["customizing",{"2":{"177":1}}],["customized",{"2":{"150":1}}],["customize",{"2":{"52":1,"58":1,"60":4,"64":6,"84":1,"177":1,"181":8}}],["custom",{"0":{"25":1,"42":1},"1":{"26":1,"27":1,"28":1,"29":1,"30":1,"31":1},"2":{"52":1,"56":1,"60":5,"62":5,"64":13,"67":2,"86":2,"177":1,"179":7,"181":14}}],["customopenaischema",{"2":{"0":3,"23":2,"27":2,"28":1,"179":7}}],["cut",{"2":{"15":1}}],["crucial",{"2":{"179":1}}],["crunchy",{"2":{"31":2,"106":2}}],["craft",{"2":{"158":1,"169":1}}],["critiquing",{"2":{"138":1}}],["critique>",{"2":{"128":1}}],["critiques",{"2":{"128":1,"138":1,"139":1,"140":2}}],["critique",{"2":{"64":1,"128":12,"138":2,"139":2,"181":1}}],["critic",{"0":{"137":1},"1":{"138":1,"139":1,"140":1},"2":{"138":1,"139":4,"140":1}}],["criticism",{"2":{"128":1}}],["criterion",{"2":{"119":1}}],["criteria",{"2":{"119":2,"181":1}}],["credit",{"2":{"106":1,"179":3}}],["credits",{"2":{"70":1,"75":1,"93":2}}],["creativity",{"2":{"179":1}}],["creative",{"2":{"10":1,"104":1}}],["creation",{"2":{"118":1}}],["creating",{"0":{"72":1},"2":{"58":1,"64":1,"158":1,"181":4}}],["creature",{"2":{"18":2,"86":1,"179":5}}],["createqafromcontext",{"2":{"64":1,"181":1}}],["creates",{"2":{"52":1,"63":1,"87":1,"90":1,"177":5,"179":3,"181":1}}],["create",{"0":{"87":1},"2":{"2":2,"10":1,"16":1,"24":2,"49":1,"52":1,"54":1,"55":3,"60":1,"64":5,"72":2,"87":6,"89":1,"93":2,"98":1,"103":3,"104":1,"105":1,"106":1,"156":1,"164":1,"172":1,"177":3,"178":4,"179":25,"181":14}}],["cross",{"2":{"7":1}}],["ctx",{"2":{"6":6,"7":2,"181":4}}],["click",{"2":{"72":1,"93":1}}],["clipboard",{"2":{"52":2,"179":2}}],["clearly",{"2":{"60":1,"151":1,"152":1}}],["clear",{"2":{"52":1,"118":1,"119":3,"120":1,"128":1,"148":1,"150":1,"151":2,"152":1,"158":2,"159":1,"161":1,"162":1,"168":1,"177":1}}],["cleaning",{"2":{"157":1}}],["cleanup",{"2":{"24":1}}],["cleaner",{"2":{"24":1,"86":1}}],["cleaned",{"2":{"1":1}}],["clustering",{"2":{"16":1}}],["closely",{"2":{"67":2,"138":1,"176":1,"179":2}}],["close",{"2":{"67":2,"139":1,"158":1,"179":2}}],["closest",{"2":{"2":5,"61":1,"63":1,"64":4,"67":4,"179":9,"181":45}}],["cloudy",{"2":{"179":4}}],["cloud",{"2":{"12":1}}],["claudes",{"2":{"179":1}}],["claudeo",{"2":{"179":2}}],["claudeh",{"2":{"179":18}}],["claude",{"2":{"179":8}}],["clarification",{"2":{"139":1}}],["clarity",{"2":{"6":1,"119":1,"138":4,"139":1,"151":3,"166":1,"167":1}}],["classes=",{"2":{"181":3}}],["classes",{"2":{"181":5}}],["classifies",{"2":{"179":2}}],["classified",{"2":{"169":3,"179":1}}],["classification",{"0":{"17":1,"133":1},"1":{"18":1,"134":1,"135":1,"136":1},"2":{"18":1,"134":2,"135":1,"136":1,"179":3}}],["classify",{"2":{"10":1,"17":1,"104":1,"179":3}}],["class",{"2":{"13":1,"24":4,"102":1,"103":1,"105":2,"106":1,"108":1,"112":1,"115":1,"116":1,"118":1,"122":1,"123":1,"125":1,"134":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"148":1,"152":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"171":1,"172":1,"173":1,"176":1,"179":2,"181":1}}],["child2",{"2":{"177":2}}],["child11",{"2":{"177":2}}],["child1",{"2":{"177":3}}],["children",{"2":{"64":2,"177":2,"181":9}}],["chief",{"2":{"138":4}}],["chiefeditortranscriptcritic",{"0":{"138":1}}],["chuckles",{"2":{"41":2}}],["chunkdata",{"2":{"179":3,"181":13}}],["chunkkeywordsindex",{"2":{"64":4,"179":2,"181":13}}],["chunked",{"2":{"64":1,"181":8}}],["chunkembeddingsindex",{"2":{"64":3,"179":1,"181":7}}],["chunkers",{"2":{"181":1}}],["chunker=filechunker",{"2":{"64":1,"181":1}}],["chunker",{"2":{"58":3,"60":2,"64":14,"181":29}}],["chunking",{"2":{"60":1,"63":1,"64":1,"181":2}}],["chunkindex",{"2":{"57":1,"181":3}}],["chunk",{"2":{"2":3,"8":1,"10":1,"58":2,"63":3,"64":6,"67":8,"88":1,"112":1,"118":4,"179":31,"181":25}}],["chunks`",{"2":{"179":3}}],["chunks",{"2":{"2":13,"3":1,"4":2,"8":1,"57":2,"58":2,"60":3,"61":3,"63":5,"64":35,"67":13,"88":1,"110":1,"179":30,"181":146}}],["cheaper",{"2":{"21":1,"51":1,"52":1,"177":1,"179":2}}],["cheap",{"2":{"18":1,"75":1,"179":1}}],["checkout",{"2":{"67":1,"179":1}}],["check",{"2":{"21":1,"22":1,"51":1,"52":7,"64":1,"71":1,"73":1,"75":1,"78":1,"79":1,"83":1,"86":3,"89":1,"93":1,"106":2,"140":1,"164":1,"166":1,"167":1,"172":1,"177":5,"179":14,"181":4}}],["checks",{"2":{"17":1,"51":1,"52":4,"77":1,"177":6,"179":2}}],["checking",{"2":{"17":1}}],["choice=",{"2":{"179":1}}],["choice",{"2":{"106":1,"136":3,"177":1,"179":12}}],["choices",{"2":{"10":3,"18":2,"86":2,"104":3,"105":1,"134":6,"136":6,"179":42}}],["chosen",{"2":{"21":1,"51":1,"52":1,"177":1}}],["choose",{"2":{"0":1,"152":1,"179":1,"181":2}}],["chapter",{"2":{"150":2}}],["chapters",{"2":{"150":4,"151":1}}],["chain",{"2":{"142":1,"164":1,"166":1,"172":1,"179":2}}],["chars",{"2":{"67":1,"179":1}}],["character",{"2":{"67":3,"176":1,"179":3,"181":1}}],["characters",{"2":{"36":1,"67":4,"128":1,"177":4,"179":5,"181":13}}],["charles",{"2":{"55":2,"178":2}}],["charge",{"2":{"36":2,"75":2,"179":1}}],["chance",{"2":{"181":1}}],["chances",{"2":{"21":1,"51":1,"52":1,"177":1}}],["channel",{"2":{"57":1,"66":1,"179":3}}],["changing",{"0":{"84":1},"2":{"52":1,"58":1,"60":1,"64":1,"179":1,"181":3}}],["changed",{"2":{"128":1}}],["changes",{"0":{"42":1},"2":{"37":1,"87":1,"116":1,"140":1,"177":1,"179":3,"181":4}}],["change",{"2":{"1":1,"21":1,"24":1,"42":1,"51":1,"52":1,"64":3,"106":1,"128":1,"177":3,"179":9,"180":1,"181":8}}],["challenging",{"2":{"0":1}}],["chat1",{"2":{"179":1}}],["chatmlschema",{"2":{"179":5}}],["chatgpt",{"2":{"11":1,"75":1,"181":3}}],["chatbots",{"2":{"179":1}}],["chatbot",{"2":{"1":1,"2":1}}],["chat",{"2":{"0":1,"29":3,"39":1,"42":1,"64":8,"84":2,"98":1,"105":2,"179":26,"181":25}}],["cababcab",{"2":{"179":1}}],["caching",{"2":{"179":10}}],["caches",{"2":{"179":6}}],["cache",{"2":{"73":1,"179":16}}],["caused",{"2":{"128":1}}],["causes",{"2":{"41":1}}],["caught",{"2":{"52":1,"177":1,"179":1}}],["capable",{"2":{"136":1,"179":1}}],["capabilities",{"2":{"52":1,"69":1,"179":1}}],["captioning",{"2":{"179":2}}],["captain",{"2":{"87":2,"179":2}}],["capturing",{"2":{"52":3,"176":1,"179":3}}],["captures",{"2":{"91":1,"175":1,"179":1}}],["captured",{"2":{"52":3,"179":3}}],["capture",{"2":{"52":5,"91":2,"106":1,"177":1,"179":11}}],["capital",{"2":{"15":1,"64":2,"95":5,"96":2,"105":4,"181":5}}],["casual",{"2":{"158":1}}],["cased",{"2":{"156":1}}],["cases",{"2":{"52":1,"165":1,"173":1,"177":1,"179":6}}],["case",{"2":{"24":1,"58":1,"69":1,"86":2,"89":1,"105":1,"112":1,"158":1,"179":3,"181":2}}],["castle",{"2":{"18":1,"179":1}}],["cartoonish",{"2":{"175":2}}],["cartesian",{"2":{"7":1}}],["carries",{"2":{"166":1,"167":1}}],["carrying",{"2":{"67":1,"179":1}}],["carefully",{"2":{"112":1,"120":1,"140":1,"152":1}}],["care",{"2":{"100":1}}],["car",{"2":{"86":2,"106":1,"179":7}}],["carve",{"2":{"56":1}}],["carlo",{"2":{"21":1,"49":1,"52":1,"177":3}}],["ca",{"2":{"19":1}}],["cat",{"2":{"179":7}}],["categorize",{"2":{"152":1}}],["categories",{"0":{"18":1},"2":{"18":1,"86":2,"112":1,"113":1,"136":2,"179":2}}],["category",{"2":{"86":2,"112":1,"113":1,"136":4,"179":1,"181":1}}],["catch",{"2":{"0":1,"19":1,"21":2,"49":1,"51":2,"52":4,"106":1,"177":9}}],["camelcase",{"2":{"21":1,"179":1}}],["came",{"2":{"10":1,"181":1}}],["calculating",{"2":{"179":1}}],["calculation",{"2":{"179":1,"181":1}}],["calculates",{"2":{"181":3}}],["calculated",{"2":{"74":1,"169":1,"179":2}}],["calculate",{"2":{"7":1,"16":2,"179":10}}],["calltracer",{"2":{"179":2}}],["callbacks",{"2":{"179":1}}],["callback",{"2":{"179":28}}],["calling",{"2":{"24":1,"31":1,"37":1,"49":1,"106":2,"142":1,"143":1,"145":1,"177":1,"179":6,"181":1}}],["call",{"2":{"10":2,"11":1,"15":1,"21":2,"24":1,"29":1,"49":3,"51":2,"52":15,"63":1,"64":10,"73":1,"77":1,"85":1,"87":2,"98":1,"103":1,"104":2,"106":2,"142":1,"143":1,"145":1,"177":44,"179":66,"181":19}}],["called",{"2":{"7":3,"10":1,"11":1,"21":1,"24":1,"49":1,"52":1,"63":4,"87":1,"95":1,"98":1,"104":1,"177":4,"179":3,"181":4}}],["calls",{"0":{"51":1},"2":{"0":2,"10":1,"21":4,"46":1,"49":2,"51":1,"52":6,"55":1,"62":1,"64":10,"71":1,"86":1,"104":1,"106":2,"142":1,"143":1,"145":1,"177":13,"178":1,"179":29,"180":1,"181":22}}],["cannot",{"0":{"70":1,"73":2},"2":{"17":1,"64":1,"67":1,"69":1,"106":2,"135":1,"179":6,"181":4}}],["candidatechunks",{"2":{"58":4,"63":1,"64":1,"179":1,"181":13}}],["candidate",{"2":{"2":1,"181":17}}],["candidates",{"2":{"2":1,"58":4,"60":1,"63":3,"64":2,"181":40}}],["can",{"0":{"90":1},"2":{"2":1,"6":2,"7":7,"8":1,"10":4,"11":1,"12":4,"13":2,"14":2,"15":5,"16":2,"17":2,"18":2,"19":2,"20":4,"21":8,"22":3,"23":9,"24":11,"26":7,"27":1,"28":2,"29":3,"30":5,"31":4,"32":1,"33":1,"35":2,"39":1,"40":1,"42":2,"43":1,"46":2,"49":2,"51":7,"52":22,"55":2,"58":4,"60":1,"62":2,"63":2,"64":10,"66":1,"67":4,"69":1,"71":2,"72":1,"73":3,"74":2,"76":1,"77":2,"78":1,"79":1,"81":2,"83":2,"84":3,"85":3,"86":6,"87":8,"89":2,"90":2,"91":8,"93":1,"94":1,"95":1,"96":2,"97":1,"98":2,"99":2,"101":2,"103":3,"104":3,"105":1,"106":10,"110":1,"112":1,"118":1,"128":1,"129":1,"130":1,"150":1,"165":1,"173":1,"177":23,"178":2,"179":134,"181":27}}],["copies",{"2":{"181":1}}],["copy",{"2":{"2":1,"22":1,"45":2,"52":1,"179":3}}],["coding",{"2":{"177":1}}],["codeunits",{"2":{"179":3}}],["code>",{"2":{"128":1,"173":6}}],["codefixer",{"2":{"177":4}}],["codefixertiny",{"0":{"130":1}}],["codefixershort",{"0":{"129":1}}],["codefixerrci",{"0":{"128":1},"2":{"177":1}}],["codefailedtimeout",{"2":{"52":1,"177":1}}],["codefailedeval",{"2":{"52":1,"177":1}}],["codefailedparse",{"2":{"52":1,"177":1}}],["codellama",{"2":{"83":1}}],["codes",{"2":{"75":1}}],["codesuccess",{"2":{"52":1,"177":1}}],["codeempty",{"2":{"52":1,"177":1}}],["code",{"0":{"127":1},"1":{"128":1,"129":1,"130":1},"2":{"20":3,"23":1,"24":2,"26":1,"48":1,"49":1,"52":49,"56":1,"64":4,"66":2,"86":1,"102":1,"112":1,"128":13,"129":9,"130":3,"140":11,"162":1,"164":3,"165":12,"172":3,"173":10,"177":36,"179":94,"180":1,"181":14}}],["coalitional",{"2":{"169":1}}],["cot",{"2":{"164":1,"166":1,"172":1}}],["core",{"2":{"125":1,"177":1}}],["corpus",{"2":{"57":1}}],["corresponds",{"2":{"179":2}}],["correspondence",{"2":{"158":1}}],["correspond",{"2":{"58":1,"64":1,"177":1,"181":4}}],["corresponding",{"2":{"0":4,"12":1,"30":1,"31":1,"49":2,"60":2,"62":1,"63":2,"64":4,"70":1,"106":2,"140":1,"150":1,"151":1,"152":1,"169":1,"179":19,"181":9}}],["correctiverag",{"2":{"181":1}}],["correcting",{"2":{"140":1}}],["corrections",{"2":{"138":1}}],["correct",{"2":{"52":4,"86":1,"106":3,"128":1,"140":1,"164":1,"165":4,"166":1,"167":1,"172":1,"173":4,"177":4,"181":1}}],["correctly",{"2":{"0":1,"169":3,"179":7}}],["covering",{"2":{"165":1,"173":1}}],["cover",{"2":{"119":1}}],["coversation",{"2":{"52":1,"177":1}}],["coverage",{"0":{"0":1}}],["collects",{"2":{"177":1}}],["collect",{"2":{"177":2,"179":2}}],["collection",{"2":{"24":1,"64":1,"181":1}}],["collaboration",{"2":{"158":1}}],["colorful",{"2":{"175":1,"179":1}}],["colors",{"2":{"64":1,"181":1}}],["color",{"2":{"21":2,"51":2,"52":2,"58":3,"67":1,"177":2,"179":7,"181":8}}],["column",{"2":{"7":2,"179":2,"181":4}}],["columns",{"2":{"6":1,"7":4,"181":1}}],["cosmic",{"2":{"67":1,"179":1}}],["cosinesimilarity",{"2":{"64":2,"179":1,"181":12}}],["cosine",{"2":{"16":2,"47":2,"179":4,"181":5}}],["cost2",{"2":{"179":2}}],["cost1",{"2":{"179":3}}],["costing",{"2":{"179":2}}],["costs",{"2":{"10":1,"64":1,"76":1,"104":1,"179":9,"181":1}}],["cost",{"0":{"77":1},"2":{"4":1,"11":1,"13":1,"20":2,"23":1,"24":1,"26":1,"30":1,"31":1,"58":1,"64":16,"69":1,"77":1,"85":1,"95":2,"96":1,"179":76,"181":50}}],["counds",{"2":{"177":1}}],["counts",{"2":{"181":1}}],["counted",{"2":{"177":1}}],["counter",{"2":{"64":3,"177":2,"181":7}}],["counterpart",{"2":{"49":1,"67":1,"179":1}}],["counterparts",{"2":{"10":1,"21":1,"49":1,"104":1}}],["counting",{"2":{"156":1}}],["country=",{"2":{"96":1}}],["country",{"2":{"95":1,"96":1,"181":4}}],["count",{"2":{"28":1,"37":1,"64":1,"108":1,"110":1,"112":1,"113":1,"115":1,"116":1,"118":1,"119":1,"120":1,"122":1,"123":1,"124":1,"125":1,"126":1,"128":1,"129":1,"130":1,"132":1,"134":1,"135":1,"136":1,"138":1,"139":1,"140":1,"142":1,"143":1,"145":1,"147":1,"148":1,"150":1,"151":1,"152":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"171":1,"172":1,"173":1,"175":1,"176":1,"179":14,"181":1}}],["couldn",{"2":{"179":1}}],["could",{"2":{"7":1,"8":1,"21":2,"34":1,"51":2,"52":2,"64":2,"67":2,"74":1,"90":1,"106":1,"124":1,"148":1,"177":2,"179":7,"181":2}}],["coherence",{"2":{"179":1}}],["coherereranker",{"2":{"64":1,"179":1,"181":5}}],["cohere",{"2":{"2":1,"8":1,"64":2,"179":6,"181":19}}],["conv",{"2":{"90":1,"91":2,"106":2,"179":28}}],["conventions",{"2":{"179":1}}],["convention",{"2":{"179":1}}],["convenient",{"2":{"179":2}}],["convenience",{"2":{"2":1,"67":2,"179":5,"181":1}}],["conversion",{"2":{"106":1}}],["conversational",{"2":{"179":2}}],["conversation=myconversation",{"2":{"177":1}}],["conversationlabeler",{"0":{"156":1}}],["conversation2",{"2":{"89":1}}],["conversation1",{"2":{"89":1}}],["conversations",{"0":{"12":1,"85":1},"2":{"12":1,"35":1,"42":2,"52":1,"58":2,"64":2,"89":3,"91":2,"96":1,"177":1,"179":26,"181":9}}],["conversation",{"2":{"10":2,"12":6,"21":1,"30":1,"35":1,"41":1,"51":1,"52":25,"64":1,"85":11,"86":4,"87":1,"89":3,"91":2,"95":1,"101":2,"104":2,"106":3,"138":2,"139":5,"140":1,"156":6,"177":71,"179":199,"181":5}}],["converts",{"2":{"179":1}}],["converting",{"2":{"124":1,"126":1}}],["convert",{"2":{"105":2,"106":1,"179":5,"181":4}}],["convey",{"2":{"98":1,"101":1}}],["confusion",{"2":{"41":1}}],["confirm",{"2":{"179":2}}],["confident",{"2":{"24":3,"103":1,"105":2,"155":1,"159":1,"161":1,"163":1,"168":1,"171":1}}],["confidence",{"2":{"10":1,"67":1,"177":2,"179":1}}],["config=retryconfig",{"2":{"86":1,"106":1}}],["configures",{"2":{"179":1}}],["configure",{"2":{"179":2}}],["configuring",{"0":{"78":1}}],["configuration",{"2":{"64":1,"78":2,"177":1,"181":3}}],["configurable",{"2":{"58":1}}],["config",{"2":{"21":2,"49":1,"51":2,"52":9,"64":1,"81":1,"106":2,"177":14,"179":1,"181":3}}],["connection",{"2":{"35":1}}],["conducted",{"2":{"177":1}}],["cond",{"2":{"21":1,"51":1,"52":6,"177":15}}],["condition=>string",{"2":{"179":1}}],["conditions",{"2":{"179":1}}],["condition",{"2":{"21":4,"51":5,"52":16,"86":3,"106":3,"177":31,"179":17}}],["concatenation",{"2":{"181":1}}],["concatenates",{"2":{"179":1}}],["concatenate",{"2":{"36":1,"52":1,"179":1,"181":1}}],["concentrate",{"2":{"169":1}}],["concepts",{"0":{"98":1},"1":{"99":1,"100":1,"101":1,"102":1,"103":1,"104":1},"2":{"97":1,"98":1,"124":1}}],["concept",{"2":{"16":1,"124":1}}],["conclusion",{"2":{"162":1}}],["conclusions",{"2":{"150":1}}],["conclude",{"2":{"138":1,"140":1,"169":1}}],["concrete",{"2":{"106":1}}],["concise",{"2":{"24":3,"102":1,"103":1,"105":2,"108":1,"115":1,"116":1,"118":1,"125":1,"128":1,"150":3,"151":2,"154":1,"155":1,"156":1,"157":1,"158":2,"159":1,"161":1,"162":1,"163":1,"164":1,"168":1,"171":1,"172":1,"179":6}}],["concurrent",{"2":{"14":1,"74":2}}],["concurrently",{"2":{"14":1,"96":1}}],["contrast",{"2":{"179":1}}],["control",{"2":{"86":1,"95":1,"166":1,"167":1,"181":2}}],["controlling",{"2":{"52":1,"177":1}}],["controlled",{"2":{"21":1}}],["contribute",{"2":{"58":1}}],["contribution",{"2":{"49":1,"169":1}}],["continuous",{"2":{"71":1}}],["continued",{"2":{"179":1}}],["continues>",{"2":{"179":5}}],["continue",{"2":{"52":1,"95":1,"177":1,"179":6}}],["continue>",{"2":{"20":1,"179":2}}],["continuing",{"2":{"11":1,"77":1}}],["contained",{"2":{"181":2}}],["container",{"2":{"179":1}}],["containing",{"2":{"10":3,"64":4,"104":3,"177":1,"179":7,"181":13}}],["contain",{"2":{"7":1,"10":1,"104":1,"179":5,"181":2}}],["contains",{"2":{"6":1,"7":8,"24":1,"32":1,"37":1,"58":1,"60":1,"66":1,"102":1,"177":1,"179":3,"180":1,"181":2}}],["contemporary",{"2":{"15":1,"179":1}}],["contents",{"2":{"181":2}}],["content=",{"2":{"179":8}}],["content",{"2":{"6":1,"10":11,"16":3,"19":2,"20":2,"21":1,"22":2,"23":1,"27":1,"31":1,"45":1,"46":1,"47":2,"51":1,"52":5,"55":2,"64":1,"86":3,"90":2,"95":2,"104":11,"105":5,"106":3,"138":3,"150":1,"151":2,"177":10,"178":2,"179":120,"181":6}}],["context=true",{"2":{"181":1}}],["context=",{"2":{"181":4}}],["contexts",{"2":{"177":1}}],["contextual",{"2":{"64":1,"118":1,"181":2}}],["contextenumerator",{"2":{"64":3,"179":1,"181":11}}],["contexter",{"2":{"64":8,"181":14}}],["context",{"2":{"2":2,"5":1,"6":3,"8":3,"10":2,"11":2,"28":1,"52":1,"54":1,"58":6,"60":1,"61":1,"63":5,"64":32,"66":1,"67":9,"101":2,"108":7,"115":11,"116":1,"118":11,"119":8,"120":6,"124":1,"138":1,"148":1,"151":1,"152":1,"169":1,"177":4,"179":17,"181":103}}],["consecutive",{"2":{"181":2}}],["conservative",{"2":{"36":1,"179":1}}],["consumer",{"2":{"71":1}}],["consuming",{"2":{"3":1}}],["considered",{"2":{"64":1,"67":1,"179":1,"181":2}}],["considering",{"2":{"58":1,"119":1,"179":2,"181":1}}],["consider",{"2":{"24":1,"64":2,"124":1,"138":1,"169":1,"179":1,"181":2}}],["consistent",{"2":{"119":2,"120":1,"156":1,"181":2}}],["consistency",{"2":{"6":1,"36":1,"119":1,"138":1,"179":2,"181":1}}],["consisting",{"2":{"20":1,"179":2}}],["consists",{"2":{"7":1}}],["constant",{"2":{"179":9}}],["constituent",{"2":{"139":1}}],["construct",{"2":{"179":1}}],["constructor",{"2":{"179":1}}],["constructive",{"2":{"138":1}}],["constructs",{"2":{"63":1}}],["constraints",{"2":{"67":1,"139":1,"179":1}}],["const",{"2":{"1":2,"24":1,"25":1,"32":1,"37":1,"48":1,"56":1,"81":1,"105":1,"106":1,"179":3}}],["combination",{"2":{"179":1,"181":2}}],["combining",{"2":{"56":1}}],["combines",{"2":{"64":2,"181":2}}],["combined",{"2":{"7":1,"181":1}}],["combine",{"2":{"5":1,"6":2,"7":5}}],["com",{"2":{"20":1,"54":2,"67":1,"75":1,"110":1,"178":1,"179":14,"181":5}}],["comes",{"2":{"89":1,"181":1}}],["come",{"2":{"13":1,"179":2}}],["commas",{"2":{"181":1}}],["commands",{"2":{"67":4,"94":1,"179":4}}],["command",{"2":{"24":1,"28":1,"67":1,"101":1,"179":1}}],["commit",{"2":{"78":1,"93":1}}],["comments",{"2":{"77":1,"128":1,"129":1,"179":1}}],["comment",{"2":{"77":1,"115":1,"116":1,"165":1,"173":1}}],["commercial",{"2":{"77":1}}],["communicates",{"2":{"138":1}}],["communications",{"2":{"158":2}}],["communication",{"2":{"24":3,"98":1,"100":1,"102":1,"103":1,"105":2,"155":1,"157":1,"158":3,"159":1,"161":1,"163":1,"164":1,"168":1,"171":1,"172":1,"177":1,"179":1}}],["community",{"2":{"24":1,"58":1}}],["commun",{"2":{"13":1,"24":1,"179":2}}],["commonly",{"2":{"179":1}}],["common",{"2":{"1":1,"7":2,"66":7,"67":17,"86":1,"89":1,"177":1,"179":20}}],["compelling",{"2":{"162":1,"169":1}}],["complicated",{"2":{"86":2,"106":1}}],["complicity",{"2":{"67":1,"179":1}}],["complement",{"2":{"180":1}}],["completions",{"2":{"179":5}}],["completions`",{"2":{"179":1}}],["completion",{"2":{"179":5}}],["completeling",{"2":{"179":1}}],["completely",{"2":{"64":1,"66":1,"181":2}}],["completeness",{"2":{"6":1,"119":1,"139":1}}],["complete",{"2":{"5":2,"6":1,"7":2,"119":1}}],["complex",{"2":{"12":1,"16":1,"17":1,"19":1,"21":1,"58":1,"96":1,"177":2,"179":4}}],["compact",{"2":{"165":1,"173":1,"181":1}}],["compass",{"2":{"87":2,"179":2}}],["company",{"2":{"67":2,"179":2}}],["companion",{"2":{"66":1}}],["comparing",{"2":{"67":1,"179":1}}],["comparison",{"2":{"58":2}}],["compared",{"2":{"181":1}}],["compare",{"2":{"66":1,"67":2,"177":1,"179":2}}],["compatibility",{"2":{"42":1,"179":6}}],["compatible",{"0":{"23":1,"27":1},"2":{"0":2,"23":2,"25":1,"27":1,"179":2}}],["computes",{"2":{"181":1}}],["compute",{"2":{"67":1,"179":1,"181":1}}],["computer",{"2":{"22":1,"23":1}}],["computational",{"2":{"58":1}}],["computing",{"2":{"58":8,"64":1,"181":6}}],["comprehensively",{"2":{"118":1,"165":1,"173":1}}],["comprehensive",{"2":{"58":2,"148":1,"150":1}}],["comprehension",{"0":{"20":1}}],["composite",{"2":{"181":2}}],["composes",{"2":{"179":1}}],["compose",{"2":{"91":1,"118":1}}],["composed",{"2":{"7":1,"179":3}}],["components",{"2":{"62":2,"64":1,"181":3}}],["component",{"2":{"52":1,"62":1,"64":1,"177":2,"181":2}}],["compiled",{"2":{"64":1,"73":3,"181":1}}],["compile",{"2":{"24":1,"28":1,"73":1}}]],"serializationVersion":2}'; +export { + _localSearchIndexroot as default +}; diff --git a/v0.52.0/assets/chunks/VPLocalSearchBox.9LACIG0G.js b/v0.52.0/assets/chunks/VPLocalSearchBox.9LACIG0G.js new file mode 100644 index 000000000..d95036ccf --- /dev/null +++ b/v0.52.0/assets/chunks/VPLocalSearchBox.9LACIG0G.js @@ -0,0 +1,5098 @@ +var __defProp = Object.defineProperty; +var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); +import { V as __vitePreload, p as ref, h as computed, aj as toValue, ak as unrefElement, al as notNullish, q as watch, am as tryOnScopeDispose, d as defineComponent, D as shallowRef, an as computedAsync, ao as useSessionStorage, ap as useLocalStorage, s as watchEffect, aq as watchDebounced, v as onMounted, P as nextTick, O as onKeyStroke, ar as useRouter, as as useEventListener, W as useScrollLock, R as inBrowser, $ as onBeforeUnmount, o as openBlock, b as createBlock, j as createBaseVNode, a0 as withModifiers, k as unref, at as withDirectives, au as vModelText, av as isRef, c as createElementBlock, n as normalizeClass, e as createCommentVNode, C as renderList, F as Fragment, a as createTextVNode, t as toDisplayString, aw as Teleport, ax as markRaw, ay as createApp, a9 as dataSymbol, af as pathToFile, az as escapeRegExp, _ as _export_sfc } from "./framework.CTxMrREi.js"; +import { u as useData, c as createSearchTranslate } from "./theme.B5V8JnTZ.js"; +const localSearchIndex = { "root": () => __vitePreload(() => import("./@localSearchIndexroot.BEn6dwOI.js"), true ? [] : void 0) }; +/*! +* tabbable 6.2.0 +* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE +*/ +var candidateSelectors = ["input:not([inert])", "select:not([inert])", "textarea:not([inert])", "a[href]:not([inert])", "button:not([inert])", "[tabindex]:not(slot):not([inert])", "audio[controls]:not([inert])", "video[controls]:not([inert])", '[contenteditable]:not([contenteditable="false"]):not([inert])', "details>summary:first-of-type:not([inert])", "details:not([inert])"]; +var candidateSelector = /* @__PURE__ */ candidateSelectors.join(","); +var NoElement = typeof Element === "undefined"; +var matches = NoElement ? function() { +} : Element.prototype.matches || Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector; +var getRootNode = !NoElement && Element.prototype.getRootNode ? function(element) { + var _element$getRootNode; + return element === null || element === void 0 ? void 0 : (_element$getRootNode = element.getRootNode) === null || _element$getRootNode === void 0 ? void 0 : _element$getRootNode.call(element); +} : function(element) { + return element === null || element === void 0 ? void 0 : element.ownerDocument; +}; +var isInert = function isInert2(node, lookUp) { + var _node$getAttribute; + if (lookUp === void 0) { + lookUp = true; + } + var inertAtt = node === null || node === void 0 ? void 0 : (_node$getAttribute = node.getAttribute) === null || _node$getAttribute === void 0 ? void 0 : _node$getAttribute.call(node, "inert"); + var inert = inertAtt === "" || inertAtt === "true"; + var result = inert || lookUp && node && isInert2(node.parentNode); + return result; +}; +var isContentEditable = function isContentEditable2(node) { + var _node$getAttribute2; + var attValue = node === null || node === void 0 ? void 0 : (_node$getAttribute2 = node.getAttribute) === null || _node$getAttribute2 === void 0 ? void 0 : _node$getAttribute2.call(node, "contenteditable"); + return attValue === "" || attValue === "true"; +}; +var getCandidates = function getCandidates2(el, includeContainer, filter) { + if (isInert(el)) { + return []; + } + var candidates = Array.prototype.slice.apply(el.querySelectorAll(candidateSelector)); + if (includeContainer && matches.call(el, candidateSelector)) { + candidates.unshift(el); + } + candidates = candidates.filter(filter); + return candidates; +}; +var getCandidatesIteratively = function getCandidatesIteratively2(elements, includeContainer, options) { + var candidates = []; + var elementsToCheck = Array.from(elements); + while (elementsToCheck.length) { + var element = elementsToCheck.shift(); + if (isInert(element, false)) { + continue; + } + if (element.tagName === "SLOT") { + var assigned = element.assignedElements(); + var content = assigned.length ? assigned : element.children; + var nestedCandidates = getCandidatesIteratively2(content, true, options); + if (options.flatten) { + candidates.push.apply(candidates, nestedCandidates); + } else { + candidates.push({ + scopeParent: element, + candidates: nestedCandidates + }); + } + } else { + var validCandidate = matches.call(element, candidateSelector); + if (validCandidate && options.filter(element) && (includeContainer || !elements.includes(element))) { + candidates.push(element); + } + var shadowRoot = element.shadowRoot || // check for an undisclosed shadow + typeof options.getShadowRoot === "function" && options.getShadowRoot(element); + var validShadowRoot = !isInert(shadowRoot, false) && (!options.shadowRootFilter || options.shadowRootFilter(element)); + if (shadowRoot && validShadowRoot) { + var _nestedCandidates = getCandidatesIteratively2(shadowRoot === true ? element.children : shadowRoot.children, true, options); + if (options.flatten) { + candidates.push.apply(candidates, _nestedCandidates); + } else { + candidates.push({ + scopeParent: element, + candidates: _nestedCandidates + }); + } + } else { + elementsToCheck.unshift.apply(elementsToCheck, element.children); + } + } + } + return candidates; +}; +var hasTabIndex = function hasTabIndex2(node) { + return !isNaN(parseInt(node.getAttribute("tabindex"), 10)); +}; +var getTabIndex = function getTabIndex2(node) { + if (!node) { + throw new Error("No node provided"); + } + if (node.tabIndex < 0) { + if ((/^(AUDIO|VIDEO|DETAILS)$/.test(node.tagName) || isContentEditable(node)) && !hasTabIndex(node)) { + return 0; + } + } + return node.tabIndex; +}; +var getSortOrderTabIndex = function getSortOrderTabIndex2(node, isScope) { + var tabIndex = getTabIndex(node); + if (tabIndex < 0 && isScope && !hasTabIndex(node)) { + return 0; + } + return tabIndex; +}; +var sortOrderedTabbables = function sortOrderedTabbables2(a, b) { + return a.tabIndex === b.tabIndex ? a.documentOrder - b.documentOrder : a.tabIndex - b.tabIndex; +}; +var isInput = function isInput2(node) { + return node.tagName === "INPUT"; +}; +var isHiddenInput = function isHiddenInput2(node) { + return isInput(node) && node.type === "hidden"; +}; +var isDetailsWithSummary = function isDetailsWithSummary2(node) { + var r = node.tagName === "DETAILS" && Array.prototype.slice.apply(node.children).some(function(child) { + return child.tagName === "SUMMARY"; + }); + return r; +}; +var getCheckedRadio = function getCheckedRadio2(nodes, form) { + for (var i = 0; i < nodes.length; i++) { + if (nodes[i].checked && nodes[i].form === form) { + return nodes[i]; + } + } +}; +var isTabbableRadio = function isTabbableRadio2(node) { + if (!node.name) { + return true; + } + var radioScope = node.form || getRootNode(node); + var queryRadios = function queryRadios2(name) { + return radioScope.querySelectorAll('input[type="radio"][name="' + name + '"]'); + }; + var radioSet; + if (typeof window !== "undefined" && typeof window.CSS !== "undefined" && typeof window.CSS.escape === "function") { + radioSet = queryRadios(window.CSS.escape(node.name)); + } else { + try { + radioSet = queryRadios(node.name); + } catch (err) { + console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s", err.message); + return false; + } + } + var checked = getCheckedRadio(radioSet, node.form); + return !checked || checked === node; +}; +var isRadio = function isRadio2(node) { + return isInput(node) && node.type === "radio"; +}; +var isNonTabbableRadio = function isNonTabbableRadio2(node) { + return isRadio(node) && !isTabbableRadio(node); +}; +var isNodeAttached = function isNodeAttached2(node) { + var _nodeRoot; + var nodeRoot = node && getRootNode(node); + var nodeRootHost = (_nodeRoot = nodeRoot) === null || _nodeRoot === void 0 ? void 0 : _nodeRoot.host; + var attached = false; + if (nodeRoot && nodeRoot !== node) { + var _nodeRootHost, _nodeRootHost$ownerDo, _node$ownerDocument; + attached = !!((_nodeRootHost = nodeRootHost) !== null && _nodeRootHost !== void 0 && (_nodeRootHost$ownerDo = _nodeRootHost.ownerDocument) !== null && _nodeRootHost$ownerDo !== void 0 && _nodeRootHost$ownerDo.contains(nodeRootHost) || node !== null && node !== void 0 && (_node$ownerDocument = node.ownerDocument) !== null && _node$ownerDocument !== void 0 && _node$ownerDocument.contains(node)); + while (!attached && nodeRootHost) { + var _nodeRoot2, _nodeRootHost2, _nodeRootHost2$ownerD; + nodeRoot = getRootNode(nodeRootHost); + nodeRootHost = (_nodeRoot2 = nodeRoot) === null || _nodeRoot2 === void 0 ? void 0 : _nodeRoot2.host; + attached = !!((_nodeRootHost2 = nodeRootHost) !== null && _nodeRootHost2 !== void 0 && (_nodeRootHost2$ownerD = _nodeRootHost2.ownerDocument) !== null && _nodeRootHost2$ownerD !== void 0 && _nodeRootHost2$ownerD.contains(nodeRootHost)); + } + } + return attached; +}; +var isZeroArea = function isZeroArea2(node) { + var _node$getBoundingClie = node.getBoundingClientRect(), width = _node$getBoundingClie.width, height = _node$getBoundingClie.height; + return width === 0 && height === 0; +}; +var isHidden = function isHidden2(node, _ref) { + var displayCheck = _ref.displayCheck, getShadowRoot = _ref.getShadowRoot; + if (getComputedStyle(node).visibility === "hidden") { + return true; + } + var isDirectSummary = matches.call(node, "details>summary:first-of-type"); + var nodeUnderDetails = isDirectSummary ? node.parentElement : node; + if (matches.call(nodeUnderDetails, "details:not([open]) *")) { + return true; + } + if (!displayCheck || displayCheck === "full" || displayCheck === "legacy-full") { + if (typeof getShadowRoot === "function") { + var originalNode = node; + while (node) { + var parentElement = node.parentElement; + var rootNode = getRootNode(node); + if (parentElement && !parentElement.shadowRoot && getShadowRoot(parentElement) === true) { + return isZeroArea(node); + } else if (node.assignedSlot) { + node = node.assignedSlot; + } else if (!parentElement && rootNode !== node.ownerDocument) { + node = rootNode.host; + } else { + node = parentElement; + } + } + node = originalNode; + } + if (isNodeAttached(node)) { + return !node.getClientRects().length; + } + if (displayCheck !== "legacy-full") { + return true; + } + } else if (displayCheck === "non-zero-area") { + return isZeroArea(node); + } + return false; +}; +var isDisabledFromFieldset = function isDisabledFromFieldset2(node) { + if (/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(node.tagName)) { + var parentNode = node.parentElement; + while (parentNode) { + if (parentNode.tagName === "FIELDSET" && parentNode.disabled) { + for (var i = 0; i < parentNode.children.length; i++) { + var child = parentNode.children.item(i); + if (child.tagName === "LEGEND") { + return matches.call(parentNode, "fieldset[disabled] *") ? true : !child.contains(node); + } + } + return true; + } + parentNode = parentNode.parentElement; + } + } + return false; +}; +var isNodeMatchingSelectorFocusable = function isNodeMatchingSelectorFocusable2(options, node) { + if (node.disabled || // we must do an inert look up to filter out any elements inside an inert ancestor + // because we're limited in the type of selectors we can use in JSDom (see related + // note related to `candidateSelectors`) + isInert(node) || isHiddenInput(node) || isHidden(node, options) || // For a details element with a summary, the summary element gets the focus + isDetailsWithSummary(node) || isDisabledFromFieldset(node)) { + return false; + } + return true; +}; +var isNodeMatchingSelectorTabbable = function isNodeMatchingSelectorTabbable2(options, node) { + if (isNonTabbableRadio(node) || getTabIndex(node) < 0 || !isNodeMatchingSelectorFocusable(options, node)) { + return false; + } + return true; +}; +var isValidShadowRootTabbable = function isValidShadowRootTabbable2(shadowHostNode) { + var tabIndex = parseInt(shadowHostNode.getAttribute("tabindex"), 10); + if (isNaN(tabIndex) || tabIndex >= 0) { + return true; + } + return false; +}; +var sortByOrder = function sortByOrder2(candidates) { + var regularTabbables = []; + var orderedTabbables = []; + candidates.forEach(function(item, i) { + var isScope = !!item.scopeParent; + var element = isScope ? item.scopeParent : item; + var candidateTabindex = getSortOrderTabIndex(element, isScope); + var elements = isScope ? sortByOrder2(item.candidates) : element; + if (candidateTabindex === 0) { + isScope ? regularTabbables.push.apply(regularTabbables, elements) : regularTabbables.push(element); + } else { + orderedTabbables.push({ + documentOrder: i, + tabIndex: candidateTabindex, + item, + isScope, + content: elements + }); + } + }); + return orderedTabbables.sort(sortOrderedTabbables).reduce(function(acc, sortable) { + sortable.isScope ? acc.push.apply(acc, sortable.content) : acc.push(sortable.content); + return acc; + }, []).concat(regularTabbables); +}; +var tabbable = function tabbable2(container, options) { + options = options || {}; + var candidates; + if (options.getShadowRoot) { + candidates = getCandidatesIteratively([container], options.includeContainer, { + filter: isNodeMatchingSelectorTabbable.bind(null, options), + flatten: false, + getShadowRoot: options.getShadowRoot, + shadowRootFilter: isValidShadowRootTabbable + }); + } else { + candidates = getCandidates(container, options.includeContainer, isNodeMatchingSelectorTabbable.bind(null, options)); + } + return sortByOrder(candidates); +}; +var focusable = function focusable2(container, options) { + options = options || {}; + var candidates; + if (options.getShadowRoot) { + candidates = getCandidatesIteratively([container], options.includeContainer, { + filter: isNodeMatchingSelectorFocusable.bind(null, options), + flatten: true, + getShadowRoot: options.getShadowRoot + }); + } else { + candidates = getCandidates(container, options.includeContainer, isNodeMatchingSelectorFocusable.bind(null, options)); + } + return candidates; +}; +var isTabbable = function isTabbable2(node, options) { + options = options || {}; + if (!node) { + throw new Error("No node provided"); + } + if (matches.call(node, candidateSelector) === false) { + return false; + } + return isNodeMatchingSelectorTabbable(options, node); +}; +var focusableCandidateSelector = /* @__PURE__ */ candidateSelectors.concat("iframe").join(","); +var isFocusable = function isFocusable2(node, options) { + options = options || {}; + if (!node) { + throw new Error("No node provided"); + } + if (matches.call(node, focusableCandidateSelector) === false) { + return false; + } + return isNodeMatchingSelectorFocusable(options, node); +}; +/*! +* focus-trap 7.5.4 +* @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE +*/ +function ownKeys(e, r) { + var t = Object.keys(e); + if (Object.getOwnPropertySymbols) { + var o = Object.getOwnPropertySymbols(e); + r && (o = o.filter(function(r2) { + return Object.getOwnPropertyDescriptor(e, r2).enumerable; + })), t.push.apply(t, o); + } + return t; +} +function _objectSpread2(e) { + for (var r = 1; r < arguments.length; r++) { + var t = null != arguments[r] ? arguments[r] : {}; + r % 2 ? ownKeys(Object(t), true).forEach(function(r2) { + _defineProperty(e, r2, t[r2]); + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r2) { + Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2)); + }); + } + return e; +} +function _defineProperty(obj, key, value) { + key = _toPropertyKey(key); + if (key in obj) { + Object.defineProperty(obj, key, { + value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + return obj; +} +function _toPrimitive(input, hint) { + if (typeof input !== "object" || input === null) return input; + var prim = input[Symbol.toPrimitive]; + if (prim !== void 0) { + var res = prim.call(input, hint || "default"); + if (typeof res !== "object") return res; + throw new TypeError("@@toPrimitive must return a primitive value."); + } + return (hint === "string" ? String : Number)(input); +} +function _toPropertyKey(arg) { + var key = _toPrimitive(arg, "string"); + return typeof key === "symbol" ? key : String(key); +} +var activeFocusTraps = { + activateTrap: function activateTrap(trapStack, trap) { + if (trapStack.length > 0) { + var activeTrap = trapStack[trapStack.length - 1]; + if (activeTrap !== trap) { + activeTrap.pause(); + } + } + var trapIndex = trapStack.indexOf(trap); + if (trapIndex === -1) { + trapStack.push(trap); + } else { + trapStack.splice(trapIndex, 1); + trapStack.push(trap); + } + }, + deactivateTrap: function deactivateTrap(trapStack, trap) { + var trapIndex = trapStack.indexOf(trap); + if (trapIndex !== -1) { + trapStack.splice(trapIndex, 1); + } + if (trapStack.length > 0) { + trapStack[trapStack.length - 1].unpause(); + } + } +}; +var isSelectableInput = function isSelectableInput2(node) { + return node.tagName && node.tagName.toLowerCase() === "input" && typeof node.select === "function"; +}; +var isEscapeEvent = function isEscapeEvent2(e) { + return (e === null || e === void 0 ? void 0 : e.key) === "Escape" || (e === null || e === void 0 ? void 0 : e.key) === "Esc" || (e === null || e === void 0 ? void 0 : e.keyCode) === 27; +}; +var isTabEvent = function isTabEvent2(e) { + return (e === null || e === void 0 ? void 0 : e.key) === "Tab" || (e === null || e === void 0 ? void 0 : e.keyCode) === 9; +}; +var isKeyForward = function isKeyForward2(e) { + return isTabEvent(e) && !e.shiftKey; +}; +var isKeyBackward = function isKeyBackward2(e) { + return isTabEvent(e) && e.shiftKey; +}; +var delay = function delay2(fn) { + return setTimeout(fn, 0); +}; +var findIndex = function findIndex2(arr, fn) { + var idx = -1; + arr.every(function(value, i) { + if (fn(value)) { + idx = i; + return false; + } + return true; + }); + return idx; +}; +var valueOrHandler = function valueOrHandler2(value) { + for (var _len = arguments.length, params = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + params[_key - 1] = arguments[_key]; + } + return typeof value === "function" ? value.apply(void 0, params) : value; +}; +var getActualTarget = function getActualTarget2(event) { + return event.target.shadowRoot && typeof event.composedPath === "function" ? event.composedPath()[0] : event.target; +}; +var internalTrapStack = []; +var createFocusTrap = function createFocusTrap2(elements, userOptions) { + var doc = (userOptions === null || userOptions === void 0 ? void 0 : userOptions.document) || document; + var trapStack = (userOptions === null || userOptions === void 0 ? void 0 : userOptions.trapStack) || internalTrapStack; + var config = _objectSpread2({ + returnFocusOnDeactivate: true, + escapeDeactivates: true, + delayInitialFocus: true, + isKeyForward, + isKeyBackward + }, userOptions); + var state = { + // containers given to createFocusTrap() + // @type {Array} + containers: [], + // list of objects identifying tabbable nodes in `containers` in the trap + // NOTE: it's possible that a group has no tabbable nodes if nodes get removed while the trap + // is active, but the trap should never get to a state where there isn't at least one group + // with at least one tabbable node in it (that would lead to an error condition that would + // result in an error being thrown) + // @type {Array<{ + // container: HTMLElement, + // tabbableNodes: Array, // empty if none + // focusableNodes: Array, // empty if none + // posTabIndexesFound: boolean, + // firstTabbableNode: HTMLElement|undefined, + // lastTabbableNode: HTMLElement|undefined, + // firstDomTabbableNode: HTMLElement|undefined, + // lastDomTabbableNode: HTMLElement|undefined, + // nextTabbableNode: (node: HTMLElement, forward: boolean) => HTMLElement|undefined + // }>} + containerGroups: [], + // same order/length as `containers` list + // references to objects in `containerGroups`, but only those that actually have + // tabbable nodes in them + // NOTE: same order as `containers` and `containerGroups`, but __not necessarily__ + // the same length + tabbableGroups: [], + nodeFocusedBeforeActivation: null, + mostRecentlyFocusedNode: null, + active: false, + paused: false, + // timer ID for when delayInitialFocus is true and initial focus in this trap + // has been delayed during activation + delayInitialFocusTimer: void 0, + // the most recent KeyboardEvent for the configured nav key (typically [SHIFT+]TAB), if any + recentNavEvent: void 0 + }; + var trap; + var getOption = function getOption2(configOverrideOptions, optionName, configOptionName) { + return configOverrideOptions && configOverrideOptions[optionName] !== void 0 ? configOverrideOptions[optionName] : config[configOptionName || optionName]; + }; + var findContainerIndex = function findContainerIndex2(element, event) { + var composedPath = typeof (event === null || event === void 0 ? void 0 : event.composedPath) === "function" ? event.composedPath() : void 0; + return state.containerGroups.findIndex(function(_ref) { + var container = _ref.container, tabbableNodes = _ref.tabbableNodes; + return container.contains(element) || // fall back to explicit tabbable search which will take into consideration any + // web components if the `tabbableOptions.getShadowRoot` option was used for + // the trap, enabling shadow DOM support in tabbable (`Node.contains()` doesn't + // look inside web components even if open) + (composedPath === null || composedPath === void 0 ? void 0 : composedPath.includes(container)) || tabbableNodes.find(function(node) { + return node === element; + }); + }); + }; + var getNodeForOption = function getNodeForOption2(optionName) { + var optionValue = config[optionName]; + if (typeof optionValue === "function") { + for (var _len2 = arguments.length, params = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { + params[_key2 - 1] = arguments[_key2]; + } + optionValue = optionValue.apply(void 0, params); + } + if (optionValue === true) { + optionValue = void 0; + } + if (!optionValue) { + if (optionValue === void 0 || optionValue === false) { + return optionValue; + } + throw new Error("`".concat(optionName, "` was specified but was not a node, or did not return a node")); + } + var node = optionValue; + if (typeof optionValue === "string") { + node = doc.querySelector(optionValue); + if (!node) { + throw new Error("`".concat(optionName, "` as selector refers to no known node")); + } + } + return node; + }; + var getInitialFocusNode = function getInitialFocusNode2() { + var node = getNodeForOption("initialFocus"); + if (node === false) { + return false; + } + if (node === void 0 || !isFocusable(node, config.tabbableOptions)) { + if (findContainerIndex(doc.activeElement) >= 0) { + node = doc.activeElement; + } else { + var firstTabbableGroup = state.tabbableGroups[0]; + var firstTabbableNode = firstTabbableGroup && firstTabbableGroup.firstTabbableNode; + node = firstTabbableNode || getNodeForOption("fallbackFocus"); + } + } + if (!node) { + throw new Error("Your focus-trap needs to have at least one focusable element"); + } + return node; + }; + var updateTabbableNodes = function updateTabbableNodes2() { + state.containerGroups = state.containers.map(function(container) { + var tabbableNodes = tabbable(container, config.tabbableOptions); + var focusableNodes = focusable(container, config.tabbableOptions); + var firstTabbableNode = tabbableNodes.length > 0 ? tabbableNodes[0] : void 0; + var lastTabbableNode = tabbableNodes.length > 0 ? tabbableNodes[tabbableNodes.length - 1] : void 0; + var firstDomTabbableNode = focusableNodes.find(function(node) { + return isTabbable(node); + }); + var lastDomTabbableNode = focusableNodes.slice().reverse().find(function(node) { + return isTabbable(node); + }); + var posTabIndexesFound = !!tabbableNodes.find(function(node) { + return getTabIndex(node) > 0; + }); + return { + container, + tabbableNodes, + focusableNodes, + /** True if at least one node with positive `tabindex` was found in this container. */ + posTabIndexesFound, + /** First tabbable node in container, __tabindex__ order; `undefined` if none. */ + firstTabbableNode, + /** Last tabbable node in container, __tabindex__ order; `undefined` if none. */ + lastTabbableNode, + // NOTE: DOM order is NOT NECESSARILY "document position" order, but figuring that out + // would require more than just https://developer.mozilla.org/en-US/docs/Web/API/Node/compareDocumentPosition + // because that API doesn't work with Shadow DOM as well as it should (@see + // https://github.com/whatwg/dom/issues/320) and since this first/last is only needed, so far, + // to address an edge case related to positive tabindex support, this seems like a much easier, + // "close enough most of the time" alternative for positive tabindexes which should generally + // be avoided anyway... + /** First tabbable node in container, __DOM__ order; `undefined` if none. */ + firstDomTabbableNode, + /** Last tabbable node in container, __DOM__ order; `undefined` if none. */ + lastDomTabbableNode, + /** + * Finds the __tabbable__ node that follows the given node in the specified direction, + * in this container, if any. + * @param {HTMLElement} node + * @param {boolean} [forward] True if going in forward tab order; false if going + * in reverse. + * @returns {HTMLElement|undefined} The next tabbable node, if any. + */ + nextTabbableNode: function nextTabbableNode(node) { + var forward = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true; + var nodeIdx = tabbableNodes.indexOf(node); + if (nodeIdx < 0) { + if (forward) { + return focusableNodes.slice(focusableNodes.indexOf(node) + 1).find(function(el) { + return isTabbable(el); + }); + } + return focusableNodes.slice(0, focusableNodes.indexOf(node)).reverse().find(function(el) { + return isTabbable(el); + }); + } + return tabbableNodes[nodeIdx + (forward ? 1 : -1)]; + } + }; + }); + state.tabbableGroups = state.containerGroups.filter(function(group) { + return group.tabbableNodes.length > 0; + }); + if (state.tabbableGroups.length <= 0 && !getNodeForOption("fallbackFocus")) { + throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times"); + } + if (state.containerGroups.find(function(g) { + return g.posTabIndexesFound; + }) && state.containerGroups.length > 1) { + throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps."); + } + }; + var getActiveElement = function getActiveElement2(el) { + var activeElement = el.activeElement; + if (!activeElement) { + return; + } + if (activeElement.shadowRoot && activeElement.shadowRoot.activeElement !== null) { + return getActiveElement2(activeElement.shadowRoot); + } + return activeElement; + }; + var tryFocus = function tryFocus2(node) { + if (node === false) { + return; + } + if (node === getActiveElement(document)) { + return; + } + if (!node || !node.focus) { + tryFocus2(getInitialFocusNode()); + return; + } + node.focus({ + preventScroll: !!config.preventScroll + }); + state.mostRecentlyFocusedNode = node; + if (isSelectableInput(node)) { + node.select(); + } + }; + var getReturnFocusNode = function getReturnFocusNode2(previousActiveElement) { + var node = getNodeForOption("setReturnFocus", previousActiveElement); + return node ? node : node === false ? false : previousActiveElement; + }; + var findNextNavNode = function findNextNavNode2(_ref2) { + var target = _ref2.target, event = _ref2.event, _ref2$isBackward = _ref2.isBackward, isBackward = _ref2$isBackward === void 0 ? false : _ref2$isBackward; + target = target || getActualTarget(event); + updateTabbableNodes(); + var destinationNode = null; + if (state.tabbableGroups.length > 0) { + var containerIndex = findContainerIndex(target, event); + var containerGroup = containerIndex >= 0 ? state.containerGroups[containerIndex] : void 0; + if (containerIndex < 0) { + if (isBackward) { + destinationNode = state.tabbableGroups[state.tabbableGroups.length - 1].lastTabbableNode; + } else { + destinationNode = state.tabbableGroups[0].firstTabbableNode; + } + } else if (isBackward) { + var startOfGroupIndex = findIndex(state.tabbableGroups, function(_ref3) { + var firstTabbableNode = _ref3.firstTabbableNode; + return target === firstTabbableNode; + }); + if (startOfGroupIndex < 0 && (containerGroup.container === target || isFocusable(target, config.tabbableOptions) && !isTabbable(target, config.tabbableOptions) && !containerGroup.nextTabbableNode(target, false))) { + startOfGroupIndex = containerIndex; + } + if (startOfGroupIndex >= 0) { + var destinationGroupIndex = startOfGroupIndex === 0 ? state.tabbableGroups.length - 1 : startOfGroupIndex - 1; + var destinationGroup = state.tabbableGroups[destinationGroupIndex]; + destinationNode = getTabIndex(target) >= 0 ? destinationGroup.lastTabbableNode : destinationGroup.lastDomTabbableNode; + } else if (!isTabEvent(event)) { + destinationNode = containerGroup.nextTabbableNode(target, false); + } + } else { + var lastOfGroupIndex = findIndex(state.tabbableGroups, function(_ref4) { + var lastTabbableNode = _ref4.lastTabbableNode; + return target === lastTabbableNode; + }); + if (lastOfGroupIndex < 0 && (containerGroup.container === target || isFocusable(target, config.tabbableOptions) && !isTabbable(target, config.tabbableOptions) && !containerGroup.nextTabbableNode(target))) { + lastOfGroupIndex = containerIndex; + } + if (lastOfGroupIndex >= 0) { + var _destinationGroupIndex = lastOfGroupIndex === state.tabbableGroups.length - 1 ? 0 : lastOfGroupIndex + 1; + var _destinationGroup = state.tabbableGroups[_destinationGroupIndex]; + destinationNode = getTabIndex(target) >= 0 ? _destinationGroup.firstTabbableNode : _destinationGroup.firstDomTabbableNode; + } else if (!isTabEvent(event)) { + destinationNode = containerGroup.nextTabbableNode(target); + } + } + } else { + destinationNode = getNodeForOption("fallbackFocus"); + } + return destinationNode; + }; + var checkPointerDown = function checkPointerDown2(e) { + var target = getActualTarget(e); + if (findContainerIndex(target, e) >= 0) { + return; + } + if (valueOrHandler(config.clickOutsideDeactivates, e)) { + trap.deactivate({ + // NOTE: by setting `returnFocus: false`, deactivate() will do nothing, + // which will result in the outside click setting focus to the node + // that was clicked (and if not focusable, to "nothing"); by setting + // `returnFocus: true`, we'll attempt to re-focus the node originally-focused + // on activation (or the configured `setReturnFocus` node), whether the + // outside click was on a focusable node or not + returnFocus: config.returnFocusOnDeactivate + }); + return; + } + if (valueOrHandler(config.allowOutsideClick, e)) { + return; + } + e.preventDefault(); + }; + var checkFocusIn = function checkFocusIn2(event) { + var target = getActualTarget(event); + var targetContained = findContainerIndex(target, event) >= 0; + if (targetContained || target instanceof Document) { + if (targetContained) { + state.mostRecentlyFocusedNode = target; + } + } else { + event.stopImmediatePropagation(); + var nextNode; + var navAcrossContainers = true; + if (state.mostRecentlyFocusedNode) { + if (getTabIndex(state.mostRecentlyFocusedNode) > 0) { + var mruContainerIdx = findContainerIndex(state.mostRecentlyFocusedNode); + var tabbableNodes = state.containerGroups[mruContainerIdx].tabbableNodes; + if (tabbableNodes.length > 0) { + var mruTabIdx = tabbableNodes.findIndex(function(node) { + return node === state.mostRecentlyFocusedNode; + }); + if (mruTabIdx >= 0) { + if (config.isKeyForward(state.recentNavEvent)) { + if (mruTabIdx + 1 < tabbableNodes.length) { + nextNode = tabbableNodes[mruTabIdx + 1]; + navAcrossContainers = false; + } + } else { + if (mruTabIdx - 1 >= 0) { + nextNode = tabbableNodes[mruTabIdx - 1]; + navAcrossContainers = false; + } + } + } + } + } else { + if (!state.containerGroups.some(function(g) { + return g.tabbableNodes.some(function(n) { + return getTabIndex(n) > 0; + }); + })) { + navAcrossContainers = false; + } + } + } else { + navAcrossContainers = false; + } + if (navAcrossContainers) { + nextNode = findNextNavNode({ + // move FROM the MRU node, not event-related node (which will be the node that is + // outside the trap causing the focus escape we're trying to fix) + target: state.mostRecentlyFocusedNode, + isBackward: config.isKeyBackward(state.recentNavEvent) + }); + } + if (nextNode) { + tryFocus(nextNode); + } else { + tryFocus(state.mostRecentlyFocusedNode || getInitialFocusNode()); + } + } + state.recentNavEvent = void 0; + }; + var checkKeyNav = function checkKeyNav2(event) { + var isBackward = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false; + state.recentNavEvent = event; + var destinationNode = findNextNavNode({ + event, + isBackward + }); + if (destinationNode) { + if (isTabEvent(event)) { + event.preventDefault(); + } + tryFocus(destinationNode); + } + }; + var checkKey = function checkKey2(event) { + if (isEscapeEvent(event) && valueOrHandler(config.escapeDeactivates, event) !== false) { + event.preventDefault(); + trap.deactivate(); + return; + } + if (config.isKeyForward(event) || config.isKeyBackward(event)) { + checkKeyNav(event, config.isKeyBackward(event)); + } + }; + var checkClick = function checkClick2(e) { + var target = getActualTarget(e); + if (findContainerIndex(target, e) >= 0) { + return; + } + if (valueOrHandler(config.clickOutsideDeactivates, e)) { + return; + } + if (valueOrHandler(config.allowOutsideClick, e)) { + return; + } + e.preventDefault(); + e.stopImmediatePropagation(); + }; + var addListeners = function addListeners2() { + if (!state.active) { + return; + } + activeFocusTraps.activateTrap(trapStack, trap); + state.delayInitialFocusTimer = config.delayInitialFocus ? delay(function() { + tryFocus(getInitialFocusNode()); + }) : tryFocus(getInitialFocusNode()); + doc.addEventListener("focusin", checkFocusIn, true); + doc.addEventListener("mousedown", checkPointerDown, { + capture: true, + passive: false + }); + doc.addEventListener("touchstart", checkPointerDown, { + capture: true, + passive: false + }); + doc.addEventListener("click", checkClick, { + capture: true, + passive: false + }); + doc.addEventListener("keydown", checkKey, { + capture: true, + passive: false + }); + return trap; + }; + var removeListeners = function removeListeners2() { + if (!state.active) { + return; + } + doc.removeEventListener("focusin", checkFocusIn, true); + doc.removeEventListener("mousedown", checkPointerDown, true); + doc.removeEventListener("touchstart", checkPointerDown, true); + doc.removeEventListener("click", checkClick, true); + doc.removeEventListener("keydown", checkKey, true); + return trap; + }; + var checkDomRemoval = function checkDomRemoval2(mutations) { + var isFocusedNodeRemoved = mutations.some(function(mutation) { + var removedNodes = Array.from(mutation.removedNodes); + return removedNodes.some(function(node) { + return node === state.mostRecentlyFocusedNode; + }); + }); + if (isFocusedNodeRemoved) { + tryFocus(getInitialFocusNode()); + } + }; + var mutationObserver = typeof window !== "undefined" && "MutationObserver" in window ? new MutationObserver(checkDomRemoval) : void 0; + var updateObservedNodes = function updateObservedNodes2() { + if (!mutationObserver) { + return; + } + mutationObserver.disconnect(); + if (state.active && !state.paused) { + state.containers.map(function(container) { + mutationObserver.observe(container, { + subtree: true, + childList: true + }); + }); + } + }; + trap = { + get active() { + return state.active; + }, + get paused() { + return state.paused; + }, + activate: function activate(activateOptions) { + if (state.active) { + return this; + } + var onActivate = getOption(activateOptions, "onActivate"); + var onPostActivate = getOption(activateOptions, "onPostActivate"); + var checkCanFocusTrap = getOption(activateOptions, "checkCanFocusTrap"); + if (!checkCanFocusTrap) { + updateTabbableNodes(); + } + state.active = true; + state.paused = false; + state.nodeFocusedBeforeActivation = doc.activeElement; + onActivate === null || onActivate === void 0 || onActivate(); + var finishActivation = function finishActivation2() { + if (checkCanFocusTrap) { + updateTabbableNodes(); + } + addListeners(); + updateObservedNodes(); + onPostActivate === null || onPostActivate === void 0 || onPostActivate(); + }; + if (checkCanFocusTrap) { + checkCanFocusTrap(state.containers.concat()).then(finishActivation, finishActivation); + return this; + } + finishActivation(); + return this; + }, + deactivate: function deactivate(deactivateOptions) { + if (!state.active) { + return this; + } + var options = _objectSpread2({ + onDeactivate: config.onDeactivate, + onPostDeactivate: config.onPostDeactivate, + checkCanReturnFocus: config.checkCanReturnFocus + }, deactivateOptions); + clearTimeout(state.delayInitialFocusTimer); + state.delayInitialFocusTimer = void 0; + removeListeners(); + state.active = false; + state.paused = false; + updateObservedNodes(); + activeFocusTraps.deactivateTrap(trapStack, trap); + var onDeactivate = getOption(options, "onDeactivate"); + var onPostDeactivate = getOption(options, "onPostDeactivate"); + var checkCanReturnFocus = getOption(options, "checkCanReturnFocus"); + var returnFocus = getOption(options, "returnFocus", "returnFocusOnDeactivate"); + onDeactivate === null || onDeactivate === void 0 || onDeactivate(); + var finishDeactivation = function finishDeactivation2() { + delay(function() { + if (returnFocus) { + tryFocus(getReturnFocusNode(state.nodeFocusedBeforeActivation)); + } + onPostDeactivate === null || onPostDeactivate === void 0 || onPostDeactivate(); + }); + }; + if (returnFocus && checkCanReturnFocus) { + checkCanReturnFocus(getReturnFocusNode(state.nodeFocusedBeforeActivation)).then(finishDeactivation, finishDeactivation); + return this; + } + finishDeactivation(); + return this; + }, + pause: function pause(pauseOptions) { + if (state.paused || !state.active) { + return this; + } + var onPause = getOption(pauseOptions, "onPause"); + var onPostPause = getOption(pauseOptions, "onPostPause"); + state.paused = true; + onPause === null || onPause === void 0 || onPause(); + removeListeners(); + updateObservedNodes(); + onPostPause === null || onPostPause === void 0 || onPostPause(); + return this; + }, + unpause: function unpause(unpauseOptions) { + if (!state.paused || !state.active) { + return this; + } + var onUnpause = getOption(unpauseOptions, "onUnpause"); + var onPostUnpause = getOption(unpauseOptions, "onPostUnpause"); + state.paused = false; + onUnpause === null || onUnpause === void 0 || onUnpause(); + updateTabbableNodes(); + addListeners(); + updateObservedNodes(); + onPostUnpause === null || onPostUnpause === void 0 || onPostUnpause(); + return this; + }, + updateContainerElements: function updateContainerElements(containerElements) { + var elementsAsArray = [].concat(containerElements).filter(Boolean); + state.containers = elementsAsArray.map(function(element) { + return typeof element === "string" ? doc.querySelector(element) : element; + }); + if (state.active) { + updateTabbableNodes(); + } + updateObservedNodes(); + return this; + } + }; + trap.updateContainerElements(elements); + return trap; +}; +function useFocusTrap(target, options = {}) { + let trap; + const { immediate, ...focusTrapOptions } = options; + const hasFocus = ref(false); + const isPaused = ref(false); + const activate = (opts) => trap && trap.activate(opts); + const deactivate = (opts) => trap && trap.deactivate(opts); + const pause = () => { + if (trap) { + trap.pause(); + isPaused.value = true; + } + }; + const unpause = () => { + if (trap) { + trap.unpause(); + isPaused.value = false; + } + }; + const targets = computed(() => { + const _targets = toValue(target); + return (Array.isArray(_targets) ? _targets : [_targets]).map((el) => { + const _el = toValue(el); + return typeof _el === "string" ? _el : unrefElement(_el); + }).filter(notNullish); + }); + watch( + targets, + (els) => { + if (!els.length) + return; + trap = createFocusTrap(els, { + ...focusTrapOptions, + onActivate() { + hasFocus.value = true; + if (options.onActivate) + options.onActivate(); + }, + onDeactivate() { + hasFocus.value = false; + if (options.onDeactivate) + options.onDeactivate(); + } + }); + if (immediate) + activate(); + }, + { flush: "post" } + ); + tryOnScopeDispose(() => deactivate()); + return { + hasFocus, + isPaused, + activate, + deactivate, + pause, + unpause + }; +} +class DOMIterator { + /** + * @param {HTMLElement|HTMLElement[]|NodeList|string} ctx - The context DOM + * element, an array of DOM elements, a NodeList or a selector + * @param {boolean} [iframes=true] - A boolean indicating if iframes should + * be handled + * @param {string[]} [exclude=[]] - An array containing exclusion selectors + * for iframes + * @param {number} [iframesTimeout=5000] - A number indicating the ms to + * wait before an iframe should be skipped, in case the load event isn't + * fired. This also applies if the user is offline and the resource of the + * iframe is online (either by the browsers "offline" mode or because + * there's no internet connection) + */ + constructor(ctx, iframes = true, exclude = [], iframesTimeout = 5e3) { + this.ctx = ctx; + this.iframes = iframes; + this.exclude = exclude; + this.iframesTimeout = iframesTimeout; + } + /** + * Checks if the specified DOM element matches the selector + * @param {HTMLElement} element - The DOM element + * @param {string|string[]} selector - The selector or an array with + * selectors + * @return {boolean} + * @access public + */ + static matches(element, selector) { + const selectors = typeof selector === "string" ? [selector] : selector, fn = element.matches || element.matchesSelector || element.msMatchesSelector || element.mozMatchesSelector || element.oMatchesSelector || element.webkitMatchesSelector; + if (fn) { + let match = false; + selectors.every((sel) => { + if (fn.call(element, sel)) { + match = true; + return false; + } + return true; + }); + return match; + } else { + return false; + } + } + /** + * Returns all contexts filtered by duplicates (even nested) + * @return {HTMLElement[]} - An array containing DOM contexts + * @access protected + */ + getContexts() { + let ctx, filteredCtx = []; + if (typeof this.ctx === "undefined" || !this.ctx) { + ctx = []; + } else if (NodeList.prototype.isPrototypeOf(this.ctx)) { + ctx = Array.prototype.slice.call(this.ctx); + } else if (Array.isArray(this.ctx)) { + ctx = this.ctx; + } else if (typeof this.ctx === "string") { + ctx = Array.prototype.slice.call( + document.querySelectorAll(this.ctx) + ); + } else { + ctx = [this.ctx]; + } + ctx.forEach((ctx2) => { + const isDescendant = filteredCtx.filter((contexts) => { + return contexts.contains(ctx2); + }).length > 0; + if (filteredCtx.indexOf(ctx2) === -1 && !isDescendant) { + filteredCtx.push(ctx2); + } + }); + return filteredCtx; + } + /** + * @callback DOMIterator~getIframeContentsSuccessCallback + * @param {HTMLDocument} contents - The contentDocument of the iframe + */ + /** + * Calls the success callback function with the iframe document. If it can't + * be accessed it calls the error callback function + * @param {HTMLElement} ifr - The iframe DOM element + * @param {DOMIterator~getIframeContentsSuccessCallback} successFn + * @param {function} [errorFn] + * @access protected + */ + getIframeContents(ifr, successFn, errorFn = () => { + }) { + let doc; + try { + const ifrWin = ifr.contentWindow; + doc = ifrWin.document; + if (!ifrWin || !doc) { + throw new Error("iframe inaccessible"); + } + } catch (e) { + errorFn(); + } + if (doc) { + successFn(doc); + } + } + /** + * Checks if an iframe is empty (if about:blank is the shown page) + * @param {HTMLElement} ifr - The iframe DOM element + * @return {boolean} + * @access protected + */ + isIframeBlank(ifr) { + const bl = "about:blank", src = ifr.getAttribute("src").trim(), href = ifr.contentWindow.location.href; + return href === bl && src !== bl && src; + } + /** + * Observes the onload event of an iframe and calls the success callback or + * the error callback if the iframe is inaccessible. If the event isn't + * fired within the specified {@link DOMIterator#iframesTimeout}, then it'll + * call the error callback too + * @param {HTMLElement} ifr - The iframe DOM element + * @param {DOMIterator~getIframeContentsSuccessCallback} successFn + * @param {function} errorFn + * @access protected + */ + observeIframeLoad(ifr, successFn, errorFn) { + let called = false, tout = null; + const listener = () => { + if (called) { + return; + } + called = true; + clearTimeout(tout); + try { + if (!this.isIframeBlank(ifr)) { + ifr.removeEventListener("load", listener); + this.getIframeContents(ifr, successFn, errorFn); + } + } catch (e) { + errorFn(); + } + }; + ifr.addEventListener("load", listener); + tout = setTimeout(listener, this.iframesTimeout); + } + /** + * Callback when the iframe is ready + * @callback DOMIterator~onIframeReadySuccessCallback + * @param {HTMLDocument} contents - The contentDocument of the iframe + */ + /** + * Callback if the iframe can't be accessed + * @callback DOMIterator~onIframeReadyErrorCallback + */ + /** + * Calls the callback if the specified iframe is ready for DOM access + * @param {HTMLElement} ifr - The iframe DOM element + * @param {DOMIterator~onIframeReadySuccessCallback} successFn - Success + * callback + * @param {DOMIterator~onIframeReadyErrorCallback} errorFn - Error callback + * @see {@link http://stackoverflow.com/a/36155560/3894981} for + * background information + * @access protected + */ + onIframeReady(ifr, successFn, errorFn) { + try { + if (ifr.contentWindow.document.readyState === "complete") { + if (this.isIframeBlank(ifr)) { + this.observeIframeLoad(ifr, successFn, errorFn); + } else { + this.getIframeContents(ifr, successFn, errorFn); + } + } else { + this.observeIframeLoad(ifr, successFn, errorFn); + } + } catch (e) { + errorFn(); + } + } + /** + * Callback when all iframes are ready for DOM access + * @callback DOMIterator~waitForIframesDoneCallback + */ + /** + * Iterates over all iframes and calls the done callback when all of them + * are ready for DOM access (including nested ones) + * @param {HTMLElement} ctx - The context DOM element + * @param {DOMIterator~waitForIframesDoneCallback} done - Done callback + */ + waitForIframes(ctx, done) { + let eachCalled = 0; + this.forEachIframe(ctx, () => true, (ifr) => { + eachCalled++; + this.waitForIframes(ifr.querySelector("html"), () => { + if (!--eachCalled) { + done(); + } + }); + }, (handled) => { + if (!handled) { + done(); + } + }); + } + /** + * Callback allowing to filter an iframe. Must return true when the element + * should remain, otherwise false + * @callback DOMIterator~forEachIframeFilterCallback + * @param {HTMLElement} iframe - The iframe DOM element + */ + /** + * Callback for each iframe content + * @callback DOMIterator~forEachIframeEachCallback + * @param {HTMLElement} content - The iframe document + */ + /** + * Callback if all iframes inside the context were handled + * @callback DOMIterator~forEachIframeEndCallback + * @param {number} handled - The number of handled iframes (those who + * wheren't filtered) + */ + /** + * Iterates over all iframes inside the specified context and calls the + * callbacks when they're ready. Filters iframes based on the instance + * exclusion selectors + * @param {HTMLElement} ctx - The context DOM element + * @param {DOMIterator~forEachIframeFilterCallback} filter - Filter callback + * @param {DOMIterator~forEachIframeEachCallback} each - Each callback + * @param {DOMIterator~forEachIframeEndCallback} [end] - End callback + * @access protected + */ + forEachIframe(ctx, filter, each, end = () => { + }) { + let ifr = ctx.querySelectorAll("iframe"), open = ifr.length, handled = 0; + ifr = Array.prototype.slice.call(ifr); + const checkEnd = () => { + if (--open <= 0) { + end(handled); + } + }; + if (!open) { + checkEnd(); + } + ifr.forEach((ifr2) => { + if (DOMIterator.matches(ifr2, this.exclude)) { + checkEnd(); + } else { + this.onIframeReady(ifr2, (con) => { + if (filter(ifr2)) { + handled++; + each(con); + } + checkEnd(); + }, checkEnd); + } + }); + } + /** + * Creates a NodeIterator on the specified context + * @see {@link https://developer.mozilla.org/en/docs/Web/API/NodeIterator} + * @param {HTMLElement} ctx - The context DOM element + * @param {DOMIterator~whatToShow} whatToShow + * @param {DOMIterator~filterCb} filter + * @return {NodeIterator} + * @access protected + */ + createIterator(ctx, whatToShow, filter) { + return document.createNodeIterator(ctx, whatToShow, filter, false); + } + /** + * Creates an instance of DOMIterator in an iframe + * @param {HTMLDocument} contents - Iframe document + * @return {DOMIterator} + * @access protected + */ + createInstanceOnIframe(contents) { + return new DOMIterator(contents.querySelector("html"), this.iframes); + } + /** + * Checks if an iframe occurs between two nodes, more specifically if an + * iframe occurs before the specified node and after the specified prevNode + * @param {HTMLElement} node - The node that should occur after the iframe + * @param {HTMLElement} prevNode - The node that should occur before the + * iframe + * @param {HTMLElement} ifr - The iframe to check against + * @return {boolean} + * @access protected + */ + compareNodeIframe(node, prevNode, ifr) { + const compCurr = node.compareDocumentPosition(ifr), prev = Node.DOCUMENT_POSITION_PRECEDING; + if (compCurr & prev) { + if (prevNode !== null) { + const compPrev = prevNode.compareDocumentPosition(ifr), after = Node.DOCUMENT_POSITION_FOLLOWING; + if (compPrev & after) { + return true; + } + } else { + return true; + } + } + return false; + } + /** + * @typedef {DOMIterator~getIteratorNodeReturn} + * @type {object.} + * @property {HTMLElement} prevNode - The previous node or null if there is + * no + * @property {HTMLElement} node - The current node + */ + /** + * Returns the previous and current node of the specified iterator + * @param {NodeIterator} itr - The iterator + * @return {DOMIterator~getIteratorNodeReturn} + * @access protected + */ + getIteratorNode(itr) { + const prevNode = itr.previousNode(); + let node; + if (prevNode === null) { + node = itr.nextNode(); + } else { + node = itr.nextNode() && itr.nextNode(); + } + return { + prevNode, + node + }; + } + /** + * An array containing objects. The object key "val" contains an iframe + * DOM element. The object key "handled" contains a boolean indicating if + * the iframe was handled already. + * It wouldn't be enough to save all open or all already handled iframes. + * The information of open iframes is necessary because they may occur after + * all other text nodes (and compareNodeIframe would never be true). The + * information of already handled iframes is necessary as otherwise they may + * be handled multiple times + * @typedef DOMIterator~checkIframeFilterIfr + * @type {object[]} + */ + /** + * Checks if an iframe wasn't handled already and if so, calls + * {@link DOMIterator#compareNodeIframe} to check if it should be handled. + * Information wheter an iframe was or wasn't handled is given within the + * ifr dictionary + * @param {HTMLElement} node - The node that should occur after the iframe + * @param {HTMLElement} prevNode - The node that should occur before the + * iframe + * @param {HTMLElement} currIfr - The iframe to check + * @param {DOMIterator~checkIframeFilterIfr} ifr - The iframe dictionary. + * Will be manipulated (by reference) + * @return {boolean} Returns true when it should be handled, otherwise false + * @access protected + */ + checkIframeFilter(node, prevNode, currIfr, ifr) { + let key = false, handled = false; + ifr.forEach((ifrDict, i) => { + if (ifrDict.val === currIfr) { + key = i; + handled = ifrDict.handled; + } + }); + if (this.compareNodeIframe(node, prevNode, currIfr)) { + if (key === false && !handled) { + ifr.push({ + val: currIfr, + handled: true + }); + } else if (key !== false && !handled) { + ifr[key].handled = true; + } + return true; + } + if (key === false) { + ifr.push({ + val: currIfr, + handled: false + }); + } + return false; + } + /** + * Creates an iterator on all open iframes in the specified array and calls + * the end callback when finished + * @param {DOMIterator~checkIframeFilterIfr} ifr + * @param {DOMIterator~whatToShow} whatToShow + * @param {DOMIterator~forEachNodeCallback} eCb - Each callback + * @param {DOMIterator~filterCb} fCb + * @access protected + */ + handleOpenIframes(ifr, whatToShow, eCb, fCb) { + ifr.forEach((ifrDict) => { + if (!ifrDict.handled) { + this.getIframeContents(ifrDict.val, (con) => { + this.createInstanceOnIframe(con).forEachNode( + whatToShow, + eCb, + fCb + ); + }); + } + }); + } + /** + * Iterates through all nodes in the specified context and handles iframe + * nodes at the correct position + * @param {DOMIterator~whatToShow} whatToShow + * @param {HTMLElement} ctx - The context + * @param {DOMIterator~forEachNodeCallback} eachCb - Each callback + * @param {DOMIterator~filterCb} filterCb - Filter callback + * @param {DOMIterator~forEachNodeEndCallback} doneCb - End callback + * @access protected + */ + iterateThroughNodes(whatToShow, ctx, eachCb, filterCb, doneCb) { + const itr = this.createIterator(ctx, whatToShow, filterCb); + let ifr = [], elements = [], node, prevNode, retrieveNodes = () => { + ({ + prevNode, + node + } = this.getIteratorNode(itr)); + return node; + }; + while (retrieveNodes()) { + if (this.iframes) { + this.forEachIframe(ctx, (currIfr) => { + return this.checkIframeFilter(node, prevNode, currIfr, ifr); + }, (con) => { + this.createInstanceOnIframe(con).forEachNode( + whatToShow, + (ifrNode) => elements.push(ifrNode), + filterCb + ); + }); + } + elements.push(node); + } + elements.forEach((node2) => { + eachCb(node2); + }); + if (this.iframes) { + this.handleOpenIframes(ifr, whatToShow, eachCb, filterCb); + } + doneCb(); + } + /** + * Callback for each node + * @callback DOMIterator~forEachNodeCallback + * @param {HTMLElement} node - The DOM text node element + */ + /** + * Callback if all contexts were handled + * @callback DOMIterator~forEachNodeEndCallback + */ + /** + * Iterates over all contexts and initializes + * {@link DOMIterator#iterateThroughNodes iterateThroughNodes} on them + * @param {DOMIterator~whatToShow} whatToShow + * @param {DOMIterator~forEachNodeCallback} each - Each callback + * @param {DOMIterator~filterCb} filter - Filter callback + * @param {DOMIterator~forEachNodeEndCallback} done - End callback + * @access public + */ + forEachNode(whatToShow, each, filter, done = () => { + }) { + const contexts = this.getContexts(); + let open = contexts.length; + if (!open) { + done(); + } + contexts.forEach((ctx) => { + const ready = () => { + this.iterateThroughNodes(whatToShow, ctx, each, filter, () => { + if (--open <= 0) { + done(); + } + }); + }; + if (this.iframes) { + this.waitForIframes(ctx, ready); + } else { + ready(); + } + }); + } + /** + * Callback to filter nodes. Can return e.g. NodeFilter.FILTER_ACCEPT or + * NodeFilter.FILTER_REJECT + * @see {@link http://tinyurl.com/zdczmm2} + * @callback DOMIterator~filterCb + * @param {HTMLElement} node - The node to filter + */ + /** + * @typedef DOMIterator~whatToShow + * @see {@link http://tinyurl.com/zfqqkx2} + * @type {number} + */ +} +let Mark$1 = class Mark { + // eslint-disable-line no-unused-vars + /** + * @param {HTMLElement|HTMLElement[]|NodeList|string} ctx - The context DOM + * element, an array of DOM elements, a NodeList or a selector + */ + constructor(ctx) { + this.ctx = ctx; + this.ie = false; + const ua = window.navigator.userAgent; + if (ua.indexOf("MSIE") > -1 || ua.indexOf("Trident") > -1) { + this.ie = true; + } + } + /** + * Options defined by the user. They will be initialized from one of the + * public methods. See {@link Mark#mark}, {@link Mark#markRegExp}, + * {@link Mark#markRanges} and {@link Mark#unmark} for option properties. + * @type {object} + * @param {object} [val] - An object that will be merged with defaults + * @access protected + */ + set opt(val) { + this._opt = Object.assign({}, { + "element": "", + "className": "", + "exclude": [], + "iframes": false, + "iframesTimeout": 5e3, + "separateWordSearch": true, + "diacritics": true, + "synonyms": {}, + "accuracy": "partially", + "acrossElements": false, + "caseSensitive": false, + "ignoreJoiners": false, + "ignoreGroups": 0, + "ignorePunctuation": [], + "wildcards": "disabled", + "each": () => { + }, + "noMatch": () => { + }, + "filter": () => true, + "done": () => { + }, + "debug": false, + "log": window.console + }, val); + } + get opt() { + return this._opt; + } + /** + * An instance of DOMIterator + * @type {DOMIterator} + * @access protected + */ + get iterator() { + return new DOMIterator( + this.ctx, + this.opt.iframes, + this.opt.exclude, + this.opt.iframesTimeout + ); + } + /** + * Logs a message if log is enabled + * @param {string} msg - The message to log + * @param {string} [level="debug"] - The log level, e.g. warn + * error, debug + * @access protected + */ + log(msg, level = "debug") { + const log = this.opt.log; + if (!this.opt.debug) { + return; + } + if (typeof log === "object" && typeof log[level] === "function") { + log[level](`mark.js: ${msg}`); + } + } + /** + * Escapes a string for usage within a regular expression + * @param {string} str - The string to escape + * @return {string} + * @access protected + */ + escapeStr(str) { + return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"); + } + /** + * Creates a regular expression string to match the specified search + * term including synonyms, diacritics and accuracy if defined + * @param {string} str - The search term to be used + * @return {string} + * @access protected + */ + createRegExp(str) { + if (this.opt.wildcards !== "disabled") { + str = this.setupWildcardsRegExp(str); + } + str = this.escapeStr(str); + if (Object.keys(this.opt.synonyms).length) { + str = this.createSynonymsRegExp(str); + } + if (this.opt.ignoreJoiners || this.opt.ignorePunctuation.length) { + str = this.setupIgnoreJoinersRegExp(str); + } + if (this.opt.diacritics) { + str = this.createDiacriticsRegExp(str); + } + str = this.createMergedBlanksRegExp(str); + if (this.opt.ignoreJoiners || this.opt.ignorePunctuation.length) { + str = this.createJoinersRegExp(str); + } + if (this.opt.wildcards !== "disabled") { + str = this.createWildcardsRegExp(str); + } + str = this.createAccuracyRegExp(str); + return str; + } + /** + * Creates a regular expression string to match the defined synonyms + * @param {string} str - The search term to be used + * @return {string} + * @access protected + */ + createSynonymsRegExp(str) { + const syn = this.opt.synonyms, sens = this.opt.caseSensitive ? "" : "i", joinerPlaceholder = this.opt.ignoreJoiners || this.opt.ignorePunctuation.length ? "\0" : ""; + for (let index in syn) { + if (syn.hasOwnProperty(index)) { + const value = syn[index], k1 = this.opt.wildcards !== "disabled" ? this.setupWildcardsRegExp(index) : this.escapeStr(index), k2 = this.opt.wildcards !== "disabled" ? this.setupWildcardsRegExp(value) : this.escapeStr(value); + if (k1 !== "" && k2 !== "") { + str = str.replace( + new RegExp( + `(${this.escapeStr(k1)}|${this.escapeStr(k2)})`, + `gm${sens}` + ), + joinerPlaceholder + `(${this.processSynomyms(k1)}|${this.processSynomyms(k2)})` + joinerPlaceholder + ); + } + } + } + return str; + } + /** + * Setup synonyms to work with ignoreJoiners and or ignorePunctuation + * @param {string} str - synonym key or value to process + * @return {string} - processed synonym string + */ + processSynomyms(str) { + if (this.opt.ignoreJoiners || this.opt.ignorePunctuation.length) { + str = this.setupIgnoreJoinersRegExp(str); + } + return str; + } + /** + * Sets up the regular expression string to allow later insertion of + * wildcard regular expression matches + * @param {string} str - The search term to be used + * @return {string} + * @access protected + */ + setupWildcardsRegExp(str) { + str = str.replace(/(?:\\)*\?/g, (val) => { + return val.charAt(0) === "\\" ? "?" : ""; + }); + return str.replace(/(?:\\)*\*/g, (val) => { + return val.charAt(0) === "\\" ? "*" : ""; + }); + } + /** + * Sets up the regular expression string to allow later insertion of + * wildcard regular expression matches + * @param {string} str - The search term to be used + * @return {string} + * @access protected + */ + createWildcardsRegExp(str) { + let spaces = this.opt.wildcards === "withSpaces"; + return str.replace(/\u0001/g, spaces ? "[\\S\\s]?" : "\\S?").replace(/\u0002/g, spaces ? "[\\S\\s]*?" : "\\S*"); + } + /** + * Sets up the regular expression string to allow later insertion of + * designated characters (soft hyphens & zero width characters) + * @param {string} str - The search term to be used + * @return {string} + * @access protected + */ + setupIgnoreJoinersRegExp(str) { + return str.replace(/[^(|)\\]/g, (val, indx, original) => { + let nextChar = original.charAt(indx + 1); + if (/[(|)\\]/.test(nextChar) || nextChar === "") { + return val; + } else { + return val + "\0"; + } + }); + } + /** + * Creates a regular expression string to allow ignoring of designated + * characters (soft hyphens, zero width characters & punctuation) based on + * the specified option values of ignorePunctuation and + * ignoreJoiners + * @param {string} str - The search term to be used + * @return {string} + * @access protected + */ + createJoinersRegExp(str) { + let joiner = []; + const ignorePunctuation = this.opt.ignorePunctuation; + if (Array.isArray(ignorePunctuation) && ignorePunctuation.length) { + joiner.push(this.escapeStr(ignorePunctuation.join(""))); + } + if (this.opt.ignoreJoiners) { + joiner.push("\\u00ad\\u200b\\u200c\\u200d"); + } + return joiner.length ? str.split(/\u0000+/).join(`[${joiner.join("")}]*`) : str; + } + /** + * Creates a regular expression string to match diacritics + * @param {string} str - The search term to be used + * @return {string} + * @access protected + */ + createDiacriticsRegExp(str) { + const sens = this.opt.caseSensitive ? "" : "i", dct = this.opt.caseSensitive ? [ + "aàáảãạăằắẳẵặâầấẩẫậäåāą", + "AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ", + "cçćč", + "CÇĆČ", + "dđď", + "DĐĎ", + "eèéẻẽẹêềếểễệëěēę", + "EÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ", + "iìíỉĩịîïī", + "IÌÍỈĨỊÎÏĪ", + "lł", + "LŁ", + "nñňń", + "NÑŇŃ", + "oòóỏõọôồốổỗộơởỡớờợöøō", + "OÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ", + "rř", + "RŘ", + "sšśșş", + "SŠŚȘŞ", + "tťțţ", + "TŤȚŢ", + "uùúủũụưừứửữựûüůū", + "UÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ", + "yýỳỷỹỵÿ", + "YÝỲỶỸỴŸ", + "zžżź", + "ZŽŻŹ" + ] : [ + "aàáảãạăằắẳẵặâầấẩẫậäåāąAÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ", + "cçćčCÇĆČ", + "dđďDĐĎ", + "eèéẻẽẹêềếểễệëěēęEÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ", + "iìíỉĩịîïīIÌÍỈĨỊÎÏĪ", + "lłLŁ", + "nñňńNÑŇŃ", + "oòóỏõọôồốổỗộơởỡớờợöøōOÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ", + "rřRŘ", + "sšśșşSŠŚȘŞ", + "tťțţTŤȚŢ", + "uùúủũụưừứửữựûüůūUÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ", + "yýỳỷỹỵÿYÝỲỶỸỴŸ", + "zžżźZŽŻŹ" + ]; + let handled = []; + str.split("").forEach((ch) => { + dct.every((dct2) => { + if (dct2.indexOf(ch) !== -1) { + if (handled.indexOf(dct2) > -1) { + return false; + } + str = str.replace( + new RegExp(`[${dct2}]`, `gm${sens}`), + `[${dct2}]` + ); + handled.push(dct2); + } + return true; + }); + }); + return str; + } + /** + * Creates a regular expression string that merges whitespace characters + * including subsequent ones into a single pattern, one or multiple + * whitespaces + * @param {string} str - The search term to be used + * @return {string} + * @access protected + */ + createMergedBlanksRegExp(str) { + return str.replace(/[\s]+/gmi, "[\\s]+"); + } + /** + * Creates a regular expression string to match the specified string with + * the defined accuracy. As in the regular expression of "exactly" can be + * a group containing a blank at the beginning, all regular expressions will + * be created with two groups. The first group can be ignored (may contain + * the said blank), the second contains the actual match + * @param {string} str - The searm term to be used + * @return {str} + * @access protected + */ + createAccuracyRegExp(str) { + const chars = "!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~¡¿"; + let acc = this.opt.accuracy, val = typeof acc === "string" ? acc : acc.value, ls = typeof acc === "string" ? [] : acc.limiters, lsJoin = ""; + ls.forEach((limiter) => { + lsJoin += `|${this.escapeStr(limiter)}`; + }); + switch (val) { + case "partially": + default: + return `()(${str})`; + case "complementary": + lsJoin = "\\s" + (lsJoin ? lsJoin : this.escapeStr(chars)); + return `()([^${lsJoin}]*${str}[^${lsJoin}]*)`; + case "exactly": + return `(^|\\s${lsJoin})(${str})(?=$|\\s${lsJoin})`; + } + } + /** + * @typedef Mark~separatedKeywords + * @type {object.} + * @property {array.} keywords - The list of keywords + * @property {number} length - The length + */ + /** + * Returns a list of keywords dependent on whether separate word search + * was defined. Also it filters empty keywords + * @param {array} sv - The array of keywords + * @return {Mark~separatedKeywords} + * @access protected + */ + getSeparatedKeywords(sv) { + let stack = []; + sv.forEach((kw) => { + if (!this.opt.separateWordSearch) { + if (kw.trim() && stack.indexOf(kw) === -1) { + stack.push(kw); + } + } else { + kw.split(" ").forEach((kwSplitted) => { + if (kwSplitted.trim() && stack.indexOf(kwSplitted) === -1) { + stack.push(kwSplitted); + } + }); + } + }); + return { + // sort because of https://git.io/v6USg + "keywords": stack.sort((a, b) => { + return b.length - a.length; + }), + "length": stack.length + }; + } + /** + * Check if a value is a number + * @param {number|string} value - the value to check; + * numeric strings allowed + * @return {boolean} + * @access protected + */ + isNumeric(value) { + return Number(parseFloat(value)) == value; + } + /** + * @typedef Mark~rangeObject + * @type {object} + * @property {number} start - The start position within the composite value + * @property {number} length - The length of the string to mark within the + * composite value. + */ + /** + * @typedef Mark~setOfRanges + * @type {object[]} + * @property {Mark~rangeObject} + */ + /** + * Returns a processed list of integer offset indexes that do not overlap + * each other, and remove any string values or additional elements + * @param {Mark~setOfRanges} array - unprocessed raw array + * @return {Mark~setOfRanges} - processed array with any invalid entries + * removed + * @throws Will throw an error if an array of objects is not passed + * @access protected + */ + checkRanges(array) { + if (!Array.isArray(array) || Object.prototype.toString.call(array[0]) !== "[object Object]") { + this.log("markRanges() will only accept an array of objects"); + this.opt.noMatch(array); + return []; + } + const stack = []; + let last2 = 0; + array.sort((a, b) => { + return a.start - b.start; + }).forEach((item) => { + let { start, end, valid } = this.callNoMatchOnInvalidRanges(item, last2); + if (valid) { + item.start = start; + item.length = end - start; + stack.push(item); + last2 = end; + } + }); + return stack; + } + /** + * @typedef Mark~validObject + * @type {object} + * @property {number} start - The start position within the composite value + * @property {number} end - The calculated end position within the composite + * value. + * @property {boolean} valid - boolean value indicating that the start and + * calculated end range is valid + */ + /** + * Initial validation of ranges for markRanges. Preliminary checks are done + * to ensure the start and length values exist and are not zero or non- + * numeric + * @param {Mark~rangeObject} range - the current range object + * @param {number} last - last index of range + * @return {Mark~validObject} + * @access protected + */ + callNoMatchOnInvalidRanges(range, last2) { + let start, end, valid = false; + if (range && typeof range.start !== "undefined") { + start = parseInt(range.start, 10); + end = start + parseInt(range.length, 10); + if (this.isNumeric(range.start) && this.isNumeric(range.length) && end - last2 > 0 && end - start > 0) { + valid = true; + } else { + this.log( + `Ignoring invalid or overlapping range: ${JSON.stringify(range)}` + ); + this.opt.noMatch(range); + } + } else { + this.log(`Ignoring invalid range: ${JSON.stringify(range)}`); + this.opt.noMatch(range); + } + return { + start, + end, + valid + }; + } + /** + * Check valid range for markRanges. Check ranges with access to the context + * string. Range values are double checked, lengths that extend the mark + * beyond the string length are limitied and ranges containing only + * whitespace are ignored + * @param {Mark~rangeObject} range - the current range object + * @param {number} originalLength - original length of the context string + * @param {string} string - current content string + * @return {Mark~validObject} + * @access protected + */ + checkWhitespaceRanges(range, originalLength, string) { + let end, valid = true, max = string.length, offset = originalLength - max, start = parseInt(range.start, 10) - offset; + start = start > max ? max : start; + end = start + parseInt(range.length, 10); + if (end > max) { + end = max; + this.log(`End range automatically set to the max value of ${max}`); + } + if (start < 0 || end - start < 0 || start > max || end > max) { + valid = false; + this.log(`Invalid range: ${JSON.stringify(range)}`); + this.opt.noMatch(range); + } else if (string.substring(start, end).replace(/\s+/g, "") === "") { + valid = false; + this.log("Skipping whitespace only range: " + JSON.stringify(range)); + this.opt.noMatch(range); + } + return { + start, + end, + valid + }; + } + /** + * @typedef Mark~getTextNodesDict + * @type {object.} + * @property {string} value - The composite value of all text nodes + * @property {object[]} nodes - An array of objects + * @property {number} nodes.start - The start position within the composite + * value + * @property {number} nodes.end - The end position within the composite + * value + * @property {HTMLElement} nodes.node - The DOM text node element + */ + /** + * Callback + * @callback Mark~getTextNodesCallback + * @param {Mark~getTextNodesDict} + */ + /** + * Calls the callback with an object containing all text nodes (including + * iframe text nodes) with start and end positions and the composite value + * of them (string) + * @param {Mark~getTextNodesCallback} cb - Callback + * @access protected + */ + getTextNodes(cb) { + let val = "", nodes = []; + this.iterator.forEachNode(NodeFilter.SHOW_TEXT, (node) => { + nodes.push({ + start: val.length, + end: (val += node.textContent).length, + node + }); + }, (node) => { + if (this.matchesExclude(node.parentNode)) { + return NodeFilter.FILTER_REJECT; + } else { + return NodeFilter.FILTER_ACCEPT; + } + }, () => { + cb({ + value: val, + nodes + }); + }); + } + /** + * Checks if an element matches any of the specified exclude selectors. Also + * it checks for elements in which no marks should be performed (e.g. + * script and style tags) and optionally already marked elements + * @param {HTMLElement} el - The element to check + * @return {boolean} + * @access protected + */ + matchesExclude(el) { + return DOMIterator.matches(el, this.opt.exclude.concat([ + // ignores the elements itself, not their childrens (selector *) + "script", + "style", + "title", + "head", + "html" + ])); + } + /** + * Wraps the instance element and class around matches that fit the start + * and end positions within the node + * @param {HTMLElement} node - The DOM text node + * @param {number} start - The position where to start wrapping + * @param {number} end - The position where to end wrapping + * @return {HTMLElement} Returns the splitted text node that will appear + * after the wrapped text node + * @access protected + */ + wrapRangeInTextNode(node, start, end) { + const hEl = !this.opt.element ? "mark" : this.opt.element, startNode = node.splitText(start), ret = startNode.splitText(end - start); + let repl = document.createElement(hEl); + repl.setAttribute("data-markjs", "true"); + if (this.opt.className) { + repl.setAttribute("class", this.opt.className); + } + repl.textContent = startNode.textContent; + startNode.parentNode.replaceChild(repl, startNode); + return ret; + } + /** + * @typedef Mark~wrapRangeInMappedTextNodeDict + * @type {object.} + * @property {string} value - The composite value of all text nodes + * @property {object[]} nodes - An array of objects + * @property {number} nodes.start - The start position within the composite + * value + * @property {number} nodes.end - The end position within the composite + * value + * @property {HTMLElement} nodes.node - The DOM text node element + */ + /** + * Each callback + * @callback Mark~wrapMatchesEachCallback + * @param {HTMLElement} node - The wrapped DOM element + * @param {number} lastIndex - The last matching position within the + * composite value of text nodes + */ + /** + * Filter callback + * @callback Mark~wrapMatchesFilterCallback + * @param {HTMLElement} node - The matching text node DOM element + */ + /** + * Determines matches by start and end positions using the text node + * dictionary even across text nodes and calls + * {@link Mark#wrapRangeInTextNode} to wrap them + * @param {Mark~wrapRangeInMappedTextNodeDict} dict - The dictionary + * @param {number} start - The start position of the match + * @param {number} end - The end position of the match + * @param {Mark~wrapMatchesFilterCallback} filterCb - Filter callback + * @param {Mark~wrapMatchesEachCallback} eachCb - Each callback + * @access protected + */ + wrapRangeInMappedTextNode(dict, start, end, filterCb, eachCb) { + dict.nodes.every((n, i) => { + const sibl = dict.nodes[i + 1]; + if (typeof sibl === "undefined" || sibl.start > start) { + if (!filterCb(n.node)) { + return false; + } + const s = start - n.start, e = (end > n.end ? n.end : end) - n.start, startStr = dict.value.substr(0, n.start), endStr = dict.value.substr(e + n.start); + n.node = this.wrapRangeInTextNode(n.node, s, e); + dict.value = startStr + endStr; + dict.nodes.forEach((k, j) => { + if (j >= i) { + if (dict.nodes[j].start > 0 && j !== i) { + dict.nodes[j].start -= e; + } + dict.nodes[j].end -= e; + } + }); + end -= e; + eachCb(n.node.previousSibling, n.start); + if (end > n.end) { + start = n.end; + } else { + return false; + } + } + return true; + }); + } + /** + * Filter callback before each wrapping + * @callback Mark~wrapMatchesFilterCallback + * @param {string} match - The matching string + * @param {HTMLElement} node - The text node where the match occurs + */ + /** + * Callback for each wrapped element + * @callback Mark~wrapMatchesEachCallback + * @param {HTMLElement} element - The marked DOM element + */ + /** + * Callback on end + * @callback Mark~wrapMatchesEndCallback + */ + /** + * Wraps the instance element and class around matches within single HTML + * elements in all contexts + * @param {RegExp} regex - The regular expression to be searched for + * @param {number} ignoreGroups - A number indicating the amount of RegExp + * matching groups to ignore + * @param {Mark~wrapMatchesFilterCallback} filterCb + * @param {Mark~wrapMatchesEachCallback} eachCb + * @param {Mark~wrapMatchesEndCallback} endCb + * @access protected + */ + wrapMatches(regex, ignoreGroups, filterCb, eachCb, endCb) { + const matchIdx = ignoreGroups === 0 ? 0 : ignoreGroups + 1; + this.getTextNodes((dict) => { + dict.nodes.forEach((node) => { + node = node.node; + let match; + while ((match = regex.exec(node.textContent)) !== null && match[matchIdx] !== "") { + if (!filterCb(match[matchIdx], node)) { + continue; + } + let pos = match.index; + if (matchIdx !== 0) { + for (let i = 1; i < matchIdx; i++) { + pos += match[i].length; + } + } + node = this.wrapRangeInTextNode( + node, + pos, + pos + match[matchIdx].length + ); + eachCb(node.previousSibling); + regex.lastIndex = 0; + } + }); + endCb(); + }); + } + /** + * Callback for each wrapped element + * @callback Mark~wrapMatchesAcrossElementsEachCallback + * @param {HTMLElement} element - The marked DOM element + */ + /** + * Filter callback before each wrapping + * @callback Mark~wrapMatchesAcrossElementsFilterCallback + * @param {string} match - The matching string + * @param {HTMLElement} node - The text node where the match occurs + */ + /** + * Callback on end + * @callback Mark~wrapMatchesAcrossElementsEndCallback + */ + /** + * Wraps the instance element and class around matches across all HTML + * elements in all contexts + * @param {RegExp} regex - The regular expression to be searched for + * @param {number} ignoreGroups - A number indicating the amount of RegExp + * matching groups to ignore + * @param {Mark~wrapMatchesAcrossElementsFilterCallback} filterCb + * @param {Mark~wrapMatchesAcrossElementsEachCallback} eachCb + * @param {Mark~wrapMatchesAcrossElementsEndCallback} endCb + * @access protected + */ + wrapMatchesAcrossElements(regex, ignoreGroups, filterCb, eachCb, endCb) { + const matchIdx = ignoreGroups === 0 ? 0 : ignoreGroups + 1; + this.getTextNodes((dict) => { + let match; + while ((match = regex.exec(dict.value)) !== null && match[matchIdx] !== "") { + let start = match.index; + if (matchIdx !== 0) { + for (let i = 1; i < matchIdx; i++) { + start += match[i].length; + } + } + const end = start + match[matchIdx].length; + this.wrapRangeInMappedTextNode(dict, start, end, (node) => { + return filterCb(match[matchIdx], node); + }, (node, lastIndex) => { + regex.lastIndex = lastIndex; + eachCb(node); + }); + } + endCb(); + }); + } + /** + * Callback for each wrapped element + * @callback Mark~wrapRangeFromIndexEachCallback + * @param {HTMLElement} element - The marked DOM element + * @param {Mark~rangeObject} range - the current range object; provided + * start and length values will be numeric integers modified from the + * provided original ranges. + */ + /** + * Filter callback before each wrapping + * @callback Mark~wrapRangeFromIndexFilterCallback + * @param {HTMLElement} node - The text node which includes the range + * @param {Mark~rangeObject} range - the current range object + * @param {string} match - string extracted from the matching range + * @param {number} counter - A counter indicating the number of all marks + */ + /** + * Callback on end + * @callback Mark~wrapRangeFromIndexEndCallback + */ + /** + * Wraps the indicated ranges across all HTML elements in all contexts + * @param {Mark~setOfRanges} ranges + * @param {Mark~wrapRangeFromIndexFilterCallback} filterCb + * @param {Mark~wrapRangeFromIndexEachCallback} eachCb + * @param {Mark~wrapRangeFromIndexEndCallback} endCb + * @access protected + */ + wrapRangeFromIndex(ranges, filterCb, eachCb, endCb) { + this.getTextNodes((dict) => { + const originalLength = dict.value.length; + ranges.forEach((range, counter) => { + let { start, end, valid } = this.checkWhitespaceRanges( + range, + originalLength, + dict.value + ); + if (valid) { + this.wrapRangeInMappedTextNode(dict, start, end, (node) => { + return filterCb( + node, + range, + dict.value.substring(start, end), + counter + ); + }, (node) => { + eachCb(node, range); + }); + } + }); + endCb(); + }); + } + /** + * Unwraps the specified DOM node with its content (text nodes or HTML) + * without destroying possibly present events (using innerHTML) and + * normalizes the parent at the end (merge splitted text nodes) + * @param {HTMLElement} node - The DOM node to unwrap + * @access protected + */ + unwrapMatches(node) { + const parent = node.parentNode; + let docFrag = document.createDocumentFragment(); + while (node.firstChild) { + docFrag.appendChild(node.removeChild(node.firstChild)); + } + parent.replaceChild(docFrag, node); + if (!this.ie) { + parent.normalize(); + } else { + this.normalizeTextNode(parent); + } + } + /** + * Normalizes text nodes. It's a workaround for the native normalize method + * that has a bug in IE (see attached link). Should only be used in IE + * browsers as it's slower than the native method. + * @see {@link http://tinyurl.com/z5asa8c} + * @param {HTMLElement} node - The DOM node to normalize + * @access protected + */ + normalizeTextNode(node) { + if (!node) { + return; + } + if (node.nodeType === 3) { + while (node.nextSibling && node.nextSibling.nodeType === 3) { + node.nodeValue += node.nextSibling.nodeValue; + node.parentNode.removeChild(node.nextSibling); + } + } else { + this.normalizeTextNode(node.firstChild); + } + this.normalizeTextNode(node.nextSibling); + } + /** + * Callback when finished + * @callback Mark~commonDoneCallback + * @param {number} totalMatches - The number of marked elements + */ + /** + * @typedef Mark~commonOptions + * @type {object.} + * @property {string} [element="mark"] - HTML element tag name + * @property {string} [className] - An optional class name + * @property {string[]} [exclude] - An array with exclusion selectors. + * Elements matching those selectors will be ignored + * @property {boolean} [iframes=false] - Whether to search inside iframes + * @property {Mark~commonDoneCallback} [done] + * @property {boolean} [debug=false] - Wheter to log messages + * @property {object} [log=window.console] - Where to log messages (only if + * debug is true) + */ + /** + * Callback for each marked element + * @callback Mark~markRegExpEachCallback + * @param {HTMLElement} element - The marked DOM element + */ + /** + * Callback if there were no matches + * @callback Mark~markRegExpNoMatchCallback + * @param {RegExp} regexp - The regular expression + */ + /** + * Callback to filter matches + * @callback Mark~markRegExpFilterCallback + * @param {HTMLElement} textNode - The text node which includes the match + * @param {string} match - The matching string for the RegExp + * @param {number} counter - A counter indicating the number of all marks + */ + /** + * These options also include the common options from + * {@link Mark~commonOptions} + * @typedef Mark~markRegExpOptions + * @type {object.} + * @property {Mark~markRegExpEachCallback} [each] + * @property {Mark~markRegExpNoMatchCallback} [noMatch] + * @property {Mark~markRegExpFilterCallback} [filter] + */ + /** + * Marks a custom regular expression + * @param {RegExp} regexp - The regular expression + * @param {Mark~markRegExpOptions} [opt] - Optional options object + * @access public + */ + markRegExp(regexp, opt) { + this.opt = opt; + this.log(`Searching with expression "${regexp}"`); + let totalMatches = 0, fn = "wrapMatches"; + const eachCb = (element) => { + totalMatches++; + this.opt.each(element); + }; + if (this.opt.acrossElements) { + fn = "wrapMatchesAcrossElements"; + } + this[fn](regexp, this.opt.ignoreGroups, (match, node) => { + return this.opt.filter(node, match, totalMatches); + }, eachCb, () => { + if (totalMatches === 0) { + this.opt.noMatch(regexp); + } + this.opt.done(totalMatches); + }); + } + /** + * Callback for each marked element + * @callback Mark~markEachCallback + * @param {HTMLElement} element - The marked DOM element + */ + /** + * Callback if there were no matches + * @callback Mark~markNoMatchCallback + * @param {RegExp} term - The search term that was not found + */ + /** + * Callback to filter matches + * @callback Mark~markFilterCallback + * @param {HTMLElement} textNode - The text node which includes the match + * @param {string} match - The matching term + * @param {number} totalCounter - A counter indicating the number of all + * marks + * @param {number} termCounter - A counter indicating the number of marks + * for the specific match + */ + /** + * @typedef Mark~markAccuracyObject + * @type {object.} + * @property {string} value - A accuracy string value + * @property {string[]} limiters - A custom array of limiters. For example + * ["-", ","] + */ + /** + * @typedef Mark~markAccuracySetting + * @type {string} + * @property {"partially"|"complementary"|"exactly"|Mark~markAccuracyObject} + * [accuracy="partially"] - Either one of the following string values: + *
    + *
  • partially: When searching for "lor" only "lor" inside + * "lorem" will be marked
  • + *
  • complementary: When searching for "lor" the whole word + * "lorem" will be marked
  • + *
  • exactly: When searching for "lor" only those exact words + * will be marked. In this example nothing inside "lorem". This value + * is equivalent to the previous option wordBoundary
  • + *
+ * Or an object containing two properties: + *
    + *
  • value: One of the above named string values
  • + *
  • limiters: A custom array of string limiters for accuracy + * "exactly" or "complementary"
  • + *
+ */ + /** + * @typedef Mark~markWildcardsSetting + * @type {string} + * @property {"disabled"|"enabled"|"withSpaces"} + * [wildcards="disabled"] - Set to any of the following string values: + *
    + *
  • disabled: Disable wildcard usage
  • + *
  • enabled: When searching for "lor?m", the "?" will match zero + * or one non-space character (e.g. "lorm", "loram", "lor3m", etc). When + * searching for "lor*m", the "*" will match zero or more non-space + * characters (e.g. "lorm", "loram", "lor123m", etc).
  • + *
  • withSpaces: When searching for "lor?m", the "?" will + * match zero or one space or non-space character (e.g. "lor m", "loram", + * etc). When searching for "lor*m", the "*" will match zero or more space + * or non-space characters (e.g. "lorm", "lore et dolor ipsum", "lor: m", + * etc).
  • + *
+ */ + /** + * @typedef Mark~markIgnorePunctuationSetting + * @type {string[]} + * @property {string} The strings in this setting will contain punctuation + * marks that will be ignored: + *
    + *
  • These punctuation marks can be between any characters, e.g. setting + * this option to ["'"] would match "Worlds", "World's" and + * "Wo'rlds"
  • + *
  • One or more apostrophes between the letters would still produce a + * match (e.g. "W'o''r'l'd's").
  • + *
  • A typical setting for this option could be as follows: + *
    ignorePunctuation: ":;.,-–—‒_(){}[]!'\"+=".split(""),
    This + * setting includes common punctuation as well as a minus, en-dash, + * em-dash and figure-dash + * ({@link https://en.wikipedia.org/wiki/Dash#Figure_dash ref}), as well + * as an underscore.
  • + *
+ */ + /** + * These options also include the common options from + * {@link Mark~commonOptions} + * @typedef Mark~markOptions + * @type {object.} + * @property {boolean} [separateWordSearch=true] - Whether to search for + * each word separated by a blank instead of the complete term + * @property {boolean} [diacritics=true] - If diacritic characters should be + * matched. ({@link https://en.wikipedia.org/wiki/Diacritic Diacritics}) + * @property {object} [synonyms] - An object with synonyms. The key will be + * a synonym for the value and the value for the key + * @property {Mark~markAccuracySetting} [accuracy] + * @property {Mark~markWildcardsSetting} [wildcards] + * @property {boolean} [acrossElements=false] - Whether to find matches + * across HTML elements. By default, only matches within single HTML + * elements will be found + * @property {boolean} [ignoreJoiners=false] - Whether to ignore word + * joiners inside of key words. These include soft-hyphens, zero-width + * space, zero-width non-joiners and zero-width joiners. + * @property {Mark~markIgnorePunctuationSetting} [ignorePunctuation] + * @property {Mark~markEachCallback} [each] + * @property {Mark~markNoMatchCallback} [noMatch] + * @property {Mark~markFilterCallback} [filter] + */ + /** + * Marks the specified search terms + * @param {string|string[]} [sv] - Search value, either a search string or + * an array containing multiple search strings + * @param {Mark~markOptions} [opt] - Optional options object + * @access public + */ + mark(sv, opt) { + this.opt = opt; + let totalMatches = 0, fn = "wrapMatches"; + const { + keywords: kwArr, + length: kwArrLen + } = this.getSeparatedKeywords(typeof sv === "string" ? [sv] : sv), sens = this.opt.caseSensitive ? "" : "i", handler = (kw) => { + let regex = new RegExp(this.createRegExp(kw), `gm${sens}`), matches2 = 0; + this.log(`Searching with expression "${regex}"`); + this[fn](regex, 1, (term, node) => { + return this.opt.filter(node, kw, totalMatches, matches2); + }, (element) => { + matches2++; + totalMatches++; + this.opt.each(element); + }, () => { + if (matches2 === 0) { + this.opt.noMatch(kw); + } + if (kwArr[kwArrLen - 1] === kw) { + this.opt.done(totalMatches); + } else { + handler(kwArr[kwArr.indexOf(kw) + 1]); + } + }); + }; + if (this.opt.acrossElements) { + fn = "wrapMatchesAcrossElements"; + } + if (kwArrLen === 0) { + this.opt.done(totalMatches); + } else { + handler(kwArr[0]); + } + } + /** + * Callback for each marked element + * @callback Mark~markRangesEachCallback + * @param {HTMLElement} element - The marked DOM element + * @param {array} range - array of range start and end points + */ + /** + * Callback if a processed range is invalid, out-of-bounds, overlaps another + * range, or only matches whitespace + * @callback Mark~markRangesNoMatchCallback + * @param {Mark~rangeObject} range - a range object + */ + /** + * Callback to filter matches + * @callback Mark~markRangesFilterCallback + * @param {HTMLElement} node - The text node which includes the range + * @param {array} range - array of range start and end points + * @param {string} match - string extracted from the matching range + * @param {number} counter - A counter indicating the number of all marks + */ + /** + * These options also include the common options from + * {@link Mark~commonOptions} + * @typedef Mark~markRangesOptions + * @type {object.} + * @property {Mark~markRangesEachCallback} [each] + * @property {Mark~markRangesNoMatchCallback} [noMatch] + * @property {Mark~markRangesFilterCallback} [filter] + */ + /** + * Marks an array of objects containing a start with an end or length of the + * string to mark + * @param {Mark~setOfRanges} rawRanges - The original (preprocessed) + * array of objects + * @param {Mark~markRangesOptions} [opt] - Optional options object + * @access public + */ + markRanges(rawRanges, opt) { + this.opt = opt; + let totalMatches = 0, ranges = this.checkRanges(rawRanges); + if (ranges && ranges.length) { + this.log( + "Starting to mark with the following ranges: " + JSON.stringify(ranges) + ); + this.wrapRangeFromIndex( + ranges, + (node, range, match, counter) => { + return this.opt.filter(node, range, match, counter); + }, + (element, range) => { + totalMatches++; + this.opt.each(element, range); + }, + () => { + this.opt.done(totalMatches); + } + ); + } else { + this.opt.done(totalMatches); + } + } + /** + * Removes all marked elements inside the context with their HTML and + * normalizes the parent at the end + * @param {Mark~commonOptions} [opt] - Optional options object + * @access public + */ + unmark(opt) { + this.opt = opt; + let sel = this.opt.element ? this.opt.element : "*"; + sel += "[data-markjs]"; + if (this.opt.className) { + sel += `.${this.opt.className}`; + } + this.log(`Removal selector "${sel}"`); + this.iterator.forEachNode(NodeFilter.SHOW_ELEMENT, (node) => { + this.unwrapMatches(node); + }, (node) => { + const matchesSel = DOMIterator.matches(node, sel), matchesExclude = this.matchesExclude(node); + if (!matchesSel || matchesExclude) { + return NodeFilter.FILTER_REJECT; + } else { + return NodeFilter.FILTER_ACCEPT; + } + }, this.opt.done); + } +}; +function Mark2(ctx) { + const instance = new Mark$1(ctx); + this.mark = (sv, opt) => { + instance.mark(sv, opt); + return this; + }; + this.markRegExp = (sv, opt) => { + instance.markRegExp(sv, opt); + return this; + }; + this.markRanges = (sv, opt) => { + instance.markRanges(sv, opt); + return this; + }; + this.unmark = (opt) => { + instance.unmark(opt); + return this; + }; + return this; +} +function __awaiter(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, [])).next()); + }); +} +typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) { + var e = new Error(message); + return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; +}; +const ENTRIES = "ENTRIES"; +const KEYS = "KEYS"; +const VALUES = "VALUES"; +const LEAF = ""; +class TreeIterator { + constructor(set, type) { + const node = set._tree; + const keys = Array.from(node.keys()); + this.set = set; + this._type = type; + this._path = keys.length > 0 ? [{ node, keys }] : []; + } + next() { + const value = this.dive(); + this.backtrack(); + return value; + } + dive() { + if (this._path.length === 0) { + return { done: true, value: void 0 }; + } + const { node, keys } = last$1(this._path); + if (last$1(keys) === LEAF) { + return { done: false, value: this.result() }; + } + const child = node.get(last$1(keys)); + this._path.push({ node: child, keys: Array.from(child.keys()) }); + return this.dive(); + } + backtrack() { + if (this._path.length === 0) { + return; + } + const keys = last$1(this._path).keys; + keys.pop(); + if (keys.length > 0) { + return; + } + this._path.pop(); + this.backtrack(); + } + key() { + return this.set._prefix + this._path.map(({ keys }) => last$1(keys)).filter((key) => key !== LEAF).join(""); + } + value() { + return last$1(this._path).node.get(LEAF); + } + result() { + switch (this._type) { + case VALUES: + return this.value(); + case KEYS: + return this.key(); + default: + return [this.key(), this.value()]; + } + } + [Symbol.iterator]() { + return this; + } +} +const last$1 = (array) => { + return array[array.length - 1]; +}; +const fuzzySearch = (node, query, maxDistance) => { + const results = /* @__PURE__ */ new Map(); + if (query === void 0) + return results; + const n = query.length + 1; + const m = n + maxDistance; + const matrix = new Uint8Array(m * n).fill(maxDistance + 1); + for (let j = 0; j < n; ++j) + matrix[j] = j; + for (let i = 1; i < m; ++i) + matrix[i * n] = i; + recurse(node, query, maxDistance, results, matrix, 1, n, ""); + return results; +}; +const recurse = (node, query, maxDistance, results, matrix, m, n, prefix) => { + const offset = m * n; + key: for (const key of node.keys()) { + if (key === LEAF) { + const distance = matrix[offset - 1]; + if (distance <= maxDistance) { + results.set(prefix, [node.get(key), distance]); + } + } else { + let i = m; + for (let pos = 0; pos < key.length; ++pos, ++i) { + const char = key[pos]; + const thisRowOffset = n * i; + const prevRowOffset = thisRowOffset - n; + let minDistance = matrix[thisRowOffset]; + const jmin = Math.max(0, i - maxDistance - 1); + const jmax = Math.min(n - 1, i + maxDistance); + for (let j = jmin; j < jmax; ++j) { + const different = char !== query[j]; + const rpl = matrix[prevRowOffset + j] + +different; + const del = matrix[prevRowOffset + j + 1] + 1; + const ins = matrix[thisRowOffset + j] + 1; + const dist = matrix[thisRowOffset + j + 1] = Math.min(rpl, del, ins); + if (dist < minDistance) + minDistance = dist; + } + if (minDistance > maxDistance) { + continue key; + } + } + recurse(node.get(key), query, maxDistance, results, matrix, i, n, prefix + key); + } + } +}; +class SearchableMap { + /** + * The constructor is normally called without arguments, creating an empty + * map. In order to create a {@link SearchableMap} from an iterable or from an + * object, check {@link SearchableMap.from} and {@link + * SearchableMap.fromObject}. + * + * The constructor arguments are for internal use, when creating derived + * mutable views of a map at a prefix. + */ + constructor(tree = /* @__PURE__ */ new Map(), prefix = "") { + this._size = void 0; + this._tree = tree; + this._prefix = prefix; + } + /** + * Creates and returns a mutable view of this {@link SearchableMap}, + * containing only entries that share the given prefix. + * + * ### Usage: + * + * ```javascript + * let map = new SearchableMap() + * map.set("unicorn", 1) + * map.set("universe", 2) + * map.set("university", 3) + * map.set("unique", 4) + * map.set("hello", 5) + * + * let uni = map.atPrefix("uni") + * uni.get("unique") // => 4 + * uni.get("unicorn") // => 1 + * uni.get("hello") // => undefined + * + * let univer = map.atPrefix("univer") + * univer.get("unique") // => undefined + * univer.get("universe") // => 2 + * univer.get("university") // => 3 + * ``` + * + * @param prefix The prefix + * @return A {@link SearchableMap} representing a mutable view of the original + * Map at the given prefix + */ + atPrefix(prefix) { + if (!prefix.startsWith(this._prefix)) { + throw new Error("Mismatched prefix"); + } + const [node, path] = trackDown(this._tree, prefix.slice(this._prefix.length)); + if (node === void 0) { + const [parentNode, key] = last(path); + for (const k of parentNode.keys()) { + if (k !== LEAF && k.startsWith(key)) { + const node2 = /* @__PURE__ */ new Map(); + node2.set(k.slice(key.length), parentNode.get(k)); + return new SearchableMap(node2, prefix); + } + } + } + return new SearchableMap(node, prefix); + } + /** + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/clear + */ + clear() { + this._size = void 0; + this._tree.clear(); + } + /** + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/delete + * @param key Key to delete + */ + delete(key) { + this._size = void 0; + return remove(this._tree, key); + } + /** + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/entries + * @return An iterator iterating through `[key, value]` entries. + */ + entries() { + return new TreeIterator(this, ENTRIES); + } + /** + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/forEach + * @param fn Iteration function + */ + forEach(fn) { + for (const [key, value] of this) { + fn(key, value, this); + } + } + /** + * Returns a Map of all the entries that have a key within the given edit + * distance from the search key. The keys of the returned Map are the matching + * keys, while the values are two-element arrays where the first element is + * the value associated to the key, and the second is the edit distance of the + * key to the search key. + * + * ### Usage: + * + * ```javascript + * let map = new SearchableMap() + * map.set('hello', 'world') + * map.set('hell', 'yeah') + * map.set('ciao', 'mondo') + * + * // Get all entries that match the key 'hallo' with a maximum edit distance of 2 + * map.fuzzyGet('hallo', 2) + * // => Map(2) { 'hello' => ['world', 1], 'hell' => ['yeah', 2] } + * + * // In the example, the "hello" key has value "world" and edit distance of 1 + * // (change "e" to "a"), the key "hell" has value "yeah" and edit distance of 2 + * // (change "e" to "a", delete "o") + * ``` + * + * @param key The search key + * @param maxEditDistance The maximum edit distance (Levenshtein) + * @return A Map of the matching keys to their value and edit distance + */ + fuzzyGet(key, maxEditDistance) { + return fuzzySearch(this._tree, key, maxEditDistance); + } + /** + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/get + * @param key Key to get + * @return Value associated to the key, or `undefined` if the key is not + * found. + */ + get(key) { + const node = lookup(this._tree, key); + return node !== void 0 ? node.get(LEAF) : void 0; + } + /** + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/has + * @param key Key + * @return True if the key is in the map, false otherwise + */ + has(key) { + const node = lookup(this._tree, key); + return node !== void 0 && node.has(LEAF); + } + /** + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/keys + * @return An `Iterable` iterating through keys + */ + keys() { + return new TreeIterator(this, KEYS); + } + /** + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/set + * @param key Key to set + * @param value Value to associate to the key + * @return The {@link SearchableMap} itself, to allow chaining + */ + set(key, value) { + if (typeof key !== "string") { + throw new Error("key must be a string"); + } + this._size = void 0; + const node = createPath(this._tree, key); + node.set(LEAF, value); + return this; + } + /** + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/size + */ + get size() { + if (this._size) { + return this._size; + } + this._size = 0; + const iter = this.entries(); + while (!iter.next().done) + this._size += 1; + return this._size; + } + /** + * Updates the value at the given key using the provided function. The function + * is called with the current value at the key, and its return value is used as + * the new value to be set. + * + * ### Example: + * + * ```javascript + * // Increment the current value by one + * searchableMap.update('somekey', (currentValue) => currentValue == null ? 0 : currentValue + 1) + * ``` + * + * If the value at the given key is or will be an object, it might not require + * re-assignment. In that case it is better to use `fetch()`, because it is + * faster. + * + * @param key The key to update + * @param fn The function used to compute the new value from the current one + * @return The {@link SearchableMap} itself, to allow chaining + */ + update(key, fn) { + if (typeof key !== "string") { + throw new Error("key must be a string"); + } + this._size = void 0; + const node = createPath(this._tree, key); + node.set(LEAF, fn(node.get(LEAF))); + return this; + } + /** + * Fetches the value of the given key. If the value does not exist, calls the + * given function to create a new value, which is inserted at the given key + * and subsequently returned. + * + * ### Example: + * + * ```javascript + * const map = searchableMap.fetch('somekey', () => new Map()) + * map.set('foo', 'bar') + * ``` + * + * @param key The key to update + * @param defaultValue A function that creates a new value if the key does not exist + * @return The existing or new value at the given key + */ + fetch(key, initial) { + if (typeof key !== "string") { + throw new Error("key must be a string"); + } + this._size = void 0; + const node = createPath(this._tree, key); + let value = node.get(LEAF); + if (value === void 0) { + node.set(LEAF, value = initial()); + } + return value; + } + /** + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/values + * @return An `Iterable` iterating through values. + */ + values() { + return new TreeIterator(this, VALUES); + } + /** + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/@@iterator + */ + [Symbol.iterator]() { + return this.entries(); + } + /** + * Creates a {@link SearchableMap} from an `Iterable` of entries + * + * @param entries Entries to be inserted in the {@link SearchableMap} + * @return A new {@link SearchableMap} with the given entries + */ + static from(entries) { + const tree = new SearchableMap(); + for (const [key, value] of entries) { + tree.set(key, value); + } + return tree; + } + /** + * Creates a {@link SearchableMap} from the iterable properties of a JavaScript object + * + * @param object Object of entries for the {@link SearchableMap} + * @return A new {@link SearchableMap} with the given entries + */ + static fromObject(object) { + return SearchableMap.from(Object.entries(object)); + } +} +const trackDown = (tree, key, path = []) => { + if (key.length === 0 || tree == null) { + return [tree, path]; + } + for (const k of tree.keys()) { + if (k !== LEAF && key.startsWith(k)) { + path.push([tree, k]); + return trackDown(tree.get(k), key.slice(k.length), path); + } + } + path.push([tree, key]); + return trackDown(void 0, "", path); +}; +const lookup = (tree, key) => { + if (key.length === 0 || tree == null) { + return tree; + } + for (const k of tree.keys()) { + if (k !== LEAF && key.startsWith(k)) { + return lookup(tree.get(k), key.slice(k.length)); + } + } +}; +const createPath = (node, key) => { + const keyLength = key.length; + outer: for (let pos = 0; node && pos < keyLength; ) { + for (const k of node.keys()) { + if (k !== LEAF && key[pos] === k[0]) { + const len = Math.min(keyLength - pos, k.length); + let offset = 1; + while (offset < len && key[pos + offset] === k[offset]) + ++offset; + const child2 = node.get(k); + if (offset === k.length) { + node = child2; + } else { + const intermediate = /* @__PURE__ */ new Map(); + intermediate.set(k.slice(offset), child2); + node.set(key.slice(pos, pos + offset), intermediate); + node.delete(k); + node = intermediate; + } + pos += offset; + continue outer; + } + } + const child = /* @__PURE__ */ new Map(); + node.set(key.slice(pos), child); + return child; + } + return node; +}; +const remove = (tree, key) => { + const [node, path] = trackDown(tree, key); + if (node === void 0) { + return; + } + node.delete(LEAF); + if (node.size === 0) { + cleanup(path); + } else if (node.size === 1) { + const [key2, value] = node.entries().next().value; + merge(path, key2, value); + } +}; +const cleanup = (path) => { + if (path.length === 0) { + return; + } + const [node, key] = last(path); + node.delete(key); + if (node.size === 0) { + cleanup(path.slice(0, -1)); + } else if (node.size === 1) { + const [key2, value] = node.entries().next().value; + if (key2 !== LEAF) { + merge(path.slice(0, -1), key2, value); + } + } +}; +const merge = (path, key, value) => { + if (path.length === 0) { + return; + } + const [node, nodeKey] = last(path); + node.set(nodeKey + key, value); + node.delete(nodeKey); +}; +const last = (array) => { + return array[array.length - 1]; +}; +const OR = "or"; +const AND = "and"; +const AND_NOT = "and_not"; +class MiniSearch { + /** + * @param options Configuration options + * + * ### Examples: + * + * ```javascript + * // Create a search engine that indexes the 'title' and 'text' fields of your + * // documents: + * const miniSearch = new MiniSearch({ fields: ['title', 'text'] }) + * ``` + * + * ### ID Field: + * + * ```javascript + * // Your documents are assumed to include a unique 'id' field, but if you want + * // to use a different field for document identification, you can set the + * // 'idField' option: + * const miniSearch = new MiniSearch({ idField: 'key', fields: ['title', 'text'] }) + * ``` + * + * ### Options and defaults: + * + * ```javascript + * // The full set of options (here with their default value) is: + * const miniSearch = new MiniSearch({ + * // idField: field that uniquely identifies a document + * idField: 'id', + * + * // extractField: function used to get the value of a field in a document. + * // By default, it assumes the document is a flat object with field names as + * // property keys and field values as string property values, but custom logic + * // can be implemented by setting this option to a custom extractor function. + * extractField: (document, fieldName) => document[fieldName], + * + * // tokenize: function used to split fields into individual terms. By + * // default, it is also used to tokenize search queries, unless a specific + * // `tokenize` search option is supplied. When tokenizing an indexed field, + * // the field name is passed as the second argument. + * tokenize: (string, _fieldName) => string.split(SPACE_OR_PUNCTUATION), + * + * // processTerm: function used to process each tokenized term before + * // indexing. It can be used for stemming and normalization. Return a falsy + * // value in order to discard a term. By default, it is also used to process + * // search queries, unless a specific `processTerm` option is supplied as a + * // search option. When processing a term from a indexed field, the field + * // name is passed as the second argument. + * processTerm: (term, _fieldName) => term.toLowerCase(), + * + * // searchOptions: default search options, see the `search` method for + * // details + * searchOptions: undefined, + * + * // fields: document fields to be indexed. Mandatory, but not set by default + * fields: undefined + * + * // storeFields: document fields to be stored and returned as part of the + * // search results. + * storeFields: [] + * }) + * ``` + */ + constructor(options) { + if ((options === null || options === void 0 ? void 0 : options.fields) == null) { + throw new Error('MiniSearch: option "fields" must be provided'); + } + const autoVacuum = options.autoVacuum == null || options.autoVacuum === true ? defaultAutoVacuumOptions : options.autoVacuum; + this._options = Object.assign(Object.assign(Object.assign({}, defaultOptions), options), { autoVacuum, searchOptions: Object.assign(Object.assign({}, defaultSearchOptions), options.searchOptions || {}), autoSuggestOptions: Object.assign(Object.assign({}, defaultAutoSuggestOptions), options.autoSuggestOptions || {}) }); + this._index = new SearchableMap(); + this._documentCount = 0; + this._documentIds = /* @__PURE__ */ new Map(); + this._idToShortId = /* @__PURE__ */ new Map(); + this._fieldIds = {}; + this._fieldLength = /* @__PURE__ */ new Map(); + this._avgFieldLength = []; + this._nextId = 0; + this._storedFields = /* @__PURE__ */ new Map(); + this._dirtCount = 0; + this._currentVacuum = null; + this._enqueuedVacuum = null; + this._enqueuedVacuumConditions = defaultVacuumConditions; + this.addFields(this._options.fields); + } + /** + * Adds a document to the index + * + * @param document The document to be indexed + */ + add(document2) { + const { extractField, tokenize, processTerm, fields, idField } = this._options; + const id = extractField(document2, idField); + if (id == null) { + throw new Error(`MiniSearch: document does not have ID field "${idField}"`); + } + if (this._idToShortId.has(id)) { + throw new Error(`MiniSearch: duplicate ID ${id}`); + } + const shortDocumentId = this.addDocumentId(id); + this.saveStoredFields(shortDocumentId, document2); + for (const field of fields) { + const fieldValue = extractField(document2, field); + if (fieldValue == null) + continue; + const tokens = tokenize(fieldValue.toString(), field); + const fieldId = this._fieldIds[field]; + const uniqueTerms = new Set(tokens).size; + this.addFieldLength(shortDocumentId, fieldId, this._documentCount - 1, uniqueTerms); + for (const term of tokens) { + const processedTerm = processTerm(term, field); + if (Array.isArray(processedTerm)) { + for (const t of processedTerm) { + this.addTerm(fieldId, shortDocumentId, t); + } + } else if (processedTerm) { + this.addTerm(fieldId, shortDocumentId, processedTerm); + } + } + } + } + /** + * Adds all the given documents to the index + * + * @param documents An array of documents to be indexed + */ + addAll(documents) { + for (const document2 of documents) + this.add(document2); + } + /** + * Adds all the given documents to the index asynchronously. + * + * Returns a promise that resolves (to `undefined`) when the indexing is done. + * This method is useful when index many documents, to avoid blocking the main + * thread. The indexing is performed asynchronously and in chunks. + * + * @param documents An array of documents to be indexed + * @param options Configuration options + * @return A promise resolving to `undefined` when the indexing is done + */ + addAllAsync(documents, options = {}) { + const { chunkSize = 10 } = options; + const acc = { chunk: [], promise: Promise.resolve() }; + const { chunk, promise } = documents.reduce(({ chunk: chunk2, promise: promise2 }, document2, i) => { + chunk2.push(document2); + if ((i + 1) % chunkSize === 0) { + return { + chunk: [], + promise: promise2.then(() => new Promise((resolve) => setTimeout(resolve, 0))).then(() => this.addAll(chunk2)) + }; + } else { + return { chunk: chunk2, promise: promise2 }; + } + }, acc); + return promise.then(() => this.addAll(chunk)); + } + /** + * Removes the given document from the index. + * + * The document to remove must NOT have changed between indexing and removal, + * otherwise the index will be corrupted. + * + * This method requires passing the full document to be removed (not just the + * ID), and immediately removes the document from the inverted index, allowing + * memory to be released. A convenient alternative is {@link + * MiniSearch#discard}, which needs only the document ID, and has the same + * visible effect, but delays cleaning up the index until the next vacuuming. + * + * @param document The document to be removed + */ + remove(document2) { + const { tokenize, processTerm, extractField, fields, idField } = this._options; + const id = extractField(document2, idField); + if (id == null) { + throw new Error(`MiniSearch: document does not have ID field "${idField}"`); + } + const shortId = this._idToShortId.get(id); + if (shortId == null) { + throw new Error(`MiniSearch: cannot remove document with ID ${id}: it is not in the index`); + } + for (const field of fields) { + const fieldValue = extractField(document2, field); + if (fieldValue == null) + continue; + const tokens = tokenize(fieldValue.toString(), field); + const fieldId = this._fieldIds[field]; + const uniqueTerms = new Set(tokens).size; + this.removeFieldLength(shortId, fieldId, this._documentCount, uniqueTerms); + for (const term of tokens) { + const processedTerm = processTerm(term, field); + if (Array.isArray(processedTerm)) { + for (const t of processedTerm) { + this.removeTerm(fieldId, shortId, t); + } + } else if (processedTerm) { + this.removeTerm(fieldId, shortId, processedTerm); + } + } + } + this._storedFields.delete(shortId); + this._documentIds.delete(shortId); + this._idToShortId.delete(id); + this._fieldLength.delete(shortId); + this._documentCount -= 1; + } + /** + * Removes all the given documents from the index. If called with no arguments, + * it removes _all_ documents from the index. + * + * @param documents The documents to be removed. If this argument is omitted, + * all documents are removed. Note that, for removing all documents, it is + * more efficient to call this method with no arguments than to pass all + * documents. + */ + removeAll(documents) { + if (documents) { + for (const document2 of documents) + this.remove(document2); + } else if (arguments.length > 0) { + throw new Error("Expected documents to be present. Omit the argument to remove all documents."); + } else { + this._index = new SearchableMap(); + this._documentCount = 0; + this._documentIds = /* @__PURE__ */ new Map(); + this._idToShortId = /* @__PURE__ */ new Map(); + this._fieldLength = /* @__PURE__ */ new Map(); + this._avgFieldLength = []; + this._storedFields = /* @__PURE__ */ new Map(); + this._nextId = 0; + } + } + /** + * Discards the document with the given ID, so it won't appear in search results + * + * It has the same visible effect of {@link MiniSearch.remove} (both cause the + * document to stop appearing in searches), but a different effect on the + * internal data structures: + * + * - {@link MiniSearch#remove} requires passing the full document to be + * removed as argument, and removes it from the inverted index immediately. + * + * - {@link MiniSearch#discard} instead only needs the document ID, and + * works by marking the current version of the document as discarded, so it + * is immediately ignored by searches. This is faster and more convenient + * than {@link MiniSearch#remove}, but the index is not immediately + * modified. To take care of that, vacuuming is performed after a certain + * number of documents are discarded, cleaning up the index and allowing + * memory to be released. + * + * After discarding a document, it is possible to re-add a new version, and + * only the new version will appear in searches. In other words, discarding + * and re-adding a document works exactly like removing and re-adding it. The + * {@link MiniSearch.replace} method can also be used to replace a document + * with a new version. + * + * #### Details about vacuuming + * + * Repetite calls to this method would leave obsolete document references in + * the index, invisible to searches. Two mechanisms take care of cleaning up: + * clean up during search, and vacuuming. + * + * - Upon search, whenever a discarded ID is found (and ignored for the + * results), references to the discarded document are removed from the + * inverted index entries for the search terms. This ensures that subsequent + * searches for the same terms do not need to skip these obsolete references + * again. + * + * - In addition, vacuuming is performed automatically by default (see the + * `autoVacuum` field in {@link Options}) after a certain number of + * documents are discarded. Vacuuming traverses all terms in the index, + * cleaning up all references to discarded documents. Vacuuming can also be + * triggered manually by calling {@link MiniSearch#vacuum}. + * + * @param id The ID of the document to be discarded + */ + discard(id) { + const shortId = this._idToShortId.get(id); + if (shortId == null) { + throw new Error(`MiniSearch: cannot discard document with ID ${id}: it is not in the index`); + } + this._idToShortId.delete(id); + this._documentIds.delete(shortId); + this._storedFields.delete(shortId); + (this._fieldLength.get(shortId) || []).forEach((fieldLength, fieldId) => { + this.removeFieldLength(shortId, fieldId, this._documentCount, fieldLength); + }); + this._fieldLength.delete(shortId); + this._documentCount -= 1; + this._dirtCount += 1; + this.maybeAutoVacuum(); + } + maybeAutoVacuum() { + if (this._options.autoVacuum === false) { + return; + } + const { minDirtFactor, minDirtCount, batchSize, batchWait } = this._options.autoVacuum; + this.conditionalVacuum({ batchSize, batchWait }, { minDirtCount, minDirtFactor }); + } + /** + * Discards the documents with the given IDs, so they won't appear in search + * results + * + * It is equivalent to calling {@link MiniSearch#discard} for all the given + * IDs, but with the optimization of triggering at most one automatic + * vacuuming at the end. + * + * Note: to remove all documents from the index, it is faster and more + * convenient to call {@link MiniSearch.removeAll} with no argument, instead + * of passing all IDs to this method. + */ + discardAll(ids) { + const autoVacuum = this._options.autoVacuum; + try { + this._options.autoVacuum = false; + for (const id of ids) { + this.discard(id); + } + } finally { + this._options.autoVacuum = autoVacuum; + } + this.maybeAutoVacuum(); + } + /** + * It replaces an existing document with the given updated version + * + * It works by discarding the current version and adding the updated one, so + * it is functionally equivalent to calling {@link MiniSearch#discard} + * followed by {@link MiniSearch#add}. The ID of the updated document should + * be the same as the original one. + * + * Since it uses {@link MiniSearch#discard} internally, this method relies on + * vacuuming to clean up obsolete document references from the index, allowing + * memory to be released (see {@link MiniSearch#discard}). + * + * @param updatedDocument The updated document to replace the old version + * with + */ + replace(updatedDocument) { + const { idField, extractField } = this._options; + const id = extractField(updatedDocument, idField); + this.discard(id); + this.add(updatedDocument); + } + /** + * Triggers a manual vacuuming, cleaning up references to discarded documents + * from the inverted index + * + * Vacuuming is only useful for applications that use the {@link + * MiniSearch#discard} or {@link MiniSearch#replace} methods. + * + * By default, vacuuming is performed automatically when needed (controlled by + * the `autoVacuum` field in {@link Options}), so there is usually no need to + * call this method, unless one wants to make sure to perform vacuuming at a + * specific moment. + * + * Vacuuming traverses all terms in the inverted index in batches, and cleans + * up references to discarded documents from the posting list, allowing memory + * to be released. + * + * The method takes an optional object as argument with the following keys: + * + * - `batchSize`: the size of each batch (1000 by default) + * + * - `batchWait`: the number of milliseconds to wait between batches (10 by + * default) + * + * On large indexes, vacuuming could have a non-negligible cost: batching + * avoids blocking the thread for long, diluting this cost so that it is not + * negatively affecting the application. Nonetheless, this method should only + * be called when necessary, and relying on automatic vacuuming is usually + * better. + * + * It returns a promise that resolves (to undefined) when the clean up is + * completed. If vacuuming is already ongoing at the time this method is + * called, a new one is enqueued immediately after the ongoing one, and a + * corresponding promise is returned. However, no more than one vacuuming is + * enqueued on top of the ongoing one, even if this method is called more + * times (enqueuing multiple ones would be useless). + * + * @param options Configuration options for the batch size and delay. See + * {@link VacuumOptions}. + */ + vacuum(options = {}) { + return this.conditionalVacuum(options); + } + conditionalVacuum(options, conditions) { + if (this._currentVacuum) { + this._enqueuedVacuumConditions = this._enqueuedVacuumConditions && conditions; + if (this._enqueuedVacuum != null) { + return this._enqueuedVacuum; + } + this._enqueuedVacuum = this._currentVacuum.then(() => { + const conditions2 = this._enqueuedVacuumConditions; + this._enqueuedVacuumConditions = defaultVacuumConditions; + return this.performVacuuming(options, conditions2); + }); + return this._enqueuedVacuum; + } + if (this.vacuumConditionsMet(conditions) === false) { + return Promise.resolve(); + } + this._currentVacuum = this.performVacuuming(options); + return this._currentVacuum; + } + performVacuuming(options, conditions) { + return __awaiter(this, void 0, void 0, function* () { + const initialDirtCount = this._dirtCount; + if (this.vacuumConditionsMet(conditions)) { + const batchSize = options.batchSize || defaultVacuumOptions.batchSize; + const batchWait = options.batchWait || defaultVacuumOptions.batchWait; + let i = 1; + for (const [term, fieldsData] of this._index) { + for (const [fieldId, fieldIndex] of fieldsData) { + for (const [shortId] of fieldIndex) { + if (this._documentIds.has(shortId)) { + continue; + } + if (fieldIndex.size <= 1) { + fieldsData.delete(fieldId); + } else { + fieldIndex.delete(shortId); + } + } + } + if (this._index.get(term).size === 0) { + this._index.delete(term); + } + if (i % batchSize === 0) { + yield new Promise((resolve) => setTimeout(resolve, batchWait)); + } + i += 1; + } + this._dirtCount -= initialDirtCount; + } + yield null; + this._currentVacuum = this._enqueuedVacuum; + this._enqueuedVacuum = null; + }); + } + vacuumConditionsMet(conditions) { + if (conditions == null) { + return true; + } + let { minDirtCount, minDirtFactor } = conditions; + minDirtCount = minDirtCount || defaultAutoVacuumOptions.minDirtCount; + minDirtFactor = minDirtFactor || defaultAutoVacuumOptions.minDirtFactor; + return this.dirtCount >= minDirtCount && this.dirtFactor >= minDirtFactor; + } + /** + * Is `true` if a vacuuming operation is ongoing, `false` otherwise + */ + get isVacuuming() { + return this._currentVacuum != null; + } + /** + * The number of documents discarded since the most recent vacuuming + */ + get dirtCount() { + return this._dirtCount; + } + /** + * A number between 0 and 1 giving an indication about the proportion of + * documents that are discarded, and can therefore be cleaned up by vacuuming. + * A value close to 0 means that the index is relatively clean, while a higher + * value means that the index is relatively dirty, and vacuuming could release + * memory. + */ + get dirtFactor() { + return this._dirtCount / (1 + this._documentCount + this._dirtCount); + } + /** + * Returns `true` if a document with the given ID is present in the index and + * available for search, `false` otherwise + * + * @param id The document ID + */ + has(id) { + return this._idToShortId.has(id); + } + /** + * Returns the stored fields (as configured in the `storeFields` constructor + * option) for the given document ID. Returns `undefined` if the document is + * not present in the index. + * + * @param id The document ID + */ + getStoredFields(id) { + const shortId = this._idToShortId.get(id); + if (shortId == null) { + return void 0; + } + return this._storedFields.get(shortId); + } + /** + * Search for documents matching the given search query. + * + * The result is a list of scored document IDs matching the query, sorted by + * descending score, and each including data about which terms were matched and + * in which fields. + * + * ### Basic usage: + * + * ```javascript + * // Search for "zen art motorcycle" with default options: terms have to match + * // exactly, and individual terms are joined with OR + * miniSearch.search('zen art motorcycle') + * // => [ { id: 2, score: 2.77258, match: { ... } }, { id: 4, score: 1.38629, match: { ... } } ] + * ``` + * + * ### Restrict search to specific fields: + * + * ```javascript + * // Search only in the 'title' field + * miniSearch.search('zen', { fields: ['title'] }) + * ``` + * + * ### Field boosting: + * + * ```javascript + * // Boost a field + * miniSearch.search('zen', { boost: { title: 2 } }) + * ``` + * + * ### Prefix search: + * + * ```javascript + * // Search for "moto" with prefix search (it will match documents + * // containing terms that start with "moto" or "neuro") + * miniSearch.search('moto neuro', { prefix: true }) + * ``` + * + * ### Fuzzy search: + * + * ```javascript + * // Search for "ismael" with fuzzy search (it will match documents containing + * // terms similar to "ismael", with a maximum edit distance of 0.2 term.length + * // (rounded to nearest integer) + * miniSearch.search('ismael', { fuzzy: 0.2 }) + * ``` + * + * ### Combining strategies: + * + * ```javascript + * // Mix of exact match, prefix search, and fuzzy search + * miniSearch.search('ismael mob', { + * prefix: true, + * fuzzy: 0.2 + * }) + * ``` + * + * ### Advanced prefix and fuzzy search: + * + * ```javascript + * // Perform fuzzy and prefix search depending on the search term. Here + * // performing prefix and fuzzy search only on terms longer than 3 characters + * miniSearch.search('ismael mob', { + * prefix: term => term.length > 3 + * fuzzy: term => term.length > 3 ? 0.2 : null + * }) + * ``` + * + * ### Combine with AND: + * + * ```javascript + * // Combine search terms with AND (to match only documents that contain both + * // "motorcycle" and "art") + * miniSearch.search('motorcycle art', { combineWith: 'AND' }) + * ``` + * + * ### Combine with AND_NOT: + * + * There is also an AND_NOT combinator, that finds documents that match the + * first term, but do not match any of the other terms. This combinator is + * rarely useful with simple queries, and is meant to be used with advanced + * query combinations (see later for more details). + * + * ### Filtering results: + * + * ```javascript + * // Filter only results in the 'fiction' category (assuming that 'category' + * // is a stored field) + * miniSearch.search('motorcycle art', { + * filter: (result) => result.category === 'fiction' + * }) + * ``` + * + * ### Wildcard query + * + * Searching for an empty string (assuming the default tokenizer) returns no + * results. Sometimes though, one needs to match all documents, like in a + * "wildcard" search. This is possible by passing the special value + * {@link MiniSearch.wildcard} as the query: + * + * ```javascript + * // Return search results for all documents + * miniSearch.search(MiniSearch.wildcard) + * ``` + * + * Note that search options such as `filter` and `boostDocument` are still + * applied, influencing which results are returned, and their order: + * + * ```javascript + * // Return search results for all documents in the 'fiction' category + * miniSearch.search(MiniSearch.wildcard, { + * filter: (result) => result.category === 'fiction' + * }) + * ``` + * + * ### Advanced combination of queries: + * + * It is possible to combine different subqueries with OR, AND, and AND_NOT, + * and even with different search options, by passing a query expression + * tree object as the first argument, instead of a string. + * + * ```javascript + * // Search for documents that contain "zen" and ("motorcycle" or "archery") + * miniSearch.search({ + * combineWith: 'AND', + * queries: [ + * 'zen', + * { + * combineWith: 'OR', + * queries: ['motorcycle', 'archery'] + * } + * ] + * }) + * + * // Search for documents that contain ("apple" or "pear") but not "juice" and + * // not "tree" + * miniSearch.search({ + * combineWith: 'AND_NOT', + * queries: [ + * { + * combineWith: 'OR', + * queries: ['apple', 'pear'] + * }, + * 'juice', + * 'tree' + * ] + * }) + * ``` + * + * Each node in the expression tree can be either a string, or an object that + * supports all {@link SearchOptions} fields, plus a `queries` array field for + * subqueries. + * + * Note that, while this can become complicated to do by hand for complex or + * deeply nested queries, it provides a formalized expression tree API for + * external libraries that implement a parser for custom query languages. + * + * @param query Search query + * @param options Search options. Each option, if not given, defaults to the corresponding value of `searchOptions` given to the constructor, or to the library default. + */ + search(query, searchOptions = {}) { + const rawResults = this.executeQuery(query, searchOptions); + const results = []; + for (const [docId, { score, terms, match }] of rawResults) { + const quality = terms.length || 1; + const result = { + id: this._documentIds.get(docId), + score: score * quality, + terms: Object.keys(match), + queryTerms: terms, + match + }; + Object.assign(result, this._storedFields.get(docId)); + if (searchOptions.filter == null || searchOptions.filter(result)) { + results.push(result); + } + } + if (query === MiniSearch.wildcard && searchOptions.boostDocument == null && this._options.searchOptions.boostDocument == null) { + return results; + } + results.sort(byScore); + return results; + } + /** + * Provide suggestions for the given search query + * + * The result is a list of suggested modified search queries, derived from the + * given search query, each with a relevance score, sorted by descending score. + * + * By default, it uses the same options used for search, except that by + * default it performs prefix search on the last term of the query, and + * combine terms with `'AND'` (requiring all query terms to match). Custom + * options can be passed as a second argument. Defaults can be changed upon + * calling the {@link MiniSearch} constructor, by passing a + * `autoSuggestOptions` option. + * + * ### Basic usage: + * + * ```javascript + * // Get suggestions for 'neuro': + * miniSearch.autoSuggest('neuro') + * // => [ { suggestion: 'neuromancer', terms: [ 'neuromancer' ], score: 0.46240 } ] + * ``` + * + * ### Multiple words: + * + * ```javascript + * // Get suggestions for 'zen ar': + * miniSearch.autoSuggest('zen ar') + * // => [ + * // { suggestion: 'zen archery art', terms: [ 'zen', 'archery', 'art' ], score: 1.73332 }, + * // { suggestion: 'zen art', terms: [ 'zen', 'art' ], score: 1.21313 } + * // ] + * ``` + * + * ### Fuzzy suggestions: + * + * ```javascript + * // Correct spelling mistakes using fuzzy search: + * miniSearch.autoSuggest('neromancer', { fuzzy: 0.2 }) + * // => [ { suggestion: 'neuromancer', terms: [ 'neuromancer' ], score: 1.03998 } ] + * ``` + * + * ### Filtering: + * + * ```javascript + * // Get suggestions for 'zen ar', but only within the 'fiction' category + * // (assuming that 'category' is a stored field): + * miniSearch.autoSuggest('zen ar', { + * filter: (result) => result.category === 'fiction' + * }) + * // => [ + * // { suggestion: 'zen archery art', terms: [ 'zen', 'archery', 'art' ], score: 1.73332 }, + * // { suggestion: 'zen art', terms: [ 'zen', 'art' ], score: 1.21313 } + * // ] + * ``` + * + * @param queryString Query string to be expanded into suggestions + * @param options Search options. The supported options and default values + * are the same as for the {@link MiniSearch#search} method, except that by + * default prefix search is performed on the last term in the query, and terms + * are combined with `'AND'`. + * @return A sorted array of suggestions sorted by relevance score. + */ + autoSuggest(queryString, options = {}) { + options = Object.assign(Object.assign({}, this._options.autoSuggestOptions), options); + const suggestions = /* @__PURE__ */ new Map(); + for (const { score, terms } of this.search(queryString, options)) { + const phrase = terms.join(" "); + const suggestion = suggestions.get(phrase); + if (suggestion != null) { + suggestion.score += score; + suggestion.count += 1; + } else { + suggestions.set(phrase, { score, terms, count: 1 }); + } + } + const results = []; + for (const [suggestion, { score, terms, count }] of suggestions) { + results.push({ suggestion, terms, score: score / count }); + } + results.sort(byScore); + return results; + } + /** + * Total number of documents available to search + */ + get documentCount() { + return this._documentCount; + } + /** + * Number of terms in the index + */ + get termCount() { + return this._index.size; + } + /** + * Deserializes a JSON index (serialized with `JSON.stringify(miniSearch)`) + * and instantiates a MiniSearch instance. It should be given the same options + * originally used when serializing the index. + * + * ### Usage: + * + * ```javascript + * // If the index was serialized with: + * let miniSearch = new MiniSearch({ fields: ['title', 'text'] }) + * miniSearch.addAll(documents) + * + * const json = JSON.stringify(miniSearch) + * // It can later be deserialized like this: + * miniSearch = MiniSearch.loadJSON(json, { fields: ['title', 'text'] }) + * ``` + * + * @param json JSON-serialized index + * @param options configuration options, same as the constructor + * @return An instance of MiniSearch deserialized from the given JSON. + */ + static loadJSON(json, options) { + if (options == null) { + throw new Error("MiniSearch: loadJSON should be given the same options used when serializing the index"); + } + return this.loadJS(JSON.parse(json), options); + } + /** + * Async equivalent of {@link MiniSearch.loadJSON} + * + * This function is an alternative to {@link MiniSearch.loadJSON} that returns + * a promise, and loads the index in batches, leaving pauses between them to avoid + * blocking the main thread. It tends to be slower than the synchronous + * version, but does not block the main thread, so it can be a better choice + * when deserializing very large indexes. + * + * @param json JSON-serialized index + * @param options configuration options, same as the constructor + * @return A Promise that will resolve to an instance of MiniSearch deserialized from the given JSON. + */ + static loadJSONAsync(json, options) { + return __awaiter(this, void 0, void 0, function* () { + if (options == null) { + throw new Error("MiniSearch: loadJSON should be given the same options used when serializing the index"); + } + return this.loadJSAsync(JSON.parse(json), options); + }); + } + /** + * Returns the default value of an option. It will throw an error if no option + * with the given name exists. + * + * @param optionName Name of the option + * @return The default value of the given option + * + * ### Usage: + * + * ```javascript + * // Get default tokenizer + * MiniSearch.getDefault('tokenize') + * + * // Get default term processor + * MiniSearch.getDefault('processTerm') + * + * // Unknown options will throw an error + * MiniSearch.getDefault('notExisting') + * // => throws 'MiniSearch: unknown option "notExisting"' + * ``` + */ + static getDefault(optionName) { + if (defaultOptions.hasOwnProperty(optionName)) { + return getOwnProperty(defaultOptions, optionName); + } else { + throw new Error(`MiniSearch: unknown option "${optionName}"`); + } + } + /** + * @ignore + */ + static loadJS(js, options) { + const { index, documentIds, fieldLength, storedFields, serializationVersion } = js; + const miniSearch = this.instantiateMiniSearch(js, options); + miniSearch._documentIds = objectToNumericMap(documentIds); + miniSearch._fieldLength = objectToNumericMap(fieldLength); + miniSearch._storedFields = objectToNumericMap(storedFields); + for (const [shortId, id] of miniSearch._documentIds) { + miniSearch._idToShortId.set(id, shortId); + } + for (const [term, data] of index) { + const dataMap = /* @__PURE__ */ new Map(); + for (const fieldId of Object.keys(data)) { + let indexEntry = data[fieldId]; + if (serializationVersion === 1) { + indexEntry = indexEntry.ds; + } + dataMap.set(parseInt(fieldId, 10), objectToNumericMap(indexEntry)); + } + miniSearch._index.set(term, dataMap); + } + return miniSearch; + } + /** + * @ignore + */ + static loadJSAsync(js, options) { + return __awaiter(this, void 0, void 0, function* () { + const { index, documentIds, fieldLength, storedFields, serializationVersion } = js; + const miniSearch = this.instantiateMiniSearch(js, options); + miniSearch._documentIds = yield objectToNumericMapAsync(documentIds); + miniSearch._fieldLength = yield objectToNumericMapAsync(fieldLength); + miniSearch._storedFields = yield objectToNumericMapAsync(storedFields); + for (const [shortId, id] of miniSearch._documentIds) { + miniSearch._idToShortId.set(id, shortId); + } + let count = 0; + for (const [term, data] of index) { + const dataMap = /* @__PURE__ */ new Map(); + for (const fieldId of Object.keys(data)) { + let indexEntry = data[fieldId]; + if (serializationVersion === 1) { + indexEntry = indexEntry.ds; + } + dataMap.set(parseInt(fieldId, 10), yield objectToNumericMapAsync(indexEntry)); + } + if (++count % 1e3 === 0) + yield wait(0); + miniSearch._index.set(term, dataMap); + } + return miniSearch; + }); + } + /** + * @ignore + */ + static instantiateMiniSearch(js, options) { + const { documentCount, nextId, fieldIds, averageFieldLength, dirtCount, serializationVersion } = js; + if (serializationVersion !== 1 && serializationVersion !== 2) { + throw new Error("MiniSearch: cannot deserialize an index created with an incompatible version"); + } + const miniSearch = new MiniSearch(options); + miniSearch._documentCount = documentCount; + miniSearch._nextId = nextId; + miniSearch._idToShortId = /* @__PURE__ */ new Map(); + miniSearch._fieldIds = fieldIds; + miniSearch._avgFieldLength = averageFieldLength; + miniSearch._dirtCount = dirtCount || 0; + miniSearch._index = new SearchableMap(); + return miniSearch; + } + /** + * @ignore + */ + executeQuery(query, searchOptions = {}) { + if (query === MiniSearch.wildcard) { + return this.executeWildcardQuery(searchOptions); + } + if (typeof query !== "string") { + const options2 = Object.assign(Object.assign(Object.assign({}, searchOptions), query), { queries: void 0 }); + const results2 = query.queries.map((subquery) => this.executeQuery(subquery, options2)); + return this.combineResults(results2, options2.combineWith); + } + const { tokenize, processTerm, searchOptions: globalSearchOptions } = this._options; + const options = Object.assign(Object.assign({ tokenize, processTerm }, globalSearchOptions), searchOptions); + const { tokenize: searchTokenize, processTerm: searchProcessTerm } = options; + const terms = searchTokenize(query).flatMap((term) => searchProcessTerm(term)).filter((term) => !!term); + const queries = terms.map(termToQuerySpec(options)); + const results = queries.map((query2) => this.executeQuerySpec(query2, options)); + return this.combineResults(results, options.combineWith); + } + /** + * @ignore + */ + executeQuerySpec(query, searchOptions) { + const options = Object.assign(Object.assign({}, this._options.searchOptions), searchOptions); + const boosts = (options.fields || this._options.fields).reduce((boosts2, field) => Object.assign(Object.assign({}, boosts2), { [field]: getOwnProperty(options.boost, field) || 1 }), {}); + const { boostDocument, weights, maxFuzzy, bm25: bm25params } = options; + const { fuzzy: fuzzyWeight, prefix: prefixWeight } = Object.assign(Object.assign({}, defaultSearchOptions.weights), weights); + const data = this._index.get(query.term); + const results = this.termResults(query.term, query.term, 1, query.termBoost, data, boosts, boostDocument, bm25params); + let prefixMatches; + let fuzzyMatches; + if (query.prefix) { + prefixMatches = this._index.atPrefix(query.term); + } + if (query.fuzzy) { + const fuzzy = query.fuzzy === true ? 0.2 : query.fuzzy; + const maxDistance = fuzzy < 1 ? Math.min(maxFuzzy, Math.round(query.term.length * fuzzy)) : fuzzy; + if (maxDistance) + fuzzyMatches = this._index.fuzzyGet(query.term, maxDistance); + } + if (prefixMatches) { + for (const [term, data2] of prefixMatches) { + const distance = term.length - query.term.length; + if (!distance) { + continue; + } + fuzzyMatches === null || fuzzyMatches === void 0 ? void 0 : fuzzyMatches.delete(term); + const weight = prefixWeight * term.length / (term.length + 0.3 * distance); + this.termResults(query.term, term, weight, query.termBoost, data2, boosts, boostDocument, bm25params, results); + } + } + if (fuzzyMatches) { + for (const term of fuzzyMatches.keys()) { + const [data2, distance] = fuzzyMatches.get(term); + if (!distance) { + continue; + } + const weight = fuzzyWeight * term.length / (term.length + distance); + this.termResults(query.term, term, weight, query.termBoost, data2, boosts, boostDocument, bm25params, results); + } + } + return results; + } + /** + * @ignore + */ + executeWildcardQuery(searchOptions) { + const results = /* @__PURE__ */ new Map(); + const options = Object.assign(Object.assign({}, this._options.searchOptions), searchOptions); + for (const [shortId, id] of this._documentIds) { + const score = options.boostDocument ? options.boostDocument(id, "", this._storedFields.get(shortId)) : 1; + results.set(shortId, { + score, + terms: [], + match: {} + }); + } + return results; + } + /** + * @ignore + */ + combineResults(results, combineWith = OR) { + if (results.length === 0) { + return /* @__PURE__ */ new Map(); + } + const operator = combineWith.toLowerCase(); + const combinator = combinators[operator]; + if (!combinator) { + throw new Error(`Invalid combination operator: ${combineWith}`); + } + return results.reduce(combinator) || /* @__PURE__ */ new Map(); + } + /** + * Allows serialization of the index to JSON, to possibly store it and later + * deserialize it with {@link MiniSearch.loadJSON}. + * + * Normally one does not directly call this method, but rather call the + * standard JavaScript `JSON.stringify()` passing the {@link MiniSearch} + * instance, and JavaScript will internally call this method. Upon + * deserialization, one must pass to {@link MiniSearch.loadJSON} the same + * options used to create the original instance that was serialized. + * + * ### Usage: + * + * ```javascript + * // Serialize the index: + * let miniSearch = new MiniSearch({ fields: ['title', 'text'] }) + * miniSearch.addAll(documents) + * const json = JSON.stringify(miniSearch) + * + * // Later, to deserialize it: + * miniSearch = MiniSearch.loadJSON(json, { fields: ['title', 'text'] }) + * ``` + * + * @return A plain-object serializable representation of the search index. + */ + toJSON() { + const index = []; + for (const [term, fieldIndex] of this._index) { + const data = {}; + for (const [fieldId, freqs] of fieldIndex) { + data[fieldId] = Object.fromEntries(freqs); + } + index.push([term, data]); + } + return { + documentCount: this._documentCount, + nextId: this._nextId, + documentIds: Object.fromEntries(this._documentIds), + fieldIds: this._fieldIds, + fieldLength: Object.fromEntries(this._fieldLength), + averageFieldLength: this._avgFieldLength, + storedFields: Object.fromEntries(this._storedFields), + dirtCount: this._dirtCount, + index, + serializationVersion: 2 + }; + } + /** + * @ignore + */ + termResults(sourceTerm, derivedTerm, termWeight, termBoost, fieldTermData, fieldBoosts, boostDocumentFn, bm25params, results = /* @__PURE__ */ new Map()) { + if (fieldTermData == null) + return results; + for (const field of Object.keys(fieldBoosts)) { + const fieldBoost = fieldBoosts[field]; + const fieldId = this._fieldIds[field]; + const fieldTermFreqs = fieldTermData.get(fieldId); + if (fieldTermFreqs == null) + continue; + let matchingFields = fieldTermFreqs.size; + const avgFieldLength = this._avgFieldLength[fieldId]; + for (const docId of fieldTermFreqs.keys()) { + if (!this._documentIds.has(docId)) { + this.removeTerm(fieldId, docId, derivedTerm); + matchingFields -= 1; + continue; + } + const docBoost = boostDocumentFn ? boostDocumentFn(this._documentIds.get(docId), derivedTerm, this._storedFields.get(docId)) : 1; + if (!docBoost) + continue; + const termFreq = fieldTermFreqs.get(docId); + const fieldLength = this._fieldLength.get(docId)[fieldId]; + const rawScore = calcBM25Score(termFreq, matchingFields, this._documentCount, fieldLength, avgFieldLength, bm25params); + const weightedScore = termWeight * termBoost * fieldBoost * docBoost * rawScore; + const result = results.get(docId); + if (result) { + result.score += weightedScore; + assignUniqueTerm(result.terms, sourceTerm); + const match = getOwnProperty(result.match, derivedTerm); + if (match) { + match.push(field); + } else { + result.match[derivedTerm] = [field]; + } + } else { + results.set(docId, { + score: weightedScore, + terms: [sourceTerm], + match: { [derivedTerm]: [field] } + }); + } + } + } + return results; + } + /** + * @ignore + */ + addTerm(fieldId, documentId, term) { + const indexData = this._index.fetch(term, createMap); + let fieldIndex = indexData.get(fieldId); + if (fieldIndex == null) { + fieldIndex = /* @__PURE__ */ new Map(); + fieldIndex.set(documentId, 1); + indexData.set(fieldId, fieldIndex); + } else { + const docs = fieldIndex.get(documentId); + fieldIndex.set(documentId, (docs || 0) + 1); + } + } + /** + * @ignore + */ + removeTerm(fieldId, documentId, term) { + if (!this._index.has(term)) { + this.warnDocumentChanged(documentId, fieldId, term); + return; + } + const indexData = this._index.fetch(term, createMap); + const fieldIndex = indexData.get(fieldId); + if (fieldIndex == null || fieldIndex.get(documentId) == null) { + this.warnDocumentChanged(documentId, fieldId, term); + } else if (fieldIndex.get(documentId) <= 1) { + if (fieldIndex.size <= 1) { + indexData.delete(fieldId); + } else { + fieldIndex.delete(documentId); + } + } else { + fieldIndex.set(documentId, fieldIndex.get(documentId) - 1); + } + if (this._index.get(term).size === 0) { + this._index.delete(term); + } + } + /** + * @ignore + */ + warnDocumentChanged(shortDocumentId, fieldId, term) { + for (const fieldName of Object.keys(this._fieldIds)) { + if (this._fieldIds[fieldName] === fieldId) { + this._options.logger("warn", `MiniSearch: document with ID ${this._documentIds.get(shortDocumentId)} has changed before removal: term "${term}" was not present in field "${fieldName}". Removing a document after it has changed can corrupt the index!`, "version_conflict"); + return; + } + } + } + /** + * @ignore + */ + addDocumentId(documentId) { + const shortDocumentId = this._nextId; + this._idToShortId.set(documentId, shortDocumentId); + this._documentIds.set(shortDocumentId, documentId); + this._documentCount += 1; + this._nextId += 1; + return shortDocumentId; + } + /** + * @ignore + */ + addFields(fields) { + for (let i = 0; i < fields.length; i++) { + this._fieldIds[fields[i]] = i; + } + } + /** + * @ignore + */ + addFieldLength(documentId, fieldId, count, length) { + let fieldLengths = this._fieldLength.get(documentId); + if (fieldLengths == null) + this._fieldLength.set(documentId, fieldLengths = []); + fieldLengths[fieldId] = length; + const averageFieldLength = this._avgFieldLength[fieldId] || 0; + const totalFieldLength = averageFieldLength * count + length; + this._avgFieldLength[fieldId] = totalFieldLength / (count + 1); + } + /** + * @ignore + */ + removeFieldLength(documentId, fieldId, count, length) { + if (count === 1) { + this._avgFieldLength[fieldId] = 0; + return; + } + const totalFieldLength = this._avgFieldLength[fieldId] * count - length; + this._avgFieldLength[fieldId] = totalFieldLength / (count - 1); + } + /** + * @ignore + */ + saveStoredFields(documentId, doc) { + const { storeFields, extractField } = this._options; + if (storeFields == null || storeFields.length === 0) { + return; + } + let documentFields = this._storedFields.get(documentId); + if (documentFields == null) + this._storedFields.set(documentId, documentFields = {}); + for (const fieldName of storeFields) { + const fieldValue = extractField(doc, fieldName); + if (fieldValue !== void 0) + documentFields[fieldName] = fieldValue; + } + } +} +MiniSearch.wildcard = Symbol("*"); +const getOwnProperty = (object, property) => Object.prototype.hasOwnProperty.call(object, property) ? object[property] : void 0; +const combinators = { + [OR]: (a, b) => { + for (const docId of b.keys()) { + const existing = a.get(docId); + if (existing == null) { + a.set(docId, b.get(docId)); + } else { + const { score, terms, match } = b.get(docId); + existing.score = existing.score + score; + existing.match = Object.assign(existing.match, match); + assignUniqueTerms(existing.terms, terms); + } + } + return a; + }, + [AND]: (a, b) => { + const combined = /* @__PURE__ */ new Map(); + for (const docId of b.keys()) { + const existing = a.get(docId); + if (existing == null) + continue; + const { score, terms, match } = b.get(docId); + assignUniqueTerms(existing.terms, terms); + combined.set(docId, { + score: existing.score + score, + terms: existing.terms, + match: Object.assign(existing.match, match) + }); + } + return combined; + }, + [AND_NOT]: (a, b) => { + for (const docId of b.keys()) + a.delete(docId); + return a; + } +}; +const defaultBM25params = { k: 1.2, b: 0.7, d: 0.5 }; +const calcBM25Score = (termFreq, matchingCount, totalCount, fieldLength, avgFieldLength, bm25params) => { + const { k, b, d } = bm25params; + const invDocFreq = Math.log(1 + (totalCount - matchingCount + 0.5) / (matchingCount + 0.5)); + return invDocFreq * (d + termFreq * (k + 1) / (termFreq + k * (1 - b + b * fieldLength / avgFieldLength))); +}; +const termToQuerySpec = (options) => (term, i, terms) => { + const fuzzy = typeof options.fuzzy === "function" ? options.fuzzy(term, i, terms) : options.fuzzy || false; + const prefix = typeof options.prefix === "function" ? options.prefix(term, i, terms) : options.prefix === true; + const termBoost = typeof options.boostTerm === "function" ? options.boostTerm(term, i, terms) : 1; + return { term, fuzzy, prefix, termBoost }; +}; +const defaultOptions = { + idField: "id", + extractField: (document2, fieldName) => document2[fieldName], + tokenize: (text) => text.split(SPACE_OR_PUNCTUATION), + processTerm: (term) => term.toLowerCase(), + fields: void 0, + searchOptions: void 0, + storeFields: [], + logger: (level, message) => { + if (typeof (console === null || console === void 0 ? void 0 : console[level]) === "function") + console[level](message); + }, + autoVacuum: true +}; +const defaultSearchOptions = { + combineWith: OR, + prefix: false, + fuzzy: false, + maxFuzzy: 6, + boost: {}, + weights: { fuzzy: 0.45, prefix: 0.375 }, + bm25: defaultBM25params +}; +const defaultAutoSuggestOptions = { + combineWith: AND, + prefix: (term, i, terms) => i === terms.length - 1 +}; +const defaultVacuumOptions = { batchSize: 1e3, batchWait: 10 }; +const defaultVacuumConditions = { minDirtFactor: 0.1, minDirtCount: 20 }; +const defaultAutoVacuumOptions = Object.assign(Object.assign({}, defaultVacuumOptions), defaultVacuumConditions); +const assignUniqueTerm = (target, term) => { + if (!target.includes(term)) + target.push(term); +}; +const assignUniqueTerms = (target, source) => { + for (const term of source) { + if (!target.includes(term)) + target.push(term); + } +}; +const byScore = ({ score: a }, { score: b }) => b - a; +const createMap = () => /* @__PURE__ */ new Map(); +const objectToNumericMap = (object) => { + const map = /* @__PURE__ */ new Map(); + for (const key of Object.keys(object)) { + map.set(parseInt(key, 10), object[key]); + } + return map; +}; +const objectToNumericMapAsync = (object) => __awaiter(void 0, void 0, void 0, function* () { + const map = /* @__PURE__ */ new Map(); + let count = 0; + for (const key of Object.keys(object)) { + map.set(parseInt(key, 10), object[key]); + if (++count % 1e3 === 0) { + yield wait(0); + } + } + return map; +}); +const wait = (ms) => new Promise((resolve) => setTimeout(resolve, ms)); +const SPACE_OR_PUNCTUATION = /[\n\r\p{Z}\p{P}]+/u; +class LRUCache { + constructor(max = 10) { + __publicField(this, "max"); + __publicField(this, "cache"); + this.max = max; + this.cache = /* @__PURE__ */ new Map(); + } + get(key) { + let item = this.cache.get(key); + if (item !== void 0) { + this.cache.delete(key); + this.cache.set(key, item); + } + return item; + } + set(key, val) { + if (this.cache.has(key)) + this.cache.delete(key); + else if (this.cache.size === this.max) + this.cache.delete(this.first()); + this.cache.set(key, val); + } + first() { + return this.cache.keys().next().value; + } + clear() { + this.cache.clear(); + } +} +const _hoisted_1 = ["aria-owns"]; +const _hoisted_2 = { class: "shell" }; +const _hoisted_3 = ["title"]; +const _hoisted_4 = { class: "search-actions before" }; +const _hoisted_5 = ["title"]; +const _hoisted_6 = ["placeholder"]; +const _hoisted_7 = { class: "search-actions" }; +const _hoisted_8 = ["title"]; +const _hoisted_9 = ["disabled", "title"]; +const _hoisted_10 = ["id", "role", "aria-labelledby"]; +const _hoisted_11 = ["aria-selected"]; +const _hoisted_12 = ["href", "aria-label", "onMouseenter", "onFocusin"]; +const _hoisted_13 = { class: "titles" }; +const _hoisted_14 = ["innerHTML"]; +const _hoisted_15 = { class: "title main" }; +const _hoisted_16 = ["innerHTML"]; +const _hoisted_17 = { + key: 0, + class: "excerpt-wrapper" +}; +const _hoisted_18 = { + key: 0, + class: "excerpt", + inert: "" +}; +const _hoisted_19 = ["innerHTML"]; +const _hoisted_20 = { + key: 0, + class: "no-results" +}; +const _hoisted_21 = { class: "search-keyboard-shortcuts" }; +const _hoisted_22 = ["aria-label"]; +const _hoisted_23 = ["aria-label"]; +const _hoisted_24 = ["aria-label"]; +const _hoisted_25 = ["aria-label"]; +const _sfc_main = /* @__PURE__ */ defineComponent({ + __name: "VPLocalSearchBox", + emits: ["close"], + setup(__props, { emit: __emit }) { + var _a, _b; + const emit = __emit; + const el = shallowRef(); + const resultsEl = shallowRef(); + const searchIndexData = shallowRef(localSearchIndex); + const vitePressData = useData(); + const { activate } = useFocusTrap(el, { + immediate: true, + allowOutsideClick: true, + clickOutsideDeactivates: true, + escapeDeactivates: true + }); + const { localeIndex, theme } = vitePressData; + const searchIndex = computedAsync( + async () => { + var _a2, _b2, _c, _d, _e, _f, _g, _h, _i; + return markRaw( + MiniSearch.loadJSON( + (_c = await ((_b2 = (_a2 = searchIndexData.value)[localeIndex.value]) == null ? void 0 : _b2.call(_a2))) == null ? void 0 : _c.default, + { + fields: ["title", "titles", "text"], + storeFields: ["title", "titles"], + searchOptions: { + fuzzy: 0.2, + prefix: true, + boost: { title: 4, text: 2, titles: 1 }, + ...((_d = theme.value.search) == null ? void 0 : _d.provider) === "local" && ((_f = (_e = theme.value.search.options) == null ? void 0 : _e.miniSearch) == null ? void 0 : _f.searchOptions) + }, + ...((_g = theme.value.search) == null ? void 0 : _g.provider) === "local" && ((_i = (_h = theme.value.search.options) == null ? void 0 : _h.miniSearch) == null ? void 0 : _i.options) + } + ) + ); + } + ); + const disableQueryPersistence = computed(() => { + var _a2, _b2; + return ((_a2 = theme.value.search) == null ? void 0 : _a2.provider) === "local" && ((_b2 = theme.value.search.options) == null ? void 0 : _b2.disableQueryPersistence) === true; + }); + const filterText = disableQueryPersistence.value ? ref("") : useSessionStorage("vitepress:local-search-filter", ""); + const showDetailedList = useLocalStorage( + "vitepress:local-search-detailed-list", + ((_a = theme.value.search) == null ? void 0 : _a.provider) === "local" && ((_b = theme.value.search.options) == null ? void 0 : _b.detailedView) === true + ); + const disableDetailedView = computed(() => { + var _a2, _b2, _c; + return ((_a2 = theme.value.search) == null ? void 0 : _a2.provider) === "local" && (((_b2 = theme.value.search.options) == null ? void 0 : _b2.disableDetailedView) === true || ((_c = theme.value.search.options) == null ? void 0 : _c.detailedView) === false); + }); + const buttonText = computed(() => { + var _a2, _b2, _c, _d, _e, _f, _g; + const options = ((_a2 = theme.value.search) == null ? void 0 : _a2.options) ?? theme.value.algolia; + return ((_e = (_d = (_c = (_b2 = options == null ? void 0 : options.locales) == null ? void 0 : _b2[localeIndex.value]) == null ? void 0 : _c.translations) == null ? void 0 : _d.button) == null ? void 0 : _e.buttonText) || ((_g = (_f = options == null ? void 0 : options.translations) == null ? void 0 : _f.button) == null ? void 0 : _g.buttonText) || "Search"; + }); + watchEffect(() => { + if (disableDetailedView.value) { + showDetailedList.value = false; + } + }); + const results = shallowRef([]); + const enableNoResults = ref(false); + watch(filterText, () => { + enableNoResults.value = false; + }); + const mark = computedAsync(async () => { + if (!resultsEl.value) return; + return markRaw(new Mark2(resultsEl.value)); + }, null); + const cache = new LRUCache(16); + watchDebounced( + () => [searchIndex.value, filterText.value, showDetailedList.value], + async ([index, filterTextValue, showDetailedListValue], old, onCleanup) => { + var _a2, _b2, _c, _d; + if ((old == null ? void 0 : old[0]) !== index) { + cache.clear(); + } + let canceled = false; + onCleanup(() => { + canceled = true; + }); + if (!index) return; + results.value = index.search(filterTextValue).slice(0, 16); + enableNoResults.value = true; + const mods = showDetailedListValue ? await Promise.all(results.value.map((r) => fetchExcerpt(r.id))) : []; + if (canceled) return; + for (const { id, mod } of mods) { + const mapId = id.slice(0, id.indexOf("#")); + let map = cache.get(mapId); + if (map) continue; + map = /* @__PURE__ */ new Map(); + cache.set(mapId, map); + const comp = mod.default ?? mod; + if ((comp == null ? void 0 : comp.render) || (comp == null ? void 0 : comp.setup)) { + const app = createApp(comp); + app.config.warnHandler = () => { + }; + app.provide(dataSymbol, vitePressData); + Object.defineProperties(app.config.globalProperties, { + $frontmatter: { + get() { + return vitePressData.frontmatter.value; + } + }, + $params: { + get() { + return vitePressData.page.value.params; + } + } + }); + const div = document.createElement("div"); + app.mount(div); + const headings = div.querySelectorAll("h1, h2, h3, h4, h5, h6"); + headings.forEach((el2) => { + var _a3; + const href = (_a3 = el2.querySelector("a")) == null ? void 0 : _a3.getAttribute("href"); + const anchor = (href == null ? void 0 : href.startsWith("#")) && href.slice(1); + if (!anchor) return; + let html = ""; + while ((el2 = el2.nextElementSibling) && !/^h[1-6]$/i.test(el2.tagName)) + html += el2.outerHTML; + map.set(anchor, html); + }); + app.unmount(); + } + if (canceled) return; + } + const terms = /* @__PURE__ */ new Set(); + results.value = results.value.map((r) => { + const [id, anchor] = r.id.split("#"); + const map = cache.get(id); + const text = (map == null ? void 0 : map.get(anchor)) ?? ""; + for (const term in r.match) { + terms.add(term); + } + return { ...r, text }; + }); + await nextTick(); + if (canceled) return; + await new Promise((r) => { + var _a3; + (_a3 = mark.value) == null ? void 0 : _a3.unmark({ + done: () => { + var _a4; + (_a4 = mark.value) == null ? void 0 : _a4.markRegExp(formMarkRegex(terms), { done: r }); + } + }); + }); + const excerpts = ((_a2 = el.value) == null ? void 0 : _a2.querySelectorAll(".result .excerpt")) ?? []; + for (const excerpt of excerpts) { + (_b2 = excerpt.querySelector('mark[data-markjs="true"]')) == null ? void 0 : _b2.scrollIntoView({ block: "center" }); + } + (_d = (_c = resultsEl.value) == null ? void 0 : _c.firstElementChild) == null ? void 0 : _d.scrollIntoView({ block: "start" }); + }, + { debounce: 200, immediate: true } + ); + async function fetchExcerpt(id) { + const file = pathToFile(id.slice(0, id.indexOf("#"))); + try { + if (!file) throw new Error(`Cannot find file for id: ${id}`); + return { id, mod: await import( + /*@vite-ignore*/ + file + ) }; + } catch (e) { + console.error(e); + return { id, mod: {} }; + } + } + const searchInput = ref(); + const disableReset = computed(() => { + var _a2; + return ((_a2 = filterText.value) == null ? void 0 : _a2.length) <= 0; + }); + function focusSearchInput(select = true) { + var _a2, _b2; + (_a2 = searchInput.value) == null ? void 0 : _a2.focus(); + select && ((_b2 = searchInput.value) == null ? void 0 : _b2.select()); + } + onMounted(() => { + focusSearchInput(); + }); + function onSearchBarClick(event) { + if (event.pointerType === "mouse") { + focusSearchInput(); + } + } + const selectedIndex = ref(-1); + const disableMouseOver = ref(false); + watch(results, (r) => { + selectedIndex.value = r.length ? 0 : -1; + scrollToSelectedResult(); + }); + function scrollToSelectedResult() { + nextTick(() => { + const selectedEl = document.querySelector(".result.selected"); + selectedEl == null ? void 0 : selectedEl.scrollIntoView({ block: "nearest" }); + }); + } + onKeyStroke("ArrowUp", (event) => { + event.preventDefault(); + selectedIndex.value--; + if (selectedIndex.value < 0) { + selectedIndex.value = results.value.length - 1; + } + disableMouseOver.value = true; + scrollToSelectedResult(); + }); + onKeyStroke("ArrowDown", (event) => { + event.preventDefault(); + selectedIndex.value++; + if (selectedIndex.value >= results.value.length) { + selectedIndex.value = 0; + } + disableMouseOver.value = true; + scrollToSelectedResult(); + }); + const router = useRouter(); + onKeyStroke("Enter", (e) => { + if (e.isComposing) return; + if (e.target instanceof HTMLButtonElement && e.target.type !== "submit") + return; + const selectedPackage = results.value[selectedIndex.value]; + if (e.target instanceof HTMLInputElement && !selectedPackage) { + e.preventDefault(); + return; + } + if (selectedPackage) { + router.go(selectedPackage.id); + emit("close"); + } + }); + onKeyStroke("Escape", () => { + emit("close"); + }); + const defaultTranslations = { + modal: { + displayDetails: "Display detailed list", + resetButtonTitle: "Reset search", + backButtonTitle: "Close search", + noResultsText: "No results for", + footer: { + selectText: "to select", + selectKeyAriaLabel: "enter", + navigateText: "to navigate", + navigateUpKeyAriaLabel: "up arrow", + navigateDownKeyAriaLabel: "down arrow", + closeText: "to close", + closeKeyAriaLabel: "escape" + } + } + }; + const translate = createSearchTranslate(defaultTranslations); + onMounted(() => { + window.history.pushState(null, "", null); + }); + useEventListener("popstate", (event) => { + event.preventDefault(); + emit("close"); + }); + const isLocked = useScrollLock(inBrowser ? document.body : null); + onMounted(() => { + nextTick(() => { + isLocked.value = true; + nextTick().then(() => activate()); + }); + }); + onBeforeUnmount(() => { + isLocked.value = false; + }); + function resetSearch() { + filterText.value = ""; + nextTick().then(() => focusSearchInput(false)); + } + function formMarkRegex(terms) { + return new RegExp( + [...terms].sort((a, b) => b.length - a.length).map((term) => `(${escapeRegExp(term)})`).join("|"), + "gi" + ); + } + return (_ctx, _cache) => { + var _a2, _b2, _c, _d; + return openBlock(), createBlock(Teleport, { to: "body" }, [ + createBaseVNode("div", { + ref_key: "el", + ref: el, + role: "button", + "aria-owns": ((_a2 = results.value) == null ? void 0 : _a2.length) ? "localsearch-list" : void 0, + "aria-expanded": "true", + "aria-haspopup": "listbox", + "aria-labelledby": "localsearch-label", + class: "VPLocalSearchBox" + }, [ + createBaseVNode("div", { + class: "backdrop", + onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("close")) + }), + createBaseVNode("div", _hoisted_2, [ + createBaseVNode("form", { + class: "search-bar", + onPointerup: _cache[4] || (_cache[4] = ($event) => onSearchBarClick($event)), + onSubmit: _cache[5] || (_cache[5] = withModifiers(() => { + }, ["prevent"])) + }, [ + createBaseVNode("label", { + title: buttonText.value, + id: "localsearch-label", + for: "localsearch-input" + }, _cache[8] || (_cache[8] = [ + createBaseVNode("span", { + "aria-hidden": "true", + class: "vpi-search search-icon local-search-icon" + }, null, -1) + ]), 8, _hoisted_3), + createBaseVNode("div", _hoisted_4, [ + createBaseVNode("button", { + class: "back-button", + title: unref(translate)("modal.backButtonTitle"), + onClick: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("close")) + }, _cache[9] || (_cache[9] = [ + createBaseVNode("span", { class: "vpi-arrow-left local-search-icon" }, null, -1) + ]), 8, _hoisted_5) + ]), + withDirectives(createBaseVNode("input", { + ref_key: "searchInput", + ref: searchInput, + "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => isRef(filterText) ? filterText.value = $event : null), + placeholder: buttonText.value, + id: "localsearch-input", + "aria-labelledby": "localsearch-label", + class: "search-input" + }, null, 8, _hoisted_6), [ + [vModelText, unref(filterText)] + ]), + createBaseVNode("div", _hoisted_7, [ + !disableDetailedView.value ? (openBlock(), createElementBlock("button", { + key: 0, + class: normalizeClass(["toggle-layout-button", { "detailed-list": unref(showDetailedList) }]), + type: "button", + title: unref(translate)("modal.displayDetails"), + onClick: _cache[3] || (_cache[3] = ($event) => selectedIndex.value > -1 && (showDetailedList.value = !unref(showDetailedList))) + }, _cache[10] || (_cache[10] = [ + createBaseVNode("span", { class: "vpi-layout-list local-search-icon" }, null, -1) + ]), 10, _hoisted_8)) : createCommentVNode("", true), + createBaseVNode("button", { + class: "clear-button", + type: "reset", + disabled: disableReset.value, + title: unref(translate)("modal.resetButtonTitle"), + onClick: resetSearch + }, _cache[11] || (_cache[11] = [ + createBaseVNode("span", { class: "vpi-delete local-search-icon" }, null, -1) + ]), 8, _hoisted_9) + ]) + ], 32), + createBaseVNode("ul", { + ref_key: "resultsEl", + ref: resultsEl, + id: ((_b2 = results.value) == null ? void 0 : _b2.length) ? "localsearch-list" : void 0, + role: ((_c = results.value) == null ? void 0 : _c.length) ? "listbox" : void 0, + "aria-labelledby": ((_d = results.value) == null ? void 0 : _d.length) ? "localsearch-label" : void 0, + class: "results", + onMousemove: _cache[7] || (_cache[7] = ($event) => disableMouseOver.value = false) + }, [ + (openBlock(true), createElementBlock(Fragment, null, renderList(results.value, (p, index) => { + return openBlock(), createElementBlock("li", { + key: p.id, + role: "option", + "aria-selected": selectedIndex.value === index ? "true" : "false" + }, [ + createBaseVNode("a", { + href: p.id, + class: normalizeClass(["result", { + selected: selectedIndex.value === index + }]), + "aria-label": [...p.titles, p.title].join(" > "), + onMouseenter: ($event) => !disableMouseOver.value && (selectedIndex.value = index), + onFocusin: ($event) => selectedIndex.value = index, + onClick: _cache[6] || (_cache[6] = ($event) => _ctx.$emit("close")) + }, [ + createBaseVNode("div", null, [ + createBaseVNode("div", _hoisted_13, [ + _cache[13] || (_cache[13] = createBaseVNode("span", { class: "title-icon" }, "#", -1)), + (openBlock(true), createElementBlock(Fragment, null, renderList(p.titles, (t, index2) => { + return openBlock(), createElementBlock("span", { + key: index2, + class: "title" + }, [ + createBaseVNode("span", { + class: "text", + innerHTML: t + }, null, 8, _hoisted_14), + _cache[12] || (_cache[12] = createBaseVNode("span", { class: "vpi-chevron-right local-search-icon" }, null, -1)) + ]); + }), 128)), + createBaseVNode("span", _hoisted_15, [ + createBaseVNode("span", { + class: "text", + innerHTML: p.title + }, null, 8, _hoisted_16) + ]) + ]), + unref(showDetailedList) ? (openBlock(), createElementBlock("div", _hoisted_17, [ + p.text ? (openBlock(), createElementBlock("div", _hoisted_18, [ + createBaseVNode("div", { + class: "vp-doc", + innerHTML: p.text + }, null, 8, _hoisted_19) + ])) : createCommentVNode("", true), + _cache[14] || (_cache[14] = createBaseVNode("div", { class: "excerpt-gradient-bottom" }, null, -1)), + _cache[15] || (_cache[15] = createBaseVNode("div", { class: "excerpt-gradient-top" }, null, -1)) + ])) : createCommentVNode("", true) + ]) + ], 42, _hoisted_12) + ], 8, _hoisted_11); + }), 128)), + unref(filterText) && !results.value.length && enableNoResults.value ? (openBlock(), createElementBlock("li", _hoisted_20, [ + createTextVNode(toDisplayString(unref(translate)("modal.noResultsText")) + ' "', 1), + createBaseVNode("strong", null, toDisplayString(unref(filterText)), 1), + _cache[16] || (_cache[16] = createTextVNode('" ')) + ])) : createCommentVNode("", true) + ], 40, _hoisted_10), + createBaseVNode("div", _hoisted_21, [ + createBaseVNode("span", null, [ + createBaseVNode("kbd", { + "aria-label": unref(translate)("modal.footer.navigateUpKeyAriaLabel") + }, _cache[17] || (_cache[17] = [ + createBaseVNode("span", { class: "vpi-arrow-up navigate-icon" }, null, -1) + ]), 8, _hoisted_22), + createBaseVNode("kbd", { + "aria-label": unref(translate)("modal.footer.navigateDownKeyAriaLabel") + }, _cache[18] || (_cache[18] = [ + createBaseVNode("span", { class: "vpi-arrow-down navigate-icon" }, null, -1) + ]), 8, _hoisted_23), + createTextVNode(" " + toDisplayString(unref(translate)("modal.footer.navigateText")), 1) + ]), + createBaseVNode("span", null, [ + createBaseVNode("kbd", { + "aria-label": unref(translate)("modal.footer.selectKeyAriaLabel") + }, _cache[19] || (_cache[19] = [ + createBaseVNode("span", { class: "vpi-corner-down-left navigate-icon" }, null, -1) + ]), 8, _hoisted_24), + createTextVNode(" " + toDisplayString(unref(translate)("modal.footer.selectText")), 1) + ]), + createBaseVNode("span", null, [ + createBaseVNode("kbd", { + "aria-label": unref(translate)("modal.footer.closeKeyAriaLabel") + }, "esc", 8, _hoisted_25), + createTextVNode(" " + toDisplayString(unref(translate)("modal.footer.closeText")), 1) + ]) + ]) + ]) + ], 8, _hoisted_1) + ]); + }; + } +}); +const VPLocalSearchBox = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-5b749456"]]); +export { + VPLocalSearchBox as default +}; diff --git a/v0.52.0/assets/chunks/framework.CTxMrREi.js b/v0.52.0/assets/chunks/framework.CTxMrREi.js new file mode 100644 index 000000000..4b8c0fa64 --- /dev/null +++ b/v0.52.0/assets/chunks/framework.CTxMrREi.js @@ -0,0 +1,9890 @@ +/** +* @vue/shared v3.5.3 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/ +/*! #__NO_SIDE_EFFECTS__ */ +// @__NO_SIDE_EFFECTS__ +function makeMap(str, expectsLowerCase) { + const set2 = new Set(str.split(",")); + return (val) => set2.has(val); +} +const EMPTY_OBJ = {}; +const EMPTY_ARR = []; +const NOOP = () => { +}; +const NO = () => false; +const isOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // uppercase letter +(key.charCodeAt(2) > 122 || key.charCodeAt(2) < 97); +const isModelListener = (key) => key.startsWith("onUpdate:"); +const extend = Object.assign; +const remove = (arr, el) => { + const i = arr.indexOf(el); + if (i > -1) { + arr.splice(i, 1); + } +}; +const hasOwnProperty$1 = Object.prototype.hasOwnProperty; +const hasOwn = (val, key) => hasOwnProperty$1.call(val, key); +const isArray = Array.isArray; +const isMap = (val) => toTypeString(val) === "[object Map]"; +const isSet = (val) => toTypeString(val) === "[object Set]"; +const isFunction = (val) => typeof val === "function"; +const isString = (val) => typeof val === "string"; +const isSymbol = (val) => typeof val === "symbol"; +const isObject$1 = (val) => val !== null && typeof val === "object"; +const isPromise = (val) => { + return (isObject$1(val) || isFunction(val)) && isFunction(val.then) && isFunction(val.catch); +}; +const objectToString = Object.prototype.toString; +const toTypeString = (value) => objectToString.call(value); +const toRawType = (value) => { + return toTypeString(value).slice(8, -1); +}; +const isPlainObject = (val) => toTypeString(val) === "[object Object]"; +const isIntegerKey = (key) => isString(key) && key !== "NaN" && key[0] !== "-" && "" + parseInt(key, 10) === key; +const isReservedProp = /* @__PURE__ */ makeMap( + // the leading comma is intentional so empty string "" is also included + ",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted" +); +const cacheStringFunction = (fn) => { + const cache = /* @__PURE__ */ Object.create(null); + return (str) => { + const hit = cache[str]; + return hit || (cache[str] = fn(str)); + }; +}; +const camelizeRE = /-(\w)/g; +const camelize = cacheStringFunction( + (str) => { + return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : ""); + } +); +const hyphenateRE = /\B([A-Z])/g; +const hyphenate = cacheStringFunction( + (str) => str.replace(hyphenateRE, "-$1").toLowerCase() +); +const capitalize = cacheStringFunction((str) => { + return str.charAt(0).toUpperCase() + str.slice(1); +}); +const toHandlerKey = cacheStringFunction( + (str) => { + const s = str ? `on${capitalize(str)}` : ``; + return s; + } +); +const hasChanged = (value, oldValue) => !Object.is(value, oldValue); +const invokeArrayFns = (fns, ...arg) => { + for (let i = 0; i < fns.length; i++) { + fns[i](...arg); + } +}; +const def = (obj, key, value, writable = false) => { + Object.defineProperty(obj, key, { + configurable: true, + enumerable: false, + writable, + value + }); +}; +const looseToNumber = (val) => { + const n = parseFloat(val); + return isNaN(n) ? val : n; +}; +const toNumber = (val) => { + const n = isString(val) ? Number(val) : NaN; + return isNaN(n) ? val : n; +}; +let _globalThis; +const getGlobalThis = () => { + return _globalThis || (_globalThis = typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : {}); +}; +function normalizeStyle(value) { + if (isArray(value)) { + const res = {}; + for (let i = 0; i < value.length; i++) { + const item = value[i]; + const normalized = isString(item) ? parseStringStyle(item) : normalizeStyle(item); + if (normalized) { + for (const key in normalized) { + res[key] = normalized[key]; + } + } + } + return res; + } else if (isString(value) || isObject$1(value)) { + return value; + } +} +const listDelimiterRE = /;(?![^(]*\))/g; +const propertyDelimiterRE = /:([^]+)/; +const styleCommentRE = /\/\*[^]*?\*\//g; +function parseStringStyle(cssText) { + const ret = {}; + cssText.replace(styleCommentRE, "").split(listDelimiterRE).forEach((item) => { + if (item) { + const tmp = item.split(propertyDelimiterRE); + tmp.length > 1 && (ret[tmp[0].trim()] = tmp[1].trim()); + } + }); + return ret; +} +function stringifyStyle(styles) { + let ret = ""; + if (!styles || isString(styles)) { + return ret; + } + for (const key in styles) { + const value = styles[key]; + if (isString(value) || typeof value === "number") { + const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key); + ret += `${normalizedKey}:${value};`; + } + } + return ret; +} +function normalizeClass(value) { + let res = ""; + if (isString(value)) { + res = value; + } else if (isArray(value)) { + for (let i = 0; i < value.length; i++) { + const normalized = normalizeClass(value[i]); + if (normalized) { + res += normalized + " "; + } + } + } else if (isObject$1(value)) { + for (const name in value) { + if (value[name]) { + res += name + " "; + } + } + } + return res.trim(); +} +const specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`; +const isSpecialBooleanAttr = /* @__PURE__ */ makeMap(specialBooleanAttrs); +const isBooleanAttr = /* @__PURE__ */ makeMap( + specialBooleanAttrs + `,async,autofocus,autoplay,controls,default,defer,disabled,hidden,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected` +); +function includeBooleanAttr(value) { + return !!value || value === ""; +} +const isKnownHtmlAttr = /* @__PURE__ */ makeMap( + `accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,inert,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap` +); +const isKnownSvgAttr = /* @__PURE__ */ makeMap( + `xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan` +); +function isRenderableAttrValue(value) { + if (value == null) { + return false; + } + const type = typeof value; + return type === "string" || type === "number" || type === "boolean"; +} +const cssVarNameEscapeSymbolsRE = /[ !"#$%&'()*+,./:;<=>?@[\\\]^`{|}~]/g; +function getEscapedCssVarName(key, doubleEscape) { + return key.replace( + cssVarNameEscapeSymbolsRE, + (s) => `\\${s}` + ); +} +const isRef$1 = (val) => { + return !!(val && val["__v_isRef"] === true); +}; +const toDisplayString = (val) => { + return isString(val) ? val : val == null ? "" : isArray(val) || isObject$1(val) && (val.toString === objectToString || !isFunction(val.toString)) ? isRef$1(val) ? toDisplayString(val.value) : JSON.stringify(val, replacer, 2) : String(val); +}; +const replacer = (_key, val) => { + if (isRef$1(val)) { + return replacer(_key, val.value); + } else if (isMap(val)) { + return { + [`Map(${val.size})`]: [...val.entries()].reduce( + (entries, [key, val2], i) => { + entries[stringifySymbol(key, i) + " =>"] = val2; + return entries; + }, + {} + ) + }; + } else if (isSet(val)) { + return { + [`Set(${val.size})`]: [...val.values()].map((v) => stringifySymbol(v)) + }; + } else if (isSymbol(val)) { + return stringifySymbol(val); + } else if (isObject$1(val) && !isArray(val) && !isPlainObject(val)) { + return String(val); + } + return val; +}; +const stringifySymbol = (v, i = "") => { + var _a; + return ( + // Symbol.description in es2019+ so we need to cast here to pass + // the lib: es2016 check + isSymbol(v) ? `Symbol(${(_a = v.description) != null ? _a : i})` : v + ); +}; +/** +* @vue/reactivity v3.5.3 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/ +let activeEffectScope; +class EffectScope { + constructor(detached = false) { + this.detached = detached; + this._active = true; + this.effects = []; + this.cleanups = []; + this._isPaused = false; + this.parent = activeEffectScope; + if (!detached && activeEffectScope) { + this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push( + this + ) - 1; + } + } + get active() { + return this._active; + } + pause() { + if (this._active) { + this._isPaused = true; + let i, l; + if (this.scopes) { + for (i = 0, l = this.scopes.length; i < l; i++) { + this.scopes[i].pause(); + } + } + for (i = 0, l = this.effects.length; i < l; i++) { + this.effects[i].pause(); + } + } + } + /** + * Resumes the effect scope, including all child scopes and effects. + */ + resume() { + if (this._active) { + if (this._isPaused) { + this._isPaused = false; + let i, l; + if (this.scopes) { + for (i = 0, l = this.scopes.length; i < l; i++) { + this.scopes[i].resume(); + } + } + for (i = 0, l = this.effects.length; i < l; i++) { + this.effects[i].resume(); + } + } + } + } + run(fn) { + if (this._active) { + const currentEffectScope = activeEffectScope; + try { + activeEffectScope = this; + return fn(); + } finally { + activeEffectScope = currentEffectScope; + } + } + } + /** + * This should only be called on non-detached scopes + * @internal + */ + on() { + activeEffectScope = this; + } + /** + * This should only be called on non-detached scopes + * @internal + */ + off() { + activeEffectScope = this.parent; + } + stop(fromParent) { + if (this._active) { + let i, l; + for (i = 0, l = this.effects.length; i < l; i++) { + this.effects[i].stop(); + } + for (i = 0, l = this.cleanups.length; i < l; i++) { + this.cleanups[i](); + } + if (this.scopes) { + for (i = 0, l = this.scopes.length; i < l; i++) { + this.scopes[i].stop(true); + } + } + if (!this.detached && this.parent && !fromParent) { + const last = this.parent.scopes.pop(); + if (last && last !== this) { + this.parent.scopes[this.index] = last; + last.index = this.index; + } + } + this.parent = void 0; + this._active = false; + } + } +} +function getCurrentScope() { + return activeEffectScope; +} +function onScopeDispose(fn, failSilently = false) { + if (activeEffectScope) { + activeEffectScope.cleanups.push(fn); + } +} +let activeSub; +const pausedQueueEffects = /* @__PURE__ */ new WeakSet(); +class ReactiveEffect { + constructor(fn) { + this.fn = fn; + this.deps = void 0; + this.depsTail = void 0; + this.flags = 1 | 4; + this.nextEffect = void 0; + this.cleanup = void 0; + this.scheduler = void 0; + if (activeEffectScope && activeEffectScope.active) { + activeEffectScope.effects.push(this); + } + } + pause() { + this.flags |= 64; + } + resume() { + if (this.flags & 64) { + this.flags &= ~64; + if (pausedQueueEffects.has(this)) { + pausedQueueEffects.delete(this); + this.trigger(); + } + } + } + /** + * @internal + */ + notify() { + if (this.flags & 2 && !(this.flags & 32)) { + return; + } + if (!(this.flags & 8)) { + this.flags |= 8; + this.nextEffect = batchedEffect; + batchedEffect = this; + } + } + run() { + if (!(this.flags & 1)) { + return this.fn(); + } + this.flags |= 2; + cleanupEffect(this); + prepareDeps(this); + const prevEffect = activeSub; + const prevShouldTrack = shouldTrack; + activeSub = this; + shouldTrack = true; + try { + return this.fn(); + } finally { + cleanupDeps(this); + activeSub = prevEffect; + shouldTrack = prevShouldTrack; + this.flags &= ~2; + } + } + stop() { + if (this.flags & 1) { + for (let link2 = this.deps; link2; link2 = link2.nextDep) { + removeSub(link2); + } + this.deps = this.depsTail = void 0; + cleanupEffect(this); + this.onStop && this.onStop(); + this.flags &= ~1; + } + } + trigger() { + if (this.flags & 64) { + pausedQueueEffects.add(this); + } else if (this.scheduler) { + this.scheduler(); + } else { + this.runIfDirty(); + } + } + /** + * @internal + */ + runIfDirty() { + if (isDirty(this)) { + this.run(); + } + } + get dirty() { + return isDirty(this); + } +} +let batchDepth = 0; +let batchedEffect; +function startBatch() { + batchDepth++; +} +function endBatch() { + if (--batchDepth > 0) { + return; + } + let error; + while (batchedEffect) { + let e = batchedEffect; + batchedEffect = void 0; + while (e) { + const next = e.nextEffect; + e.nextEffect = void 0; + e.flags &= ~8; + if (e.flags & 1) { + try { + e.trigger(); + } catch (err) { + if (!error) error = err; + } + } + e = next; + } + } + if (error) throw error; +} +function prepareDeps(sub) { + for (let link2 = sub.deps; link2; link2 = link2.nextDep) { + link2.version = -1; + link2.prevActiveLink = link2.dep.activeLink; + link2.dep.activeLink = link2; + } +} +function cleanupDeps(sub) { + let head; + let tail = sub.depsTail; + for (let link2 = tail; link2; link2 = link2.prevDep) { + if (link2.version === -1) { + if (link2 === tail) tail = link2.prevDep; + removeSub(link2); + removeDep(link2); + } else { + head = link2; + } + link2.dep.activeLink = link2.prevActiveLink; + link2.prevActiveLink = void 0; + } + sub.deps = head; + sub.depsTail = tail; +} +function isDirty(sub) { + for (let link2 = sub.deps; link2; link2 = link2.nextDep) { + if (link2.dep.version !== link2.version || link2.dep.computed && refreshComputed(link2.dep.computed) === false || link2.dep.version !== link2.version) { + return true; + } + } + if (sub._dirty) { + return true; + } + return false; +} +function refreshComputed(computed2) { + if (computed2.flags & 2) { + return false; + } + if (computed2.flags & 4 && !(computed2.flags & 16)) { + return; + } + computed2.flags &= ~16; + if (computed2.globalVersion === globalVersion) { + return; + } + computed2.globalVersion = globalVersion; + const dep = computed2.dep; + computed2.flags |= 2; + if (dep.version > 0 && !computed2.isSSR && !isDirty(computed2)) { + computed2.flags &= ~2; + return; + } + const prevSub = activeSub; + const prevShouldTrack = shouldTrack; + activeSub = computed2; + shouldTrack = true; + try { + prepareDeps(computed2); + const value = computed2.fn(computed2._value); + if (dep.version === 0 || hasChanged(value, computed2._value)) { + computed2._value = value; + dep.version++; + } + } catch (err) { + dep.version++; + throw err; + } finally { + activeSub = prevSub; + shouldTrack = prevShouldTrack; + cleanupDeps(computed2); + computed2.flags &= ~2; + } +} +function removeSub(link2) { + const { dep, prevSub, nextSub } = link2; + if (prevSub) { + prevSub.nextSub = nextSub; + link2.prevSub = void 0; + } + if (nextSub) { + nextSub.prevSub = prevSub; + link2.nextSub = void 0; + } + if (dep.subs === link2) { + dep.subs = prevSub; + } + if (!dep.subs && dep.computed) { + dep.computed.flags &= ~4; + for (let l = dep.computed.deps; l; l = l.nextDep) { + removeSub(l); + } + } +} +function removeDep(link2) { + const { prevDep, nextDep } = link2; + if (prevDep) { + prevDep.nextDep = nextDep; + link2.prevDep = void 0; + } + if (nextDep) { + nextDep.prevDep = prevDep; + link2.nextDep = void 0; + } +} +let shouldTrack = true; +const trackStack = []; +function pauseTracking() { + trackStack.push(shouldTrack); + shouldTrack = false; +} +function resetTracking() { + const last = trackStack.pop(); + shouldTrack = last === void 0 ? true : last; +} +function cleanupEffect(e) { + const { cleanup } = e; + e.cleanup = void 0; + if (cleanup) { + const prevSub = activeSub; + activeSub = void 0; + try { + cleanup(); + } finally { + activeSub = prevSub; + } + } +} +let globalVersion = 0; +class Dep { + constructor(computed2) { + this.computed = computed2; + this.version = 0; + this.activeLink = void 0; + this.subs = void 0; + } + track(debugInfo) { + if (!activeSub || !shouldTrack || activeSub === this.computed) { + return; + } + let link2 = this.activeLink; + if (link2 === void 0 || link2.sub !== activeSub) { + link2 = this.activeLink = { + dep: this, + sub: activeSub, + version: this.version, + nextDep: void 0, + prevDep: void 0, + nextSub: void 0, + prevSub: void 0, + prevActiveLink: void 0 + }; + if (!activeSub.deps) { + activeSub.deps = activeSub.depsTail = link2; + } else { + link2.prevDep = activeSub.depsTail; + activeSub.depsTail.nextDep = link2; + activeSub.depsTail = link2; + } + if (activeSub.flags & 4) { + addSub(link2); + } + } else if (link2.version === -1) { + link2.version = this.version; + if (link2.nextDep) { + const next = link2.nextDep; + next.prevDep = link2.prevDep; + if (link2.prevDep) { + link2.prevDep.nextDep = next; + } + link2.prevDep = activeSub.depsTail; + link2.nextDep = void 0; + activeSub.depsTail.nextDep = link2; + activeSub.depsTail = link2; + if (activeSub.deps === link2) { + activeSub.deps = next; + } + } + } + return link2; + } + trigger(debugInfo) { + this.version++; + globalVersion++; + this.notify(debugInfo); + } + notify(debugInfo) { + startBatch(); + try { + if (false) ; + for (let link2 = this.subs; link2; link2 = link2.prevSub) { + link2.sub.notify(); + } + } finally { + endBatch(); + } + } +} +function addSub(link2) { + const computed2 = link2.dep.computed; + if (computed2 && !link2.dep.subs) { + computed2.flags |= 4 | 16; + for (let l = computed2.deps; l; l = l.nextDep) { + addSub(l); + } + } + const currentTail = link2.dep.subs; + if (currentTail !== link2) { + link2.prevSub = currentTail; + if (currentTail) currentTail.nextSub = link2; + } + link2.dep.subs = link2; +} +const targetMap = /* @__PURE__ */ new WeakMap(); +const ITERATE_KEY = Symbol( + "" +); +const MAP_KEY_ITERATE_KEY = Symbol( + "" +); +const ARRAY_ITERATE_KEY = Symbol( + "" +); +function track(target, type, key) { + if (shouldTrack && activeSub) { + let depsMap = targetMap.get(target); + if (!depsMap) { + targetMap.set(target, depsMap = /* @__PURE__ */ new Map()); + } + let dep = depsMap.get(key); + if (!dep) { + depsMap.set(key, dep = new Dep()); + } + { + dep.track(); + } + } +} +function trigger(target, type, key, newValue, oldValue, oldTarget) { + const depsMap = targetMap.get(target); + if (!depsMap) { + globalVersion++; + return; + } + let deps = []; + if (type === "clear") { + deps = [...depsMap.values()]; + } else { + const targetIsArray = isArray(target); + const isArrayIndex = targetIsArray && isIntegerKey(key); + if (targetIsArray && key === "length") { + const newLength = Number(newValue); + depsMap.forEach((dep, key2) => { + if (key2 === "length" || key2 === ARRAY_ITERATE_KEY || !isSymbol(key2) && key2 >= newLength) { + deps.push(dep); + } + }); + } else { + const push = (dep) => dep && deps.push(dep); + if (key !== void 0) { + push(depsMap.get(key)); + } + if (isArrayIndex) { + push(depsMap.get(ARRAY_ITERATE_KEY)); + } + switch (type) { + case "add": + if (!targetIsArray) { + push(depsMap.get(ITERATE_KEY)); + if (isMap(target)) { + push(depsMap.get(MAP_KEY_ITERATE_KEY)); + } + } else if (isArrayIndex) { + push(depsMap.get("length")); + } + break; + case "delete": + if (!targetIsArray) { + push(depsMap.get(ITERATE_KEY)); + if (isMap(target)) { + push(depsMap.get(MAP_KEY_ITERATE_KEY)); + } + } + break; + case "set": + if (isMap(target)) { + push(depsMap.get(ITERATE_KEY)); + } + break; + } + } + } + startBatch(); + for (const dep of deps) { + { + dep.trigger(); + } + } + endBatch(); +} +function getDepFromReactive(object, key) { + var _a; + return (_a = targetMap.get(object)) == null ? void 0 : _a.get(key); +} +function reactiveReadArray(array) { + const raw = toRaw(array); + if (raw === array) return raw; + track(raw, "iterate", ARRAY_ITERATE_KEY); + return isShallow(array) ? raw : raw.map(toReactive); +} +function shallowReadArray(arr) { + track(arr = toRaw(arr), "iterate", ARRAY_ITERATE_KEY); + return arr; +} +const arrayInstrumentations = { + __proto__: null, + [Symbol.iterator]() { + return iterator(this, Symbol.iterator, toReactive); + }, + concat(...args) { + return reactiveReadArray(this).concat( + ...args.map((x) => isArray(x) ? reactiveReadArray(x) : x) + ); + }, + entries() { + return iterator(this, "entries", (value) => { + value[1] = toReactive(value[1]); + return value; + }); + }, + every(fn, thisArg) { + return apply(this, "every", fn, thisArg, void 0, arguments); + }, + filter(fn, thisArg) { + return apply(this, "filter", fn, thisArg, (v) => v.map(toReactive), arguments); + }, + find(fn, thisArg) { + return apply(this, "find", fn, thisArg, toReactive, arguments); + }, + findIndex(fn, thisArg) { + return apply(this, "findIndex", fn, thisArg, void 0, arguments); + }, + findLast(fn, thisArg) { + return apply(this, "findLast", fn, thisArg, toReactive, arguments); + }, + findLastIndex(fn, thisArg) { + return apply(this, "findLastIndex", fn, thisArg, void 0, arguments); + }, + // flat, flatMap could benefit from ARRAY_ITERATE but are not straight-forward to implement + forEach(fn, thisArg) { + return apply(this, "forEach", fn, thisArg, void 0, arguments); + }, + includes(...args) { + return searchProxy(this, "includes", args); + }, + indexOf(...args) { + return searchProxy(this, "indexOf", args); + }, + join(separator) { + return reactiveReadArray(this).join(separator); + }, + // keys() iterator only reads `length`, no optimisation required + lastIndexOf(...args) { + return searchProxy(this, "lastIndexOf", args); + }, + map(fn, thisArg) { + return apply(this, "map", fn, thisArg, void 0, arguments); + }, + pop() { + return noTracking(this, "pop"); + }, + push(...args) { + return noTracking(this, "push", args); + }, + reduce(fn, ...args) { + return reduce(this, "reduce", fn, args); + }, + reduceRight(fn, ...args) { + return reduce(this, "reduceRight", fn, args); + }, + shift() { + return noTracking(this, "shift"); + }, + // slice could use ARRAY_ITERATE but also seems to beg for range tracking + some(fn, thisArg) { + return apply(this, "some", fn, thisArg, void 0, arguments); + }, + splice(...args) { + return noTracking(this, "splice", args); + }, + toReversed() { + return reactiveReadArray(this).toReversed(); + }, + toSorted(comparer) { + return reactiveReadArray(this).toSorted(comparer); + }, + toSpliced(...args) { + return reactiveReadArray(this).toSpliced(...args); + }, + unshift(...args) { + return noTracking(this, "unshift", args); + }, + values() { + return iterator(this, "values", toReactive); + } +}; +function iterator(self2, method, wrapValue) { + const arr = shallowReadArray(self2); + const iter = arr[method](); + if (arr !== self2 && !isShallow(self2)) { + iter._next = iter.next; + iter.next = () => { + const result = iter._next(); + if (result.value) { + result.value = wrapValue(result.value); + } + return result; + }; + } + return iter; +} +const arrayProto = Array.prototype; +function apply(self2, method, fn, thisArg, wrappedRetFn, args) { + const arr = shallowReadArray(self2); + const needsWrap = arr !== self2 && !isShallow(self2); + const methodFn = arr[method]; + if (methodFn !== arrayProto[method]) { + const result2 = methodFn.apply(self2, args); + return needsWrap ? toReactive(result2) : result2; + } + let wrappedFn = fn; + if (arr !== self2) { + if (needsWrap) { + wrappedFn = function(item, index) { + return fn.call(this, toReactive(item), index, self2); + }; + } else if (fn.length > 2) { + wrappedFn = function(item, index) { + return fn.call(this, item, index, self2); + }; + } + } + const result = methodFn.call(arr, wrappedFn, thisArg); + return needsWrap && wrappedRetFn ? wrappedRetFn(result) : result; +} +function reduce(self2, method, fn, args) { + const arr = shallowReadArray(self2); + let wrappedFn = fn; + if (arr !== self2) { + if (!isShallow(self2)) { + wrappedFn = function(acc, item, index) { + return fn.call(this, acc, toReactive(item), index, self2); + }; + } else if (fn.length > 3) { + wrappedFn = function(acc, item, index) { + return fn.call(this, acc, item, index, self2); + }; + } + } + return arr[method](wrappedFn, ...args); +} +function searchProxy(self2, method, args) { + const arr = toRaw(self2); + track(arr, "iterate", ARRAY_ITERATE_KEY); + const res = arr[method](...args); + if ((res === -1 || res === false) && isProxy(args[0])) { + args[0] = toRaw(args[0]); + return arr[method](...args); + } + return res; +} +function noTracking(self2, method, args = []) { + pauseTracking(); + startBatch(); + const res = toRaw(self2)[method].apply(self2, args); + endBatch(); + resetTracking(); + return res; +} +const isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`); +const builtInSymbols = new Set( + /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol) +); +function hasOwnProperty(key) { + if (!isSymbol(key)) key = String(key); + const obj = toRaw(this); + track(obj, "has", key); + return obj.hasOwnProperty(key); +} +class BaseReactiveHandler { + constructor(_isReadonly = false, _isShallow = false) { + this._isReadonly = _isReadonly; + this._isShallow = _isShallow; + } + get(target, key, receiver) { + const isReadonly2 = this._isReadonly, isShallow2 = this._isShallow; + if (key === "__v_isReactive") { + return !isReadonly2; + } else if (key === "__v_isReadonly") { + return isReadonly2; + } else if (key === "__v_isShallow") { + return isShallow2; + } else if (key === "__v_raw") { + if (receiver === (isReadonly2 ? isShallow2 ? shallowReadonlyMap : readonlyMap : isShallow2 ? shallowReactiveMap : reactiveMap).get(target) || // receiver is not the reactive proxy, but has the same prototype + // this means the receiver is a user proxy of the reactive proxy + Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) { + return target; + } + return; + } + const targetIsArray = isArray(target); + if (!isReadonly2) { + let fn; + if (targetIsArray && (fn = arrayInstrumentations[key])) { + return fn; + } + if (key === "hasOwnProperty") { + return hasOwnProperty; + } + } + const res = Reflect.get( + target, + key, + // if this is a proxy wrapping a ref, return methods using the raw ref + // as receiver so that we don't have to call `toRaw` on the ref in all + // its class methods + isRef(target) ? target : receiver + ); + if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) { + return res; + } + if (!isReadonly2) { + track(target, "get", key); + } + if (isShallow2) { + return res; + } + if (isRef(res)) { + return targetIsArray && isIntegerKey(key) ? res : res.value; + } + if (isObject$1(res)) { + return isReadonly2 ? readonly(res) : reactive(res); + } + return res; + } +} +class MutableReactiveHandler extends BaseReactiveHandler { + constructor(isShallow2 = false) { + super(false, isShallow2); + } + set(target, key, value, receiver) { + let oldValue = target[key]; + if (!this._isShallow) { + const isOldValueReadonly = isReadonly(oldValue); + if (!isShallow(value) && !isReadonly(value)) { + oldValue = toRaw(oldValue); + value = toRaw(value); + } + if (!isArray(target) && isRef(oldValue) && !isRef(value)) { + if (isOldValueReadonly) { + return false; + } else { + oldValue.value = value; + return true; + } + } + } + const hadKey = isArray(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key); + const result = Reflect.set( + target, + key, + value, + isRef(target) ? target : receiver + ); + if (target === toRaw(receiver)) { + if (!hadKey) { + trigger(target, "add", key, value); + } else if (hasChanged(value, oldValue)) { + trigger(target, "set", key, value); + } + } + return result; + } + deleteProperty(target, key) { + const hadKey = hasOwn(target, key); + target[key]; + const result = Reflect.deleteProperty(target, key); + if (result && hadKey) { + trigger(target, "delete", key, void 0); + } + return result; + } + has(target, key) { + const result = Reflect.has(target, key); + if (!isSymbol(key) || !builtInSymbols.has(key)) { + track(target, "has", key); + } + return result; + } + ownKeys(target) { + track( + target, + "iterate", + isArray(target) ? "length" : ITERATE_KEY + ); + return Reflect.ownKeys(target); + } +} +class ReadonlyReactiveHandler extends BaseReactiveHandler { + constructor(isShallow2 = false) { + super(true, isShallow2); + } + set(target, key) { + return true; + } + deleteProperty(target, key) { + return true; + } +} +const mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler(); +const readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(); +const shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(true); +const shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true); +const toShallow = (value) => value; +const getProto = (v) => Reflect.getPrototypeOf(v); +function get(target, key, isReadonly2 = false, isShallow2 = false) { + target = target["__v_raw"]; + const rawTarget = toRaw(target); + const rawKey = toRaw(key); + if (!isReadonly2) { + if (hasChanged(key, rawKey)) { + track(rawTarget, "get", key); + } + track(rawTarget, "get", rawKey); + } + const { has: has2 } = getProto(rawTarget); + const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive; + if (has2.call(rawTarget, key)) { + return wrap(target.get(key)); + } else if (has2.call(rawTarget, rawKey)) { + return wrap(target.get(rawKey)); + } else if (target !== rawTarget) { + target.get(key); + } +} +function has(key, isReadonly2 = false) { + const target = this["__v_raw"]; + const rawTarget = toRaw(target); + const rawKey = toRaw(key); + if (!isReadonly2) { + if (hasChanged(key, rawKey)) { + track(rawTarget, "has", key); + } + track(rawTarget, "has", rawKey); + } + return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey); +} +function size(target, isReadonly2 = false) { + target = target["__v_raw"]; + !isReadonly2 && track(toRaw(target), "iterate", ITERATE_KEY); + return Reflect.get(target, "size", target); +} +function add(value, _isShallow = false) { + if (!_isShallow && !isShallow(value) && !isReadonly(value)) { + value = toRaw(value); + } + const target = toRaw(this); + const proto = getProto(target); + const hadKey = proto.has.call(target, value); + if (!hadKey) { + target.add(value); + trigger(target, "add", value, value); + } + return this; +} +function set(key, value, _isShallow = false) { + if (!_isShallow && !isShallow(value) && !isReadonly(value)) { + value = toRaw(value); + } + const target = toRaw(this); + const { has: has2, get: get2 } = getProto(target); + let hadKey = has2.call(target, key); + if (!hadKey) { + key = toRaw(key); + hadKey = has2.call(target, key); + } + const oldValue = get2.call(target, key); + target.set(key, value); + if (!hadKey) { + trigger(target, "add", key, value); + } else if (hasChanged(value, oldValue)) { + trigger(target, "set", key, value); + } + return this; +} +function deleteEntry(key) { + const target = toRaw(this); + const { has: has2, get: get2 } = getProto(target); + let hadKey = has2.call(target, key); + if (!hadKey) { + key = toRaw(key); + hadKey = has2.call(target, key); + } + get2 ? get2.call(target, key) : void 0; + const result = target.delete(key); + if (hadKey) { + trigger(target, "delete", key, void 0); + } + return result; +} +function clear() { + const target = toRaw(this); + const hadItems = target.size !== 0; + const result = target.clear(); + if (hadItems) { + trigger(target, "clear", void 0, void 0); + } + return result; +} +function createForEach(isReadonly2, isShallow2) { + return function forEach(callback, thisArg) { + const observed = this; + const target = observed["__v_raw"]; + const rawTarget = toRaw(target); + const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive; + !isReadonly2 && track(rawTarget, "iterate", ITERATE_KEY); + return target.forEach((value, key) => { + return callback.call(thisArg, wrap(value), wrap(key), observed); + }); + }; +} +function createIterableMethod(method, isReadonly2, isShallow2) { + return function(...args) { + const target = this["__v_raw"]; + const rawTarget = toRaw(target); + const targetIsMap = isMap(rawTarget); + const isPair = method === "entries" || method === Symbol.iterator && targetIsMap; + const isKeyOnly = method === "keys" && targetIsMap; + const innerIterator = target[method](...args); + const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive; + !isReadonly2 && track( + rawTarget, + "iterate", + isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY + ); + return { + // iterator protocol + next() { + const { value, done } = innerIterator.next(); + return done ? { value, done } : { + value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value), + done + }; + }, + // iterable protocol + [Symbol.iterator]() { + return this; + } + }; + }; +} +function createReadonlyMethod(type) { + return function(...args) { + return type === "delete" ? false : type === "clear" ? void 0 : this; + }; +} +function createInstrumentations() { + const mutableInstrumentations2 = { + get(key) { + return get(this, key); + }, + get size() { + return size(this); + }, + has, + add, + set, + delete: deleteEntry, + clear, + forEach: createForEach(false, false) + }; + const shallowInstrumentations2 = { + get(key) { + return get(this, key, false, true); + }, + get size() { + return size(this); + }, + has, + add(value) { + return add.call(this, value, true); + }, + set(key, value) { + return set.call(this, key, value, true); + }, + delete: deleteEntry, + clear, + forEach: createForEach(false, true) + }; + const readonlyInstrumentations2 = { + get(key) { + return get(this, key, true); + }, + get size() { + return size(this, true); + }, + has(key) { + return has.call(this, key, true); + }, + add: createReadonlyMethod("add"), + set: createReadonlyMethod("set"), + delete: createReadonlyMethod("delete"), + clear: createReadonlyMethod("clear"), + forEach: createForEach(true, false) + }; + const shallowReadonlyInstrumentations2 = { + get(key) { + return get(this, key, true, true); + }, + get size() { + return size(this, true); + }, + has(key) { + return has.call(this, key, true); + }, + add: createReadonlyMethod("add"), + set: createReadonlyMethod("set"), + delete: createReadonlyMethod("delete"), + clear: createReadonlyMethod("clear"), + forEach: createForEach(true, true) + }; + const iteratorMethods = [ + "keys", + "values", + "entries", + Symbol.iterator + ]; + iteratorMethods.forEach((method) => { + mutableInstrumentations2[method] = createIterableMethod(method, false, false); + readonlyInstrumentations2[method] = createIterableMethod(method, true, false); + shallowInstrumentations2[method] = createIterableMethod(method, false, true); + shallowReadonlyInstrumentations2[method] = createIterableMethod( + method, + true, + true + ); + }); + return [ + mutableInstrumentations2, + readonlyInstrumentations2, + shallowInstrumentations2, + shallowReadonlyInstrumentations2 + ]; +} +const [ + mutableInstrumentations, + readonlyInstrumentations, + shallowInstrumentations, + shallowReadonlyInstrumentations +] = /* @__PURE__ */ createInstrumentations(); +function createInstrumentationGetter(isReadonly2, shallow) { + const instrumentations = shallow ? isReadonly2 ? shallowReadonlyInstrumentations : shallowInstrumentations : isReadonly2 ? readonlyInstrumentations : mutableInstrumentations; + return (target, key, receiver) => { + if (key === "__v_isReactive") { + return !isReadonly2; + } else if (key === "__v_isReadonly") { + return isReadonly2; + } else if (key === "__v_raw") { + return target; + } + return Reflect.get( + hasOwn(instrumentations, key) && key in target ? instrumentations : target, + key, + receiver + ); + }; +} +const mutableCollectionHandlers = { + get: /* @__PURE__ */ createInstrumentationGetter(false, false) +}; +const shallowCollectionHandlers = { + get: /* @__PURE__ */ createInstrumentationGetter(false, true) +}; +const readonlyCollectionHandlers = { + get: /* @__PURE__ */ createInstrumentationGetter(true, false) +}; +const shallowReadonlyCollectionHandlers = { + get: /* @__PURE__ */ createInstrumentationGetter(true, true) +}; +const reactiveMap = /* @__PURE__ */ new WeakMap(); +const shallowReactiveMap = /* @__PURE__ */ new WeakMap(); +const readonlyMap = /* @__PURE__ */ new WeakMap(); +const shallowReadonlyMap = /* @__PURE__ */ new WeakMap(); +function targetTypeMap(rawType) { + switch (rawType) { + case "Object": + case "Array": + return 1; + case "Map": + case "Set": + case "WeakMap": + case "WeakSet": + return 2; + default: + return 0; + } +} +function getTargetType(value) { + return value["__v_skip"] || !Object.isExtensible(value) ? 0 : targetTypeMap(toRawType(value)); +} +function reactive(target) { + if (isReadonly(target)) { + return target; + } + return createReactiveObject( + target, + false, + mutableHandlers, + mutableCollectionHandlers, + reactiveMap + ); +} +function shallowReactive(target) { + return createReactiveObject( + target, + false, + shallowReactiveHandlers, + shallowCollectionHandlers, + shallowReactiveMap + ); +} +function readonly(target) { + return createReactiveObject( + target, + true, + readonlyHandlers, + readonlyCollectionHandlers, + readonlyMap + ); +} +function shallowReadonly(target) { + return createReactiveObject( + target, + true, + shallowReadonlyHandlers, + shallowReadonlyCollectionHandlers, + shallowReadonlyMap + ); +} +function createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) { + if (!isObject$1(target)) { + return target; + } + if (target["__v_raw"] && !(isReadonly2 && target["__v_isReactive"])) { + return target; + } + const existingProxy = proxyMap.get(target); + if (existingProxy) { + return existingProxy; + } + const targetType = getTargetType(target); + if (targetType === 0) { + return target; + } + const proxy = new Proxy( + target, + targetType === 2 ? collectionHandlers : baseHandlers + ); + proxyMap.set(target, proxy); + return proxy; +} +function isReactive(value) { + if (isReadonly(value)) { + return isReactive(value["__v_raw"]); + } + return !!(value && value["__v_isReactive"]); +} +function isReadonly(value) { + return !!(value && value["__v_isReadonly"]); +} +function isShallow(value) { + return !!(value && value["__v_isShallow"]); +} +function isProxy(value) { + return value ? !!value["__v_raw"] : false; +} +function toRaw(observed) { + const raw = observed && observed["__v_raw"]; + return raw ? toRaw(raw) : observed; +} +function markRaw(value) { + if (Object.isExtensible(value)) { + def(value, "__v_skip", true); + } + return value; +} +const toReactive = (value) => isObject$1(value) ? reactive(value) : value; +const toReadonly = (value) => isObject$1(value) ? readonly(value) : value; +function isRef(r) { + return r ? r["__v_isRef"] === true : false; +} +function ref(value) { + return createRef(value, false); +} +function shallowRef(value) { + return createRef(value, true); +} +function createRef(rawValue, shallow) { + if (isRef(rawValue)) { + return rawValue; + } + return new RefImpl(rawValue, shallow); +} +class RefImpl { + constructor(value, isShallow2) { + this.dep = new Dep(); + this["__v_isRef"] = true; + this["__v_isShallow"] = false; + this._rawValue = isShallow2 ? value : toRaw(value); + this._value = isShallow2 ? value : toReactive(value); + this["__v_isShallow"] = isShallow2; + } + get value() { + { + this.dep.track(); + } + return this._value; + } + set value(newValue) { + const oldValue = this._rawValue; + const useDirectValue = this["__v_isShallow"] || isShallow(newValue) || isReadonly(newValue); + newValue = useDirectValue ? newValue : toRaw(newValue); + if (hasChanged(newValue, oldValue)) { + this._rawValue = newValue; + this._value = useDirectValue ? newValue : toReactive(newValue); + { + this.dep.trigger(); + } + } + } +} +function unref(ref2) { + return isRef(ref2) ? ref2.value : ref2; +} +const shallowUnwrapHandlers = { + get: (target, key, receiver) => key === "__v_raw" ? target : unref(Reflect.get(target, key, receiver)), + set: (target, key, value, receiver) => { + const oldValue = target[key]; + if (isRef(oldValue) && !isRef(value)) { + oldValue.value = value; + return true; + } else { + return Reflect.set(target, key, value, receiver); + } + } +}; +function proxyRefs(objectWithRefs) { + return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers); +} +class CustomRefImpl { + constructor(factory) { + this["__v_isRef"] = true; + this._value = void 0; + const dep = this.dep = new Dep(); + const { get: get2, set: set2 } = factory(dep.track.bind(dep), dep.trigger.bind(dep)); + this._get = get2; + this._set = set2; + } + get value() { + return this._value = this._get(); + } + set value(newVal) { + this._set(newVal); + } +} +function customRef(factory) { + return new CustomRefImpl(factory); +} +class ObjectRefImpl { + constructor(_object, _key, _defaultValue) { + this._object = _object; + this._key = _key; + this._defaultValue = _defaultValue; + this["__v_isRef"] = true; + this._value = void 0; + } + get value() { + const val = this._object[this._key]; + return this._value = val === void 0 ? this._defaultValue : val; + } + set value(newVal) { + this._object[this._key] = newVal; + } + get dep() { + return getDepFromReactive(toRaw(this._object), this._key); + } +} +class GetterRefImpl { + constructor(_getter) { + this._getter = _getter; + this["__v_isRef"] = true; + this["__v_isReadonly"] = true; + this._value = void 0; + } + get value() { + return this._value = this._getter(); + } +} +function toRef$1(source, key, defaultValue) { + if (isRef(source)) { + return source; + } else if (isFunction(source)) { + return new GetterRefImpl(source); + } else if (isObject$1(source) && arguments.length > 1) { + return propertyToRef(source, key, defaultValue); + } else { + return ref(source); + } +} +function propertyToRef(source, key, defaultValue) { + const val = source[key]; + return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue); +} +class ComputedRefImpl { + constructor(fn, setter, isSSR) { + this.fn = fn; + this.setter = setter; + this._value = void 0; + this.dep = new Dep(this); + this.__v_isRef = true; + this.deps = void 0; + this.depsTail = void 0; + this.flags = 16; + this.globalVersion = globalVersion - 1; + this.effect = this; + this["__v_isReadonly"] = !setter; + this.isSSR = isSSR; + } + /** + * @internal + */ + notify() { + if (activeSub !== this) { + this.flags |= 16; + this.dep.notify(); + } + } + get value() { + const link2 = this.dep.track(); + refreshComputed(this); + if (link2) { + link2.version = this.dep.version; + } + return this._value; + } + set value(newValue) { + if (this.setter) { + this.setter(newValue); + } + } +} +function computed$1(getterOrOptions, debugOptions, isSSR = false) { + let getter; + let setter; + if (isFunction(getterOrOptions)) { + getter = getterOrOptions; + } else { + getter = getterOrOptions.get; + setter = getterOrOptions.set; + } + const cRef = new ComputedRefImpl(getter, setter, isSSR); + return cRef; +} +const INITIAL_WATCHER_VALUE = {}; +const cleanupMap = /* @__PURE__ */ new WeakMap(); +let activeWatcher = void 0; +function onWatcherCleanup(cleanupFn, failSilently = false, owner = activeWatcher) { + if (owner) { + let cleanups = cleanupMap.get(owner); + if (!cleanups) cleanupMap.set(owner, cleanups = []); + cleanups.push(cleanupFn); + } +} +function watch$1(source, cb, options = EMPTY_OBJ) { + const { immediate, deep, once, scheduler, augmentJob, call } = options; + const reactiveGetter = (source2) => { + if (deep) return source2; + if (isShallow(source2) || deep === false || deep === 0) + return traverse(source2, 1); + return traverse(source2); + }; + let effect2; + let getter; + let cleanup; + let boundCleanup; + let forceTrigger = false; + let isMultiSource = false; + if (isRef(source)) { + getter = () => source.value; + forceTrigger = isShallow(source); + } else if (isReactive(source)) { + getter = () => reactiveGetter(source); + forceTrigger = true; + } else if (isArray(source)) { + isMultiSource = true; + forceTrigger = source.some((s) => isReactive(s) || isShallow(s)); + getter = () => source.map((s) => { + if (isRef(s)) { + return s.value; + } else if (isReactive(s)) { + return reactiveGetter(s); + } else if (isFunction(s)) { + return call ? call(s, 2) : s(); + } else ; + }); + } else if (isFunction(source)) { + if (cb) { + getter = call ? () => call(source, 2) : source; + } else { + getter = () => { + if (cleanup) { + pauseTracking(); + try { + cleanup(); + } finally { + resetTracking(); + } + } + const currentEffect = activeWatcher; + activeWatcher = effect2; + try { + return call ? call(source, 3, [boundCleanup]) : source(boundCleanup); + } finally { + activeWatcher = currentEffect; + } + }; + } + } else { + getter = NOOP; + } + if (cb && deep) { + const baseGetter = getter; + const depth = deep === true ? Infinity : deep; + getter = () => traverse(baseGetter(), depth); + } + const scope = getCurrentScope(); + const watchHandle = () => { + effect2.stop(); + if (scope) { + remove(scope.effects, effect2); + } + }; + if (once) { + if (cb) { + const _cb = cb; + cb = (...args) => { + _cb(...args); + watchHandle(); + }; + } else { + const _getter = getter; + getter = () => { + _getter(); + watchHandle(); + }; + } + } + let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE; + const job = (immediateFirstRun) => { + if (!(effect2.flags & 1) || !effect2.dirty && !immediateFirstRun) { + return; + } + if (cb) { + const newValue = effect2.run(); + if (deep || forceTrigger || (isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue))) { + if (cleanup) { + cleanup(); + } + const currentWatcher = activeWatcher; + activeWatcher = effect2; + try { + const args = [ + newValue, + // pass undefined as the old value when it's changed for the first time + oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue, + boundCleanup + ]; + call ? call(cb, 3, args) : ( + // @ts-expect-error + cb(...args) + ); + oldValue = newValue; + } finally { + activeWatcher = currentWatcher; + } + } + } else { + effect2.run(); + } + }; + if (augmentJob) { + augmentJob(job); + } + effect2 = new ReactiveEffect(getter); + effect2.scheduler = scheduler ? () => scheduler(job, false) : job; + boundCleanup = (fn) => onWatcherCleanup(fn, false, effect2); + cleanup = effect2.onStop = () => { + const cleanups = cleanupMap.get(effect2); + if (cleanups) { + if (call) { + call(cleanups, 4); + } else { + for (const cleanup2 of cleanups) cleanup2(); + } + cleanupMap.delete(effect2); + } + }; + if (cb) { + if (immediate) { + job(true); + } else { + oldValue = effect2.run(); + } + } else if (scheduler) { + scheduler(job.bind(null, true), true); + } else { + effect2.run(); + } + watchHandle.pause = effect2.pause.bind(effect2); + watchHandle.resume = effect2.resume.bind(effect2); + watchHandle.stop = watchHandle; + return watchHandle; +} +function traverse(value, depth = Infinity, seen2) { + if (depth <= 0 || !isObject$1(value) || value["__v_skip"]) { + return value; + } + seen2 = seen2 || /* @__PURE__ */ new Set(); + if (seen2.has(value)) { + return value; + } + seen2.add(value); + depth--; + if (isRef(value)) { + traverse(value.value, depth, seen2); + } else if (isArray(value)) { + for (let i = 0; i < value.length; i++) { + traverse(value[i], depth, seen2); + } + } else if (isSet(value) || isMap(value)) { + value.forEach((v) => { + traverse(v, depth, seen2); + }); + } else if (isPlainObject(value)) { + for (const key in value) { + traverse(value[key], depth, seen2); + } + for (const key of Object.getOwnPropertySymbols(value)) { + if (Object.prototype.propertyIsEnumerable.call(value, key)) { + traverse(value[key], depth, seen2); + } + } + } + return value; +} +/** +* @vue/runtime-core v3.5.3 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/ +const stack = []; +let isWarning = false; +function warn$1(msg, ...args) { + if (isWarning) return; + isWarning = true; + pauseTracking(); + const instance = stack.length ? stack[stack.length - 1].component : null; + const appWarnHandler = instance && instance.appContext.config.warnHandler; + const trace = getComponentTrace(); + if (appWarnHandler) { + callWithErrorHandling( + appWarnHandler, + instance, + 11, + [ + // eslint-disable-next-line no-restricted-syntax + msg + args.map((a) => { + var _a, _b; + return (_b = (_a = a.toString) == null ? void 0 : _a.call(a)) != null ? _b : JSON.stringify(a); + }).join(""), + instance && instance.proxy, + trace.map( + ({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>` + ).join("\n"), + trace + ] + ); + } else { + const warnArgs = [`[Vue warn]: ${msg}`, ...args]; + if (trace.length && // avoid spamming console during tests + true) { + warnArgs.push(` +`, ...formatTrace(trace)); + } + console.warn(...warnArgs); + } + resetTracking(); + isWarning = false; +} +function getComponentTrace() { + let currentVNode = stack[stack.length - 1]; + if (!currentVNode) { + return []; + } + const normalizedStack = []; + while (currentVNode) { + const last = normalizedStack[0]; + if (last && last.vnode === currentVNode) { + last.recurseCount++; + } else { + normalizedStack.push({ + vnode: currentVNode, + recurseCount: 0 + }); + } + const parentInstance = currentVNode.component && currentVNode.component.parent; + currentVNode = parentInstance && parentInstance.vnode; + } + return normalizedStack; +} +function formatTrace(trace) { + const logs = []; + trace.forEach((entry, i) => { + logs.push(...i === 0 ? [] : [` +`], ...formatTraceEntry(entry)); + }); + return logs; +} +function formatTraceEntry({ vnode, recurseCount }) { + const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``; + const isRoot = vnode.component ? vnode.component.parent == null : false; + const open = ` at <${formatComponentName( + vnode.component, + vnode.type, + isRoot + )}`; + const close = `>` + postfix; + return vnode.props ? [open, ...formatProps(vnode.props), close] : [open + close]; +} +function formatProps(props) { + const res = []; + const keys = Object.keys(props); + keys.slice(0, 3).forEach((key) => { + res.push(...formatProp(key, props[key])); + }); + if (keys.length > 3) { + res.push(` ...`); + } + return res; +} +function formatProp(key, value, raw) { + if (isString(value)) { + value = JSON.stringify(value); + return raw ? value : [`${key}=${value}`]; + } else if (typeof value === "number" || typeof value === "boolean" || value == null) { + return raw ? value : [`${key}=${value}`]; + } else if (isRef(value)) { + value = formatProp(key, toRaw(value.value), true); + return raw ? value : [`${key}=Ref<`, value, `>`]; + } else if (isFunction(value)) { + return [`${key}=fn${value.name ? `<${value.name}>` : ``}`]; + } else { + value = toRaw(value); + return raw ? value : [`${key}=`, value]; + } +} +function callWithErrorHandling(fn, instance, type, args) { + try { + return args ? fn(...args) : fn(); + } catch (err) { + handleError(err, instance, type); + } +} +function callWithAsyncErrorHandling(fn, instance, type, args) { + if (isFunction(fn)) { + const res = callWithErrorHandling(fn, instance, type, args); + if (res && isPromise(res)) { + res.catch((err) => { + handleError(err, instance, type); + }); + } + return res; + } + if (isArray(fn)) { + const values = []; + for (let i = 0; i < fn.length; i++) { + values.push(callWithAsyncErrorHandling(fn[i], instance, type, args)); + } + return values; + } +} +function handleError(err, instance, type, throwInDev = true) { + const contextVNode = instance ? instance.vnode : null; + const { errorHandler, throwUnhandledErrorInProduction } = instance && instance.appContext.config || EMPTY_OBJ; + if (instance) { + let cur = instance.parent; + const exposedInstance = instance.proxy; + const errorInfo = `https://vuejs.org/error-reference/#runtime-${type}`; + while (cur) { + const errorCapturedHooks = cur.ec; + if (errorCapturedHooks) { + for (let i = 0; i < errorCapturedHooks.length; i++) { + if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) { + return; + } + } + } + cur = cur.parent; + } + if (errorHandler) { + pauseTracking(); + callWithErrorHandling(errorHandler, null, 10, [ + err, + exposedInstance, + errorInfo + ]); + resetTracking(); + return; + } + } + logError(err, type, contextVNode, throwInDev, throwUnhandledErrorInProduction); +} +function logError(err, type, contextVNode, throwInDev = true, throwInProd = false) { + if (throwInProd) { + throw err; + } else { + console.error(err); + } +} +let isFlushing = false; +let isFlushPending = false; +const queue = []; +let flushIndex = 0; +const pendingPostFlushCbs = []; +let activePostFlushCbs = null; +let postFlushIndex = 0; +const resolvedPromise = /* @__PURE__ */ Promise.resolve(); +let currentFlushPromise = null; +function nextTick(fn) { + const p2 = currentFlushPromise || resolvedPromise; + return fn ? p2.then(this ? fn.bind(this) : fn) : p2; +} +function findInsertionIndex(id) { + let start = isFlushing ? flushIndex + 1 : 0; + let end = queue.length; + while (start < end) { + const middle = start + end >>> 1; + const middleJob = queue[middle]; + const middleJobId = getId(middleJob); + if (middleJobId < id || middleJobId === id && middleJob.flags & 2) { + start = middle + 1; + } else { + end = middle; + } + } + return start; +} +function queueJob(job) { + if (!(job.flags & 1)) { + const jobId = getId(job); + const lastJob = queue[queue.length - 1]; + if (!lastJob || // fast path when the job id is larger than the tail + !(job.flags & 2) && jobId >= getId(lastJob)) { + queue.push(job); + } else { + queue.splice(findInsertionIndex(jobId), 0, job); + } + job.flags |= 1; + queueFlush(); + } +} +function queueFlush() { + if (!isFlushing && !isFlushPending) { + isFlushPending = true; + currentFlushPromise = resolvedPromise.then(flushJobs); + } +} +function queuePostFlushCb(cb) { + if (!isArray(cb)) { + if (activePostFlushCbs && cb.id === -1) { + activePostFlushCbs.splice(postFlushIndex + 1, 0, cb); + } else if (!(cb.flags & 1)) { + pendingPostFlushCbs.push(cb); + cb.flags |= 1; + } + } else { + pendingPostFlushCbs.push(...cb); + } + queueFlush(); +} +function flushPreFlushCbs(instance, seen2, i = isFlushing ? flushIndex + 1 : 0) { + for (; i < queue.length; i++) { + const cb = queue[i]; + if (cb && cb.flags & 2) { + if (instance && cb.id !== instance.uid) { + continue; + } + queue.splice(i, 1); + i--; + if (cb.flags & 4) { + cb.flags &= ~1; + } + cb(); + cb.flags &= ~1; + } + } +} +function flushPostFlushCbs(seen2) { + if (pendingPostFlushCbs.length) { + const deduped = [...new Set(pendingPostFlushCbs)].sort( + (a, b) => getId(a) - getId(b) + ); + pendingPostFlushCbs.length = 0; + if (activePostFlushCbs) { + activePostFlushCbs.push(...deduped); + return; + } + activePostFlushCbs = deduped; + for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) { + const cb = activePostFlushCbs[postFlushIndex]; + if (cb.flags & 4) { + cb.flags &= ~1; + } + if (!(cb.flags & 8)) cb(); + cb.flags &= ~1; + } + activePostFlushCbs = null; + postFlushIndex = 0; + } +} +const getId = (job) => job.id == null ? job.flags & 2 ? -1 : Infinity : job.id; +function flushJobs(seen2) { + isFlushPending = false; + isFlushing = true; + try { + for (flushIndex = 0; flushIndex < queue.length; flushIndex++) { + const job = queue[flushIndex]; + if (job && !(job.flags & 8)) { + if (false) ; + if (job.flags & 4) { + job.flags &= ~1; + } + callWithErrorHandling( + job, + job.i, + job.i ? 15 : 14 + ); + job.flags &= ~1; + } + } + } finally { + for (; flushIndex < queue.length; flushIndex++) { + const job = queue[flushIndex]; + if (job) { + job.flags &= ~1; + } + } + flushIndex = 0; + queue.length = 0; + flushPostFlushCbs(); + isFlushing = false; + currentFlushPromise = null; + if (queue.length || pendingPostFlushCbs.length) { + flushJobs(); + } + } +} +let currentRenderingInstance = null; +let currentScopeId = null; +function setCurrentRenderingInstance(instance) { + const prev = currentRenderingInstance; + currentRenderingInstance = instance; + currentScopeId = instance && instance.type.__scopeId || null; + return prev; +} +function withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot) { + if (!ctx) return fn; + if (fn._n) { + return fn; + } + const renderFnWithContext = (...args) => { + if (renderFnWithContext._d) { + setBlockTracking(-1); + } + const prevInstance = setCurrentRenderingInstance(ctx); + let res; + try { + res = fn(...args); + } finally { + setCurrentRenderingInstance(prevInstance); + if (renderFnWithContext._d) { + setBlockTracking(1); + } + } + return res; + }; + renderFnWithContext._n = true; + renderFnWithContext._c = true; + renderFnWithContext._d = true; + return renderFnWithContext; +} +function withDirectives(vnode, directives) { + if (currentRenderingInstance === null) { + return vnode; + } + const instance = getComponentPublicInstance(currentRenderingInstance); + const bindings = vnode.dirs || (vnode.dirs = []); + for (let i = 0; i < directives.length; i++) { + let [dir, value, arg, modifiers = EMPTY_OBJ] = directives[i]; + if (dir) { + if (isFunction(dir)) { + dir = { + mounted: dir, + updated: dir + }; + } + if (dir.deep) { + traverse(value); + } + bindings.push({ + dir, + instance, + value, + oldValue: void 0, + arg, + modifiers + }); + } + } + return vnode; +} +function invokeDirectiveHook(vnode, prevVNode, instance, name) { + const bindings = vnode.dirs; + const oldBindings = prevVNode && prevVNode.dirs; + for (let i = 0; i < bindings.length; i++) { + const binding = bindings[i]; + if (oldBindings) { + binding.oldValue = oldBindings[i].value; + } + let hook = binding.dir[name]; + if (hook) { + pauseTracking(); + callWithAsyncErrorHandling(hook, instance, 8, [ + vnode.el, + binding, + vnode, + prevVNode + ]); + resetTracking(); + } + } +} +const TeleportEndKey = Symbol("_vte"); +const isTeleport = (type) => type.__isTeleport; +const isTeleportDisabled = (props) => props && (props.disabled || props.disabled === ""); +const isTeleportDeferred = (props) => props && (props.defer || props.defer === ""); +const isTargetSVG = (target) => typeof SVGElement !== "undefined" && target instanceof SVGElement; +const isTargetMathML = (target) => typeof MathMLElement === "function" && target instanceof MathMLElement; +const resolveTarget = (props, select) => { + const targetSelector = props && props.to; + if (isString(targetSelector)) { + if (!select) { + return null; + } else { + const target = select(targetSelector); + return target; + } + } else { + return targetSelector; + } +}; +const TeleportImpl = { + name: "Teleport", + __isTeleport: true, + process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, internals) { + const { + mc: mountChildren, + pc: patchChildren, + pbc: patchBlockChildren, + o: { insert, querySelector, createText, createComment } + } = internals; + const disabled = isTeleportDisabled(n2.props); + let { shapeFlag, children, dynamicChildren } = n2; + if (n1 == null) { + const placeholder = n2.el = createText(""); + const mainAnchor = n2.anchor = createText(""); + insert(placeholder, container, anchor); + insert(mainAnchor, container, anchor); + const mount = (container2, anchor2) => { + if (shapeFlag & 16) { + mountChildren( + children, + container2, + anchor2, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } + }; + const mountToTarget = () => { + const target = n2.target = resolveTarget(n2.props, querySelector); + const targetAnchor = prepareAnchor(target, n2, createText, insert); + if (target) { + if (namespace !== "svg" && isTargetSVG(target)) { + namespace = "svg"; + } else if (namespace !== "mathml" && isTargetMathML(target)) { + namespace = "mathml"; + } + if (!disabled) { + mount(target, targetAnchor); + updateCssVars(n2); + } + } + }; + if (disabled) { + mount(container, mainAnchor); + updateCssVars(n2); + } + if (isTeleportDeferred(n2.props)) { + queuePostRenderEffect(mountToTarget, parentSuspense); + } else { + mountToTarget(); + } + } else { + n2.el = n1.el; + n2.targetStart = n1.targetStart; + const mainAnchor = n2.anchor = n1.anchor; + const target = n2.target = n1.target; + const targetAnchor = n2.targetAnchor = n1.targetAnchor; + const wasDisabled = isTeleportDisabled(n1.props); + const currentContainer = wasDisabled ? container : target; + const currentAnchor = wasDisabled ? mainAnchor : targetAnchor; + if (namespace === "svg" || isTargetSVG(target)) { + namespace = "svg"; + } else if (namespace === "mathml" || isTargetMathML(target)) { + namespace = "mathml"; + } + if (dynamicChildren) { + patchBlockChildren( + n1.dynamicChildren, + dynamicChildren, + currentContainer, + parentComponent, + parentSuspense, + namespace, + slotScopeIds + ); + traverseStaticChildren(n1, n2, true); + } else if (!optimized) { + patchChildren( + n1, + n2, + currentContainer, + currentAnchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + false + ); + } + if (disabled) { + if (!wasDisabled) { + moveTeleport( + n2, + container, + mainAnchor, + internals, + 1 + ); + } else { + if (n2.props && n1.props && n2.props.to !== n1.props.to) { + n2.props.to = n1.props.to; + } + } + } else { + if ((n2.props && n2.props.to) !== (n1.props && n1.props.to)) { + const nextTarget = n2.target = resolveTarget( + n2.props, + querySelector + ); + if (nextTarget) { + moveTeleport( + n2, + nextTarget, + null, + internals, + 0 + ); + } + } else if (wasDisabled) { + moveTeleport( + n2, + target, + targetAnchor, + internals, + 1 + ); + } + } + updateCssVars(n2); + } + }, + remove(vnode, parentComponent, parentSuspense, { um: unmount, o: { remove: hostRemove } }, doRemove) { + const { + shapeFlag, + children, + anchor, + targetStart, + targetAnchor, + target, + props + } = vnode; + if (target) { + hostRemove(targetStart); + hostRemove(targetAnchor); + } + doRemove && hostRemove(anchor); + if (shapeFlag & 16) { + const shouldRemove = doRemove || !isTeleportDisabled(props); + for (let i = 0; i < children.length; i++) { + const child = children[i]; + unmount( + child, + parentComponent, + parentSuspense, + shouldRemove, + !!child.dynamicChildren + ); + } + } + }, + move: moveTeleport, + hydrate: hydrateTeleport +}; +function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }, moveType = 2) { + if (moveType === 0) { + insert(vnode.targetAnchor, container, parentAnchor); + } + const { el, anchor, shapeFlag, children, props } = vnode; + const isReorder = moveType === 2; + if (isReorder) { + insert(el, container, parentAnchor); + } + if (!isReorder || isTeleportDisabled(props)) { + if (shapeFlag & 16) { + for (let i = 0; i < children.length; i++) { + move( + children[i], + container, + parentAnchor, + 2 + ); + } + } + } + if (isReorder) { + insert(anchor, container, parentAnchor); + } +} +function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, { + o: { nextSibling, parentNode, querySelector, insert, createText } +}, hydrateChildren) { + const target = vnode.target = resolveTarget( + vnode.props, + querySelector + ); + if (target) { + const targetNode = target._lpa || target.firstChild; + if (vnode.shapeFlag & 16) { + if (isTeleportDisabled(vnode.props)) { + vnode.anchor = hydrateChildren( + nextSibling(node), + vnode, + parentNode(node), + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + vnode.targetStart = targetNode; + vnode.targetAnchor = targetNode && nextSibling(targetNode); + } else { + vnode.anchor = nextSibling(node); + let targetAnchor = targetNode; + while (targetAnchor) { + if (targetAnchor && targetAnchor.nodeType === 8) { + if (targetAnchor.data === "teleport start anchor") { + vnode.targetStart = targetAnchor; + } else if (targetAnchor.data === "teleport anchor") { + vnode.targetAnchor = targetAnchor; + target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor); + break; + } + } + targetAnchor = nextSibling(targetAnchor); + } + if (!vnode.targetAnchor) { + prepareAnchor(target, vnode, createText, insert); + } + hydrateChildren( + targetNode && nextSibling(targetNode), + vnode, + target, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + } + } + updateCssVars(vnode); + } + return vnode.anchor && nextSibling(vnode.anchor); +} +const Teleport = TeleportImpl; +function updateCssVars(vnode) { + const ctx = vnode.ctx; + if (ctx && ctx.ut) { + let node = vnode.targetStart; + while (node && node !== vnode.targetAnchor) { + if (node.nodeType === 1) node.setAttribute("data-v-owner", ctx.uid); + node = node.nextSibling; + } + ctx.ut(); + } +} +function prepareAnchor(target, vnode, createText, insert) { + const targetStart = vnode.targetStart = createText(""); + const targetAnchor = vnode.targetAnchor = createText(""); + targetStart[TeleportEndKey] = targetAnchor; + if (target) { + insert(targetStart, target); + insert(targetAnchor, target); + } + return targetAnchor; +} +const leaveCbKey = Symbol("_leaveCb"); +const enterCbKey = Symbol("_enterCb"); +function useTransitionState() { + const state = { + isMounted: false, + isLeaving: false, + isUnmounting: false, + leavingVNodes: /* @__PURE__ */ new Map() + }; + onMounted(() => { + state.isMounted = true; + }); + onBeforeUnmount(() => { + state.isUnmounting = true; + }); + return state; +} +const TransitionHookValidator = [Function, Array]; +const BaseTransitionPropsValidators = { + mode: String, + appear: Boolean, + persisted: Boolean, + // enter + onBeforeEnter: TransitionHookValidator, + onEnter: TransitionHookValidator, + onAfterEnter: TransitionHookValidator, + onEnterCancelled: TransitionHookValidator, + // leave + onBeforeLeave: TransitionHookValidator, + onLeave: TransitionHookValidator, + onAfterLeave: TransitionHookValidator, + onLeaveCancelled: TransitionHookValidator, + // appear + onBeforeAppear: TransitionHookValidator, + onAppear: TransitionHookValidator, + onAfterAppear: TransitionHookValidator, + onAppearCancelled: TransitionHookValidator +}; +const recursiveGetSubtree = (instance) => { + const subTree = instance.subTree; + return subTree.component ? recursiveGetSubtree(subTree.component) : subTree; +}; +const BaseTransitionImpl = { + name: `BaseTransition`, + props: BaseTransitionPropsValidators, + setup(props, { slots }) { + const instance = getCurrentInstance(); + const state = useTransitionState(); + return () => { + const children = slots.default && getTransitionRawChildren(slots.default(), true); + if (!children || !children.length) { + return; + } + const child = findNonCommentChild(children); + const rawProps = toRaw(props); + const { mode } = rawProps; + if (state.isLeaving) { + return emptyPlaceholder(child); + } + const innerChild = getInnerChild$1(child); + if (!innerChild) { + return emptyPlaceholder(child); + } + let enterHooks = resolveTransitionHooks( + innerChild, + rawProps, + state, + instance, + // #11061, ensure enterHooks is fresh after clone + (hooks) => enterHooks = hooks + ); + if (innerChild.type !== Comment) { + setTransitionHooks(innerChild, enterHooks); + } + const oldChild = instance.subTree; + const oldInnerChild = oldChild && getInnerChild$1(oldChild); + if (oldInnerChild && oldInnerChild.type !== Comment && !isSameVNodeType(innerChild, oldInnerChild) && recursiveGetSubtree(instance).type !== Comment) { + const leavingHooks = resolveTransitionHooks( + oldInnerChild, + rawProps, + state, + instance + ); + setTransitionHooks(oldInnerChild, leavingHooks); + if (mode === "out-in" && innerChild.type !== Comment) { + state.isLeaving = true; + leavingHooks.afterLeave = () => { + state.isLeaving = false; + if (!(instance.job.flags & 8)) { + instance.update(); + } + delete leavingHooks.afterLeave; + }; + return emptyPlaceholder(child); + } else if (mode === "in-out" && innerChild.type !== Comment) { + leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => { + const leavingVNodesCache = getLeavingNodesForType( + state, + oldInnerChild + ); + leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild; + el[leaveCbKey] = () => { + earlyRemove(); + el[leaveCbKey] = void 0; + delete enterHooks.delayedLeave; + }; + enterHooks.delayedLeave = delayedLeave; + }; + } + } + return child; + }; + } +}; +function findNonCommentChild(children) { + let child = children[0]; + if (children.length > 1) { + for (const c of children) { + if (c.type !== Comment) { + child = c; + break; + } + } + } + return child; +} +const BaseTransition = BaseTransitionImpl; +function getLeavingNodesForType(state, vnode) { + const { leavingVNodes } = state; + let leavingVNodesCache = leavingVNodes.get(vnode.type); + if (!leavingVNodesCache) { + leavingVNodesCache = /* @__PURE__ */ Object.create(null); + leavingVNodes.set(vnode.type, leavingVNodesCache); + } + return leavingVNodesCache; +} +function resolveTransitionHooks(vnode, props, state, instance, postClone) { + const { + appear, + mode, + persisted = false, + onBeforeEnter, + onEnter, + onAfterEnter, + onEnterCancelled, + onBeforeLeave, + onLeave, + onAfterLeave, + onLeaveCancelled, + onBeforeAppear, + onAppear, + onAfterAppear, + onAppearCancelled + } = props; + const key = String(vnode.key); + const leavingVNodesCache = getLeavingNodesForType(state, vnode); + const callHook2 = (hook, args) => { + hook && callWithAsyncErrorHandling( + hook, + instance, + 9, + args + ); + }; + const callAsyncHook = (hook, args) => { + const done = args[1]; + callHook2(hook, args); + if (isArray(hook)) { + if (hook.every((hook2) => hook2.length <= 1)) done(); + } else if (hook.length <= 1) { + done(); + } + }; + const hooks = { + mode, + persisted, + beforeEnter(el) { + let hook = onBeforeEnter; + if (!state.isMounted) { + if (appear) { + hook = onBeforeAppear || onBeforeEnter; + } else { + return; + } + } + if (el[leaveCbKey]) { + el[leaveCbKey]( + true + /* cancelled */ + ); + } + const leavingVNode = leavingVNodesCache[key]; + if (leavingVNode && isSameVNodeType(vnode, leavingVNode) && leavingVNode.el[leaveCbKey]) { + leavingVNode.el[leaveCbKey](); + } + callHook2(hook, [el]); + }, + enter(el) { + let hook = onEnter; + let afterHook = onAfterEnter; + let cancelHook = onEnterCancelled; + if (!state.isMounted) { + if (appear) { + hook = onAppear || onEnter; + afterHook = onAfterAppear || onAfterEnter; + cancelHook = onAppearCancelled || onEnterCancelled; + } else { + return; + } + } + let called = false; + const done = el[enterCbKey] = (cancelled) => { + if (called) return; + called = true; + if (cancelled) { + callHook2(cancelHook, [el]); + } else { + callHook2(afterHook, [el]); + } + if (hooks.delayedLeave) { + hooks.delayedLeave(); + } + el[enterCbKey] = void 0; + }; + if (hook) { + callAsyncHook(hook, [el, done]); + } else { + done(); + } + }, + leave(el, remove2) { + const key2 = String(vnode.key); + if (el[enterCbKey]) { + el[enterCbKey]( + true + /* cancelled */ + ); + } + if (state.isUnmounting) { + return remove2(); + } + callHook2(onBeforeLeave, [el]); + let called = false; + const done = el[leaveCbKey] = (cancelled) => { + if (called) return; + called = true; + remove2(); + if (cancelled) { + callHook2(onLeaveCancelled, [el]); + } else { + callHook2(onAfterLeave, [el]); + } + el[leaveCbKey] = void 0; + if (leavingVNodesCache[key2] === vnode) { + delete leavingVNodesCache[key2]; + } + }; + leavingVNodesCache[key2] = vnode; + if (onLeave) { + callAsyncHook(onLeave, [el, done]); + } else { + done(); + } + }, + clone(vnode2) { + const hooks2 = resolveTransitionHooks( + vnode2, + props, + state, + instance, + postClone + ); + if (postClone) postClone(hooks2); + return hooks2; + } + }; + return hooks; +} +function emptyPlaceholder(vnode) { + if (isKeepAlive(vnode)) { + vnode = cloneVNode(vnode); + vnode.children = null; + return vnode; + } +} +function getInnerChild$1(vnode) { + if (!isKeepAlive(vnode)) { + if (isTeleport(vnode.type) && vnode.children) { + return findNonCommentChild(vnode.children); + } + return vnode; + } + const { shapeFlag, children } = vnode; + if (children) { + if (shapeFlag & 16) { + return children[0]; + } + if (shapeFlag & 32 && isFunction(children.default)) { + return children.default(); + } + } +} +function setTransitionHooks(vnode, hooks) { + if (vnode.shapeFlag & 6 && vnode.component) { + vnode.transition = hooks; + setTransitionHooks(vnode.component.subTree, hooks); + } else if (vnode.shapeFlag & 128) { + vnode.ssContent.transition = hooks.clone(vnode.ssContent); + vnode.ssFallback.transition = hooks.clone(vnode.ssFallback); + } else { + vnode.transition = hooks; + } +} +function getTransitionRawChildren(children, keepComment = false, parentKey) { + let ret = []; + let keyedFragmentCount = 0; + for (let i = 0; i < children.length; i++) { + let child = children[i]; + const key = parentKey == null ? child.key : String(parentKey) + String(child.key != null ? child.key : i); + if (child.type === Fragment) { + if (child.patchFlag & 128) keyedFragmentCount++; + ret = ret.concat( + getTransitionRawChildren(child.children, keepComment, key) + ); + } else if (keepComment || child.type !== Comment) { + ret.push(key != null ? cloneVNode(child, { key }) : child); + } + } + if (keyedFragmentCount > 1) { + for (let i = 0; i < ret.length; i++) { + ret[i].patchFlag = -2; + } + } + return ret; +} +/*! #__NO_SIDE_EFFECTS__ */ +// @__NO_SIDE_EFFECTS__ +function defineComponent(options, extraOptions) { + return isFunction(options) ? ( + // #8236: extend call and options.name access are considered side-effects + // by Rollup, so we have to wrap it in a pure-annotated IIFE. + /* @__PURE__ */ (() => extend({ name: options.name }, extraOptions, { setup: options }))() + ) : options; +} +function markAsyncBoundary(instance) { + instance.ids = [instance.ids[0] + instance.ids[2]++ + "-", 0, 0]; +} +function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) { + if (isArray(rawRef)) { + rawRef.forEach( + (r, i) => setRef( + r, + oldRawRef && (isArray(oldRawRef) ? oldRawRef[i] : oldRawRef), + parentSuspense, + vnode, + isUnmount + ) + ); + return; + } + if (isAsyncWrapper(vnode) && !isUnmount) { + return; + } + const refValue = vnode.shapeFlag & 4 ? getComponentPublicInstance(vnode.component) : vnode.el; + const value = isUnmount ? null : refValue; + const { i: owner, r: ref3 } = rawRef; + const oldRef = oldRawRef && oldRawRef.r; + const refs = owner.refs === EMPTY_OBJ ? owner.refs = {} : owner.refs; + const setupState = owner.setupState; + const rawSetupState = toRaw(setupState); + const canSetSetupRef = setupState === EMPTY_OBJ ? () => false : (key) => { + return hasOwn(rawSetupState, key); + }; + if (oldRef != null && oldRef !== ref3) { + if (isString(oldRef)) { + refs[oldRef] = null; + if (canSetSetupRef(oldRef)) { + setupState[oldRef] = null; + } + } else if (isRef(oldRef)) { + oldRef.value = null; + } + } + if (isFunction(ref3)) { + callWithErrorHandling(ref3, owner, 12, [value, refs]); + } else { + const _isString = isString(ref3); + const _isRef = isRef(ref3); + if (_isString || _isRef) { + const doSet = () => { + if (rawRef.f) { + const existing = _isString ? canSetSetupRef(ref3) ? setupState[ref3] : refs[ref3] : ref3.value; + if (isUnmount) { + isArray(existing) && remove(existing, refValue); + } else { + if (!isArray(existing)) { + if (_isString) { + refs[ref3] = [refValue]; + if (canSetSetupRef(ref3)) { + setupState[ref3] = refs[ref3]; + } + } else { + ref3.value = [refValue]; + if (rawRef.k) refs[rawRef.k] = ref3.value; + } + } else if (!existing.includes(refValue)) { + existing.push(refValue); + } + } + } else if (_isString) { + refs[ref3] = value; + if (canSetSetupRef(ref3)) { + setupState[ref3] = value; + } + } else if (_isRef) { + ref3.value = value; + if (rawRef.k) refs[rawRef.k] = value; + } else ; + }; + if (value) { + doSet.id = -1; + queuePostRenderEffect(doSet, parentSuspense); + } else { + doSet(); + } + } + } +} +let hasLoggedMismatchError = false; +const logMismatchError = () => { + if (hasLoggedMismatchError) { + return; + } + console.error("Hydration completed but contains mismatches."); + hasLoggedMismatchError = true; +}; +const isSVGContainer = (container) => container.namespaceURI.includes("svg") && container.tagName !== "foreignObject"; +const isMathMLContainer = (container) => container.namespaceURI.includes("MathML"); +const getContainerType = (container) => { + if (container.nodeType !== 1) return void 0; + if (isSVGContainer(container)) return "svg"; + if (isMathMLContainer(container)) return "mathml"; + return void 0; +}; +const isComment = (node) => node.nodeType === 8; +function createHydrationFunctions(rendererInternals) { + const { + mt: mountComponent, + p: patch, + o: { + patchProp: patchProp2, + createText, + nextSibling, + parentNode, + remove: remove2, + insert, + createComment + } + } = rendererInternals; + const hydrate = (vnode, container) => { + if (!container.hasChildNodes()) { + warn$1( + `Attempting to hydrate existing markup but container is empty. Performing full mount instead.` + ); + patch(null, vnode, container); + flushPostFlushCbs(); + container._vnode = vnode; + return; + } + hydrateNode(container.firstChild, vnode, null, null, null); + flushPostFlushCbs(); + container._vnode = vnode; + }; + const hydrateNode = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized = false) => { + optimized = optimized || !!vnode.dynamicChildren; + const isFragmentStart = isComment(node) && node.data === "["; + const onMismatch = () => handleMismatch( + node, + vnode, + parentComponent, + parentSuspense, + slotScopeIds, + isFragmentStart + ); + const { type, ref: ref3, shapeFlag, patchFlag } = vnode; + let domType = node.nodeType; + vnode.el = node; + if (patchFlag === -2) { + optimized = false; + vnode.dynamicChildren = null; + } + let nextNode = null; + switch (type) { + case Text: + if (domType !== 3) { + if (vnode.children === "") { + insert(vnode.el = createText(""), parentNode(node), node); + nextNode = node; + } else { + nextNode = onMismatch(); + } + } else { + if (node.data !== vnode.children) { + warn$1( + `Hydration text mismatch in`, + node.parentNode, + ` + - rendered on server: ${JSON.stringify( + node.data + )} + - expected on client: ${JSON.stringify(vnode.children)}` + ); + logMismatchError(); + node.data = vnode.children; + } + nextNode = nextSibling(node); + } + break; + case Comment: + if (isTemplateNode(node)) { + nextNode = nextSibling(node); + replaceNode( + vnode.el = node.content.firstChild, + node, + parentComponent + ); + } else if (domType !== 8 || isFragmentStart) { + nextNode = onMismatch(); + } else { + nextNode = nextSibling(node); + } + break; + case Static: + if (isFragmentStart) { + node = nextSibling(node); + domType = node.nodeType; + } + if (domType === 1 || domType === 3) { + nextNode = node; + const needToAdoptContent = !vnode.children.length; + for (let i = 0; i < vnode.staticCount; i++) { + if (needToAdoptContent) + vnode.children += nextNode.nodeType === 1 ? nextNode.outerHTML : nextNode.data; + if (i === vnode.staticCount - 1) { + vnode.anchor = nextNode; + } + nextNode = nextSibling(nextNode); + } + return isFragmentStart ? nextSibling(nextNode) : nextNode; + } else { + onMismatch(); + } + break; + case Fragment: + if (!isFragmentStart) { + nextNode = onMismatch(); + } else { + nextNode = hydrateFragment( + node, + vnode, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + } + break; + default: + if (shapeFlag & 1) { + if ((domType !== 1 || vnode.type.toLowerCase() !== node.tagName.toLowerCase()) && !isTemplateNode(node)) { + nextNode = onMismatch(); + } else { + nextNode = hydrateElement( + node, + vnode, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + } + } else if (shapeFlag & 6) { + vnode.slotScopeIds = slotScopeIds; + const container = parentNode(node); + if (isFragmentStart) { + nextNode = locateClosingAnchor(node); + } else if (isComment(node) && node.data === "teleport start") { + nextNode = locateClosingAnchor(node, node.data, "teleport end"); + } else { + nextNode = nextSibling(node); + } + mountComponent( + vnode, + container, + null, + parentComponent, + parentSuspense, + getContainerType(container), + optimized + ); + if (isAsyncWrapper(vnode)) { + let subTree; + if (isFragmentStart) { + subTree = createVNode(Fragment); + subTree.anchor = nextNode ? nextNode.previousSibling : container.lastChild; + } else { + subTree = node.nodeType === 3 ? createTextVNode("") : createVNode("div"); + } + subTree.el = node; + vnode.component.subTree = subTree; + } + } else if (shapeFlag & 64) { + if (domType !== 8) { + nextNode = onMismatch(); + } else { + nextNode = vnode.type.hydrate( + node, + vnode, + parentComponent, + parentSuspense, + slotScopeIds, + optimized, + rendererInternals, + hydrateChildren + ); + } + } else if (shapeFlag & 128) { + nextNode = vnode.type.hydrate( + node, + vnode, + parentComponent, + parentSuspense, + getContainerType(parentNode(node)), + slotScopeIds, + optimized, + rendererInternals, + hydrateNode + ); + } else { + warn$1("Invalid HostVNode type:", type, `(${typeof type})`); + } + } + if (ref3 != null) { + setRef(ref3, null, parentSuspense, vnode); + } + return nextNode; + }; + const hydrateElement = (el, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => { + optimized = optimized || !!vnode.dynamicChildren; + const { type, props, patchFlag, shapeFlag, dirs, transition } = vnode; + const forcePatch = type === "input" || type === "option"; + if (forcePatch || patchFlag !== -1) { + if (dirs) { + invokeDirectiveHook(vnode, null, parentComponent, "created"); + } + let needCallTransitionHooks = false; + if (isTemplateNode(el)) { + needCallTransitionHooks = needTransition(parentSuspense, transition) && parentComponent && parentComponent.vnode.props && parentComponent.vnode.props.appear; + const content = el.content.firstChild; + if (needCallTransitionHooks) { + transition.beforeEnter(content); + } + replaceNode(content, el, parentComponent); + vnode.el = el = content; + } + if (shapeFlag & 16 && // skip if element has innerHTML / textContent + !(props && (props.innerHTML || props.textContent))) { + let next = hydrateChildren( + el.firstChild, + vnode, + el, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + let hasWarned2 = false; + while (next) { + if (!isMismatchAllowed( + el, + 1 + /* CHILDREN */ + )) { + if (!hasWarned2) { + warn$1( + `Hydration children mismatch on`, + el, + ` +Server rendered element contains more child nodes than client vdom.` + ); + hasWarned2 = true; + } + logMismatchError(); + } + const cur = next; + next = next.nextSibling; + remove2(cur); + } + } else if (shapeFlag & 8) { + if (el.textContent !== vnode.children) { + if (!isMismatchAllowed( + el, + 0 + /* TEXT */ + )) { + warn$1( + `Hydration text content mismatch on`, + el, + ` + - rendered on server: ${el.textContent} + - expected on client: ${vnode.children}` + ); + logMismatchError(); + } + el.textContent = vnode.children; + } + } + if (props) { + { + const isCustomElement = el.tagName.includes("-"); + for (const key in props) { + if ( + // #11189 skip if this node has directives that have created hooks + // as it could have mutated the DOM in any possible way + !(dirs && dirs.some((d) => d.dir.created)) && propHasMismatch(el, key, props[key], vnode, parentComponent) + ) { + logMismatchError(); + } + if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers + key[0] === "." || isCustomElement) { + patchProp2(el, key, null, props[key], void 0, parentComponent); + } + } + } + } + let vnodeHooks; + if (vnodeHooks = props && props.onVnodeBeforeMount) { + invokeVNodeHook(vnodeHooks, parentComponent, vnode); + } + if (dirs) { + invokeDirectiveHook(vnode, null, parentComponent, "beforeMount"); + } + if ((vnodeHooks = props && props.onVnodeMounted) || dirs || needCallTransitionHooks) { + queueEffectWithSuspense(() => { + vnodeHooks && invokeVNodeHook(vnodeHooks, parentComponent, vnode); + needCallTransitionHooks && transition.enter(el); + dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted"); + }, parentSuspense); + } + } + return el.nextSibling; + }; + const hydrateChildren = (node, parentVNode, container, parentComponent, parentSuspense, slotScopeIds, optimized) => { + optimized = optimized || !!parentVNode.dynamicChildren; + const children = parentVNode.children; + const l = children.length; + let hasWarned2 = false; + for (let i = 0; i < l; i++) { + const vnode = optimized ? children[i] : children[i] = normalizeVNode(children[i]); + const isText = vnode.type === Text; + if (node) { + if (isText && !optimized) { + if (i + 1 < l && normalizeVNode(children[i + 1]).type === Text) { + insert( + createText( + node.data.slice(vnode.children.length) + ), + container, + nextSibling(node) + ); + node.data = vnode.children; + } + } + node = hydrateNode( + node, + vnode, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + } else if (isText && !vnode.children) { + insert(vnode.el = createText(""), container); + } else { + if (!isMismatchAllowed( + container, + 1 + /* CHILDREN */ + )) { + if (!hasWarned2) { + warn$1( + `Hydration children mismatch on`, + container, + ` +Server rendered element contains fewer child nodes than client vdom.` + ); + hasWarned2 = true; + } + logMismatchError(); + } + patch( + null, + vnode, + container, + null, + parentComponent, + parentSuspense, + getContainerType(container), + slotScopeIds + ); + } + } + return node; + }; + const hydrateFragment = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized) => { + const { slotScopeIds: fragmentSlotScopeIds } = vnode; + if (fragmentSlotScopeIds) { + slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds; + } + const container = parentNode(node); + const next = hydrateChildren( + nextSibling(node), + vnode, + container, + parentComponent, + parentSuspense, + slotScopeIds, + optimized + ); + if (next && isComment(next) && next.data === "]") { + return nextSibling(vnode.anchor = next); + } else { + logMismatchError(); + insert(vnode.anchor = createComment(`]`), container, next); + return next; + } + }; + const handleMismatch = (node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragment) => { + if (!isMismatchAllowed( + node.parentElement, + 1 + /* CHILDREN */ + )) { + warn$1( + `Hydration node mismatch: +- rendered on server:`, + node, + node.nodeType === 3 ? `(text)` : isComment(node) && node.data === "[" ? `(start of fragment)` : ``, + ` +- expected on client:`, + vnode.type + ); + logMismatchError(); + } + vnode.el = null; + if (isFragment) { + const end = locateClosingAnchor(node); + while (true) { + const next2 = nextSibling(node); + if (next2 && next2 !== end) { + remove2(next2); + } else { + break; + } + } + } + const next = nextSibling(node); + const container = parentNode(node); + remove2(node); + patch( + null, + vnode, + container, + next, + parentComponent, + parentSuspense, + getContainerType(container), + slotScopeIds + ); + return next; + }; + const locateClosingAnchor = (node, open = "[", close = "]") => { + let match = 0; + while (node) { + node = nextSibling(node); + if (node && isComment(node)) { + if (node.data === open) match++; + if (node.data === close) { + if (match === 0) { + return nextSibling(node); + } else { + match--; + } + } + } + } + return node; + }; + const replaceNode = (newNode, oldNode, parentComponent) => { + const parentNode2 = oldNode.parentNode; + if (parentNode2) { + parentNode2.replaceChild(newNode, oldNode); + } + let parent = parentComponent; + while (parent) { + if (parent.vnode.el === oldNode) { + parent.vnode.el = parent.subTree.el = newNode; + } + parent = parent.parent; + } + }; + const isTemplateNode = (node) => { + return node.nodeType === 1 && node.tagName.toLowerCase() === "template"; + }; + return [hydrate, hydrateNode]; +} +function propHasMismatch(el, key, clientValue, vnode, instance) { + let mismatchType; + let mismatchKey; + let actual; + let expected; + if (key === "class") { + actual = el.getAttribute("class"); + expected = normalizeClass(clientValue); + if (!isSetEqual(toClassSet(actual || ""), toClassSet(expected))) { + mismatchType = 2; + mismatchKey = `class`; + } + } else if (key === "style") { + actual = el.getAttribute("style") || ""; + expected = isString(clientValue) ? clientValue : stringifyStyle(normalizeStyle(clientValue)); + const actualMap = toStyleMap(actual); + const expectedMap = toStyleMap(expected); + if (vnode.dirs) { + for (const { dir, value } of vnode.dirs) { + if (dir.name === "show" && !value) { + expectedMap.set("display", "none"); + } + } + } + if (instance) { + resolveCssVars(instance, vnode, expectedMap); + } + if (!isMapEqual(actualMap, expectedMap)) { + mismatchType = 3; + mismatchKey = "style"; + } + } else if (el instanceof SVGElement && isKnownSvgAttr(key) || el instanceof HTMLElement && (isBooleanAttr(key) || isKnownHtmlAttr(key))) { + if (isBooleanAttr(key)) { + actual = el.hasAttribute(key); + expected = includeBooleanAttr(clientValue); + } else if (clientValue == null) { + actual = el.hasAttribute(key); + expected = false; + } else { + if (el.hasAttribute(key)) { + actual = el.getAttribute(key); + } else if (key === "value" && el.tagName === "TEXTAREA") { + actual = el.value; + } else { + actual = false; + } + expected = isRenderableAttrValue(clientValue) ? String(clientValue) : false; + } + if (actual !== expected) { + mismatchType = 4; + mismatchKey = key; + } + } + if (mismatchType != null && !isMismatchAllowed(el, mismatchType)) { + const format = (v) => v === false ? `(not rendered)` : `${mismatchKey}="${v}"`; + const preSegment = `Hydration ${MismatchTypeString[mismatchType]} mismatch on`; + const postSegment = ` + - rendered on server: ${format(actual)} + - expected on client: ${format(expected)} + Note: this mismatch is check-only. The DOM will not be rectified in production due to performance overhead. + You should fix the source of the mismatch.`; + { + warn$1(preSegment, el, postSegment); + } + return true; + } + return false; +} +function toClassSet(str) { + return new Set(str.trim().split(/\s+/)); +} +function isSetEqual(a, b) { + if (a.size !== b.size) { + return false; + } + for (const s of a) { + if (!b.has(s)) { + return false; + } + } + return true; +} +function toStyleMap(str) { + const styleMap = /* @__PURE__ */ new Map(); + for (const item of str.split(";")) { + let [key, value] = item.split(":"); + key = key.trim(); + value = value && value.trim(); + if (key && value) { + styleMap.set(key, value); + } + } + return styleMap; +} +function isMapEqual(a, b) { + if (a.size !== b.size) { + return false; + } + for (const [key, value] of a) { + if (value !== b.get(key)) { + return false; + } + } + return true; +} +function resolveCssVars(instance, vnode, expectedMap) { + const root = instance.subTree; + if (instance.getCssVars && (vnode === root || root && root.type === Fragment && root.children.includes(vnode))) { + const cssVars = instance.getCssVars(); + for (const key in cssVars) { + expectedMap.set( + `--${getEscapedCssVarName(key)}`, + String(cssVars[key]) + ); + } + } + if (vnode === root && instance.parent) { + resolveCssVars(instance.parent, instance.vnode, expectedMap); + } +} +const allowMismatchAttr = "data-allow-mismatch"; +const MismatchTypeString = { + [ + 0 + /* TEXT */ + ]: "text", + [ + 1 + /* CHILDREN */ + ]: "children", + [ + 2 + /* CLASS */ + ]: "class", + [ + 3 + /* STYLE */ + ]: "style", + [ + 4 + /* ATTRIBUTE */ + ]: "attribute" +}; +function isMismatchAllowed(el, allowedType) { + if (allowedType === 0 || allowedType === 1) { + while (el && !el.hasAttribute(allowMismatchAttr)) { + el = el.parentElement; + } + } + const allowedAttr = el && el.getAttribute(allowMismatchAttr); + if (allowedAttr == null) { + return false; + } else if (allowedAttr === "") { + return true; + } else { + const list = allowedAttr.split(","); + if (allowedType === 0 && list.includes("children")) { + return true; + } + return allowedAttr.split(",").includes(MismatchTypeString[allowedType]); + } +} +function forEachElement(node, cb) { + if (isComment(node) && node.data === "[") { + let depth = 1; + let next = node.nextSibling; + while (next) { + if (next.nodeType === 1) { + cb(next); + } else if (isComment(next)) { + if (next.data === "]") { + if (--depth === 0) break; + } else if (next.data === "[") { + depth++; + } + } + next = next.nextSibling; + } + } else { + cb(node); + } +} +const isAsyncWrapper = (i) => !!i.type.__asyncLoader; +/*! #__NO_SIDE_EFFECTS__ */ +// @__NO_SIDE_EFFECTS__ +function defineAsyncComponent(source) { + if (isFunction(source)) { + source = { loader: source }; + } + const { + loader, + loadingComponent, + errorComponent, + delay = 200, + hydrate: hydrateStrategy, + timeout, + // undefined = never times out + suspensible = true, + onError: userOnError + } = source; + let pendingRequest = null; + let resolvedComp; + let retries = 0; + const retry = () => { + retries++; + pendingRequest = null; + return load(); + }; + const load = () => { + let thisRequest; + return pendingRequest || (thisRequest = pendingRequest = loader().catch((err) => { + err = err instanceof Error ? err : new Error(String(err)); + if (userOnError) { + return new Promise((resolve2, reject) => { + const userRetry = () => resolve2(retry()); + const userFail = () => reject(err); + userOnError(err, userRetry, userFail, retries + 1); + }); + } else { + throw err; + } + }).then((comp) => { + if (thisRequest !== pendingRequest && pendingRequest) { + return pendingRequest; + } + if (comp && (comp.__esModule || comp[Symbol.toStringTag] === "Module")) { + comp = comp.default; + } + resolvedComp = comp; + return comp; + })); + }; + return /* @__PURE__ */ defineComponent({ + name: "AsyncComponentWrapper", + __asyncLoader: load, + __asyncHydrate(el, instance, hydrate) { + const doHydrate = hydrateStrategy ? () => { + const teardown = hydrateStrategy( + hydrate, + (cb) => forEachElement(el, cb) + ); + if (teardown) { + (instance.bum || (instance.bum = [])).push(teardown); + } + } : hydrate; + if (resolvedComp) { + doHydrate(); + } else { + load().then(() => !instance.isUnmounted && doHydrate()); + } + }, + get __asyncResolved() { + return resolvedComp; + }, + setup() { + const instance = currentInstance; + markAsyncBoundary(instance); + if (resolvedComp) { + return () => createInnerComp(resolvedComp, instance); + } + const onError = (err) => { + pendingRequest = null; + handleError( + err, + instance, + 13, + !errorComponent + ); + }; + if (suspensible && instance.suspense || isInSSRComponentSetup) { + return load().then((comp) => { + return () => createInnerComp(comp, instance); + }).catch((err) => { + onError(err); + return () => errorComponent ? createVNode(errorComponent, { + error: err + }) : null; + }); + } + const loaded = ref(false); + const error = ref(); + const delayed = ref(!!delay); + if (delay) { + setTimeout(() => { + delayed.value = false; + }, delay); + } + if (timeout != null) { + setTimeout(() => { + if (!loaded.value && !error.value) { + const err = new Error( + `Async component timed out after ${timeout}ms.` + ); + onError(err); + error.value = err; + } + }, timeout); + } + load().then(() => { + loaded.value = true; + if (instance.parent && isKeepAlive(instance.parent.vnode)) { + queueJob(instance.parent.update); + } + }).catch((err) => { + onError(err); + error.value = err; + }); + return () => { + if (loaded.value && resolvedComp) { + return createInnerComp(resolvedComp, instance); + } else if (error.value && errorComponent) { + return createVNode(errorComponent, { + error: error.value + }); + } else if (loadingComponent && !delayed.value) { + return createVNode(loadingComponent); + } + }; + } + }); +} +function createInnerComp(comp, parent) { + const { ref: ref22, props, children, ce } = parent.vnode; + const vnode = createVNode(comp, props, children); + vnode.ref = ref22; + vnode.ce = ce; + delete parent.vnode.ce; + return vnode; +} +const isKeepAlive = (vnode) => vnode.type.__isKeepAlive; +function onActivated(hook, target) { + registerKeepAliveHook(hook, "a", target); +} +function onDeactivated(hook, target) { + registerKeepAliveHook(hook, "da", target); +} +function registerKeepAliveHook(hook, type, target = currentInstance) { + const wrappedHook = hook.__wdc || (hook.__wdc = () => { + let current = target; + while (current) { + if (current.isDeactivated) { + return; + } + current = current.parent; + } + return hook(); + }); + injectHook(type, wrappedHook, target); + if (target) { + let current = target.parent; + while (current && current.parent) { + if (isKeepAlive(current.parent.vnode)) { + injectToKeepAliveRoot(wrappedHook, type, target, current); + } + current = current.parent; + } + } +} +function injectToKeepAliveRoot(hook, type, target, keepAliveRoot) { + const injected = injectHook( + type, + hook, + keepAliveRoot, + true + /* prepend */ + ); + onUnmounted(() => { + remove(keepAliveRoot[type], injected); + }, target); +} +function injectHook(type, hook, target = currentInstance, prepend = false) { + if (target) { + const hooks = target[type] || (target[type] = []); + const wrappedHook = hook.__weh || (hook.__weh = (...args) => { + pauseTracking(); + const reset = setCurrentInstance(target); + const res = callWithAsyncErrorHandling(hook, target, type, args); + reset(); + resetTracking(); + return res; + }); + if (prepend) { + hooks.unshift(wrappedHook); + } else { + hooks.push(wrappedHook); + } + return wrappedHook; + } +} +const createHook = (lifecycle) => (hook, target = currentInstance) => { + if (!isInSSRComponentSetup || lifecycle === "sp") { + injectHook(lifecycle, (...args) => hook(...args), target); + } +}; +const onBeforeMount = createHook("bm"); +const onMounted = createHook("m"); +const onBeforeUpdate = createHook( + "bu" +); +const onUpdated = createHook("u"); +const onBeforeUnmount = createHook( + "bum" +); +const onUnmounted = createHook("um"); +const onServerPrefetch = createHook( + "sp" +); +const onRenderTriggered = createHook("rtg"); +const onRenderTracked = createHook("rtc"); +function onErrorCaptured(hook, target = currentInstance) { + injectHook("ec", hook, target); +} +const COMPONENTS = "components"; +function resolveComponent(name, maybeSelfReference) { + return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name; +} +const NULL_DYNAMIC_COMPONENT = Symbol.for("v-ndc"); +function resolveDynamicComponent(component) { + if (isString(component)) { + return resolveAsset(COMPONENTS, component, false) || component; + } else { + return component || NULL_DYNAMIC_COMPONENT; + } +} +function resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) { + const instance = currentRenderingInstance || currentInstance; + if (instance) { + const Component = instance.type; + { + const selfName = getComponentName( + Component, + false + ); + if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize(camelize(name)))) { + return Component; + } + } + const res = ( + // local registration + // check instance[type] first which is resolved for options API + resolve(instance[type] || Component[type], name) || // global registration + resolve(instance.appContext[type], name) + ); + if (!res && maybeSelfReference) { + return Component; + } + return res; + } +} +function resolve(registry, name) { + return registry && (registry[name] || registry[camelize(name)] || registry[capitalize(camelize(name))]); +} +function renderList(source, renderItem, cache, index) { + let ret; + const cached = cache; + const sourceIsArray = isArray(source); + if (sourceIsArray || isString(source)) { + const sourceIsReactiveArray = sourceIsArray && isReactive(source); + if (sourceIsReactiveArray) { + source = shallowReadArray(source); + } + ret = new Array(source.length); + for (let i = 0, l = source.length; i < l; i++) { + ret[i] = renderItem( + sourceIsReactiveArray ? toReactive(source[i]) : source[i], + i, + void 0, + cached + ); + } + } else if (typeof source === "number") { + ret = new Array(source); + for (let i = 0; i < source; i++) { + ret[i] = renderItem(i + 1, i, void 0, cached); + } + } else if (isObject$1(source)) { + if (source[Symbol.iterator]) { + ret = Array.from( + source, + (item, i) => renderItem(item, i, void 0, cached) + ); + } else { + const keys = Object.keys(source); + ret = new Array(keys.length); + for (let i = 0, l = keys.length; i < l; i++) { + const key = keys[i]; + ret[i] = renderItem(source[key], key, i, cached); + } + } + } else { + ret = []; + } + return ret; +} +function renderSlot(slots, name, props = {}, fallback, noSlotted) { + if (currentRenderingInstance.ce || currentRenderingInstance.parent && isAsyncWrapper(currentRenderingInstance.parent) && currentRenderingInstance.parent.ce) { + if (name !== "default") props.name = name; + return openBlock(), createBlock( + Fragment, + null, + [createVNode("slot", props, fallback && fallback())], + 64 + ); + } + let slot = slots[name]; + if (slot && slot._c) { + slot._d = false; + } + openBlock(); + const validSlotContent = slot && ensureValidVNode(slot(props)); + const rendered = createBlock( + Fragment, + { + key: (props.key || // slot content array of a dynamic conditional slot may have a branch + // key attached in the `createSlots` helper, respect that + validSlotContent && validSlotContent.key || `_${name}`) + // #7256 force differentiate fallback content from actual content + (!validSlotContent && fallback ? "_fb" : "") + }, + validSlotContent || (fallback ? fallback() : []), + validSlotContent && slots._ === 1 ? 64 : -2 + ); + if (!noSlotted && rendered.scopeId) { + rendered.slotScopeIds = [rendered.scopeId + "-s"]; + } + if (slot && slot._c) { + slot._d = true; + } + return rendered; +} +function ensureValidVNode(vnodes) { + return vnodes.some((child) => { + if (!isVNode(child)) return true; + if (child.type === Comment) return false; + if (child.type === Fragment && !ensureValidVNode(child.children)) + return false; + return true; + }) ? vnodes : null; +} +function toHandlers(obj, preserveCaseIfNecessary) { + const ret = {}; + for (const key in obj) { + ret[/[A-Z]/.test(key) ? `on:${key}` : toHandlerKey(key)] = obj[key]; + } + return ret; +} +const getPublicInstance = (i) => { + if (!i) return null; + if (isStatefulComponent(i)) return getComponentPublicInstance(i); + return getPublicInstance(i.parent); +}; +const publicPropertiesMap = ( + // Move PURE marker to new line to workaround compiler discarding it + // due to type annotation + /* @__PURE__ */ extend(/* @__PURE__ */ Object.create(null), { + $: (i) => i, + $el: (i) => i.vnode.el, + $data: (i) => i.data, + $props: (i) => i.props, + $attrs: (i) => i.attrs, + $slots: (i) => i.slots, + $refs: (i) => i.refs, + $parent: (i) => getPublicInstance(i.parent), + $root: (i) => getPublicInstance(i.root), + $host: (i) => i.ce, + $emit: (i) => i.emit, + $options: (i) => resolveMergedOptions(i), + $forceUpdate: (i) => i.f || (i.f = () => { + queueJob(i.update); + }), + $nextTick: (i) => i.n || (i.n = nextTick.bind(i.proxy)), + $watch: (i) => instanceWatch.bind(i) + }) +); +const hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key); +const PublicInstanceProxyHandlers = { + get({ _: instance }, key) { + if (key === "__v_skip") { + return true; + } + const { ctx, setupState, data, props, accessCache, type, appContext } = instance; + let normalizedProps; + if (key[0] !== "$") { + const n = accessCache[key]; + if (n !== void 0) { + switch (n) { + case 1: + return setupState[key]; + case 2: + return data[key]; + case 4: + return ctx[key]; + case 3: + return props[key]; + } + } else if (hasSetupBinding(setupState, key)) { + accessCache[key] = 1; + return setupState[key]; + } else if (data !== EMPTY_OBJ && hasOwn(data, key)) { + accessCache[key] = 2; + return data[key]; + } else if ( + // only cache other properties when instance has declared (thus stable) + // props + (normalizedProps = instance.propsOptions[0]) && hasOwn(normalizedProps, key) + ) { + accessCache[key] = 3; + return props[key]; + } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) { + accessCache[key] = 4; + return ctx[key]; + } else if (shouldCacheAccess) { + accessCache[key] = 0; + } + } + const publicGetter = publicPropertiesMap[key]; + let cssModule, globalProperties; + if (publicGetter) { + if (key === "$attrs") { + track(instance.attrs, "get", ""); + } + return publicGetter(instance); + } else if ( + // css module (injected by vue-loader) + (cssModule = type.__cssModules) && (cssModule = cssModule[key]) + ) { + return cssModule; + } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) { + accessCache[key] = 4; + return ctx[key]; + } else if ( + // global properties + globalProperties = appContext.config.globalProperties, hasOwn(globalProperties, key) + ) { + { + return globalProperties[key]; + } + } else ; + }, + set({ _: instance }, key, value) { + const { data, setupState, ctx } = instance; + if (hasSetupBinding(setupState, key)) { + setupState[key] = value; + return true; + } else if (data !== EMPTY_OBJ && hasOwn(data, key)) { + data[key] = value; + return true; + } else if (hasOwn(instance.props, key)) { + return false; + } + if (key[0] === "$" && key.slice(1) in instance) { + return false; + } else { + { + ctx[key] = value; + } + } + return true; + }, + has({ + _: { data, setupState, accessCache, ctx, appContext, propsOptions } + }, key) { + let normalizedProps; + return !!accessCache[key] || data !== EMPTY_OBJ && hasOwn(data, key) || hasSetupBinding(setupState, key) || (normalizedProps = propsOptions[0]) && hasOwn(normalizedProps, key) || hasOwn(ctx, key) || hasOwn(publicPropertiesMap, key) || hasOwn(appContext.config.globalProperties, key); + }, + defineProperty(target, key, descriptor) { + if (descriptor.get != null) { + target._.accessCache[key] = 0; + } else if (hasOwn(descriptor, "value")) { + this.set(target, key, descriptor.value, null); + } + return Reflect.defineProperty(target, key, descriptor); + } +}; +function useSlots() { + return getContext().slots; +} +function getContext() { + const i = getCurrentInstance(); + return i.setupContext || (i.setupContext = createSetupContext(i)); +} +function normalizePropsOrEmits(props) { + return isArray(props) ? props.reduce( + (normalized, p2) => (normalized[p2] = null, normalized), + {} + ) : props; +} +let shouldCacheAccess = true; +function applyOptions(instance) { + const options = resolveMergedOptions(instance); + const publicThis = instance.proxy; + const ctx = instance.ctx; + shouldCacheAccess = false; + if (options.beforeCreate) { + callHook$1(options.beforeCreate, instance, "bc"); + } + const { + // state + data: dataOptions, + computed: computedOptions, + methods, + watch: watchOptions, + provide: provideOptions, + inject: injectOptions, + // lifecycle + created, + beforeMount, + mounted, + beforeUpdate, + updated, + activated, + deactivated, + beforeDestroy, + beforeUnmount, + destroyed, + unmounted, + render, + renderTracked, + renderTriggered, + errorCaptured, + serverPrefetch, + // public API + expose, + inheritAttrs, + // assets + components, + directives, + filters + } = options; + const checkDuplicateProperties = null; + if (injectOptions) { + resolveInjections(injectOptions, ctx, checkDuplicateProperties); + } + if (methods) { + for (const key in methods) { + const methodHandler = methods[key]; + if (isFunction(methodHandler)) { + { + ctx[key] = methodHandler.bind(publicThis); + } + } + } + } + if (dataOptions) { + const data = dataOptions.call(publicThis, publicThis); + if (!isObject$1(data)) ; + else { + instance.data = reactive(data); + } + } + shouldCacheAccess = true; + if (computedOptions) { + for (const key in computedOptions) { + const opt = computedOptions[key]; + const get2 = isFunction(opt) ? opt.bind(publicThis, publicThis) : isFunction(opt.get) ? opt.get.bind(publicThis, publicThis) : NOOP; + const set2 = !isFunction(opt) && isFunction(opt.set) ? opt.set.bind(publicThis) : NOOP; + const c = computed({ + get: get2, + set: set2 + }); + Object.defineProperty(ctx, key, { + enumerable: true, + configurable: true, + get: () => c.value, + set: (v) => c.value = v + }); + } + } + if (watchOptions) { + for (const key in watchOptions) { + createWatcher(watchOptions[key], ctx, publicThis, key); + } + } + if (provideOptions) { + const provides = isFunction(provideOptions) ? provideOptions.call(publicThis) : provideOptions; + Reflect.ownKeys(provides).forEach((key) => { + provide(key, provides[key]); + }); + } + if (created) { + callHook$1(created, instance, "c"); + } + function registerLifecycleHook(register, hook) { + if (isArray(hook)) { + hook.forEach((_hook) => register(_hook.bind(publicThis))); + } else if (hook) { + register(hook.bind(publicThis)); + } + } + registerLifecycleHook(onBeforeMount, beforeMount); + registerLifecycleHook(onMounted, mounted); + registerLifecycleHook(onBeforeUpdate, beforeUpdate); + registerLifecycleHook(onUpdated, updated); + registerLifecycleHook(onActivated, activated); + registerLifecycleHook(onDeactivated, deactivated); + registerLifecycleHook(onErrorCaptured, errorCaptured); + registerLifecycleHook(onRenderTracked, renderTracked); + registerLifecycleHook(onRenderTriggered, renderTriggered); + registerLifecycleHook(onBeforeUnmount, beforeUnmount); + registerLifecycleHook(onUnmounted, unmounted); + registerLifecycleHook(onServerPrefetch, serverPrefetch); + if (isArray(expose)) { + if (expose.length) { + const exposed = instance.exposed || (instance.exposed = {}); + expose.forEach((key) => { + Object.defineProperty(exposed, key, { + get: () => publicThis[key], + set: (val) => publicThis[key] = val + }); + }); + } else if (!instance.exposed) { + instance.exposed = {}; + } + } + if (render && instance.render === NOOP) { + instance.render = render; + } + if (inheritAttrs != null) { + instance.inheritAttrs = inheritAttrs; + } + if (components) instance.components = components; + if (directives) instance.directives = directives; + if (serverPrefetch) { + markAsyncBoundary(instance); + } +} +function resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP) { + if (isArray(injectOptions)) { + injectOptions = normalizeInject(injectOptions); + } + for (const key in injectOptions) { + const opt = injectOptions[key]; + let injected; + if (isObject$1(opt)) { + if ("default" in opt) { + injected = inject( + opt.from || key, + opt.default, + true + ); + } else { + injected = inject(opt.from || key); + } + } else { + injected = inject(opt); + } + if (isRef(injected)) { + Object.defineProperty(ctx, key, { + enumerable: true, + configurable: true, + get: () => injected.value, + set: (v) => injected.value = v + }); + } else { + ctx[key] = injected; + } + } +} +function callHook$1(hook, instance, type) { + callWithAsyncErrorHandling( + isArray(hook) ? hook.map((h2) => h2.bind(instance.proxy)) : hook.bind(instance.proxy), + instance, + type + ); +} +function createWatcher(raw, ctx, publicThis, key) { + let getter = key.includes(".") ? createPathGetter(publicThis, key) : () => publicThis[key]; + if (isString(raw)) { + const handler = ctx[raw]; + if (isFunction(handler)) { + { + watch(getter, handler); + } + } + } else if (isFunction(raw)) { + { + watch(getter, raw.bind(publicThis)); + } + } else if (isObject$1(raw)) { + if (isArray(raw)) { + raw.forEach((r) => createWatcher(r, ctx, publicThis, key)); + } else { + const handler = isFunction(raw.handler) ? raw.handler.bind(publicThis) : ctx[raw.handler]; + if (isFunction(handler)) { + watch(getter, handler, raw); + } + } + } else ; +} +function resolveMergedOptions(instance) { + const base = instance.type; + const { mixins, extends: extendsOptions } = base; + const { + mixins: globalMixins, + optionsCache: cache, + config: { optionMergeStrategies } + } = instance.appContext; + const cached = cache.get(base); + let resolved; + if (cached) { + resolved = cached; + } else if (!globalMixins.length && !mixins && !extendsOptions) { + { + resolved = base; + } + } else { + resolved = {}; + if (globalMixins.length) { + globalMixins.forEach( + (m) => mergeOptions(resolved, m, optionMergeStrategies, true) + ); + } + mergeOptions(resolved, base, optionMergeStrategies); + } + if (isObject$1(base)) { + cache.set(base, resolved); + } + return resolved; +} +function mergeOptions(to, from, strats, asMixin = false) { + const { mixins, extends: extendsOptions } = from; + if (extendsOptions) { + mergeOptions(to, extendsOptions, strats, true); + } + if (mixins) { + mixins.forEach( + (m) => mergeOptions(to, m, strats, true) + ); + } + for (const key in from) { + if (asMixin && key === "expose") ; + else { + const strat = internalOptionMergeStrats[key] || strats && strats[key]; + to[key] = strat ? strat(to[key], from[key]) : from[key]; + } + } + return to; +} +const internalOptionMergeStrats = { + data: mergeDataFn, + props: mergeEmitsOrPropsOptions, + emits: mergeEmitsOrPropsOptions, + // objects + methods: mergeObjectOptions, + computed: mergeObjectOptions, + // lifecycle + beforeCreate: mergeAsArray, + created: mergeAsArray, + beforeMount: mergeAsArray, + mounted: mergeAsArray, + beforeUpdate: mergeAsArray, + updated: mergeAsArray, + beforeDestroy: mergeAsArray, + beforeUnmount: mergeAsArray, + destroyed: mergeAsArray, + unmounted: mergeAsArray, + activated: mergeAsArray, + deactivated: mergeAsArray, + errorCaptured: mergeAsArray, + serverPrefetch: mergeAsArray, + // assets + components: mergeObjectOptions, + directives: mergeObjectOptions, + // watch + watch: mergeWatchOptions, + // provide / inject + provide: mergeDataFn, + inject: mergeInject +}; +function mergeDataFn(to, from) { + if (!from) { + return to; + } + if (!to) { + return from; + } + return function mergedDataFn() { + return extend( + isFunction(to) ? to.call(this, this) : to, + isFunction(from) ? from.call(this, this) : from + ); + }; +} +function mergeInject(to, from) { + return mergeObjectOptions(normalizeInject(to), normalizeInject(from)); +} +function normalizeInject(raw) { + if (isArray(raw)) { + const res = {}; + for (let i = 0; i < raw.length; i++) { + res[raw[i]] = raw[i]; + } + return res; + } + return raw; +} +function mergeAsArray(to, from) { + return to ? [...new Set([].concat(to, from))] : from; +} +function mergeObjectOptions(to, from) { + return to ? extend(/* @__PURE__ */ Object.create(null), to, from) : from; +} +function mergeEmitsOrPropsOptions(to, from) { + if (to) { + if (isArray(to) && isArray(from)) { + return [.../* @__PURE__ */ new Set([...to, ...from])]; + } + return extend( + /* @__PURE__ */ Object.create(null), + normalizePropsOrEmits(to), + normalizePropsOrEmits(from != null ? from : {}) + ); + } else { + return from; + } +} +function mergeWatchOptions(to, from) { + if (!to) return from; + if (!from) return to; + const merged = extend(/* @__PURE__ */ Object.create(null), to); + for (const key in from) { + merged[key] = mergeAsArray(to[key], from[key]); + } + return merged; +} +function createAppContext() { + return { + app: null, + config: { + isNativeTag: NO, + performance: false, + globalProperties: {}, + optionMergeStrategies: {}, + errorHandler: void 0, + warnHandler: void 0, + compilerOptions: {} + }, + mixins: [], + components: {}, + directives: {}, + provides: /* @__PURE__ */ Object.create(null), + optionsCache: /* @__PURE__ */ new WeakMap(), + propsCache: /* @__PURE__ */ new WeakMap(), + emitsCache: /* @__PURE__ */ new WeakMap() + }; +} +let uid$1 = 0; +function createAppAPI(render, hydrate) { + return function createApp2(rootComponent, rootProps = null) { + if (!isFunction(rootComponent)) { + rootComponent = extend({}, rootComponent); + } + if (rootProps != null && !isObject$1(rootProps)) { + rootProps = null; + } + const context = createAppContext(); + const installedPlugins = /* @__PURE__ */ new WeakSet(); + const pluginCleanupFns = []; + let isMounted = false; + const app = context.app = { + _uid: uid$1++, + _component: rootComponent, + _props: rootProps, + _container: null, + _context: context, + _instance: null, + version, + get config() { + return context.config; + }, + set config(v) { + }, + use(plugin, ...options) { + if (installedPlugins.has(plugin)) ; + else if (plugin && isFunction(plugin.install)) { + installedPlugins.add(plugin); + plugin.install(app, ...options); + } else if (isFunction(plugin)) { + installedPlugins.add(plugin); + plugin(app, ...options); + } else ; + return app; + }, + mixin(mixin) { + { + if (!context.mixins.includes(mixin)) { + context.mixins.push(mixin); + } + } + return app; + }, + component(name, component) { + if (!component) { + return context.components[name]; + } + context.components[name] = component; + return app; + }, + directive(name, directive) { + if (!directive) { + return context.directives[name]; + } + context.directives[name] = directive; + return app; + }, + mount(rootContainer, isHydrate, namespace) { + if (!isMounted) { + const vnode = app._ceVNode || createVNode(rootComponent, rootProps); + vnode.appContext = context; + if (namespace === true) { + namespace = "svg"; + } else if (namespace === false) { + namespace = void 0; + } + if (isHydrate && hydrate) { + hydrate(vnode, rootContainer); + } else { + render(vnode, rootContainer, namespace); + } + isMounted = true; + app._container = rootContainer; + rootContainer.__vue_app__ = app; + return getComponentPublicInstance(vnode.component); + } + }, + onUnmount(cleanupFn) { + pluginCleanupFns.push(cleanupFn); + }, + unmount() { + if (isMounted) { + callWithAsyncErrorHandling( + pluginCleanupFns, + app._instance, + 16 + ); + render(null, app._container); + delete app._container.__vue_app__; + } + }, + provide(key, value) { + context.provides[key] = value; + return app; + }, + runWithContext(fn) { + const lastApp = currentApp; + currentApp = app; + try { + return fn(); + } finally { + currentApp = lastApp; + } + } + }; + return app; + }; +} +let currentApp = null; +function provide(key, value) { + if (!currentInstance) ; + else { + let provides = currentInstance.provides; + const parentProvides = currentInstance.parent && currentInstance.parent.provides; + if (parentProvides === provides) { + provides = currentInstance.provides = Object.create(parentProvides); + } + provides[key] = value; + } +} +function inject(key, defaultValue, treatDefaultAsFactory = false) { + const instance = currentInstance || currentRenderingInstance; + if (instance || currentApp) { + const provides = currentApp ? currentApp._context.provides : instance ? instance.parent == null ? instance.vnode.appContext && instance.vnode.appContext.provides : instance.parent.provides : void 0; + if (provides && key in provides) { + return provides[key]; + } else if (arguments.length > 1) { + return treatDefaultAsFactory && isFunction(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue; + } else ; + } +} +const internalObjectProto = {}; +const createInternalObject = () => Object.create(internalObjectProto); +const isInternalObject = (obj) => Object.getPrototypeOf(obj) === internalObjectProto; +function initProps(instance, rawProps, isStateful, isSSR = false) { + const props = {}; + const attrs = createInternalObject(); + instance.propsDefaults = /* @__PURE__ */ Object.create(null); + setFullProps(instance, rawProps, props, attrs); + for (const key in instance.propsOptions[0]) { + if (!(key in props)) { + props[key] = void 0; + } + } + if (isStateful) { + instance.props = isSSR ? props : shallowReactive(props); + } else { + if (!instance.type.props) { + instance.props = attrs; + } else { + instance.props = props; + } + } + instance.attrs = attrs; +} +function updateProps(instance, rawProps, rawPrevProps, optimized) { + const { + props, + attrs, + vnode: { patchFlag } + } = instance; + const rawCurrentProps = toRaw(props); + const [options] = instance.propsOptions; + let hasAttrsChanged = false; + if ( + // always force full diff in dev + // - #1942 if hmr is enabled with sfc component + // - vite#872 non-sfc component used by sfc component + (optimized || patchFlag > 0) && !(patchFlag & 16) + ) { + if (patchFlag & 8) { + const propsToUpdate = instance.vnode.dynamicProps; + for (let i = 0; i < propsToUpdate.length; i++) { + let key = propsToUpdate[i]; + if (isEmitListener(instance.emitsOptions, key)) { + continue; + } + const value = rawProps[key]; + if (options) { + if (hasOwn(attrs, key)) { + if (value !== attrs[key]) { + attrs[key] = value; + hasAttrsChanged = true; + } + } else { + const camelizedKey = camelize(key); + props[camelizedKey] = resolvePropValue( + options, + rawCurrentProps, + camelizedKey, + value, + instance, + false + ); + } + } else { + if (value !== attrs[key]) { + attrs[key] = value; + hasAttrsChanged = true; + } + } + } + } + } else { + if (setFullProps(instance, rawProps, props, attrs)) { + hasAttrsChanged = true; + } + let kebabKey; + for (const key in rawCurrentProps) { + if (!rawProps || // for camelCase + !hasOwn(rawProps, key) && // it's possible the original props was passed in as kebab-case + // and converted to camelCase (#955) + ((kebabKey = hyphenate(key)) === key || !hasOwn(rawProps, kebabKey))) { + if (options) { + if (rawPrevProps && // for camelCase + (rawPrevProps[key] !== void 0 || // for kebab-case + rawPrevProps[kebabKey] !== void 0)) { + props[key] = resolvePropValue( + options, + rawCurrentProps, + key, + void 0, + instance, + true + ); + } + } else { + delete props[key]; + } + } + } + if (attrs !== rawCurrentProps) { + for (const key in attrs) { + if (!rawProps || !hasOwn(rawProps, key) && true) { + delete attrs[key]; + hasAttrsChanged = true; + } + } + } + } + if (hasAttrsChanged) { + trigger(instance.attrs, "set", ""); + } +} +function setFullProps(instance, rawProps, props, attrs) { + const [options, needCastKeys] = instance.propsOptions; + let hasAttrsChanged = false; + let rawCastValues; + if (rawProps) { + for (let key in rawProps) { + if (isReservedProp(key)) { + continue; + } + const value = rawProps[key]; + let camelKey; + if (options && hasOwn(options, camelKey = camelize(key))) { + if (!needCastKeys || !needCastKeys.includes(camelKey)) { + props[camelKey] = value; + } else { + (rawCastValues || (rawCastValues = {}))[camelKey] = value; + } + } else if (!isEmitListener(instance.emitsOptions, key)) { + if (!(key in attrs) || value !== attrs[key]) { + attrs[key] = value; + hasAttrsChanged = true; + } + } + } + } + if (needCastKeys) { + const rawCurrentProps = toRaw(props); + const castValues = rawCastValues || EMPTY_OBJ; + for (let i = 0; i < needCastKeys.length; i++) { + const key = needCastKeys[i]; + props[key] = resolvePropValue( + options, + rawCurrentProps, + key, + castValues[key], + instance, + !hasOwn(castValues, key) + ); + } + } + return hasAttrsChanged; +} +function resolvePropValue(options, props, key, value, instance, isAbsent) { + const opt = options[key]; + if (opt != null) { + const hasDefault = hasOwn(opt, "default"); + if (hasDefault && value === void 0) { + const defaultValue = opt.default; + if (opt.type !== Function && !opt.skipFactory && isFunction(defaultValue)) { + const { propsDefaults } = instance; + if (key in propsDefaults) { + value = propsDefaults[key]; + } else { + const reset = setCurrentInstance(instance); + value = propsDefaults[key] = defaultValue.call( + null, + props + ); + reset(); + } + } else { + value = defaultValue; + } + if (instance.ce) { + instance.ce._setProp(key, value); + } + } + if (opt[ + 0 + /* shouldCast */ + ]) { + if (isAbsent && !hasDefault) { + value = false; + } else if (opt[ + 1 + /* shouldCastTrue */ + ] && (value === "" || value === hyphenate(key))) { + value = true; + } + } + } + return value; +} +const mixinPropsCache = /* @__PURE__ */ new WeakMap(); +function normalizePropsOptions(comp, appContext, asMixin = false) { + const cache = asMixin ? mixinPropsCache : appContext.propsCache; + const cached = cache.get(comp); + if (cached) { + return cached; + } + const raw = comp.props; + const normalized = {}; + const needCastKeys = []; + let hasExtends = false; + if (!isFunction(comp)) { + const extendProps = (raw2) => { + hasExtends = true; + const [props, keys] = normalizePropsOptions(raw2, appContext, true); + extend(normalized, props); + if (keys) needCastKeys.push(...keys); + }; + if (!asMixin && appContext.mixins.length) { + appContext.mixins.forEach(extendProps); + } + if (comp.extends) { + extendProps(comp.extends); + } + if (comp.mixins) { + comp.mixins.forEach(extendProps); + } + } + if (!raw && !hasExtends) { + if (isObject$1(comp)) { + cache.set(comp, EMPTY_ARR); + } + return EMPTY_ARR; + } + if (isArray(raw)) { + for (let i = 0; i < raw.length; i++) { + const normalizedKey = camelize(raw[i]); + if (validatePropName(normalizedKey)) { + normalized[normalizedKey] = EMPTY_OBJ; + } + } + } else if (raw) { + for (const key in raw) { + const normalizedKey = camelize(key); + if (validatePropName(normalizedKey)) { + const opt = raw[key]; + const prop = normalized[normalizedKey] = isArray(opt) || isFunction(opt) ? { type: opt } : extend({}, opt); + const propType = prop.type; + let shouldCast = false; + let shouldCastTrue = true; + if (isArray(propType)) { + for (let index = 0; index < propType.length; ++index) { + const type = propType[index]; + const typeName = isFunction(type) && type.name; + if (typeName === "Boolean") { + shouldCast = true; + break; + } else if (typeName === "String") { + shouldCastTrue = false; + } + } + } else { + shouldCast = isFunction(propType) && propType.name === "Boolean"; + } + prop[ + 0 + /* shouldCast */ + ] = shouldCast; + prop[ + 1 + /* shouldCastTrue */ + ] = shouldCastTrue; + if (shouldCast || hasOwn(prop, "default")) { + needCastKeys.push(normalizedKey); + } + } + } + } + const res = [normalized, needCastKeys]; + if (isObject$1(comp)) { + cache.set(comp, res); + } + return res; +} +function validatePropName(key) { + if (key[0] !== "$" && !isReservedProp(key)) { + return true; + } + return false; +} +const isInternalKey = (key) => key[0] === "_" || key === "$stable"; +const normalizeSlotValue = (value) => isArray(value) ? value.map(normalizeVNode) : [normalizeVNode(value)]; +const normalizeSlot = (key, rawSlot, ctx) => { + if (rawSlot._n) { + return rawSlot; + } + const normalized = withCtx((...args) => { + if (false) ; + return normalizeSlotValue(rawSlot(...args)); + }, ctx); + normalized._c = false; + return normalized; +}; +const normalizeObjectSlots = (rawSlots, slots, instance) => { + const ctx = rawSlots._ctx; + for (const key in rawSlots) { + if (isInternalKey(key)) continue; + const value = rawSlots[key]; + if (isFunction(value)) { + slots[key] = normalizeSlot(key, value, ctx); + } else if (value != null) { + const normalized = normalizeSlotValue(value); + slots[key] = () => normalized; + } + } +}; +const normalizeVNodeSlots = (instance, children) => { + const normalized = normalizeSlotValue(children); + instance.slots.default = () => normalized; +}; +const assignSlots = (slots, children, optimized) => { + for (const key in children) { + if (optimized || key !== "_") { + slots[key] = children[key]; + } + } +}; +const initSlots = (instance, children, optimized) => { + const slots = instance.slots = createInternalObject(); + if (instance.vnode.shapeFlag & 32) { + const type = children._; + if (type) { + assignSlots(slots, children, optimized); + if (optimized) { + def(slots, "_", type, true); + } + } else { + normalizeObjectSlots(children, slots); + } + } else if (children) { + normalizeVNodeSlots(instance, children); + } +}; +const updateSlots = (instance, children, optimized) => { + const { vnode, slots } = instance; + let needDeletionCheck = true; + let deletionComparisonTarget = EMPTY_OBJ; + if (vnode.shapeFlag & 32) { + const type = children._; + if (type) { + if (optimized && type === 1) { + needDeletionCheck = false; + } else { + assignSlots(slots, children, optimized); + } + } else { + needDeletionCheck = !children.$stable; + normalizeObjectSlots(children, slots); + } + deletionComparisonTarget = children; + } else if (children) { + normalizeVNodeSlots(instance, children); + deletionComparisonTarget = { default: 1 }; + } + if (needDeletionCheck) { + for (const key in slots) { + if (!isInternalKey(key) && deletionComparisonTarget[key] == null) { + delete slots[key]; + } + } + } +}; +const queuePostRenderEffect = queueEffectWithSuspense; +function createRenderer(options) { + return baseCreateRenderer(options); +} +function createHydrationRenderer(options) { + return baseCreateRenderer(options, createHydrationFunctions); +} +function baseCreateRenderer(options, createHydrationFns) { + const target = getGlobalThis(); + target.__VUE__ = true; + const { + insert: hostInsert, + remove: hostRemove, + patchProp: hostPatchProp, + createElement: hostCreateElement, + createText: hostCreateText, + createComment: hostCreateComment, + setText: hostSetText, + setElementText: hostSetElementText, + parentNode: hostParentNode, + nextSibling: hostNextSibling, + setScopeId: hostSetScopeId = NOOP, + insertStaticContent: hostInsertStaticContent + } = options; + const patch = (n1, n2, container, anchor = null, parentComponent = null, parentSuspense = null, namespace = void 0, slotScopeIds = null, optimized = !!n2.dynamicChildren) => { + if (n1 === n2) { + return; + } + if (n1 && !isSameVNodeType(n1, n2)) { + anchor = getNextHostNode(n1); + unmount(n1, parentComponent, parentSuspense, true); + n1 = null; + } + if (n2.patchFlag === -2) { + optimized = false; + n2.dynamicChildren = null; + } + const { type, ref: ref3, shapeFlag } = n2; + switch (type) { + case Text: + processText(n1, n2, container, anchor); + break; + case Comment: + processCommentNode(n1, n2, container, anchor); + break; + case Static: + if (n1 == null) { + mountStaticNode(n2, container, anchor, namespace); + } + break; + case Fragment: + processFragment( + n1, + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + break; + default: + if (shapeFlag & 1) { + processElement( + n1, + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } else if (shapeFlag & 6) { + processComponent( + n1, + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } else if (shapeFlag & 64) { + type.process( + n1, + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized, + internals + ); + } else if (shapeFlag & 128) { + type.process( + n1, + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized, + internals + ); + } else ; + } + if (ref3 != null && parentComponent) { + setRef(ref3, n1 && n1.ref, parentSuspense, n2 || n1, !n2); + } + }; + const processText = (n1, n2, container, anchor) => { + if (n1 == null) { + hostInsert( + n2.el = hostCreateText(n2.children), + container, + anchor + ); + } else { + const el = n2.el = n1.el; + if (n2.children !== n1.children) { + hostSetText(el, n2.children); + } + } + }; + const processCommentNode = (n1, n2, container, anchor) => { + if (n1 == null) { + hostInsert( + n2.el = hostCreateComment(n2.children || ""), + container, + anchor + ); + } else { + n2.el = n1.el; + } + }; + const mountStaticNode = (n2, container, anchor, namespace) => { + [n2.el, n2.anchor] = hostInsertStaticContent( + n2.children, + container, + anchor, + namespace, + n2.el, + n2.anchor + ); + }; + const moveStaticNode = ({ el, anchor }, container, nextSibling) => { + let next; + while (el && el !== anchor) { + next = hostNextSibling(el); + hostInsert(el, container, nextSibling); + el = next; + } + hostInsert(anchor, container, nextSibling); + }; + const removeStaticNode = ({ el, anchor }) => { + let next; + while (el && el !== anchor) { + next = hostNextSibling(el); + hostRemove(el); + el = next; + } + hostRemove(anchor); + }; + const processElement = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { + if (n2.type === "svg") { + namespace = "svg"; + } else if (n2.type === "math") { + namespace = "mathml"; + } + if (n1 == null) { + mountElement( + n2, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } else { + patchElement( + n1, + n2, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } + }; + const mountElement = (vnode, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { + let el; + let vnodeHook; + const { props, shapeFlag, transition, dirs } = vnode; + el = vnode.el = hostCreateElement( + vnode.type, + namespace, + props && props.is, + props + ); + if (shapeFlag & 8) { + hostSetElementText(el, vnode.children); + } else if (shapeFlag & 16) { + mountChildren( + vnode.children, + el, + null, + parentComponent, + parentSuspense, + resolveChildrenNamespace(vnode, namespace), + slotScopeIds, + optimized + ); + } + if (dirs) { + invokeDirectiveHook(vnode, null, parentComponent, "created"); + } + setScopeId(el, vnode, vnode.scopeId, slotScopeIds, parentComponent); + if (props) { + for (const key in props) { + if (key !== "value" && !isReservedProp(key)) { + hostPatchProp(el, key, null, props[key], namespace, parentComponent); + } + } + if ("value" in props) { + hostPatchProp(el, "value", null, props.value, namespace); + } + if (vnodeHook = props.onVnodeBeforeMount) { + invokeVNodeHook(vnodeHook, parentComponent, vnode); + } + } + if (dirs) { + invokeDirectiveHook(vnode, null, parentComponent, "beforeMount"); + } + const needCallTransitionHooks = needTransition(parentSuspense, transition); + if (needCallTransitionHooks) { + transition.beforeEnter(el); + } + hostInsert(el, container, anchor); + if ((vnodeHook = props && props.onVnodeMounted) || needCallTransitionHooks || dirs) { + queuePostRenderEffect(() => { + vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode); + needCallTransitionHooks && transition.enter(el); + dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted"); + }, parentSuspense); + } + }; + const setScopeId = (el, vnode, scopeId, slotScopeIds, parentComponent) => { + if (scopeId) { + hostSetScopeId(el, scopeId); + } + if (slotScopeIds) { + for (let i = 0; i < slotScopeIds.length; i++) { + hostSetScopeId(el, slotScopeIds[i]); + } + } + if (parentComponent) { + let subTree = parentComponent.subTree; + if (vnode === subTree || isSuspense(subTree.type) && (subTree.ssContent === vnode || subTree.ssFallback === vnode)) { + const parentVNode = parentComponent.vnode; + setScopeId( + el, + parentVNode, + parentVNode.scopeId, + parentVNode.slotScopeIds, + parentComponent.parent + ); + } + } + }; + const mountChildren = (children, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, start = 0) => { + for (let i = start; i < children.length; i++) { + const child = children[i] = optimized ? cloneIfMounted(children[i]) : normalizeVNode(children[i]); + patch( + null, + child, + container, + anchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } + }; + const patchElement = (n1, n2, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { + const el = n2.el = n1.el; + let { patchFlag, dynamicChildren, dirs } = n2; + patchFlag |= n1.patchFlag & 16; + const oldProps = n1.props || EMPTY_OBJ; + const newProps = n2.props || EMPTY_OBJ; + let vnodeHook; + parentComponent && toggleRecurse(parentComponent, false); + if (vnodeHook = newProps.onVnodeBeforeUpdate) { + invokeVNodeHook(vnodeHook, parentComponent, n2, n1); + } + if (dirs) { + invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate"); + } + parentComponent && toggleRecurse(parentComponent, true); + if (oldProps.innerHTML && newProps.innerHTML == null || oldProps.textContent && newProps.textContent == null) { + hostSetElementText(el, ""); + } + if (dynamicChildren) { + patchBlockChildren( + n1.dynamicChildren, + dynamicChildren, + el, + parentComponent, + parentSuspense, + resolveChildrenNamespace(n2, namespace), + slotScopeIds + ); + } else if (!optimized) { + patchChildren( + n1, + n2, + el, + null, + parentComponent, + parentSuspense, + resolveChildrenNamespace(n2, namespace), + slotScopeIds, + false + ); + } + if (patchFlag > 0) { + if (patchFlag & 16) { + patchProps(el, oldProps, newProps, parentComponent, namespace); + } else { + if (patchFlag & 2) { + if (oldProps.class !== newProps.class) { + hostPatchProp(el, "class", null, newProps.class, namespace); + } + } + if (patchFlag & 4) { + hostPatchProp(el, "style", oldProps.style, newProps.style, namespace); + } + if (patchFlag & 8) { + const propsToUpdate = n2.dynamicProps; + for (let i = 0; i < propsToUpdate.length; i++) { + const key = propsToUpdate[i]; + const prev = oldProps[key]; + const next = newProps[key]; + if (next !== prev || key === "value") { + hostPatchProp(el, key, prev, next, namespace, parentComponent); + } + } + } + } + if (patchFlag & 1) { + if (n1.children !== n2.children) { + hostSetElementText(el, n2.children); + } + } + } else if (!optimized && dynamicChildren == null) { + patchProps(el, oldProps, newProps, parentComponent, namespace); + } + if ((vnodeHook = newProps.onVnodeUpdated) || dirs) { + queuePostRenderEffect(() => { + vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, n2, n1); + dirs && invokeDirectiveHook(n2, n1, parentComponent, "updated"); + }, parentSuspense); + } + }; + const patchBlockChildren = (oldChildren, newChildren, fallbackContainer, parentComponent, parentSuspense, namespace, slotScopeIds) => { + for (let i = 0; i < newChildren.length; i++) { + const oldVNode = oldChildren[i]; + const newVNode = newChildren[i]; + const container = ( + // oldVNode may be an errored async setup() component inside Suspense + // which will not have a mounted element + oldVNode.el && // - In the case of a Fragment, we need to provide the actual parent + // of the Fragment itself so it can move its children. + (oldVNode.type === Fragment || // - In the case of different nodes, there is going to be a replacement + // which also requires the correct parent container + !isSameVNodeType(oldVNode, newVNode) || // - In the case of a component, it could contain anything. + oldVNode.shapeFlag & (6 | 64)) ? hostParentNode(oldVNode.el) : ( + // In other cases, the parent container is not actually used so we + // just pass the block element here to avoid a DOM parentNode call. + fallbackContainer + ) + ); + patch( + oldVNode, + newVNode, + container, + null, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + true + ); + } + }; + const patchProps = (el, oldProps, newProps, parentComponent, namespace) => { + if (oldProps !== newProps) { + if (oldProps !== EMPTY_OBJ) { + for (const key in oldProps) { + if (!isReservedProp(key) && !(key in newProps)) { + hostPatchProp( + el, + key, + oldProps[key], + null, + namespace, + parentComponent + ); + } + } + } + for (const key in newProps) { + if (isReservedProp(key)) continue; + const next = newProps[key]; + const prev = oldProps[key]; + if (next !== prev && key !== "value") { + hostPatchProp(el, key, prev, next, namespace, parentComponent); + } + } + if ("value" in newProps) { + hostPatchProp(el, "value", oldProps.value, newProps.value, namespace); + } + } + }; + const processFragment = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => { + const fragmentStartAnchor = n2.el = n1 ? n1.el : hostCreateText(""); + const fragmentEndAnchor = n2.anchor = n1 ? n1.anchor : hostCreateText(""); + let { patchFlag, dynamicChildren, slotScopeIds: fragmentSlotScopeIds } = n2; + if (fragmentSlotScopeIds) { + slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds; + } + if (n1 == null) { + hostInsert(fragmentStartAnchor, container, anchor); + hostInsert(fragmentEndAnchor, container, anchor); + mountChildren( + // #10007 + // such fragment like `<>` will be compiled into + // a fragment which doesn't have a children. + // In this case fallback to an empty array + n2.children || [], + container, + fragmentEndAnchor, + parentComponent, + parentSuspense, + namespace, + slotScopeIds, + optimized + ); + } else { + if (patchFlag > 0 && patchFlag & 64 && dynamicChildren && // #2715 the previous fragment could've been a BAILed one as a result + // of renderSlot() with no valid children + n1.dynamicChildren) { + patchBlockChildren( + n1.dynamicChildren, + dynamicChildren, + container, + parentComponent, + parentSuspense, + namespace, + slotScopeIds + ); + if ( + // #2080 if the stable fragment has a key, it's a