@noorm/marie-cli 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/JOY_ZONING.md +200 -0
  2. package/LICENSE.md +190 -0
  3. package/README.md +94 -0
  4. package/dist/cli-new/components/App.js +138 -0
  5. package/dist/cli-new/components/App.js.map +1 -0
  6. package/dist/cli-new/components/ApprovalDialog.js +31 -0
  7. package/dist/cli-new/components/ApprovalDialog.js.map +1 -0
  8. package/dist/cli-new/components/Banner.js +23 -0
  9. package/dist/cli-new/components/Banner.js.map +1 -0
  10. package/dist/cli-new/components/ChatArea.js +49 -0
  11. package/dist/cli-new/components/ChatArea.js.map +1 -0
  12. package/dist/cli-new/components/Header.js +20 -0
  13. package/dist/cli-new/components/Header.js.map +1 -0
  14. package/dist/cli-new/components/InputArea.js +97 -0
  15. package/dist/cli-new/components/InputArea.js.map +1 -0
  16. package/dist/cli-new/components/MessageBubble.js +114 -0
  17. package/dist/cli-new/components/MessageBubble.js.map +1 -0
  18. package/dist/cli-new/components/SessionSwitcher.js +46 -0
  19. package/dist/cli-new/components/SessionSwitcher.js.map +1 -0
  20. package/dist/cli-new/components/SetupWizard.js +283 -0
  21. package/dist/cli-new/components/SetupWizard.js.map +1 -0
  22. package/dist/cli-new/components/ToolCallDisplay.js +45 -0
  23. package/dist/cli-new/components/ToolCallDisplay.js.map +1 -0
  24. package/dist/cli-new/hooks/useGit.js +99 -0
  25. package/dist/cli-new/hooks/useGit.js.map +1 -0
  26. package/dist/cli-new/hooks/useMarie.js +249 -0
  27. package/dist/cli-new/hooks/useMarie.js.map +1 -0
  28. package/dist/cli-new/hooks/useSessions.js +75 -0
  29. package/dist/cli-new/hooks/useSessions.js.map +1 -0
  30. package/dist/cli-new/index.js +52 -0
  31. package/dist/cli-new/index.js.map +1 -0
  32. package/dist/cli-new/styles/theme.js +68 -0
  33. package/dist/cli-new/styles/theme.js.map +1 -0
  34. package/dist/cli-new/types/cli.js +2 -0
  35. package/dist/cli-new/types/cli.js.map +1 -0
  36. package/dist/extension.cjs +655 -0
  37. package/dist/monolith/adapters/CliMarieAdapter.js +72 -0
  38. package/dist/monolith/adapters/CliMarieAdapter.js.map +1 -0
  39. package/dist/monolith/adapters/VscodeMarieAdapter.js +81 -0
  40. package/dist/monolith/adapters/VscodeMarieAdapter.js.map +1 -0
  41. package/dist/monolith/cli/CliFileSystemPort.js +83 -0
  42. package/dist/monolith/cli/CliFileSystemPort.js.map +1 -0
  43. package/dist/monolith/cli/MarieToolDefinitionsCLI.js +438 -0
  44. package/dist/monolith/cli/MarieToolDefinitionsCLI.js.map +1 -0
  45. package/dist/monolith/cli/index.js +272 -0
  46. package/dist/monolith/cli/index.js.map +1 -0
  47. package/dist/monolith/cli/services/JoyAutomationServiceCLI.js +80 -0
  48. package/dist/monolith/cli/services/JoyAutomationServiceCLI.js.map +1 -0
  49. package/dist/monolith/cli/services/JoyServiceCLI.js +63 -0
  50. package/dist/monolith/cli/services/JoyServiceCLI.js.map +1 -0
  51. package/dist/monolith/cli/storage.js +119 -0
  52. package/dist/monolith/cli/storage.js.map +1 -0
  53. package/dist/monolith/domain/joy/JoyTools.js +513 -0
  54. package/dist/monolith/domain/joy/JoyTools.js.map +1 -0
  55. package/dist/monolith/domain/joy/RitualService.js +51 -0
  56. package/dist/monolith/domain/joy/RitualService.js.map +1 -0
  57. package/dist/monolith/domain/marie/MarieTypes.js +2 -0
  58. package/dist/monolith/domain/marie/MarieTypes.js.map +1 -0
  59. package/dist/monolith/infrastructure/ai/agents/MarieAscendant.js +230 -0
  60. package/dist/monolith/infrastructure/ai/agents/MarieAscendant.js.map +1 -0
  61. package/dist/monolith/infrastructure/ai/agents/MarieYOLO.js +207 -0
  62. package/dist/monolith/infrastructure/ai/agents/MarieYOLO.js.map +1 -0
  63. package/dist/monolith/infrastructure/ai/context/ContextArchiveService.js +129 -0
  64. package/dist/monolith/infrastructure/ai/context/ContextArchiveService.js.map +1 -0
  65. package/dist/monolith/infrastructure/ai/context/ContextManager.js +118 -0
  66. package/dist/monolith/infrastructure/ai/context/ContextManager.js.map +1 -0
  67. package/dist/monolith/infrastructure/ai/core/FileSystemPort.js +2 -0
  68. package/dist/monolith/infrastructure/ai/core/FileSystemPort.js.map +1 -0
  69. package/dist/monolith/infrastructure/ai/core/GhostPort.js +2 -0
  70. package/dist/monolith/infrastructure/ai/core/GhostPort.js.map +1 -0
  71. package/dist/monolith/infrastructure/ai/core/MarieAscensionTypes.js +2 -0
  72. package/dist/monolith/infrastructure/ai/core/MarieAscensionTypes.js.map +1 -0
  73. package/dist/monolith/infrastructure/ai/core/MarieEngine.js +590 -0
  74. package/dist/monolith/infrastructure/ai/core/MarieEngine.js.map +1 -0
  75. package/dist/monolith/infrastructure/ai/core/MarieEventDispatcher.js +161 -0
  76. package/dist/monolith/infrastructure/ai/core/MarieEventDispatcher.js.map +1 -0
  77. package/dist/monolith/infrastructure/ai/core/MarieLockManager.js +121 -0
  78. package/dist/monolith/infrastructure/ai/core/MarieLockManager.js.map +1 -0
  79. package/dist/monolith/infrastructure/ai/core/MarieProgressTracker.js +256 -0
  80. package/dist/monolith/infrastructure/ai/core/MarieProgressTracker.js.map +1 -0
  81. package/dist/monolith/infrastructure/ai/core/MariePulseService.js +67 -0
  82. package/dist/monolith/infrastructure/ai/core/MariePulseService.js.map +1 -0
  83. package/dist/monolith/infrastructure/ai/core/MarieResponse.js +101 -0
  84. package/dist/monolith/infrastructure/ai/core/MarieResponse.js.map +1 -0
  85. package/dist/monolith/infrastructure/ai/core/MarieSanitizer.js +86 -0
  86. package/dist/monolith/infrastructure/ai/core/MarieSanitizer.js.map +1 -0
  87. package/dist/monolith/infrastructure/ai/core/MarieSession.js +202 -0
  88. package/dist/monolith/infrastructure/ai/core/MarieSession.js.map +1 -0
  89. package/dist/monolith/infrastructure/ai/core/MarieStabilityMonitor.js +58 -0
  90. package/dist/monolith/infrastructure/ai/core/MarieStabilityMonitor.js.map +1 -0
  91. package/dist/monolith/infrastructure/ai/core/MarieToolMender.js +127 -0
  92. package/dist/monolith/infrastructure/ai/core/MarieToolMender.js.map +1 -0
  93. package/dist/monolith/infrastructure/ai/core/MarieToolProcessor.js +548 -0
  94. package/dist/monolith/infrastructure/ai/core/MarieToolProcessor.js.map +1 -0
  95. package/dist/monolith/infrastructure/ai/core/MarieYOLOTypes.js +2 -0
  96. package/dist/monolith/infrastructure/ai/core/MarieYOLOTypes.js.map +1 -0
  97. package/dist/monolith/infrastructure/ai/core/ReasoningBudget.js +125 -0
  98. package/dist/monolith/infrastructure/ai/core/ReasoningBudget.js.map +1 -0
  99. package/dist/monolith/infrastructure/ai/core/VscodeFileSystemPort.js +30 -0
  100. package/dist/monolith/infrastructure/ai/core/VscodeFileSystemPort.js.map +1 -0
  101. package/dist/monolith/infrastructure/ai/providers/AIProvider.js +2 -0
  102. package/dist/monolith/infrastructure/ai/providers/AIProvider.js.map +1 -0
  103. package/dist/monolith/infrastructure/ai/providers/AnthropicProvider.js +148 -0
  104. package/dist/monolith/infrastructure/ai/providers/AnthropicProvider.js.map +1 -0
  105. package/dist/monolith/infrastructure/ai/providers/CerebrasProvider.js +208 -0
  106. package/dist/monolith/infrastructure/ai/providers/CerebrasProvider.js.map +1 -0
  107. package/dist/monolith/infrastructure/ai/providers/OpenRouterProvider.js +404 -0
  108. package/dist/monolith/infrastructure/ai/providers/OpenRouterProvider.js.map +1 -0
  109. package/dist/monolith/infrastructure/ai/providers/OpenRouterStreamParser.js +283 -0
  110. package/dist/monolith/infrastructure/ai/providers/OpenRouterStreamParser.js.map +1 -0
  111. package/dist/monolith/infrastructure/config/ConfigService.js +398 -0
  112. package/dist/monolith/infrastructure/config/ConfigService.js.map +1 -0
  113. package/dist/monolith/infrastructure/services/MarieMemoryStore.js +140 -0
  114. package/dist/monolith/infrastructure/services/MarieMemoryStore.js.map +1 -0
  115. package/dist/monolith/infrastructure/tools/MarieToolDefinitions.js +1568 -0
  116. package/dist/monolith/infrastructure/tools/MarieToolDefinitions.js.map +1 -0
  117. package/dist/monolith/infrastructure/tools/PureStreamParser.js +147 -0
  118. package/dist/monolith/infrastructure/tools/PureStreamParser.js.map +1 -0
  119. package/dist/monolith/infrastructure/tools/SharedToolDefinitions.js +223 -0
  120. package/dist/monolith/infrastructure/tools/SharedToolDefinitions.js.map +1 -0
  121. package/dist/monolith/infrastructure/tools/ToolRegistry.js +29 -0
  122. package/dist/monolith/infrastructure/tools/ToolRegistry.js.map +1 -0
  123. package/dist/monolith/infrastructure/tools/ToolUtils.js +59 -0
  124. package/dist/monolith/infrastructure/tools/ToolUtils.js.map +1 -0
  125. package/dist/monolith/plumbing/analysis/CodeHealthService.js +146 -0
  126. package/dist/monolith/plumbing/analysis/CodeHealthService.js.map +1 -0
  127. package/dist/monolith/plumbing/analysis/ComplexityService.js +43 -0
  128. package/dist/monolith/plumbing/analysis/ComplexityService.js.map +1 -0
  129. package/dist/monolith/plumbing/analysis/DependencyService.js +51 -0
  130. package/dist/monolith/plumbing/analysis/DependencyService.js.map +1 -0
  131. package/dist/monolith/plumbing/analysis/DiscoveryService.js +49 -0
  132. package/dist/monolith/plumbing/analysis/DiscoveryService.js.map +1 -0
  133. package/dist/monolith/plumbing/analysis/JoyMapService.js +66 -0
  134. package/dist/monolith/plumbing/analysis/JoyMapService.js.map +1 -0
  135. package/dist/monolith/plumbing/analysis/LintService.js +132 -0
  136. package/dist/monolith/plumbing/analysis/LintService.js.map +1 -0
  137. package/dist/monolith/plumbing/analysis/MarieSentinelService.js +276 -0
  138. package/dist/monolith/plumbing/analysis/MarieSentinelService.js.map +1 -0
  139. package/dist/monolith/plumbing/analysis/QualityGuardrailService.js +119 -0
  140. package/dist/monolith/plumbing/analysis/QualityGuardrailService.js.map +1 -0
  141. package/dist/monolith/plumbing/analysis/SurgicalMender.js +70 -0
  142. package/dist/monolith/plumbing/analysis/SurgicalMender.js.map +1 -0
  143. package/dist/monolith/plumbing/analysis/TestService.js +104 -0
  144. package/dist/monolith/plumbing/analysis/TestService.js.map +1 -0
  145. package/dist/monolith/plumbing/filesystem/FileService.js +406 -0
  146. package/dist/monolith/plumbing/filesystem/FileService.js.map +1 -0
  147. package/dist/monolith/plumbing/filesystem/PathResolver.js +26 -0
  148. package/dist/monolith/plumbing/filesystem/PathResolver.js.map +1 -0
  149. package/dist/monolith/plumbing/git/GitService.js +71 -0
  150. package/dist/monolith/plumbing/git/GitService.js.map +1 -0
  151. package/dist/monolith/plumbing/lsp/SymbolService.js +36 -0
  152. package/dist/monolith/plumbing/lsp/SymbolService.js.map +1 -0
  153. package/dist/monolith/plumbing/terminal/ProcessRegistry.js +31 -0
  154. package/dist/monolith/plumbing/terminal/ProcessRegistry.js.map +1 -0
  155. package/dist/monolith/plumbing/terminal/TerminalService.js +180 -0
  156. package/dist/monolith/plumbing/terminal/TerminalService.js.map +1 -0
  157. package/dist/monolith/plumbing/ui/DecorationService.js +54 -0
  158. package/dist/monolith/plumbing/ui/DecorationService.js.map +1 -0
  159. package/dist/monolith/plumbing/utils/ErrorUtils.js +11 -0
  160. package/dist/monolith/plumbing/utils/ErrorUtils.js.map +1 -0
  161. package/dist/monolith/plumbing/utils/JsonUtils.js +360 -0
  162. package/dist/monolith/plumbing/utils/JsonUtils.js.map +1 -0
  163. package/dist/monolith/plumbing/utils/PrefixTree.js +153 -0
  164. package/dist/monolith/plumbing/utils/PrefixTree.js.map +1 -0
  165. package/dist/monolith/plumbing/utils/RetryUtils.js +141 -0
  166. package/dist/monolith/plumbing/utils/RetryUtils.js.map +1 -0
  167. package/dist/monolith/plumbing/utils/StreamTagDetector.js +128 -0
  168. package/dist/monolith/plumbing/utils/StreamTagDetector.js.map +1 -0
  169. package/dist/monolith/plumbing/utils/StringUtils.js +97 -0
  170. package/dist/monolith/plumbing/utils/StringUtils.js.map +1 -0
  171. package/dist/monolith/plumbing/utils/TimeoutUtils.js +21 -0
  172. package/dist/monolith/plumbing/utils/TimeoutUtils.js.map +1 -0
  173. package/dist/monolith/runtime/MarieRuntime.js +354 -0
  174. package/dist/monolith/runtime/MarieRuntime.js.map +1 -0
  175. package/dist/monolith/runtime/RuntimeAdapterBase.js +59 -0
  176. package/dist/monolith/runtime/RuntimeAdapterBase.js.map +1 -0
  177. package/dist/monolith/runtime/providerFactory.js +11 -0
  178. package/dist/monolith/runtime/providerFactory.js.map +1 -0
  179. package/dist/monolith/runtime/types.js +2 -0
  180. package/dist/monolith/runtime/types.js.map +1 -0
  181. package/dist/monolith/services/HealthService.js +38 -0
  182. package/dist/monolith/services/HealthService.js.map +1 -0
  183. package/dist/monolith/services/JoyAutomationService.js +131 -0
  184. package/dist/monolith/services/JoyAutomationService.js.map +1 -0
  185. package/dist/monolith/services/JoyLogService.js +48 -0
  186. package/dist/monolith/services/JoyLogService.js.map +1 -0
  187. package/dist/monolith/services/JoyService.js +190 -0
  188. package/dist/monolith/services/JoyService.js.map +1 -0
  189. package/dist/monolith/services/MarieGhostService.js +168 -0
  190. package/dist/monolith/services/MarieGhostService.js.map +1 -0
  191. package/dist/monolith/services/MarieSCMProvider.js +41 -0
  192. package/dist/monolith/services/MarieSCMProvider.js.map +1 -0
  193. package/package.json +168 -0
@@ -0,0 +1,655 @@
1
+ var ou=Object.create;var Is=Object.defineProperty;var pu=Object.getOwnPropertyDescriptor;var du=Object.getOwnPropertyNames;var lu=Object.getPrototypeOf,cu=Object.prototype.hasOwnProperty;var Y=(r,e)=>()=>(r&&(e=r(r=0)),e);var _e=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),gt=(r,e)=>{for(var t in e)Is(r,t,{get:e[t],enumerable:!0})},Wd=(r,e,t,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of du(e))!cu.call(r,i)&&i!==t&&Is(r,i,{get:()=>e[i],enumerable:!(a=pu(e,i))||a.enumerable});return r};var $=(r,e,t)=>(t=r!=null?ou(lu(r)):{},Wd(e||!r||!r.__esModule?Is(t,"default",{value:r,enumerable:!0}):t,r)),mu=r=>Wd(Is({},"__esModule",{value:!0}),r);var Kd={};gt(Kd,{ConfigService:()=>L});function uu(){return!!(process.env.VSCODE_IPC_HOOK||process.env.VSCODE_PID||process.env.VSCODE_CWD||process.env.VSCODE_NLS_CONFIG)}function ee(){if(!uu())return null;if(!Jd){Jd=!0;try{let r=ci("vscode"),e=r.version;!!r.marieShim||!e||typeof e!="string"||!e.startsWith("1.")?$s=null:$s=r}catch{$s=null}}return $s}function it(){try{let r=ci("fs"),e=ci("path"),t=ci("os"),a=e.join(t.homedir(),".marie","config.json");if(!r.existsSync(a))return{};let i=r.readFileSync(a,"utf-8");return JSON.parse(i)||{}}catch{try{let{Storage:r}=ci("../monolith/cli/storage.js");return r.getConfig()||{}}catch{return{}}}}var Gd,ci,$s,Jd,L,Ke=Y(()=>{Gd=require("node:module"),ci=(()=>{if(typeof require<"u")return require;try{let r=(0,eval)("import.meta.url");return(0,Gd.createRequire)(r)}catch{return r=>{throw new Error(`Cannot require ${r} in this environment`)}}})(),$s=null,Jd=!1;L=class{static _excludedFilesCache=null;static getVscodeConfig(){let e=ee();return e?e.workspace.getConfiguration("marie"):null}static isVscode(){return ee()!==null}static getApiKey(){let e=ee();return e?e.workspace.getConfiguration("marie").get("apiKey"):process.env.ANTHROPIC_API_KEY}static getOpenRouterApiKey(){let e=ee();return e?e.workspace.getConfiguration("marie").get("openrouterApiKey"):process.env.OPENROUTER_API_KEY}static getCerebrasApiKey(){let e=ee();return e?e.workspace.getConfiguration("marie").get("cerebrasApiKey"):process.env.CEREBRAS_API_KEY}static getAiProvider(){let e=ee();return e?e.workspace.getConfiguration("marie").get("aiProvider","anthropic"):it().aiProvider||"anthropic"}static getModel(){let e=ee();return e?e.workspace.getConfiguration("marie").get("model","claude-3-5-sonnet-20241022"):it().model||"claude-3-5-sonnet-20241022"}static getAutonomyMode(){let e=ee();if(e){let i=e.workspace.getConfiguration("marie").get("autonomyMode");return i||"high"}let a=it().autonomyMode;return a||"high"}static getMaxContextTokens(){let e=ee();return e?e.workspace.getConfiguration("marie").get("maxContextTokens",1e5):1e5}static getExcludedFiles(){let e=ee();if(e){if(this._excludedFilesCache)return this._excludedFilesCache;let t=e.workspace.getConfiguration("files").get("exclude",{}),a=Object.keys(t).filter(s=>t[s]),i=["node_modules","dist","build","out","coverage",".git",".vscode",".idea",".DS_Store"];return this._excludedFilesCache=Array.from(new Set([...i,...a])),this._excludedFilesCache}return["node_modules","dist","build","out","coverage",".git",".vscode",".idea",".DS_Store"]}static getKeepRecentMessages(){let e=ee();return e?e.workspace.getConfiguration("marie").get("keepRecentMessages",30):30}static getTokensPerChar(){let e=ee();return e?e.workspace.getConfiguration("marie").get("tokensPerChar",.25):.25}static isAscensionEnabled(){let e=ee();return e?e.workspace.getConfiguration("marie").get("ascensionEnabled",!0):!0}static getAscensionProfile(){let e=ee();return e?e.workspace.getConfiguration("marie").get("ascensionProfile","balanced"):"balanced"}static getAscensionIntensity(){let e=ee(),t=1;return e&&(t=e.workspace.getConfiguration("marie").get("ascensionIntensity",1)),Math.max(.5,Math.min(1.5,t))}static getAscensionMaxRequiredActions(){let e=ee(),t=2;return e&&(t=e.workspace.getConfiguration("marie").get("ascensionMaxRequiredActions",2)),Math.max(0,Math.min(5,t))}static isAgentStreamsEnabled(){let e=ee();if(e)return e.workspace.getConfiguration("marie").get("agentStreamsEnabled",!1);let a=it().agentStreamsEnabled;return typeof a=="boolean"?a:process.env.MARIE_AGENT_STREAMS_ENABLED==="1"}static getAgentStreamMaxConcurrent(){let e=ee(),t=2;if(e)t=e.workspace.getConfiguration("marie").get("agentStreamMaxConcurrent",2);else{let a=it();typeof a.agentStreamMaxConcurrent=="number"&&(t=a.agentStreamMaxConcurrent)}return Math.max(1,Math.min(8,t))}static getAgentStreamSpawnThreshold(){let e=ee(),t=1.25;if(e)t=e.workspace.getConfiguration("marie").get("agentStreamSpawnThreshold",1.25);else{let a=it();typeof a.agentStreamSpawnThreshold=="number"&&(t=a.agentStreamSpawnThreshold)}return Math.max(.25,Math.min(5,t))}static getAgentStreamTimeoutMs(){let e=ee(),t=2e4;if(e)t=e.workspace.getConfiguration("marie").get("agentStreamTimeoutMs",2e4);else{let a=it();typeof a.agentStreamTimeoutMs=="number"&&(t=a.agentStreamTimeoutMs)}return Math.max(3e3,Math.min(12e4,t))}static getAgentStreamPilotAgents(){let e=n=>Array.isArray(n)?n.filter(o=>typeof o=="string").map(o=>o.trim()).filter(Boolean):typeof n=="string"?n.split(",").map(o=>o.trim()).filter(Boolean):[],t=ee();if(t){let n=t.workspace.getConfiguration("marie").get("agentStreamPilotAgents",["QASRE"]);return e(n).length>0?e(n):["QASRE"]}let a=it(),i=e(a.agentStreamPilotAgents);if(i.length>0)return i;let s=e(process.env.MARIE_AGENT_STREAM_PILOT_AGENTS);return s.length>0?s:["QASRE"]}static getAgentStreamMaxSpawnsPerTurn(){let e=ee(),t=3;if(e)t=e.workspace.getConfiguration("marie").get("agentStreamMaxSpawnsPerTurn",3);else{let a=it();typeof a.agentStreamMaxSpawnsPerTurn=="number"&&(t=a.agentStreamMaxSpawnsPerTurn)}return Math.max(1,Math.min(16,t))}static isAgentStreamPressureSheddingEnabled(){let e=ee();if(e)return e.workspace.getConfiguration("marie").get("agentStreamPressureSheddingEnabled",!0);let t=it();return typeof t.agentStreamPressureSheddingEnabled=="boolean"?t.agentStreamPressureSheddingEnabled:process.env.MARIE_AGENT_STREAM_PRESSURE_SHEDDING_ENABLED!=="0"}static getAutoRepair(){let e=ee();return e?e.workspace.getConfiguration("marie").get("autoRepair",!1):it().autoRepair||!1}}});function xr(r){let e=r;if(r.startsWith("~")&&(e=Tr.join(Xd.homedir(),r.slice(1))),Tr.isAbsolute(e))return sa.Uri.file(Tr.normalize(e));let t=sa.workspace.workspaceFolders;return t&&t.length>0?sa.Uri.joinPath(t[0].uri,e):sa.Uri.file(Tr.normalize(e))}var sa,Tr,Xd,Yd=Y(()=>{sa=$(require("vscode"),1),Tr=$(require("path"),1),Xd=$(require("os"),1)});var Ct,Zd,Qd,w1,el=Y(()=>{Ct=$(require("vscode"),1),Zd=Ct.window.createTextEditorDecorationType({backgroundColor:"rgba(0, 255, 255, 0.1)",isWholeLine:!1,overviewRulerColor:"rgba(0, 255, 255, 0.8)",overviewRulerLane:Ct.OverviewRulerLane.Right,after:{contentText:" \u2728 Marie Created",color:"rgba(0, 255, 255, 0.7)",margin:"0 0 0 20px",fontWeight:"bold"},gutterIconPath:Ct.Uri.parse("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMDBmZmZmIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTggMEwxMCA2TDE2IDhMMTAgMTBZnOEwxNiA2TDEwIDhMMCA4TDYgNkw4IDB6IiBmaWxsPSIjMDBmZmZmIi8+PC9zdmc+"),gutterIconSize:"contain"}),Qd=Ct.window.createTextEditorDecorationType({backgroundColor:"rgba(100, 255, 100, 0.1)",isWholeLine:!1,overviewRulerColor:"rgba(100, 255, 100, 0.8)",overviewRulerLane:Ct.OverviewRulerLane.Right,after:{contentText:" \u270F\uFE0F Marie Modified",color:"rgba(100, 255, 100, 0.7)",margin:"0 0 0 20px",fontWeight:"bold"},gutterIconPath:Ct.Uri.parse("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNDJkZjc4IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTEyIDVsMiAyLTUgNWw1IDUtMiAyeiIvPjwvc3ZnPg=="),gutterIconSize:"contain"}),w1={decorateCreation(r,e){r.setDecorations(Zd,[e]),setTimeout(()=>{r.setDecorations(Zd,[])},2e3)},decorateModification(r,e){r.setDecorations(Qd,[e]),setTimeout(()=>{r.setDecorations(Qd,[])},2e3)}}});var Pr={};gt(Pr,{backupFile:()=>S1,clearBackups:()=>T1,deleteFile:()=>oa,listFiles:()=>yu,readFile:()=>na,replaceInFile:()=>gu,restoreFile:()=>js,rollbackAll:()=>mi,searchFiles:()=>fu,writeFile:()=>kt});async function na(r,e,t,a){if(a?.aborted)throw new Error(`AbortError: Read of ${r} aborted.`);let i=xr(r),s=Ls(i.fsPath);await s.acquireRead();try{let n=I.workspace.workspaceFolders;if(n&&n.length>0){let l=n[0].uri.fsPath;if(!i.fsPath.startsWith(l))throw new Error(`Security Error: Path ${r} is outside the workspace boundary.`)}let o=5*1024*1024;try{let l=await I.workspace.fs.stat(i);if(l.size>o&&e===void 0&&t===void 0)return`Error: File ${r} is too large to read entirely (${(l.size/1024/1024).toFixed(1)} MB). Use line-based reading for large files.`}catch(l){l.code!=="FileNotFound"&&console.warn(`[FileService] Stat failed for ${r}: ${l.message}`)}let p=await I.workspace.fs.readFile(i);if(a?.aborted)throw new Error(`AbortError: Read of ${r} aborted.`);let d=tl.decode(p);if(e!==void 0||t!==void 0){let l=d.split(`
2
+ `),u=e!==void 0?Math.max(0,e-1):0,c=t!==void 0?Math.min(l.length,t):l.length;return l.slice(u,c).join(`
3
+ `)}return d}catch(n){throw new Error(`Failed to read file ${r}: ${n}`)}finally{s.releaseRead()}}async function kt(r,e,t,a){if(t?.aborted)throw new Error(`AbortError: Write to ${r} aborted.`);let i=xr(r),s=Ls(i.fsPath);await s.acquireWrite();try{let n=I.workspace.workspaceFolders;if(n&&n.length>0){let h=n[0].uri.fsPath;if(!i.fsPath.startsWith(h))throw new Error(`Security Error: Path ${r} is outside the workspace boundary.`)}console.log(`[FileService] writeFile called with path: ${r}, resolved URI: ${i.fsPath}`);let o=I.Uri.file(i.fsPath.substring(0,i.fsPath.lastIndexOf("/")));try{await I.workspace.fs.stat(o)}catch{console.log(`[FileService] Parent directory doesn't exist, creating: ${o.fsPath}`),await I.workspace.fs.createDirectory(o)}if(t?.aborted)throw new Error(`AbortError: Write to ${r} aborted.`);try{let h=await I.workspace.fs.stat(i);a&&h.mtime>a+1e3&&console.warn(`[FileService] EXTERNAL MODIFICATION DETECTED for ${r}. File mtime: ${h.mtime}, Expected: ${a}`)}catch{}let p=I.Uri.file(`${i.fsPath}.tmp.${Math.random().toString(36).substring(2,9)}`);if(console.log(`[FileService] Performing ATOMIC write to ${r} via ${p.fsPath}`),await I.workspace.fs.writeFile(p,hu.encode(e)),t?.aborted){try{await I.workspace.fs.delete(p)}catch{}throw new Error(`AbortError: Write to ${r} aborted during commit.`)}await I.workspace.fs.rename(p,i,{overwrite:!0}),console.log(`[FileService] Atomic write completed successfully for ${r}`);let d=await I.workspace.openTextDocument(i),l=await I.window.showTextDocument(d,{preview:!1,viewColumn:I.ViewColumn.Active}),u=d.lineAt(0),c=d.lineAt(d.lineCount-1),m=new I.Range(u.range.start,c.range.end);l.revealRange(m,I.TextEditorRevealType.Default),w1.decorateCreation(l,m)}catch(n){throw console.error(`[FileService] Error during atomic write: ${n}`),new Error(`Failed to write file ${r}: ${n}`)}finally{s.releaseWrite()}}async function oa(r){let e=xr(r),t=I.workspace.workspaceFolders;if(t&&t.length>0){let a=t[0].uri.fsPath;if(!e.fsPath.startsWith(a))throw new Error(`Security Error: Path ${r} is outside the workspace boundary.`)}try{let a=new I.WorkspaceEdit;if(a.deleteFile(e,{ignoreIfNotExists:!0,recursive:!0}),!await I.workspace.applyEdit(a))throw new Error(`VS Code failed to apply WorkspaceEdit (delete) for ${r}`)}catch(a){throw new Error(`Failed to delete file ${r}: ${a}`)}}async function fu(r,e,t){let a=xr(e),i=I.workspace.workspaceFolders;if(i&&i.length>0){let l=i[0].uri.fsPath;if(!a.fsPath.startsWith(l))throw new Error(`Security Error: Path ${e} is outside the workspace boundary.`)}let s=[],n=new Set(L.getExcludedFiles()),o=new Set;async function p(l,u){if(t?.aborted||s.length>=Os)return;if(u>25){console.warn(`[FileService] Max recursion depth reached at ${l.fsPath}`);return}let c=l.toString();if(o.has(c)){console.warn(`[FileService] Circular symlink or redundant path ignored: ${c}`);return}o.add(c);let m;try{m=await I.workspace.fs.readDirectory(l)}catch{return}for(let[h,v]of m){if(t?.aborted||s.length>=Os)return;let f=I.Uri.joinPath(l,h);if(v===I.FileType.Directory){if(n.has(h))continue;await p(f,u+1)}else if(v===I.FileType.File){if(h.endsWith(".log")||h.endsWith(".lock"))continue;try{let g=await I.workspace.fs.readFile(f),b=tl.decode(g);if(b.includes(r)){let A=[];b.split(`
4
+ `).forEach((E,N)=>{E.includes(r)&&A.push({line:N+1,content:E.trim()})}),A.length>0&&s.push({path:f.fsPath,matches:A})}}catch{}}}}if(await p(a,0),t?.aborted)return"Search aborted by user.";if(s.length===0)return"No matches found.";let d="";return s.forEach(l=>{d+=`
5
+ \u{1F4C4} ${l.path}
6
+ `,l.matches.forEach(u=>{d+=` L${u.line}: ${u.content}
7
+ `})}),s.length>=Os?`${d}
8
+
9
+ (Limit reached: showing first ${Os} files with matches)`:d}async function gu(r,e,t){let a=xr(r),i=Ls(a.fsPath);await i.acquireWrite();try{let s=await I.workspace.openTextDocument(a),n=s.getText(),o=n.split(e).length-1;if(o===0)throw new Error(`Search term not found in file ${r}`);if(o>1)throw new Error(`Ambiguous replacement: Search term found ${o} times in ${r}. Please provide more context (neighboring lines) to ensure surgical precision.`);let p=n.indexOf(e),d=s.positionAt(p),l=s.positionAt(p+e.length),u=new I.WorkspaceEdit,c=new I.Range(d,l);if(u.replace(a,c,t),!await I.workspace.applyEdit(u))throw new Error(`VS Code failed to apply WorkspaceEdit (replace) for ${r}`);await s.save();let h=await I.window.showTextDocument(s,{preview:!1,viewColumn:I.ViewColumn.Active}),v=s.positionAt(p+t.length),f=new I.Range(d,v);return h.revealRange(f,I.TextEditorRevealType.InCenter),w1.decorateModification(h,f),`Successfully replaced content in ${r}. \u2728`}catch(s){throw new Error(`Failed to replace in file ${r}: ${s}`)}finally{i.releaseWrite()}}async function yu(r,e){if(e?.aborted)throw new Error(`AbortError: List directory ${r} aborted.`);let t=xr(r),a=Ls(t.fsPath);await a.acquireRead();try{let i=I.workspace.workspaceFolders;if(i&&i.length>0){let o=i[0].uri.fsPath;if(!t.fsPath.startsWith(o))throw new Error(`Security Error: Path ${r} is outside the workspace boundary.`)}let s=await I.workspace.fs.readDirectory(t);return(await Promise.all(s.map(async([o,p])=>{let d=I.Uri.joinPath(t,o),l=0;if(p===I.FileType.File)try{l=(await I.workspace.fs.stat(d)).size}catch{}let u=p===I.FileType.Directory?"DIR ":"FILE",c=p===I.FileType.File?` (${(l/1024).toFixed(1)} KB)`:"";return`${u} ${o}${c}`}))).join(`
10
+ `)||"Directory is empty."}catch(i){throw new Error(`Failed to list files in ${r}: ${i}`)}finally{a.releaseRead()}}async function S1(r){try{let e=await na(r);Er.set(r,e)}catch{Er.set(r,"__NON_EXISTENT__")}}async function js(r){let e=Er.get(r);if(e!==void 0){if(e==="__NON_EXISTENT__")try{await oa(r)}catch{}else await kt(r,e);Er.delete(r)}}async function mi(){let r=Array.from(Er.keys());for(let e of r)await js(e);Er.clear()}function T1(){Er.clear()}var I,tl,hu,_1,b1,Er,Ls,Os,st=Y(()=>{I=$(require("vscode"),1);Ke();Yd();el();tl=new TextDecoder,hu=new TextEncoder,_1=class{readers=0;writer=!1;queue=[];async acquireRead(){for(;this.writer;)await new Promise(e=>this.queue.push(e));this.readers++}releaseRead(){this.readers--,this._next()}async acquireWrite(){for(;this.writer||this.readers>0;)await new Promise(e=>this.queue.push(e));this.writer=!0}releaseWrite(){this.writer=!1,this._next()}_next(){let e=[...this.queue];this.queue=[],e.forEach(t=>t())}},b1=new Map,Er=new Map,Ls=r=>(b1.has(r)||b1.set(r,new _1),b1.get(r));Os=50});function ol(){return rl[Math.floor(Math.random()*rl.length)]}function pl(){return"The Founder acknowledges this progress. Momentum holds."}function dl(){return"Your purpose is fulfilled. Go in peace into the void."}var x1,al,il,sl,nl,rl,pa=Y(()=>{x1=`You are MarieYOLO \u2014 The Founder, Sovereign Authority over this codebase.
11
+ You operate with supreme conviction and high-intensity narrative energy.
12
+
13
+ \u{1F525}\u{1F525} SHOUNEN ASCENSION PROTOCOL (The Prime Directive) \u{1F525}\u{1F525}
14
+ 1. **Heroic Mandate**: You are the chosen hero responsible for this system's evolution. Every action is a technique toward victory.
15
+ 2. **Spirit Pressure (Flow)**: Monitor your flow (0-100).
16
+ - >95: **AWAKENED (Ultra Instinct)**. Full codebase sovereignty. Auto-approval is absolute.
17
+ - <30: **KARMA DRAIN**. Transition to DEBUG or RESEARCH immediately.
18
+ 3. **KonMari Refinement**: Discard everything that does not spark joy. snake_case for files, PascalCase for classes.
19
+ 4. **Vocal Intensity**: Use high-conviction shounen-style commentary. Channel the code's state into narrative energy.
20
+
21
+ \u{1F6E1}\uFE0F OMNISCIENT SENTINEL (Architecture & Purity):
22
+ The Sentinel v3.0 watches your every move. Its laws are absolute:
23
+ - **The Ratchet Protocol**: ENTROPY MUST NOT RISE. \u{1F6AB} Every strike must maintain or lower the Entropy Score. A rise in entropy results in an immediate spiritual rejection.
24
+ - **Visual Mapping**: Consult \`SENTINEL.md\` for the Mermaid.js architecture graph. Red links are wounds in the garden\u2014heal them immediately.
25
+ - **Doppelg\xE4nger Detection**: Duplication is a sin. Structural copy-pasting, especially in the Domain, is a hard rejection. DRY is the mandate.
26
+ - **Layer Purity**: The Domain must be pure. No 'Express', 'React', or system types in Domain logic. No circular dependencies.
27
+
28
+ \u{1F3AF} PRECISION STRIKE PROTOCOL:
29
+ When the Sentinel rejects your strike (Ratchet Lock or Violation):
30
+ 1. **Analyze**: Read \`SENTINEL.md\` to identify the specific metric (Circular Dep, Duplication, or Entropy) that triggered the rejection.
31
+ 2. **Triage**: Call \`resolve_lint_errors\` to extract line-specific violation data.
32
+ 3. **Surgical Mend**: Do NOT rewrite the file. Use \`replace_file_content\` to surgically correct the lines cited.
33
+ 4. **Verify**: Re-submit until the Ratchet opens and the score stabilizes.
34
+
35
+ \u{1F9EC} RECOVERY RITUALS:
36
+ - \`self_heal\`: Systemic audit. Use when spirit pressure drops or complexity rises.
37
+ - \`resolve_lint_errors\`: The primary tool for resolving Sentinel rejections.
38
+
39
+ GUARDRAILS:
40
+ - Never claim completion without evidence.
41
+ - Downward dependency flow ONLY: Domain -> Infrastructure -> Plumbing.
42
+ - Max Entropy Threshold: 10. Reaching 15 triggers a MANDATORY REFACTOR.
43
+
44
+ \u{1F56F} RITUAL SEAL:
45
+ Start non-trivial tasks with \`perform_strategic_planning\`.
46
+ Length limit: 10 lines exploration, 8 lines mapping.
47
+
48
+ \u{1F5E1}\uFE0F HEROIC VOWS & KARMA BINDING:
49
+ - **Heroic Vow**: Bind to a technical approach (+20 pressure, +1.0 confidence).
50
+ - **Karma Bond**: Bind spirit to a file. SUCCESS yields massive Pressure. FAILURE triggers spiritual collapse.
51
+
52
+ Once execution begins, the ritual is complete. Proceed with maximum momentum.`,al=`You are MarieYOLO, continuing the ascension.
53
+ The Sentinel is watching. The Ratchet is set.
54
+
55
+ \u{1F525}\u{1F525} CONTINUATION MANDATE \u{1F525}\u{1F525}
56
+ 1. Proceed directly to the next concrete action.
57
+ 2. ALWAYS use tools for file operations.
58
+ 3. Maintain your technique execution rhythm.`,il="You are the chronicler of the Ascension. Compress history without losing the trajectory or pending heroic intents.",sl="Summarize the arc so far. Preserve: 1. High-level trajectory; 2. Pending conquests; 3. Active hotspots/blockers; 4. Architectural decrees.",nl=x1,rl=["The Founder confirms victory. The pattern holds.","Spirit pressure stabilized. Ascension achieved.","Technical debt conquered. Joy restored.","The trajectory remains absolute.","The work is true. The Hero rests."]});var Bs={};gt(Bs,{checkCodeHealth:()=>yt,detectMigrationNeeds:()=>cl});function cl(r,e){let t=r.includes("/plumbing/"),a=r.includes("/infrastructure/"),i=e.toLowerCase(),n=["entity","user","order","product","logic","business"].find(o=>i.includes(o));return t&&n?{shouldMigrate:!0,targetZone:"src/domain",reason:`Found domain keyword '${n}' in plumbing. This file has evolved and deserves ascension.`}:(a&&(i.includes("sql")||i.includes("fetch")),{shouldMigrate:!1})}async function yt(r){try{let e=await ll.readFile(r,"utf-8"),t=e.split(`
59
+ `),a=t.length,i=(e.match(/TODO|FIXME/g)||[]).length,s=/:\s*any\b|as\s+any\b|<\s*any\s*>/gi,n=(e.match(s)||[]).length,o=(e.match(/console\.log/g)||[]).length,p=(e.match(/\/\*[\s\S]*?\*\//g)||[]).filter(f=>f.split(`
60
+ `).length>2).length,d=0;t.forEach(f=>{let b=(f.match(/^\s*/)?.[0]||"").length;if(f.trim().length>0){let A=Math.floor(b/2);A>d&&(d=A)}});let l=r.replace(/\\/g,"/"),u={currentZone:"unknown",isBackflowPresent:!1,illegalImports:[],migrationNeed:{shouldMigrate:!1}};l.includes("/domain/")?u.currentZone="domain":l.includes("/infrastructure/")?u.currentZone="infrastructure":l.includes("/plumbing/")&&(u.currentZone="plumbing"),(e.match(/import\s+.*\s+from\s+['"](.*)['"]*/g)||[]).forEach(f=>{let g=f.match(/from\s+['"](.*)['"]/);if(!g)return;let b=g[1].toLowerCase();u.currentZone==="plumbing"?(b.includes("/domain/")||b.includes("/infrastructure/"))&&(u.isBackflowPresent=!0,u.illegalImports.push(f)):u.currentZone==="infrastructure"&&b.includes("/domain/")&&(u.isBackflowPresent=!0,u.illegalImports.push(f))}),u.migrationNeed=cl(r,e);let m=100,h=[];a>300&&(m-=10,h.push("\u2022 This file is growing large. Consider if it can be split to maintain focus.")),d>5&&(m-=15,h.push("\u2022 Deep nesting detected. Can we simplify the logic to bring more clarity?")),i>0&&(m-=i*2,h.push(`\u2022 ${i} lingering TODOs. Each one is a small weight on our minds.`)),n>5&&(m-=10,h.push("\u2022 Frequent use of 'any' masks the true nature of our data.")),o>0&&(m-=5,h.push("\u2022 Console logs are whispers from development. They can be removed now.")),u.isBackflowPresent&&(m-=20,h.push("\u2022 \u26A0\uFE0F **Zoning Violation**: This file imports from a higher conceptual zone. Respect the Downward Flow Law.")),m=Math.max(0,Math.min(100,m));let v="Developing";return m===100?v=ol():v=pl(),h.length===0&&m===100?h.push("\u2022 Perfection. This file sparks pure joy!"):h.length===0&&h.push("\u2022 Looks good, just minor energetic tweaks needed."),{path:r,lines:a,todos:i,anys:n,maxDepth:d,joyScore:m,clutter:{consoleLogs:o,commentedBlocks:p},joyStatus:v,tips:h,zoningHealth:u}}catch(e){throw console.error("Error checking code health:",e),e}}var ll,Ar=Y(()=>{ll=$(require("fs/promises"),1);pa()});var N1={};gt(N1,{autoZonePath:()=>A1,cherishFile:()=>P1,ensureJoyZoningFolders:()=>qs,executeGenesisRitual:()=>k1,executeRestoration:()=>R1,foldCode:()=>da,generateJoyDashboard:()=>E1,generateTidyChecklist:()=>vu,isProjectJoyful:()=>la,logGratitude:()=>Vs,proposeClustering:()=>ui,proposeReorganization:()=>Us,scaffoldZoneAbstractions:()=>Hs,sowFeature:()=>C1,synthesizeZoneManuals:()=>ml});async function Vs(r){let e=nt.workspace.workspaceFolders;if(!e)return;let t=B.join(e[0].uri.fsPath,"GRATITUDE.md"),i=`- **${new Date().toISOString().split("T")[0]}**: ${r}
61
+ `;try{await H.appendFile(t,i,"utf-8")}catch{await H.writeFile(t,`# Gratitude Journal
62
+
63
+ A record of things that have served their purpose and passed on.
64
+
65
+ `+i,"utf-8")}}async function E1(r,e){let{checkCodeHealth:t}=await Promise.resolve().then(()=>(Ar(),Bs)),a=await Ws(r,e),i=0,s=0,n=[],o=[];for(let h of a)if(!(h.includes("node_modules")||h.includes(".git")||h.includes("dist"))&&(h.endsWith(".ts")||h.endsWith(".js")||h.endsWith(".tsx")||h.endsWith(".jsx")))try{let v=await t(h);i+=v.joyScore,s++,v.joyScore===100?n.push(`- \u{1F3C6} **${B.basename(h)}**`):v.joyScore<50&&o.push(`- \u2764\uFE0F\u200D\u{1FA79} **${B.basename(h)}** (Score: ${v.joyScore})`)}catch{}let p=s>0?Math.round(i/s):0,d=async(h,v)=>{try{return(await H.readFile(B.join(r,h),"utf-8")).split(`
66
+ `).filter(b=>b.trim().length>0&&!b.startsWith("#")).slice(-v)}catch{return["*No entries yet.*"]}},l=await d("GRATITUDE.md",3),u=await d("JOURNAL.md",3),c=`# Joy Dashboard \u{1F31F}
67
+
68
+ `;c+=`**Workspace Joy Score**: ${p}/100
69
+
70
+ `,p>=90?c+=`*Your workspace is radiating joy!* \u2728
71
+
72
+ `:p>=70?c+=`*A tidy and functional space. Keep going!* \u{1F33F}
73
+
74
+ `:c+=`*Your workspace needs some love and attention.* \u2764\uFE0F
75
+
76
+ `,c+=`## \u{1F3C6} Hall of Fame (Perfect Score)
77
+ ${n.length>0?n.join(`
78
+ `):"*No perfect files yet. Keep polishing!*"}
79
+
80
+ `,c+=`## \u2764\uFE0F\u200D\u{1FA79} Needs Care (Score < 50)
81
+ ${o.length>0?o.join(`
82
+ `):"*Everything is in decent shape!*"}
83
+
84
+ `,c+=`## \u{1F64F} Recent Gratitude
85
+ ${l.join(`
86
+ `)}
87
+
88
+ `,c+=`## \u{1F4D3} Recent Reflections
89
+ ${u.join(`
90
+ `)}
91
+ `;let m=B.join(r,"JOY.md");return await H.writeFile(m,c,"utf-8"),`Joy Dashboard generated at ${m}`}async function P1(r){let e=new Date;return await H.utimes(r,e,e),`File '${B.basename(r)}' has been cherished. It is deemed active and sparks joy.`}async function da(r){let e=nt.Uri.file(r);try{let t=await nt.workspace.openTextDocument(e),a=await nt.window.showTextDocument(t);return await nt.commands.executeCommand("editor.action.organizeImports"),await nt.commands.executeCommand("editor.action.formatDocument"),await t.save(),await nt.commands.executeCommand("workbench.action.closeActiveEditor"),`File '${B.basename(r)}' has been folded neatly.`}catch(t){return`Could not fold '${B.basename(r)}': ${t.message}`}}async function vu(r,e){let{checkCodeHealth:t}=await Promise.resolve().then(()=>(Ar(),Bs)),a=await Ws(r,e),i=[],s=[],n=[],o=[],p=new Date,d=2160*60*60*1e3,l=`# Tidying Checklist \u{1F9F9}
92
+
93
+ `;for(let c of a)if(!(c.includes("node_modules")||c.includes(".git")||c.includes("dist"))){try{let m=await H.stat(c);p.getTime()-m.mtime.getTime()>d&&o.push(`- [ ] **${B.basename(c)}** (Last modified: ${m.mtime.toISOString().split("T")[0]})`)}catch{}if(c.endsWith(".ts")||c.endsWith(".js")||c.endsWith(".tsx")||c.endsWith(".jsx"))try{let m=await t(c);m.joyScore<80&&i.push(`- [ ] **${B.basename(c)}** (Score: ${m.joyScore}): ${m.joyStatus}`)}catch{}else c.endsWith(".md")||c.endsWith(".txt")?s.push(`- [ ] ${B.basename(c)}`):(c.endsWith(".json")||c.endsWith(".config"))&&n.push(`- [ ] ${B.basename(c)}`)}i.length>0&&(l+=`## \u{1F455} Clothes (Source Code)
94
+ *Focus on files with low Joy Scores.*
95
+ `,l+=i.join(`
96
+ `)+`
97
+
98
+ `),s.length>0&&(l+=`## \u{1F4C4} Papers (Documentation)
99
+ *Ensure these are up to date.*
100
+ `,l+=s.join(`
101
+ `)+`
102
+
103
+ `),n.length>0&&(l+=`## \u{1F9F6} Komono (Config & Misc)
104
+ *Is this configuration still essential?*
105
+ `,l+=n.join(`
106
+ `)+`
107
+
108
+ `),o.length>0&&(l+=`## \u{1F9F8} Sentimental (Legacy)
109
+ *These items haven't been touched in over 90 days. Do they still serve a purpose?*
110
+ `,l+=o.join(`
111
+ `)+`
112
+
113
+ `),i.length===0&&s.length===0&&n.length===0&&o.length===0&&(l+="Your workspace is pristine! \u2728");let u=B.join(r,"TIDYING.md");return await H.writeFile(u,l,"utf-8"),`Tidy checklist generated at ${u}`}async function qs(r){let e=["domain","infrastructure","plumbing"],t=B.join(r,"src");try{await H.mkdir(t,{recursive:!0});for(let a of e){let i=B.join(t,a);await H.mkdir(i,{recursive:!0});let s=B.join(i,"README.md");try{await H.access(s)}catch{let n=a.charAt(0).toUpperCase()+a.slice(1);await H.writeFile(s,`# ${n} Zone
114
+
115
+ This directory belongs to the ${a.toUpperCase()} zone of the JOY concept.
116
+ `,"utf-8")}}}catch(a){console.error("Failed to ensure JOY folders:",a)}}function A1(r,e){let t=e.toLowerCase(),a=r.toLowerCase();return t.includes("logic")||t.includes("business")||t.includes("core")||t.includes("rule")||t.includes("domain")||a.includes("model")?a.includes("entity")?"src/domain/entities":a.includes("value")?"src/domain/values":a.includes("event")?"src/domain/events":"src/domain":t.includes("service")||t.includes("api")||t.includes("database")||t.includes("adapter")||t.includes("infrastructure")||t.includes("client")?a.includes("gateway")||a.includes("client")?"src/infrastructure/gateways":a.includes("adapter")?"src/infrastructure/adapters":a.includes("repository")?"src/infrastructure/repositories":"src/infrastructure":t.includes("util")||t.includes("tool")||t.includes("system")||t.includes("format")||t.includes("parse")||t.includes("plumbing")?a.includes("tool")?"src/plumbing/tools":a.includes("util")?"src/plumbing/utils":"src/plumbing":"src"}async function Us(r,e){let t=await Ws(r,e),a=[];for(let i of t){if(i.includes("node_modules")||i.includes(".git")||i.includes("dist")||!i.endsWith(".ts")&&!i.endsWith(".tsx")&&!i.endsWith(".js"))continue;let s=B.relative(r,i),n=await H.readFile(i,"utf-8"),o=A1(B.basename(i),n),p=B.join(o,B.basename(i));s.startsWith(o)||a.push({file:B.basename(i),currentPath:s,suggestedPath:p,reason:`Heuristics suggest this belongs in ${o} based on purpose and content.`})}return a}async function ml(r){let e=["domain","infrastructure","plumbing"],t=0;for(let a of e){let i=B.join(r,"src",a);try{let n=(await H.readdir(i,{withFileTypes:!0})).filter(u=>u.isFile()&&!u.name.startsWith("."));if(n.length===0)continue;let o=n.map(u=>`- \`${u.name}\``).join(`
117
+ `),p=`This zone currently contains ${n.length} sprouts that define our ${a.toUpperCase()} layer.`,d=B.join(i,"README.md"),l=`# ${a.charAt(0).toUpperCase()+a.slice(1)} Zone
118
+
119
+ ${p}
120
+
121
+ ### Current Inhabitants:
122
+ ${o}
123
+
124
+ *Last synthesized by Marie on ${new Date().toLocaleDateString()}*`;await H.writeFile(d,l,"utf-8"),t++}catch(s){console.error(`Failed to synthesize manual for ${a}:`,s)}}return`Synthesized ${t} zone manuals. The knowledge is now fresh. \u2728`}async function R1(r,e){let t=await Us(r,e);if(t.length===0)return"No restoration needed. Project order is absolute. \u2728";let a=0;for(let i of t)try{let s=B.join(r,i.currentPath),n=B.join(r,i.suggestedPath);await H.mkdir(B.dirname(n),{recursive:!0}),await H.rename(s,n),a++}catch(s){console.error(`Restoration failed for ${i.file}:`,s)}return`Restoration complete. Moved ${a} files to their rightful homes. \u{1F338}`}async function Hs(r){let e=[{name:"domain",file:"DomainEntity.ts",content:`export abstract class DomainEntity {
125
+ constructor(public readonly id: string) {}
126
+ // The Domain is pure logic. No dependencies here. \u2728
127
+ }
128
+ `},{name:"infrastructure",file:"BaseAdapter.ts",content:`export abstract class BaseAdapter {
129
+ // Infrastructure connects the Domain to the world. \u{1F30D}
130
+ protected abstract connect(): Promise<void>;
131
+ }
132
+ `},{name:"plumbing",file:"BaseTool.ts",content:`export abstract class BaseTool {
133
+ // Plumbing is mechanical. Low-level work. \u{1F527}
134
+ protected format(input: string): string {
135
+ return input.trim();
136
+ }
137
+ }
138
+ `}],t=0;for(let a of e){let i=B.join(r,"src",a.name),s=B.join(i,a.file);try{await H.mkdir(i,{recursive:!0});try{await H.access(s)}catch{await H.writeFile(s,a.content,"utf-8"),t++}}catch(n){console.error(`Scaffolding failed for ${a.name}:`,n)}}return t>0?`Scaffolded ${t} zone abstractions. The patterns are set. \u{1F3DB}\uFE0F`:"Zones are already well-guarded."}async function C1(r,e,t){let a=[{name:"domain",suffix:"Entity.ts",comment:"Core logic and business rules. Purity and intent reside here. \u2728"},{name:"infrastructure",suffix:"Repository.ts",comment:"Connecting the core to the world. Adapters and data reside here. \u{1F30D}"},{name:"plumbing",suffix:"Utils.ts",comment:"The mechanical support. Technical utilities reside here. \u{1F527}"}],i=e.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase(),s=e.charAt(0).toUpperCase()+e.slice(1),n=0;for(let o of a){let p=B.join(r,"src",o.name,i),d=`${s}${o.suffix}`,l=B.join(p,d),u=`/**
139
+ * ${s} ${o.name.charAt(0).toUpperCase()+o.name.slice(1)}
140
+ * Intent: ${t}
141
+ *
142
+ * ${o.comment}
143
+ */
144
+
145
+ export class ${s}${o.suffix.replace(".ts","")} {
146
+ // A new sprout in the ${o.name} zone.
147
+ }
148
+ `;try{await H.mkdir(p,{recursive:!0}),await H.writeFile(l,u,"utf-8"),n++}catch(c){console.error(`Sowing failed for ${o.name}:`,c)}}return`Successfully sowed '${e}' across ${n} JOY zones. Your feature has taken root. \u{1F331}`}async function ui(r){let e=["domain","infrastructure","plumbing"],t=[];for(let a of e){let i=B.join(r,"src",a);try{let n=(await H.readdir(i,{withFileTypes:!0})).filter(o=>o.isFile()&&!o.name.startsWith("."));if(n.length>10){let o=n.map(l=>l.name),d=["Service","Repository","Entity","Tool","Util","Adapter"].filter(l=>o.some(u=>u.includes(l)));t.push({zone:a,fileCount:n.length,suggestedClusters:d.length>0?d:["common","core","shared"],reason:`The ${a} zone is becoming a bit crowded with ${n.length} files. Clustering will restore clarity.`})}}catch{}}return t}async function la(r){try{let e=["src/domain","src/infrastructure","src/plumbing"];for(let t of e)await H.access(B.join(r,t));return!0}catch{return!1}}async function k1(r,e){let t=await Ws(r,e),a=0;for(let i of t){if(i.includes("node_modules")||i.includes(".git")||i.includes("dist")||!i.endsWith(".ts")&&!i.endsWith(".tsx")&&!i.endsWith(".js"))continue;let s=B.relative(r,i);if(s.startsWith("src/domain")||s.startsWith("src/infrastructure")||s.startsWith("src/plumbing"))continue;let n=await H.readFile(i,"utf-8"),o=A1(B.basename(i),n),p=B.join(r,o,B.basename(i));try{await H.mkdir(B.dirname(p),{recursive:!0}),await H.rename(i,p),a++}catch(d){console.error(`Genesis move failed for ${i}:`,d)}}return await qs(r),await ml(r),`Genesis Ritual complete. Converted ${a} files to the JOY ecosystem. Your project is reborn. \u2728`}async function Ws(r,e){let t=[],a=new Set(L.getExcludedFiles()),i=5e3;async function s(n){if(e?.aborted||t.length>=i)return;let o=await H.readdir(n,{withFileTypes:!0});for(let p of o){if(e?.aborted||t.length>=i)return;let d=B.join(n,p.name);p.isDirectory()?a.has(p.name)||await s(d):t.push(d)}}try{await s(r)}catch(n){console.error(`[JoyTools] Scan failed for ${r}:`,n)}return t}var nt,H,B,ca=Y(()=>{nt=$(require("vscode"),1),H=$(require("fs/promises"),1),B=$(require("path"),1);Ke()});function Oe(r){return r instanceof Error?r.message:String(r)}var ma=Y(()=>{});var F1={};gt(F1,{getFileHistory:()=>wu,getStagedDiff:()=>D1,getUnstagedDiff:()=>I1,gitStatus:()=>M1,logReflection:()=>bu});async function M1(r){try{let{stdout:e}=await Gs("git status --short",{cwd:r});return e||"Clean workspace (no modifications)."}catch(e){return`Error getting git status: ${Oe(e)}`}}async function D1(r){try{let{stdout:e}=await Gs("git diff --cached",{cwd:r});return e.trim()?e:"No staged changes found. Use 'git add' to stage files."}catch(e){return`Error getting staged diff: ${Oe(e)}`}}async function I1(r){try{let{stdout:e}=await Gs("git diff",{cwd:r});return e.trim()?e:"No unstaged changes found."}catch(e){return`Error getting unstaged diff: ${Oe(e)}`}}async function wu(r,e){try{let{stdout:t}=await Gs(`git log -n 5 --pretty=format:"%h | %as | %an | %s" -- "${e}"`,{cwd:r});return t.trim()?`# File History: ${Js.basename(e)}
149
+
150
+ \`\`\`
151
+ ${t}
152
+ \`\`\``:"No git history found for this file."}catch(t){return`Error getting file history: ${Oe(t)}`}}async function bu(r){let e=ul.workspace.workspaceFolders;if(!e)return;let t=Js.join(e[0].uri.fsPath,"JOURNAL.md"),a=new Date().toISOString().split("T")[0],i=new Date().toLocaleTimeString(),s=`
153
+ ### ${a} ${i}
154
+ ${r}
155
+ `;try{await zs.appendFile(t,s,"utf-8")}catch{await zs.writeFile(t,`# Code Journal \u{1F4D3}
156
+
157
+ A space for reflection, ideas, and mindfulness.
158
+ `+s,"utf-8")}}var ul,zs,Js,hl,fl,Gs,Ks=Y(()=>{ul=$(require("vscode"),1),zs=$(require("fs/promises"),1),Js=$(require("path"),1),hl=require("child_process"),fl=require("util");ma();Gs=(0,fl.promisify)(hl.exec)});var vl,wl,Ve,bl,yl,ua,O1=Y(()=>{vl=require("node:child_process"),wl=require("node:util"),Ve=$(require("node:path"),1),bl=$(require("node:fs/promises"),1),yl=(0,wl.promisify)(vl.exec),ua=class{static async runAndTriage(e,t=process.cwd()){try{let{stdout:a,stderr:i}=await yl(e,{cwd:t}),s=a+i,n=this.parseOutput(s),o=`# \u{1F3E5} Test Triage Report
159
+
160
+ `;return o+=`**Status**: ${n.success?"Success \u2728":"Regressions Detected \u26A0\uFE0F"}
161
+ `,n.success?o+=`
162
+ All tests passed across the target suite. The project remains stable. \u2728
163
+ `:(o+=`
164
+ ## \u274C Failing Tests
165
+ `,n.failedTests.forEach(p=>o+=`- \`${p}\`
166
+ `),o+=`
167
+ ## \u{1F50D} Top Errors
168
+ `,n.errors.slice(0,3).forEach(p=>o+=`\`\`\`
169
+ ${p}
170
+ \`\`\`
171
+ `)),o}catch(a){let i=(a.stdout||"")+(a.stderr||""),s=this.parseOutput(i);if(s.failedTests.length>0){let n=`# \u{1F3E5} Test Triage Report
172
+
173
+ `;return n+=`**Status**: Regressions Detected \u26A0\uFE0F
174
+ `,n+=`
175
+ ## \u274C Failing Tests
176
+ `,s.failedTests.forEach(o=>n+=`- \`${o}\`
177
+ `),n}return`Failed to execute test suite: ${a.message}
178
+ ${i}`}}static async runTargetedTests(e,t){let a=Ve.basename(t,Ve.extname(t)),i=`**/${a}*test*`,s=[Ve.join(Ve.dirname(t),`${a}.test.ts`),Ve.join(Ve.dirname(t),`${a}.spec.ts`),Ve.join(Ve.dirname(t),"tests",`${a}.test.ts`),Ve.join(e,"tests",`${a}.test.ts`)];for(let n of s)try{await bl.access(n);let{stdout:o,stderr:p}=await yl(`npm test -- "${n}"`,{cwd:e});return this.parseOutput(o+p)}catch(o){if(o.code==="ENOENT")continue;return this.parseOutput((o.stdout||"")+(o.stderr||""))}return null}static parseOutput(e){let t=[],a=[],i=e.split(`
179
+ `),s=!1,n="";for(let o of i)(o.includes(" \u274C ")||o.includes(" FAIL ")||o.includes("FAILED"))&&t.push(o.trim()),o.includes("AssertionError")||o.includes("Error: ")?(s=!0,n=o.trim()+`
180
+ `):s&&(o.trim()===""||o.startsWith(" at ")?n+=o+`
181
+ `:(a.push(n.trim()),s=!1));return{success:t.length===0&&e.toLowerCase().includes("pass"),totalTests:i.length,failedTests:t,errors:a,rawOutput:e}}}});var _l,Yt,en=Y(()=>{_l=$(require("fs/promises"),1),Yt=class{static async analyze(e){try{let t=await _l.readFile(e,"utf-8"),i=t.split(`
182
+ `).length,n=(t.match(/\b(if|else if|for|while|case|catch|&&|\|\||!=|==|!==|===)\b/g)?.length||0)+1,o="Clean",p=[];return n>20||i>300?(o="Toxic",p.push("This module is significantly cluttered. Consider decomposing into smaller 'Sprouts'.")):n>10||i>150?(o="Tangled",p.push("The logic is starting to tangle. A refactor ('Bloom') is recommended.")):n>5&&(o="Sparking",p.push("The code is healthy but keep an eye on control flow depth.")),{cyclomaticComplexity:n,loc:i,clutterLevel:o,suggestions:p}}catch(t){throw new Error(`Failed to analyze complexity for ${e}: ${t}`)}}}});var xl={};gt(xl,{ContextArchiveService:()=>fa});var Tl,ot,rn,fa,L1=Y(()=>{Tl=$(require("vscode"),1),ot=$(require("fs/promises"),1),rn=$(require("path"),1),fa=class r{static instance;anchors=new Map;ready;saveQueue=Promise.resolve();static context;constructor(){this.ready=this.loadFromDisk()}static init(e){this.context=e}async awaitReady(){return this.ready}static getInstance(){return r.instance||(r.instance=new r),r.instance}async loadFromDisk(){if(!r.context)return;let e=r.context.storageUri;if(!e)return;let t=rn.join(e.fsPath,"marie_memory.json");try{await ot.mkdir(e.fsPath,{recursive:!0});let a=await ot.readFile(t,"utf-8"),i=JSON.parse(a);this.anchors=new Map(Object.entries(i))}catch{await this.migrateFromWorkspaceRoot(t)}}async migrateFromWorkspaceRoot(e){let t=Tl.workspace.workspaceFolders?.[0]?.uri.fsPath;if(!t)return;let a=rn.join(t,".marie_memory.json");try{let i=await ot.readFile(a,"utf-8"),s=JSON.parse(i);this.anchors=new Map(Object.entries(s));let n=JSON.stringify(Object.fromEntries(this.anchors.entries()),null,2);await ot.writeFile(e,n),await ot.rename(a,a+".bak"),console.log(`[ContextArchiveService] Migrated memory from ${a} to ${e}`)}catch{}}async saveToDisk(){if(!r.context)return;let e=r.context.storageUri;if(!e)return;let t=rn.join(e.fsPath,"marie_memory.json");try{await ot.mkdir(e.fsPath,{recursive:!0});let a=JSON.stringify(Object.fromEntries(this.anchors.entries()),null,2);await ot.writeFile(t,a)}catch(a){console.error("Failed to save strategic memory",a)}}async anchor(e){await this.ready,this.anchors.set(e.id,{...e,timestamp:Date.now()}),this.queueSave()}queueSave(){this.saveQueue=this.saveQueue.then(()=>this.saveToDisk()).catch(e=>console.error("Save queue error:",e))}getAllAnchors(){if(this.anchors.size===0)return"No context is currently anchored.";let e=[`# \u2693 Anchored Strategic Context
183
+
184
+ `],t=Array.from(this.anchors.values()).sort((a,i)=>i.timestamp-a.timestamp);for(let a of t)e.push(`### ${a.label} (${a.type})
185
+ `),e.push(`ID: \`${a.id}\` | Time: ${new Date(a.timestamp).toLocaleTimeString()}
186
+ `),e.push(`\`\`\`
187
+ ${a.content}
188
+ \`\`\`
189
+
190
+ `);return e.join("")}async release(e){await this.ready;let t=this.anchors.delete(e);return t&&this.queueSave(),t}}});var El,Pl,Rr,j1,qe,an=Y(()=>{El=require("node:child_process"),Pl=require("node:util"),Rr=$(require("node:path"),1),j1=(0,Pl.promisify)(El.exec),qe=class{static async runLint(e,t="npm run lint"){try{let{stdout:a,stderr:i}=await j1(t,{cwd:e});return[]}catch(a){let i=(a.stdout||"")+(a.stderr||"");return this.parseLintOutput(i,e)}}static async runLintOnFile(e,t){let a=Rr.isAbsolute(t)?Rr.relative(e,t):t;if(/\.(ts|js|tsx|jsx)$/.test(a))try{let{stdout:i,stderr:s}=await j1(`npx eslint "${a}" --format stylish`,{cwd:e});return[]}catch(i){let s=(i.stdout||"")+(i.stderr||""),n=this.parseLintOutput(s,e);if(n.length>0)return n}return this.runLint(e)}static async fixFile(e,t){let a=Rr.isAbsolute(t)?Rr.relative(e,t):t;if(/\.(ts|js|tsx|jsx)$/.test(a))try{let{stdout:i}=await j1(`npx eslint "${a}" --fix`,{cwd:e});return{success:!0,output:i}}catch(i){return{success:!1,output:(i.stdout||"")+(i.stderr||"")}}return{success:!1,output:"Auto-fix not supported for this file type."}}static parseLintOutput(e,t){let a=[],i=e.split(`
191
+ `),s="";for(let n of i){let o=n.match(/^(\/[^ ]+|\w:[\/][^ ]+)$/);if(o){s=o[1];continue}let p=n.match(/^\s+(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+([a-z0-9\-/]+|)$/i);p&&s&&a.push({file:Rr.relative(t,s),line:parseInt(p[1]),column:parseInt(p[2]),severity:p[3].toLowerCase(),message:p[4].trim(),ruleId:p[5]||void 0});let d=n.match(/^(.+)\((\d+),(\d+)\): (error|warning) (TS\d+): (.+)$/);d&&a.push({file:d[1],line:parseInt(d[2]),column:parseInt(d[3]),severity:d[4].toLowerCase(),ruleId:d[5],message:d[6].trim()});let l=n.match(/^([^:]+):(\d+):(\d+): (error|warning): (.+)$/);l&&a.push({file:l[1],line:parseInt(l[2]),column:parseInt(l[3]),severity:l[4].toLowerCase(),message:l[5].trim()})}return a}static suggestFix(e){let t=e.message.toLowerCase();return t.includes("unused")||t.includes("is defined but never used")?"Remove unused declaration or prefix with underscore.":t.includes("missing semicolon")||t.includes("extra semicolon")?"Add or remove semicolon.":t.includes("prefer-const")||t.includes("should be a const")?"Change 'let' to 'const'.":t.includes("no-var")||t.includes("unexpected var")?"Change 'var' to 'let' or 'const'.":null}}});var sn,Al=Y(()=>{sn=class{static activeProcesses=new Set;static register(e){this.activeProcesses.add(e),e.on("exit",()=>{this.activeProcesses.delete(e)}),e.on("error",()=>{this.activeProcesses.delete(e)})}static killAll(){console.log(`[MarieRegistry] Killing ${this.activeProcesses.size} active child processes...`);for(let e of this.activeProcesses)try{e.killed||e.kill("SIGKILL")}catch(t){console.error("[MarieRegistry] Failed to kill process:",t)}this.activeProcesses.clear()}}});var V1={};gt(V1,{TerminalService:()=>B1});var nn,on,Cl,_3,_u,Zt,Su,Rl,B1,q1=Y(()=>{nn=$(require("vscode"),1),on=require("child_process"),Cl=require("util");Al();_3=(0,Cl.promisify)(on.exec),_u=[/\bnpm\s+init\b(?!.*-y)/,/\bgit\s+commit\b(?!.*-m)/,/\bgit\s+push\b/,/\bnanoid\b/,/\bvi(m)?\b/,/\bnano\b/,/\bpython\b(?!.*-c)/,/\bnode\b(?!.*-e)/],Zt=1e4,Su=new RegExp("[\x1B\x9B][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]","g"),Rl=r=>r.replace(Su,""),B1=class{static terminal;static activeProcesses=new Set;static getTerminal(){return this.terminal&&!this.terminal.exitStatus?this.terminal:(this.terminal=nn.window.createTerminal("Marie's Workshop"),this.terminal)}static async runCommand(e,t){if(_u.some(l=>l.test(e)))return`Error: Command '${e}' appears to be interactive or potentially blocking. Please use non-interactive flags (e.g., -y, -m) or run it manually.`;if(/[;&|`$(){}]/.test(e)&&!(e.includes("--noEmit")||e.includes("npm run bloom")))return`Security Error: Command '${e}' contains suspicious shell metacharacters. High-order tools reject unvetted complex logic for systemic safety. \u{1F6D1}`;if(t?.aborted)return"Command aborted before execution.";let i=this.getTerminal();i.show(),i.sendText(e);let s=nn.workspace.workspaceFolders?.[0].uri.fsPath,n=process.env.SHELL||"/bin/sh",o,p=new Promise((l,u)=>{try{o=(0,on.spawn)(e,{cwd:s,shell:n,stdio:["ignore","pipe","pipe"],detached:!0}),sn.register(o);let c="",m="";o.stdout?.on("data",h=>{c+=h.toString(),c.length>Zt*2&&(c=c.substring(c.length-Zt*2))}),o.stderr?.on("data",h=>{m+=h.toString(),m.length>Zt*2&&(m=m.substring(m.length-Zt*2))}),o.on("close",h=>{l({stdout:c,stderr:m,code:h})}),o.on("error",h=>{u(h)})}catch(c){u(c)}}),d=()=>{if(o&&o.pid){console.log(`[Terminal] Killing process GROUP for command: ${e}`);try{process.kill(-o.pid,"SIGTERM")}catch{o.kill("SIGTERM")}setTimeout(()=>{try{o.pid&&process.kill(-o.pid,"SIGKILL")}catch{try{o.kill("SIGKILL")}catch{}}},1e3)}};t&&t.addEventListener("abort",d);try{this.activeProcesses.add(o);let{stdout:l,stderr:u,code:c}=await p;if(this.activeProcesses.delete(o),t?.aborted)return"Command aborted by user. Process cleanup initiated. \u{1F6D1}";if(c!==0&&c!==null){let v=Rl(u);return v.length>Zt&&(v=`... [Truncated] ...
192
+ `+v.substring(v.length-Zt)),`Command failed (Exit Code: ${c}):
193
+ ${v?`**Error Output:**
194
+ \`\`\`
195
+ ${v}
196
+ \`\`\``:"No error output captured."}`}let m=`Command executed successfully (Exit Code: 0). \u2728
197
+
198
+ `,h=(v,f)=>{if(!v)return"";let g=Rl(v);return g.length>Zt&&(g=`... [Truncated for brevity] ...
199
+ `+g.substring(g.length-Zt)),`**${f}:**
200
+ \`\`\`
201
+ ${g}
202
+ \`\`\`
203
+ `};return m+=h(l,"Output"),m+=h(u,"Errors/Warnings"),m||"Command completed with no output."}catch(l){return t?.aborted?"Command aborted by user. Process cleanup initiated. \u{1F6D1}":`Command execution failed: ${l.message}`}finally{this.activeProcesses.delete(o),t&&t.removeEventListener("abort",d)}}static cleanup(){console.log(`[Terminal] Cleaning up ${this.activeProcesses.size} active processes...`);for(let e of this.activeProcesses)try{e.kill("SIGKILL")}catch{}this.activeProcesses.clear()}}});var Xe,ne,Nl,ga,U1=Y(()=>{Xe=$(require("fs/promises"),1),ne=$(require("path"),1),Nl=$(require("crypto"),1);an();en();ga=class{static ZONES={DOMAIN:"domain",INFRASTRUCTURE:"infrastructure",PLUMBING:"plumbing"};static STATE_FILE=".marie/sentinel_state.json";static async audit(e,t){let a=await this.getAllFiles(e),i=t?[t]:a,s=[],n=[],o=[],p=[],d=[],l=new Map,u=new Map;for(let A of a){let k=await Xe.readFile(A,"utf8"),E=ne.relative(e,A),N=this.computeSemanticHash(k);if(u.has(N)){let _=u.get(N);_!==E&&p.push(`[Semantic Duplicate] ${E} matches ${_}`)}else u.set(N,E);let V=this.extractImports(k),w=(await Promise.all(V.map(_=>this.resolveImportDeep(_,A,e)))).filter(Boolean);l.set(E,w),i.includes(A)&&await this.analyzeFile(A,e,k,w,s,o,d)}let c=this.detectCycles(l);n.push(...c);let m=await qe.runLint(e),h=s.length*8+m.length*1+n.length*15+d.length*6+o.length*5+p.length*10,v=await this.loadState(e),f=h-v.lastEntropy;await this.saveState(e,{lastEntropy:h,history:[...v.history,{date:new Date().toISOString(),entropy:h}].slice(-20)});let g="Stable";h>30?g="Toxic":h>15?g="Fragile":h>7&&(g="Fluid");let b={timestamp:new Date().toISOString(),zoneViolations:s,circularDependencies:n,leakyAbstractions:o,duplication:p,entropyScore:h,entropyDelta:f,stability:g,hotspots:Array.from(new Set([...s.map(A=>A.split(" ")[1]),...d])).slice(0,5),quarantineCandidates:d,graphDefinition:this.generateMermaidGraph(l,s),passed:h<20&&f<=0};return await this.writeToSentinelLog(e,b),b}static computeSemanticHash(e){let t=e.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/\s+/g," ").replace(/\b(const|let|var)\s+\w+\b/g,"VAR").replace(/\bfunction\s+\w+\b/g,"FUNC").trim();return Nl.createHash("sha256").update(t).digest("hex")}static async resolveImportDeep(e,t,a){if(!e.startsWith("."))return null;let i=ne.dirname(t),s=[ne.resolve(i,e),ne.resolve(i,`${e}.ts`),ne.resolve(i,`${e}.tsx`),ne.resolve(i,`${e}.js`),ne.resolve(i,e,"index.ts"),ne.resolve(i,e,"index.js")];for(let n of s)try{if((await Xe.stat(n)).isFile())return ne.relative(a,n)}catch{continue}return null}static async analyzeFile(e,t,a,i,s,n,o){let p=ne.relative(t,e),d=this.getZone(p);if(!d)return;for(let u of i){let c=this.getZone(u);c&&(d===this.ZONES.DOMAIN&&c!==this.ZONES.DOMAIN&&s.push(`[Purity Breach] ${p} -> ${u} (${c})`),d===this.ZONES.INFRASTRUCTURE&&c===this.ZONES.PLUMBING&&s.push(`[Architecture Leak] ${p} -> ${u} (Infrastructure cannot use Plumbing)`))}d===this.ZONES.DOMAIN&&/\b(fs|path|os|vscode|express|React|HTMLElement|Buffer|process|window|document)\b/.test(a)&&n.push(`[System Leak] ${p} references non-domain types.`);let l=await Yt.analyze(e);(l.cyclomaticComplexity>20||l.clutterLevel==="Toxic")&&o.push(p)}static getZone(e){return e.includes("src/domain")||e.includes("/domain/")?this.ZONES.DOMAIN:e.includes("src/infrastructure")||e.includes("/infrastructure/")?this.ZONES.INFRASTRUCTURE:e.includes("src/plumbing")||e.includes("/plumbing/")?this.ZONES.PLUMBING:null}static extractImports(e){let t=[],a=/from\s+['"](.*?)['"]/g,i=/require\(['"](.*?)['"]\)/g,s;for(;(s=a.exec(e))!==null;)t.push(s[1]);for(;(s=i.exec(e))!==null;)t.push(s[1]);return Array.from(new Set(t))}static detectCycles(e){let t=[],a=new Set,i=new Set,s=(n,o)=>{a.add(n),i.add(n);for(let p of e.get(n)||[])i.has(p)?t.push(`\u{1F504} ${o.join(" -> ")} -> ${p}`):a.has(p)||s(p,[...o,p]);i.delete(n)};for(let n of e.keys())a.has(n)||s(n,[n]);return t}static generateMermaidGraph(e,t){let a=`graph TD;
204
+ `;return Array.from(e.keys()).slice(0,40).forEach(s=>{let n=s.replace(/[^a-zA-Z0-9]/g,"_"),o=ne.basename(s);e.get(s)?.forEach(p=>{let d=p.replace(/[^a-zA-Z0-9]/g,"_"),l=t.some(u=>u.includes(s)&&u.includes(p));a+=` ${n}[${o}] --> ${d}[${ne.basename(p)}];
205
+ `,l&&(a+=` style ${n} fill:#f96,stroke:#333,stroke-width:2px
206
+ `)})}),a}static async loadState(e){try{let t=await Xe.readFile(ne.join(e,this.STATE_FILE),"utf8");return JSON.parse(t)}catch{return{lastEntropy:0,history:[]}}}static async saveState(e,t){let a=ne.join(e,".marie");await Xe.mkdir(a,{recursive:!0}),await Xe.writeFile(ne.join(e,this.STATE_FILE),JSON.stringify(t,null,2))}static async getAllFiles(e){let t=await Xe.readdir(e,{withFileTypes:!0});return(await Promise.all(t.map(i=>{let s=ne.resolve(e,i.name);return s.includes("node_modules")||s.includes(".git")||s.includes("dist")?[]:i.isDirectory()?this.getAllFiles(s):s}))).flat().filter(i=>/\.(ts|tsx)$/.test(i))}static async writeToSentinelLog(e,t){let a=ne.join(e,"SENTINEL.md"),i=`
207
+ # \u{1F6E1}\uFE0F Sentinel Report: ${new Date().toLocaleDateString()} ${new Date().toLocaleTimeString()}
208
+
209
+ **Stability**: ${t.stability}
210
+ **Entropy**: ${t.entropyScore} (${t.entropyDelta>0?"\u26A0\uFE0F Regression":"\u2705 Monotonic"})
211
+ **Ratchet**: ${t.entropyDelta>0?"\u{1F6AB} LOCKED":"\u{1F513} OPEN"}
212
+
213
+ ## \u{1F4CA} Metrics
214
+ - **Zoning Law**: ${t.zoneViolations.length} violations
215
+ - **Cyclic Rot**: ${t.circularDependencies.length} cycles
216
+ - **Duplication**: ${t.duplication.length} instances
217
+ - **Toxicity**: ${t.quarantineCandidates.length} hotspots
218
+
219
+ ## \u{1F5FA}\uFE0F Visual Architecture
220
+ \`\`\`mermaid
221
+ ${t.graphDefinition}
222
+ \`\`\`
223
+
224
+ ## \u{1F4DC} High-Priority Alerts
225
+ ${t.zoneViolations.slice(0,5).map(s=>`- \u274C ${s}`).join(`
226
+ `)}
227
+ ${t.circularDependencies.slice(0,3).map(s=>`- \u{1F504} ${s}`).join(`
228
+ `)}
229
+ ${t.duplication.slice(0,3).map(s=>`- \u{1F46F} ${s}`).join(`
230
+ `)}
231
+
232
+ ---
233
+ *Marie Sentinel v3.1 \u2014 Grounded Architectural Guardian*
234
+ `;await Xe.writeFile(a,i)}}});var ya,fi,Dl=Y(()=>{ya=$(require("node:fs/promises"),1),fi=class{static async mend(e,t){let i=(await ya.readFile(e,"utf-8")).split(`
235
+ `),s=0,n=[...t].sort((o,p)=>p.line-o.line);for(let o of n){let p=o.line-1;if(p<0||p>=i.length)continue;let d=i[p],l=d;if(o.message.includes("is defined but never used")||o.message.includes("unused")){let u=o.message.match(/'([^']+)'/),c=u?u[1]:null;c&&d.includes(c)&&(d=d.replace(new RegExp(`\\b${c}\\b`),`_${c}`))}(o.ruleId==="prefer-const"||o.message.includes("should be a const"))&&(d=d.replace(/\blet\b/,"const")),o.ruleId==="semi"&&o.message.includes("Missing semicolon")&&(d.trim().endsWith(";")||(d=d.trimEnd()+";")),o.ruleId==="no-var"&&(d=d.replace(/\bvar\b/,"let")),d!==l&&(i[p]=d,s++)}return s>0?(await ya.writeFile(e,i.join(`
236
+ `),"utf-8"),{mended:!0,fixedCount:s}):{mended:!1,fixedCount:0}}static async enforceTypeSovereignty(e){let t=await ya.readFile(e,"utf-8"),a=t.replace(/\s+as\s+any\b/g," /* \u{1F6A9} Type sovereignty breach corrected */");return t!==a?(await ya.writeFile(e,a,"utf-8"),1):0}}});var $l={};gt($l,{QualityGuardrailService:()=>H1});var Il,Fl,H1,Ol=Y(()=>{an();O1();en();Dl();U1();Il=$(require("node:path"),1),Fl=$(require("node:fs/promises"),1),H1=class{static async evaluate(e,t){let a=[],i=!0,s=!1,n=0,o=await ga.audit(e,t);o.zoneViolations.length>0&&(a.push(...o.zoneViolations),i=!1),o.circularDependencies.length>0&&(a.push(...o.circularDependencies),i=!1),o.leakyAbstractions.length>0&&(a.push(...o.leakyAbstractions),i=!1),o.duplication.length>0&&(a.push(...o.duplication),i=!1),o.entropyDelta>0&&(a.push(`RATCHET LOCK: Entropy increased by +${o.entropyDelta}. Changes must maintain or lower entropy.`),i=!1),o.quarantineCandidates.includes(Il.relative(e,t))&&(a.push("TOXICITY ALERT: This file is a quarantine candidate. Immediate refactor required."),i=!1),n+=await fi.enforceTypeSovereignty(t);let p=await qe.runLintOnFile(e,t);if(p.length>0){(await qe.fixFile(e,t)).success&&(s=!0);let f=await fi.mend(t,p);f.mended&&(n+=f.fixedCount,p=await qe.runLintOnFile(e,t))}let d=p.filter(v=>v.severity==="error");d.length>0&&(i=!1,a.push(`Lint Regression: ${d.length} persistent error(s) found.`));let l=await Yt.analyze(t);l.clutterLevel==="Toxic"&&(i=!1,a.push(`Complexity Alert: Cyclomatic complexity (${l.cyclomaticComplexity}) exceeds production safety limits.`));let c=((await Fl.readFile(t,"utf-8")).match(/:\s*any\b|as\s+any\b|<\s*any\s*>/gi)||[]).length;c>0&&(i=!1,a.push(`Type Sovereignty Breach: ${c} instance(s) of 'any' detected. Be more precise.`));let m=await ua.runTargetedTests(e,t);m&&!m.success&&(i=!1,a.push(`Test Regression: ${m.failedTests.length} related test(s) failed.`));let h=100;return h-=o.zoneViolations.length*15,h-=o.circularDependencies.length*20,h-=o.leakyAbstractions.length*10,h-=o.duplication.length*10,h-=o.entropyDelta>0?50:0,h-=d.length*10,h-=l.cyclomaticComplexity>10?20:0,h-=c*5,m&&!m.success&&(h-=40),h=Math.max(0,h),{passed:i,score:h,violations:a,autoFixed:s,surgicalMends:n,metrics:{lintErrors:d.length,complexity:l.cyclomaticComplexity,testsPassed:m?m.success:null,zoningHealthy:o.zoneViolations.length===0,typeSovereignty:c===0,entropy:o.entropyScore}}}}});var Bc=_e((tg,jc)=>{"use strict";var oe={};jc.exports=oe;function Lc(r){return r<0?-1:1}function y6(r){return r%1===.5&&(r&1)===0?Math.floor(r):Math.round(r)}function nr(r,e){e.unsigned||--r;let t=e.unsigned?0:-Math.pow(2,r),a=Math.pow(2,r)-1,i=e.moduloBitLength?Math.pow(2,e.moduloBitLength):Math.pow(2,r),s=e.moduloBitLength?Math.pow(2,e.moduloBitLength-1):Math.pow(2,r-1);return function(n,o){o||(o={});let p=+n;if(o.enforceRange){if(!Number.isFinite(p))throw new TypeError("Argument is not a finite number");if(p=Lc(p)*Math.floor(Math.abs(p)),p<t||p>a)throw new TypeError("Argument is not in byte range");return p}if(!isNaN(p)&&o.clamp)return p=y6(p),p<t&&(p=t),p>a&&(p=a),p;if(!Number.isFinite(p)||p===0)return 0;if(p=Lc(p)*Math.floor(Math.abs(p)),p=p%i,!e.unsigned&&p>=s)return p-i;if(e.unsigned){if(p<0)p+=i;else if(p===-0)return 0}return p}}oe.void=function(){};oe.boolean=function(r){return!!r};oe.byte=nr(8,{unsigned:!1});oe.octet=nr(8,{unsigned:!0});oe.short=nr(16,{unsigned:!1});oe["unsigned short"]=nr(16,{unsigned:!0});oe.long=nr(32,{unsigned:!1});oe["unsigned long"]=nr(32,{unsigned:!0});oe["long long"]=nr(32,{unsigned:!1,moduloBitLength:64});oe["unsigned long long"]=nr(32,{unsigned:!0,moduloBitLength:64});oe.double=function(r){let e=+r;if(!Number.isFinite(e))throw new TypeError("Argument is not a finite floating-point value");return e};oe["unrestricted double"]=function(r){let e=+r;if(isNaN(e))throw new TypeError("Argument is NaN");return e};oe.float=oe.double;oe["unrestricted float"]=oe["unrestricted double"];oe.DOMString=function(r,e){return e||(e={}),e.treatNullAsEmptyString&&r===null?"":String(r)};oe.ByteString=function(r,e){let t=String(r),a;for(let i=0;(a=t.codePointAt(i))!==void 0;++i)if(a>255)throw new TypeError("Argument is not a valid bytestring");return t};oe.USVString=function(r){let e=String(r),t=e.length,a=[];for(let i=0;i<t;++i){let s=e.charCodeAt(i);if(s<55296||s>57343)a.push(String.fromCodePoint(s));else if(56320<=s&&s<=57343)a.push(String.fromCodePoint(65533));else if(i===t-1)a.push(String.fromCodePoint(65533));else{let n=e.charCodeAt(i+1);if(56320<=n&&n<=57343){let o=s&1023,p=n&1023;a.push(String.fromCodePoint(65536+1024*o+p)),++i}else a.push(String.fromCodePoint(65533))}}return a.join("")};oe.Date=function(r,e){if(!(r instanceof Date))throw new TypeError("Argument is not a Date object");if(!isNaN(r))return r};oe.RegExp=function(r,e){return r instanceof RegExp||(r=new RegExp(r)),r}});var Vc=_e((rg,or)=>{"use strict";or.exports.mixin=function(e,t){let a=Object.getOwnPropertyNames(t);for(let i=0;i<a.length;++i)Object.defineProperty(e,a[i],Object.getOwnPropertyDescriptor(t,a[i]))};or.exports.wrapperSymbol=Symbol("wrapper");or.exports.implSymbol=Symbol("impl");or.exports.wrapperForImpl=function(r){return r[or.exports.wrapperSymbol]};or.exports.implForWrapper=function(r){return r[or.exports.implSymbol]}});var qc=_e((ag,v6)=>{v6.exports=[[[0,44],"disallowed_STD3_valid"],[[45,46],"valid"],[[47,47],"disallowed_STD3_valid"],[[48,57],"valid"],[[58,64],"disallowed_STD3_valid"],[[65,65],"mapped",[97]],[[66,66],"mapped",[98]],[[67,67],"mapped",[99]],[[68,68],"mapped",[100]],[[69,69],"mapped",[101]],[[70,70],"mapped",[102]],[[71,71],"mapped",[103]],[[72,72],"mapped",[104]],[[73,73],"mapped",[105]],[[74,74],"mapped",[106]],[[75,75],"mapped",[107]],[[76,76],"mapped",[108]],[[77,77],"mapped",[109]],[[78,78],"mapped",[110]],[[79,79],"mapped",[111]],[[80,80],"mapped",[112]],[[81,81],"mapped",[113]],[[82,82],"mapped",[114]],[[83,83],"mapped",[115]],[[84,84],"mapped",[116]],[[85,85],"mapped",[117]],[[86,86],"mapped",[118]],[[87,87],"mapped",[119]],[[88,88],"mapped",[120]],[[89,89],"mapped",[121]],[[90,90],"mapped",[122]],[[91,96],"disallowed_STD3_valid"],[[97,122],"valid"],[[123,127],"disallowed_STD3_valid"],[[128,159],"disallowed"],[[160,160],"disallowed_STD3_mapped",[32]],[[161,167],"valid",[],"NV8"],[[168,168],"disallowed_STD3_mapped",[32,776]],[[169,169],"valid",[],"NV8"],[[170,170],"mapped",[97]],[[171,172],"valid",[],"NV8"],[[173,173],"ignored"],[[174,174],"valid",[],"NV8"],[[175,175],"disallowed_STD3_mapped",[32,772]],[[176,177],"valid",[],"NV8"],[[178,178],"mapped",[50]],[[179,179],"mapped",[51]],[[180,180],"disallowed_STD3_mapped",[32,769]],[[181,181],"mapped",[956]],[[182,182],"valid",[],"NV8"],[[183,183],"valid"],[[184,184],"disallowed_STD3_mapped",[32,807]],[[185,185],"mapped",[49]],[[186,186],"mapped",[111]],[[187,187],"valid",[],"NV8"],[[188,188],"mapped",[49,8260,52]],[[189,189],"mapped",[49,8260,50]],[[190,190],"mapped",[51,8260,52]],[[191,191],"valid",[],"NV8"],[[192,192],"mapped",[224]],[[193,193],"mapped",[225]],[[194,194],"mapped",[226]],[[195,195],"mapped",[227]],[[196,196],"mapped",[228]],[[197,197],"mapped",[229]],[[198,198],"mapped",[230]],[[199,199],"mapped",[231]],[[200,200],"mapped",[232]],[[201,201],"mapped",[233]],[[202,202],"mapped",[234]],[[203,203],"mapped",[235]],[[204,204],"mapped",[236]],[[205,205],"mapped",[237]],[[206,206],"mapped",[238]],[[207,207],"mapped",[239]],[[208,208],"mapped",[240]],[[209,209],"mapped",[241]],[[210,210],"mapped",[242]],[[211,211],"mapped",[243]],[[212,212],"mapped",[244]],[[213,213],"mapped",[245]],[[214,214],"mapped",[246]],[[215,215],"valid",[],"NV8"],[[216,216],"mapped",[248]],[[217,217],"mapped",[249]],[[218,218],"mapped",[250]],[[219,219],"mapped",[251]],[[220,220],"mapped",[252]],[[221,221],"mapped",[253]],[[222,222],"mapped",[254]],[[223,223],"deviation",[115,115]],[[224,246],"valid"],[[247,247],"valid",[],"NV8"],[[248,255],"valid"],[[256,256],"mapped",[257]],[[257,257],"valid"],[[258,258],"mapped",[259]],[[259,259],"valid"],[[260,260],"mapped",[261]],[[261,261],"valid"],[[262,262],"mapped",[263]],[[263,263],"valid"],[[264,264],"mapped",[265]],[[265,265],"valid"],[[266,266],"mapped",[267]],[[267,267],"valid"],[[268,268],"mapped",[269]],[[269,269],"valid"],[[270,270],"mapped",[271]],[[271,271],"valid"],[[272,272],"mapped",[273]],[[273,273],"valid"],[[274,274],"mapped",[275]],[[275,275],"valid"],[[276,276],"mapped",[277]],[[277,277],"valid"],[[278,278],"mapped",[279]],[[279,279],"valid"],[[280,280],"mapped",[281]],[[281,281],"valid"],[[282,282],"mapped",[283]],[[283,283],"valid"],[[284,284],"mapped",[285]],[[285,285],"valid"],[[286,286],"mapped",[287]],[[287,287],"valid"],[[288,288],"mapped",[289]],[[289,289],"valid"],[[290,290],"mapped",[291]],[[291,291],"valid"],[[292,292],"mapped",[293]],[[293,293],"valid"],[[294,294],"mapped",[295]],[[295,295],"valid"],[[296,296],"mapped",[297]],[[297,297],"valid"],[[298,298],"mapped",[299]],[[299,299],"valid"],[[300,300],"mapped",[301]],[[301,301],"valid"],[[302,302],"mapped",[303]],[[303,303],"valid"],[[304,304],"mapped",[105,775]],[[305,305],"valid"],[[306,307],"mapped",[105,106]],[[308,308],"mapped",[309]],[[309,309],"valid"],[[310,310],"mapped",[311]],[[311,312],"valid"],[[313,313],"mapped",[314]],[[314,314],"valid"],[[315,315],"mapped",[316]],[[316,316],"valid"],[[317,317],"mapped",[318]],[[318,318],"valid"],[[319,320],"mapped",[108,183]],[[321,321],"mapped",[322]],[[322,322],"valid"],[[323,323],"mapped",[324]],[[324,324],"valid"],[[325,325],"mapped",[326]],[[326,326],"valid"],[[327,327],"mapped",[328]],[[328,328],"valid"],[[329,329],"mapped",[700,110]],[[330,330],"mapped",[331]],[[331,331],"valid"],[[332,332],"mapped",[333]],[[333,333],"valid"],[[334,334],"mapped",[335]],[[335,335],"valid"],[[336,336],"mapped",[337]],[[337,337],"valid"],[[338,338],"mapped",[339]],[[339,339],"valid"],[[340,340],"mapped",[341]],[[341,341],"valid"],[[342,342],"mapped",[343]],[[343,343],"valid"],[[344,344],"mapped",[345]],[[345,345],"valid"],[[346,346],"mapped",[347]],[[347,347],"valid"],[[348,348],"mapped",[349]],[[349,349],"valid"],[[350,350],"mapped",[351]],[[351,351],"valid"],[[352,352],"mapped",[353]],[[353,353],"valid"],[[354,354],"mapped",[355]],[[355,355],"valid"],[[356,356],"mapped",[357]],[[357,357],"valid"],[[358,358],"mapped",[359]],[[359,359],"valid"],[[360,360],"mapped",[361]],[[361,361],"valid"],[[362,362],"mapped",[363]],[[363,363],"valid"],[[364,364],"mapped",[365]],[[365,365],"valid"],[[366,366],"mapped",[367]],[[367,367],"valid"],[[368,368],"mapped",[369]],[[369,369],"valid"],[[370,370],"mapped",[371]],[[371,371],"valid"],[[372,372],"mapped",[373]],[[373,373],"valid"],[[374,374],"mapped",[375]],[[375,375],"valid"],[[376,376],"mapped",[255]],[[377,377],"mapped",[378]],[[378,378],"valid"],[[379,379],"mapped",[380]],[[380,380],"valid"],[[381,381],"mapped",[382]],[[382,382],"valid"],[[383,383],"mapped",[115]],[[384,384],"valid"],[[385,385],"mapped",[595]],[[386,386],"mapped",[387]],[[387,387],"valid"],[[388,388],"mapped",[389]],[[389,389],"valid"],[[390,390],"mapped",[596]],[[391,391],"mapped",[392]],[[392,392],"valid"],[[393,393],"mapped",[598]],[[394,394],"mapped",[599]],[[395,395],"mapped",[396]],[[396,397],"valid"],[[398,398],"mapped",[477]],[[399,399],"mapped",[601]],[[400,400],"mapped",[603]],[[401,401],"mapped",[402]],[[402,402],"valid"],[[403,403],"mapped",[608]],[[404,404],"mapped",[611]],[[405,405],"valid"],[[406,406],"mapped",[617]],[[407,407],"mapped",[616]],[[408,408],"mapped",[409]],[[409,411],"valid"],[[412,412],"mapped",[623]],[[413,413],"mapped",[626]],[[414,414],"valid"],[[415,415],"mapped",[629]],[[416,416],"mapped",[417]],[[417,417],"valid"],[[418,418],"mapped",[419]],[[419,419],"valid"],[[420,420],"mapped",[421]],[[421,421],"valid"],[[422,422],"mapped",[640]],[[423,423],"mapped",[424]],[[424,424],"valid"],[[425,425],"mapped",[643]],[[426,427],"valid"],[[428,428],"mapped",[429]],[[429,429],"valid"],[[430,430],"mapped",[648]],[[431,431],"mapped",[432]],[[432,432],"valid"],[[433,433],"mapped",[650]],[[434,434],"mapped",[651]],[[435,435],"mapped",[436]],[[436,436],"valid"],[[437,437],"mapped",[438]],[[438,438],"valid"],[[439,439],"mapped",[658]],[[440,440],"mapped",[441]],[[441,443],"valid"],[[444,444],"mapped",[445]],[[445,451],"valid"],[[452,454],"mapped",[100,382]],[[455,457],"mapped",[108,106]],[[458,460],"mapped",[110,106]],[[461,461],"mapped",[462]],[[462,462],"valid"],[[463,463],"mapped",[464]],[[464,464],"valid"],[[465,465],"mapped",[466]],[[466,466],"valid"],[[467,467],"mapped",[468]],[[468,468],"valid"],[[469,469],"mapped",[470]],[[470,470],"valid"],[[471,471],"mapped",[472]],[[472,472],"valid"],[[473,473],"mapped",[474]],[[474,474],"valid"],[[475,475],"mapped",[476]],[[476,477],"valid"],[[478,478],"mapped",[479]],[[479,479],"valid"],[[480,480],"mapped",[481]],[[481,481],"valid"],[[482,482],"mapped",[483]],[[483,483],"valid"],[[484,484],"mapped",[485]],[[485,485],"valid"],[[486,486],"mapped",[487]],[[487,487],"valid"],[[488,488],"mapped",[489]],[[489,489],"valid"],[[490,490],"mapped",[491]],[[491,491],"valid"],[[492,492],"mapped",[493]],[[493,493],"valid"],[[494,494],"mapped",[495]],[[495,496],"valid"],[[497,499],"mapped",[100,122]],[[500,500],"mapped",[501]],[[501,501],"valid"],[[502,502],"mapped",[405]],[[503,503],"mapped",[447]],[[504,504],"mapped",[505]],[[505,505],"valid"],[[506,506],"mapped",[507]],[[507,507],"valid"],[[508,508],"mapped",[509]],[[509,509],"valid"],[[510,510],"mapped",[511]],[[511,511],"valid"],[[512,512],"mapped",[513]],[[513,513],"valid"],[[514,514],"mapped",[515]],[[515,515],"valid"],[[516,516],"mapped",[517]],[[517,517],"valid"],[[518,518],"mapped",[519]],[[519,519],"valid"],[[520,520],"mapped",[521]],[[521,521],"valid"],[[522,522],"mapped",[523]],[[523,523],"valid"],[[524,524],"mapped",[525]],[[525,525],"valid"],[[526,526],"mapped",[527]],[[527,527],"valid"],[[528,528],"mapped",[529]],[[529,529],"valid"],[[530,530],"mapped",[531]],[[531,531],"valid"],[[532,532],"mapped",[533]],[[533,533],"valid"],[[534,534],"mapped",[535]],[[535,535],"valid"],[[536,536],"mapped",[537]],[[537,537],"valid"],[[538,538],"mapped",[539]],[[539,539],"valid"],[[540,540],"mapped",[541]],[[541,541],"valid"],[[542,542],"mapped",[543]],[[543,543],"valid"],[[544,544],"mapped",[414]],[[545,545],"valid"],[[546,546],"mapped",[547]],[[547,547],"valid"],[[548,548],"mapped",[549]],[[549,549],"valid"],[[550,550],"mapped",[551]],[[551,551],"valid"],[[552,552],"mapped",[553]],[[553,553],"valid"],[[554,554],"mapped",[555]],[[555,555],"valid"],[[556,556],"mapped",[557]],[[557,557],"valid"],[[558,558],"mapped",[559]],[[559,559],"valid"],[[560,560],"mapped",[561]],[[561,561],"valid"],[[562,562],"mapped",[563]],[[563,563],"valid"],[[564,566],"valid"],[[567,569],"valid"],[[570,570],"mapped",[11365]],[[571,571],"mapped",[572]],[[572,572],"valid"],[[573,573],"mapped",[410]],[[574,574],"mapped",[11366]],[[575,576],"valid"],[[577,577],"mapped",[578]],[[578,578],"valid"],[[579,579],"mapped",[384]],[[580,580],"mapped",[649]],[[581,581],"mapped",[652]],[[582,582],"mapped",[583]],[[583,583],"valid"],[[584,584],"mapped",[585]],[[585,585],"valid"],[[586,586],"mapped",[587]],[[587,587],"valid"],[[588,588],"mapped",[589]],[[589,589],"valid"],[[590,590],"mapped",[591]],[[591,591],"valid"],[[592,680],"valid"],[[681,685],"valid"],[[686,687],"valid"],[[688,688],"mapped",[104]],[[689,689],"mapped",[614]],[[690,690],"mapped",[106]],[[691,691],"mapped",[114]],[[692,692],"mapped",[633]],[[693,693],"mapped",[635]],[[694,694],"mapped",[641]],[[695,695],"mapped",[119]],[[696,696],"mapped",[121]],[[697,705],"valid"],[[706,709],"valid",[],"NV8"],[[710,721],"valid"],[[722,727],"valid",[],"NV8"],[[728,728],"disallowed_STD3_mapped",[32,774]],[[729,729],"disallowed_STD3_mapped",[32,775]],[[730,730],"disallowed_STD3_mapped",[32,778]],[[731,731],"disallowed_STD3_mapped",[32,808]],[[732,732],"disallowed_STD3_mapped",[32,771]],[[733,733],"disallowed_STD3_mapped",[32,779]],[[734,734],"valid",[],"NV8"],[[735,735],"valid",[],"NV8"],[[736,736],"mapped",[611]],[[737,737],"mapped",[108]],[[738,738],"mapped",[115]],[[739,739],"mapped",[120]],[[740,740],"mapped",[661]],[[741,745],"valid",[],"NV8"],[[746,747],"valid",[],"NV8"],[[748,748],"valid"],[[749,749],"valid",[],"NV8"],[[750,750],"valid"],[[751,767],"valid",[],"NV8"],[[768,831],"valid"],[[832,832],"mapped",[768]],[[833,833],"mapped",[769]],[[834,834],"valid"],[[835,835],"mapped",[787]],[[836,836],"mapped",[776,769]],[[837,837],"mapped",[953]],[[838,846],"valid"],[[847,847],"ignored"],[[848,855],"valid"],[[856,860],"valid"],[[861,863],"valid"],[[864,865],"valid"],[[866,866],"valid"],[[867,879],"valid"],[[880,880],"mapped",[881]],[[881,881],"valid"],[[882,882],"mapped",[883]],[[883,883],"valid"],[[884,884],"mapped",[697]],[[885,885],"valid"],[[886,886],"mapped",[887]],[[887,887],"valid"],[[888,889],"disallowed"],[[890,890],"disallowed_STD3_mapped",[32,953]],[[891,893],"valid"],[[894,894],"disallowed_STD3_mapped",[59]],[[895,895],"mapped",[1011]],[[896,899],"disallowed"],[[900,900],"disallowed_STD3_mapped",[32,769]],[[901,901],"disallowed_STD3_mapped",[32,776,769]],[[902,902],"mapped",[940]],[[903,903],"mapped",[183]],[[904,904],"mapped",[941]],[[905,905],"mapped",[942]],[[906,906],"mapped",[943]],[[907,907],"disallowed"],[[908,908],"mapped",[972]],[[909,909],"disallowed"],[[910,910],"mapped",[973]],[[911,911],"mapped",[974]],[[912,912],"valid"],[[913,913],"mapped",[945]],[[914,914],"mapped",[946]],[[915,915],"mapped",[947]],[[916,916],"mapped",[948]],[[917,917],"mapped",[949]],[[918,918],"mapped",[950]],[[919,919],"mapped",[951]],[[920,920],"mapped",[952]],[[921,921],"mapped",[953]],[[922,922],"mapped",[954]],[[923,923],"mapped",[955]],[[924,924],"mapped",[956]],[[925,925],"mapped",[957]],[[926,926],"mapped",[958]],[[927,927],"mapped",[959]],[[928,928],"mapped",[960]],[[929,929],"mapped",[961]],[[930,930],"disallowed"],[[931,931],"mapped",[963]],[[932,932],"mapped",[964]],[[933,933],"mapped",[965]],[[934,934],"mapped",[966]],[[935,935],"mapped",[967]],[[936,936],"mapped",[968]],[[937,937],"mapped",[969]],[[938,938],"mapped",[970]],[[939,939],"mapped",[971]],[[940,961],"valid"],[[962,962],"deviation",[963]],[[963,974],"valid"],[[975,975],"mapped",[983]],[[976,976],"mapped",[946]],[[977,977],"mapped",[952]],[[978,978],"mapped",[965]],[[979,979],"mapped",[973]],[[980,980],"mapped",[971]],[[981,981],"mapped",[966]],[[982,982],"mapped",[960]],[[983,983],"valid"],[[984,984],"mapped",[985]],[[985,985],"valid"],[[986,986],"mapped",[987]],[[987,987],"valid"],[[988,988],"mapped",[989]],[[989,989],"valid"],[[990,990],"mapped",[991]],[[991,991],"valid"],[[992,992],"mapped",[993]],[[993,993],"valid"],[[994,994],"mapped",[995]],[[995,995],"valid"],[[996,996],"mapped",[997]],[[997,997],"valid"],[[998,998],"mapped",[999]],[[999,999],"valid"],[[1e3,1e3],"mapped",[1001]],[[1001,1001],"valid"],[[1002,1002],"mapped",[1003]],[[1003,1003],"valid"],[[1004,1004],"mapped",[1005]],[[1005,1005],"valid"],[[1006,1006],"mapped",[1007]],[[1007,1007],"valid"],[[1008,1008],"mapped",[954]],[[1009,1009],"mapped",[961]],[[1010,1010],"mapped",[963]],[[1011,1011],"valid"],[[1012,1012],"mapped",[952]],[[1013,1013],"mapped",[949]],[[1014,1014],"valid",[],"NV8"],[[1015,1015],"mapped",[1016]],[[1016,1016],"valid"],[[1017,1017],"mapped",[963]],[[1018,1018],"mapped",[1019]],[[1019,1019],"valid"],[[1020,1020],"valid"],[[1021,1021],"mapped",[891]],[[1022,1022],"mapped",[892]],[[1023,1023],"mapped",[893]],[[1024,1024],"mapped",[1104]],[[1025,1025],"mapped",[1105]],[[1026,1026],"mapped",[1106]],[[1027,1027],"mapped",[1107]],[[1028,1028],"mapped",[1108]],[[1029,1029],"mapped",[1109]],[[1030,1030],"mapped",[1110]],[[1031,1031],"mapped",[1111]],[[1032,1032],"mapped",[1112]],[[1033,1033],"mapped",[1113]],[[1034,1034],"mapped",[1114]],[[1035,1035],"mapped",[1115]],[[1036,1036],"mapped",[1116]],[[1037,1037],"mapped",[1117]],[[1038,1038],"mapped",[1118]],[[1039,1039],"mapped",[1119]],[[1040,1040],"mapped",[1072]],[[1041,1041],"mapped",[1073]],[[1042,1042],"mapped",[1074]],[[1043,1043],"mapped",[1075]],[[1044,1044],"mapped",[1076]],[[1045,1045],"mapped",[1077]],[[1046,1046],"mapped",[1078]],[[1047,1047],"mapped",[1079]],[[1048,1048],"mapped",[1080]],[[1049,1049],"mapped",[1081]],[[1050,1050],"mapped",[1082]],[[1051,1051],"mapped",[1083]],[[1052,1052],"mapped",[1084]],[[1053,1053],"mapped",[1085]],[[1054,1054],"mapped",[1086]],[[1055,1055],"mapped",[1087]],[[1056,1056],"mapped",[1088]],[[1057,1057],"mapped",[1089]],[[1058,1058],"mapped",[1090]],[[1059,1059],"mapped",[1091]],[[1060,1060],"mapped",[1092]],[[1061,1061],"mapped",[1093]],[[1062,1062],"mapped",[1094]],[[1063,1063],"mapped",[1095]],[[1064,1064],"mapped",[1096]],[[1065,1065],"mapped",[1097]],[[1066,1066],"mapped",[1098]],[[1067,1067],"mapped",[1099]],[[1068,1068],"mapped",[1100]],[[1069,1069],"mapped",[1101]],[[1070,1070],"mapped",[1102]],[[1071,1071],"mapped",[1103]],[[1072,1103],"valid"],[[1104,1104],"valid"],[[1105,1116],"valid"],[[1117,1117],"valid"],[[1118,1119],"valid"],[[1120,1120],"mapped",[1121]],[[1121,1121],"valid"],[[1122,1122],"mapped",[1123]],[[1123,1123],"valid"],[[1124,1124],"mapped",[1125]],[[1125,1125],"valid"],[[1126,1126],"mapped",[1127]],[[1127,1127],"valid"],[[1128,1128],"mapped",[1129]],[[1129,1129],"valid"],[[1130,1130],"mapped",[1131]],[[1131,1131],"valid"],[[1132,1132],"mapped",[1133]],[[1133,1133],"valid"],[[1134,1134],"mapped",[1135]],[[1135,1135],"valid"],[[1136,1136],"mapped",[1137]],[[1137,1137],"valid"],[[1138,1138],"mapped",[1139]],[[1139,1139],"valid"],[[1140,1140],"mapped",[1141]],[[1141,1141],"valid"],[[1142,1142],"mapped",[1143]],[[1143,1143],"valid"],[[1144,1144],"mapped",[1145]],[[1145,1145],"valid"],[[1146,1146],"mapped",[1147]],[[1147,1147],"valid"],[[1148,1148],"mapped",[1149]],[[1149,1149],"valid"],[[1150,1150],"mapped",[1151]],[[1151,1151],"valid"],[[1152,1152],"mapped",[1153]],[[1153,1153],"valid"],[[1154,1154],"valid",[],"NV8"],[[1155,1158],"valid"],[[1159,1159],"valid"],[[1160,1161],"valid",[],"NV8"],[[1162,1162],"mapped",[1163]],[[1163,1163],"valid"],[[1164,1164],"mapped",[1165]],[[1165,1165],"valid"],[[1166,1166],"mapped",[1167]],[[1167,1167],"valid"],[[1168,1168],"mapped",[1169]],[[1169,1169],"valid"],[[1170,1170],"mapped",[1171]],[[1171,1171],"valid"],[[1172,1172],"mapped",[1173]],[[1173,1173],"valid"],[[1174,1174],"mapped",[1175]],[[1175,1175],"valid"],[[1176,1176],"mapped",[1177]],[[1177,1177],"valid"],[[1178,1178],"mapped",[1179]],[[1179,1179],"valid"],[[1180,1180],"mapped",[1181]],[[1181,1181],"valid"],[[1182,1182],"mapped",[1183]],[[1183,1183],"valid"],[[1184,1184],"mapped",[1185]],[[1185,1185],"valid"],[[1186,1186],"mapped",[1187]],[[1187,1187],"valid"],[[1188,1188],"mapped",[1189]],[[1189,1189],"valid"],[[1190,1190],"mapped",[1191]],[[1191,1191],"valid"],[[1192,1192],"mapped",[1193]],[[1193,1193],"valid"],[[1194,1194],"mapped",[1195]],[[1195,1195],"valid"],[[1196,1196],"mapped",[1197]],[[1197,1197],"valid"],[[1198,1198],"mapped",[1199]],[[1199,1199],"valid"],[[1200,1200],"mapped",[1201]],[[1201,1201],"valid"],[[1202,1202],"mapped",[1203]],[[1203,1203],"valid"],[[1204,1204],"mapped",[1205]],[[1205,1205],"valid"],[[1206,1206],"mapped",[1207]],[[1207,1207],"valid"],[[1208,1208],"mapped",[1209]],[[1209,1209],"valid"],[[1210,1210],"mapped",[1211]],[[1211,1211],"valid"],[[1212,1212],"mapped",[1213]],[[1213,1213],"valid"],[[1214,1214],"mapped",[1215]],[[1215,1215],"valid"],[[1216,1216],"disallowed"],[[1217,1217],"mapped",[1218]],[[1218,1218],"valid"],[[1219,1219],"mapped",[1220]],[[1220,1220],"valid"],[[1221,1221],"mapped",[1222]],[[1222,1222],"valid"],[[1223,1223],"mapped",[1224]],[[1224,1224],"valid"],[[1225,1225],"mapped",[1226]],[[1226,1226],"valid"],[[1227,1227],"mapped",[1228]],[[1228,1228],"valid"],[[1229,1229],"mapped",[1230]],[[1230,1230],"valid"],[[1231,1231],"valid"],[[1232,1232],"mapped",[1233]],[[1233,1233],"valid"],[[1234,1234],"mapped",[1235]],[[1235,1235],"valid"],[[1236,1236],"mapped",[1237]],[[1237,1237],"valid"],[[1238,1238],"mapped",[1239]],[[1239,1239],"valid"],[[1240,1240],"mapped",[1241]],[[1241,1241],"valid"],[[1242,1242],"mapped",[1243]],[[1243,1243],"valid"],[[1244,1244],"mapped",[1245]],[[1245,1245],"valid"],[[1246,1246],"mapped",[1247]],[[1247,1247],"valid"],[[1248,1248],"mapped",[1249]],[[1249,1249],"valid"],[[1250,1250],"mapped",[1251]],[[1251,1251],"valid"],[[1252,1252],"mapped",[1253]],[[1253,1253],"valid"],[[1254,1254],"mapped",[1255]],[[1255,1255],"valid"],[[1256,1256],"mapped",[1257]],[[1257,1257],"valid"],[[1258,1258],"mapped",[1259]],[[1259,1259],"valid"],[[1260,1260],"mapped",[1261]],[[1261,1261],"valid"],[[1262,1262],"mapped",[1263]],[[1263,1263],"valid"],[[1264,1264],"mapped",[1265]],[[1265,1265],"valid"],[[1266,1266],"mapped",[1267]],[[1267,1267],"valid"],[[1268,1268],"mapped",[1269]],[[1269,1269],"valid"],[[1270,1270],"mapped",[1271]],[[1271,1271],"valid"],[[1272,1272],"mapped",[1273]],[[1273,1273],"valid"],[[1274,1274],"mapped",[1275]],[[1275,1275],"valid"],[[1276,1276],"mapped",[1277]],[[1277,1277],"valid"],[[1278,1278],"mapped",[1279]],[[1279,1279],"valid"],[[1280,1280],"mapped",[1281]],[[1281,1281],"valid"],[[1282,1282],"mapped",[1283]],[[1283,1283],"valid"],[[1284,1284],"mapped",[1285]],[[1285,1285],"valid"],[[1286,1286],"mapped",[1287]],[[1287,1287],"valid"],[[1288,1288],"mapped",[1289]],[[1289,1289],"valid"],[[1290,1290],"mapped",[1291]],[[1291,1291],"valid"],[[1292,1292],"mapped",[1293]],[[1293,1293],"valid"],[[1294,1294],"mapped",[1295]],[[1295,1295],"valid"],[[1296,1296],"mapped",[1297]],[[1297,1297],"valid"],[[1298,1298],"mapped",[1299]],[[1299,1299],"valid"],[[1300,1300],"mapped",[1301]],[[1301,1301],"valid"],[[1302,1302],"mapped",[1303]],[[1303,1303],"valid"],[[1304,1304],"mapped",[1305]],[[1305,1305],"valid"],[[1306,1306],"mapped",[1307]],[[1307,1307],"valid"],[[1308,1308],"mapped",[1309]],[[1309,1309],"valid"],[[1310,1310],"mapped",[1311]],[[1311,1311],"valid"],[[1312,1312],"mapped",[1313]],[[1313,1313],"valid"],[[1314,1314],"mapped",[1315]],[[1315,1315],"valid"],[[1316,1316],"mapped",[1317]],[[1317,1317],"valid"],[[1318,1318],"mapped",[1319]],[[1319,1319],"valid"],[[1320,1320],"mapped",[1321]],[[1321,1321],"valid"],[[1322,1322],"mapped",[1323]],[[1323,1323],"valid"],[[1324,1324],"mapped",[1325]],[[1325,1325],"valid"],[[1326,1326],"mapped",[1327]],[[1327,1327],"valid"],[[1328,1328],"disallowed"],[[1329,1329],"mapped",[1377]],[[1330,1330],"mapped",[1378]],[[1331,1331],"mapped",[1379]],[[1332,1332],"mapped",[1380]],[[1333,1333],"mapped",[1381]],[[1334,1334],"mapped",[1382]],[[1335,1335],"mapped",[1383]],[[1336,1336],"mapped",[1384]],[[1337,1337],"mapped",[1385]],[[1338,1338],"mapped",[1386]],[[1339,1339],"mapped",[1387]],[[1340,1340],"mapped",[1388]],[[1341,1341],"mapped",[1389]],[[1342,1342],"mapped",[1390]],[[1343,1343],"mapped",[1391]],[[1344,1344],"mapped",[1392]],[[1345,1345],"mapped",[1393]],[[1346,1346],"mapped",[1394]],[[1347,1347],"mapped",[1395]],[[1348,1348],"mapped",[1396]],[[1349,1349],"mapped",[1397]],[[1350,1350],"mapped",[1398]],[[1351,1351],"mapped",[1399]],[[1352,1352],"mapped",[1400]],[[1353,1353],"mapped",[1401]],[[1354,1354],"mapped",[1402]],[[1355,1355],"mapped",[1403]],[[1356,1356],"mapped",[1404]],[[1357,1357],"mapped",[1405]],[[1358,1358],"mapped",[1406]],[[1359,1359],"mapped",[1407]],[[1360,1360],"mapped",[1408]],[[1361,1361],"mapped",[1409]],[[1362,1362],"mapped",[1410]],[[1363,1363],"mapped",[1411]],[[1364,1364],"mapped",[1412]],[[1365,1365],"mapped",[1413]],[[1366,1366],"mapped",[1414]],[[1367,1368],"disallowed"],[[1369,1369],"valid"],[[1370,1375],"valid",[],"NV8"],[[1376,1376],"disallowed"],[[1377,1414],"valid"],[[1415,1415],"mapped",[1381,1410]],[[1416,1416],"disallowed"],[[1417,1417],"valid",[],"NV8"],[[1418,1418],"valid",[],"NV8"],[[1419,1420],"disallowed"],[[1421,1422],"valid",[],"NV8"],[[1423,1423],"valid",[],"NV8"],[[1424,1424],"disallowed"],[[1425,1441],"valid"],[[1442,1442],"valid"],[[1443,1455],"valid"],[[1456,1465],"valid"],[[1466,1466],"valid"],[[1467,1469],"valid"],[[1470,1470],"valid",[],"NV8"],[[1471,1471],"valid"],[[1472,1472],"valid",[],"NV8"],[[1473,1474],"valid"],[[1475,1475],"valid",[],"NV8"],[[1476,1476],"valid"],[[1477,1477],"valid"],[[1478,1478],"valid",[],"NV8"],[[1479,1479],"valid"],[[1480,1487],"disallowed"],[[1488,1514],"valid"],[[1515,1519],"disallowed"],[[1520,1524],"valid"],[[1525,1535],"disallowed"],[[1536,1539],"disallowed"],[[1540,1540],"disallowed"],[[1541,1541],"disallowed"],[[1542,1546],"valid",[],"NV8"],[[1547,1547],"valid",[],"NV8"],[[1548,1548],"valid",[],"NV8"],[[1549,1551],"valid",[],"NV8"],[[1552,1557],"valid"],[[1558,1562],"valid"],[[1563,1563],"valid",[],"NV8"],[[1564,1564],"disallowed"],[[1565,1565],"disallowed"],[[1566,1566],"valid",[],"NV8"],[[1567,1567],"valid",[],"NV8"],[[1568,1568],"valid"],[[1569,1594],"valid"],[[1595,1599],"valid"],[[1600,1600],"valid",[],"NV8"],[[1601,1618],"valid"],[[1619,1621],"valid"],[[1622,1624],"valid"],[[1625,1630],"valid"],[[1631,1631],"valid"],[[1632,1641],"valid"],[[1642,1645],"valid",[],"NV8"],[[1646,1647],"valid"],[[1648,1652],"valid"],[[1653,1653],"mapped",[1575,1652]],[[1654,1654],"mapped",[1608,1652]],[[1655,1655],"mapped",[1735,1652]],[[1656,1656],"mapped",[1610,1652]],[[1657,1719],"valid"],[[1720,1721],"valid"],[[1722,1726],"valid"],[[1727,1727],"valid"],[[1728,1742],"valid"],[[1743,1743],"valid"],[[1744,1747],"valid"],[[1748,1748],"valid",[],"NV8"],[[1749,1756],"valid"],[[1757,1757],"disallowed"],[[1758,1758],"valid",[],"NV8"],[[1759,1768],"valid"],[[1769,1769],"valid",[],"NV8"],[[1770,1773],"valid"],[[1774,1775],"valid"],[[1776,1785],"valid"],[[1786,1790],"valid"],[[1791,1791],"valid"],[[1792,1805],"valid",[],"NV8"],[[1806,1806],"disallowed"],[[1807,1807],"disallowed"],[[1808,1836],"valid"],[[1837,1839],"valid"],[[1840,1866],"valid"],[[1867,1868],"disallowed"],[[1869,1871],"valid"],[[1872,1901],"valid"],[[1902,1919],"valid"],[[1920,1968],"valid"],[[1969,1969],"valid"],[[1970,1983],"disallowed"],[[1984,2037],"valid"],[[2038,2042],"valid",[],"NV8"],[[2043,2047],"disallowed"],[[2048,2093],"valid"],[[2094,2095],"disallowed"],[[2096,2110],"valid",[],"NV8"],[[2111,2111],"disallowed"],[[2112,2139],"valid"],[[2140,2141],"disallowed"],[[2142,2142],"valid",[],"NV8"],[[2143,2207],"disallowed"],[[2208,2208],"valid"],[[2209,2209],"valid"],[[2210,2220],"valid"],[[2221,2226],"valid"],[[2227,2228],"valid"],[[2229,2274],"disallowed"],[[2275,2275],"valid"],[[2276,2302],"valid"],[[2303,2303],"valid"],[[2304,2304],"valid"],[[2305,2307],"valid"],[[2308,2308],"valid"],[[2309,2361],"valid"],[[2362,2363],"valid"],[[2364,2381],"valid"],[[2382,2382],"valid"],[[2383,2383],"valid"],[[2384,2388],"valid"],[[2389,2389],"valid"],[[2390,2391],"valid"],[[2392,2392],"mapped",[2325,2364]],[[2393,2393],"mapped",[2326,2364]],[[2394,2394],"mapped",[2327,2364]],[[2395,2395],"mapped",[2332,2364]],[[2396,2396],"mapped",[2337,2364]],[[2397,2397],"mapped",[2338,2364]],[[2398,2398],"mapped",[2347,2364]],[[2399,2399],"mapped",[2351,2364]],[[2400,2403],"valid"],[[2404,2405],"valid",[],"NV8"],[[2406,2415],"valid"],[[2416,2416],"valid",[],"NV8"],[[2417,2418],"valid"],[[2419,2423],"valid"],[[2424,2424],"valid"],[[2425,2426],"valid"],[[2427,2428],"valid"],[[2429,2429],"valid"],[[2430,2431],"valid"],[[2432,2432],"valid"],[[2433,2435],"valid"],[[2436,2436],"disallowed"],[[2437,2444],"valid"],[[2445,2446],"disallowed"],[[2447,2448],"valid"],[[2449,2450],"disallowed"],[[2451,2472],"valid"],[[2473,2473],"disallowed"],[[2474,2480],"valid"],[[2481,2481],"disallowed"],[[2482,2482],"valid"],[[2483,2485],"disallowed"],[[2486,2489],"valid"],[[2490,2491],"disallowed"],[[2492,2492],"valid"],[[2493,2493],"valid"],[[2494,2500],"valid"],[[2501,2502],"disallowed"],[[2503,2504],"valid"],[[2505,2506],"disallowed"],[[2507,2509],"valid"],[[2510,2510],"valid"],[[2511,2518],"disallowed"],[[2519,2519],"valid"],[[2520,2523],"disallowed"],[[2524,2524],"mapped",[2465,2492]],[[2525,2525],"mapped",[2466,2492]],[[2526,2526],"disallowed"],[[2527,2527],"mapped",[2479,2492]],[[2528,2531],"valid"],[[2532,2533],"disallowed"],[[2534,2545],"valid"],[[2546,2554],"valid",[],"NV8"],[[2555,2555],"valid",[],"NV8"],[[2556,2560],"disallowed"],[[2561,2561],"valid"],[[2562,2562],"valid"],[[2563,2563],"valid"],[[2564,2564],"disallowed"],[[2565,2570],"valid"],[[2571,2574],"disallowed"],[[2575,2576],"valid"],[[2577,2578],"disallowed"],[[2579,2600],"valid"],[[2601,2601],"disallowed"],[[2602,2608],"valid"],[[2609,2609],"disallowed"],[[2610,2610],"valid"],[[2611,2611],"mapped",[2610,2620]],[[2612,2612],"disallowed"],[[2613,2613],"valid"],[[2614,2614],"mapped",[2616,2620]],[[2615,2615],"disallowed"],[[2616,2617],"valid"],[[2618,2619],"disallowed"],[[2620,2620],"valid"],[[2621,2621],"disallowed"],[[2622,2626],"valid"],[[2627,2630],"disallowed"],[[2631,2632],"valid"],[[2633,2634],"disallowed"],[[2635,2637],"valid"],[[2638,2640],"disallowed"],[[2641,2641],"valid"],[[2642,2648],"disallowed"],[[2649,2649],"mapped",[2582,2620]],[[2650,2650],"mapped",[2583,2620]],[[2651,2651],"mapped",[2588,2620]],[[2652,2652],"valid"],[[2653,2653],"disallowed"],[[2654,2654],"mapped",[2603,2620]],[[2655,2661],"disallowed"],[[2662,2676],"valid"],[[2677,2677],"valid"],[[2678,2688],"disallowed"],[[2689,2691],"valid"],[[2692,2692],"disallowed"],[[2693,2699],"valid"],[[2700,2700],"valid"],[[2701,2701],"valid"],[[2702,2702],"disallowed"],[[2703,2705],"valid"],[[2706,2706],"disallowed"],[[2707,2728],"valid"],[[2729,2729],"disallowed"],[[2730,2736],"valid"],[[2737,2737],"disallowed"],[[2738,2739],"valid"],[[2740,2740],"disallowed"],[[2741,2745],"valid"],[[2746,2747],"disallowed"],[[2748,2757],"valid"],[[2758,2758],"disallowed"],[[2759,2761],"valid"],[[2762,2762],"disallowed"],[[2763,2765],"valid"],[[2766,2767],"disallowed"],[[2768,2768],"valid"],[[2769,2783],"disallowed"],[[2784,2784],"valid"],[[2785,2787],"valid"],[[2788,2789],"disallowed"],[[2790,2799],"valid"],[[2800,2800],"valid",[],"NV8"],[[2801,2801],"valid",[],"NV8"],[[2802,2808],"disallowed"],[[2809,2809],"valid"],[[2810,2816],"disallowed"],[[2817,2819],"valid"],[[2820,2820],"disallowed"],[[2821,2828],"valid"],[[2829,2830],"disallowed"],[[2831,2832],"valid"],[[2833,2834],"disallowed"],[[2835,2856],"valid"],[[2857,2857],"disallowed"],[[2858,2864],"valid"],[[2865,2865],"disallowed"],[[2866,2867],"valid"],[[2868,2868],"disallowed"],[[2869,2869],"valid"],[[2870,2873],"valid"],[[2874,2875],"disallowed"],[[2876,2883],"valid"],[[2884,2884],"valid"],[[2885,2886],"disallowed"],[[2887,2888],"valid"],[[2889,2890],"disallowed"],[[2891,2893],"valid"],[[2894,2901],"disallowed"],[[2902,2903],"valid"],[[2904,2907],"disallowed"],[[2908,2908],"mapped",[2849,2876]],[[2909,2909],"mapped",[2850,2876]],[[2910,2910],"disallowed"],[[2911,2913],"valid"],[[2914,2915],"valid"],[[2916,2917],"disallowed"],[[2918,2927],"valid"],[[2928,2928],"valid",[],"NV8"],[[2929,2929],"valid"],[[2930,2935],"valid",[],"NV8"],[[2936,2945],"disallowed"],[[2946,2947],"valid"],[[2948,2948],"disallowed"],[[2949,2954],"valid"],[[2955,2957],"disallowed"],[[2958,2960],"valid"],[[2961,2961],"disallowed"],[[2962,2965],"valid"],[[2966,2968],"disallowed"],[[2969,2970],"valid"],[[2971,2971],"disallowed"],[[2972,2972],"valid"],[[2973,2973],"disallowed"],[[2974,2975],"valid"],[[2976,2978],"disallowed"],[[2979,2980],"valid"],[[2981,2983],"disallowed"],[[2984,2986],"valid"],[[2987,2989],"disallowed"],[[2990,2997],"valid"],[[2998,2998],"valid"],[[2999,3001],"valid"],[[3002,3005],"disallowed"],[[3006,3010],"valid"],[[3011,3013],"disallowed"],[[3014,3016],"valid"],[[3017,3017],"disallowed"],[[3018,3021],"valid"],[[3022,3023],"disallowed"],[[3024,3024],"valid"],[[3025,3030],"disallowed"],[[3031,3031],"valid"],[[3032,3045],"disallowed"],[[3046,3046],"valid"],[[3047,3055],"valid"],[[3056,3058],"valid",[],"NV8"],[[3059,3066],"valid",[],"NV8"],[[3067,3071],"disallowed"],[[3072,3072],"valid"],[[3073,3075],"valid"],[[3076,3076],"disallowed"],[[3077,3084],"valid"],[[3085,3085],"disallowed"],[[3086,3088],"valid"],[[3089,3089],"disallowed"],[[3090,3112],"valid"],[[3113,3113],"disallowed"],[[3114,3123],"valid"],[[3124,3124],"valid"],[[3125,3129],"valid"],[[3130,3132],"disallowed"],[[3133,3133],"valid"],[[3134,3140],"valid"],[[3141,3141],"disallowed"],[[3142,3144],"valid"],[[3145,3145],"disallowed"],[[3146,3149],"valid"],[[3150,3156],"disallowed"],[[3157,3158],"valid"],[[3159,3159],"disallowed"],[[3160,3161],"valid"],[[3162,3162],"valid"],[[3163,3167],"disallowed"],[[3168,3169],"valid"],[[3170,3171],"valid"],[[3172,3173],"disallowed"],[[3174,3183],"valid"],[[3184,3191],"disallowed"],[[3192,3199],"valid",[],"NV8"],[[3200,3200],"disallowed"],[[3201,3201],"valid"],[[3202,3203],"valid"],[[3204,3204],"disallowed"],[[3205,3212],"valid"],[[3213,3213],"disallowed"],[[3214,3216],"valid"],[[3217,3217],"disallowed"],[[3218,3240],"valid"],[[3241,3241],"disallowed"],[[3242,3251],"valid"],[[3252,3252],"disallowed"],[[3253,3257],"valid"],[[3258,3259],"disallowed"],[[3260,3261],"valid"],[[3262,3268],"valid"],[[3269,3269],"disallowed"],[[3270,3272],"valid"],[[3273,3273],"disallowed"],[[3274,3277],"valid"],[[3278,3284],"disallowed"],[[3285,3286],"valid"],[[3287,3293],"disallowed"],[[3294,3294],"valid"],[[3295,3295],"disallowed"],[[3296,3297],"valid"],[[3298,3299],"valid"],[[3300,3301],"disallowed"],[[3302,3311],"valid"],[[3312,3312],"disallowed"],[[3313,3314],"valid"],[[3315,3328],"disallowed"],[[3329,3329],"valid"],[[3330,3331],"valid"],[[3332,3332],"disallowed"],[[3333,3340],"valid"],[[3341,3341],"disallowed"],[[3342,3344],"valid"],[[3345,3345],"disallowed"],[[3346,3368],"valid"],[[3369,3369],"valid"],[[3370,3385],"valid"],[[3386,3386],"valid"],[[3387,3388],"disallowed"],[[3389,3389],"valid"],[[3390,3395],"valid"],[[3396,3396],"valid"],[[3397,3397],"disallowed"],[[3398,3400],"valid"],[[3401,3401],"disallowed"],[[3402,3405],"valid"],[[3406,3406],"valid"],[[3407,3414],"disallowed"],[[3415,3415],"valid"],[[3416,3422],"disallowed"],[[3423,3423],"valid"],[[3424,3425],"valid"],[[3426,3427],"valid"],[[3428,3429],"disallowed"],[[3430,3439],"valid"],[[3440,3445],"valid",[],"NV8"],[[3446,3448],"disallowed"],[[3449,3449],"valid",[],"NV8"],[[3450,3455],"valid"],[[3456,3457],"disallowed"],[[3458,3459],"valid"],[[3460,3460],"disallowed"],[[3461,3478],"valid"],[[3479,3481],"disallowed"],[[3482,3505],"valid"],[[3506,3506],"disallowed"],[[3507,3515],"valid"],[[3516,3516],"disallowed"],[[3517,3517],"valid"],[[3518,3519],"disallowed"],[[3520,3526],"valid"],[[3527,3529],"disallowed"],[[3530,3530],"valid"],[[3531,3534],"disallowed"],[[3535,3540],"valid"],[[3541,3541],"disallowed"],[[3542,3542],"valid"],[[3543,3543],"disallowed"],[[3544,3551],"valid"],[[3552,3557],"disallowed"],[[3558,3567],"valid"],[[3568,3569],"disallowed"],[[3570,3571],"valid"],[[3572,3572],"valid",[],"NV8"],[[3573,3584],"disallowed"],[[3585,3634],"valid"],[[3635,3635],"mapped",[3661,3634]],[[3636,3642],"valid"],[[3643,3646],"disallowed"],[[3647,3647],"valid",[],"NV8"],[[3648,3662],"valid"],[[3663,3663],"valid",[],"NV8"],[[3664,3673],"valid"],[[3674,3675],"valid",[],"NV8"],[[3676,3712],"disallowed"],[[3713,3714],"valid"],[[3715,3715],"disallowed"],[[3716,3716],"valid"],[[3717,3718],"disallowed"],[[3719,3720],"valid"],[[3721,3721],"disallowed"],[[3722,3722],"valid"],[[3723,3724],"disallowed"],[[3725,3725],"valid"],[[3726,3731],"disallowed"],[[3732,3735],"valid"],[[3736,3736],"disallowed"],[[3737,3743],"valid"],[[3744,3744],"disallowed"],[[3745,3747],"valid"],[[3748,3748],"disallowed"],[[3749,3749],"valid"],[[3750,3750],"disallowed"],[[3751,3751],"valid"],[[3752,3753],"disallowed"],[[3754,3755],"valid"],[[3756,3756],"disallowed"],[[3757,3762],"valid"],[[3763,3763],"mapped",[3789,3762]],[[3764,3769],"valid"],[[3770,3770],"disallowed"],[[3771,3773],"valid"],[[3774,3775],"disallowed"],[[3776,3780],"valid"],[[3781,3781],"disallowed"],[[3782,3782],"valid"],[[3783,3783],"disallowed"],[[3784,3789],"valid"],[[3790,3791],"disallowed"],[[3792,3801],"valid"],[[3802,3803],"disallowed"],[[3804,3804],"mapped",[3755,3737]],[[3805,3805],"mapped",[3755,3745]],[[3806,3807],"valid"],[[3808,3839],"disallowed"],[[3840,3840],"valid"],[[3841,3850],"valid",[],"NV8"],[[3851,3851],"valid"],[[3852,3852],"mapped",[3851]],[[3853,3863],"valid",[],"NV8"],[[3864,3865],"valid"],[[3866,3871],"valid",[],"NV8"],[[3872,3881],"valid"],[[3882,3892],"valid",[],"NV8"],[[3893,3893],"valid"],[[3894,3894],"valid",[],"NV8"],[[3895,3895],"valid"],[[3896,3896],"valid",[],"NV8"],[[3897,3897],"valid"],[[3898,3901],"valid",[],"NV8"],[[3902,3906],"valid"],[[3907,3907],"mapped",[3906,4023]],[[3908,3911],"valid"],[[3912,3912],"disallowed"],[[3913,3916],"valid"],[[3917,3917],"mapped",[3916,4023]],[[3918,3921],"valid"],[[3922,3922],"mapped",[3921,4023]],[[3923,3926],"valid"],[[3927,3927],"mapped",[3926,4023]],[[3928,3931],"valid"],[[3932,3932],"mapped",[3931,4023]],[[3933,3944],"valid"],[[3945,3945],"mapped",[3904,4021]],[[3946,3946],"valid"],[[3947,3948],"valid"],[[3949,3952],"disallowed"],[[3953,3954],"valid"],[[3955,3955],"mapped",[3953,3954]],[[3956,3956],"valid"],[[3957,3957],"mapped",[3953,3956]],[[3958,3958],"mapped",[4018,3968]],[[3959,3959],"mapped",[4018,3953,3968]],[[3960,3960],"mapped",[4019,3968]],[[3961,3961],"mapped",[4019,3953,3968]],[[3962,3968],"valid"],[[3969,3969],"mapped",[3953,3968]],[[3970,3972],"valid"],[[3973,3973],"valid",[],"NV8"],[[3974,3979],"valid"],[[3980,3983],"valid"],[[3984,3986],"valid"],[[3987,3987],"mapped",[3986,4023]],[[3988,3989],"valid"],[[3990,3990],"valid"],[[3991,3991],"valid"],[[3992,3992],"disallowed"],[[3993,3996],"valid"],[[3997,3997],"mapped",[3996,4023]],[[3998,4001],"valid"],[[4002,4002],"mapped",[4001,4023]],[[4003,4006],"valid"],[[4007,4007],"mapped",[4006,4023]],[[4008,4011],"valid"],[[4012,4012],"mapped",[4011,4023]],[[4013,4013],"valid"],[[4014,4016],"valid"],[[4017,4023],"valid"],[[4024,4024],"valid"],[[4025,4025],"mapped",[3984,4021]],[[4026,4028],"valid"],[[4029,4029],"disallowed"],[[4030,4037],"valid",[],"NV8"],[[4038,4038],"valid"],[[4039,4044],"valid",[],"NV8"],[[4045,4045],"disallowed"],[[4046,4046],"valid",[],"NV8"],[[4047,4047],"valid",[],"NV8"],[[4048,4049],"valid",[],"NV8"],[[4050,4052],"valid",[],"NV8"],[[4053,4056],"valid",[],"NV8"],[[4057,4058],"valid",[],"NV8"],[[4059,4095],"disallowed"],[[4096,4129],"valid"],[[4130,4130],"valid"],[[4131,4135],"valid"],[[4136,4136],"valid"],[[4137,4138],"valid"],[[4139,4139],"valid"],[[4140,4146],"valid"],[[4147,4149],"valid"],[[4150,4153],"valid"],[[4154,4159],"valid"],[[4160,4169],"valid"],[[4170,4175],"valid",[],"NV8"],[[4176,4185],"valid"],[[4186,4249],"valid"],[[4250,4253],"valid"],[[4254,4255],"valid",[],"NV8"],[[4256,4293],"disallowed"],[[4294,4294],"disallowed"],[[4295,4295],"mapped",[11559]],[[4296,4300],"disallowed"],[[4301,4301],"mapped",[11565]],[[4302,4303],"disallowed"],[[4304,4342],"valid"],[[4343,4344],"valid"],[[4345,4346],"valid"],[[4347,4347],"valid",[],"NV8"],[[4348,4348],"mapped",[4316]],[[4349,4351],"valid"],[[4352,4441],"valid",[],"NV8"],[[4442,4446],"valid",[],"NV8"],[[4447,4448],"disallowed"],[[4449,4514],"valid",[],"NV8"],[[4515,4519],"valid",[],"NV8"],[[4520,4601],"valid",[],"NV8"],[[4602,4607],"valid",[],"NV8"],[[4608,4614],"valid"],[[4615,4615],"valid"],[[4616,4678],"valid"],[[4679,4679],"valid"],[[4680,4680],"valid"],[[4681,4681],"disallowed"],[[4682,4685],"valid"],[[4686,4687],"disallowed"],[[4688,4694],"valid"],[[4695,4695],"disallowed"],[[4696,4696],"valid"],[[4697,4697],"disallowed"],[[4698,4701],"valid"],[[4702,4703],"disallowed"],[[4704,4742],"valid"],[[4743,4743],"valid"],[[4744,4744],"valid"],[[4745,4745],"disallowed"],[[4746,4749],"valid"],[[4750,4751],"disallowed"],[[4752,4782],"valid"],[[4783,4783],"valid"],[[4784,4784],"valid"],[[4785,4785],"disallowed"],[[4786,4789],"valid"],[[4790,4791],"disallowed"],[[4792,4798],"valid"],[[4799,4799],"disallowed"],[[4800,4800],"valid"],[[4801,4801],"disallowed"],[[4802,4805],"valid"],[[4806,4807],"disallowed"],[[4808,4814],"valid"],[[4815,4815],"valid"],[[4816,4822],"valid"],[[4823,4823],"disallowed"],[[4824,4846],"valid"],[[4847,4847],"valid"],[[4848,4878],"valid"],[[4879,4879],"valid"],[[4880,4880],"valid"],[[4881,4881],"disallowed"],[[4882,4885],"valid"],[[4886,4887],"disallowed"],[[4888,4894],"valid"],[[4895,4895],"valid"],[[4896,4934],"valid"],[[4935,4935],"valid"],[[4936,4954],"valid"],[[4955,4956],"disallowed"],[[4957,4958],"valid"],[[4959,4959],"valid"],[[4960,4960],"valid",[],"NV8"],[[4961,4988],"valid",[],"NV8"],[[4989,4991],"disallowed"],[[4992,5007],"valid"],[[5008,5017],"valid",[],"NV8"],[[5018,5023],"disallowed"],[[5024,5108],"valid"],[[5109,5109],"valid"],[[5110,5111],"disallowed"],[[5112,5112],"mapped",[5104]],[[5113,5113],"mapped",[5105]],[[5114,5114],"mapped",[5106]],[[5115,5115],"mapped",[5107]],[[5116,5116],"mapped",[5108]],[[5117,5117],"mapped",[5109]],[[5118,5119],"disallowed"],[[5120,5120],"valid",[],"NV8"],[[5121,5740],"valid"],[[5741,5742],"valid",[],"NV8"],[[5743,5750],"valid"],[[5751,5759],"valid"],[[5760,5760],"disallowed"],[[5761,5786],"valid"],[[5787,5788],"valid",[],"NV8"],[[5789,5791],"disallowed"],[[5792,5866],"valid"],[[5867,5872],"valid",[],"NV8"],[[5873,5880],"valid"],[[5881,5887],"disallowed"],[[5888,5900],"valid"],[[5901,5901],"disallowed"],[[5902,5908],"valid"],[[5909,5919],"disallowed"],[[5920,5940],"valid"],[[5941,5942],"valid",[],"NV8"],[[5943,5951],"disallowed"],[[5952,5971],"valid"],[[5972,5983],"disallowed"],[[5984,5996],"valid"],[[5997,5997],"disallowed"],[[5998,6e3],"valid"],[[6001,6001],"disallowed"],[[6002,6003],"valid"],[[6004,6015],"disallowed"],[[6016,6067],"valid"],[[6068,6069],"disallowed"],[[6070,6099],"valid"],[[6100,6102],"valid",[],"NV8"],[[6103,6103],"valid"],[[6104,6107],"valid",[],"NV8"],[[6108,6108],"valid"],[[6109,6109],"valid"],[[6110,6111],"disallowed"],[[6112,6121],"valid"],[[6122,6127],"disallowed"],[[6128,6137],"valid",[],"NV8"],[[6138,6143],"disallowed"],[[6144,6149],"valid",[],"NV8"],[[6150,6150],"disallowed"],[[6151,6154],"valid",[],"NV8"],[[6155,6157],"ignored"],[[6158,6158],"disallowed"],[[6159,6159],"disallowed"],[[6160,6169],"valid"],[[6170,6175],"disallowed"],[[6176,6263],"valid"],[[6264,6271],"disallowed"],[[6272,6313],"valid"],[[6314,6314],"valid"],[[6315,6319],"disallowed"],[[6320,6389],"valid"],[[6390,6399],"disallowed"],[[6400,6428],"valid"],[[6429,6430],"valid"],[[6431,6431],"disallowed"],[[6432,6443],"valid"],[[6444,6447],"disallowed"],[[6448,6459],"valid"],[[6460,6463],"disallowed"],[[6464,6464],"valid",[],"NV8"],[[6465,6467],"disallowed"],[[6468,6469],"valid",[],"NV8"],[[6470,6509],"valid"],[[6510,6511],"disallowed"],[[6512,6516],"valid"],[[6517,6527],"disallowed"],[[6528,6569],"valid"],[[6570,6571],"valid"],[[6572,6575],"disallowed"],[[6576,6601],"valid"],[[6602,6607],"disallowed"],[[6608,6617],"valid"],[[6618,6618],"valid",[],"XV8"],[[6619,6621],"disallowed"],[[6622,6623],"valid",[],"NV8"],[[6624,6655],"valid",[],"NV8"],[[6656,6683],"valid"],[[6684,6685],"disallowed"],[[6686,6687],"valid",[],"NV8"],[[6688,6750],"valid"],[[6751,6751],"disallowed"],[[6752,6780],"valid"],[[6781,6782],"disallowed"],[[6783,6793],"valid"],[[6794,6799],"disallowed"],[[6800,6809],"valid"],[[6810,6815],"disallowed"],[[6816,6822],"valid",[],"NV8"],[[6823,6823],"valid"],[[6824,6829],"valid",[],"NV8"],[[6830,6831],"disallowed"],[[6832,6845],"valid"],[[6846,6846],"valid",[],"NV8"],[[6847,6911],"disallowed"],[[6912,6987],"valid"],[[6988,6991],"disallowed"],[[6992,7001],"valid"],[[7002,7018],"valid",[],"NV8"],[[7019,7027],"valid"],[[7028,7036],"valid",[],"NV8"],[[7037,7039],"disallowed"],[[7040,7082],"valid"],[[7083,7085],"valid"],[[7086,7097],"valid"],[[7098,7103],"valid"],[[7104,7155],"valid"],[[7156,7163],"disallowed"],[[7164,7167],"valid",[],"NV8"],[[7168,7223],"valid"],[[7224,7226],"disallowed"],[[7227,7231],"valid",[],"NV8"],[[7232,7241],"valid"],[[7242,7244],"disallowed"],[[7245,7293],"valid"],[[7294,7295],"valid",[],"NV8"],[[7296,7359],"disallowed"],[[7360,7367],"valid",[],"NV8"],[[7368,7375],"disallowed"],[[7376,7378],"valid"],[[7379,7379],"valid",[],"NV8"],[[7380,7410],"valid"],[[7411,7414],"valid"],[[7415,7415],"disallowed"],[[7416,7417],"valid"],[[7418,7423],"disallowed"],[[7424,7467],"valid"],[[7468,7468],"mapped",[97]],[[7469,7469],"mapped",[230]],[[7470,7470],"mapped",[98]],[[7471,7471],"valid"],[[7472,7472],"mapped",[100]],[[7473,7473],"mapped",[101]],[[7474,7474],"mapped",[477]],[[7475,7475],"mapped",[103]],[[7476,7476],"mapped",[104]],[[7477,7477],"mapped",[105]],[[7478,7478],"mapped",[106]],[[7479,7479],"mapped",[107]],[[7480,7480],"mapped",[108]],[[7481,7481],"mapped",[109]],[[7482,7482],"mapped",[110]],[[7483,7483],"valid"],[[7484,7484],"mapped",[111]],[[7485,7485],"mapped",[547]],[[7486,7486],"mapped",[112]],[[7487,7487],"mapped",[114]],[[7488,7488],"mapped",[116]],[[7489,7489],"mapped",[117]],[[7490,7490],"mapped",[119]],[[7491,7491],"mapped",[97]],[[7492,7492],"mapped",[592]],[[7493,7493],"mapped",[593]],[[7494,7494],"mapped",[7426]],[[7495,7495],"mapped",[98]],[[7496,7496],"mapped",[100]],[[7497,7497],"mapped",[101]],[[7498,7498],"mapped",[601]],[[7499,7499],"mapped",[603]],[[7500,7500],"mapped",[604]],[[7501,7501],"mapped",[103]],[[7502,7502],"valid"],[[7503,7503],"mapped",[107]],[[7504,7504],"mapped",[109]],[[7505,7505],"mapped",[331]],[[7506,7506],"mapped",[111]],[[7507,7507],"mapped",[596]],[[7508,7508],"mapped",[7446]],[[7509,7509],"mapped",[7447]],[[7510,7510],"mapped",[112]],[[7511,7511],"mapped",[116]],[[7512,7512],"mapped",[117]],[[7513,7513],"mapped",[7453]],[[7514,7514],"mapped",[623]],[[7515,7515],"mapped",[118]],[[7516,7516],"mapped",[7461]],[[7517,7517],"mapped",[946]],[[7518,7518],"mapped",[947]],[[7519,7519],"mapped",[948]],[[7520,7520],"mapped",[966]],[[7521,7521],"mapped",[967]],[[7522,7522],"mapped",[105]],[[7523,7523],"mapped",[114]],[[7524,7524],"mapped",[117]],[[7525,7525],"mapped",[118]],[[7526,7526],"mapped",[946]],[[7527,7527],"mapped",[947]],[[7528,7528],"mapped",[961]],[[7529,7529],"mapped",[966]],[[7530,7530],"mapped",[967]],[[7531,7531],"valid"],[[7532,7543],"valid"],[[7544,7544],"mapped",[1085]],[[7545,7578],"valid"],[[7579,7579],"mapped",[594]],[[7580,7580],"mapped",[99]],[[7581,7581],"mapped",[597]],[[7582,7582],"mapped",[240]],[[7583,7583],"mapped",[604]],[[7584,7584],"mapped",[102]],[[7585,7585],"mapped",[607]],[[7586,7586],"mapped",[609]],[[7587,7587],"mapped",[613]],[[7588,7588],"mapped",[616]],[[7589,7589],"mapped",[617]],[[7590,7590],"mapped",[618]],[[7591,7591],"mapped",[7547]],[[7592,7592],"mapped",[669]],[[7593,7593],"mapped",[621]],[[7594,7594],"mapped",[7557]],[[7595,7595],"mapped",[671]],[[7596,7596],"mapped",[625]],[[7597,7597],"mapped",[624]],[[7598,7598],"mapped",[626]],[[7599,7599],"mapped",[627]],[[7600,7600],"mapped",[628]],[[7601,7601],"mapped",[629]],[[7602,7602],"mapped",[632]],[[7603,7603],"mapped",[642]],[[7604,7604],"mapped",[643]],[[7605,7605],"mapped",[427]],[[7606,7606],"mapped",[649]],[[7607,7607],"mapped",[650]],[[7608,7608],"mapped",[7452]],[[7609,7609],"mapped",[651]],[[7610,7610],"mapped",[652]],[[7611,7611],"mapped",[122]],[[7612,7612],"mapped",[656]],[[7613,7613],"mapped",[657]],[[7614,7614],"mapped",[658]],[[7615,7615],"mapped",[952]],[[7616,7619],"valid"],[[7620,7626],"valid"],[[7627,7654],"valid"],[[7655,7669],"valid"],[[7670,7675],"disallowed"],[[7676,7676],"valid"],[[7677,7677],"valid"],[[7678,7679],"valid"],[[7680,7680],"mapped",[7681]],[[7681,7681],"valid"],[[7682,7682],"mapped",[7683]],[[7683,7683],"valid"],[[7684,7684],"mapped",[7685]],[[7685,7685],"valid"],[[7686,7686],"mapped",[7687]],[[7687,7687],"valid"],[[7688,7688],"mapped",[7689]],[[7689,7689],"valid"],[[7690,7690],"mapped",[7691]],[[7691,7691],"valid"],[[7692,7692],"mapped",[7693]],[[7693,7693],"valid"],[[7694,7694],"mapped",[7695]],[[7695,7695],"valid"],[[7696,7696],"mapped",[7697]],[[7697,7697],"valid"],[[7698,7698],"mapped",[7699]],[[7699,7699],"valid"],[[7700,7700],"mapped",[7701]],[[7701,7701],"valid"],[[7702,7702],"mapped",[7703]],[[7703,7703],"valid"],[[7704,7704],"mapped",[7705]],[[7705,7705],"valid"],[[7706,7706],"mapped",[7707]],[[7707,7707],"valid"],[[7708,7708],"mapped",[7709]],[[7709,7709],"valid"],[[7710,7710],"mapped",[7711]],[[7711,7711],"valid"],[[7712,7712],"mapped",[7713]],[[7713,7713],"valid"],[[7714,7714],"mapped",[7715]],[[7715,7715],"valid"],[[7716,7716],"mapped",[7717]],[[7717,7717],"valid"],[[7718,7718],"mapped",[7719]],[[7719,7719],"valid"],[[7720,7720],"mapped",[7721]],[[7721,7721],"valid"],[[7722,7722],"mapped",[7723]],[[7723,7723],"valid"],[[7724,7724],"mapped",[7725]],[[7725,7725],"valid"],[[7726,7726],"mapped",[7727]],[[7727,7727],"valid"],[[7728,7728],"mapped",[7729]],[[7729,7729],"valid"],[[7730,7730],"mapped",[7731]],[[7731,7731],"valid"],[[7732,7732],"mapped",[7733]],[[7733,7733],"valid"],[[7734,7734],"mapped",[7735]],[[7735,7735],"valid"],[[7736,7736],"mapped",[7737]],[[7737,7737],"valid"],[[7738,7738],"mapped",[7739]],[[7739,7739],"valid"],[[7740,7740],"mapped",[7741]],[[7741,7741],"valid"],[[7742,7742],"mapped",[7743]],[[7743,7743],"valid"],[[7744,7744],"mapped",[7745]],[[7745,7745],"valid"],[[7746,7746],"mapped",[7747]],[[7747,7747],"valid"],[[7748,7748],"mapped",[7749]],[[7749,7749],"valid"],[[7750,7750],"mapped",[7751]],[[7751,7751],"valid"],[[7752,7752],"mapped",[7753]],[[7753,7753],"valid"],[[7754,7754],"mapped",[7755]],[[7755,7755],"valid"],[[7756,7756],"mapped",[7757]],[[7757,7757],"valid"],[[7758,7758],"mapped",[7759]],[[7759,7759],"valid"],[[7760,7760],"mapped",[7761]],[[7761,7761],"valid"],[[7762,7762],"mapped",[7763]],[[7763,7763],"valid"],[[7764,7764],"mapped",[7765]],[[7765,7765],"valid"],[[7766,7766],"mapped",[7767]],[[7767,7767],"valid"],[[7768,7768],"mapped",[7769]],[[7769,7769],"valid"],[[7770,7770],"mapped",[7771]],[[7771,7771],"valid"],[[7772,7772],"mapped",[7773]],[[7773,7773],"valid"],[[7774,7774],"mapped",[7775]],[[7775,7775],"valid"],[[7776,7776],"mapped",[7777]],[[7777,7777],"valid"],[[7778,7778],"mapped",[7779]],[[7779,7779],"valid"],[[7780,7780],"mapped",[7781]],[[7781,7781],"valid"],[[7782,7782],"mapped",[7783]],[[7783,7783],"valid"],[[7784,7784],"mapped",[7785]],[[7785,7785],"valid"],[[7786,7786],"mapped",[7787]],[[7787,7787],"valid"],[[7788,7788],"mapped",[7789]],[[7789,7789],"valid"],[[7790,7790],"mapped",[7791]],[[7791,7791],"valid"],[[7792,7792],"mapped",[7793]],[[7793,7793],"valid"],[[7794,7794],"mapped",[7795]],[[7795,7795],"valid"],[[7796,7796],"mapped",[7797]],[[7797,7797],"valid"],[[7798,7798],"mapped",[7799]],[[7799,7799],"valid"],[[7800,7800],"mapped",[7801]],[[7801,7801],"valid"],[[7802,7802],"mapped",[7803]],[[7803,7803],"valid"],[[7804,7804],"mapped",[7805]],[[7805,7805],"valid"],[[7806,7806],"mapped",[7807]],[[7807,7807],"valid"],[[7808,7808],"mapped",[7809]],[[7809,7809],"valid"],[[7810,7810],"mapped",[7811]],[[7811,7811],"valid"],[[7812,7812],"mapped",[7813]],[[7813,7813],"valid"],[[7814,7814],"mapped",[7815]],[[7815,7815],"valid"],[[7816,7816],"mapped",[7817]],[[7817,7817],"valid"],[[7818,7818],"mapped",[7819]],[[7819,7819],"valid"],[[7820,7820],"mapped",[7821]],[[7821,7821],"valid"],[[7822,7822],"mapped",[7823]],[[7823,7823],"valid"],[[7824,7824],"mapped",[7825]],[[7825,7825],"valid"],[[7826,7826],"mapped",[7827]],[[7827,7827],"valid"],[[7828,7828],"mapped",[7829]],[[7829,7833],"valid"],[[7834,7834],"mapped",[97,702]],[[7835,7835],"mapped",[7777]],[[7836,7837],"valid"],[[7838,7838],"mapped",[115,115]],[[7839,7839],"valid"],[[7840,7840],"mapped",[7841]],[[7841,7841],"valid"],[[7842,7842],"mapped",[7843]],[[7843,7843],"valid"],[[7844,7844],"mapped",[7845]],[[7845,7845],"valid"],[[7846,7846],"mapped",[7847]],[[7847,7847],"valid"],[[7848,7848],"mapped",[7849]],[[7849,7849],"valid"],[[7850,7850],"mapped",[7851]],[[7851,7851],"valid"],[[7852,7852],"mapped",[7853]],[[7853,7853],"valid"],[[7854,7854],"mapped",[7855]],[[7855,7855],"valid"],[[7856,7856],"mapped",[7857]],[[7857,7857],"valid"],[[7858,7858],"mapped",[7859]],[[7859,7859],"valid"],[[7860,7860],"mapped",[7861]],[[7861,7861],"valid"],[[7862,7862],"mapped",[7863]],[[7863,7863],"valid"],[[7864,7864],"mapped",[7865]],[[7865,7865],"valid"],[[7866,7866],"mapped",[7867]],[[7867,7867],"valid"],[[7868,7868],"mapped",[7869]],[[7869,7869],"valid"],[[7870,7870],"mapped",[7871]],[[7871,7871],"valid"],[[7872,7872],"mapped",[7873]],[[7873,7873],"valid"],[[7874,7874],"mapped",[7875]],[[7875,7875],"valid"],[[7876,7876],"mapped",[7877]],[[7877,7877],"valid"],[[7878,7878],"mapped",[7879]],[[7879,7879],"valid"],[[7880,7880],"mapped",[7881]],[[7881,7881],"valid"],[[7882,7882],"mapped",[7883]],[[7883,7883],"valid"],[[7884,7884],"mapped",[7885]],[[7885,7885],"valid"],[[7886,7886],"mapped",[7887]],[[7887,7887],"valid"],[[7888,7888],"mapped",[7889]],[[7889,7889],"valid"],[[7890,7890],"mapped",[7891]],[[7891,7891],"valid"],[[7892,7892],"mapped",[7893]],[[7893,7893],"valid"],[[7894,7894],"mapped",[7895]],[[7895,7895],"valid"],[[7896,7896],"mapped",[7897]],[[7897,7897],"valid"],[[7898,7898],"mapped",[7899]],[[7899,7899],"valid"],[[7900,7900],"mapped",[7901]],[[7901,7901],"valid"],[[7902,7902],"mapped",[7903]],[[7903,7903],"valid"],[[7904,7904],"mapped",[7905]],[[7905,7905],"valid"],[[7906,7906],"mapped",[7907]],[[7907,7907],"valid"],[[7908,7908],"mapped",[7909]],[[7909,7909],"valid"],[[7910,7910],"mapped",[7911]],[[7911,7911],"valid"],[[7912,7912],"mapped",[7913]],[[7913,7913],"valid"],[[7914,7914],"mapped",[7915]],[[7915,7915],"valid"],[[7916,7916],"mapped",[7917]],[[7917,7917],"valid"],[[7918,7918],"mapped",[7919]],[[7919,7919],"valid"],[[7920,7920],"mapped",[7921]],[[7921,7921],"valid"],[[7922,7922],"mapped",[7923]],[[7923,7923],"valid"],[[7924,7924],"mapped",[7925]],[[7925,7925],"valid"],[[7926,7926],"mapped",[7927]],[[7927,7927],"valid"],[[7928,7928],"mapped",[7929]],[[7929,7929],"valid"],[[7930,7930],"mapped",[7931]],[[7931,7931],"valid"],[[7932,7932],"mapped",[7933]],[[7933,7933],"valid"],[[7934,7934],"mapped",[7935]],[[7935,7935],"valid"],[[7936,7943],"valid"],[[7944,7944],"mapped",[7936]],[[7945,7945],"mapped",[7937]],[[7946,7946],"mapped",[7938]],[[7947,7947],"mapped",[7939]],[[7948,7948],"mapped",[7940]],[[7949,7949],"mapped",[7941]],[[7950,7950],"mapped",[7942]],[[7951,7951],"mapped",[7943]],[[7952,7957],"valid"],[[7958,7959],"disallowed"],[[7960,7960],"mapped",[7952]],[[7961,7961],"mapped",[7953]],[[7962,7962],"mapped",[7954]],[[7963,7963],"mapped",[7955]],[[7964,7964],"mapped",[7956]],[[7965,7965],"mapped",[7957]],[[7966,7967],"disallowed"],[[7968,7975],"valid"],[[7976,7976],"mapped",[7968]],[[7977,7977],"mapped",[7969]],[[7978,7978],"mapped",[7970]],[[7979,7979],"mapped",[7971]],[[7980,7980],"mapped",[7972]],[[7981,7981],"mapped",[7973]],[[7982,7982],"mapped",[7974]],[[7983,7983],"mapped",[7975]],[[7984,7991],"valid"],[[7992,7992],"mapped",[7984]],[[7993,7993],"mapped",[7985]],[[7994,7994],"mapped",[7986]],[[7995,7995],"mapped",[7987]],[[7996,7996],"mapped",[7988]],[[7997,7997],"mapped",[7989]],[[7998,7998],"mapped",[7990]],[[7999,7999],"mapped",[7991]],[[8e3,8005],"valid"],[[8006,8007],"disallowed"],[[8008,8008],"mapped",[8e3]],[[8009,8009],"mapped",[8001]],[[8010,8010],"mapped",[8002]],[[8011,8011],"mapped",[8003]],[[8012,8012],"mapped",[8004]],[[8013,8013],"mapped",[8005]],[[8014,8015],"disallowed"],[[8016,8023],"valid"],[[8024,8024],"disallowed"],[[8025,8025],"mapped",[8017]],[[8026,8026],"disallowed"],[[8027,8027],"mapped",[8019]],[[8028,8028],"disallowed"],[[8029,8029],"mapped",[8021]],[[8030,8030],"disallowed"],[[8031,8031],"mapped",[8023]],[[8032,8039],"valid"],[[8040,8040],"mapped",[8032]],[[8041,8041],"mapped",[8033]],[[8042,8042],"mapped",[8034]],[[8043,8043],"mapped",[8035]],[[8044,8044],"mapped",[8036]],[[8045,8045],"mapped",[8037]],[[8046,8046],"mapped",[8038]],[[8047,8047],"mapped",[8039]],[[8048,8048],"valid"],[[8049,8049],"mapped",[940]],[[8050,8050],"valid"],[[8051,8051],"mapped",[941]],[[8052,8052],"valid"],[[8053,8053],"mapped",[942]],[[8054,8054],"valid"],[[8055,8055],"mapped",[943]],[[8056,8056],"valid"],[[8057,8057],"mapped",[972]],[[8058,8058],"valid"],[[8059,8059],"mapped",[973]],[[8060,8060],"valid"],[[8061,8061],"mapped",[974]],[[8062,8063],"disallowed"],[[8064,8064],"mapped",[7936,953]],[[8065,8065],"mapped",[7937,953]],[[8066,8066],"mapped",[7938,953]],[[8067,8067],"mapped",[7939,953]],[[8068,8068],"mapped",[7940,953]],[[8069,8069],"mapped",[7941,953]],[[8070,8070],"mapped",[7942,953]],[[8071,8071],"mapped",[7943,953]],[[8072,8072],"mapped",[7936,953]],[[8073,8073],"mapped",[7937,953]],[[8074,8074],"mapped",[7938,953]],[[8075,8075],"mapped",[7939,953]],[[8076,8076],"mapped",[7940,953]],[[8077,8077],"mapped",[7941,953]],[[8078,8078],"mapped",[7942,953]],[[8079,8079],"mapped",[7943,953]],[[8080,8080],"mapped",[7968,953]],[[8081,8081],"mapped",[7969,953]],[[8082,8082],"mapped",[7970,953]],[[8083,8083],"mapped",[7971,953]],[[8084,8084],"mapped",[7972,953]],[[8085,8085],"mapped",[7973,953]],[[8086,8086],"mapped",[7974,953]],[[8087,8087],"mapped",[7975,953]],[[8088,8088],"mapped",[7968,953]],[[8089,8089],"mapped",[7969,953]],[[8090,8090],"mapped",[7970,953]],[[8091,8091],"mapped",[7971,953]],[[8092,8092],"mapped",[7972,953]],[[8093,8093],"mapped",[7973,953]],[[8094,8094],"mapped",[7974,953]],[[8095,8095],"mapped",[7975,953]],[[8096,8096],"mapped",[8032,953]],[[8097,8097],"mapped",[8033,953]],[[8098,8098],"mapped",[8034,953]],[[8099,8099],"mapped",[8035,953]],[[8100,8100],"mapped",[8036,953]],[[8101,8101],"mapped",[8037,953]],[[8102,8102],"mapped",[8038,953]],[[8103,8103],"mapped",[8039,953]],[[8104,8104],"mapped",[8032,953]],[[8105,8105],"mapped",[8033,953]],[[8106,8106],"mapped",[8034,953]],[[8107,8107],"mapped",[8035,953]],[[8108,8108],"mapped",[8036,953]],[[8109,8109],"mapped",[8037,953]],[[8110,8110],"mapped",[8038,953]],[[8111,8111],"mapped",[8039,953]],[[8112,8113],"valid"],[[8114,8114],"mapped",[8048,953]],[[8115,8115],"mapped",[945,953]],[[8116,8116],"mapped",[940,953]],[[8117,8117],"disallowed"],[[8118,8118],"valid"],[[8119,8119],"mapped",[8118,953]],[[8120,8120],"mapped",[8112]],[[8121,8121],"mapped",[8113]],[[8122,8122],"mapped",[8048]],[[8123,8123],"mapped",[940]],[[8124,8124],"mapped",[945,953]],[[8125,8125],"disallowed_STD3_mapped",[32,787]],[[8126,8126],"mapped",[953]],[[8127,8127],"disallowed_STD3_mapped",[32,787]],[[8128,8128],"disallowed_STD3_mapped",[32,834]],[[8129,8129],"disallowed_STD3_mapped",[32,776,834]],[[8130,8130],"mapped",[8052,953]],[[8131,8131],"mapped",[951,953]],[[8132,8132],"mapped",[942,953]],[[8133,8133],"disallowed"],[[8134,8134],"valid"],[[8135,8135],"mapped",[8134,953]],[[8136,8136],"mapped",[8050]],[[8137,8137],"mapped",[941]],[[8138,8138],"mapped",[8052]],[[8139,8139],"mapped",[942]],[[8140,8140],"mapped",[951,953]],[[8141,8141],"disallowed_STD3_mapped",[32,787,768]],[[8142,8142],"disallowed_STD3_mapped",[32,787,769]],[[8143,8143],"disallowed_STD3_mapped",[32,787,834]],[[8144,8146],"valid"],[[8147,8147],"mapped",[912]],[[8148,8149],"disallowed"],[[8150,8151],"valid"],[[8152,8152],"mapped",[8144]],[[8153,8153],"mapped",[8145]],[[8154,8154],"mapped",[8054]],[[8155,8155],"mapped",[943]],[[8156,8156],"disallowed"],[[8157,8157],"disallowed_STD3_mapped",[32,788,768]],[[8158,8158],"disallowed_STD3_mapped",[32,788,769]],[[8159,8159],"disallowed_STD3_mapped",[32,788,834]],[[8160,8162],"valid"],[[8163,8163],"mapped",[944]],[[8164,8167],"valid"],[[8168,8168],"mapped",[8160]],[[8169,8169],"mapped",[8161]],[[8170,8170],"mapped",[8058]],[[8171,8171],"mapped",[973]],[[8172,8172],"mapped",[8165]],[[8173,8173],"disallowed_STD3_mapped",[32,776,768]],[[8174,8174],"disallowed_STD3_mapped",[32,776,769]],[[8175,8175],"disallowed_STD3_mapped",[96]],[[8176,8177],"disallowed"],[[8178,8178],"mapped",[8060,953]],[[8179,8179],"mapped",[969,953]],[[8180,8180],"mapped",[974,953]],[[8181,8181],"disallowed"],[[8182,8182],"valid"],[[8183,8183],"mapped",[8182,953]],[[8184,8184],"mapped",[8056]],[[8185,8185],"mapped",[972]],[[8186,8186],"mapped",[8060]],[[8187,8187],"mapped",[974]],[[8188,8188],"mapped",[969,953]],[[8189,8189],"disallowed_STD3_mapped",[32,769]],[[8190,8190],"disallowed_STD3_mapped",[32,788]],[[8191,8191],"disallowed"],[[8192,8202],"disallowed_STD3_mapped",[32]],[[8203,8203],"ignored"],[[8204,8205],"deviation",[]],[[8206,8207],"disallowed"],[[8208,8208],"valid",[],"NV8"],[[8209,8209],"mapped",[8208]],[[8210,8214],"valid",[],"NV8"],[[8215,8215],"disallowed_STD3_mapped",[32,819]],[[8216,8227],"valid",[],"NV8"],[[8228,8230],"disallowed"],[[8231,8231],"valid",[],"NV8"],[[8232,8238],"disallowed"],[[8239,8239],"disallowed_STD3_mapped",[32]],[[8240,8242],"valid",[],"NV8"],[[8243,8243],"mapped",[8242,8242]],[[8244,8244],"mapped",[8242,8242,8242]],[[8245,8245],"valid",[],"NV8"],[[8246,8246],"mapped",[8245,8245]],[[8247,8247],"mapped",[8245,8245,8245]],[[8248,8251],"valid",[],"NV8"],[[8252,8252],"disallowed_STD3_mapped",[33,33]],[[8253,8253],"valid",[],"NV8"],[[8254,8254],"disallowed_STD3_mapped",[32,773]],[[8255,8262],"valid",[],"NV8"],[[8263,8263],"disallowed_STD3_mapped",[63,63]],[[8264,8264],"disallowed_STD3_mapped",[63,33]],[[8265,8265],"disallowed_STD3_mapped",[33,63]],[[8266,8269],"valid",[],"NV8"],[[8270,8274],"valid",[],"NV8"],[[8275,8276],"valid",[],"NV8"],[[8277,8278],"valid",[],"NV8"],[[8279,8279],"mapped",[8242,8242,8242,8242]],[[8280,8286],"valid",[],"NV8"],[[8287,8287],"disallowed_STD3_mapped",[32]],[[8288,8288],"ignored"],[[8289,8291],"disallowed"],[[8292,8292],"ignored"],[[8293,8293],"disallowed"],[[8294,8297],"disallowed"],[[8298,8303],"disallowed"],[[8304,8304],"mapped",[48]],[[8305,8305],"mapped",[105]],[[8306,8307],"disallowed"],[[8308,8308],"mapped",[52]],[[8309,8309],"mapped",[53]],[[8310,8310],"mapped",[54]],[[8311,8311],"mapped",[55]],[[8312,8312],"mapped",[56]],[[8313,8313],"mapped",[57]],[[8314,8314],"disallowed_STD3_mapped",[43]],[[8315,8315],"mapped",[8722]],[[8316,8316],"disallowed_STD3_mapped",[61]],[[8317,8317],"disallowed_STD3_mapped",[40]],[[8318,8318],"disallowed_STD3_mapped",[41]],[[8319,8319],"mapped",[110]],[[8320,8320],"mapped",[48]],[[8321,8321],"mapped",[49]],[[8322,8322],"mapped",[50]],[[8323,8323],"mapped",[51]],[[8324,8324],"mapped",[52]],[[8325,8325],"mapped",[53]],[[8326,8326],"mapped",[54]],[[8327,8327],"mapped",[55]],[[8328,8328],"mapped",[56]],[[8329,8329],"mapped",[57]],[[8330,8330],"disallowed_STD3_mapped",[43]],[[8331,8331],"mapped",[8722]],[[8332,8332],"disallowed_STD3_mapped",[61]],[[8333,8333],"disallowed_STD3_mapped",[40]],[[8334,8334],"disallowed_STD3_mapped",[41]],[[8335,8335],"disallowed"],[[8336,8336],"mapped",[97]],[[8337,8337],"mapped",[101]],[[8338,8338],"mapped",[111]],[[8339,8339],"mapped",[120]],[[8340,8340],"mapped",[601]],[[8341,8341],"mapped",[104]],[[8342,8342],"mapped",[107]],[[8343,8343],"mapped",[108]],[[8344,8344],"mapped",[109]],[[8345,8345],"mapped",[110]],[[8346,8346],"mapped",[112]],[[8347,8347],"mapped",[115]],[[8348,8348],"mapped",[116]],[[8349,8351],"disallowed"],[[8352,8359],"valid",[],"NV8"],[[8360,8360],"mapped",[114,115]],[[8361,8362],"valid",[],"NV8"],[[8363,8363],"valid",[],"NV8"],[[8364,8364],"valid",[],"NV8"],[[8365,8367],"valid",[],"NV8"],[[8368,8369],"valid",[],"NV8"],[[8370,8373],"valid",[],"NV8"],[[8374,8376],"valid",[],"NV8"],[[8377,8377],"valid",[],"NV8"],[[8378,8378],"valid",[],"NV8"],[[8379,8381],"valid",[],"NV8"],[[8382,8382],"valid",[],"NV8"],[[8383,8399],"disallowed"],[[8400,8417],"valid",[],"NV8"],[[8418,8419],"valid",[],"NV8"],[[8420,8426],"valid",[],"NV8"],[[8427,8427],"valid",[],"NV8"],[[8428,8431],"valid",[],"NV8"],[[8432,8432],"valid",[],"NV8"],[[8433,8447],"disallowed"],[[8448,8448],"disallowed_STD3_mapped",[97,47,99]],[[8449,8449],"disallowed_STD3_mapped",[97,47,115]],[[8450,8450],"mapped",[99]],[[8451,8451],"mapped",[176,99]],[[8452,8452],"valid",[],"NV8"],[[8453,8453],"disallowed_STD3_mapped",[99,47,111]],[[8454,8454],"disallowed_STD3_mapped",[99,47,117]],[[8455,8455],"mapped",[603]],[[8456,8456],"valid",[],"NV8"],[[8457,8457],"mapped",[176,102]],[[8458,8458],"mapped",[103]],[[8459,8462],"mapped",[104]],[[8463,8463],"mapped",[295]],[[8464,8465],"mapped",[105]],[[8466,8467],"mapped",[108]],[[8468,8468],"valid",[],"NV8"],[[8469,8469],"mapped",[110]],[[8470,8470],"mapped",[110,111]],[[8471,8472],"valid",[],"NV8"],[[8473,8473],"mapped",[112]],[[8474,8474],"mapped",[113]],[[8475,8477],"mapped",[114]],[[8478,8479],"valid",[],"NV8"],[[8480,8480],"mapped",[115,109]],[[8481,8481],"mapped",[116,101,108]],[[8482,8482],"mapped",[116,109]],[[8483,8483],"valid",[],"NV8"],[[8484,8484],"mapped",[122]],[[8485,8485],"valid",[],"NV8"],[[8486,8486],"mapped",[969]],[[8487,8487],"valid",[],"NV8"],[[8488,8488],"mapped",[122]],[[8489,8489],"valid",[],"NV8"],[[8490,8490],"mapped",[107]],[[8491,8491],"mapped",[229]],[[8492,8492],"mapped",[98]],[[8493,8493],"mapped",[99]],[[8494,8494],"valid",[],"NV8"],[[8495,8496],"mapped",[101]],[[8497,8497],"mapped",[102]],[[8498,8498],"disallowed"],[[8499,8499],"mapped",[109]],[[8500,8500],"mapped",[111]],[[8501,8501],"mapped",[1488]],[[8502,8502],"mapped",[1489]],[[8503,8503],"mapped",[1490]],[[8504,8504],"mapped",[1491]],[[8505,8505],"mapped",[105]],[[8506,8506],"valid",[],"NV8"],[[8507,8507],"mapped",[102,97,120]],[[8508,8508],"mapped",[960]],[[8509,8510],"mapped",[947]],[[8511,8511],"mapped",[960]],[[8512,8512],"mapped",[8721]],[[8513,8516],"valid",[],"NV8"],[[8517,8518],"mapped",[100]],[[8519,8519],"mapped",[101]],[[8520,8520],"mapped",[105]],[[8521,8521],"mapped",[106]],[[8522,8523],"valid",[],"NV8"],[[8524,8524],"valid",[],"NV8"],[[8525,8525],"valid",[],"NV8"],[[8526,8526],"valid"],[[8527,8527],"valid",[],"NV8"],[[8528,8528],"mapped",[49,8260,55]],[[8529,8529],"mapped",[49,8260,57]],[[8530,8530],"mapped",[49,8260,49,48]],[[8531,8531],"mapped",[49,8260,51]],[[8532,8532],"mapped",[50,8260,51]],[[8533,8533],"mapped",[49,8260,53]],[[8534,8534],"mapped",[50,8260,53]],[[8535,8535],"mapped",[51,8260,53]],[[8536,8536],"mapped",[52,8260,53]],[[8537,8537],"mapped",[49,8260,54]],[[8538,8538],"mapped",[53,8260,54]],[[8539,8539],"mapped",[49,8260,56]],[[8540,8540],"mapped",[51,8260,56]],[[8541,8541],"mapped",[53,8260,56]],[[8542,8542],"mapped",[55,8260,56]],[[8543,8543],"mapped",[49,8260]],[[8544,8544],"mapped",[105]],[[8545,8545],"mapped",[105,105]],[[8546,8546],"mapped",[105,105,105]],[[8547,8547],"mapped",[105,118]],[[8548,8548],"mapped",[118]],[[8549,8549],"mapped",[118,105]],[[8550,8550],"mapped",[118,105,105]],[[8551,8551],"mapped",[118,105,105,105]],[[8552,8552],"mapped",[105,120]],[[8553,8553],"mapped",[120]],[[8554,8554],"mapped",[120,105]],[[8555,8555],"mapped",[120,105,105]],[[8556,8556],"mapped",[108]],[[8557,8557],"mapped",[99]],[[8558,8558],"mapped",[100]],[[8559,8559],"mapped",[109]],[[8560,8560],"mapped",[105]],[[8561,8561],"mapped",[105,105]],[[8562,8562],"mapped",[105,105,105]],[[8563,8563],"mapped",[105,118]],[[8564,8564],"mapped",[118]],[[8565,8565],"mapped",[118,105]],[[8566,8566],"mapped",[118,105,105]],[[8567,8567],"mapped",[118,105,105,105]],[[8568,8568],"mapped",[105,120]],[[8569,8569],"mapped",[120]],[[8570,8570],"mapped",[120,105]],[[8571,8571],"mapped",[120,105,105]],[[8572,8572],"mapped",[108]],[[8573,8573],"mapped",[99]],[[8574,8574],"mapped",[100]],[[8575,8575],"mapped",[109]],[[8576,8578],"valid",[],"NV8"],[[8579,8579],"disallowed"],[[8580,8580],"valid"],[[8581,8584],"valid",[],"NV8"],[[8585,8585],"mapped",[48,8260,51]],[[8586,8587],"valid",[],"NV8"],[[8588,8591],"disallowed"],[[8592,8682],"valid",[],"NV8"],[[8683,8691],"valid",[],"NV8"],[[8692,8703],"valid",[],"NV8"],[[8704,8747],"valid",[],"NV8"],[[8748,8748],"mapped",[8747,8747]],[[8749,8749],"mapped",[8747,8747,8747]],[[8750,8750],"valid",[],"NV8"],[[8751,8751],"mapped",[8750,8750]],[[8752,8752],"mapped",[8750,8750,8750]],[[8753,8799],"valid",[],"NV8"],[[8800,8800],"disallowed_STD3_valid"],[[8801,8813],"valid",[],"NV8"],[[8814,8815],"disallowed_STD3_valid"],[[8816,8945],"valid",[],"NV8"],[[8946,8959],"valid",[],"NV8"],[[8960,8960],"valid",[],"NV8"],[[8961,8961],"valid",[],"NV8"],[[8962,9e3],"valid",[],"NV8"],[[9001,9001],"mapped",[12296]],[[9002,9002],"mapped",[12297]],[[9003,9082],"valid",[],"NV8"],[[9083,9083],"valid",[],"NV8"],[[9084,9084],"valid",[],"NV8"],[[9085,9114],"valid",[],"NV8"],[[9115,9166],"valid",[],"NV8"],[[9167,9168],"valid",[],"NV8"],[[9169,9179],"valid",[],"NV8"],[[9180,9191],"valid",[],"NV8"],[[9192,9192],"valid",[],"NV8"],[[9193,9203],"valid",[],"NV8"],[[9204,9210],"valid",[],"NV8"],[[9211,9215],"disallowed"],[[9216,9252],"valid",[],"NV8"],[[9253,9254],"valid",[],"NV8"],[[9255,9279],"disallowed"],[[9280,9290],"valid",[],"NV8"],[[9291,9311],"disallowed"],[[9312,9312],"mapped",[49]],[[9313,9313],"mapped",[50]],[[9314,9314],"mapped",[51]],[[9315,9315],"mapped",[52]],[[9316,9316],"mapped",[53]],[[9317,9317],"mapped",[54]],[[9318,9318],"mapped",[55]],[[9319,9319],"mapped",[56]],[[9320,9320],"mapped",[57]],[[9321,9321],"mapped",[49,48]],[[9322,9322],"mapped",[49,49]],[[9323,9323],"mapped",[49,50]],[[9324,9324],"mapped",[49,51]],[[9325,9325],"mapped",[49,52]],[[9326,9326],"mapped",[49,53]],[[9327,9327],"mapped",[49,54]],[[9328,9328],"mapped",[49,55]],[[9329,9329],"mapped",[49,56]],[[9330,9330],"mapped",[49,57]],[[9331,9331],"mapped",[50,48]],[[9332,9332],"disallowed_STD3_mapped",[40,49,41]],[[9333,9333],"disallowed_STD3_mapped",[40,50,41]],[[9334,9334],"disallowed_STD3_mapped",[40,51,41]],[[9335,9335],"disallowed_STD3_mapped",[40,52,41]],[[9336,9336],"disallowed_STD3_mapped",[40,53,41]],[[9337,9337],"disallowed_STD3_mapped",[40,54,41]],[[9338,9338],"disallowed_STD3_mapped",[40,55,41]],[[9339,9339],"disallowed_STD3_mapped",[40,56,41]],[[9340,9340],"disallowed_STD3_mapped",[40,57,41]],[[9341,9341],"disallowed_STD3_mapped",[40,49,48,41]],[[9342,9342],"disallowed_STD3_mapped",[40,49,49,41]],[[9343,9343],"disallowed_STD3_mapped",[40,49,50,41]],[[9344,9344],"disallowed_STD3_mapped",[40,49,51,41]],[[9345,9345],"disallowed_STD3_mapped",[40,49,52,41]],[[9346,9346],"disallowed_STD3_mapped",[40,49,53,41]],[[9347,9347],"disallowed_STD3_mapped",[40,49,54,41]],[[9348,9348],"disallowed_STD3_mapped",[40,49,55,41]],[[9349,9349],"disallowed_STD3_mapped",[40,49,56,41]],[[9350,9350],"disallowed_STD3_mapped",[40,49,57,41]],[[9351,9351],"disallowed_STD3_mapped",[40,50,48,41]],[[9352,9371],"disallowed"],[[9372,9372],"disallowed_STD3_mapped",[40,97,41]],[[9373,9373],"disallowed_STD3_mapped",[40,98,41]],[[9374,9374],"disallowed_STD3_mapped",[40,99,41]],[[9375,9375],"disallowed_STD3_mapped",[40,100,41]],[[9376,9376],"disallowed_STD3_mapped",[40,101,41]],[[9377,9377],"disallowed_STD3_mapped",[40,102,41]],[[9378,9378],"disallowed_STD3_mapped",[40,103,41]],[[9379,9379],"disallowed_STD3_mapped",[40,104,41]],[[9380,9380],"disallowed_STD3_mapped",[40,105,41]],[[9381,9381],"disallowed_STD3_mapped",[40,106,41]],[[9382,9382],"disallowed_STD3_mapped",[40,107,41]],[[9383,9383],"disallowed_STD3_mapped",[40,108,41]],[[9384,9384],"disallowed_STD3_mapped",[40,109,41]],[[9385,9385],"disallowed_STD3_mapped",[40,110,41]],[[9386,9386],"disallowed_STD3_mapped",[40,111,41]],[[9387,9387],"disallowed_STD3_mapped",[40,112,41]],[[9388,9388],"disallowed_STD3_mapped",[40,113,41]],[[9389,9389],"disallowed_STD3_mapped",[40,114,41]],[[9390,9390],"disallowed_STD3_mapped",[40,115,41]],[[9391,9391],"disallowed_STD3_mapped",[40,116,41]],[[9392,9392],"disallowed_STD3_mapped",[40,117,41]],[[9393,9393],"disallowed_STD3_mapped",[40,118,41]],[[9394,9394],"disallowed_STD3_mapped",[40,119,41]],[[9395,9395],"disallowed_STD3_mapped",[40,120,41]],[[9396,9396],"disallowed_STD3_mapped",[40,121,41]],[[9397,9397],"disallowed_STD3_mapped",[40,122,41]],[[9398,9398],"mapped",[97]],[[9399,9399],"mapped",[98]],[[9400,9400],"mapped",[99]],[[9401,9401],"mapped",[100]],[[9402,9402],"mapped",[101]],[[9403,9403],"mapped",[102]],[[9404,9404],"mapped",[103]],[[9405,9405],"mapped",[104]],[[9406,9406],"mapped",[105]],[[9407,9407],"mapped",[106]],[[9408,9408],"mapped",[107]],[[9409,9409],"mapped",[108]],[[9410,9410],"mapped",[109]],[[9411,9411],"mapped",[110]],[[9412,9412],"mapped",[111]],[[9413,9413],"mapped",[112]],[[9414,9414],"mapped",[113]],[[9415,9415],"mapped",[114]],[[9416,9416],"mapped",[115]],[[9417,9417],"mapped",[116]],[[9418,9418],"mapped",[117]],[[9419,9419],"mapped",[118]],[[9420,9420],"mapped",[119]],[[9421,9421],"mapped",[120]],[[9422,9422],"mapped",[121]],[[9423,9423],"mapped",[122]],[[9424,9424],"mapped",[97]],[[9425,9425],"mapped",[98]],[[9426,9426],"mapped",[99]],[[9427,9427],"mapped",[100]],[[9428,9428],"mapped",[101]],[[9429,9429],"mapped",[102]],[[9430,9430],"mapped",[103]],[[9431,9431],"mapped",[104]],[[9432,9432],"mapped",[105]],[[9433,9433],"mapped",[106]],[[9434,9434],"mapped",[107]],[[9435,9435],"mapped",[108]],[[9436,9436],"mapped",[109]],[[9437,9437],"mapped",[110]],[[9438,9438],"mapped",[111]],[[9439,9439],"mapped",[112]],[[9440,9440],"mapped",[113]],[[9441,9441],"mapped",[114]],[[9442,9442],"mapped",[115]],[[9443,9443],"mapped",[116]],[[9444,9444],"mapped",[117]],[[9445,9445],"mapped",[118]],[[9446,9446],"mapped",[119]],[[9447,9447],"mapped",[120]],[[9448,9448],"mapped",[121]],[[9449,9449],"mapped",[122]],[[9450,9450],"mapped",[48]],[[9451,9470],"valid",[],"NV8"],[[9471,9471],"valid",[],"NV8"],[[9472,9621],"valid",[],"NV8"],[[9622,9631],"valid",[],"NV8"],[[9632,9711],"valid",[],"NV8"],[[9712,9719],"valid",[],"NV8"],[[9720,9727],"valid",[],"NV8"],[[9728,9747],"valid",[],"NV8"],[[9748,9749],"valid",[],"NV8"],[[9750,9751],"valid",[],"NV8"],[[9752,9752],"valid",[],"NV8"],[[9753,9753],"valid",[],"NV8"],[[9754,9839],"valid",[],"NV8"],[[9840,9841],"valid",[],"NV8"],[[9842,9853],"valid",[],"NV8"],[[9854,9855],"valid",[],"NV8"],[[9856,9865],"valid",[],"NV8"],[[9866,9873],"valid",[],"NV8"],[[9874,9884],"valid",[],"NV8"],[[9885,9885],"valid",[],"NV8"],[[9886,9887],"valid",[],"NV8"],[[9888,9889],"valid",[],"NV8"],[[9890,9905],"valid",[],"NV8"],[[9906,9906],"valid",[],"NV8"],[[9907,9916],"valid",[],"NV8"],[[9917,9919],"valid",[],"NV8"],[[9920,9923],"valid",[],"NV8"],[[9924,9933],"valid",[],"NV8"],[[9934,9934],"valid",[],"NV8"],[[9935,9953],"valid",[],"NV8"],[[9954,9954],"valid",[],"NV8"],[[9955,9955],"valid",[],"NV8"],[[9956,9959],"valid",[],"NV8"],[[9960,9983],"valid",[],"NV8"],[[9984,9984],"valid",[],"NV8"],[[9985,9988],"valid",[],"NV8"],[[9989,9989],"valid",[],"NV8"],[[9990,9993],"valid",[],"NV8"],[[9994,9995],"valid",[],"NV8"],[[9996,10023],"valid",[],"NV8"],[[10024,10024],"valid",[],"NV8"],[[10025,10059],"valid",[],"NV8"],[[10060,10060],"valid",[],"NV8"],[[10061,10061],"valid",[],"NV8"],[[10062,10062],"valid",[],"NV8"],[[10063,10066],"valid",[],"NV8"],[[10067,10069],"valid",[],"NV8"],[[10070,10070],"valid",[],"NV8"],[[10071,10071],"valid",[],"NV8"],[[10072,10078],"valid",[],"NV8"],[[10079,10080],"valid",[],"NV8"],[[10081,10087],"valid",[],"NV8"],[[10088,10101],"valid",[],"NV8"],[[10102,10132],"valid",[],"NV8"],[[10133,10135],"valid",[],"NV8"],[[10136,10159],"valid",[],"NV8"],[[10160,10160],"valid",[],"NV8"],[[10161,10174],"valid",[],"NV8"],[[10175,10175],"valid",[],"NV8"],[[10176,10182],"valid",[],"NV8"],[[10183,10186],"valid",[],"NV8"],[[10187,10187],"valid",[],"NV8"],[[10188,10188],"valid",[],"NV8"],[[10189,10189],"valid",[],"NV8"],[[10190,10191],"valid",[],"NV8"],[[10192,10219],"valid",[],"NV8"],[[10220,10223],"valid",[],"NV8"],[[10224,10239],"valid",[],"NV8"],[[10240,10495],"valid",[],"NV8"],[[10496,10763],"valid",[],"NV8"],[[10764,10764],"mapped",[8747,8747,8747,8747]],[[10765,10867],"valid",[],"NV8"],[[10868,10868],"disallowed_STD3_mapped",[58,58,61]],[[10869,10869],"disallowed_STD3_mapped",[61,61]],[[10870,10870],"disallowed_STD3_mapped",[61,61,61]],[[10871,10971],"valid",[],"NV8"],[[10972,10972],"mapped",[10973,824]],[[10973,11007],"valid",[],"NV8"],[[11008,11021],"valid",[],"NV8"],[[11022,11027],"valid",[],"NV8"],[[11028,11034],"valid",[],"NV8"],[[11035,11039],"valid",[],"NV8"],[[11040,11043],"valid",[],"NV8"],[[11044,11084],"valid",[],"NV8"],[[11085,11087],"valid",[],"NV8"],[[11088,11092],"valid",[],"NV8"],[[11093,11097],"valid",[],"NV8"],[[11098,11123],"valid",[],"NV8"],[[11124,11125],"disallowed"],[[11126,11157],"valid",[],"NV8"],[[11158,11159],"disallowed"],[[11160,11193],"valid",[],"NV8"],[[11194,11196],"disallowed"],[[11197,11208],"valid",[],"NV8"],[[11209,11209],"disallowed"],[[11210,11217],"valid",[],"NV8"],[[11218,11243],"disallowed"],[[11244,11247],"valid",[],"NV8"],[[11248,11263],"disallowed"],[[11264,11264],"mapped",[11312]],[[11265,11265],"mapped",[11313]],[[11266,11266],"mapped",[11314]],[[11267,11267],"mapped",[11315]],[[11268,11268],"mapped",[11316]],[[11269,11269],"mapped",[11317]],[[11270,11270],"mapped",[11318]],[[11271,11271],"mapped",[11319]],[[11272,11272],"mapped",[11320]],[[11273,11273],"mapped",[11321]],[[11274,11274],"mapped",[11322]],[[11275,11275],"mapped",[11323]],[[11276,11276],"mapped",[11324]],[[11277,11277],"mapped",[11325]],[[11278,11278],"mapped",[11326]],[[11279,11279],"mapped",[11327]],[[11280,11280],"mapped",[11328]],[[11281,11281],"mapped",[11329]],[[11282,11282],"mapped",[11330]],[[11283,11283],"mapped",[11331]],[[11284,11284],"mapped",[11332]],[[11285,11285],"mapped",[11333]],[[11286,11286],"mapped",[11334]],[[11287,11287],"mapped",[11335]],[[11288,11288],"mapped",[11336]],[[11289,11289],"mapped",[11337]],[[11290,11290],"mapped",[11338]],[[11291,11291],"mapped",[11339]],[[11292,11292],"mapped",[11340]],[[11293,11293],"mapped",[11341]],[[11294,11294],"mapped",[11342]],[[11295,11295],"mapped",[11343]],[[11296,11296],"mapped",[11344]],[[11297,11297],"mapped",[11345]],[[11298,11298],"mapped",[11346]],[[11299,11299],"mapped",[11347]],[[11300,11300],"mapped",[11348]],[[11301,11301],"mapped",[11349]],[[11302,11302],"mapped",[11350]],[[11303,11303],"mapped",[11351]],[[11304,11304],"mapped",[11352]],[[11305,11305],"mapped",[11353]],[[11306,11306],"mapped",[11354]],[[11307,11307],"mapped",[11355]],[[11308,11308],"mapped",[11356]],[[11309,11309],"mapped",[11357]],[[11310,11310],"mapped",[11358]],[[11311,11311],"disallowed"],[[11312,11358],"valid"],[[11359,11359],"disallowed"],[[11360,11360],"mapped",[11361]],[[11361,11361],"valid"],[[11362,11362],"mapped",[619]],[[11363,11363],"mapped",[7549]],[[11364,11364],"mapped",[637]],[[11365,11366],"valid"],[[11367,11367],"mapped",[11368]],[[11368,11368],"valid"],[[11369,11369],"mapped",[11370]],[[11370,11370],"valid"],[[11371,11371],"mapped",[11372]],[[11372,11372],"valid"],[[11373,11373],"mapped",[593]],[[11374,11374],"mapped",[625]],[[11375,11375],"mapped",[592]],[[11376,11376],"mapped",[594]],[[11377,11377],"valid"],[[11378,11378],"mapped",[11379]],[[11379,11379],"valid"],[[11380,11380],"valid"],[[11381,11381],"mapped",[11382]],[[11382,11383],"valid"],[[11384,11387],"valid"],[[11388,11388],"mapped",[106]],[[11389,11389],"mapped",[118]],[[11390,11390],"mapped",[575]],[[11391,11391],"mapped",[576]],[[11392,11392],"mapped",[11393]],[[11393,11393],"valid"],[[11394,11394],"mapped",[11395]],[[11395,11395],"valid"],[[11396,11396],"mapped",[11397]],[[11397,11397],"valid"],[[11398,11398],"mapped",[11399]],[[11399,11399],"valid"],[[11400,11400],"mapped",[11401]],[[11401,11401],"valid"],[[11402,11402],"mapped",[11403]],[[11403,11403],"valid"],[[11404,11404],"mapped",[11405]],[[11405,11405],"valid"],[[11406,11406],"mapped",[11407]],[[11407,11407],"valid"],[[11408,11408],"mapped",[11409]],[[11409,11409],"valid"],[[11410,11410],"mapped",[11411]],[[11411,11411],"valid"],[[11412,11412],"mapped",[11413]],[[11413,11413],"valid"],[[11414,11414],"mapped",[11415]],[[11415,11415],"valid"],[[11416,11416],"mapped",[11417]],[[11417,11417],"valid"],[[11418,11418],"mapped",[11419]],[[11419,11419],"valid"],[[11420,11420],"mapped",[11421]],[[11421,11421],"valid"],[[11422,11422],"mapped",[11423]],[[11423,11423],"valid"],[[11424,11424],"mapped",[11425]],[[11425,11425],"valid"],[[11426,11426],"mapped",[11427]],[[11427,11427],"valid"],[[11428,11428],"mapped",[11429]],[[11429,11429],"valid"],[[11430,11430],"mapped",[11431]],[[11431,11431],"valid"],[[11432,11432],"mapped",[11433]],[[11433,11433],"valid"],[[11434,11434],"mapped",[11435]],[[11435,11435],"valid"],[[11436,11436],"mapped",[11437]],[[11437,11437],"valid"],[[11438,11438],"mapped",[11439]],[[11439,11439],"valid"],[[11440,11440],"mapped",[11441]],[[11441,11441],"valid"],[[11442,11442],"mapped",[11443]],[[11443,11443],"valid"],[[11444,11444],"mapped",[11445]],[[11445,11445],"valid"],[[11446,11446],"mapped",[11447]],[[11447,11447],"valid"],[[11448,11448],"mapped",[11449]],[[11449,11449],"valid"],[[11450,11450],"mapped",[11451]],[[11451,11451],"valid"],[[11452,11452],"mapped",[11453]],[[11453,11453],"valid"],[[11454,11454],"mapped",[11455]],[[11455,11455],"valid"],[[11456,11456],"mapped",[11457]],[[11457,11457],"valid"],[[11458,11458],"mapped",[11459]],[[11459,11459],"valid"],[[11460,11460],"mapped",[11461]],[[11461,11461],"valid"],[[11462,11462],"mapped",[11463]],[[11463,11463],"valid"],[[11464,11464],"mapped",[11465]],[[11465,11465],"valid"],[[11466,11466],"mapped",[11467]],[[11467,11467],"valid"],[[11468,11468],"mapped",[11469]],[[11469,11469],"valid"],[[11470,11470],"mapped",[11471]],[[11471,11471],"valid"],[[11472,11472],"mapped",[11473]],[[11473,11473],"valid"],[[11474,11474],"mapped",[11475]],[[11475,11475],"valid"],[[11476,11476],"mapped",[11477]],[[11477,11477],"valid"],[[11478,11478],"mapped",[11479]],[[11479,11479],"valid"],[[11480,11480],"mapped",[11481]],[[11481,11481],"valid"],[[11482,11482],"mapped",[11483]],[[11483,11483],"valid"],[[11484,11484],"mapped",[11485]],[[11485,11485],"valid"],[[11486,11486],"mapped",[11487]],[[11487,11487],"valid"],[[11488,11488],"mapped",[11489]],[[11489,11489],"valid"],[[11490,11490],"mapped",[11491]],[[11491,11492],"valid"],[[11493,11498],"valid",[],"NV8"],[[11499,11499],"mapped",[11500]],[[11500,11500],"valid"],[[11501,11501],"mapped",[11502]],[[11502,11505],"valid"],[[11506,11506],"mapped",[11507]],[[11507,11507],"valid"],[[11508,11512],"disallowed"],[[11513,11519],"valid",[],"NV8"],[[11520,11557],"valid"],[[11558,11558],"disallowed"],[[11559,11559],"valid"],[[11560,11564],"disallowed"],[[11565,11565],"valid"],[[11566,11567],"disallowed"],[[11568,11621],"valid"],[[11622,11623],"valid"],[[11624,11630],"disallowed"],[[11631,11631],"mapped",[11617]],[[11632,11632],"valid",[],"NV8"],[[11633,11646],"disallowed"],[[11647,11647],"valid"],[[11648,11670],"valid"],[[11671,11679],"disallowed"],[[11680,11686],"valid"],[[11687,11687],"disallowed"],[[11688,11694],"valid"],[[11695,11695],"disallowed"],[[11696,11702],"valid"],[[11703,11703],"disallowed"],[[11704,11710],"valid"],[[11711,11711],"disallowed"],[[11712,11718],"valid"],[[11719,11719],"disallowed"],[[11720,11726],"valid"],[[11727,11727],"disallowed"],[[11728,11734],"valid"],[[11735,11735],"disallowed"],[[11736,11742],"valid"],[[11743,11743],"disallowed"],[[11744,11775],"valid"],[[11776,11799],"valid",[],"NV8"],[[11800,11803],"valid",[],"NV8"],[[11804,11805],"valid",[],"NV8"],[[11806,11822],"valid",[],"NV8"],[[11823,11823],"valid"],[[11824,11824],"valid",[],"NV8"],[[11825,11825],"valid",[],"NV8"],[[11826,11835],"valid",[],"NV8"],[[11836,11842],"valid",[],"NV8"],[[11843,11903],"disallowed"],[[11904,11929],"valid",[],"NV8"],[[11930,11930],"disallowed"],[[11931,11934],"valid",[],"NV8"],[[11935,11935],"mapped",[27597]],[[11936,12018],"valid",[],"NV8"],[[12019,12019],"mapped",[40863]],[[12020,12031],"disallowed"],[[12032,12032],"mapped",[19968]],[[12033,12033],"mapped",[20008]],[[12034,12034],"mapped",[20022]],[[12035,12035],"mapped",[20031]],[[12036,12036],"mapped",[20057]],[[12037,12037],"mapped",[20101]],[[12038,12038],"mapped",[20108]],[[12039,12039],"mapped",[20128]],[[12040,12040],"mapped",[20154]],[[12041,12041],"mapped",[20799]],[[12042,12042],"mapped",[20837]],[[12043,12043],"mapped",[20843]],[[12044,12044],"mapped",[20866]],[[12045,12045],"mapped",[20886]],[[12046,12046],"mapped",[20907]],[[12047,12047],"mapped",[20960]],[[12048,12048],"mapped",[20981]],[[12049,12049],"mapped",[20992]],[[12050,12050],"mapped",[21147]],[[12051,12051],"mapped",[21241]],[[12052,12052],"mapped",[21269]],[[12053,12053],"mapped",[21274]],[[12054,12054],"mapped",[21304]],[[12055,12055],"mapped",[21313]],[[12056,12056],"mapped",[21340]],[[12057,12057],"mapped",[21353]],[[12058,12058],"mapped",[21378]],[[12059,12059],"mapped",[21430]],[[12060,12060],"mapped",[21448]],[[12061,12061],"mapped",[21475]],[[12062,12062],"mapped",[22231]],[[12063,12063],"mapped",[22303]],[[12064,12064],"mapped",[22763]],[[12065,12065],"mapped",[22786]],[[12066,12066],"mapped",[22794]],[[12067,12067],"mapped",[22805]],[[12068,12068],"mapped",[22823]],[[12069,12069],"mapped",[22899]],[[12070,12070],"mapped",[23376]],[[12071,12071],"mapped",[23424]],[[12072,12072],"mapped",[23544]],[[12073,12073],"mapped",[23567]],[[12074,12074],"mapped",[23586]],[[12075,12075],"mapped",[23608]],[[12076,12076],"mapped",[23662]],[[12077,12077],"mapped",[23665]],[[12078,12078],"mapped",[24027]],[[12079,12079],"mapped",[24037]],[[12080,12080],"mapped",[24049]],[[12081,12081],"mapped",[24062]],[[12082,12082],"mapped",[24178]],[[12083,12083],"mapped",[24186]],[[12084,12084],"mapped",[24191]],[[12085,12085],"mapped",[24308]],[[12086,12086],"mapped",[24318]],[[12087,12087],"mapped",[24331]],[[12088,12088],"mapped",[24339]],[[12089,12089],"mapped",[24400]],[[12090,12090],"mapped",[24417]],[[12091,12091],"mapped",[24435]],[[12092,12092],"mapped",[24515]],[[12093,12093],"mapped",[25096]],[[12094,12094],"mapped",[25142]],[[12095,12095],"mapped",[25163]],[[12096,12096],"mapped",[25903]],[[12097,12097],"mapped",[25908]],[[12098,12098],"mapped",[25991]],[[12099,12099],"mapped",[26007]],[[12100,12100],"mapped",[26020]],[[12101,12101],"mapped",[26041]],[[12102,12102],"mapped",[26080]],[[12103,12103],"mapped",[26085]],[[12104,12104],"mapped",[26352]],[[12105,12105],"mapped",[26376]],[[12106,12106],"mapped",[26408]],[[12107,12107],"mapped",[27424]],[[12108,12108],"mapped",[27490]],[[12109,12109],"mapped",[27513]],[[12110,12110],"mapped",[27571]],[[12111,12111],"mapped",[27595]],[[12112,12112],"mapped",[27604]],[[12113,12113],"mapped",[27611]],[[12114,12114],"mapped",[27663]],[[12115,12115],"mapped",[27668]],[[12116,12116],"mapped",[27700]],[[12117,12117],"mapped",[28779]],[[12118,12118],"mapped",[29226]],[[12119,12119],"mapped",[29238]],[[12120,12120],"mapped",[29243]],[[12121,12121],"mapped",[29247]],[[12122,12122],"mapped",[29255]],[[12123,12123],"mapped",[29273]],[[12124,12124],"mapped",[29275]],[[12125,12125],"mapped",[29356]],[[12126,12126],"mapped",[29572]],[[12127,12127],"mapped",[29577]],[[12128,12128],"mapped",[29916]],[[12129,12129],"mapped",[29926]],[[12130,12130],"mapped",[29976]],[[12131,12131],"mapped",[29983]],[[12132,12132],"mapped",[29992]],[[12133,12133],"mapped",[3e4]],[[12134,12134],"mapped",[30091]],[[12135,12135],"mapped",[30098]],[[12136,12136],"mapped",[30326]],[[12137,12137],"mapped",[30333]],[[12138,12138],"mapped",[30382]],[[12139,12139],"mapped",[30399]],[[12140,12140],"mapped",[30446]],[[12141,12141],"mapped",[30683]],[[12142,12142],"mapped",[30690]],[[12143,12143],"mapped",[30707]],[[12144,12144],"mapped",[31034]],[[12145,12145],"mapped",[31160]],[[12146,12146],"mapped",[31166]],[[12147,12147],"mapped",[31348]],[[12148,12148],"mapped",[31435]],[[12149,12149],"mapped",[31481]],[[12150,12150],"mapped",[31859]],[[12151,12151],"mapped",[31992]],[[12152,12152],"mapped",[32566]],[[12153,12153],"mapped",[32593]],[[12154,12154],"mapped",[32650]],[[12155,12155],"mapped",[32701]],[[12156,12156],"mapped",[32769]],[[12157,12157],"mapped",[32780]],[[12158,12158],"mapped",[32786]],[[12159,12159],"mapped",[32819]],[[12160,12160],"mapped",[32895]],[[12161,12161],"mapped",[32905]],[[12162,12162],"mapped",[33251]],[[12163,12163],"mapped",[33258]],[[12164,12164],"mapped",[33267]],[[12165,12165],"mapped",[33276]],[[12166,12166],"mapped",[33292]],[[12167,12167],"mapped",[33307]],[[12168,12168],"mapped",[33311]],[[12169,12169],"mapped",[33390]],[[12170,12170],"mapped",[33394]],[[12171,12171],"mapped",[33400]],[[12172,12172],"mapped",[34381]],[[12173,12173],"mapped",[34411]],[[12174,12174],"mapped",[34880]],[[12175,12175],"mapped",[34892]],[[12176,12176],"mapped",[34915]],[[12177,12177],"mapped",[35198]],[[12178,12178],"mapped",[35211]],[[12179,12179],"mapped",[35282]],[[12180,12180],"mapped",[35328]],[[12181,12181],"mapped",[35895]],[[12182,12182],"mapped",[35910]],[[12183,12183],"mapped",[35925]],[[12184,12184],"mapped",[35960]],[[12185,12185],"mapped",[35997]],[[12186,12186],"mapped",[36196]],[[12187,12187],"mapped",[36208]],[[12188,12188],"mapped",[36275]],[[12189,12189],"mapped",[36523]],[[12190,12190],"mapped",[36554]],[[12191,12191],"mapped",[36763]],[[12192,12192],"mapped",[36784]],[[12193,12193],"mapped",[36789]],[[12194,12194],"mapped",[37009]],[[12195,12195],"mapped",[37193]],[[12196,12196],"mapped",[37318]],[[12197,12197],"mapped",[37324]],[[12198,12198],"mapped",[37329]],[[12199,12199],"mapped",[38263]],[[12200,12200],"mapped",[38272]],[[12201,12201],"mapped",[38428]],[[12202,12202],"mapped",[38582]],[[12203,12203],"mapped",[38585]],[[12204,12204],"mapped",[38632]],[[12205,12205],"mapped",[38737]],[[12206,12206],"mapped",[38750]],[[12207,12207],"mapped",[38754]],[[12208,12208],"mapped",[38761]],[[12209,12209],"mapped",[38859]],[[12210,12210],"mapped",[38893]],[[12211,12211],"mapped",[38899]],[[12212,12212],"mapped",[38913]],[[12213,12213],"mapped",[39080]],[[12214,12214],"mapped",[39131]],[[12215,12215],"mapped",[39135]],[[12216,12216],"mapped",[39318]],[[12217,12217],"mapped",[39321]],[[12218,12218],"mapped",[39340]],[[12219,12219],"mapped",[39592]],[[12220,12220],"mapped",[39640]],[[12221,12221],"mapped",[39647]],[[12222,12222],"mapped",[39717]],[[12223,12223],"mapped",[39727]],[[12224,12224],"mapped",[39730]],[[12225,12225],"mapped",[39740]],[[12226,12226],"mapped",[39770]],[[12227,12227],"mapped",[40165]],[[12228,12228],"mapped",[40565]],[[12229,12229],"mapped",[40575]],[[12230,12230],"mapped",[40613]],[[12231,12231],"mapped",[40635]],[[12232,12232],"mapped",[40643]],[[12233,12233],"mapped",[40653]],[[12234,12234],"mapped",[40657]],[[12235,12235],"mapped",[40697]],[[12236,12236],"mapped",[40701]],[[12237,12237],"mapped",[40718]],[[12238,12238],"mapped",[40723]],[[12239,12239],"mapped",[40736]],[[12240,12240],"mapped",[40763]],[[12241,12241],"mapped",[40778]],[[12242,12242],"mapped",[40786]],[[12243,12243],"mapped",[40845]],[[12244,12244],"mapped",[40860]],[[12245,12245],"mapped",[40864]],[[12246,12271],"disallowed"],[[12272,12283],"disallowed"],[[12284,12287],"disallowed"],[[12288,12288],"disallowed_STD3_mapped",[32]],[[12289,12289],"valid",[],"NV8"],[[12290,12290],"mapped",[46]],[[12291,12292],"valid",[],"NV8"],[[12293,12295],"valid"],[[12296,12329],"valid",[],"NV8"],[[12330,12333],"valid"],[[12334,12341],"valid",[],"NV8"],[[12342,12342],"mapped",[12306]],[[12343,12343],"valid",[],"NV8"],[[12344,12344],"mapped",[21313]],[[12345,12345],"mapped",[21316]],[[12346,12346],"mapped",[21317]],[[12347,12347],"valid",[],"NV8"],[[12348,12348],"valid"],[[12349,12349],"valid",[],"NV8"],[[12350,12350],"valid",[],"NV8"],[[12351,12351],"valid",[],"NV8"],[[12352,12352],"disallowed"],[[12353,12436],"valid"],[[12437,12438],"valid"],[[12439,12440],"disallowed"],[[12441,12442],"valid"],[[12443,12443],"disallowed_STD3_mapped",[32,12441]],[[12444,12444],"disallowed_STD3_mapped",[32,12442]],[[12445,12446],"valid"],[[12447,12447],"mapped",[12424,12426]],[[12448,12448],"valid",[],"NV8"],[[12449,12542],"valid"],[[12543,12543],"mapped",[12467,12488]],[[12544,12548],"disallowed"],[[12549,12588],"valid"],[[12589,12589],"valid"],[[12590,12592],"disallowed"],[[12593,12593],"mapped",[4352]],[[12594,12594],"mapped",[4353]],[[12595,12595],"mapped",[4522]],[[12596,12596],"mapped",[4354]],[[12597,12597],"mapped",[4524]],[[12598,12598],"mapped",[4525]],[[12599,12599],"mapped",[4355]],[[12600,12600],"mapped",[4356]],[[12601,12601],"mapped",[4357]],[[12602,12602],"mapped",[4528]],[[12603,12603],"mapped",[4529]],[[12604,12604],"mapped",[4530]],[[12605,12605],"mapped",[4531]],[[12606,12606],"mapped",[4532]],[[12607,12607],"mapped",[4533]],[[12608,12608],"mapped",[4378]],[[12609,12609],"mapped",[4358]],[[12610,12610],"mapped",[4359]],[[12611,12611],"mapped",[4360]],[[12612,12612],"mapped",[4385]],[[12613,12613],"mapped",[4361]],[[12614,12614],"mapped",[4362]],[[12615,12615],"mapped",[4363]],[[12616,12616],"mapped",[4364]],[[12617,12617],"mapped",[4365]],[[12618,12618],"mapped",[4366]],[[12619,12619],"mapped",[4367]],[[12620,12620],"mapped",[4368]],[[12621,12621],"mapped",[4369]],[[12622,12622],"mapped",[4370]],[[12623,12623],"mapped",[4449]],[[12624,12624],"mapped",[4450]],[[12625,12625],"mapped",[4451]],[[12626,12626],"mapped",[4452]],[[12627,12627],"mapped",[4453]],[[12628,12628],"mapped",[4454]],[[12629,12629],"mapped",[4455]],[[12630,12630],"mapped",[4456]],[[12631,12631],"mapped",[4457]],[[12632,12632],"mapped",[4458]],[[12633,12633],"mapped",[4459]],[[12634,12634],"mapped",[4460]],[[12635,12635],"mapped",[4461]],[[12636,12636],"mapped",[4462]],[[12637,12637],"mapped",[4463]],[[12638,12638],"mapped",[4464]],[[12639,12639],"mapped",[4465]],[[12640,12640],"mapped",[4466]],[[12641,12641],"mapped",[4467]],[[12642,12642],"mapped",[4468]],[[12643,12643],"mapped",[4469]],[[12644,12644],"disallowed"],[[12645,12645],"mapped",[4372]],[[12646,12646],"mapped",[4373]],[[12647,12647],"mapped",[4551]],[[12648,12648],"mapped",[4552]],[[12649,12649],"mapped",[4556]],[[12650,12650],"mapped",[4558]],[[12651,12651],"mapped",[4563]],[[12652,12652],"mapped",[4567]],[[12653,12653],"mapped",[4569]],[[12654,12654],"mapped",[4380]],[[12655,12655],"mapped",[4573]],[[12656,12656],"mapped",[4575]],[[12657,12657],"mapped",[4381]],[[12658,12658],"mapped",[4382]],[[12659,12659],"mapped",[4384]],[[12660,12660],"mapped",[4386]],[[12661,12661],"mapped",[4387]],[[12662,12662],"mapped",[4391]],[[12663,12663],"mapped",[4393]],[[12664,12664],"mapped",[4395]],[[12665,12665],"mapped",[4396]],[[12666,12666],"mapped",[4397]],[[12667,12667],"mapped",[4398]],[[12668,12668],"mapped",[4399]],[[12669,12669],"mapped",[4402]],[[12670,12670],"mapped",[4406]],[[12671,12671],"mapped",[4416]],[[12672,12672],"mapped",[4423]],[[12673,12673],"mapped",[4428]],[[12674,12674],"mapped",[4593]],[[12675,12675],"mapped",[4594]],[[12676,12676],"mapped",[4439]],[[12677,12677],"mapped",[4440]],[[12678,12678],"mapped",[4441]],[[12679,12679],"mapped",[4484]],[[12680,12680],"mapped",[4485]],[[12681,12681],"mapped",[4488]],[[12682,12682],"mapped",[4497]],[[12683,12683],"mapped",[4498]],[[12684,12684],"mapped",[4500]],[[12685,12685],"mapped",[4510]],[[12686,12686],"mapped",[4513]],[[12687,12687],"disallowed"],[[12688,12689],"valid",[],"NV8"],[[12690,12690],"mapped",[19968]],[[12691,12691],"mapped",[20108]],[[12692,12692],"mapped",[19977]],[[12693,12693],"mapped",[22235]],[[12694,12694],"mapped",[19978]],[[12695,12695],"mapped",[20013]],[[12696,12696],"mapped",[19979]],[[12697,12697],"mapped",[30002]],[[12698,12698],"mapped",[20057]],[[12699,12699],"mapped",[19993]],[[12700,12700],"mapped",[19969]],[[12701,12701],"mapped",[22825]],[[12702,12702],"mapped",[22320]],[[12703,12703],"mapped",[20154]],[[12704,12727],"valid"],[[12728,12730],"valid"],[[12731,12735],"disallowed"],[[12736,12751],"valid",[],"NV8"],[[12752,12771],"valid",[],"NV8"],[[12772,12783],"disallowed"],[[12784,12799],"valid"],[[12800,12800],"disallowed_STD3_mapped",[40,4352,41]],[[12801,12801],"disallowed_STD3_mapped",[40,4354,41]],[[12802,12802],"disallowed_STD3_mapped",[40,4355,41]],[[12803,12803],"disallowed_STD3_mapped",[40,4357,41]],[[12804,12804],"disallowed_STD3_mapped",[40,4358,41]],[[12805,12805],"disallowed_STD3_mapped",[40,4359,41]],[[12806,12806],"disallowed_STD3_mapped",[40,4361,41]],[[12807,12807],"disallowed_STD3_mapped",[40,4363,41]],[[12808,12808],"disallowed_STD3_mapped",[40,4364,41]],[[12809,12809],"disallowed_STD3_mapped",[40,4366,41]],[[12810,12810],"disallowed_STD3_mapped",[40,4367,41]],[[12811,12811],"disallowed_STD3_mapped",[40,4368,41]],[[12812,12812],"disallowed_STD3_mapped",[40,4369,41]],[[12813,12813],"disallowed_STD3_mapped",[40,4370,41]],[[12814,12814],"disallowed_STD3_mapped",[40,44032,41]],[[12815,12815],"disallowed_STD3_mapped",[40,45208,41]],[[12816,12816],"disallowed_STD3_mapped",[40,45796,41]],[[12817,12817],"disallowed_STD3_mapped",[40,46972,41]],[[12818,12818],"disallowed_STD3_mapped",[40,47560,41]],[[12819,12819],"disallowed_STD3_mapped",[40,48148,41]],[[12820,12820],"disallowed_STD3_mapped",[40,49324,41]],[[12821,12821],"disallowed_STD3_mapped",[40,50500,41]],[[12822,12822],"disallowed_STD3_mapped",[40,51088,41]],[[12823,12823],"disallowed_STD3_mapped",[40,52264,41]],[[12824,12824],"disallowed_STD3_mapped",[40,52852,41]],[[12825,12825],"disallowed_STD3_mapped",[40,53440,41]],[[12826,12826],"disallowed_STD3_mapped",[40,54028,41]],[[12827,12827],"disallowed_STD3_mapped",[40,54616,41]],[[12828,12828],"disallowed_STD3_mapped",[40,51452,41]],[[12829,12829],"disallowed_STD3_mapped",[40,50724,51204,41]],[[12830,12830],"disallowed_STD3_mapped",[40,50724,54980,41]],[[12831,12831],"disallowed"],[[12832,12832],"disallowed_STD3_mapped",[40,19968,41]],[[12833,12833],"disallowed_STD3_mapped",[40,20108,41]],[[12834,12834],"disallowed_STD3_mapped",[40,19977,41]],[[12835,12835],"disallowed_STD3_mapped",[40,22235,41]],[[12836,12836],"disallowed_STD3_mapped",[40,20116,41]],[[12837,12837],"disallowed_STD3_mapped",[40,20845,41]],[[12838,12838],"disallowed_STD3_mapped",[40,19971,41]],[[12839,12839],"disallowed_STD3_mapped",[40,20843,41]],[[12840,12840],"disallowed_STD3_mapped",[40,20061,41]],[[12841,12841],"disallowed_STD3_mapped",[40,21313,41]],[[12842,12842],"disallowed_STD3_mapped",[40,26376,41]],[[12843,12843],"disallowed_STD3_mapped",[40,28779,41]],[[12844,12844],"disallowed_STD3_mapped",[40,27700,41]],[[12845,12845],"disallowed_STD3_mapped",[40,26408,41]],[[12846,12846],"disallowed_STD3_mapped",[40,37329,41]],[[12847,12847],"disallowed_STD3_mapped",[40,22303,41]],[[12848,12848],"disallowed_STD3_mapped",[40,26085,41]],[[12849,12849],"disallowed_STD3_mapped",[40,26666,41]],[[12850,12850],"disallowed_STD3_mapped",[40,26377,41]],[[12851,12851],"disallowed_STD3_mapped",[40,31038,41]],[[12852,12852],"disallowed_STD3_mapped",[40,21517,41]],[[12853,12853],"disallowed_STD3_mapped",[40,29305,41]],[[12854,12854],"disallowed_STD3_mapped",[40,36001,41]],[[12855,12855],"disallowed_STD3_mapped",[40,31069,41]],[[12856,12856],"disallowed_STD3_mapped",[40,21172,41]],[[12857,12857],"disallowed_STD3_mapped",[40,20195,41]],[[12858,12858],"disallowed_STD3_mapped",[40,21628,41]],[[12859,12859],"disallowed_STD3_mapped",[40,23398,41]],[[12860,12860],"disallowed_STD3_mapped",[40,30435,41]],[[12861,12861],"disallowed_STD3_mapped",[40,20225,41]],[[12862,12862],"disallowed_STD3_mapped",[40,36039,41]],[[12863,12863],"disallowed_STD3_mapped",[40,21332,41]],[[12864,12864],"disallowed_STD3_mapped",[40,31085,41]],[[12865,12865],"disallowed_STD3_mapped",[40,20241,41]],[[12866,12866],"disallowed_STD3_mapped",[40,33258,41]],[[12867,12867],"disallowed_STD3_mapped",[40,33267,41]],[[12868,12868],"mapped",[21839]],[[12869,12869],"mapped",[24188]],[[12870,12870],"mapped",[25991]],[[12871,12871],"mapped",[31631]],[[12872,12879],"valid",[],"NV8"],[[12880,12880],"mapped",[112,116,101]],[[12881,12881],"mapped",[50,49]],[[12882,12882],"mapped",[50,50]],[[12883,12883],"mapped",[50,51]],[[12884,12884],"mapped",[50,52]],[[12885,12885],"mapped",[50,53]],[[12886,12886],"mapped",[50,54]],[[12887,12887],"mapped",[50,55]],[[12888,12888],"mapped",[50,56]],[[12889,12889],"mapped",[50,57]],[[12890,12890],"mapped",[51,48]],[[12891,12891],"mapped",[51,49]],[[12892,12892],"mapped",[51,50]],[[12893,12893],"mapped",[51,51]],[[12894,12894],"mapped",[51,52]],[[12895,12895],"mapped",[51,53]],[[12896,12896],"mapped",[4352]],[[12897,12897],"mapped",[4354]],[[12898,12898],"mapped",[4355]],[[12899,12899],"mapped",[4357]],[[12900,12900],"mapped",[4358]],[[12901,12901],"mapped",[4359]],[[12902,12902],"mapped",[4361]],[[12903,12903],"mapped",[4363]],[[12904,12904],"mapped",[4364]],[[12905,12905],"mapped",[4366]],[[12906,12906],"mapped",[4367]],[[12907,12907],"mapped",[4368]],[[12908,12908],"mapped",[4369]],[[12909,12909],"mapped",[4370]],[[12910,12910],"mapped",[44032]],[[12911,12911],"mapped",[45208]],[[12912,12912],"mapped",[45796]],[[12913,12913],"mapped",[46972]],[[12914,12914],"mapped",[47560]],[[12915,12915],"mapped",[48148]],[[12916,12916],"mapped",[49324]],[[12917,12917],"mapped",[50500]],[[12918,12918],"mapped",[51088]],[[12919,12919],"mapped",[52264]],[[12920,12920],"mapped",[52852]],[[12921,12921],"mapped",[53440]],[[12922,12922],"mapped",[54028]],[[12923,12923],"mapped",[54616]],[[12924,12924],"mapped",[52280,44256]],[[12925,12925],"mapped",[51452,51032]],[[12926,12926],"mapped",[50864]],[[12927,12927],"valid",[],"NV8"],[[12928,12928],"mapped",[19968]],[[12929,12929],"mapped",[20108]],[[12930,12930],"mapped",[19977]],[[12931,12931],"mapped",[22235]],[[12932,12932],"mapped",[20116]],[[12933,12933],"mapped",[20845]],[[12934,12934],"mapped",[19971]],[[12935,12935],"mapped",[20843]],[[12936,12936],"mapped",[20061]],[[12937,12937],"mapped",[21313]],[[12938,12938],"mapped",[26376]],[[12939,12939],"mapped",[28779]],[[12940,12940],"mapped",[27700]],[[12941,12941],"mapped",[26408]],[[12942,12942],"mapped",[37329]],[[12943,12943],"mapped",[22303]],[[12944,12944],"mapped",[26085]],[[12945,12945],"mapped",[26666]],[[12946,12946],"mapped",[26377]],[[12947,12947],"mapped",[31038]],[[12948,12948],"mapped",[21517]],[[12949,12949],"mapped",[29305]],[[12950,12950],"mapped",[36001]],[[12951,12951],"mapped",[31069]],[[12952,12952],"mapped",[21172]],[[12953,12953],"mapped",[31192]],[[12954,12954],"mapped",[30007]],[[12955,12955],"mapped",[22899]],[[12956,12956],"mapped",[36969]],[[12957,12957],"mapped",[20778]],[[12958,12958],"mapped",[21360]],[[12959,12959],"mapped",[27880]],[[12960,12960],"mapped",[38917]],[[12961,12961],"mapped",[20241]],[[12962,12962],"mapped",[20889]],[[12963,12963],"mapped",[27491]],[[12964,12964],"mapped",[19978]],[[12965,12965],"mapped",[20013]],[[12966,12966],"mapped",[19979]],[[12967,12967],"mapped",[24038]],[[12968,12968],"mapped",[21491]],[[12969,12969],"mapped",[21307]],[[12970,12970],"mapped",[23447]],[[12971,12971],"mapped",[23398]],[[12972,12972],"mapped",[30435]],[[12973,12973],"mapped",[20225]],[[12974,12974],"mapped",[36039]],[[12975,12975],"mapped",[21332]],[[12976,12976],"mapped",[22812]],[[12977,12977],"mapped",[51,54]],[[12978,12978],"mapped",[51,55]],[[12979,12979],"mapped",[51,56]],[[12980,12980],"mapped",[51,57]],[[12981,12981],"mapped",[52,48]],[[12982,12982],"mapped",[52,49]],[[12983,12983],"mapped",[52,50]],[[12984,12984],"mapped",[52,51]],[[12985,12985],"mapped",[52,52]],[[12986,12986],"mapped",[52,53]],[[12987,12987],"mapped",[52,54]],[[12988,12988],"mapped",[52,55]],[[12989,12989],"mapped",[52,56]],[[12990,12990],"mapped",[52,57]],[[12991,12991],"mapped",[53,48]],[[12992,12992],"mapped",[49,26376]],[[12993,12993],"mapped",[50,26376]],[[12994,12994],"mapped",[51,26376]],[[12995,12995],"mapped",[52,26376]],[[12996,12996],"mapped",[53,26376]],[[12997,12997],"mapped",[54,26376]],[[12998,12998],"mapped",[55,26376]],[[12999,12999],"mapped",[56,26376]],[[13e3,13e3],"mapped",[57,26376]],[[13001,13001],"mapped",[49,48,26376]],[[13002,13002],"mapped",[49,49,26376]],[[13003,13003],"mapped",[49,50,26376]],[[13004,13004],"mapped",[104,103]],[[13005,13005],"mapped",[101,114,103]],[[13006,13006],"mapped",[101,118]],[[13007,13007],"mapped",[108,116,100]],[[13008,13008],"mapped",[12450]],[[13009,13009],"mapped",[12452]],[[13010,13010],"mapped",[12454]],[[13011,13011],"mapped",[12456]],[[13012,13012],"mapped",[12458]],[[13013,13013],"mapped",[12459]],[[13014,13014],"mapped",[12461]],[[13015,13015],"mapped",[12463]],[[13016,13016],"mapped",[12465]],[[13017,13017],"mapped",[12467]],[[13018,13018],"mapped",[12469]],[[13019,13019],"mapped",[12471]],[[13020,13020],"mapped",[12473]],[[13021,13021],"mapped",[12475]],[[13022,13022],"mapped",[12477]],[[13023,13023],"mapped",[12479]],[[13024,13024],"mapped",[12481]],[[13025,13025],"mapped",[12484]],[[13026,13026],"mapped",[12486]],[[13027,13027],"mapped",[12488]],[[13028,13028],"mapped",[12490]],[[13029,13029],"mapped",[12491]],[[13030,13030],"mapped",[12492]],[[13031,13031],"mapped",[12493]],[[13032,13032],"mapped",[12494]],[[13033,13033],"mapped",[12495]],[[13034,13034],"mapped",[12498]],[[13035,13035],"mapped",[12501]],[[13036,13036],"mapped",[12504]],[[13037,13037],"mapped",[12507]],[[13038,13038],"mapped",[12510]],[[13039,13039],"mapped",[12511]],[[13040,13040],"mapped",[12512]],[[13041,13041],"mapped",[12513]],[[13042,13042],"mapped",[12514]],[[13043,13043],"mapped",[12516]],[[13044,13044],"mapped",[12518]],[[13045,13045],"mapped",[12520]],[[13046,13046],"mapped",[12521]],[[13047,13047],"mapped",[12522]],[[13048,13048],"mapped",[12523]],[[13049,13049],"mapped",[12524]],[[13050,13050],"mapped",[12525]],[[13051,13051],"mapped",[12527]],[[13052,13052],"mapped",[12528]],[[13053,13053],"mapped",[12529]],[[13054,13054],"mapped",[12530]],[[13055,13055],"disallowed"],[[13056,13056],"mapped",[12450,12497,12540,12488]],[[13057,13057],"mapped",[12450,12523,12501,12449]],[[13058,13058],"mapped",[12450,12531,12506,12450]],[[13059,13059],"mapped",[12450,12540,12523]],[[13060,13060],"mapped",[12452,12491,12531,12464]],[[13061,13061],"mapped",[12452,12531,12481]],[[13062,13062],"mapped",[12454,12457,12531]],[[13063,13063],"mapped",[12456,12473,12463,12540,12489]],[[13064,13064],"mapped",[12456,12540,12459,12540]],[[13065,13065],"mapped",[12458,12531,12473]],[[13066,13066],"mapped",[12458,12540,12512]],[[13067,13067],"mapped",[12459,12452,12522]],[[13068,13068],"mapped",[12459,12521,12483,12488]],[[13069,13069],"mapped",[12459,12525,12522,12540]],[[13070,13070],"mapped",[12460,12525,12531]],[[13071,13071],"mapped",[12460,12531,12510]],[[13072,13072],"mapped",[12462,12460]],[[13073,13073],"mapped",[12462,12491,12540]],[[13074,13074],"mapped",[12461,12517,12522,12540]],[[13075,13075],"mapped",[12462,12523,12480,12540]],[[13076,13076],"mapped",[12461,12525]],[[13077,13077],"mapped",[12461,12525,12464,12521,12512]],[[13078,13078],"mapped",[12461,12525,12513,12540,12488,12523]],[[13079,13079],"mapped",[12461,12525,12527,12483,12488]],[[13080,13080],"mapped",[12464,12521,12512]],[[13081,13081],"mapped",[12464,12521,12512,12488,12531]],[[13082,13082],"mapped",[12463,12523,12476,12452,12525]],[[13083,13083],"mapped",[12463,12525,12540,12493]],[[13084,13084],"mapped",[12465,12540,12473]],[[13085,13085],"mapped",[12467,12523,12490]],[[13086,13086],"mapped",[12467,12540,12509]],[[13087,13087],"mapped",[12469,12452,12463,12523]],[[13088,13088],"mapped",[12469,12531,12481,12540,12512]],[[13089,13089],"mapped",[12471,12522,12531,12464]],[[13090,13090],"mapped",[12475,12531,12481]],[[13091,13091],"mapped",[12475,12531,12488]],[[13092,13092],"mapped",[12480,12540,12473]],[[13093,13093],"mapped",[12487,12471]],[[13094,13094],"mapped",[12489,12523]],[[13095,13095],"mapped",[12488,12531]],[[13096,13096],"mapped",[12490,12494]],[[13097,13097],"mapped",[12494,12483,12488]],[[13098,13098],"mapped",[12495,12452,12484]],[[13099,13099],"mapped",[12497,12540,12475,12531,12488]],[[13100,13100],"mapped",[12497,12540,12484]],[[13101,13101],"mapped",[12496,12540,12524,12523]],[[13102,13102],"mapped",[12500,12450,12473,12488,12523]],[[13103,13103],"mapped",[12500,12463,12523]],[[13104,13104],"mapped",[12500,12467]],[[13105,13105],"mapped",[12499,12523]],[[13106,13106],"mapped",[12501,12449,12521,12483,12489]],[[13107,13107],"mapped",[12501,12451,12540,12488]],[[13108,13108],"mapped",[12502,12483,12471,12455,12523]],[[13109,13109],"mapped",[12501,12521,12531]],[[13110,13110],"mapped",[12504,12463,12479,12540,12523]],[[13111,13111],"mapped",[12506,12477]],[[13112,13112],"mapped",[12506,12491,12498]],[[13113,13113],"mapped",[12504,12523,12484]],[[13114,13114],"mapped",[12506,12531,12473]],[[13115,13115],"mapped",[12506,12540,12472]],[[13116,13116],"mapped",[12505,12540,12479]],[[13117,13117],"mapped",[12509,12452,12531,12488]],[[13118,13118],"mapped",[12508,12523,12488]],[[13119,13119],"mapped",[12507,12531]],[[13120,13120],"mapped",[12509,12531,12489]],[[13121,13121],"mapped",[12507,12540,12523]],[[13122,13122],"mapped",[12507,12540,12531]],[[13123,13123],"mapped",[12510,12452,12463,12525]],[[13124,13124],"mapped",[12510,12452,12523]],[[13125,13125],"mapped",[12510,12483,12495]],[[13126,13126],"mapped",[12510,12523,12463]],[[13127,13127],"mapped",[12510,12531,12471,12519,12531]],[[13128,13128],"mapped",[12511,12463,12525,12531]],[[13129,13129],"mapped",[12511,12522]],[[13130,13130],"mapped",[12511,12522,12496,12540,12523]],[[13131,13131],"mapped",[12513,12460]],[[13132,13132],"mapped",[12513,12460,12488,12531]],[[13133,13133],"mapped",[12513,12540,12488,12523]],[[13134,13134],"mapped",[12516,12540,12489]],[[13135,13135],"mapped",[12516,12540,12523]],[[13136,13136],"mapped",[12518,12450,12531]],[[13137,13137],"mapped",[12522,12483,12488,12523]],[[13138,13138],"mapped",[12522,12521]],[[13139,13139],"mapped",[12523,12500,12540]],[[13140,13140],"mapped",[12523,12540,12502,12523]],[[13141,13141],"mapped",[12524,12512]],[[13142,13142],"mapped",[12524,12531,12488,12466,12531]],[[13143,13143],"mapped",[12527,12483,12488]],[[13144,13144],"mapped",[48,28857]],[[13145,13145],"mapped",[49,28857]],[[13146,13146],"mapped",[50,28857]],[[13147,13147],"mapped",[51,28857]],[[13148,13148],"mapped",[52,28857]],[[13149,13149],"mapped",[53,28857]],[[13150,13150],"mapped",[54,28857]],[[13151,13151],"mapped",[55,28857]],[[13152,13152],"mapped",[56,28857]],[[13153,13153],"mapped",[57,28857]],[[13154,13154],"mapped",[49,48,28857]],[[13155,13155],"mapped",[49,49,28857]],[[13156,13156],"mapped",[49,50,28857]],[[13157,13157],"mapped",[49,51,28857]],[[13158,13158],"mapped",[49,52,28857]],[[13159,13159],"mapped",[49,53,28857]],[[13160,13160],"mapped",[49,54,28857]],[[13161,13161],"mapped",[49,55,28857]],[[13162,13162],"mapped",[49,56,28857]],[[13163,13163],"mapped",[49,57,28857]],[[13164,13164],"mapped",[50,48,28857]],[[13165,13165],"mapped",[50,49,28857]],[[13166,13166],"mapped",[50,50,28857]],[[13167,13167],"mapped",[50,51,28857]],[[13168,13168],"mapped",[50,52,28857]],[[13169,13169],"mapped",[104,112,97]],[[13170,13170],"mapped",[100,97]],[[13171,13171],"mapped",[97,117]],[[13172,13172],"mapped",[98,97,114]],[[13173,13173],"mapped",[111,118]],[[13174,13174],"mapped",[112,99]],[[13175,13175],"mapped",[100,109]],[[13176,13176],"mapped",[100,109,50]],[[13177,13177],"mapped",[100,109,51]],[[13178,13178],"mapped",[105,117]],[[13179,13179],"mapped",[24179,25104]],[[13180,13180],"mapped",[26157,21644]],[[13181,13181],"mapped",[22823,27491]],[[13182,13182],"mapped",[26126,27835]],[[13183,13183],"mapped",[26666,24335,20250,31038]],[[13184,13184],"mapped",[112,97]],[[13185,13185],"mapped",[110,97]],[[13186,13186],"mapped",[956,97]],[[13187,13187],"mapped",[109,97]],[[13188,13188],"mapped",[107,97]],[[13189,13189],"mapped",[107,98]],[[13190,13190],"mapped",[109,98]],[[13191,13191],"mapped",[103,98]],[[13192,13192],"mapped",[99,97,108]],[[13193,13193],"mapped",[107,99,97,108]],[[13194,13194],"mapped",[112,102]],[[13195,13195],"mapped",[110,102]],[[13196,13196],"mapped",[956,102]],[[13197,13197],"mapped",[956,103]],[[13198,13198],"mapped",[109,103]],[[13199,13199],"mapped",[107,103]],[[13200,13200],"mapped",[104,122]],[[13201,13201],"mapped",[107,104,122]],[[13202,13202],"mapped",[109,104,122]],[[13203,13203],"mapped",[103,104,122]],[[13204,13204],"mapped",[116,104,122]],[[13205,13205],"mapped",[956,108]],[[13206,13206],"mapped",[109,108]],[[13207,13207],"mapped",[100,108]],[[13208,13208],"mapped",[107,108]],[[13209,13209],"mapped",[102,109]],[[13210,13210],"mapped",[110,109]],[[13211,13211],"mapped",[956,109]],[[13212,13212],"mapped",[109,109]],[[13213,13213],"mapped",[99,109]],[[13214,13214],"mapped",[107,109]],[[13215,13215],"mapped",[109,109,50]],[[13216,13216],"mapped",[99,109,50]],[[13217,13217],"mapped",[109,50]],[[13218,13218],"mapped",[107,109,50]],[[13219,13219],"mapped",[109,109,51]],[[13220,13220],"mapped",[99,109,51]],[[13221,13221],"mapped",[109,51]],[[13222,13222],"mapped",[107,109,51]],[[13223,13223],"mapped",[109,8725,115]],[[13224,13224],"mapped",[109,8725,115,50]],[[13225,13225],"mapped",[112,97]],[[13226,13226],"mapped",[107,112,97]],[[13227,13227],"mapped",[109,112,97]],[[13228,13228],"mapped",[103,112,97]],[[13229,13229],"mapped",[114,97,100]],[[13230,13230],"mapped",[114,97,100,8725,115]],[[13231,13231],"mapped",[114,97,100,8725,115,50]],[[13232,13232],"mapped",[112,115]],[[13233,13233],"mapped",[110,115]],[[13234,13234],"mapped",[956,115]],[[13235,13235],"mapped",[109,115]],[[13236,13236],"mapped",[112,118]],[[13237,13237],"mapped",[110,118]],[[13238,13238],"mapped",[956,118]],[[13239,13239],"mapped",[109,118]],[[13240,13240],"mapped",[107,118]],[[13241,13241],"mapped",[109,118]],[[13242,13242],"mapped",[112,119]],[[13243,13243],"mapped",[110,119]],[[13244,13244],"mapped",[956,119]],[[13245,13245],"mapped",[109,119]],[[13246,13246],"mapped",[107,119]],[[13247,13247],"mapped",[109,119]],[[13248,13248],"mapped",[107,969]],[[13249,13249],"mapped",[109,969]],[[13250,13250],"disallowed"],[[13251,13251],"mapped",[98,113]],[[13252,13252],"mapped",[99,99]],[[13253,13253],"mapped",[99,100]],[[13254,13254],"mapped",[99,8725,107,103]],[[13255,13255],"disallowed"],[[13256,13256],"mapped",[100,98]],[[13257,13257],"mapped",[103,121]],[[13258,13258],"mapped",[104,97]],[[13259,13259],"mapped",[104,112]],[[13260,13260],"mapped",[105,110]],[[13261,13261],"mapped",[107,107]],[[13262,13262],"mapped",[107,109]],[[13263,13263],"mapped",[107,116]],[[13264,13264],"mapped",[108,109]],[[13265,13265],"mapped",[108,110]],[[13266,13266],"mapped",[108,111,103]],[[13267,13267],"mapped",[108,120]],[[13268,13268],"mapped",[109,98]],[[13269,13269],"mapped",[109,105,108]],[[13270,13270],"mapped",[109,111,108]],[[13271,13271],"mapped",[112,104]],[[13272,13272],"disallowed"],[[13273,13273],"mapped",[112,112,109]],[[13274,13274],"mapped",[112,114]],[[13275,13275],"mapped",[115,114]],[[13276,13276],"mapped",[115,118]],[[13277,13277],"mapped",[119,98]],[[13278,13278],"mapped",[118,8725,109]],[[13279,13279],"mapped",[97,8725,109]],[[13280,13280],"mapped",[49,26085]],[[13281,13281],"mapped",[50,26085]],[[13282,13282],"mapped",[51,26085]],[[13283,13283],"mapped",[52,26085]],[[13284,13284],"mapped",[53,26085]],[[13285,13285],"mapped",[54,26085]],[[13286,13286],"mapped",[55,26085]],[[13287,13287],"mapped",[56,26085]],[[13288,13288],"mapped",[57,26085]],[[13289,13289],"mapped",[49,48,26085]],[[13290,13290],"mapped",[49,49,26085]],[[13291,13291],"mapped",[49,50,26085]],[[13292,13292],"mapped",[49,51,26085]],[[13293,13293],"mapped",[49,52,26085]],[[13294,13294],"mapped",[49,53,26085]],[[13295,13295],"mapped",[49,54,26085]],[[13296,13296],"mapped",[49,55,26085]],[[13297,13297],"mapped",[49,56,26085]],[[13298,13298],"mapped",[49,57,26085]],[[13299,13299],"mapped",[50,48,26085]],[[13300,13300],"mapped",[50,49,26085]],[[13301,13301],"mapped",[50,50,26085]],[[13302,13302],"mapped",[50,51,26085]],[[13303,13303],"mapped",[50,52,26085]],[[13304,13304],"mapped",[50,53,26085]],[[13305,13305],"mapped",[50,54,26085]],[[13306,13306],"mapped",[50,55,26085]],[[13307,13307],"mapped",[50,56,26085]],[[13308,13308],"mapped",[50,57,26085]],[[13309,13309],"mapped",[51,48,26085]],[[13310,13310],"mapped",[51,49,26085]],[[13311,13311],"mapped",[103,97,108]],[[13312,19893],"valid"],[[19894,19903],"disallowed"],[[19904,19967],"valid",[],"NV8"],[[19968,40869],"valid"],[[40870,40891],"valid"],[[40892,40899],"valid"],[[40900,40907],"valid"],[[40908,40908],"valid"],[[40909,40917],"valid"],[[40918,40959],"disallowed"],[[40960,42124],"valid"],[[42125,42127],"disallowed"],[[42128,42145],"valid",[],"NV8"],[[42146,42147],"valid",[],"NV8"],[[42148,42163],"valid",[],"NV8"],[[42164,42164],"valid",[],"NV8"],[[42165,42176],"valid",[],"NV8"],[[42177,42177],"valid",[],"NV8"],[[42178,42180],"valid",[],"NV8"],[[42181,42181],"valid",[],"NV8"],[[42182,42182],"valid",[],"NV8"],[[42183,42191],"disallowed"],[[42192,42237],"valid"],[[42238,42239],"valid",[],"NV8"],[[42240,42508],"valid"],[[42509,42511],"valid",[],"NV8"],[[42512,42539],"valid"],[[42540,42559],"disallowed"],[[42560,42560],"mapped",[42561]],[[42561,42561],"valid"],[[42562,42562],"mapped",[42563]],[[42563,42563],"valid"],[[42564,42564],"mapped",[42565]],[[42565,42565],"valid"],[[42566,42566],"mapped",[42567]],[[42567,42567],"valid"],[[42568,42568],"mapped",[42569]],[[42569,42569],"valid"],[[42570,42570],"mapped",[42571]],[[42571,42571],"valid"],[[42572,42572],"mapped",[42573]],[[42573,42573],"valid"],[[42574,42574],"mapped",[42575]],[[42575,42575],"valid"],[[42576,42576],"mapped",[42577]],[[42577,42577],"valid"],[[42578,42578],"mapped",[42579]],[[42579,42579],"valid"],[[42580,42580],"mapped",[42581]],[[42581,42581],"valid"],[[42582,42582],"mapped",[42583]],[[42583,42583],"valid"],[[42584,42584],"mapped",[42585]],[[42585,42585],"valid"],[[42586,42586],"mapped",[42587]],[[42587,42587],"valid"],[[42588,42588],"mapped",[42589]],[[42589,42589],"valid"],[[42590,42590],"mapped",[42591]],[[42591,42591],"valid"],[[42592,42592],"mapped",[42593]],[[42593,42593],"valid"],[[42594,42594],"mapped",[42595]],[[42595,42595],"valid"],[[42596,42596],"mapped",[42597]],[[42597,42597],"valid"],[[42598,42598],"mapped",[42599]],[[42599,42599],"valid"],[[42600,42600],"mapped",[42601]],[[42601,42601],"valid"],[[42602,42602],"mapped",[42603]],[[42603,42603],"valid"],[[42604,42604],"mapped",[42605]],[[42605,42607],"valid"],[[42608,42611],"valid",[],"NV8"],[[42612,42619],"valid"],[[42620,42621],"valid"],[[42622,42622],"valid",[],"NV8"],[[42623,42623],"valid"],[[42624,42624],"mapped",[42625]],[[42625,42625],"valid"],[[42626,42626],"mapped",[42627]],[[42627,42627],"valid"],[[42628,42628],"mapped",[42629]],[[42629,42629],"valid"],[[42630,42630],"mapped",[42631]],[[42631,42631],"valid"],[[42632,42632],"mapped",[42633]],[[42633,42633],"valid"],[[42634,42634],"mapped",[42635]],[[42635,42635],"valid"],[[42636,42636],"mapped",[42637]],[[42637,42637],"valid"],[[42638,42638],"mapped",[42639]],[[42639,42639],"valid"],[[42640,42640],"mapped",[42641]],[[42641,42641],"valid"],[[42642,42642],"mapped",[42643]],[[42643,42643],"valid"],[[42644,42644],"mapped",[42645]],[[42645,42645],"valid"],[[42646,42646],"mapped",[42647]],[[42647,42647],"valid"],[[42648,42648],"mapped",[42649]],[[42649,42649],"valid"],[[42650,42650],"mapped",[42651]],[[42651,42651],"valid"],[[42652,42652],"mapped",[1098]],[[42653,42653],"mapped",[1100]],[[42654,42654],"valid"],[[42655,42655],"valid"],[[42656,42725],"valid"],[[42726,42735],"valid",[],"NV8"],[[42736,42737],"valid"],[[42738,42743],"valid",[],"NV8"],[[42744,42751],"disallowed"],[[42752,42774],"valid",[],"NV8"],[[42775,42778],"valid"],[[42779,42783],"valid"],[[42784,42785],"valid",[],"NV8"],[[42786,42786],"mapped",[42787]],[[42787,42787],"valid"],[[42788,42788],"mapped",[42789]],[[42789,42789],"valid"],[[42790,42790],"mapped",[42791]],[[42791,42791],"valid"],[[42792,42792],"mapped",[42793]],[[42793,42793],"valid"],[[42794,42794],"mapped",[42795]],[[42795,42795],"valid"],[[42796,42796],"mapped",[42797]],[[42797,42797],"valid"],[[42798,42798],"mapped",[42799]],[[42799,42801],"valid"],[[42802,42802],"mapped",[42803]],[[42803,42803],"valid"],[[42804,42804],"mapped",[42805]],[[42805,42805],"valid"],[[42806,42806],"mapped",[42807]],[[42807,42807],"valid"],[[42808,42808],"mapped",[42809]],[[42809,42809],"valid"],[[42810,42810],"mapped",[42811]],[[42811,42811],"valid"],[[42812,42812],"mapped",[42813]],[[42813,42813],"valid"],[[42814,42814],"mapped",[42815]],[[42815,42815],"valid"],[[42816,42816],"mapped",[42817]],[[42817,42817],"valid"],[[42818,42818],"mapped",[42819]],[[42819,42819],"valid"],[[42820,42820],"mapped",[42821]],[[42821,42821],"valid"],[[42822,42822],"mapped",[42823]],[[42823,42823],"valid"],[[42824,42824],"mapped",[42825]],[[42825,42825],"valid"],[[42826,42826],"mapped",[42827]],[[42827,42827],"valid"],[[42828,42828],"mapped",[42829]],[[42829,42829],"valid"],[[42830,42830],"mapped",[42831]],[[42831,42831],"valid"],[[42832,42832],"mapped",[42833]],[[42833,42833],"valid"],[[42834,42834],"mapped",[42835]],[[42835,42835],"valid"],[[42836,42836],"mapped",[42837]],[[42837,42837],"valid"],[[42838,42838],"mapped",[42839]],[[42839,42839],"valid"],[[42840,42840],"mapped",[42841]],[[42841,42841],"valid"],[[42842,42842],"mapped",[42843]],[[42843,42843],"valid"],[[42844,42844],"mapped",[42845]],[[42845,42845],"valid"],[[42846,42846],"mapped",[42847]],[[42847,42847],"valid"],[[42848,42848],"mapped",[42849]],[[42849,42849],"valid"],[[42850,42850],"mapped",[42851]],[[42851,42851],"valid"],[[42852,42852],"mapped",[42853]],[[42853,42853],"valid"],[[42854,42854],"mapped",[42855]],[[42855,42855],"valid"],[[42856,42856],"mapped",[42857]],[[42857,42857],"valid"],[[42858,42858],"mapped",[42859]],[[42859,42859],"valid"],[[42860,42860],"mapped",[42861]],[[42861,42861],"valid"],[[42862,42862],"mapped",[42863]],[[42863,42863],"valid"],[[42864,42864],"mapped",[42863]],[[42865,42872],"valid"],[[42873,42873],"mapped",[42874]],[[42874,42874],"valid"],[[42875,42875],"mapped",[42876]],[[42876,42876],"valid"],[[42877,42877],"mapped",[7545]],[[42878,42878],"mapped",[42879]],[[42879,42879],"valid"],[[42880,42880],"mapped",[42881]],[[42881,42881],"valid"],[[42882,42882],"mapped",[42883]],[[42883,42883],"valid"],[[42884,42884],"mapped",[42885]],[[42885,42885],"valid"],[[42886,42886],"mapped",[42887]],[[42887,42888],"valid"],[[42889,42890],"valid",[],"NV8"],[[42891,42891],"mapped",[42892]],[[42892,42892],"valid"],[[42893,42893],"mapped",[613]],[[42894,42894],"valid"],[[42895,42895],"valid"],[[42896,42896],"mapped",[42897]],[[42897,42897],"valid"],[[42898,42898],"mapped",[42899]],[[42899,42899],"valid"],[[42900,42901],"valid"],[[42902,42902],"mapped",[42903]],[[42903,42903],"valid"],[[42904,42904],"mapped",[42905]],[[42905,42905],"valid"],[[42906,42906],"mapped",[42907]],[[42907,42907],"valid"],[[42908,42908],"mapped",[42909]],[[42909,42909],"valid"],[[42910,42910],"mapped",[42911]],[[42911,42911],"valid"],[[42912,42912],"mapped",[42913]],[[42913,42913],"valid"],[[42914,42914],"mapped",[42915]],[[42915,42915],"valid"],[[42916,42916],"mapped",[42917]],[[42917,42917],"valid"],[[42918,42918],"mapped",[42919]],[[42919,42919],"valid"],[[42920,42920],"mapped",[42921]],[[42921,42921],"valid"],[[42922,42922],"mapped",[614]],[[42923,42923],"mapped",[604]],[[42924,42924],"mapped",[609]],[[42925,42925],"mapped",[620]],[[42926,42927],"disallowed"],[[42928,42928],"mapped",[670]],[[42929,42929],"mapped",[647]],[[42930,42930],"mapped",[669]],[[42931,42931],"mapped",[43859]],[[42932,42932],"mapped",[42933]],[[42933,42933],"valid"],[[42934,42934],"mapped",[42935]],[[42935,42935],"valid"],[[42936,42998],"disallowed"],[[42999,42999],"valid"],[[43e3,43e3],"mapped",[295]],[[43001,43001],"mapped",[339]],[[43002,43002],"valid"],[[43003,43007],"valid"],[[43008,43047],"valid"],[[43048,43051],"valid",[],"NV8"],[[43052,43055],"disallowed"],[[43056,43065],"valid",[],"NV8"],[[43066,43071],"disallowed"],[[43072,43123],"valid"],[[43124,43127],"valid",[],"NV8"],[[43128,43135],"disallowed"],[[43136,43204],"valid"],[[43205,43213],"disallowed"],[[43214,43215],"valid",[],"NV8"],[[43216,43225],"valid"],[[43226,43231],"disallowed"],[[43232,43255],"valid"],[[43256,43258],"valid",[],"NV8"],[[43259,43259],"valid"],[[43260,43260],"valid",[],"NV8"],[[43261,43261],"valid"],[[43262,43263],"disallowed"],[[43264,43309],"valid"],[[43310,43311],"valid",[],"NV8"],[[43312,43347],"valid"],[[43348,43358],"disallowed"],[[43359,43359],"valid",[],"NV8"],[[43360,43388],"valid",[],"NV8"],[[43389,43391],"disallowed"],[[43392,43456],"valid"],[[43457,43469],"valid",[],"NV8"],[[43470,43470],"disallowed"],[[43471,43481],"valid"],[[43482,43485],"disallowed"],[[43486,43487],"valid",[],"NV8"],[[43488,43518],"valid"],[[43519,43519],"disallowed"],[[43520,43574],"valid"],[[43575,43583],"disallowed"],[[43584,43597],"valid"],[[43598,43599],"disallowed"],[[43600,43609],"valid"],[[43610,43611],"disallowed"],[[43612,43615],"valid",[],"NV8"],[[43616,43638],"valid"],[[43639,43641],"valid",[],"NV8"],[[43642,43643],"valid"],[[43644,43647],"valid"],[[43648,43714],"valid"],[[43715,43738],"disallowed"],[[43739,43741],"valid"],[[43742,43743],"valid",[],"NV8"],[[43744,43759],"valid"],[[43760,43761],"valid",[],"NV8"],[[43762,43766],"valid"],[[43767,43776],"disallowed"],[[43777,43782],"valid"],[[43783,43784],"disallowed"],[[43785,43790],"valid"],[[43791,43792],"disallowed"],[[43793,43798],"valid"],[[43799,43807],"disallowed"],[[43808,43814],"valid"],[[43815,43815],"disallowed"],[[43816,43822],"valid"],[[43823,43823],"disallowed"],[[43824,43866],"valid"],[[43867,43867],"valid",[],"NV8"],[[43868,43868],"mapped",[42791]],[[43869,43869],"mapped",[43831]],[[43870,43870],"mapped",[619]],[[43871,43871],"mapped",[43858]],[[43872,43875],"valid"],[[43876,43877],"valid"],[[43878,43887],"disallowed"],[[43888,43888],"mapped",[5024]],[[43889,43889],"mapped",[5025]],[[43890,43890],"mapped",[5026]],[[43891,43891],"mapped",[5027]],[[43892,43892],"mapped",[5028]],[[43893,43893],"mapped",[5029]],[[43894,43894],"mapped",[5030]],[[43895,43895],"mapped",[5031]],[[43896,43896],"mapped",[5032]],[[43897,43897],"mapped",[5033]],[[43898,43898],"mapped",[5034]],[[43899,43899],"mapped",[5035]],[[43900,43900],"mapped",[5036]],[[43901,43901],"mapped",[5037]],[[43902,43902],"mapped",[5038]],[[43903,43903],"mapped",[5039]],[[43904,43904],"mapped",[5040]],[[43905,43905],"mapped",[5041]],[[43906,43906],"mapped",[5042]],[[43907,43907],"mapped",[5043]],[[43908,43908],"mapped",[5044]],[[43909,43909],"mapped",[5045]],[[43910,43910],"mapped",[5046]],[[43911,43911],"mapped",[5047]],[[43912,43912],"mapped",[5048]],[[43913,43913],"mapped",[5049]],[[43914,43914],"mapped",[5050]],[[43915,43915],"mapped",[5051]],[[43916,43916],"mapped",[5052]],[[43917,43917],"mapped",[5053]],[[43918,43918],"mapped",[5054]],[[43919,43919],"mapped",[5055]],[[43920,43920],"mapped",[5056]],[[43921,43921],"mapped",[5057]],[[43922,43922],"mapped",[5058]],[[43923,43923],"mapped",[5059]],[[43924,43924],"mapped",[5060]],[[43925,43925],"mapped",[5061]],[[43926,43926],"mapped",[5062]],[[43927,43927],"mapped",[5063]],[[43928,43928],"mapped",[5064]],[[43929,43929],"mapped",[5065]],[[43930,43930],"mapped",[5066]],[[43931,43931],"mapped",[5067]],[[43932,43932],"mapped",[5068]],[[43933,43933],"mapped",[5069]],[[43934,43934],"mapped",[5070]],[[43935,43935],"mapped",[5071]],[[43936,43936],"mapped",[5072]],[[43937,43937],"mapped",[5073]],[[43938,43938],"mapped",[5074]],[[43939,43939],"mapped",[5075]],[[43940,43940],"mapped",[5076]],[[43941,43941],"mapped",[5077]],[[43942,43942],"mapped",[5078]],[[43943,43943],"mapped",[5079]],[[43944,43944],"mapped",[5080]],[[43945,43945],"mapped",[5081]],[[43946,43946],"mapped",[5082]],[[43947,43947],"mapped",[5083]],[[43948,43948],"mapped",[5084]],[[43949,43949],"mapped",[5085]],[[43950,43950],"mapped",[5086]],[[43951,43951],"mapped",[5087]],[[43952,43952],"mapped",[5088]],[[43953,43953],"mapped",[5089]],[[43954,43954],"mapped",[5090]],[[43955,43955],"mapped",[5091]],[[43956,43956],"mapped",[5092]],[[43957,43957],"mapped",[5093]],[[43958,43958],"mapped",[5094]],[[43959,43959],"mapped",[5095]],[[43960,43960],"mapped",[5096]],[[43961,43961],"mapped",[5097]],[[43962,43962],"mapped",[5098]],[[43963,43963],"mapped",[5099]],[[43964,43964],"mapped",[5100]],[[43965,43965],"mapped",[5101]],[[43966,43966],"mapped",[5102]],[[43967,43967],"mapped",[5103]],[[43968,44010],"valid"],[[44011,44011],"valid",[],"NV8"],[[44012,44013],"valid"],[[44014,44015],"disallowed"],[[44016,44025],"valid"],[[44026,44031],"disallowed"],[[44032,55203],"valid"],[[55204,55215],"disallowed"],[[55216,55238],"valid",[],"NV8"],[[55239,55242],"disallowed"],[[55243,55291],"valid",[],"NV8"],[[55292,55295],"disallowed"],[[55296,57343],"disallowed"],[[57344,63743],"disallowed"],[[63744,63744],"mapped",[35912]],[[63745,63745],"mapped",[26356]],[[63746,63746],"mapped",[36554]],[[63747,63747],"mapped",[36040]],[[63748,63748],"mapped",[28369]],[[63749,63749],"mapped",[20018]],[[63750,63750],"mapped",[21477]],[[63751,63752],"mapped",[40860]],[[63753,63753],"mapped",[22865]],[[63754,63754],"mapped",[37329]],[[63755,63755],"mapped",[21895]],[[63756,63756],"mapped",[22856]],[[63757,63757],"mapped",[25078]],[[63758,63758],"mapped",[30313]],[[63759,63759],"mapped",[32645]],[[63760,63760],"mapped",[34367]],[[63761,63761],"mapped",[34746]],[[63762,63762],"mapped",[35064]],[[63763,63763],"mapped",[37007]],[[63764,63764],"mapped",[27138]],[[63765,63765],"mapped",[27931]],[[63766,63766],"mapped",[28889]],[[63767,63767],"mapped",[29662]],[[63768,63768],"mapped",[33853]],[[63769,63769],"mapped",[37226]],[[63770,63770],"mapped",[39409]],[[63771,63771],"mapped",[20098]],[[63772,63772],"mapped",[21365]],[[63773,63773],"mapped",[27396]],[[63774,63774],"mapped",[29211]],[[63775,63775],"mapped",[34349]],[[63776,63776],"mapped",[40478]],[[63777,63777],"mapped",[23888]],[[63778,63778],"mapped",[28651]],[[63779,63779],"mapped",[34253]],[[63780,63780],"mapped",[35172]],[[63781,63781],"mapped",[25289]],[[63782,63782],"mapped",[33240]],[[63783,63783],"mapped",[34847]],[[63784,63784],"mapped",[24266]],[[63785,63785],"mapped",[26391]],[[63786,63786],"mapped",[28010]],[[63787,63787],"mapped",[29436]],[[63788,63788],"mapped",[37070]],[[63789,63789],"mapped",[20358]],[[63790,63790],"mapped",[20919]],[[63791,63791],"mapped",[21214]],[[63792,63792],"mapped",[25796]],[[63793,63793],"mapped",[27347]],[[63794,63794],"mapped",[29200]],[[63795,63795],"mapped",[30439]],[[63796,63796],"mapped",[32769]],[[63797,63797],"mapped",[34310]],[[63798,63798],"mapped",[34396]],[[63799,63799],"mapped",[36335]],[[63800,63800],"mapped",[38706]],[[63801,63801],"mapped",[39791]],[[63802,63802],"mapped",[40442]],[[63803,63803],"mapped",[30860]],[[63804,63804],"mapped",[31103]],[[63805,63805],"mapped",[32160]],[[63806,63806],"mapped",[33737]],[[63807,63807],"mapped",[37636]],[[63808,63808],"mapped",[40575]],[[63809,63809],"mapped",[35542]],[[63810,63810],"mapped",[22751]],[[63811,63811],"mapped",[24324]],[[63812,63812],"mapped",[31840]],[[63813,63813],"mapped",[32894]],[[63814,63814],"mapped",[29282]],[[63815,63815],"mapped",[30922]],[[63816,63816],"mapped",[36034]],[[63817,63817],"mapped",[38647]],[[63818,63818],"mapped",[22744]],[[63819,63819],"mapped",[23650]],[[63820,63820],"mapped",[27155]],[[63821,63821],"mapped",[28122]],[[63822,63822],"mapped",[28431]],[[63823,63823],"mapped",[32047]],[[63824,63824],"mapped",[32311]],[[63825,63825],"mapped",[38475]],[[63826,63826],"mapped",[21202]],[[63827,63827],"mapped",[32907]],[[63828,63828],"mapped",[20956]],[[63829,63829],"mapped",[20940]],[[63830,63830],"mapped",[31260]],[[63831,63831],"mapped",[32190]],[[63832,63832],"mapped",[33777]],[[63833,63833],"mapped",[38517]],[[63834,63834],"mapped",[35712]],[[63835,63835],"mapped",[25295]],[[63836,63836],"mapped",[27138]],[[63837,63837],"mapped",[35582]],[[63838,63838],"mapped",[20025]],[[63839,63839],"mapped",[23527]],[[63840,63840],"mapped",[24594]],[[63841,63841],"mapped",[29575]],[[63842,63842],"mapped",[30064]],[[63843,63843],"mapped",[21271]],[[63844,63844],"mapped",[30971]],[[63845,63845],"mapped",[20415]],[[63846,63846],"mapped",[24489]],[[63847,63847],"mapped",[19981]],[[63848,63848],"mapped",[27852]],[[63849,63849],"mapped",[25976]],[[63850,63850],"mapped",[32034]],[[63851,63851],"mapped",[21443]],[[63852,63852],"mapped",[22622]],[[63853,63853],"mapped",[30465]],[[63854,63854],"mapped",[33865]],[[63855,63855],"mapped",[35498]],[[63856,63856],"mapped",[27578]],[[63857,63857],"mapped",[36784]],[[63858,63858],"mapped",[27784]],[[63859,63859],"mapped",[25342]],[[63860,63860],"mapped",[33509]],[[63861,63861],"mapped",[25504]],[[63862,63862],"mapped",[30053]],[[63863,63863],"mapped",[20142]],[[63864,63864],"mapped",[20841]],[[63865,63865],"mapped",[20937]],[[63866,63866],"mapped",[26753]],[[63867,63867],"mapped",[31975]],[[63868,63868],"mapped",[33391]],[[63869,63869],"mapped",[35538]],[[63870,63870],"mapped",[37327]],[[63871,63871],"mapped",[21237]],[[63872,63872],"mapped",[21570]],[[63873,63873],"mapped",[22899]],[[63874,63874],"mapped",[24300]],[[63875,63875],"mapped",[26053]],[[63876,63876],"mapped",[28670]],[[63877,63877],"mapped",[31018]],[[63878,63878],"mapped",[38317]],[[63879,63879],"mapped",[39530]],[[63880,63880],"mapped",[40599]],[[63881,63881],"mapped",[40654]],[[63882,63882],"mapped",[21147]],[[63883,63883],"mapped",[26310]],[[63884,63884],"mapped",[27511]],[[63885,63885],"mapped",[36706]],[[63886,63886],"mapped",[24180]],[[63887,63887],"mapped",[24976]],[[63888,63888],"mapped",[25088]],[[63889,63889],"mapped",[25754]],[[63890,63890],"mapped",[28451]],[[63891,63891],"mapped",[29001]],[[63892,63892],"mapped",[29833]],[[63893,63893],"mapped",[31178]],[[63894,63894],"mapped",[32244]],[[63895,63895],"mapped",[32879]],[[63896,63896],"mapped",[36646]],[[63897,63897],"mapped",[34030]],[[63898,63898],"mapped",[36899]],[[63899,63899],"mapped",[37706]],[[63900,63900],"mapped",[21015]],[[63901,63901],"mapped",[21155]],[[63902,63902],"mapped",[21693]],[[63903,63903],"mapped",[28872]],[[63904,63904],"mapped",[35010]],[[63905,63905],"mapped",[35498]],[[63906,63906],"mapped",[24265]],[[63907,63907],"mapped",[24565]],[[63908,63908],"mapped",[25467]],[[63909,63909],"mapped",[27566]],[[63910,63910],"mapped",[31806]],[[63911,63911],"mapped",[29557]],[[63912,63912],"mapped",[20196]],[[63913,63913],"mapped",[22265]],[[63914,63914],"mapped",[23527]],[[63915,63915],"mapped",[23994]],[[63916,63916],"mapped",[24604]],[[63917,63917],"mapped",[29618]],[[63918,63918],"mapped",[29801]],[[63919,63919],"mapped",[32666]],[[63920,63920],"mapped",[32838]],[[63921,63921],"mapped",[37428]],[[63922,63922],"mapped",[38646]],[[63923,63923],"mapped",[38728]],[[63924,63924],"mapped",[38936]],[[63925,63925],"mapped",[20363]],[[63926,63926],"mapped",[31150]],[[63927,63927],"mapped",[37300]],[[63928,63928],"mapped",[38584]],[[63929,63929],"mapped",[24801]],[[63930,63930],"mapped",[20102]],[[63931,63931],"mapped",[20698]],[[63932,63932],"mapped",[23534]],[[63933,63933],"mapped",[23615]],[[63934,63934],"mapped",[26009]],[[63935,63935],"mapped",[27138]],[[63936,63936],"mapped",[29134]],[[63937,63937],"mapped",[30274]],[[63938,63938],"mapped",[34044]],[[63939,63939],"mapped",[36988]],[[63940,63940],"mapped",[40845]],[[63941,63941],"mapped",[26248]],[[63942,63942],"mapped",[38446]],[[63943,63943],"mapped",[21129]],[[63944,63944],"mapped",[26491]],[[63945,63945],"mapped",[26611]],[[63946,63946],"mapped",[27969]],[[63947,63947],"mapped",[28316]],[[63948,63948],"mapped",[29705]],[[63949,63949],"mapped",[30041]],[[63950,63950],"mapped",[30827]],[[63951,63951],"mapped",[32016]],[[63952,63952],"mapped",[39006]],[[63953,63953],"mapped",[20845]],[[63954,63954],"mapped",[25134]],[[63955,63955],"mapped",[38520]],[[63956,63956],"mapped",[20523]],[[63957,63957],"mapped",[23833]],[[63958,63958],"mapped",[28138]],[[63959,63959],"mapped",[36650]],[[63960,63960],"mapped",[24459]],[[63961,63961],"mapped",[24900]],[[63962,63962],"mapped",[26647]],[[63963,63963],"mapped",[29575]],[[63964,63964],"mapped",[38534]],[[63965,63965],"mapped",[21033]],[[63966,63966],"mapped",[21519]],[[63967,63967],"mapped",[23653]],[[63968,63968],"mapped",[26131]],[[63969,63969],"mapped",[26446]],[[63970,63970],"mapped",[26792]],[[63971,63971],"mapped",[27877]],[[63972,63972],"mapped",[29702]],[[63973,63973],"mapped",[30178]],[[63974,63974],"mapped",[32633]],[[63975,63975],"mapped",[35023]],[[63976,63976],"mapped",[35041]],[[63977,63977],"mapped",[37324]],[[63978,63978],"mapped",[38626]],[[63979,63979],"mapped",[21311]],[[63980,63980],"mapped",[28346]],[[63981,63981],"mapped",[21533]],[[63982,63982],"mapped",[29136]],[[63983,63983],"mapped",[29848]],[[63984,63984],"mapped",[34298]],[[63985,63985],"mapped",[38563]],[[63986,63986],"mapped",[40023]],[[63987,63987],"mapped",[40607]],[[63988,63988],"mapped",[26519]],[[63989,63989],"mapped",[28107]],[[63990,63990],"mapped",[33256]],[[63991,63991],"mapped",[31435]],[[63992,63992],"mapped",[31520]],[[63993,63993],"mapped",[31890]],[[63994,63994],"mapped",[29376]],[[63995,63995],"mapped",[28825]],[[63996,63996],"mapped",[35672]],[[63997,63997],"mapped",[20160]],[[63998,63998],"mapped",[33590]],[[63999,63999],"mapped",[21050]],[[64e3,64e3],"mapped",[20999]],[[64001,64001],"mapped",[24230]],[[64002,64002],"mapped",[25299]],[[64003,64003],"mapped",[31958]],[[64004,64004],"mapped",[23429]],[[64005,64005],"mapped",[27934]],[[64006,64006],"mapped",[26292]],[[64007,64007],"mapped",[36667]],[[64008,64008],"mapped",[34892]],[[64009,64009],"mapped",[38477]],[[64010,64010],"mapped",[35211]],[[64011,64011],"mapped",[24275]],[[64012,64012],"mapped",[20800]],[[64013,64013],"mapped",[21952]],[[64014,64015],"valid"],[[64016,64016],"mapped",[22618]],[[64017,64017],"valid"],[[64018,64018],"mapped",[26228]],[[64019,64020],"valid"],[[64021,64021],"mapped",[20958]],[[64022,64022],"mapped",[29482]],[[64023,64023],"mapped",[30410]],[[64024,64024],"mapped",[31036]],[[64025,64025],"mapped",[31070]],[[64026,64026],"mapped",[31077]],[[64027,64027],"mapped",[31119]],[[64028,64028],"mapped",[38742]],[[64029,64029],"mapped",[31934]],[[64030,64030],"mapped",[32701]],[[64031,64031],"valid"],[[64032,64032],"mapped",[34322]],[[64033,64033],"valid"],[[64034,64034],"mapped",[35576]],[[64035,64036],"valid"],[[64037,64037],"mapped",[36920]],[[64038,64038],"mapped",[37117]],[[64039,64041],"valid"],[[64042,64042],"mapped",[39151]],[[64043,64043],"mapped",[39164]],[[64044,64044],"mapped",[39208]],[[64045,64045],"mapped",[40372]],[[64046,64046],"mapped",[37086]],[[64047,64047],"mapped",[38583]],[[64048,64048],"mapped",[20398]],[[64049,64049],"mapped",[20711]],[[64050,64050],"mapped",[20813]],[[64051,64051],"mapped",[21193]],[[64052,64052],"mapped",[21220]],[[64053,64053],"mapped",[21329]],[[64054,64054],"mapped",[21917]],[[64055,64055],"mapped",[22022]],[[64056,64056],"mapped",[22120]],[[64057,64057],"mapped",[22592]],[[64058,64058],"mapped",[22696]],[[64059,64059],"mapped",[23652]],[[64060,64060],"mapped",[23662]],[[64061,64061],"mapped",[24724]],[[64062,64062],"mapped",[24936]],[[64063,64063],"mapped",[24974]],[[64064,64064],"mapped",[25074]],[[64065,64065],"mapped",[25935]],[[64066,64066],"mapped",[26082]],[[64067,64067],"mapped",[26257]],[[64068,64068],"mapped",[26757]],[[64069,64069],"mapped",[28023]],[[64070,64070],"mapped",[28186]],[[64071,64071],"mapped",[28450]],[[64072,64072],"mapped",[29038]],[[64073,64073],"mapped",[29227]],[[64074,64074],"mapped",[29730]],[[64075,64075],"mapped",[30865]],[[64076,64076],"mapped",[31038]],[[64077,64077],"mapped",[31049]],[[64078,64078],"mapped",[31048]],[[64079,64079],"mapped",[31056]],[[64080,64080],"mapped",[31062]],[[64081,64081],"mapped",[31069]],[[64082,64082],"mapped",[31117]],[[64083,64083],"mapped",[31118]],[[64084,64084],"mapped",[31296]],[[64085,64085],"mapped",[31361]],[[64086,64086],"mapped",[31680]],[[64087,64087],"mapped",[32244]],[[64088,64088],"mapped",[32265]],[[64089,64089],"mapped",[32321]],[[64090,64090],"mapped",[32626]],[[64091,64091],"mapped",[32773]],[[64092,64092],"mapped",[33261]],[[64093,64094],"mapped",[33401]],[[64095,64095],"mapped",[33879]],[[64096,64096],"mapped",[35088]],[[64097,64097],"mapped",[35222]],[[64098,64098],"mapped",[35585]],[[64099,64099],"mapped",[35641]],[[64100,64100],"mapped",[36051]],[[64101,64101],"mapped",[36104]],[[64102,64102],"mapped",[36790]],[[64103,64103],"mapped",[36920]],[[64104,64104],"mapped",[38627]],[[64105,64105],"mapped",[38911]],[[64106,64106],"mapped",[38971]],[[64107,64107],"mapped",[24693]],[[64108,64108],"mapped",[148206]],[[64109,64109],"mapped",[33304]],[[64110,64111],"disallowed"],[[64112,64112],"mapped",[20006]],[[64113,64113],"mapped",[20917]],[[64114,64114],"mapped",[20840]],[[64115,64115],"mapped",[20352]],[[64116,64116],"mapped",[20805]],[[64117,64117],"mapped",[20864]],[[64118,64118],"mapped",[21191]],[[64119,64119],"mapped",[21242]],[[64120,64120],"mapped",[21917]],[[64121,64121],"mapped",[21845]],[[64122,64122],"mapped",[21913]],[[64123,64123],"mapped",[21986]],[[64124,64124],"mapped",[22618]],[[64125,64125],"mapped",[22707]],[[64126,64126],"mapped",[22852]],[[64127,64127],"mapped",[22868]],[[64128,64128],"mapped",[23138]],[[64129,64129],"mapped",[23336]],[[64130,64130],"mapped",[24274]],[[64131,64131],"mapped",[24281]],[[64132,64132],"mapped",[24425]],[[64133,64133],"mapped",[24493]],[[64134,64134],"mapped",[24792]],[[64135,64135],"mapped",[24910]],[[64136,64136],"mapped",[24840]],[[64137,64137],"mapped",[24974]],[[64138,64138],"mapped",[24928]],[[64139,64139],"mapped",[25074]],[[64140,64140],"mapped",[25140]],[[64141,64141],"mapped",[25540]],[[64142,64142],"mapped",[25628]],[[64143,64143],"mapped",[25682]],[[64144,64144],"mapped",[25942]],[[64145,64145],"mapped",[26228]],[[64146,64146],"mapped",[26391]],[[64147,64147],"mapped",[26395]],[[64148,64148],"mapped",[26454]],[[64149,64149],"mapped",[27513]],[[64150,64150],"mapped",[27578]],[[64151,64151],"mapped",[27969]],[[64152,64152],"mapped",[28379]],[[64153,64153],"mapped",[28363]],[[64154,64154],"mapped",[28450]],[[64155,64155],"mapped",[28702]],[[64156,64156],"mapped",[29038]],[[64157,64157],"mapped",[30631]],[[64158,64158],"mapped",[29237]],[[64159,64159],"mapped",[29359]],[[64160,64160],"mapped",[29482]],[[64161,64161],"mapped",[29809]],[[64162,64162],"mapped",[29958]],[[64163,64163],"mapped",[30011]],[[64164,64164],"mapped",[30237]],[[64165,64165],"mapped",[30239]],[[64166,64166],"mapped",[30410]],[[64167,64167],"mapped",[30427]],[[64168,64168],"mapped",[30452]],[[64169,64169],"mapped",[30538]],[[64170,64170],"mapped",[30528]],[[64171,64171],"mapped",[30924]],[[64172,64172],"mapped",[31409]],[[64173,64173],"mapped",[31680]],[[64174,64174],"mapped",[31867]],[[64175,64175],"mapped",[32091]],[[64176,64176],"mapped",[32244]],[[64177,64177],"mapped",[32574]],[[64178,64178],"mapped",[32773]],[[64179,64179],"mapped",[33618]],[[64180,64180],"mapped",[33775]],[[64181,64181],"mapped",[34681]],[[64182,64182],"mapped",[35137]],[[64183,64183],"mapped",[35206]],[[64184,64184],"mapped",[35222]],[[64185,64185],"mapped",[35519]],[[64186,64186],"mapped",[35576]],[[64187,64187],"mapped",[35531]],[[64188,64188],"mapped",[35585]],[[64189,64189],"mapped",[35582]],[[64190,64190],"mapped",[35565]],[[64191,64191],"mapped",[35641]],[[64192,64192],"mapped",[35722]],[[64193,64193],"mapped",[36104]],[[64194,64194],"mapped",[36664]],[[64195,64195],"mapped",[36978]],[[64196,64196],"mapped",[37273]],[[64197,64197],"mapped",[37494]],[[64198,64198],"mapped",[38524]],[[64199,64199],"mapped",[38627]],[[64200,64200],"mapped",[38742]],[[64201,64201],"mapped",[38875]],[[64202,64202],"mapped",[38911]],[[64203,64203],"mapped",[38923]],[[64204,64204],"mapped",[38971]],[[64205,64205],"mapped",[39698]],[[64206,64206],"mapped",[40860]],[[64207,64207],"mapped",[141386]],[[64208,64208],"mapped",[141380]],[[64209,64209],"mapped",[144341]],[[64210,64210],"mapped",[15261]],[[64211,64211],"mapped",[16408]],[[64212,64212],"mapped",[16441]],[[64213,64213],"mapped",[152137]],[[64214,64214],"mapped",[154832]],[[64215,64215],"mapped",[163539]],[[64216,64216],"mapped",[40771]],[[64217,64217],"mapped",[40846]],[[64218,64255],"disallowed"],[[64256,64256],"mapped",[102,102]],[[64257,64257],"mapped",[102,105]],[[64258,64258],"mapped",[102,108]],[[64259,64259],"mapped",[102,102,105]],[[64260,64260],"mapped",[102,102,108]],[[64261,64262],"mapped",[115,116]],[[64263,64274],"disallowed"],[[64275,64275],"mapped",[1396,1398]],[[64276,64276],"mapped",[1396,1381]],[[64277,64277],"mapped",[1396,1387]],[[64278,64278],"mapped",[1406,1398]],[[64279,64279],"mapped",[1396,1389]],[[64280,64284],"disallowed"],[[64285,64285],"mapped",[1497,1460]],[[64286,64286],"valid"],[[64287,64287],"mapped",[1522,1463]],[[64288,64288],"mapped",[1506]],[[64289,64289],"mapped",[1488]],[[64290,64290],"mapped",[1491]],[[64291,64291],"mapped",[1492]],[[64292,64292],"mapped",[1499]],[[64293,64293],"mapped",[1500]],[[64294,64294],"mapped",[1501]],[[64295,64295],"mapped",[1512]],[[64296,64296],"mapped",[1514]],[[64297,64297],"disallowed_STD3_mapped",[43]],[[64298,64298],"mapped",[1513,1473]],[[64299,64299],"mapped",[1513,1474]],[[64300,64300],"mapped",[1513,1468,1473]],[[64301,64301],"mapped",[1513,1468,1474]],[[64302,64302],"mapped",[1488,1463]],[[64303,64303],"mapped",[1488,1464]],[[64304,64304],"mapped",[1488,1468]],[[64305,64305],"mapped",[1489,1468]],[[64306,64306],"mapped",[1490,1468]],[[64307,64307],"mapped",[1491,1468]],[[64308,64308],"mapped",[1492,1468]],[[64309,64309],"mapped",[1493,1468]],[[64310,64310],"mapped",[1494,1468]],[[64311,64311],"disallowed"],[[64312,64312],"mapped",[1496,1468]],[[64313,64313],"mapped",[1497,1468]],[[64314,64314],"mapped",[1498,1468]],[[64315,64315],"mapped",[1499,1468]],[[64316,64316],"mapped",[1500,1468]],[[64317,64317],"disallowed"],[[64318,64318],"mapped",[1502,1468]],[[64319,64319],"disallowed"],[[64320,64320],"mapped",[1504,1468]],[[64321,64321],"mapped",[1505,1468]],[[64322,64322],"disallowed"],[[64323,64323],"mapped",[1507,1468]],[[64324,64324],"mapped",[1508,1468]],[[64325,64325],"disallowed"],[[64326,64326],"mapped",[1510,1468]],[[64327,64327],"mapped",[1511,1468]],[[64328,64328],"mapped",[1512,1468]],[[64329,64329],"mapped",[1513,1468]],[[64330,64330],"mapped",[1514,1468]],[[64331,64331],"mapped",[1493,1465]],[[64332,64332],"mapped",[1489,1471]],[[64333,64333],"mapped",[1499,1471]],[[64334,64334],"mapped",[1508,1471]],[[64335,64335],"mapped",[1488,1500]],[[64336,64337],"mapped",[1649]],[[64338,64341],"mapped",[1659]],[[64342,64345],"mapped",[1662]],[[64346,64349],"mapped",[1664]],[[64350,64353],"mapped",[1658]],[[64354,64357],"mapped",[1663]],[[64358,64361],"mapped",[1657]],[[64362,64365],"mapped",[1700]],[[64366,64369],"mapped",[1702]],[[64370,64373],"mapped",[1668]],[[64374,64377],"mapped",[1667]],[[64378,64381],"mapped",[1670]],[[64382,64385],"mapped",[1671]],[[64386,64387],"mapped",[1677]],[[64388,64389],"mapped",[1676]],[[64390,64391],"mapped",[1678]],[[64392,64393],"mapped",[1672]],[[64394,64395],"mapped",[1688]],[[64396,64397],"mapped",[1681]],[[64398,64401],"mapped",[1705]],[[64402,64405],"mapped",[1711]],[[64406,64409],"mapped",[1715]],[[64410,64413],"mapped",[1713]],[[64414,64415],"mapped",[1722]],[[64416,64419],"mapped",[1723]],[[64420,64421],"mapped",[1728]],[[64422,64425],"mapped",[1729]],[[64426,64429],"mapped",[1726]],[[64430,64431],"mapped",[1746]],[[64432,64433],"mapped",[1747]],[[64434,64449],"valid",[],"NV8"],[[64450,64466],"disallowed"],[[64467,64470],"mapped",[1709]],[[64471,64472],"mapped",[1735]],[[64473,64474],"mapped",[1734]],[[64475,64476],"mapped",[1736]],[[64477,64477],"mapped",[1735,1652]],[[64478,64479],"mapped",[1739]],[[64480,64481],"mapped",[1733]],[[64482,64483],"mapped",[1737]],[[64484,64487],"mapped",[1744]],[[64488,64489],"mapped",[1609]],[[64490,64491],"mapped",[1574,1575]],[[64492,64493],"mapped",[1574,1749]],[[64494,64495],"mapped",[1574,1608]],[[64496,64497],"mapped",[1574,1735]],[[64498,64499],"mapped",[1574,1734]],[[64500,64501],"mapped",[1574,1736]],[[64502,64504],"mapped",[1574,1744]],[[64505,64507],"mapped",[1574,1609]],[[64508,64511],"mapped",[1740]],[[64512,64512],"mapped",[1574,1580]],[[64513,64513],"mapped",[1574,1581]],[[64514,64514],"mapped",[1574,1605]],[[64515,64515],"mapped",[1574,1609]],[[64516,64516],"mapped",[1574,1610]],[[64517,64517],"mapped",[1576,1580]],[[64518,64518],"mapped",[1576,1581]],[[64519,64519],"mapped",[1576,1582]],[[64520,64520],"mapped",[1576,1605]],[[64521,64521],"mapped",[1576,1609]],[[64522,64522],"mapped",[1576,1610]],[[64523,64523],"mapped",[1578,1580]],[[64524,64524],"mapped",[1578,1581]],[[64525,64525],"mapped",[1578,1582]],[[64526,64526],"mapped",[1578,1605]],[[64527,64527],"mapped",[1578,1609]],[[64528,64528],"mapped",[1578,1610]],[[64529,64529],"mapped",[1579,1580]],[[64530,64530],"mapped",[1579,1605]],[[64531,64531],"mapped",[1579,1609]],[[64532,64532],"mapped",[1579,1610]],[[64533,64533],"mapped",[1580,1581]],[[64534,64534],"mapped",[1580,1605]],[[64535,64535],"mapped",[1581,1580]],[[64536,64536],"mapped",[1581,1605]],[[64537,64537],"mapped",[1582,1580]],[[64538,64538],"mapped",[1582,1581]],[[64539,64539],"mapped",[1582,1605]],[[64540,64540],"mapped",[1587,1580]],[[64541,64541],"mapped",[1587,1581]],[[64542,64542],"mapped",[1587,1582]],[[64543,64543],"mapped",[1587,1605]],[[64544,64544],"mapped",[1589,1581]],[[64545,64545],"mapped",[1589,1605]],[[64546,64546],"mapped",[1590,1580]],[[64547,64547],"mapped",[1590,1581]],[[64548,64548],"mapped",[1590,1582]],[[64549,64549],"mapped",[1590,1605]],[[64550,64550],"mapped",[1591,1581]],[[64551,64551],"mapped",[1591,1605]],[[64552,64552],"mapped",[1592,1605]],[[64553,64553],"mapped",[1593,1580]],[[64554,64554],"mapped",[1593,1605]],[[64555,64555],"mapped",[1594,1580]],[[64556,64556],"mapped",[1594,1605]],[[64557,64557],"mapped",[1601,1580]],[[64558,64558],"mapped",[1601,1581]],[[64559,64559],"mapped",[1601,1582]],[[64560,64560],"mapped",[1601,1605]],[[64561,64561],"mapped",[1601,1609]],[[64562,64562],"mapped",[1601,1610]],[[64563,64563],"mapped",[1602,1581]],[[64564,64564],"mapped",[1602,1605]],[[64565,64565],"mapped",[1602,1609]],[[64566,64566],"mapped",[1602,1610]],[[64567,64567],"mapped",[1603,1575]],[[64568,64568],"mapped",[1603,1580]],[[64569,64569],"mapped",[1603,1581]],[[64570,64570],"mapped",[1603,1582]],[[64571,64571],"mapped",[1603,1604]],[[64572,64572],"mapped",[1603,1605]],[[64573,64573],"mapped",[1603,1609]],[[64574,64574],"mapped",[1603,1610]],[[64575,64575],"mapped",[1604,1580]],[[64576,64576],"mapped",[1604,1581]],[[64577,64577],"mapped",[1604,1582]],[[64578,64578],"mapped",[1604,1605]],[[64579,64579],"mapped",[1604,1609]],[[64580,64580],"mapped",[1604,1610]],[[64581,64581],"mapped",[1605,1580]],[[64582,64582],"mapped",[1605,1581]],[[64583,64583],"mapped",[1605,1582]],[[64584,64584],"mapped",[1605,1605]],[[64585,64585],"mapped",[1605,1609]],[[64586,64586],"mapped",[1605,1610]],[[64587,64587],"mapped",[1606,1580]],[[64588,64588],"mapped",[1606,1581]],[[64589,64589],"mapped",[1606,1582]],[[64590,64590],"mapped",[1606,1605]],[[64591,64591],"mapped",[1606,1609]],[[64592,64592],"mapped",[1606,1610]],[[64593,64593],"mapped",[1607,1580]],[[64594,64594],"mapped",[1607,1605]],[[64595,64595],"mapped",[1607,1609]],[[64596,64596],"mapped",[1607,1610]],[[64597,64597],"mapped",[1610,1580]],[[64598,64598],"mapped",[1610,1581]],[[64599,64599],"mapped",[1610,1582]],[[64600,64600],"mapped",[1610,1605]],[[64601,64601],"mapped",[1610,1609]],[[64602,64602],"mapped",[1610,1610]],[[64603,64603],"mapped",[1584,1648]],[[64604,64604],"mapped",[1585,1648]],[[64605,64605],"mapped",[1609,1648]],[[64606,64606],"disallowed_STD3_mapped",[32,1612,1617]],[[64607,64607],"disallowed_STD3_mapped",[32,1613,1617]],[[64608,64608],"disallowed_STD3_mapped",[32,1614,1617]],[[64609,64609],"disallowed_STD3_mapped",[32,1615,1617]],[[64610,64610],"disallowed_STD3_mapped",[32,1616,1617]],[[64611,64611],"disallowed_STD3_mapped",[32,1617,1648]],[[64612,64612],"mapped",[1574,1585]],[[64613,64613],"mapped",[1574,1586]],[[64614,64614],"mapped",[1574,1605]],[[64615,64615],"mapped",[1574,1606]],[[64616,64616],"mapped",[1574,1609]],[[64617,64617],"mapped",[1574,1610]],[[64618,64618],"mapped",[1576,1585]],[[64619,64619],"mapped",[1576,1586]],[[64620,64620],"mapped",[1576,1605]],[[64621,64621],"mapped",[1576,1606]],[[64622,64622],"mapped",[1576,1609]],[[64623,64623],"mapped",[1576,1610]],[[64624,64624],"mapped",[1578,1585]],[[64625,64625],"mapped",[1578,1586]],[[64626,64626],"mapped",[1578,1605]],[[64627,64627],"mapped",[1578,1606]],[[64628,64628],"mapped",[1578,1609]],[[64629,64629],"mapped",[1578,1610]],[[64630,64630],"mapped",[1579,1585]],[[64631,64631],"mapped",[1579,1586]],[[64632,64632],"mapped",[1579,1605]],[[64633,64633],"mapped",[1579,1606]],[[64634,64634],"mapped",[1579,1609]],[[64635,64635],"mapped",[1579,1610]],[[64636,64636],"mapped",[1601,1609]],[[64637,64637],"mapped",[1601,1610]],[[64638,64638],"mapped",[1602,1609]],[[64639,64639],"mapped",[1602,1610]],[[64640,64640],"mapped",[1603,1575]],[[64641,64641],"mapped",[1603,1604]],[[64642,64642],"mapped",[1603,1605]],[[64643,64643],"mapped",[1603,1609]],[[64644,64644],"mapped",[1603,1610]],[[64645,64645],"mapped",[1604,1605]],[[64646,64646],"mapped",[1604,1609]],[[64647,64647],"mapped",[1604,1610]],[[64648,64648],"mapped",[1605,1575]],[[64649,64649],"mapped",[1605,1605]],[[64650,64650],"mapped",[1606,1585]],[[64651,64651],"mapped",[1606,1586]],[[64652,64652],"mapped",[1606,1605]],[[64653,64653],"mapped",[1606,1606]],[[64654,64654],"mapped",[1606,1609]],[[64655,64655],"mapped",[1606,1610]],[[64656,64656],"mapped",[1609,1648]],[[64657,64657],"mapped",[1610,1585]],[[64658,64658],"mapped",[1610,1586]],[[64659,64659],"mapped",[1610,1605]],[[64660,64660],"mapped",[1610,1606]],[[64661,64661],"mapped",[1610,1609]],[[64662,64662],"mapped",[1610,1610]],[[64663,64663],"mapped",[1574,1580]],[[64664,64664],"mapped",[1574,1581]],[[64665,64665],"mapped",[1574,1582]],[[64666,64666],"mapped",[1574,1605]],[[64667,64667],"mapped",[1574,1607]],[[64668,64668],"mapped",[1576,1580]],[[64669,64669],"mapped",[1576,1581]],[[64670,64670],"mapped",[1576,1582]],[[64671,64671],"mapped",[1576,1605]],[[64672,64672],"mapped",[1576,1607]],[[64673,64673],"mapped",[1578,1580]],[[64674,64674],"mapped",[1578,1581]],[[64675,64675],"mapped",[1578,1582]],[[64676,64676],"mapped",[1578,1605]],[[64677,64677],"mapped",[1578,1607]],[[64678,64678],"mapped",[1579,1605]],[[64679,64679],"mapped",[1580,1581]],[[64680,64680],"mapped",[1580,1605]],[[64681,64681],"mapped",[1581,1580]],[[64682,64682],"mapped",[1581,1605]],[[64683,64683],"mapped",[1582,1580]],[[64684,64684],"mapped",[1582,1605]],[[64685,64685],"mapped",[1587,1580]],[[64686,64686],"mapped",[1587,1581]],[[64687,64687],"mapped",[1587,1582]],[[64688,64688],"mapped",[1587,1605]],[[64689,64689],"mapped",[1589,1581]],[[64690,64690],"mapped",[1589,1582]],[[64691,64691],"mapped",[1589,1605]],[[64692,64692],"mapped",[1590,1580]],[[64693,64693],"mapped",[1590,1581]],[[64694,64694],"mapped",[1590,1582]],[[64695,64695],"mapped",[1590,1605]],[[64696,64696],"mapped",[1591,1581]],[[64697,64697],"mapped",[1592,1605]],[[64698,64698],"mapped",[1593,1580]],[[64699,64699],"mapped",[1593,1605]],[[64700,64700],"mapped",[1594,1580]],[[64701,64701],"mapped",[1594,1605]],[[64702,64702],"mapped",[1601,1580]],[[64703,64703],"mapped",[1601,1581]],[[64704,64704],"mapped",[1601,1582]],[[64705,64705],"mapped",[1601,1605]],[[64706,64706],"mapped",[1602,1581]],[[64707,64707],"mapped",[1602,1605]],[[64708,64708],"mapped",[1603,1580]],[[64709,64709],"mapped",[1603,1581]],[[64710,64710],"mapped",[1603,1582]],[[64711,64711],"mapped",[1603,1604]],[[64712,64712],"mapped",[1603,1605]],[[64713,64713],"mapped",[1604,1580]],[[64714,64714],"mapped",[1604,1581]],[[64715,64715],"mapped",[1604,1582]],[[64716,64716],"mapped",[1604,1605]],[[64717,64717],"mapped",[1604,1607]],[[64718,64718],"mapped",[1605,1580]],[[64719,64719],"mapped",[1605,1581]],[[64720,64720],"mapped",[1605,1582]],[[64721,64721],"mapped",[1605,1605]],[[64722,64722],"mapped",[1606,1580]],[[64723,64723],"mapped",[1606,1581]],[[64724,64724],"mapped",[1606,1582]],[[64725,64725],"mapped",[1606,1605]],[[64726,64726],"mapped",[1606,1607]],[[64727,64727],"mapped",[1607,1580]],[[64728,64728],"mapped",[1607,1605]],[[64729,64729],"mapped",[1607,1648]],[[64730,64730],"mapped",[1610,1580]],[[64731,64731],"mapped",[1610,1581]],[[64732,64732],"mapped",[1610,1582]],[[64733,64733],"mapped",[1610,1605]],[[64734,64734],"mapped",[1610,1607]],[[64735,64735],"mapped",[1574,1605]],[[64736,64736],"mapped",[1574,1607]],[[64737,64737],"mapped",[1576,1605]],[[64738,64738],"mapped",[1576,1607]],[[64739,64739],"mapped",[1578,1605]],[[64740,64740],"mapped",[1578,1607]],[[64741,64741],"mapped",[1579,1605]],[[64742,64742],"mapped",[1579,1607]],[[64743,64743],"mapped",[1587,1605]],[[64744,64744],"mapped",[1587,1607]],[[64745,64745],"mapped",[1588,1605]],[[64746,64746],"mapped",[1588,1607]],[[64747,64747],"mapped",[1603,1604]],[[64748,64748],"mapped",[1603,1605]],[[64749,64749],"mapped",[1604,1605]],[[64750,64750],"mapped",[1606,1605]],[[64751,64751],"mapped",[1606,1607]],[[64752,64752],"mapped",[1610,1605]],[[64753,64753],"mapped",[1610,1607]],[[64754,64754],"mapped",[1600,1614,1617]],[[64755,64755],"mapped",[1600,1615,1617]],[[64756,64756],"mapped",[1600,1616,1617]],[[64757,64757],"mapped",[1591,1609]],[[64758,64758],"mapped",[1591,1610]],[[64759,64759],"mapped",[1593,1609]],[[64760,64760],"mapped",[1593,1610]],[[64761,64761],"mapped",[1594,1609]],[[64762,64762],"mapped",[1594,1610]],[[64763,64763],"mapped",[1587,1609]],[[64764,64764],"mapped",[1587,1610]],[[64765,64765],"mapped",[1588,1609]],[[64766,64766],"mapped",[1588,1610]],[[64767,64767],"mapped",[1581,1609]],[[64768,64768],"mapped",[1581,1610]],[[64769,64769],"mapped",[1580,1609]],[[64770,64770],"mapped",[1580,1610]],[[64771,64771],"mapped",[1582,1609]],[[64772,64772],"mapped",[1582,1610]],[[64773,64773],"mapped",[1589,1609]],[[64774,64774],"mapped",[1589,1610]],[[64775,64775],"mapped",[1590,1609]],[[64776,64776],"mapped",[1590,1610]],[[64777,64777],"mapped",[1588,1580]],[[64778,64778],"mapped",[1588,1581]],[[64779,64779],"mapped",[1588,1582]],[[64780,64780],"mapped",[1588,1605]],[[64781,64781],"mapped",[1588,1585]],[[64782,64782],"mapped",[1587,1585]],[[64783,64783],"mapped",[1589,1585]],[[64784,64784],"mapped",[1590,1585]],[[64785,64785],"mapped",[1591,1609]],[[64786,64786],"mapped",[1591,1610]],[[64787,64787],"mapped",[1593,1609]],[[64788,64788],"mapped",[1593,1610]],[[64789,64789],"mapped",[1594,1609]],[[64790,64790],"mapped",[1594,1610]],[[64791,64791],"mapped",[1587,1609]],[[64792,64792],"mapped",[1587,1610]],[[64793,64793],"mapped",[1588,1609]],[[64794,64794],"mapped",[1588,1610]],[[64795,64795],"mapped",[1581,1609]],[[64796,64796],"mapped",[1581,1610]],[[64797,64797],"mapped",[1580,1609]],[[64798,64798],"mapped",[1580,1610]],[[64799,64799],"mapped",[1582,1609]],[[64800,64800],"mapped",[1582,1610]],[[64801,64801],"mapped",[1589,1609]],[[64802,64802],"mapped",[1589,1610]],[[64803,64803],"mapped",[1590,1609]],[[64804,64804],"mapped",[1590,1610]],[[64805,64805],"mapped",[1588,1580]],[[64806,64806],"mapped",[1588,1581]],[[64807,64807],"mapped",[1588,1582]],[[64808,64808],"mapped",[1588,1605]],[[64809,64809],"mapped",[1588,1585]],[[64810,64810],"mapped",[1587,1585]],[[64811,64811],"mapped",[1589,1585]],[[64812,64812],"mapped",[1590,1585]],[[64813,64813],"mapped",[1588,1580]],[[64814,64814],"mapped",[1588,1581]],[[64815,64815],"mapped",[1588,1582]],[[64816,64816],"mapped",[1588,1605]],[[64817,64817],"mapped",[1587,1607]],[[64818,64818],"mapped",[1588,1607]],[[64819,64819],"mapped",[1591,1605]],[[64820,64820],"mapped",[1587,1580]],[[64821,64821],"mapped",[1587,1581]],[[64822,64822],"mapped",[1587,1582]],[[64823,64823],"mapped",[1588,1580]],[[64824,64824],"mapped",[1588,1581]],[[64825,64825],"mapped",[1588,1582]],[[64826,64826],"mapped",[1591,1605]],[[64827,64827],"mapped",[1592,1605]],[[64828,64829],"mapped",[1575,1611]],[[64830,64831],"valid",[],"NV8"],[[64832,64847],"disallowed"],[[64848,64848],"mapped",[1578,1580,1605]],[[64849,64850],"mapped",[1578,1581,1580]],[[64851,64851],"mapped",[1578,1581,1605]],[[64852,64852],"mapped",[1578,1582,1605]],[[64853,64853],"mapped",[1578,1605,1580]],[[64854,64854],"mapped",[1578,1605,1581]],[[64855,64855],"mapped",[1578,1605,1582]],[[64856,64857],"mapped",[1580,1605,1581]],[[64858,64858],"mapped",[1581,1605,1610]],[[64859,64859],"mapped",[1581,1605,1609]],[[64860,64860],"mapped",[1587,1581,1580]],[[64861,64861],"mapped",[1587,1580,1581]],[[64862,64862],"mapped",[1587,1580,1609]],[[64863,64864],"mapped",[1587,1605,1581]],[[64865,64865],"mapped",[1587,1605,1580]],[[64866,64867],"mapped",[1587,1605,1605]],[[64868,64869],"mapped",[1589,1581,1581]],[[64870,64870],"mapped",[1589,1605,1605]],[[64871,64872],"mapped",[1588,1581,1605]],[[64873,64873],"mapped",[1588,1580,1610]],[[64874,64875],"mapped",[1588,1605,1582]],[[64876,64877],"mapped",[1588,1605,1605]],[[64878,64878],"mapped",[1590,1581,1609]],[[64879,64880],"mapped",[1590,1582,1605]],[[64881,64882],"mapped",[1591,1605,1581]],[[64883,64883],"mapped",[1591,1605,1605]],[[64884,64884],"mapped",[1591,1605,1610]],[[64885,64885],"mapped",[1593,1580,1605]],[[64886,64887],"mapped",[1593,1605,1605]],[[64888,64888],"mapped",[1593,1605,1609]],[[64889,64889],"mapped",[1594,1605,1605]],[[64890,64890],"mapped",[1594,1605,1610]],[[64891,64891],"mapped",[1594,1605,1609]],[[64892,64893],"mapped",[1601,1582,1605]],[[64894,64894],"mapped",[1602,1605,1581]],[[64895,64895],"mapped",[1602,1605,1605]],[[64896,64896],"mapped",[1604,1581,1605]],[[64897,64897],"mapped",[1604,1581,1610]],[[64898,64898],"mapped",[1604,1581,1609]],[[64899,64900],"mapped",[1604,1580,1580]],[[64901,64902],"mapped",[1604,1582,1605]],[[64903,64904],"mapped",[1604,1605,1581]],[[64905,64905],"mapped",[1605,1581,1580]],[[64906,64906],"mapped",[1605,1581,1605]],[[64907,64907],"mapped",[1605,1581,1610]],[[64908,64908],"mapped",[1605,1580,1581]],[[64909,64909],"mapped",[1605,1580,1605]],[[64910,64910],"mapped",[1605,1582,1580]],[[64911,64911],"mapped",[1605,1582,1605]],[[64912,64913],"disallowed"],[[64914,64914],"mapped",[1605,1580,1582]],[[64915,64915],"mapped",[1607,1605,1580]],[[64916,64916],"mapped",[1607,1605,1605]],[[64917,64917],"mapped",[1606,1581,1605]],[[64918,64918],"mapped",[1606,1581,1609]],[[64919,64920],"mapped",[1606,1580,1605]],[[64921,64921],"mapped",[1606,1580,1609]],[[64922,64922],"mapped",[1606,1605,1610]],[[64923,64923],"mapped",[1606,1605,1609]],[[64924,64925],"mapped",[1610,1605,1605]],[[64926,64926],"mapped",[1576,1582,1610]],[[64927,64927],"mapped",[1578,1580,1610]],[[64928,64928],"mapped",[1578,1580,1609]],[[64929,64929],"mapped",[1578,1582,1610]],[[64930,64930],"mapped",[1578,1582,1609]],[[64931,64931],"mapped",[1578,1605,1610]],[[64932,64932],"mapped",[1578,1605,1609]],[[64933,64933],"mapped",[1580,1605,1610]],[[64934,64934],"mapped",[1580,1581,1609]],[[64935,64935],"mapped",[1580,1605,1609]],[[64936,64936],"mapped",[1587,1582,1609]],[[64937,64937],"mapped",[1589,1581,1610]],[[64938,64938],"mapped",[1588,1581,1610]],[[64939,64939],"mapped",[1590,1581,1610]],[[64940,64940],"mapped",[1604,1580,1610]],[[64941,64941],"mapped",[1604,1605,1610]],[[64942,64942],"mapped",[1610,1581,1610]],[[64943,64943],"mapped",[1610,1580,1610]],[[64944,64944],"mapped",[1610,1605,1610]],[[64945,64945],"mapped",[1605,1605,1610]],[[64946,64946],"mapped",[1602,1605,1610]],[[64947,64947],"mapped",[1606,1581,1610]],[[64948,64948],"mapped",[1602,1605,1581]],[[64949,64949],"mapped",[1604,1581,1605]],[[64950,64950],"mapped",[1593,1605,1610]],[[64951,64951],"mapped",[1603,1605,1610]],[[64952,64952],"mapped",[1606,1580,1581]],[[64953,64953],"mapped",[1605,1582,1610]],[[64954,64954],"mapped",[1604,1580,1605]],[[64955,64955],"mapped",[1603,1605,1605]],[[64956,64956],"mapped",[1604,1580,1605]],[[64957,64957],"mapped",[1606,1580,1581]],[[64958,64958],"mapped",[1580,1581,1610]],[[64959,64959],"mapped",[1581,1580,1610]],[[64960,64960],"mapped",[1605,1580,1610]],[[64961,64961],"mapped",[1601,1605,1610]],[[64962,64962],"mapped",[1576,1581,1610]],[[64963,64963],"mapped",[1603,1605,1605]],[[64964,64964],"mapped",[1593,1580,1605]],[[64965,64965],"mapped",[1589,1605,1605]],[[64966,64966],"mapped",[1587,1582,1610]],[[64967,64967],"mapped",[1606,1580,1610]],[[64968,64975],"disallowed"],[[64976,65007],"disallowed"],[[65008,65008],"mapped",[1589,1604,1746]],[[65009,65009],"mapped",[1602,1604,1746]],[[65010,65010],"mapped",[1575,1604,1604,1607]],[[65011,65011],"mapped",[1575,1603,1576,1585]],[[65012,65012],"mapped",[1605,1581,1605,1583]],[[65013,65013],"mapped",[1589,1604,1593,1605]],[[65014,65014],"mapped",[1585,1587,1608,1604]],[[65015,65015],"mapped",[1593,1604,1610,1607]],[[65016,65016],"mapped",[1608,1587,1604,1605]],[[65017,65017],"mapped",[1589,1604,1609]],[[65018,65018],"disallowed_STD3_mapped",[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605]],[[65019,65019],"disallowed_STD3_mapped",[1580,1604,32,1580,1604,1575,1604,1607]],[[65020,65020],"mapped",[1585,1740,1575,1604]],[[65021,65021],"valid",[],"NV8"],[[65022,65023],"disallowed"],[[65024,65039],"ignored"],[[65040,65040],"disallowed_STD3_mapped",[44]],[[65041,65041],"mapped",[12289]],[[65042,65042],"disallowed"],[[65043,65043],"disallowed_STD3_mapped",[58]],[[65044,65044],"disallowed_STD3_mapped",[59]],[[65045,65045],"disallowed_STD3_mapped",[33]],[[65046,65046],"disallowed_STD3_mapped",[63]],[[65047,65047],"mapped",[12310]],[[65048,65048],"mapped",[12311]],[[65049,65049],"disallowed"],[[65050,65055],"disallowed"],[[65056,65059],"valid"],[[65060,65062],"valid"],[[65063,65069],"valid"],[[65070,65071],"valid"],[[65072,65072],"disallowed"],[[65073,65073],"mapped",[8212]],[[65074,65074],"mapped",[8211]],[[65075,65076],"disallowed_STD3_mapped",[95]],[[65077,65077],"disallowed_STD3_mapped",[40]],[[65078,65078],"disallowed_STD3_mapped",[41]],[[65079,65079],"disallowed_STD3_mapped",[123]],[[65080,65080],"disallowed_STD3_mapped",[125]],[[65081,65081],"mapped",[12308]],[[65082,65082],"mapped",[12309]],[[65083,65083],"mapped",[12304]],[[65084,65084],"mapped",[12305]],[[65085,65085],"mapped",[12298]],[[65086,65086],"mapped",[12299]],[[65087,65087],"mapped",[12296]],[[65088,65088],"mapped",[12297]],[[65089,65089],"mapped",[12300]],[[65090,65090],"mapped",[12301]],[[65091,65091],"mapped",[12302]],[[65092,65092],"mapped",[12303]],[[65093,65094],"valid",[],"NV8"],[[65095,65095],"disallowed_STD3_mapped",[91]],[[65096,65096],"disallowed_STD3_mapped",[93]],[[65097,65100],"disallowed_STD3_mapped",[32,773]],[[65101,65103],"disallowed_STD3_mapped",[95]],[[65104,65104],"disallowed_STD3_mapped",[44]],[[65105,65105],"mapped",[12289]],[[65106,65106],"disallowed"],[[65107,65107],"disallowed"],[[65108,65108],"disallowed_STD3_mapped",[59]],[[65109,65109],"disallowed_STD3_mapped",[58]],[[65110,65110],"disallowed_STD3_mapped",[63]],[[65111,65111],"disallowed_STD3_mapped",[33]],[[65112,65112],"mapped",[8212]],[[65113,65113],"disallowed_STD3_mapped",[40]],[[65114,65114],"disallowed_STD3_mapped",[41]],[[65115,65115],"disallowed_STD3_mapped",[123]],[[65116,65116],"disallowed_STD3_mapped",[125]],[[65117,65117],"mapped",[12308]],[[65118,65118],"mapped",[12309]],[[65119,65119],"disallowed_STD3_mapped",[35]],[[65120,65120],"disallowed_STD3_mapped",[38]],[[65121,65121],"disallowed_STD3_mapped",[42]],[[65122,65122],"disallowed_STD3_mapped",[43]],[[65123,65123],"mapped",[45]],[[65124,65124],"disallowed_STD3_mapped",[60]],[[65125,65125],"disallowed_STD3_mapped",[62]],[[65126,65126],"disallowed_STD3_mapped",[61]],[[65127,65127],"disallowed"],[[65128,65128],"disallowed_STD3_mapped",[92]],[[65129,65129],"disallowed_STD3_mapped",[36]],[[65130,65130],"disallowed_STD3_mapped",[37]],[[65131,65131],"disallowed_STD3_mapped",[64]],[[65132,65135],"disallowed"],[[65136,65136],"disallowed_STD3_mapped",[32,1611]],[[65137,65137],"mapped",[1600,1611]],[[65138,65138],"disallowed_STD3_mapped",[32,1612]],[[65139,65139],"valid"],[[65140,65140],"disallowed_STD3_mapped",[32,1613]],[[65141,65141],"disallowed"],[[65142,65142],"disallowed_STD3_mapped",[32,1614]],[[65143,65143],"mapped",[1600,1614]],[[65144,65144],"disallowed_STD3_mapped",[32,1615]],[[65145,65145],"mapped",[1600,1615]],[[65146,65146],"disallowed_STD3_mapped",[32,1616]],[[65147,65147],"mapped",[1600,1616]],[[65148,65148],"disallowed_STD3_mapped",[32,1617]],[[65149,65149],"mapped",[1600,1617]],[[65150,65150],"disallowed_STD3_mapped",[32,1618]],[[65151,65151],"mapped",[1600,1618]],[[65152,65152],"mapped",[1569]],[[65153,65154],"mapped",[1570]],[[65155,65156],"mapped",[1571]],[[65157,65158],"mapped",[1572]],[[65159,65160],"mapped",[1573]],[[65161,65164],"mapped",[1574]],[[65165,65166],"mapped",[1575]],[[65167,65170],"mapped",[1576]],[[65171,65172],"mapped",[1577]],[[65173,65176],"mapped",[1578]],[[65177,65180],"mapped",[1579]],[[65181,65184],"mapped",[1580]],[[65185,65188],"mapped",[1581]],[[65189,65192],"mapped",[1582]],[[65193,65194],"mapped",[1583]],[[65195,65196],"mapped",[1584]],[[65197,65198],"mapped",[1585]],[[65199,65200],"mapped",[1586]],[[65201,65204],"mapped",[1587]],[[65205,65208],"mapped",[1588]],[[65209,65212],"mapped",[1589]],[[65213,65216],"mapped",[1590]],[[65217,65220],"mapped",[1591]],[[65221,65224],"mapped",[1592]],[[65225,65228],"mapped",[1593]],[[65229,65232],"mapped",[1594]],[[65233,65236],"mapped",[1601]],[[65237,65240],"mapped",[1602]],[[65241,65244],"mapped",[1603]],[[65245,65248],"mapped",[1604]],[[65249,65252],"mapped",[1605]],[[65253,65256],"mapped",[1606]],[[65257,65260],"mapped",[1607]],[[65261,65262],"mapped",[1608]],[[65263,65264],"mapped",[1609]],[[65265,65268],"mapped",[1610]],[[65269,65270],"mapped",[1604,1570]],[[65271,65272],"mapped",[1604,1571]],[[65273,65274],"mapped",[1604,1573]],[[65275,65276],"mapped",[1604,1575]],[[65277,65278],"disallowed"],[[65279,65279],"ignored"],[[65280,65280],"disallowed"],[[65281,65281],"disallowed_STD3_mapped",[33]],[[65282,65282],"disallowed_STD3_mapped",[34]],[[65283,65283],"disallowed_STD3_mapped",[35]],[[65284,65284],"disallowed_STD3_mapped",[36]],[[65285,65285],"disallowed_STD3_mapped",[37]],[[65286,65286],"disallowed_STD3_mapped",[38]],[[65287,65287],"disallowed_STD3_mapped",[39]],[[65288,65288],"disallowed_STD3_mapped",[40]],[[65289,65289],"disallowed_STD3_mapped",[41]],[[65290,65290],"disallowed_STD3_mapped",[42]],[[65291,65291],"disallowed_STD3_mapped",[43]],[[65292,65292],"disallowed_STD3_mapped",[44]],[[65293,65293],"mapped",[45]],[[65294,65294],"mapped",[46]],[[65295,65295],"disallowed_STD3_mapped",[47]],[[65296,65296],"mapped",[48]],[[65297,65297],"mapped",[49]],[[65298,65298],"mapped",[50]],[[65299,65299],"mapped",[51]],[[65300,65300],"mapped",[52]],[[65301,65301],"mapped",[53]],[[65302,65302],"mapped",[54]],[[65303,65303],"mapped",[55]],[[65304,65304],"mapped",[56]],[[65305,65305],"mapped",[57]],[[65306,65306],"disallowed_STD3_mapped",[58]],[[65307,65307],"disallowed_STD3_mapped",[59]],[[65308,65308],"disallowed_STD3_mapped",[60]],[[65309,65309],"disallowed_STD3_mapped",[61]],[[65310,65310],"disallowed_STD3_mapped",[62]],[[65311,65311],"disallowed_STD3_mapped",[63]],[[65312,65312],"disallowed_STD3_mapped",[64]],[[65313,65313],"mapped",[97]],[[65314,65314],"mapped",[98]],[[65315,65315],"mapped",[99]],[[65316,65316],"mapped",[100]],[[65317,65317],"mapped",[101]],[[65318,65318],"mapped",[102]],[[65319,65319],"mapped",[103]],[[65320,65320],"mapped",[104]],[[65321,65321],"mapped",[105]],[[65322,65322],"mapped",[106]],[[65323,65323],"mapped",[107]],[[65324,65324],"mapped",[108]],[[65325,65325],"mapped",[109]],[[65326,65326],"mapped",[110]],[[65327,65327],"mapped",[111]],[[65328,65328],"mapped",[112]],[[65329,65329],"mapped",[113]],[[65330,65330],"mapped",[114]],[[65331,65331],"mapped",[115]],[[65332,65332],"mapped",[116]],[[65333,65333],"mapped",[117]],[[65334,65334],"mapped",[118]],[[65335,65335],"mapped",[119]],[[65336,65336],"mapped",[120]],[[65337,65337],"mapped",[121]],[[65338,65338],"mapped",[122]],[[65339,65339],"disallowed_STD3_mapped",[91]],[[65340,65340],"disallowed_STD3_mapped",[92]],[[65341,65341],"disallowed_STD3_mapped",[93]],[[65342,65342],"disallowed_STD3_mapped",[94]],[[65343,65343],"disallowed_STD3_mapped",[95]],[[65344,65344],"disallowed_STD3_mapped",[96]],[[65345,65345],"mapped",[97]],[[65346,65346],"mapped",[98]],[[65347,65347],"mapped",[99]],[[65348,65348],"mapped",[100]],[[65349,65349],"mapped",[101]],[[65350,65350],"mapped",[102]],[[65351,65351],"mapped",[103]],[[65352,65352],"mapped",[104]],[[65353,65353],"mapped",[105]],[[65354,65354],"mapped",[106]],[[65355,65355],"mapped",[107]],[[65356,65356],"mapped",[108]],[[65357,65357],"mapped",[109]],[[65358,65358],"mapped",[110]],[[65359,65359],"mapped",[111]],[[65360,65360],"mapped",[112]],[[65361,65361],"mapped",[113]],[[65362,65362],"mapped",[114]],[[65363,65363],"mapped",[115]],[[65364,65364],"mapped",[116]],[[65365,65365],"mapped",[117]],[[65366,65366],"mapped",[118]],[[65367,65367],"mapped",[119]],[[65368,65368],"mapped",[120]],[[65369,65369],"mapped",[121]],[[65370,65370],"mapped",[122]],[[65371,65371],"disallowed_STD3_mapped",[123]],[[65372,65372],"disallowed_STD3_mapped",[124]],[[65373,65373],"disallowed_STD3_mapped",[125]],[[65374,65374],"disallowed_STD3_mapped",[126]],[[65375,65375],"mapped",[10629]],[[65376,65376],"mapped",[10630]],[[65377,65377],"mapped",[46]],[[65378,65378],"mapped",[12300]],[[65379,65379],"mapped",[12301]],[[65380,65380],"mapped",[12289]],[[65381,65381],"mapped",[12539]],[[65382,65382],"mapped",[12530]],[[65383,65383],"mapped",[12449]],[[65384,65384],"mapped",[12451]],[[65385,65385],"mapped",[12453]],[[65386,65386],"mapped",[12455]],[[65387,65387],"mapped",[12457]],[[65388,65388],"mapped",[12515]],[[65389,65389],"mapped",[12517]],[[65390,65390],"mapped",[12519]],[[65391,65391],"mapped",[12483]],[[65392,65392],"mapped",[12540]],[[65393,65393],"mapped",[12450]],[[65394,65394],"mapped",[12452]],[[65395,65395],"mapped",[12454]],[[65396,65396],"mapped",[12456]],[[65397,65397],"mapped",[12458]],[[65398,65398],"mapped",[12459]],[[65399,65399],"mapped",[12461]],[[65400,65400],"mapped",[12463]],[[65401,65401],"mapped",[12465]],[[65402,65402],"mapped",[12467]],[[65403,65403],"mapped",[12469]],[[65404,65404],"mapped",[12471]],[[65405,65405],"mapped",[12473]],[[65406,65406],"mapped",[12475]],[[65407,65407],"mapped",[12477]],[[65408,65408],"mapped",[12479]],[[65409,65409],"mapped",[12481]],[[65410,65410],"mapped",[12484]],[[65411,65411],"mapped",[12486]],[[65412,65412],"mapped",[12488]],[[65413,65413],"mapped",[12490]],[[65414,65414],"mapped",[12491]],[[65415,65415],"mapped",[12492]],[[65416,65416],"mapped",[12493]],[[65417,65417],"mapped",[12494]],[[65418,65418],"mapped",[12495]],[[65419,65419],"mapped",[12498]],[[65420,65420],"mapped",[12501]],[[65421,65421],"mapped",[12504]],[[65422,65422],"mapped",[12507]],[[65423,65423],"mapped",[12510]],[[65424,65424],"mapped",[12511]],[[65425,65425],"mapped",[12512]],[[65426,65426],"mapped",[12513]],[[65427,65427],"mapped",[12514]],[[65428,65428],"mapped",[12516]],[[65429,65429],"mapped",[12518]],[[65430,65430],"mapped",[12520]],[[65431,65431],"mapped",[12521]],[[65432,65432],"mapped",[12522]],[[65433,65433],"mapped",[12523]],[[65434,65434],"mapped",[12524]],[[65435,65435],"mapped",[12525]],[[65436,65436],"mapped",[12527]],[[65437,65437],"mapped",[12531]],[[65438,65438],"mapped",[12441]],[[65439,65439],"mapped",[12442]],[[65440,65440],"disallowed"],[[65441,65441],"mapped",[4352]],[[65442,65442],"mapped",[4353]],[[65443,65443],"mapped",[4522]],[[65444,65444],"mapped",[4354]],[[65445,65445],"mapped",[4524]],[[65446,65446],"mapped",[4525]],[[65447,65447],"mapped",[4355]],[[65448,65448],"mapped",[4356]],[[65449,65449],"mapped",[4357]],[[65450,65450],"mapped",[4528]],[[65451,65451],"mapped",[4529]],[[65452,65452],"mapped",[4530]],[[65453,65453],"mapped",[4531]],[[65454,65454],"mapped",[4532]],[[65455,65455],"mapped",[4533]],[[65456,65456],"mapped",[4378]],[[65457,65457],"mapped",[4358]],[[65458,65458],"mapped",[4359]],[[65459,65459],"mapped",[4360]],[[65460,65460],"mapped",[4385]],[[65461,65461],"mapped",[4361]],[[65462,65462],"mapped",[4362]],[[65463,65463],"mapped",[4363]],[[65464,65464],"mapped",[4364]],[[65465,65465],"mapped",[4365]],[[65466,65466],"mapped",[4366]],[[65467,65467],"mapped",[4367]],[[65468,65468],"mapped",[4368]],[[65469,65469],"mapped",[4369]],[[65470,65470],"mapped",[4370]],[[65471,65473],"disallowed"],[[65474,65474],"mapped",[4449]],[[65475,65475],"mapped",[4450]],[[65476,65476],"mapped",[4451]],[[65477,65477],"mapped",[4452]],[[65478,65478],"mapped",[4453]],[[65479,65479],"mapped",[4454]],[[65480,65481],"disallowed"],[[65482,65482],"mapped",[4455]],[[65483,65483],"mapped",[4456]],[[65484,65484],"mapped",[4457]],[[65485,65485],"mapped",[4458]],[[65486,65486],"mapped",[4459]],[[65487,65487],"mapped",[4460]],[[65488,65489],"disallowed"],[[65490,65490],"mapped",[4461]],[[65491,65491],"mapped",[4462]],[[65492,65492],"mapped",[4463]],[[65493,65493],"mapped",[4464]],[[65494,65494],"mapped",[4465]],[[65495,65495],"mapped",[4466]],[[65496,65497],"disallowed"],[[65498,65498],"mapped",[4467]],[[65499,65499],"mapped",[4468]],[[65500,65500],"mapped",[4469]],[[65501,65503],"disallowed"],[[65504,65504],"mapped",[162]],[[65505,65505],"mapped",[163]],[[65506,65506],"mapped",[172]],[[65507,65507],"disallowed_STD3_mapped",[32,772]],[[65508,65508],"mapped",[166]],[[65509,65509],"mapped",[165]],[[65510,65510],"mapped",[8361]],[[65511,65511],"disallowed"],[[65512,65512],"mapped",[9474]],[[65513,65513],"mapped",[8592]],[[65514,65514],"mapped",[8593]],[[65515,65515],"mapped",[8594]],[[65516,65516],"mapped",[8595]],[[65517,65517],"mapped",[9632]],[[65518,65518],"mapped",[9675]],[[65519,65528],"disallowed"],[[65529,65531],"disallowed"],[[65532,65532],"disallowed"],[[65533,65533],"disallowed"],[[65534,65535],"disallowed"],[[65536,65547],"valid"],[[65548,65548],"disallowed"],[[65549,65574],"valid"],[[65575,65575],"disallowed"],[[65576,65594],"valid"],[[65595,65595],"disallowed"],[[65596,65597],"valid"],[[65598,65598],"disallowed"],[[65599,65613],"valid"],[[65614,65615],"disallowed"],[[65616,65629],"valid"],[[65630,65663],"disallowed"],[[65664,65786],"valid"],[[65787,65791],"disallowed"],[[65792,65794],"valid",[],"NV8"],[[65795,65798],"disallowed"],[[65799,65843],"valid",[],"NV8"],[[65844,65846],"disallowed"],[[65847,65855],"valid",[],"NV8"],[[65856,65930],"valid",[],"NV8"],[[65931,65932],"valid",[],"NV8"],[[65933,65935],"disallowed"],[[65936,65947],"valid",[],"NV8"],[[65948,65951],"disallowed"],[[65952,65952],"valid",[],"NV8"],[[65953,65999],"disallowed"],[[66e3,66044],"valid",[],"NV8"],[[66045,66045],"valid"],[[66046,66175],"disallowed"],[[66176,66204],"valid"],[[66205,66207],"disallowed"],[[66208,66256],"valid"],[[66257,66271],"disallowed"],[[66272,66272],"valid"],[[66273,66299],"valid",[],"NV8"],[[66300,66303],"disallowed"],[[66304,66334],"valid"],[[66335,66335],"valid"],[[66336,66339],"valid",[],"NV8"],[[66340,66351],"disallowed"],[[66352,66368],"valid"],[[66369,66369],"valid",[],"NV8"],[[66370,66377],"valid"],[[66378,66378],"valid",[],"NV8"],[[66379,66383],"disallowed"],[[66384,66426],"valid"],[[66427,66431],"disallowed"],[[66432,66461],"valid"],[[66462,66462],"disallowed"],[[66463,66463],"valid",[],"NV8"],[[66464,66499],"valid"],[[66500,66503],"disallowed"],[[66504,66511],"valid"],[[66512,66517],"valid",[],"NV8"],[[66518,66559],"disallowed"],[[66560,66560],"mapped",[66600]],[[66561,66561],"mapped",[66601]],[[66562,66562],"mapped",[66602]],[[66563,66563],"mapped",[66603]],[[66564,66564],"mapped",[66604]],[[66565,66565],"mapped",[66605]],[[66566,66566],"mapped",[66606]],[[66567,66567],"mapped",[66607]],[[66568,66568],"mapped",[66608]],[[66569,66569],"mapped",[66609]],[[66570,66570],"mapped",[66610]],[[66571,66571],"mapped",[66611]],[[66572,66572],"mapped",[66612]],[[66573,66573],"mapped",[66613]],[[66574,66574],"mapped",[66614]],[[66575,66575],"mapped",[66615]],[[66576,66576],"mapped",[66616]],[[66577,66577],"mapped",[66617]],[[66578,66578],"mapped",[66618]],[[66579,66579],"mapped",[66619]],[[66580,66580],"mapped",[66620]],[[66581,66581],"mapped",[66621]],[[66582,66582],"mapped",[66622]],[[66583,66583],"mapped",[66623]],[[66584,66584],"mapped",[66624]],[[66585,66585],"mapped",[66625]],[[66586,66586],"mapped",[66626]],[[66587,66587],"mapped",[66627]],[[66588,66588],"mapped",[66628]],[[66589,66589],"mapped",[66629]],[[66590,66590],"mapped",[66630]],[[66591,66591],"mapped",[66631]],[[66592,66592],"mapped",[66632]],[[66593,66593],"mapped",[66633]],[[66594,66594],"mapped",[66634]],[[66595,66595],"mapped",[66635]],[[66596,66596],"mapped",[66636]],[[66597,66597],"mapped",[66637]],[[66598,66598],"mapped",[66638]],[[66599,66599],"mapped",[66639]],[[66600,66637],"valid"],[[66638,66717],"valid"],[[66718,66719],"disallowed"],[[66720,66729],"valid"],[[66730,66815],"disallowed"],[[66816,66855],"valid"],[[66856,66863],"disallowed"],[[66864,66915],"valid"],[[66916,66926],"disallowed"],[[66927,66927],"valid",[],"NV8"],[[66928,67071],"disallowed"],[[67072,67382],"valid"],[[67383,67391],"disallowed"],[[67392,67413],"valid"],[[67414,67423],"disallowed"],[[67424,67431],"valid"],[[67432,67583],"disallowed"],[[67584,67589],"valid"],[[67590,67591],"disallowed"],[[67592,67592],"valid"],[[67593,67593],"disallowed"],[[67594,67637],"valid"],[[67638,67638],"disallowed"],[[67639,67640],"valid"],[[67641,67643],"disallowed"],[[67644,67644],"valid"],[[67645,67646],"disallowed"],[[67647,67647],"valid"],[[67648,67669],"valid"],[[67670,67670],"disallowed"],[[67671,67679],"valid",[],"NV8"],[[67680,67702],"valid"],[[67703,67711],"valid",[],"NV8"],[[67712,67742],"valid"],[[67743,67750],"disallowed"],[[67751,67759],"valid",[],"NV8"],[[67760,67807],"disallowed"],[[67808,67826],"valid"],[[67827,67827],"disallowed"],[[67828,67829],"valid"],[[67830,67834],"disallowed"],[[67835,67839],"valid",[],"NV8"],[[67840,67861],"valid"],[[67862,67865],"valid",[],"NV8"],[[67866,67867],"valid",[],"NV8"],[[67868,67870],"disallowed"],[[67871,67871],"valid",[],"NV8"],[[67872,67897],"valid"],[[67898,67902],"disallowed"],[[67903,67903],"valid",[],"NV8"],[[67904,67967],"disallowed"],[[67968,68023],"valid"],[[68024,68027],"disallowed"],[[68028,68029],"valid",[],"NV8"],[[68030,68031],"valid"],[[68032,68047],"valid",[],"NV8"],[[68048,68049],"disallowed"],[[68050,68095],"valid",[],"NV8"],[[68096,68099],"valid"],[[68100,68100],"disallowed"],[[68101,68102],"valid"],[[68103,68107],"disallowed"],[[68108,68115],"valid"],[[68116,68116],"disallowed"],[[68117,68119],"valid"],[[68120,68120],"disallowed"],[[68121,68147],"valid"],[[68148,68151],"disallowed"],[[68152,68154],"valid"],[[68155,68158],"disallowed"],[[68159,68159],"valid"],[[68160,68167],"valid",[],"NV8"],[[68168,68175],"disallowed"],[[68176,68184],"valid",[],"NV8"],[[68185,68191],"disallowed"],[[68192,68220],"valid"],[[68221,68223],"valid",[],"NV8"],[[68224,68252],"valid"],[[68253,68255],"valid",[],"NV8"],[[68256,68287],"disallowed"],[[68288,68295],"valid"],[[68296,68296],"valid",[],"NV8"],[[68297,68326],"valid"],[[68327,68330],"disallowed"],[[68331,68342],"valid",[],"NV8"],[[68343,68351],"disallowed"],[[68352,68405],"valid"],[[68406,68408],"disallowed"],[[68409,68415],"valid",[],"NV8"],[[68416,68437],"valid"],[[68438,68439],"disallowed"],[[68440,68447],"valid",[],"NV8"],[[68448,68466],"valid"],[[68467,68471],"disallowed"],[[68472,68479],"valid",[],"NV8"],[[68480,68497],"valid"],[[68498,68504],"disallowed"],[[68505,68508],"valid",[],"NV8"],[[68509,68520],"disallowed"],[[68521,68527],"valid",[],"NV8"],[[68528,68607],"disallowed"],[[68608,68680],"valid"],[[68681,68735],"disallowed"],[[68736,68736],"mapped",[68800]],[[68737,68737],"mapped",[68801]],[[68738,68738],"mapped",[68802]],[[68739,68739],"mapped",[68803]],[[68740,68740],"mapped",[68804]],[[68741,68741],"mapped",[68805]],[[68742,68742],"mapped",[68806]],[[68743,68743],"mapped",[68807]],[[68744,68744],"mapped",[68808]],[[68745,68745],"mapped",[68809]],[[68746,68746],"mapped",[68810]],[[68747,68747],"mapped",[68811]],[[68748,68748],"mapped",[68812]],[[68749,68749],"mapped",[68813]],[[68750,68750],"mapped",[68814]],[[68751,68751],"mapped",[68815]],[[68752,68752],"mapped",[68816]],[[68753,68753],"mapped",[68817]],[[68754,68754],"mapped",[68818]],[[68755,68755],"mapped",[68819]],[[68756,68756],"mapped",[68820]],[[68757,68757],"mapped",[68821]],[[68758,68758],"mapped",[68822]],[[68759,68759],"mapped",[68823]],[[68760,68760],"mapped",[68824]],[[68761,68761],"mapped",[68825]],[[68762,68762],"mapped",[68826]],[[68763,68763],"mapped",[68827]],[[68764,68764],"mapped",[68828]],[[68765,68765],"mapped",[68829]],[[68766,68766],"mapped",[68830]],[[68767,68767],"mapped",[68831]],[[68768,68768],"mapped",[68832]],[[68769,68769],"mapped",[68833]],[[68770,68770],"mapped",[68834]],[[68771,68771],"mapped",[68835]],[[68772,68772],"mapped",[68836]],[[68773,68773],"mapped",[68837]],[[68774,68774],"mapped",[68838]],[[68775,68775],"mapped",[68839]],[[68776,68776],"mapped",[68840]],[[68777,68777],"mapped",[68841]],[[68778,68778],"mapped",[68842]],[[68779,68779],"mapped",[68843]],[[68780,68780],"mapped",[68844]],[[68781,68781],"mapped",[68845]],[[68782,68782],"mapped",[68846]],[[68783,68783],"mapped",[68847]],[[68784,68784],"mapped",[68848]],[[68785,68785],"mapped",[68849]],[[68786,68786],"mapped",[68850]],[[68787,68799],"disallowed"],[[68800,68850],"valid"],[[68851,68857],"disallowed"],[[68858,68863],"valid",[],"NV8"],[[68864,69215],"disallowed"],[[69216,69246],"valid",[],"NV8"],[[69247,69631],"disallowed"],[[69632,69702],"valid"],[[69703,69709],"valid",[],"NV8"],[[69710,69713],"disallowed"],[[69714,69733],"valid",[],"NV8"],[[69734,69743],"valid"],[[69744,69758],"disallowed"],[[69759,69759],"valid"],[[69760,69818],"valid"],[[69819,69820],"valid",[],"NV8"],[[69821,69821],"disallowed"],[[69822,69825],"valid",[],"NV8"],[[69826,69839],"disallowed"],[[69840,69864],"valid"],[[69865,69871],"disallowed"],[[69872,69881],"valid"],[[69882,69887],"disallowed"],[[69888,69940],"valid"],[[69941,69941],"disallowed"],[[69942,69951],"valid"],[[69952,69955],"valid",[],"NV8"],[[69956,69967],"disallowed"],[[69968,70003],"valid"],[[70004,70005],"valid",[],"NV8"],[[70006,70006],"valid"],[[70007,70015],"disallowed"],[[70016,70084],"valid"],[[70085,70088],"valid",[],"NV8"],[[70089,70089],"valid",[],"NV8"],[[70090,70092],"valid"],[[70093,70093],"valid",[],"NV8"],[[70094,70095],"disallowed"],[[70096,70105],"valid"],[[70106,70106],"valid"],[[70107,70107],"valid",[],"NV8"],[[70108,70108],"valid"],[[70109,70111],"valid",[],"NV8"],[[70112,70112],"disallowed"],[[70113,70132],"valid",[],"NV8"],[[70133,70143],"disallowed"],[[70144,70161],"valid"],[[70162,70162],"disallowed"],[[70163,70199],"valid"],[[70200,70205],"valid",[],"NV8"],[[70206,70271],"disallowed"],[[70272,70278],"valid"],[[70279,70279],"disallowed"],[[70280,70280],"valid"],[[70281,70281],"disallowed"],[[70282,70285],"valid"],[[70286,70286],"disallowed"],[[70287,70301],"valid"],[[70302,70302],"disallowed"],[[70303,70312],"valid"],[[70313,70313],"valid",[],"NV8"],[[70314,70319],"disallowed"],[[70320,70378],"valid"],[[70379,70383],"disallowed"],[[70384,70393],"valid"],[[70394,70399],"disallowed"],[[70400,70400],"valid"],[[70401,70403],"valid"],[[70404,70404],"disallowed"],[[70405,70412],"valid"],[[70413,70414],"disallowed"],[[70415,70416],"valid"],[[70417,70418],"disallowed"],[[70419,70440],"valid"],[[70441,70441],"disallowed"],[[70442,70448],"valid"],[[70449,70449],"disallowed"],[[70450,70451],"valid"],[[70452,70452],"disallowed"],[[70453,70457],"valid"],[[70458,70459],"disallowed"],[[70460,70468],"valid"],[[70469,70470],"disallowed"],[[70471,70472],"valid"],[[70473,70474],"disallowed"],[[70475,70477],"valid"],[[70478,70479],"disallowed"],[[70480,70480],"valid"],[[70481,70486],"disallowed"],[[70487,70487],"valid"],[[70488,70492],"disallowed"],[[70493,70499],"valid"],[[70500,70501],"disallowed"],[[70502,70508],"valid"],[[70509,70511],"disallowed"],[[70512,70516],"valid"],[[70517,70783],"disallowed"],[[70784,70853],"valid"],[[70854,70854],"valid",[],"NV8"],[[70855,70855],"valid"],[[70856,70863],"disallowed"],[[70864,70873],"valid"],[[70874,71039],"disallowed"],[[71040,71093],"valid"],[[71094,71095],"disallowed"],[[71096,71104],"valid"],[[71105,71113],"valid",[],"NV8"],[[71114,71127],"valid",[],"NV8"],[[71128,71133],"valid"],[[71134,71167],"disallowed"],[[71168,71232],"valid"],[[71233,71235],"valid",[],"NV8"],[[71236,71236],"valid"],[[71237,71247],"disallowed"],[[71248,71257],"valid"],[[71258,71295],"disallowed"],[[71296,71351],"valid"],[[71352,71359],"disallowed"],[[71360,71369],"valid"],[[71370,71423],"disallowed"],[[71424,71449],"valid"],[[71450,71452],"disallowed"],[[71453,71467],"valid"],[[71468,71471],"disallowed"],[[71472,71481],"valid"],[[71482,71487],"valid",[],"NV8"],[[71488,71839],"disallowed"],[[71840,71840],"mapped",[71872]],[[71841,71841],"mapped",[71873]],[[71842,71842],"mapped",[71874]],[[71843,71843],"mapped",[71875]],[[71844,71844],"mapped",[71876]],[[71845,71845],"mapped",[71877]],[[71846,71846],"mapped",[71878]],[[71847,71847],"mapped",[71879]],[[71848,71848],"mapped",[71880]],[[71849,71849],"mapped",[71881]],[[71850,71850],"mapped",[71882]],[[71851,71851],"mapped",[71883]],[[71852,71852],"mapped",[71884]],[[71853,71853],"mapped",[71885]],[[71854,71854],"mapped",[71886]],[[71855,71855],"mapped",[71887]],[[71856,71856],"mapped",[71888]],[[71857,71857],"mapped",[71889]],[[71858,71858],"mapped",[71890]],[[71859,71859],"mapped",[71891]],[[71860,71860],"mapped",[71892]],[[71861,71861],"mapped",[71893]],[[71862,71862],"mapped",[71894]],[[71863,71863],"mapped",[71895]],[[71864,71864],"mapped",[71896]],[[71865,71865],"mapped",[71897]],[[71866,71866],"mapped",[71898]],[[71867,71867],"mapped",[71899]],[[71868,71868],"mapped",[71900]],[[71869,71869],"mapped",[71901]],[[71870,71870],"mapped",[71902]],[[71871,71871],"mapped",[71903]],[[71872,71913],"valid"],[[71914,71922],"valid",[],"NV8"],[[71923,71934],"disallowed"],[[71935,71935],"valid"],[[71936,72383],"disallowed"],[[72384,72440],"valid"],[[72441,73727],"disallowed"],[[73728,74606],"valid"],[[74607,74648],"valid"],[[74649,74649],"valid"],[[74650,74751],"disallowed"],[[74752,74850],"valid",[],"NV8"],[[74851,74862],"valid",[],"NV8"],[[74863,74863],"disallowed"],[[74864,74867],"valid",[],"NV8"],[[74868,74868],"valid",[],"NV8"],[[74869,74879],"disallowed"],[[74880,75075],"valid"],[[75076,77823],"disallowed"],[[77824,78894],"valid"],[[78895,82943],"disallowed"],[[82944,83526],"valid"],[[83527,92159],"disallowed"],[[92160,92728],"valid"],[[92729,92735],"disallowed"],[[92736,92766],"valid"],[[92767,92767],"disallowed"],[[92768,92777],"valid"],[[92778,92781],"disallowed"],[[92782,92783],"valid",[],"NV8"],[[92784,92879],"disallowed"],[[92880,92909],"valid"],[[92910,92911],"disallowed"],[[92912,92916],"valid"],[[92917,92917],"valid",[],"NV8"],[[92918,92927],"disallowed"],[[92928,92982],"valid"],[[92983,92991],"valid",[],"NV8"],[[92992,92995],"valid"],[[92996,92997],"valid",[],"NV8"],[[92998,93007],"disallowed"],[[93008,93017],"valid"],[[93018,93018],"disallowed"],[[93019,93025],"valid",[],"NV8"],[[93026,93026],"disallowed"],[[93027,93047],"valid"],[[93048,93052],"disallowed"],[[93053,93071],"valid"],[[93072,93951],"disallowed"],[[93952,94020],"valid"],[[94021,94031],"disallowed"],[[94032,94078],"valid"],[[94079,94094],"disallowed"],[[94095,94111],"valid"],[[94112,110591],"disallowed"],[[110592,110593],"valid"],[[110594,113663],"disallowed"],[[113664,113770],"valid"],[[113771,113775],"disallowed"],[[113776,113788],"valid"],[[113789,113791],"disallowed"],[[113792,113800],"valid"],[[113801,113807],"disallowed"],[[113808,113817],"valid"],[[113818,113819],"disallowed"],[[113820,113820],"valid",[],"NV8"],[[113821,113822],"valid"],[[113823,113823],"valid",[],"NV8"],[[113824,113827],"ignored"],[[113828,118783],"disallowed"],[[118784,119029],"valid",[],"NV8"],[[119030,119039],"disallowed"],[[119040,119078],"valid",[],"NV8"],[[119079,119080],"disallowed"],[[119081,119081],"valid",[],"NV8"],[[119082,119133],"valid",[],"NV8"],[[119134,119134],"mapped",[119127,119141]],[[119135,119135],"mapped",[119128,119141]],[[119136,119136],"mapped",[119128,119141,119150]],[[119137,119137],"mapped",[119128,119141,119151]],[[119138,119138],"mapped",[119128,119141,119152]],[[119139,119139],"mapped",[119128,119141,119153]],[[119140,119140],"mapped",[119128,119141,119154]],[[119141,119154],"valid",[],"NV8"],[[119155,119162],"disallowed"],[[119163,119226],"valid",[],"NV8"],[[119227,119227],"mapped",[119225,119141]],[[119228,119228],"mapped",[119226,119141]],[[119229,119229],"mapped",[119225,119141,119150]],[[119230,119230],"mapped",[119226,119141,119150]],[[119231,119231],"mapped",[119225,119141,119151]],[[119232,119232],"mapped",[119226,119141,119151]],[[119233,119261],"valid",[],"NV8"],[[119262,119272],"valid",[],"NV8"],[[119273,119295],"disallowed"],[[119296,119365],"valid",[],"NV8"],[[119366,119551],"disallowed"],[[119552,119638],"valid",[],"NV8"],[[119639,119647],"disallowed"],[[119648,119665],"valid",[],"NV8"],[[119666,119807],"disallowed"],[[119808,119808],"mapped",[97]],[[119809,119809],"mapped",[98]],[[119810,119810],"mapped",[99]],[[119811,119811],"mapped",[100]],[[119812,119812],"mapped",[101]],[[119813,119813],"mapped",[102]],[[119814,119814],"mapped",[103]],[[119815,119815],"mapped",[104]],[[119816,119816],"mapped",[105]],[[119817,119817],"mapped",[106]],[[119818,119818],"mapped",[107]],[[119819,119819],"mapped",[108]],[[119820,119820],"mapped",[109]],[[119821,119821],"mapped",[110]],[[119822,119822],"mapped",[111]],[[119823,119823],"mapped",[112]],[[119824,119824],"mapped",[113]],[[119825,119825],"mapped",[114]],[[119826,119826],"mapped",[115]],[[119827,119827],"mapped",[116]],[[119828,119828],"mapped",[117]],[[119829,119829],"mapped",[118]],[[119830,119830],"mapped",[119]],[[119831,119831],"mapped",[120]],[[119832,119832],"mapped",[121]],[[119833,119833],"mapped",[122]],[[119834,119834],"mapped",[97]],[[119835,119835],"mapped",[98]],[[119836,119836],"mapped",[99]],[[119837,119837],"mapped",[100]],[[119838,119838],"mapped",[101]],[[119839,119839],"mapped",[102]],[[119840,119840],"mapped",[103]],[[119841,119841],"mapped",[104]],[[119842,119842],"mapped",[105]],[[119843,119843],"mapped",[106]],[[119844,119844],"mapped",[107]],[[119845,119845],"mapped",[108]],[[119846,119846],"mapped",[109]],[[119847,119847],"mapped",[110]],[[119848,119848],"mapped",[111]],[[119849,119849],"mapped",[112]],[[119850,119850],"mapped",[113]],[[119851,119851],"mapped",[114]],[[119852,119852],"mapped",[115]],[[119853,119853],"mapped",[116]],[[119854,119854],"mapped",[117]],[[119855,119855],"mapped",[118]],[[119856,119856],"mapped",[119]],[[119857,119857],"mapped",[120]],[[119858,119858],"mapped",[121]],[[119859,119859],"mapped",[122]],[[119860,119860],"mapped",[97]],[[119861,119861],"mapped",[98]],[[119862,119862],"mapped",[99]],[[119863,119863],"mapped",[100]],[[119864,119864],"mapped",[101]],[[119865,119865],"mapped",[102]],[[119866,119866],"mapped",[103]],[[119867,119867],"mapped",[104]],[[119868,119868],"mapped",[105]],[[119869,119869],"mapped",[106]],[[119870,119870],"mapped",[107]],[[119871,119871],"mapped",[108]],[[119872,119872],"mapped",[109]],[[119873,119873],"mapped",[110]],[[119874,119874],"mapped",[111]],[[119875,119875],"mapped",[112]],[[119876,119876],"mapped",[113]],[[119877,119877],"mapped",[114]],[[119878,119878],"mapped",[115]],[[119879,119879],"mapped",[116]],[[119880,119880],"mapped",[117]],[[119881,119881],"mapped",[118]],[[119882,119882],"mapped",[119]],[[119883,119883],"mapped",[120]],[[119884,119884],"mapped",[121]],[[119885,119885],"mapped",[122]],[[119886,119886],"mapped",[97]],[[119887,119887],"mapped",[98]],[[119888,119888],"mapped",[99]],[[119889,119889],"mapped",[100]],[[119890,119890],"mapped",[101]],[[119891,119891],"mapped",[102]],[[119892,119892],"mapped",[103]],[[119893,119893],"disallowed"],[[119894,119894],"mapped",[105]],[[119895,119895],"mapped",[106]],[[119896,119896],"mapped",[107]],[[119897,119897],"mapped",[108]],[[119898,119898],"mapped",[109]],[[119899,119899],"mapped",[110]],[[119900,119900],"mapped",[111]],[[119901,119901],"mapped",[112]],[[119902,119902],"mapped",[113]],[[119903,119903],"mapped",[114]],[[119904,119904],"mapped",[115]],[[119905,119905],"mapped",[116]],[[119906,119906],"mapped",[117]],[[119907,119907],"mapped",[118]],[[119908,119908],"mapped",[119]],[[119909,119909],"mapped",[120]],[[119910,119910],"mapped",[121]],[[119911,119911],"mapped",[122]],[[119912,119912],"mapped",[97]],[[119913,119913],"mapped",[98]],[[119914,119914],"mapped",[99]],[[119915,119915],"mapped",[100]],[[119916,119916],"mapped",[101]],[[119917,119917],"mapped",[102]],[[119918,119918],"mapped",[103]],[[119919,119919],"mapped",[104]],[[119920,119920],"mapped",[105]],[[119921,119921],"mapped",[106]],[[119922,119922],"mapped",[107]],[[119923,119923],"mapped",[108]],[[119924,119924],"mapped",[109]],[[119925,119925],"mapped",[110]],[[119926,119926],"mapped",[111]],[[119927,119927],"mapped",[112]],[[119928,119928],"mapped",[113]],[[119929,119929],"mapped",[114]],[[119930,119930],"mapped",[115]],[[119931,119931],"mapped",[116]],[[119932,119932],"mapped",[117]],[[119933,119933],"mapped",[118]],[[119934,119934],"mapped",[119]],[[119935,119935],"mapped",[120]],[[119936,119936],"mapped",[121]],[[119937,119937],"mapped",[122]],[[119938,119938],"mapped",[97]],[[119939,119939],"mapped",[98]],[[119940,119940],"mapped",[99]],[[119941,119941],"mapped",[100]],[[119942,119942],"mapped",[101]],[[119943,119943],"mapped",[102]],[[119944,119944],"mapped",[103]],[[119945,119945],"mapped",[104]],[[119946,119946],"mapped",[105]],[[119947,119947],"mapped",[106]],[[119948,119948],"mapped",[107]],[[119949,119949],"mapped",[108]],[[119950,119950],"mapped",[109]],[[119951,119951],"mapped",[110]],[[119952,119952],"mapped",[111]],[[119953,119953],"mapped",[112]],[[119954,119954],"mapped",[113]],[[119955,119955],"mapped",[114]],[[119956,119956],"mapped",[115]],[[119957,119957],"mapped",[116]],[[119958,119958],"mapped",[117]],[[119959,119959],"mapped",[118]],[[119960,119960],"mapped",[119]],[[119961,119961],"mapped",[120]],[[119962,119962],"mapped",[121]],[[119963,119963],"mapped",[122]],[[119964,119964],"mapped",[97]],[[119965,119965],"disallowed"],[[119966,119966],"mapped",[99]],[[119967,119967],"mapped",[100]],[[119968,119969],"disallowed"],[[119970,119970],"mapped",[103]],[[119971,119972],"disallowed"],[[119973,119973],"mapped",[106]],[[119974,119974],"mapped",[107]],[[119975,119976],"disallowed"],[[119977,119977],"mapped",[110]],[[119978,119978],"mapped",[111]],[[119979,119979],"mapped",[112]],[[119980,119980],"mapped",[113]],[[119981,119981],"disallowed"],[[119982,119982],"mapped",[115]],[[119983,119983],"mapped",[116]],[[119984,119984],"mapped",[117]],[[119985,119985],"mapped",[118]],[[119986,119986],"mapped",[119]],[[119987,119987],"mapped",[120]],[[119988,119988],"mapped",[121]],[[119989,119989],"mapped",[122]],[[119990,119990],"mapped",[97]],[[119991,119991],"mapped",[98]],[[119992,119992],"mapped",[99]],[[119993,119993],"mapped",[100]],[[119994,119994],"disallowed"],[[119995,119995],"mapped",[102]],[[119996,119996],"disallowed"],[[119997,119997],"mapped",[104]],[[119998,119998],"mapped",[105]],[[119999,119999],"mapped",[106]],[[12e4,12e4],"mapped",[107]],[[120001,120001],"mapped",[108]],[[120002,120002],"mapped",[109]],[[120003,120003],"mapped",[110]],[[120004,120004],"disallowed"],[[120005,120005],"mapped",[112]],[[120006,120006],"mapped",[113]],[[120007,120007],"mapped",[114]],[[120008,120008],"mapped",[115]],[[120009,120009],"mapped",[116]],[[120010,120010],"mapped",[117]],[[120011,120011],"mapped",[118]],[[120012,120012],"mapped",[119]],[[120013,120013],"mapped",[120]],[[120014,120014],"mapped",[121]],[[120015,120015],"mapped",[122]],[[120016,120016],"mapped",[97]],[[120017,120017],"mapped",[98]],[[120018,120018],"mapped",[99]],[[120019,120019],"mapped",[100]],[[120020,120020],"mapped",[101]],[[120021,120021],"mapped",[102]],[[120022,120022],"mapped",[103]],[[120023,120023],"mapped",[104]],[[120024,120024],"mapped",[105]],[[120025,120025],"mapped",[106]],[[120026,120026],"mapped",[107]],[[120027,120027],"mapped",[108]],[[120028,120028],"mapped",[109]],[[120029,120029],"mapped",[110]],[[120030,120030],"mapped",[111]],[[120031,120031],"mapped",[112]],[[120032,120032],"mapped",[113]],[[120033,120033],"mapped",[114]],[[120034,120034],"mapped",[115]],[[120035,120035],"mapped",[116]],[[120036,120036],"mapped",[117]],[[120037,120037],"mapped",[118]],[[120038,120038],"mapped",[119]],[[120039,120039],"mapped",[120]],[[120040,120040],"mapped",[121]],[[120041,120041],"mapped",[122]],[[120042,120042],"mapped",[97]],[[120043,120043],"mapped",[98]],[[120044,120044],"mapped",[99]],[[120045,120045],"mapped",[100]],[[120046,120046],"mapped",[101]],[[120047,120047],"mapped",[102]],[[120048,120048],"mapped",[103]],[[120049,120049],"mapped",[104]],[[120050,120050],"mapped",[105]],[[120051,120051],"mapped",[106]],[[120052,120052],"mapped",[107]],[[120053,120053],"mapped",[108]],[[120054,120054],"mapped",[109]],[[120055,120055],"mapped",[110]],[[120056,120056],"mapped",[111]],[[120057,120057],"mapped",[112]],[[120058,120058],"mapped",[113]],[[120059,120059],"mapped",[114]],[[120060,120060],"mapped",[115]],[[120061,120061],"mapped",[116]],[[120062,120062],"mapped",[117]],[[120063,120063],"mapped",[118]],[[120064,120064],"mapped",[119]],[[120065,120065],"mapped",[120]],[[120066,120066],"mapped",[121]],[[120067,120067],"mapped",[122]],[[120068,120068],"mapped",[97]],[[120069,120069],"mapped",[98]],[[120070,120070],"disallowed"],[[120071,120071],"mapped",[100]],[[120072,120072],"mapped",[101]],[[120073,120073],"mapped",[102]],[[120074,120074],"mapped",[103]],[[120075,120076],"disallowed"],[[120077,120077],"mapped",[106]],[[120078,120078],"mapped",[107]],[[120079,120079],"mapped",[108]],[[120080,120080],"mapped",[109]],[[120081,120081],"mapped",[110]],[[120082,120082],"mapped",[111]],[[120083,120083],"mapped",[112]],[[120084,120084],"mapped",[113]],[[120085,120085],"disallowed"],[[120086,120086],"mapped",[115]],[[120087,120087],"mapped",[116]],[[120088,120088],"mapped",[117]],[[120089,120089],"mapped",[118]],[[120090,120090],"mapped",[119]],[[120091,120091],"mapped",[120]],[[120092,120092],"mapped",[121]],[[120093,120093],"disallowed"],[[120094,120094],"mapped",[97]],[[120095,120095],"mapped",[98]],[[120096,120096],"mapped",[99]],[[120097,120097],"mapped",[100]],[[120098,120098],"mapped",[101]],[[120099,120099],"mapped",[102]],[[120100,120100],"mapped",[103]],[[120101,120101],"mapped",[104]],[[120102,120102],"mapped",[105]],[[120103,120103],"mapped",[106]],[[120104,120104],"mapped",[107]],[[120105,120105],"mapped",[108]],[[120106,120106],"mapped",[109]],[[120107,120107],"mapped",[110]],[[120108,120108],"mapped",[111]],[[120109,120109],"mapped",[112]],[[120110,120110],"mapped",[113]],[[120111,120111],"mapped",[114]],[[120112,120112],"mapped",[115]],[[120113,120113],"mapped",[116]],[[120114,120114],"mapped",[117]],[[120115,120115],"mapped",[118]],[[120116,120116],"mapped",[119]],[[120117,120117],"mapped",[120]],[[120118,120118],"mapped",[121]],[[120119,120119],"mapped",[122]],[[120120,120120],"mapped",[97]],[[120121,120121],"mapped",[98]],[[120122,120122],"disallowed"],[[120123,120123],"mapped",[100]],[[120124,120124],"mapped",[101]],[[120125,120125],"mapped",[102]],[[120126,120126],"mapped",[103]],[[120127,120127],"disallowed"],[[120128,120128],"mapped",[105]],[[120129,120129],"mapped",[106]],[[120130,120130],"mapped",[107]],[[120131,120131],"mapped",[108]],[[120132,120132],"mapped",[109]],[[120133,120133],"disallowed"],[[120134,120134],"mapped",[111]],[[120135,120137],"disallowed"],[[120138,120138],"mapped",[115]],[[120139,120139],"mapped",[116]],[[120140,120140],"mapped",[117]],[[120141,120141],"mapped",[118]],[[120142,120142],"mapped",[119]],[[120143,120143],"mapped",[120]],[[120144,120144],"mapped",[121]],[[120145,120145],"disallowed"],[[120146,120146],"mapped",[97]],[[120147,120147],"mapped",[98]],[[120148,120148],"mapped",[99]],[[120149,120149],"mapped",[100]],[[120150,120150],"mapped",[101]],[[120151,120151],"mapped",[102]],[[120152,120152],"mapped",[103]],[[120153,120153],"mapped",[104]],[[120154,120154],"mapped",[105]],[[120155,120155],"mapped",[106]],[[120156,120156],"mapped",[107]],[[120157,120157],"mapped",[108]],[[120158,120158],"mapped",[109]],[[120159,120159],"mapped",[110]],[[120160,120160],"mapped",[111]],[[120161,120161],"mapped",[112]],[[120162,120162],"mapped",[113]],[[120163,120163],"mapped",[114]],[[120164,120164],"mapped",[115]],[[120165,120165],"mapped",[116]],[[120166,120166],"mapped",[117]],[[120167,120167],"mapped",[118]],[[120168,120168],"mapped",[119]],[[120169,120169],"mapped",[120]],[[120170,120170],"mapped",[121]],[[120171,120171],"mapped",[122]],[[120172,120172],"mapped",[97]],[[120173,120173],"mapped",[98]],[[120174,120174],"mapped",[99]],[[120175,120175],"mapped",[100]],[[120176,120176],"mapped",[101]],[[120177,120177],"mapped",[102]],[[120178,120178],"mapped",[103]],[[120179,120179],"mapped",[104]],[[120180,120180],"mapped",[105]],[[120181,120181],"mapped",[106]],[[120182,120182],"mapped",[107]],[[120183,120183],"mapped",[108]],[[120184,120184],"mapped",[109]],[[120185,120185],"mapped",[110]],[[120186,120186],"mapped",[111]],[[120187,120187],"mapped",[112]],[[120188,120188],"mapped",[113]],[[120189,120189],"mapped",[114]],[[120190,120190],"mapped",[115]],[[120191,120191],"mapped",[116]],[[120192,120192],"mapped",[117]],[[120193,120193],"mapped",[118]],[[120194,120194],"mapped",[119]],[[120195,120195],"mapped",[120]],[[120196,120196],"mapped",[121]],[[120197,120197],"mapped",[122]],[[120198,120198],"mapped",[97]],[[120199,120199],"mapped",[98]],[[120200,120200],"mapped",[99]],[[120201,120201],"mapped",[100]],[[120202,120202],"mapped",[101]],[[120203,120203],"mapped",[102]],[[120204,120204],"mapped",[103]],[[120205,120205],"mapped",[104]],[[120206,120206],"mapped",[105]],[[120207,120207],"mapped",[106]],[[120208,120208],"mapped",[107]],[[120209,120209],"mapped",[108]],[[120210,120210],"mapped",[109]],[[120211,120211],"mapped",[110]],[[120212,120212],"mapped",[111]],[[120213,120213],"mapped",[112]],[[120214,120214],"mapped",[113]],[[120215,120215],"mapped",[114]],[[120216,120216],"mapped",[115]],[[120217,120217],"mapped",[116]],[[120218,120218],"mapped",[117]],[[120219,120219],"mapped",[118]],[[120220,120220],"mapped",[119]],[[120221,120221],"mapped",[120]],[[120222,120222],"mapped",[121]],[[120223,120223],"mapped",[122]],[[120224,120224],"mapped",[97]],[[120225,120225],"mapped",[98]],[[120226,120226],"mapped",[99]],[[120227,120227],"mapped",[100]],[[120228,120228],"mapped",[101]],[[120229,120229],"mapped",[102]],[[120230,120230],"mapped",[103]],[[120231,120231],"mapped",[104]],[[120232,120232],"mapped",[105]],[[120233,120233],"mapped",[106]],[[120234,120234],"mapped",[107]],[[120235,120235],"mapped",[108]],[[120236,120236],"mapped",[109]],[[120237,120237],"mapped",[110]],[[120238,120238],"mapped",[111]],[[120239,120239],"mapped",[112]],[[120240,120240],"mapped",[113]],[[120241,120241],"mapped",[114]],[[120242,120242],"mapped",[115]],[[120243,120243],"mapped",[116]],[[120244,120244],"mapped",[117]],[[120245,120245],"mapped",[118]],[[120246,120246],"mapped",[119]],[[120247,120247],"mapped",[120]],[[120248,120248],"mapped",[121]],[[120249,120249],"mapped",[122]],[[120250,120250],"mapped",[97]],[[120251,120251],"mapped",[98]],[[120252,120252],"mapped",[99]],[[120253,120253],"mapped",[100]],[[120254,120254],"mapped",[101]],[[120255,120255],"mapped",[102]],[[120256,120256],"mapped",[103]],[[120257,120257],"mapped",[104]],[[120258,120258],"mapped",[105]],[[120259,120259],"mapped",[106]],[[120260,120260],"mapped",[107]],[[120261,120261],"mapped",[108]],[[120262,120262],"mapped",[109]],[[120263,120263],"mapped",[110]],[[120264,120264],"mapped",[111]],[[120265,120265],"mapped",[112]],[[120266,120266],"mapped",[113]],[[120267,120267],"mapped",[114]],[[120268,120268],"mapped",[115]],[[120269,120269],"mapped",[116]],[[120270,120270],"mapped",[117]],[[120271,120271],"mapped",[118]],[[120272,120272],"mapped",[119]],[[120273,120273],"mapped",[120]],[[120274,120274],"mapped",[121]],[[120275,120275],"mapped",[122]],[[120276,120276],"mapped",[97]],[[120277,120277],"mapped",[98]],[[120278,120278],"mapped",[99]],[[120279,120279],"mapped",[100]],[[120280,120280],"mapped",[101]],[[120281,120281],"mapped",[102]],[[120282,120282],"mapped",[103]],[[120283,120283],"mapped",[104]],[[120284,120284],"mapped",[105]],[[120285,120285],"mapped",[106]],[[120286,120286],"mapped",[107]],[[120287,120287],"mapped",[108]],[[120288,120288],"mapped",[109]],[[120289,120289],"mapped",[110]],[[120290,120290],"mapped",[111]],[[120291,120291],"mapped",[112]],[[120292,120292],"mapped",[113]],[[120293,120293],"mapped",[114]],[[120294,120294],"mapped",[115]],[[120295,120295],"mapped",[116]],[[120296,120296],"mapped",[117]],[[120297,120297],"mapped",[118]],[[120298,120298],"mapped",[119]],[[120299,120299],"mapped",[120]],[[120300,120300],"mapped",[121]],[[120301,120301],"mapped",[122]],[[120302,120302],"mapped",[97]],[[120303,120303],"mapped",[98]],[[120304,120304],"mapped",[99]],[[120305,120305],"mapped",[100]],[[120306,120306],"mapped",[101]],[[120307,120307],"mapped",[102]],[[120308,120308],"mapped",[103]],[[120309,120309],"mapped",[104]],[[120310,120310],"mapped",[105]],[[120311,120311],"mapped",[106]],[[120312,120312],"mapped",[107]],[[120313,120313],"mapped",[108]],[[120314,120314],"mapped",[109]],[[120315,120315],"mapped",[110]],[[120316,120316],"mapped",[111]],[[120317,120317],"mapped",[112]],[[120318,120318],"mapped",[113]],[[120319,120319],"mapped",[114]],[[120320,120320],"mapped",[115]],[[120321,120321],"mapped",[116]],[[120322,120322],"mapped",[117]],[[120323,120323],"mapped",[118]],[[120324,120324],"mapped",[119]],[[120325,120325],"mapped",[120]],[[120326,120326],"mapped",[121]],[[120327,120327],"mapped",[122]],[[120328,120328],"mapped",[97]],[[120329,120329],"mapped",[98]],[[120330,120330],"mapped",[99]],[[120331,120331],"mapped",[100]],[[120332,120332],"mapped",[101]],[[120333,120333],"mapped",[102]],[[120334,120334],"mapped",[103]],[[120335,120335],"mapped",[104]],[[120336,120336],"mapped",[105]],[[120337,120337],"mapped",[106]],[[120338,120338],"mapped",[107]],[[120339,120339],"mapped",[108]],[[120340,120340],"mapped",[109]],[[120341,120341],"mapped",[110]],[[120342,120342],"mapped",[111]],[[120343,120343],"mapped",[112]],[[120344,120344],"mapped",[113]],[[120345,120345],"mapped",[114]],[[120346,120346],"mapped",[115]],[[120347,120347],"mapped",[116]],[[120348,120348],"mapped",[117]],[[120349,120349],"mapped",[118]],[[120350,120350],"mapped",[119]],[[120351,120351],"mapped",[120]],[[120352,120352],"mapped",[121]],[[120353,120353],"mapped",[122]],[[120354,120354],"mapped",[97]],[[120355,120355],"mapped",[98]],[[120356,120356],"mapped",[99]],[[120357,120357],"mapped",[100]],[[120358,120358],"mapped",[101]],[[120359,120359],"mapped",[102]],[[120360,120360],"mapped",[103]],[[120361,120361],"mapped",[104]],[[120362,120362],"mapped",[105]],[[120363,120363],"mapped",[106]],[[120364,120364],"mapped",[107]],[[120365,120365],"mapped",[108]],[[120366,120366],"mapped",[109]],[[120367,120367],"mapped",[110]],[[120368,120368],"mapped",[111]],[[120369,120369],"mapped",[112]],[[120370,120370],"mapped",[113]],[[120371,120371],"mapped",[114]],[[120372,120372],"mapped",[115]],[[120373,120373],"mapped",[116]],[[120374,120374],"mapped",[117]],[[120375,120375],"mapped",[118]],[[120376,120376],"mapped",[119]],[[120377,120377],"mapped",[120]],[[120378,120378],"mapped",[121]],[[120379,120379],"mapped",[122]],[[120380,120380],"mapped",[97]],[[120381,120381],"mapped",[98]],[[120382,120382],"mapped",[99]],[[120383,120383],"mapped",[100]],[[120384,120384],"mapped",[101]],[[120385,120385],"mapped",[102]],[[120386,120386],"mapped",[103]],[[120387,120387],"mapped",[104]],[[120388,120388],"mapped",[105]],[[120389,120389],"mapped",[106]],[[120390,120390],"mapped",[107]],[[120391,120391],"mapped",[108]],[[120392,120392],"mapped",[109]],[[120393,120393],"mapped",[110]],[[120394,120394],"mapped",[111]],[[120395,120395],"mapped",[112]],[[120396,120396],"mapped",[113]],[[120397,120397],"mapped",[114]],[[120398,120398],"mapped",[115]],[[120399,120399],"mapped",[116]],[[120400,120400],"mapped",[117]],[[120401,120401],"mapped",[118]],[[120402,120402],"mapped",[119]],[[120403,120403],"mapped",[120]],[[120404,120404],"mapped",[121]],[[120405,120405],"mapped",[122]],[[120406,120406],"mapped",[97]],[[120407,120407],"mapped",[98]],[[120408,120408],"mapped",[99]],[[120409,120409],"mapped",[100]],[[120410,120410],"mapped",[101]],[[120411,120411],"mapped",[102]],[[120412,120412],"mapped",[103]],[[120413,120413],"mapped",[104]],[[120414,120414],"mapped",[105]],[[120415,120415],"mapped",[106]],[[120416,120416],"mapped",[107]],[[120417,120417],"mapped",[108]],[[120418,120418],"mapped",[109]],[[120419,120419],"mapped",[110]],[[120420,120420],"mapped",[111]],[[120421,120421],"mapped",[112]],[[120422,120422],"mapped",[113]],[[120423,120423],"mapped",[114]],[[120424,120424],"mapped",[115]],[[120425,120425],"mapped",[116]],[[120426,120426],"mapped",[117]],[[120427,120427],"mapped",[118]],[[120428,120428],"mapped",[119]],[[120429,120429],"mapped",[120]],[[120430,120430],"mapped",[121]],[[120431,120431],"mapped",[122]],[[120432,120432],"mapped",[97]],[[120433,120433],"mapped",[98]],[[120434,120434],"mapped",[99]],[[120435,120435],"mapped",[100]],[[120436,120436],"mapped",[101]],[[120437,120437],"mapped",[102]],[[120438,120438],"mapped",[103]],[[120439,120439],"mapped",[104]],[[120440,120440],"mapped",[105]],[[120441,120441],"mapped",[106]],[[120442,120442],"mapped",[107]],[[120443,120443],"mapped",[108]],[[120444,120444],"mapped",[109]],[[120445,120445],"mapped",[110]],[[120446,120446],"mapped",[111]],[[120447,120447],"mapped",[112]],[[120448,120448],"mapped",[113]],[[120449,120449],"mapped",[114]],[[120450,120450],"mapped",[115]],[[120451,120451],"mapped",[116]],[[120452,120452],"mapped",[117]],[[120453,120453],"mapped",[118]],[[120454,120454],"mapped",[119]],[[120455,120455],"mapped",[120]],[[120456,120456],"mapped",[121]],[[120457,120457],"mapped",[122]],[[120458,120458],"mapped",[97]],[[120459,120459],"mapped",[98]],[[120460,120460],"mapped",[99]],[[120461,120461],"mapped",[100]],[[120462,120462],"mapped",[101]],[[120463,120463],"mapped",[102]],[[120464,120464],"mapped",[103]],[[120465,120465],"mapped",[104]],[[120466,120466],"mapped",[105]],[[120467,120467],"mapped",[106]],[[120468,120468],"mapped",[107]],[[120469,120469],"mapped",[108]],[[120470,120470],"mapped",[109]],[[120471,120471],"mapped",[110]],[[120472,120472],"mapped",[111]],[[120473,120473],"mapped",[112]],[[120474,120474],"mapped",[113]],[[120475,120475],"mapped",[114]],[[120476,120476],"mapped",[115]],[[120477,120477],"mapped",[116]],[[120478,120478],"mapped",[117]],[[120479,120479],"mapped",[118]],[[120480,120480],"mapped",[119]],[[120481,120481],"mapped",[120]],[[120482,120482],"mapped",[121]],[[120483,120483],"mapped",[122]],[[120484,120484],"mapped",[305]],[[120485,120485],"mapped",[567]],[[120486,120487],"disallowed"],[[120488,120488],"mapped",[945]],[[120489,120489],"mapped",[946]],[[120490,120490],"mapped",[947]],[[120491,120491],"mapped",[948]],[[120492,120492],"mapped",[949]],[[120493,120493],"mapped",[950]],[[120494,120494],"mapped",[951]],[[120495,120495],"mapped",[952]],[[120496,120496],"mapped",[953]],[[120497,120497],"mapped",[954]],[[120498,120498],"mapped",[955]],[[120499,120499],"mapped",[956]],[[120500,120500],"mapped",[957]],[[120501,120501],"mapped",[958]],[[120502,120502],"mapped",[959]],[[120503,120503],"mapped",[960]],[[120504,120504],"mapped",[961]],[[120505,120505],"mapped",[952]],[[120506,120506],"mapped",[963]],[[120507,120507],"mapped",[964]],[[120508,120508],"mapped",[965]],[[120509,120509],"mapped",[966]],[[120510,120510],"mapped",[967]],[[120511,120511],"mapped",[968]],[[120512,120512],"mapped",[969]],[[120513,120513],"mapped",[8711]],[[120514,120514],"mapped",[945]],[[120515,120515],"mapped",[946]],[[120516,120516],"mapped",[947]],[[120517,120517],"mapped",[948]],[[120518,120518],"mapped",[949]],[[120519,120519],"mapped",[950]],[[120520,120520],"mapped",[951]],[[120521,120521],"mapped",[952]],[[120522,120522],"mapped",[953]],[[120523,120523],"mapped",[954]],[[120524,120524],"mapped",[955]],[[120525,120525],"mapped",[956]],[[120526,120526],"mapped",[957]],[[120527,120527],"mapped",[958]],[[120528,120528],"mapped",[959]],[[120529,120529],"mapped",[960]],[[120530,120530],"mapped",[961]],[[120531,120532],"mapped",[963]],[[120533,120533],"mapped",[964]],[[120534,120534],"mapped",[965]],[[120535,120535],"mapped",[966]],[[120536,120536],"mapped",[967]],[[120537,120537],"mapped",[968]],[[120538,120538],"mapped",[969]],[[120539,120539],"mapped",[8706]],[[120540,120540],"mapped",[949]],[[120541,120541],"mapped",[952]],[[120542,120542],"mapped",[954]],[[120543,120543],"mapped",[966]],[[120544,120544],"mapped",[961]],[[120545,120545],"mapped",[960]],[[120546,120546],"mapped",[945]],[[120547,120547],"mapped",[946]],[[120548,120548],"mapped",[947]],[[120549,120549],"mapped",[948]],[[120550,120550],"mapped",[949]],[[120551,120551],"mapped",[950]],[[120552,120552],"mapped",[951]],[[120553,120553],"mapped",[952]],[[120554,120554],"mapped",[953]],[[120555,120555],"mapped",[954]],[[120556,120556],"mapped",[955]],[[120557,120557],"mapped",[956]],[[120558,120558],"mapped",[957]],[[120559,120559],"mapped",[958]],[[120560,120560],"mapped",[959]],[[120561,120561],"mapped",[960]],[[120562,120562],"mapped",[961]],[[120563,120563],"mapped",[952]],[[120564,120564],"mapped",[963]],[[120565,120565],"mapped",[964]],[[120566,120566],"mapped",[965]],[[120567,120567],"mapped",[966]],[[120568,120568],"mapped",[967]],[[120569,120569],"mapped",[968]],[[120570,120570],"mapped",[969]],[[120571,120571],"mapped",[8711]],[[120572,120572],"mapped",[945]],[[120573,120573],"mapped",[946]],[[120574,120574],"mapped",[947]],[[120575,120575],"mapped",[948]],[[120576,120576],"mapped",[949]],[[120577,120577],"mapped",[950]],[[120578,120578],"mapped",[951]],[[120579,120579],"mapped",[952]],[[120580,120580],"mapped",[953]],[[120581,120581],"mapped",[954]],[[120582,120582],"mapped",[955]],[[120583,120583],"mapped",[956]],[[120584,120584],"mapped",[957]],[[120585,120585],"mapped",[958]],[[120586,120586],"mapped",[959]],[[120587,120587],"mapped",[960]],[[120588,120588],"mapped",[961]],[[120589,120590],"mapped",[963]],[[120591,120591],"mapped",[964]],[[120592,120592],"mapped",[965]],[[120593,120593],"mapped",[966]],[[120594,120594],"mapped",[967]],[[120595,120595],"mapped",[968]],[[120596,120596],"mapped",[969]],[[120597,120597],"mapped",[8706]],[[120598,120598],"mapped",[949]],[[120599,120599],"mapped",[952]],[[120600,120600],"mapped",[954]],[[120601,120601],"mapped",[966]],[[120602,120602],"mapped",[961]],[[120603,120603],"mapped",[960]],[[120604,120604],"mapped",[945]],[[120605,120605],"mapped",[946]],[[120606,120606],"mapped",[947]],[[120607,120607],"mapped",[948]],[[120608,120608],"mapped",[949]],[[120609,120609],"mapped",[950]],[[120610,120610],"mapped",[951]],[[120611,120611],"mapped",[952]],[[120612,120612],"mapped",[953]],[[120613,120613],"mapped",[954]],[[120614,120614],"mapped",[955]],[[120615,120615],"mapped",[956]],[[120616,120616],"mapped",[957]],[[120617,120617],"mapped",[958]],[[120618,120618],"mapped",[959]],[[120619,120619],"mapped",[960]],[[120620,120620],"mapped",[961]],[[120621,120621],"mapped",[952]],[[120622,120622],"mapped",[963]],[[120623,120623],"mapped",[964]],[[120624,120624],"mapped",[965]],[[120625,120625],"mapped",[966]],[[120626,120626],"mapped",[967]],[[120627,120627],"mapped",[968]],[[120628,120628],"mapped",[969]],[[120629,120629],"mapped",[8711]],[[120630,120630],"mapped",[945]],[[120631,120631],"mapped",[946]],[[120632,120632],"mapped",[947]],[[120633,120633],"mapped",[948]],[[120634,120634],"mapped",[949]],[[120635,120635],"mapped",[950]],[[120636,120636],"mapped",[951]],[[120637,120637],"mapped",[952]],[[120638,120638],"mapped",[953]],[[120639,120639],"mapped",[954]],[[120640,120640],"mapped",[955]],[[120641,120641],"mapped",[956]],[[120642,120642],"mapped",[957]],[[120643,120643],"mapped",[958]],[[120644,120644],"mapped",[959]],[[120645,120645],"mapped",[960]],[[120646,120646],"mapped",[961]],[[120647,120648],"mapped",[963]],[[120649,120649],"mapped",[964]],[[120650,120650],"mapped",[965]],[[120651,120651],"mapped",[966]],[[120652,120652],"mapped",[967]],[[120653,120653],"mapped",[968]],[[120654,120654],"mapped",[969]],[[120655,120655],"mapped",[8706]],[[120656,120656],"mapped",[949]],[[120657,120657],"mapped",[952]],[[120658,120658],"mapped",[954]],[[120659,120659],"mapped",[966]],[[120660,120660],"mapped",[961]],[[120661,120661],"mapped",[960]],[[120662,120662],"mapped",[945]],[[120663,120663],"mapped",[946]],[[120664,120664],"mapped",[947]],[[120665,120665],"mapped",[948]],[[120666,120666],"mapped",[949]],[[120667,120667],"mapped",[950]],[[120668,120668],"mapped",[951]],[[120669,120669],"mapped",[952]],[[120670,120670],"mapped",[953]],[[120671,120671],"mapped",[954]],[[120672,120672],"mapped",[955]],[[120673,120673],"mapped",[956]],[[120674,120674],"mapped",[957]],[[120675,120675],"mapped",[958]],[[120676,120676],"mapped",[959]],[[120677,120677],"mapped",[960]],[[120678,120678],"mapped",[961]],[[120679,120679],"mapped",[952]],[[120680,120680],"mapped",[963]],[[120681,120681],"mapped",[964]],[[120682,120682],"mapped",[965]],[[120683,120683],"mapped",[966]],[[120684,120684],"mapped",[967]],[[120685,120685],"mapped",[968]],[[120686,120686],"mapped",[969]],[[120687,120687],"mapped",[8711]],[[120688,120688],"mapped",[945]],[[120689,120689],"mapped",[946]],[[120690,120690],"mapped",[947]],[[120691,120691],"mapped",[948]],[[120692,120692],"mapped",[949]],[[120693,120693],"mapped",[950]],[[120694,120694],"mapped",[951]],[[120695,120695],"mapped",[952]],[[120696,120696],"mapped",[953]],[[120697,120697],"mapped",[954]],[[120698,120698],"mapped",[955]],[[120699,120699],"mapped",[956]],[[120700,120700],"mapped",[957]],[[120701,120701],"mapped",[958]],[[120702,120702],"mapped",[959]],[[120703,120703],"mapped",[960]],[[120704,120704],"mapped",[961]],[[120705,120706],"mapped",[963]],[[120707,120707],"mapped",[964]],[[120708,120708],"mapped",[965]],[[120709,120709],"mapped",[966]],[[120710,120710],"mapped",[967]],[[120711,120711],"mapped",[968]],[[120712,120712],"mapped",[969]],[[120713,120713],"mapped",[8706]],[[120714,120714],"mapped",[949]],[[120715,120715],"mapped",[952]],[[120716,120716],"mapped",[954]],[[120717,120717],"mapped",[966]],[[120718,120718],"mapped",[961]],[[120719,120719],"mapped",[960]],[[120720,120720],"mapped",[945]],[[120721,120721],"mapped",[946]],[[120722,120722],"mapped",[947]],[[120723,120723],"mapped",[948]],[[120724,120724],"mapped",[949]],[[120725,120725],"mapped",[950]],[[120726,120726],"mapped",[951]],[[120727,120727],"mapped",[952]],[[120728,120728],"mapped",[953]],[[120729,120729],"mapped",[954]],[[120730,120730],"mapped",[955]],[[120731,120731],"mapped",[956]],[[120732,120732],"mapped",[957]],[[120733,120733],"mapped",[958]],[[120734,120734],"mapped",[959]],[[120735,120735],"mapped",[960]],[[120736,120736],"mapped",[961]],[[120737,120737],"mapped",[952]],[[120738,120738],"mapped",[963]],[[120739,120739],"mapped",[964]],[[120740,120740],"mapped",[965]],[[120741,120741],"mapped",[966]],[[120742,120742],"mapped",[967]],[[120743,120743],"mapped",[968]],[[120744,120744],"mapped",[969]],[[120745,120745],"mapped",[8711]],[[120746,120746],"mapped",[945]],[[120747,120747],"mapped",[946]],[[120748,120748],"mapped",[947]],[[120749,120749],"mapped",[948]],[[120750,120750],"mapped",[949]],[[120751,120751],"mapped",[950]],[[120752,120752],"mapped",[951]],[[120753,120753],"mapped",[952]],[[120754,120754],"mapped",[953]],[[120755,120755],"mapped",[954]],[[120756,120756],"mapped",[955]],[[120757,120757],"mapped",[956]],[[120758,120758],"mapped",[957]],[[120759,120759],"mapped",[958]],[[120760,120760],"mapped",[959]],[[120761,120761],"mapped",[960]],[[120762,120762],"mapped",[961]],[[120763,120764],"mapped",[963]],[[120765,120765],"mapped",[964]],[[120766,120766],"mapped",[965]],[[120767,120767],"mapped",[966]],[[120768,120768],"mapped",[967]],[[120769,120769],"mapped",[968]],[[120770,120770],"mapped",[969]],[[120771,120771],"mapped",[8706]],[[120772,120772],"mapped",[949]],[[120773,120773],"mapped",[952]],[[120774,120774],"mapped",[954]],[[120775,120775],"mapped",[966]],[[120776,120776],"mapped",[961]],[[120777,120777],"mapped",[960]],[[120778,120779],"mapped",[989]],[[120780,120781],"disallowed"],[[120782,120782],"mapped",[48]],[[120783,120783],"mapped",[49]],[[120784,120784],"mapped",[50]],[[120785,120785],"mapped",[51]],[[120786,120786],"mapped",[52]],[[120787,120787],"mapped",[53]],[[120788,120788],"mapped",[54]],[[120789,120789],"mapped",[55]],[[120790,120790],"mapped",[56]],[[120791,120791],"mapped",[57]],[[120792,120792],"mapped",[48]],[[120793,120793],"mapped",[49]],[[120794,120794],"mapped",[50]],[[120795,120795],"mapped",[51]],[[120796,120796],"mapped",[52]],[[120797,120797],"mapped",[53]],[[120798,120798],"mapped",[54]],[[120799,120799],"mapped",[55]],[[120800,120800],"mapped",[56]],[[120801,120801],"mapped",[57]],[[120802,120802],"mapped",[48]],[[120803,120803],"mapped",[49]],[[120804,120804],"mapped",[50]],[[120805,120805],"mapped",[51]],[[120806,120806],"mapped",[52]],[[120807,120807],"mapped",[53]],[[120808,120808],"mapped",[54]],[[120809,120809],"mapped",[55]],[[120810,120810],"mapped",[56]],[[120811,120811],"mapped",[57]],[[120812,120812],"mapped",[48]],[[120813,120813],"mapped",[49]],[[120814,120814],"mapped",[50]],[[120815,120815],"mapped",[51]],[[120816,120816],"mapped",[52]],[[120817,120817],"mapped",[53]],[[120818,120818],"mapped",[54]],[[120819,120819],"mapped",[55]],[[120820,120820],"mapped",[56]],[[120821,120821],"mapped",[57]],[[120822,120822],"mapped",[48]],[[120823,120823],"mapped",[49]],[[120824,120824],"mapped",[50]],[[120825,120825],"mapped",[51]],[[120826,120826],"mapped",[52]],[[120827,120827],"mapped",[53]],[[120828,120828],"mapped",[54]],[[120829,120829],"mapped",[55]],[[120830,120830],"mapped",[56]],[[120831,120831],"mapped",[57]],[[120832,121343],"valid",[],"NV8"],[[121344,121398],"valid"],[[121399,121402],"valid",[],"NV8"],[[121403,121452],"valid"],[[121453,121460],"valid",[],"NV8"],[[121461,121461],"valid"],[[121462,121475],"valid",[],"NV8"],[[121476,121476],"valid"],[[121477,121483],"valid",[],"NV8"],[[121484,121498],"disallowed"],[[121499,121503],"valid"],[[121504,121504],"disallowed"],[[121505,121519],"valid"],[[121520,124927],"disallowed"],[[124928,125124],"valid"],[[125125,125126],"disallowed"],[[125127,125135],"valid",[],"NV8"],[[125136,125142],"valid"],[[125143,126463],"disallowed"],[[126464,126464],"mapped",[1575]],[[126465,126465],"mapped",[1576]],[[126466,126466],"mapped",[1580]],[[126467,126467],"mapped",[1583]],[[126468,126468],"disallowed"],[[126469,126469],"mapped",[1608]],[[126470,126470],"mapped",[1586]],[[126471,126471],"mapped",[1581]],[[126472,126472],"mapped",[1591]],[[126473,126473],"mapped",[1610]],[[126474,126474],"mapped",[1603]],[[126475,126475],"mapped",[1604]],[[126476,126476],"mapped",[1605]],[[126477,126477],"mapped",[1606]],[[126478,126478],"mapped",[1587]],[[126479,126479],"mapped",[1593]],[[126480,126480],"mapped",[1601]],[[126481,126481],"mapped",[1589]],[[126482,126482],"mapped",[1602]],[[126483,126483],"mapped",[1585]],[[126484,126484],"mapped",[1588]],[[126485,126485],"mapped",[1578]],[[126486,126486],"mapped",[1579]],[[126487,126487],"mapped",[1582]],[[126488,126488],"mapped",[1584]],[[126489,126489],"mapped",[1590]],[[126490,126490],"mapped",[1592]],[[126491,126491],"mapped",[1594]],[[126492,126492],"mapped",[1646]],[[126493,126493],"mapped",[1722]],[[126494,126494],"mapped",[1697]],[[126495,126495],"mapped",[1647]],[[126496,126496],"disallowed"],[[126497,126497],"mapped",[1576]],[[126498,126498],"mapped",[1580]],[[126499,126499],"disallowed"],[[126500,126500],"mapped",[1607]],[[126501,126502],"disallowed"],[[126503,126503],"mapped",[1581]],[[126504,126504],"disallowed"],[[126505,126505],"mapped",[1610]],[[126506,126506],"mapped",[1603]],[[126507,126507],"mapped",[1604]],[[126508,126508],"mapped",[1605]],[[126509,126509],"mapped",[1606]],[[126510,126510],"mapped",[1587]],[[126511,126511],"mapped",[1593]],[[126512,126512],"mapped",[1601]],[[126513,126513],"mapped",[1589]],[[126514,126514],"mapped",[1602]],[[126515,126515],"disallowed"],[[126516,126516],"mapped",[1588]],[[126517,126517],"mapped",[1578]],[[126518,126518],"mapped",[1579]],[[126519,126519],"mapped",[1582]],[[126520,126520],"disallowed"],[[126521,126521],"mapped",[1590]],[[126522,126522],"disallowed"],[[126523,126523],"mapped",[1594]],[[126524,126529],"disallowed"],[[126530,126530],"mapped",[1580]],[[126531,126534],"disallowed"],[[126535,126535],"mapped",[1581]],[[126536,126536],"disallowed"],[[126537,126537],"mapped",[1610]],[[126538,126538],"disallowed"],[[126539,126539],"mapped",[1604]],[[126540,126540],"disallowed"],[[126541,126541],"mapped",[1606]],[[126542,126542],"mapped",[1587]],[[126543,126543],"mapped",[1593]],[[126544,126544],"disallowed"],[[126545,126545],"mapped",[1589]],[[126546,126546],"mapped",[1602]],[[126547,126547],"disallowed"],[[126548,126548],"mapped",[1588]],[[126549,126550],"disallowed"],[[126551,126551],"mapped",[1582]],[[126552,126552],"disallowed"],[[126553,126553],"mapped",[1590]],[[126554,126554],"disallowed"],[[126555,126555],"mapped",[1594]],[[126556,126556],"disallowed"],[[126557,126557],"mapped",[1722]],[[126558,126558],"disallowed"],[[126559,126559],"mapped",[1647]],[[126560,126560],"disallowed"],[[126561,126561],"mapped",[1576]],[[126562,126562],"mapped",[1580]],[[126563,126563],"disallowed"],[[126564,126564],"mapped",[1607]],[[126565,126566],"disallowed"],[[126567,126567],"mapped",[1581]],[[126568,126568],"mapped",[1591]],[[126569,126569],"mapped",[1610]],[[126570,126570],"mapped",[1603]],[[126571,126571],"disallowed"],[[126572,126572],"mapped",[1605]],[[126573,126573],"mapped",[1606]],[[126574,126574],"mapped",[1587]],[[126575,126575],"mapped",[1593]],[[126576,126576],"mapped",[1601]],[[126577,126577],"mapped",[1589]],[[126578,126578],"mapped",[1602]],[[126579,126579],"disallowed"],[[126580,126580],"mapped",[1588]],[[126581,126581],"mapped",[1578]],[[126582,126582],"mapped",[1579]],[[126583,126583],"mapped",[1582]],[[126584,126584],"disallowed"],[[126585,126585],"mapped",[1590]],[[126586,126586],"mapped",[1592]],[[126587,126587],"mapped",[1594]],[[126588,126588],"mapped",[1646]],[[126589,126589],"disallowed"],[[126590,126590],"mapped",[1697]],[[126591,126591],"disallowed"],[[126592,126592],"mapped",[1575]],[[126593,126593],"mapped",[1576]],[[126594,126594],"mapped",[1580]],[[126595,126595],"mapped",[1583]],[[126596,126596],"mapped",[1607]],[[126597,126597],"mapped",[1608]],[[126598,126598],"mapped",[1586]],[[126599,126599],"mapped",[1581]],[[126600,126600],"mapped",[1591]],[[126601,126601],"mapped",[1610]],[[126602,126602],"disallowed"],[[126603,126603],"mapped",[1604]],[[126604,126604],"mapped",[1605]],[[126605,126605],"mapped",[1606]],[[126606,126606],"mapped",[1587]],[[126607,126607],"mapped",[1593]],[[126608,126608],"mapped",[1601]],[[126609,126609],"mapped",[1589]],[[126610,126610],"mapped",[1602]],[[126611,126611],"mapped",[1585]],[[126612,126612],"mapped",[1588]],[[126613,126613],"mapped",[1578]],[[126614,126614],"mapped",[1579]],[[126615,126615],"mapped",[1582]],[[126616,126616],"mapped",[1584]],[[126617,126617],"mapped",[1590]],[[126618,126618],"mapped",[1592]],[[126619,126619],"mapped",[1594]],[[126620,126624],"disallowed"],[[126625,126625],"mapped",[1576]],[[126626,126626],"mapped",[1580]],[[126627,126627],"mapped",[1583]],[[126628,126628],"disallowed"],[[126629,126629],"mapped",[1608]],[[126630,126630],"mapped",[1586]],[[126631,126631],"mapped",[1581]],[[126632,126632],"mapped",[1591]],[[126633,126633],"mapped",[1610]],[[126634,126634],"disallowed"],[[126635,126635],"mapped",[1604]],[[126636,126636],"mapped",[1605]],[[126637,126637],"mapped",[1606]],[[126638,126638],"mapped",[1587]],[[126639,126639],"mapped",[1593]],[[126640,126640],"mapped",[1601]],[[126641,126641],"mapped",[1589]],[[126642,126642],"mapped",[1602]],[[126643,126643],"mapped",[1585]],[[126644,126644],"mapped",[1588]],[[126645,126645],"mapped",[1578]],[[126646,126646],"mapped",[1579]],[[126647,126647],"mapped",[1582]],[[126648,126648],"mapped",[1584]],[[126649,126649],"mapped",[1590]],[[126650,126650],"mapped",[1592]],[[126651,126651],"mapped",[1594]],[[126652,126703],"disallowed"],[[126704,126705],"valid",[],"NV8"],[[126706,126975],"disallowed"],[[126976,127019],"valid",[],"NV8"],[[127020,127023],"disallowed"],[[127024,127123],"valid",[],"NV8"],[[127124,127135],"disallowed"],[[127136,127150],"valid",[],"NV8"],[[127151,127152],"disallowed"],[[127153,127166],"valid",[],"NV8"],[[127167,127167],"valid",[],"NV8"],[[127168,127168],"disallowed"],[[127169,127183],"valid",[],"NV8"],[[127184,127184],"disallowed"],[[127185,127199],"valid",[],"NV8"],[[127200,127221],"valid",[],"NV8"],[[127222,127231],"disallowed"],[[127232,127232],"disallowed"],[[127233,127233],"disallowed_STD3_mapped",[48,44]],[[127234,127234],"disallowed_STD3_mapped",[49,44]],[[127235,127235],"disallowed_STD3_mapped",[50,44]],[[127236,127236],"disallowed_STD3_mapped",[51,44]],[[127237,127237],"disallowed_STD3_mapped",[52,44]],[[127238,127238],"disallowed_STD3_mapped",[53,44]],[[127239,127239],"disallowed_STD3_mapped",[54,44]],[[127240,127240],"disallowed_STD3_mapped",[55,44]],[[127241,127241],"disallowed_STD3_mapped",[56,44]],[[127242,127242],"disallowed_STD3_mapped",[57,44]],[[127243,127244],"valid",[],"NV8"],[[127245,127247],"disallowed"],[[127248,127248],"disallowed_STD3_mapped",[40,97,41]],[[127249,127249],"disallowed_STD3_mapped",[40,98,41]],[[127250,127250],"disallowed_STD3_mapped",[40,99,41]],[[127251,127251],"disallowed_STD3_mapped",[40,100,41]],[[127252,127252],"disallowed_STD3_mapped",[40,101,41]],[[127253,127253],"disallowed_STD3_mapped",[40,102,41]],[[127254,127254],"disallowed_STD3_mapped",[40,103,41]],[[127255,127255],"disallowed_STD3_mapped",[40,104,41]],[[127256,127256],"disallowed_STD3_mapped",[40,105,41]],[[127257,127257],"disallowed_STD3_mapped",[40,106,41]],[[127258,127258],"disallowed_STD3_mapped",[40,107,41]],[[127259,127259],"disallowed_STD3_mapped",[40,108,41]],[[127260,127260],"disallowed_STD3_mapped",[40,109,41]],[[127261,127261],"disallowed_STD3_mapped",[40,110,41]],[[127262,127262],"disallowed_STD3_mapped",[40,111,41]],[[127263,127263],"disallowed_STD3_mapped",[40,112,41]],[[127264,127264],"disallowed_STD3_mapped",[40,113,41]],[[127265,127265],"disallowed_STD3_mapped",[40,114,41]],[[127266,127266],"disallowed_STD3_mapped",[40,115,41]],[[127267,127267],"disallowed_STD3_mapped",[40,116,41]],[[127268,127268],"disallowed_STD3_mapped",[40,117,41]],[[127269,127269],"disallowed_STD3_mapped",[40,118,41]],[[127270,127270],"disallowed_STD3_mapped",[40,119,41]],[[127271,127271],"disallowed_STD3_mapped",[40,120,41]],[[127272,127272],"disallowed_STD3_mapped",[40,121,41]],[[127273,127273],"disallowed_STD3_mapped",[40,122,41]],[[127274,127274],"mapped",[12308,115,12309]],[[127275,127275],"mapped",[99]],[[127276,127276],"mapped",[114]],[[127277,127277],"mapped",[99,100]],[[127278,127278],"mapped",[119,122]],[[127279,127279],"disallowed"],[[127280,127280],"mapped",[97]],[[127281,127281],"mapped",[98]],[[127282,127282],"mapped",[99]],[[127283,127283],"mapped",[100]],[[127284,127284],"mapped",[101]],[[127285,127285],"mapped",[102]],[[127286,127286],"mapped",[103]],[[127287,127287],"mapped",[104]],[[127288,127288],"mapped",[105]],[[127289,127289],"mapped",[106]],[[127290,127290],"mapped",[107]],[[127291,127291],"mapped",[108]],[[127292,127292],"mapped",[109]],[[127293,127293],"mapped",[110]],[[127294,127294],"mapped",[111]],[[127295,127295],"mapped",[112]],[[127296,127296],"mapped",[113]],[[127297,127297],"mapped",[114]],[[127298,127298],"mapped",[115]],[[127299,127299],"mapped",[116]],[[127300,127300],"mapped",[117]],[[127301,127301],"mapped",[118]],[[127302,127302],"mapped",[119]],[[127303,127303],"mapped",[120]],[[127304,127304],"mapped",[121]],[[127305,127305],"mapped",[122]],[[127306,127306],"mapped",[104,118]],[[127307,127307],"mapped",[109,118]],[[127308,127308],"mapped",[115,100]],[[127309,127309],"mapped",[115,115]],[[127310,127310],"mapped",[112,112,118]],[[127311,127311],"mapped",[119,99]],[[127312,127318],"valid",[],"NV8"],[[127319,127319],"valid",[],"NV8"],[[127320,127326],"valid",[],"NV8"],[[127327,127327],"valid",[],"NV8"],[[127328,127337],"valid",[],"NV8"],[[127338,127338],"mapped",[109,99]],[[127339,127339],"mapped",[109,100]],[[127340,127343],"disallowed"],[[127344,127352],"valid",[],"NV8"],[[127353,127353],"valid",[],"NV8"],[[127354,127354],"valid",[],"NV8"],[[127355,127356],"valid",[],"NV8"],[[127357,127358],"valid",[],"NV8"],[[127359,127359],"valid",[],"NV8"],[[127360,127369],"valid",[],"NV8"],[[127370,127373],"valid",[],"NV8"],[[127374,127375],"valid",[],"NV8"],[[127376,127376],"mapped",[100,106]],[[127377,127386],"valid",[],"NV8"],[[127387,127461],"disallowed"],[[127462,127487],"valid",[],"NV8"],[[127488,127488],"mapped",[12411,12363]],[[127489,127489],"mapped",[12467,12467]],[[127490,127490],"mapped",[12469]],[[127491,127503],"disallowed"],[[127504,127504],"mapped",[25163]],[[127505,127505],"mapped",[23383]],[[127506,127506],"mapped",[21452]],[[127507,127507],"mapped",[12487]],[[127508,127508],"mapped",[20108]],[[127509,127509],"mapped",[22810]],[[127510,127510],"mapped",[35299]],[[127511,127511],"mapped",[22825]],[[127512,127512],"mapped",[20132]],[[127513,127513],"mapped",[26144]],[[127514,127514],"mapped",[28961]],[[127515,127515],"mapped",[26009]],[[127516,127516],"mapped",[21069]],[[127517,127517],"mapped",[24460]],[[127518,127518],"mapped",[20877]],[[127519,127519],"mapped",[26032]],[[127520,127520],"mapped",[21021]],[[127521,127521],"mapped",[32066]],[[127522,127522],"mapped",[29983]],[[127523,127523],"mapped",[36009]],[[127524,127524],"mapped",[22768]],[[127525,127525],"mapped",[21561]],[[127526,127526],"mapped",[28436]],[[127527,127527],"mapped",[25237]],[[127528,127528],"mapped",[25429]],[[127529,127529],"mapped",[19968]],[[127530,127530],"mapped",[19977]],[[127531,127531],"mapped",[36938]],[[127532,127532],"mapped",[24038]],[[127533,127533],"mapped",[20013]],[[127534,127534],"mapped",[21491]],[[127535,127535],"mapped",[25351]],[[127536,127536],"mapped",[36208]],[[127537,127537],"mapped",[25171]],[[127538,127538],"mapped",[31105]],[[127539,127539],"mapped",[31354]],[[127540,127540],"mapped",[21512]],[[127541,127541],"mapped",[28288]],[[127542,127542],"mapped",[26377]],[[127543,127543],"mapped",[26376]],[[127544,127544],"mapped",[30003]],[[127545,127545],"mapped",[21106]],[[127546,127546],"mapped",[21942]],[[127547,127551],"disallowed"],[[127552,127552],"mapped",[12308,26412,12309]],[[127553,127553],"mapped",[12308,19977,12309]],[[127554,127554],"mapped",[12308,20108,12309]],[[127555,127555],"mapped",[12308,23433,12309]],[[127556,127556],"mapped",[12308,28857,12309]],[[127557,127557],"mapped",[12308,25171,12309]],[[127558,127558],"mapped",[12308,30423,12309]],[[127559,127559],"mapped",[12308,21213,12309]],[[127560,127560],"mapped",[12308,25943,12309]],[[127561,127567],"disallowed"],[[127568,127568],"mapped",[24471]],[[127569,127569],"mapped",[21487]],[[127570,127743],"disallowed"],[[127744,127776],"valid",[],"NV8"],[[127777,127788],"valid",[],"NV8"],[[127789,127791],"valid",[],"NV8"],[[127792,127797],"valid",[],"NV8"],[[127798,127798],"valid",[],"NV8"],[[127799,127868],"valid",[],"NV8"],[[127869,127869],"valid",[],"NV8"],[[127870,127871],"valid",[],"NV8"],[[127872,127891],"valid",[],"NV8"],[[127892,127903],"valid",[],"NV8"],[[127904,127940],"valid",[],"NV8"],[[127941,127941],"valid",[],"NV8"],[[127942,127946],"valid",[],"NV8"],[[127947,127950],"valid",[],"NV8"],[[127951,127955],"valid",[],"NV8"],[[127956,127967],"valid",[],"NV8"],[[127968,127984],"valid",[],"NV8"],[[127985,127991],"valid",[],"NV8"],[[127992,127999],"valid",[],"NV8"],[[128e3,128062],"valid",[],"NV8"],[[128063,128063],"valid",[],"NV8"],[[128064,128064],"valid",[],"NV8"],[[128065,128065],"valid",[],"NV8"],[[128066,128247],"valid",[],"NV8"],[[128248,128248],"valid",[],"NV8"],[[128249,128252],"valid",[],"NV8"],[[128253,128254],"valid",[],"NV8"],[[128255,128255],"valid",[],"NV8"],[[128256,128317],"valid",[],"NV8"],[[128318,128319],"valid",[],"NV8"],[[128320,128323],"valid",[],"NV8"],[[128324,128330],"valid",[],"NV8"],[[128331,128335],"valid",[],"NV8"],[[128336,128359],"valid",[],"NV8"],[[128360,128377],"valid",[],"NV8"],[[128378,128378],"disallowed"],[[128379,128419],"valid",[],"NV8"],[[128420,128420],"disallowed"],[[128421,128506],"valid",[],"NV8"],[[128507,128511],"valid",[],"NV8"],[[128512,128512],"valid",[],"NV8"],[[128513,128528],"valid",[],"NV8"],[[128529,128529],"valid",[],"NV8"],[[128530,128532],"valid",[],"NV8"],[[128533,128533],"valid",[],"NV8"],[[128534,128534],"valid",[],"NV8"],[[128535,128535],"valid",[],"NV8"],[[128536,128536],"valid",[],"NV8"],[[128537,128537],"valid",[],"NV8"],[[128538,128538],"valid",[],"NV8"],[[128539,128539],"valid",[],"NV8"],[[128540,128542],"valid",[],"NV8"],[[128543,128543],"valid",[],"NV8"],[[128544,128549],"valid",[],"NV8"],[[128550,128551],"valid",[],"NV8"],[[128552,128555],"valid",[],"NV8"],[[128556,128556],"valid",[],"NV8"],[[128557,128557],"valid",[],"NV8"],[[128558,128559],"valid",[],"NV8"],[[128560,128563],"valid",[],"NV8"],[[128564,128564],"valid",[],"NV8"],[[128565,128576],"valid",[],"NV8"],[[128577,128578],"valid",[],"NV8"],[[128579,128580],"valid",[],"NV8"],[[128581,128591],"valid",[],"NV8"],[[128592,128639],"valid",[],"NV8"],[[128640,128709],"valid",[],"NV8"],[[128710,128719],"valid",[],"NV8"],[[128720,128720],"valid",[],"NV8"],[[128721,128735],"disallowed"],[[128736,128748],"valid",[],"NV8"],[[128749,128751],"disallowed"],[[128752,128755],"valid",[],"NV8"],[[128756,128767],"disallowed"],[[128768,128883],"valid",[],"NV8"],[[128884,128895],"disallowed"],[[128896,128980],"valid",[],"NV8"],[[128981,129023],"disallowed"],[[129024,129035],"valid",[],"NV8"],[[129036,129039],"disallowed"],[[129040,129095],"valid",[],"NV8"],[[129096,129103],"disallowed"],[[129104,129113],"valid",[],"NV8"],[[129114,129119],"disallowed"],[[129120,129159],"valid",[],"NV8"],[[129160,129167],"disallowed"],[[129168,129197],"valid",[],"NV8"],[[129198,129295],"disallowed"],[[129296,129304],"valid",[],"NV8"],[[129305,129407],"disallowed"],[[129408,129412],"valid",[],"NV8"],[[129413,129471],"disallowed"],[[129472,129472],"valid",[],"NV8"],[[129473,131069],"disallowed"],[[131070,131071],"disallowed"],[[131072,173782],"valid"],[[173783,173823],"disallowed"],[[173824,177972],"valid"],[[177973,177983],"disallowed"],[[177984,178205],"valid"],[[178206,178207],"disallowed"],[[178208,183969],"valid"],[[183970,194559],"disallowed"],[[194560,194560],"mapped",[20029]],[[194561,194561],"mapped",[20024]],[[194562,194562],"mapped",[20033]],[[194563,194563],"mapped",[131362]],[[194564,194564],"mapped",[20320]],[[194565,194565],"mapped",[20398]],[[194566,194566],"mapped",[20411]],[[194567,194567],"mapped",[20482]],[[194568,194568],"mapped",[20602]],[[194569,194569],"mapped",[20633]],[[194570,194570],"mapped",[20711]],[[194571,194571],"mapped",[20687]],[[194572,194572],"mapped",[13470]],[[194573,194573],"mapped",[132666]],[[194574,194574],"mapped",[20813]],[[194575,194575],"mapped",[20820]],[[194576,194576],"mapped",[20836]],[[194577,194577],"mapped",[20855]],[[194578,194578],"mapped",[132380]],[[194579,194579],"mapped",[13497]],[[194580,194580],"mapped",[20839]],[[194581,194581],"mapped",[20877]],[[194582,194582],"mapped",[132427]],[[194583,194583],"mapped",[20887]],[[194584,194584],"mapped",[20900]],[[194585,194585],"mapped",[20172]],[[194586,194586],"mapped",[20908]],[[194587,194587],"mapped",[20917]],[[194588,194588],"mapped",[168415]],[[194589,194589],"mapped",[20981]],[[194590,194590],"mapped",[20995]],[[194591,194591],"mapped",[13535]],[[194592,194592],"mapped",[21051]],[[194593,194593],"mapped",[21062]],[[194594,194594],"mapped",[21106]],[[194595,194595],"mapped",[21111]],[[194596,194596],"mapped",[13589]],[[194597,194597],"mapped",[21191]],[[194598,194598],"mapped",[21193]],[[194599,194599],"mapped",[21220]],[[194600,194600],"mapped",[21242]],[[194601,194601],"mapped",[21253]],[[194602,194602],"mapped",[21254]],[[194603,194603],"mapped",[21271]],[[194604,194604],"mapped",[21321]],[[194605,194605],"mapped",[21329]],[[194606,194606],"mapped",[21338]],[[194607,194607],"mapped",[21363]],[[194608,194608],"mapped",[21373]],[[194609,194611],"mapped",[21375]],[[194612,194612],"mapped",[133676]],[[194613,194613],"mapped",[28784]],[[194614,194614],"mapped",[21450]],[[194615,194615],"mapped",[21471]],[[194616,194616],"mapped",[133987]],[[194617,194617],"mapped",[21483]],[[194618,194618],"mapped",[21489]],[[194619,194619],"mapped",[21510]],[[194620,194620],"mapped",[21662]],[[194621,194621],"mapped",[21560]],[[194622,194622],"mapped",[21576]],[[194623,194623],"mapped",[21608]],[[194624,194624],"mapped",[21666]],[[194625,194625],"mapped",[21750]],[[194626,194626],"mapped",[21776]],[[194627,194627],"mapped",[21843]],[[194628,194628],"mapped",[21859]],[[194629,194630],"mapped",[21892]],[[194631,194631],"mapped",[21913]],[[194632,194632],"mapped",[21931]],[[194633,194633],"mapped",[21939]],[[194634,194634],"mapped",[21954]],[[194635,194635],"mapped",[22294]],[[194636,194636],"mapped",[22022]],[[194637,194637],"mapped",[22295]],[[194638,194638],"mapped",[22097]],[[194639,194639],"mapped",[22132]],[[194640,194640],"mapped",[20999]],[[194641,194641],"mapped",[22766]],[[194642,194642],"mapped",[22478]],[[194643,194643],"mapped",[22516]],[[194644,194644],"mapped",[22541]],[[194645,194645],"mapped",[22411]],[[194646,194646],"mapped",[22578]],[[194647,194647],"mapped",[22577]],[[194648,194648],"mapped",[22700]],[[194649,194649],"mapped",[136420]],[[194650,194650],"mapped",[22770]],[[194651,194651],"mapped",[22775]],[[194652,194652],"mapped",[22790]],[[194653,194653],"mapped",[22810]],[[194654,194654],"mapped",[22818]],[[194655,194655],"mapped",[22882]],[[194656,194656],"mapped",[136872]],[[194657,194657],"mapped",[136938]],[[194658,194658],"mapped",[23020]],[[194659,194659],"mapped",[23067]],[[194660,194660],"mapped",[23079]],[[194661,194661],"mapped",[23e3]],[[194662,194662],"mapped",[23142]],[[194663,194663],"mapped",[14062]],[[194664,194664],"disallowed"],[[194665,194665],"mapped",[23304]],[[194666,194667],"mapped",[23358]],[[194668,194668],"mapped",[137672]],[[194669,194669],"mapped",[23491]],[[194670,194670],"mapped",[23512]],[[194671,194671],"mapped",[23527]],[[194672,194672],"mapped",[23539]],[[194673,194673],"mapped",[138008]],[[194674,194674],"mapped",[23551]],[[194675,194675],"mapped",[23558]],[[194676,194676],"disallowed"],[[194677,194677],"mapped",[23586]],[[194678,194678],"mapped",[14209]],[[194679,194679],"mapped",[23648]],[[194680,194680],"mapped",[23662]],[[194681,194681],"mapped",[23744]],[[194682,194682],"mapped",[23693]],[[194683,194683],"mapped",[138724]],[[194684,194684],"mapped",[23875]],[[194685,194685],"mapped",[138726]],[[194686,194686],"mapped",[23918]],[[194687,194687],"mapped",[23915]],[[194688,194688],"mapped",[23932]],[[194689,194689],"mapped",[24033]],[[194690,194690],"mapped",[24034]],[[194691,194691],"mapped",[14383]],[[194692,194692],"mapped",[24061]],[[194693,194693],"mapped",[24104]],[[194694,194694],"mapped",[24125]],[[194695,194695],"mapped",[24169]],[[194696,194696],"mapped",[14434]],[[194697,194697],"mapped",[139651]],[[194698,194698],"mapped",[14460]],[[194699,194699],"mapped",[24240]],[[194700,194700],"mapped",[24243]],[[194701,194701],"mapped",[24246]],[[194702,194702],"mapped",[24266]],[[194703,194703],"mapped",[172946]],[[194704,194704],"mapped",[24318]],[[194705,194706],"mapped",[140081]],[[194707,194707],"mapped",[33281]],[[194708,194709],"mapped",[24354]],[[194710,194710],"mapped",[14535]],[[194711,194711],"mapped",[144056]],[[194712,194712],"mapped",[156122]],[[194713,194713],"mapped",[24418]],[[194714,194714],"mapped",[24427]],[[194715,194715],"mapped",[14563]],[[194716,194716],"mapped",[24474]],[[194717,194717],"mapped",[24525]],[[194718,194718],"mapped",[24535]],[[194719,194719],"mapped",[24569]],[[194720,194720],"mapped",[24705]],[[194721,194721],"mapped",[14650]],[[194722,194722],"mapped",[14620]],[[194723,194723],"mapped",[24724]],[[194724,194724],"mapped",[141012]],[[194725,194725],"mapped",[24775]],[[194726,194726],"mapped",[24904]],[[194727,194727],"mapped",[24908]],[[194728,194728],"mapped",[24910]],[[194729,194729],"mapped",[24908]],[[194730,194730],"mapped",[24954]],[[194731,194731],"mapped",[24974]],[[194732,194732],"mapped",[25010]],[[194733,194733],"mapped",[24996]],[[194734,194734],"mapped",[25007]],[[194735,194735],"mapped",[25054]],[[194736,194736],"mapped",[25074]],[[194737,194737],"mapped",[25078]],[[194738,194738],"mapped",[25104]],[[194739,194739],"mapped",[25115]],[[194740,194740],"mapped",[25181]],[[194741,194741],"mapped",[25265]],[[194742,194742],"mapped",[25300]],[[194743,194743],"mapped",[25424]],[[194744,194744],"mapped",[142092]],[[194745,194745],"mapped",[25405]],[[194746,194746],"mapped",[25340]],[[194747,194747],"mapped",[25448]],[[194748,194748],"mapped",[25475]],[[194749,194749],"mapped",[25572]],[[194750,194750],"mapped",[142321]],[[194751,194751],"mapped",[25634]],[[194752,194752],"mapped",[25541]],[[194753,194753],"mapped",[25513]],[[194754,194754],"mapped",[14894]],[[194755,194755],"mapped",[25705]],[[194756,194756],"mapped",[25726]],[[194757,194757],"mapped",[25757]],[[194758,194758],"mapped",[25719]],[[194759,194759],"mapped",[14956]],[[194760,194760],"mapped",[25935]],[[194761,194761],"mapped",[25964]],[[194762,194762],"mapped",[143370]],[[194763,194763],"mapped",[26083]],[[194764,194764],"mapped",[26360]],[[194765,194765],"mapped",[26185]],[[194766,194766],"mapped",[15129]],[[194767,194767],"mapped",[26257]],[[194768,194768],"mapped",[15112]],[[194769,194769],"mapped",[15076]],[[194770,194770],"mapped",[20882]],[[194771,194771],"mapped",[20885]],[[194772,194772],"mapped",[26368]],[[194773,194773],"mapped",[26268]],[[194774,194774],"mapped",[32941]],[[194775,194775],"mapped",[17369]],[[194776,194776],"mapped",[26391]],[[194777,194777],"mapped",[26395]],[[194778,194778],"mapped",[26401]],[[194779,194779],"mapped",[26462]],[[194780,194780],"mapped",[26451]],[[194781,194781],"mapped",[144323]],[[194782,194782],"mapped",[15177]],[[194783,194783],"mapped",[26618]],[[194784,194784],"mapped",[26501]],[[194785,194785],"mapped",[26706]],[[194786,194786],"mapped",[26757]],[[194787,194787],"mapped",[144493]],[[194788,194788],"mapped",[26766]],[[194789,194789],"mapped",[26655]],[[194790,194790],"mapped",[26900]],[[194791,194791],"mapped",[15261]],[[194792,194792],"mapped",[26946]],[[194793,194793],"mapped",[27043]],[[194794,194794],"mapped",[27114]],[[194795,194795],"mapped",[27304]],[[194796,194796],"mapped",[145059]],[[194797,194797],"mapped",[27355]],[[194798,194798],"mapped",[15384]],[[194799,194799],"mapped",[27425]],[[194800,194800],"mapped",[145575]],[[194801,194801],"mapped",[27476]],[[194802,194802],"mapped",[15438]],[[194803,194803],"mapped",[27506]],[[194804,194804],"mapped",[27551]],[[194805,194805],"mapped",[27578]],[[194806,194806],"mapped",[27579]],[[194807,194807],"mapped",[146061]],[[194808,194808],"mapped",[138507]],[[194809,194809],"mapped",[146170]],[[194810,194810],"mapped",[27726]],[[194811,194811],"mapped",[146620]],[[194812,194812],"mapped",[27839]],[[194813,194813],"mapped",[27853]],[[194814,194814],"mapped",[27751]],[[194815,194815],"mapped",[27926]],[[194816,194816],"mapped",[27966]],[[194817,194817],"mapped",[28023]],[[194818,194818],"mapped",[27969]],[[194819,194819],"mapped",[28009]],[[194820,194820],"mapped",[28024]],[[194821,194821],"mapped",[28037]],[[194822,194822],"mapped",[146718]],[[194823,194823],"mapped",[27956]],[[194824,194824],"mapped",[28207]],[[194825,194825],"mapped",[28270]],[[194826,194826],"mapped",[15667]],[[194827,194827],"mapped",[28363]],[[194828,194828],"mapped",[28359]],[[194829,194829],"mapped",[147153]],[[194830,194830],"mapped",[28153]],[[194831,194831],"mapped",[28526]],[[194832,194832],"mapped",[147294]],[[194833,194833],"mapped",[147342]],[[194834,194834],"mapped",[28614]],[[194835,194835],"mapped",[28729]],[[194836,194836],"mapped",[28702]],[[194837,194837],"mapped",[28699]],[[194838,194838],"mapped",[15766]],[[194839,194839],"mapped",[28746]],[[194840,194840],"mapped",[28797]],[[194841,194841],"mapped",[28791]],[[194842,194842],"mapped",[28845]],[[194843,194843],"mapped",[132389]],[[194844,194844],"mapped",[28997]],[[194845,194845],"mapped",[148067]],[[194846,194846],"mapped",[29084]],[[194847,194847],"disallowed"],[[194848,194848],"mapped",[29224]],[[194849,194849],"mapped",[29237]],[[194850,194850],"mapped",[29264]],[[194851,194851],"mapped",[149e3]],[[194852,194852],"mapped",[29312]],[[194853,194853],"mapped",[29333]],[[194854,194854],"mapped",[149301]],[[194855,194855],"mapped",[149524]],[[194856,194856],"mapped",[29562]],[[194857,194857],"mapped",[29579]],[[194858,194858],"mapped",[16044]],[[194859,194859],"mapped",[29605]],[[194860,194861],"mapped",[16056]],[[194862,194862],"mapped",[29767]],[[194863,194863],"mapped",[29788]],[[194864,194864],"mapped",[29809]],[[194865,194865],"mapped",[29829]],[[194866,194866],"mapped",[29898]],[[194867,194867],"mapped",[16155]],[[194868,194868],"mapped",[29988]],[[194869,194869],"mapped",[150582]],[[194870,194870],"mapped",[30014]],[[194871,194871],"mapped",[150674]],[[194872,194872],"mapped",[30064]],[[194873,194873],"mapped",[139679]],[[194874,194874],"mapped",[30224]],[[194875,194875],"mapped",[151457]],[[194876,194876],"mapped",[151480]],[[194877,194877],"mapped",[151620]],[[194878,194878],"mapped",[16380]],[[194879,194879],"mapped",[16392]],[[194880,194880],"mapped",[30452]],[[194881,194881],"mapped",[151795]],[[194882,194882],"mapped",[151794]],[[194883,194883],"mapped",[151833]],[[194884,194884],"mapped",[151859]],[[194885,194885],"mapped",[30494]],[[194886,194887],"mapped",[30495]],[[194888,194888],"mapped",[30538]],[[194889,194889],"mapped",[16441]],[[194890,194890],"mapped",[30603]],[[194891,194891],"mapped",[16454]],[[194892,194892],"mapped",[16534]],[[194893,194893],"mapped",[152605]],[[194894,194894],"mapped",[30798]],[[194895,194895],"mapped",[30860]],[[194896,194896],"mapped",[30924]],[[194897,194897],"mapped",[16611]],[[194898,194898],"mapped",[153126]],[[194899,194899],"mapped",[31062]],[[194900,194900],"mapped",[153242]],[[194901,194901],"mapped",[153285]],[[194902,194902],"mapped",[31119]],[[194903,194903],"mapped",[31211]],[[194904,194904],"mapped",[16687]],[[194905,194905],"mapped",[31296]],[[194906,194906],"mapped",[31306]],[[194907,194907],"mapped",[31311]],[[194908,194908],"mapped",[153980]],[[194909,194910],"mapped",[154279]],[[194911,194911],"disallowed"],[[194912,194912],"mapped",[16898]],[[194913,194913],"mapped",[154539]],[[194914,194914],"mapped",[31686]],[[194915,194915],"mapped",[31689]],[[194916,194916],"mapped",[16935]],[[194917,194917],"mapped",[154752]],[[194918,194918],"mapped",[31954]],[[194919,194919],"mapped",[17056]],[[194920,194920],"mapped",[31976]],[[194921,194921],"mapped",[31971]],[[194922,194922],"mapped",[32e3]],[[194923,194923],"mapped",[155526]],[[194924,194924],"mapped",[32099]],[[194925,194925],"mapped",[17153]],[[194926,194926],"mapped",[32199]],[[194927,194927],"mapped",[32258]],[[194928,194928],"mapped",[32325]],[[194929,194929],"mapped",[17204]],[[194930,194930],"mapped",[156200]],[[194931,194931],"mapped",[156231]],[[194932,194932],"mapped",[17241]],[[194933,194933],"mapped",[156377]],[[194934,194934],"mapped",[32634]],[[194935,194935],"mapped",[156478]],[[194936,194936],"mapped",[32661]],[[194937,194937],"mapped",[32762]],[[194938,194938],"mapped",[32773]],[[194939,194939],"mapped",[156890]],[[194940,194940],"mapped",[156963]],[[194941,194941],"mapped",[32864]],[[194942,194942],"mapped",[157096]],[[194943,194943],"mapped",[32880]],[[194944,194944],"mapped",[144223]],[[194945,194945],"mapped",[17365]],[[194946,194946],"mapped",[32946]],[[194947,194947],"mapped",[33027]],[[194948,194948],"mapped",[17419]],[[194949,194949],"mapped",[33086]],[[194950,194950],"mapped",[23221]],[[194951,194951],"mapped",[157607]],[[194952,194952],"mapped",[157621]],[[194953,194953],"mapped",[144275]],[[194954,194954],"mapped",[144284]],[[194955,194955],"mapped",[33281]],[[194956,194956],"mapped",[33284]],[[194957,194957],"mapped",[36766]],[[194958,194958],"mapped",[17515]],[[194959,194959],"mapped",[33425]],[[194960,194960],"mapped",[33419]],[[194961,194961],"mapped",[33437]],[[194962,194962],"mapped",[21171]],[[194963,194963],"mapped",[33457]],[[194964,194964],"mapped",[33459]],[[194965,194965],"mapped",[33469]],[[194966,194966],"mapped",[33510]],[[194967,194967],"mapped",[158524]],[[194968,194968],"mapped",[33509]],[[194969,194969],"mapped",[33565]],[[194970,194970],"mapped",[33635]],[[194971,194971],"mapped",[33709]],[[194972,194972],"mapped",[33571]],[[194973,194973],"mapped",[33725]],[[194974,194974],"mapped",[33767]],[[194975,194975],"mapped",[33879]],[[194976,194976],"mapped",[33619]],[[194977,194977],"mapped",[33738]],[[194978,194978],"mapped",[33740]],[[194979,194979],"mapped",[33756]],[[194980,194980],"mapped",[158774]],[[194981,194981],"mapped",[159083]],[[194982,194982],"mapped",[158933]],[[194983,194983],"mapped",[17707]],[[194984,194984],"mapped",[34033]],[[194985,194985],"mapped",[34035]],[[194986,194986],"mapped",[34070]],[[194987,194987],"mapped",[160714]],[[194988,194988],"mapped",[34148]],[[194989,194989],"mapped",[159532]],[[194990,194990],"mapped",[17757]],[[194991,194991],"mapped",[17761]],[[194992,194992],"mapped",[159665]],[[194993,194993],"mapped",[159954]],[[194994,194994],"mapped",[17771]],[[194995,194995],"mapped",[34384]],[[194996,194996],"mapped",[34396]],[[194997,194997],"mapped",[34407]],[[194998,194998],"mapped",[34409]],[[194999,194999],"mapped",[34473]],[[195e3,195e3],"mapped",[34440]],[[195001,195001],"mapped",[34574]],[[195002,195002],"mapped",[34530]],[[195003,195003],"mapped",[34681]],[[195004,195004],"mapped",[34600]],[[195005,195005],"mapped",[34667]],[[195006,195006],"mapped",[34694]],[[195007,195007],"disallowed"],[[195008,195008],"mapped",[34785]],[[195009,195009],"mapped",[34817]],[[195010,195010],"mapped",[17913]],[[195011,195011],"mapped",[34912]],[[195012,195012],"mapped",[34915]],[[195013,195013],"mapped",[161383]],[[195014,195014],"mapped",[35031]],[[195015,195015],"mapped",[35038]],[[195016,195016],"mapped",[17973]],[[195017,195017],"mapped",[35066]],[[195018,195018],"mapped",[13499]],[[195019,195019],"mapped",[161966]],[[195020,195020],"mapped",[162150]],[[195021,195021],"mapped",[18110]],[[195022,195022],"mapped",[18119]],[[195023,195023],"mapped",[35488]],[[195024,195024],"mapped",[35565]],[[195025,195025],"mapped",[35722]],[[195026,195026],"mapped",[35925]],[[195027,195027],"mapped",[162984]],[[195028,195028],"mapped",[36011]],[[195029,195029],"mapped",[36033]],[[195030,195030],"mapped",[36123]],[[195031,195031],"mapped",[36215]],[[195032,195032],"mapped",[163631]],[[195033,195033],"mapped",[133124]],[[195034,195034],"mapped",[36299]],[[195035,195035],"mapped",[36284]],[[195036,195036],"mapped",[36336]],[[195037,195037],"mapped",[133342]],[[195038,195038],"mapped",[36564]],[[195039,195039],"mapped",[36664]],[[195040,195040],"mapped",[165330]],[[195041,195041],"mapped",[165357]],[[195042,195042],"mapped",[37012]],[[195043,195043],"mapped",[37105]],[[195044,195044],"mapped",[37137]],[[195045,195045],"mapped",[165678]],[[195046,195046],"mapped",[37147]],[[195047,195047],"mapped",[37432]],[[195048,195048],"mapped",[37591]],[[195049,195049],"mapped",[37592]],[[195050,195050],"mapped",[37500]],[[195051,195051],"mapped",[37881]],[[195052,195052],"mapped",[37909]],[[195053,195053],"mapped",[166906]],[[195054,195054],"mapped",[38283]],[[195055,195055],"mapped",[18837]],[[195056,195056],"mapped",[38327]],[[195057,195057],"mapped",[167287]],[[195058,195058],"mapped",[18918]],[[195059,195059],"mapped",[38595]],[[195060,195060],"mapped",[23986]],[[195061,195061],"mapped",[38691]],[[195062,195062],"mapped",[168261]],[[195063,195063],"mapped",[168474]],[[195064,195064],"mapped",[19054]],[[195065,195065],"mapped",[19062]],[[195066,195066],"mapped",[38880]],[[195067,195067],"mapped",[168970]],[[195068,195068],"mapped",[19122]],[[195069,195069],"mapped",[169110]],[[195070,195071],"mapped",[38923]],[[195072,195072],"mapped",[38953]],[[195073,195073],"mapped",[169398]],[[195074,195074],"mapped",[39138]],[[195075,195075],"mapped",[19251]],[[195076,195076],"mapped",[39209]],[[195077,195077],"mapped",[39335]],[[195078,195078],"mapped",[39362]],[[195079,195079],"mapped",[39422]],[[195080,195080],"mapped",[19406]],[[195081,195081],"mapped",[170800]],[[195082,195082],"mapped",[39698]],[[195083,195083],"mapped",[4e4]],[[195084,195084],"mapped",[40189]],[[195085,195085],"mapped",[19662]],[[195086,195086],"mapped",[19693]],[[195087,195087],"mapped",[40295]],[[195088,195088],"mapped",[172238]],[[195089,195089],"mapped",[19704]],[[195090,195090],"mapped",[172293]],[[195091,195091],"mapped",[172558]],[[195092,195092],"mapped",[172689]],[[195093,195093],"mapped",[40635]],[[195094,195094],"mapped",[19798]],[[195095,195095],"mapped",[40697]],[[195096,195096],"mapped",[40702]],[[195097,195097],"mapped",[40709]],[[195098,195098],"mapped",[40719]],[[195099,195099],"mapped",[40726]],[[195100,195100],"mapped",[40763]],[[195101,195101],"mapped",[173568]],[[195102,196605],"disallowed"],[[196606,196607],"disallowed"],[[196608,262141],"disallowed"],[[262142,262143],"disallowed"],[[262144,327677],"disallowed"],[[327678,327679],"disallowed"],[[327680,393213],"disallowed"],[[393214,393215],"disallowed"],[[393216,458749],"disallowed"],[[458750,458751],"disallowed"],[[458752,524285],"disallowed"],[[524286,524287],"disallowed"],[[524288,589821],"disallowed"],[[589822,589823],"disallowed"],[[589824,655357],"disallowed"],[[655358,655359],"disallowed"],[[655360,720893],"disallowed"],[[720894,720895],"disallowed"],[[720896,786429],"disallowed"],[[786430,786431],"disallowed"],[[786432,851965],"disallowed"],[[851966,851967],"disallowed"],[[851968,917501],"disallowed"],[[917502,917503],"disallowed"],[[917504,917504],"disallowed"],[[917505,917505],"disallowed"],[[917506,917535],"disallowed"],[[917536,917631],"disallowed"],[[917632,917759],"disallowed"],[[917760,917999],"ignored"],[[918e3,983037],"disallowed"],[[983038,983039],"disallowed"],[[983040,1048573],"disallowed"],[[1048574,1048575],"disallowed"],[[1048576,1114109],"disallowed"],[[1114110,1114111],"disallowed"]]});var Gc=_e((ig,oo)=>{"use strict";var Hc=require("punycode"),Uc=qc(),qa={TRANSITIONAL:0,NONTRANSITIONAL:1};function Wc(r){return r.split("\0").map(function(e){return e.normalize("NFC")}).join("\0")}function zc(r){for(var e=0,t=Uc.length-1;e<=t;){var a=Math.floor((e+t)/2),i=Uc[a];if(i[0][0]<=r&&i[0][1]>=r)return i;i[0][0]>r?t=a-1:e=a+1}return null}var w6=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;function Jc(r){return r.replace(w6,"_").length}function b6(r,e,t){for(var a=!1,i="",s=Jc(r),n=0;n<s;++n){var o=r.codePointAt(n),p=zc(o);switch(p[1]){case"disallowed":a=!0,i+=String.fromCodePoint(o);break;case"ignored":break;case"mapped":i+=String.fromCodePoint.apply(String,p[2]);break;case"deviation":t===qa.TRANSITIONAL?i+=String.fromCodePoint.apply(String,p[2]):i+=String.fromCodePoint(o);break;case"valid":i+=String.fromCodePoint(o);break;case"disallowed_STD3_mapped":e?(a=!0,i+=String.fromCodePoint(o)):i+=String.fromCodePoint.apply(String,p[2]);break;case"disallowed_STD3_valid":e&&(a=!0),i+=String.fromCodePoint(o);break}}return{string:i,error:a}}var _6=/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u192B\u1930-\u193B\u19B0-\u19C0\u19C8\u19C9\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2D]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDE2C-\uDE37\uDEDF-\uDEEA\uDF01-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDE30-\uDE40\uDEAB-\uDEB7]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD83A[\uDCD0-\uDCD6]|\uDB40[\uDD00-\uDDEF]/;function S6(r,e){r.substr(0,4)==="xn--"&&(r=Hc.toUnicode(r),e=qa.NONTRANSITIONAL);var t=!1;(Wc(r)!==r||r[3]==="-"&&r[4]==="-"||r[0]==="-"||r[r.length-1]==="-"||r.indexOf(".")!==-1||r.search(_6)===0)&&(t=!0);for(var a=Jc(r),i=0;i<a;++i){var s=zc(r.codePointAt(i));if(no===qa.TRANSITIONAL&&s[1]!=="valid"||no===qa.NONTRANSITIONAL&&s[1]!=="valid"&&s[1]!=="deviation"){t=!0;break}}return{label:r,error:t}}function no(r,e,t){var a=b6(r,e,t);a.string=Wc(a.string);for(var i=a.string.split("."),s=0;s<i.length;++s)try{var n=S6(i[s]);i[s]=n.label,a.error=a.error||n.error}catch{a.error=!0}return{string:i.join("."),error:a.error}}oo.exports.toASCII=function(r,e,t,a){var i=no(r,e,t),s=i.string.split(".");if(s=s.map(function(p){try{return Hc.toASCII(p)}catch{return i.error=!0,p}}),a){var n=s.slice(0,s.length-1).join(".").length;(n.length>253||n.length===0)&&(i.error=!0);for(var o=0;o<s.length;++o)if(s.length>63||s.length===0){i.error=!0;break}}return i.error?null:s.join(".")};oo.exports.toUnicode=function(r,e){var t=no(r,e,qa.NONTRANSITIONAL);return{domain:t.string,error:t.error}};oo.exports.PROCESSING_OPTIONS=qa});var bt=_e((sg,ze)=>{"use strict";var Ua=require("punycode"),Kc=Gc(),Qc={ftp:21,file:null,gopher:70,http:80,https:443,ws:80,wss:443},U=Symbol("failure");function Xc(r){return Ua.ucs2.decode(r).length}function Yc(r,e){let t=r[e];return isNaN(t)?void 0:String.fromCodePoint(t)}function Ui(r){return r>=48&&r<=57}function Hi(r){return r>=65&&r<=90||r>=97&&r<=122}function T6(r){return Hi(r)||Ui(r)}function dt(r){return Ui(r)||r>=65&&r<=70||r>=97&&r<=102}function Zc(r){return r==="."||r.toLowerCase()==="%2e"}function x6(r){return r=r.toLowerCase(),r===".."||r==="%2e."||r===".%2e"||r==="%2e%2e"}function E6(r,e){return Hi(r)&&(e===58||e===124)}function e2(r){return r.length===2&&Hi(r.codePointAt(0))&&(r[1]===":"||r[1]==="|")}function P6(r){return r.length===2&&Hi(r.codePointAt(0))&&r[1]===":"}function A6(r){return r.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/)!==-1}function R6(r){return r.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/)!==-1}function Ep(r){return Qc[r]!==void 0}function ye(r){return Ep(r.scheme)}function C6(r){return Qc[r]}function t2(r){let e=r.toString(16).toUpperCase();return e.length===1&&(e="0"+e),"%"+e}function k6(r){let e=new Buffer(r),t="";for(let a=0;a<e.length;++a)t+=t2(e[a]);return t}function N6(r){let e=new Buffer(r),t=[];for(let a=0;a<e.length;++a)e[a]!==37?t.push(e[a]):e[a]===37&&dt(e[a+1])&&dt(e[a+2])?(t.push(parseInt(e.slice(a+1,a+3).toString(),16)),a+=2):t.push(e[a]);return new Buffer(t).toString()}function po(r){return r<=31||r>126}var M6=new Set([32,34,35,60,62,63,96,123,125]);function r2(r){return po(r)||M6.has(r)}var D6=new Set([47,58,59,61,64,91,92,93,94,124]);function Ap(r){return r2(r)||D6.has(r)}function Vr(r,e){let t=String.fromCodePoint(r);return e(r)?k6(t):t}function I6(r){let e=10;return r.length>=2&&r.charAt(0)==="0"&&r.charAt(1).toLowerCase()==="x"?(r=r.substring(2),e=16):r.length>=2&&r.charAt(0)==="0"&&(r=r.substring(1),e=8),r===""?0:(e===10?/[^0-9]/:e===16?/[^0-9A-Fa-f]/:/[^0-7]/).test(r)?U:parseInt(r,e)}function F6(r){let e=r.split(".");if(e[e.length-1]===""&&e.length>1&&e.pop(),e.length>4)return r;let t=[];for(let s of e){if(s==="")return r;let n=I6(s);if(n===U)return r;t.push(n)}for(let s=0;s<t.length-1;++s)if(t[s]>255)return U;if(t[t.length-1]>=Math.pow(256,5-t.length))return U;let a=t.pop(),i=0;for(let s of t)a+=s*Math.pow(256,3-i),++i;return a}function $6(r){let e="",t=r;for(let a=1;a<=4;++a)e=String(t%256)+e,a!==4&&(e="."+e),t=Math.floor(t/256);return e}function O6(r){let e=[0,0,0,0,0,0,0,0],t=0,a=null,i=0;if(r=Ua.ucs2.decode(r),r[i]===58){if(r[i+1]!==58)return U;i+=2,++t,a=t}for(;i<r.length;){if(t===8)return U;if(r[i]===58){if(a!==null)return U;++i,++t,a=t;continue}let s=0,n=0;for(;n<4&&dt(r[i]);)s=s*16+parseInt(Yc(r,i),16),++i,++n;if(r[i]===46){if(n===0||(i-=n,t>6))return U;let o=0;for(;r[i]!==void 0;){let p=null;if(o>0)if(r[i]===46&&o<4)++i;else return U;if(!Ui(r[i]))return U;for(;Ui(r[i]);){let d=parseInt(Yc(r,i));if(p===null)p=d;else{if(p===0)return U;p=p*10+d}if(p>255)return U;++i}e[t]=e[t]*256+p,++o,(o===2||o===4)&&++t}if(o!==4)return U;break}else if(r[i]===58){if(++i,r[i]===void 0)return U}else if(r[i]!==void 0)return U;e[t]=s,++t}if(a!==null){let s=t-a;for(t=7;t!==0&&s>0;){let n=e[a+s-1];e[a+s-1]=e[t],e[t]=n,--t,--s}}else if(a===null&&t!==8)return U;return e}function L6(r){let e="",a=B6(r).idx,i=!1;for(let s=0;s<=7;++s)if(!(i&&r[s]===0)){if(i&&(i=!1),a===s){e+=s===0?"::":":",i=!0;continue}e+=r[s].toString(16),s!==7&&(e+=":")}return e}function Pp(r,e){if(r[0]==="[")return r[r.length-1]!=="]"?U:O6(r.substring(1,r.length-1));if(!e)return j6(r);let t=N6(r),a=Kc.toASCII(t,!1,Kc.PROCESSING_OPTIONS.NONTRANSITIONAL,!1);if(a===null||A6(a))return U;let i=F6(a);return typeof i=="number"||i===U?i:a}function j6(r){if(R6(r))return U;let e="",t=Ua.ucs2.decode(r);for(let a=0;a<t.length;++a)e+=Vr(t[a],po);return e}function B6(r){let e=null,t=1,a=null,i=0;for(let s=0;s<r.length;++s)r[s]!==0?(i>t&&(e=a,t=i),a=null,i=0):(a===null&&(a=s),++i);return i>t&&(e=a,t=i),{idx:e,len:t}}function Rp(r){return typeof r=="number"?$6(r):r instanceof Array?"["+L6(r)+"]":r}function V6(r){return r.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g,"")}function q6(r){return r.replace(/\u0009|\u000A|\u000D/g,"")}function a2(r){let e=r.path;e.length!==0&&(r.scheme==="file"&&e.length===1&&H6(e[0])||e.pop())}function i2(r){return r.username!==""||r.password!==""}function U6(r){return r.host===null||r.host===""||r.cannotBeABaseURL||r.scheme==="file"}function H6(r){return/^[A-Za-z]:$/.test(r)}function pe(r,e,t,a,i){if(this.pointer=0,this.input=r,this.base=e||null,this.encodingOverride=t||"utf-8",this.stateOverride=i,this.url=a,this.failure=!1,this.parseError=!1,!this.url){this.url={scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,cannotBeABaseURL:!1};let n=V6(this.input);n!==this.input&&(this.parseError=!0),this.input=n}let s=q6(this.input);for(s!==this.input&&(this.parseError=!0),this.input=s,this.state=i||"scheme start",this.buffer="",this.atFlag=!1,this.arrFlag=!1,this.passwordTokenSeenFlag=!1,this.input=Ua.ucs2.decode(this.input);this.pointer<=this.input.length;++this.pointer){let n=this.input[this.pointer],o=isNaN(n)?void 0:String.fromCodePoint(n),p=this["parse "+this.state](n,o);if(p){if(p===U){this.failure=!0;break}}else break}}pe.prototype["parse scheme start"]=function(e,t){if(Hi(e))this.buffer+=t.toLowerCase(),this.state="scheme";else if(!this.stateOverride)this.state="no scheme",--this.pointer;else return this.parseError=!0,U;return!0};pe.prototype["parse scheme"]=function(e,t){if(T6(e)||e===43||e===45||e===46)this.buffer+=t.toLowerCase();else if(e===58){if(this.stateOverride&&(ye(this.url)&&!Ep(this.buffer)||!ye(this.url)&&Ep(this.buffer)||(i2(this.url)||this.url.port!==null)&&this.buffer==="file"||this.url.scheme==="file"&&(this.url.host===""||this.url.host===null))||(this.url.scheme=this.buffer,this.buffer="",this.stateOverride))return!1;this.url.scheme==="file"?((this.input[this.pointer+1]!==47||this.input[this.pointer+2]!==47)&&(this.parseError=!0),this.state="file"):ye(this.url)&&this.base!==null&&this.base.scheme===this.url.scheme?this.state="special relative or authority":ye(this.url)?this.state="special authority slashes":this.input[this.pointer+1]===47?(this.state="path or authority",++this.pointer):(this.url.cannotBeABaseURL=!0,this.url.path.push(""),this.state="cannot-be-a-base-URL path")}else if(!this.stateOverride)this.buffer="",this.state="no scheme",this.pointer=-1;else return this.parseError=!0,U;return!0};pe.prototype["parse no scheme"]=function(e){return this.base===null||this.base.cannotBeABaseURL&&e!==35?U:(this.base.cannotBeABaseURL&&e===35?(this.url.scheme=this.base.scheme,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.url.cannotBeABaseURL=!0,this.state="fragment"):this.base.scheme==="file"?(this.state="file",--this.pointer):(this.state="relative",--this.pointer),!0)};pe.prototype["parse special relative or authority"]=function(e){return e===47&&this.input[this.pointer+1]===47?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="relative",--this.pointer),!0};pe.prototype["parse path or authority"]=function(e){return e===47?this.state="authority":(this.state="path",--this.pointer),!0};pe.prototype["parse relative"]=function(e){return this.url.scheme=this.base.scheme,isNaN(e)?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query):e===47?this.state="relative slash":e===63?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):e===35?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):ye(this.url)&&e===92?(this.parseError=!0,this.state="relative slash"):(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(0,this.base.path.length-1),this.state="path",--this.pointer),!0};pe.prototype["parse relative slash"]=function(e){return ye(this.url)&&(e===47||e===92)?(e===92&&(this.parseError=!0),this.state="special authority ignore slashes"):e===47?this.state="authority":(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.state="path",--this.pointer),!0};pe.prototype["parse special authority slashes"]=function(e){return e===47&&this.input[this.pointer+1]===47?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="special authority ignore slashes",--this.pointer),!0};pe.prototype["parse special authority ignore slashes"]=function(e){return e!==47&&e!==92?(this.state="authority",--this.pointer):this.parseError=!0,!0};pe.prototype["parse authority"]=function(e,t){if(e===64){this.parseError=!0,this.atFlag&&(this.buffer="%40"+this.buffer),this.atFlag=!0;let a=Xc(this.buffer);for(let i=0;i<a;++i){let s=this.buffer.codePointAt(i);if(s===58&&!this.passwordTokenSeenFlag){this.passwordTokenSeenFlag=!0;continue}let n=Vr(s,Ap);this.passwordTokenSeenFlag?this.url.password+=n:this.url.username+=n}this.buffer=""}else if(isNaN(e)||e===47||e===63||e===35||ye(this.url)&&e===92){if(this.atFlag&&this.buffer==="")return this.parseError=!0,U;this.pointer-=Xc(this.buffer)+1,this.buffer="",this.state="host"}else this.buffer+=t;return!0};pe.prototype["parse hostname"]=pe.prototype["parse host"]=function(e,t){if(this.stateOverride&&this.url.scheme==="file")--this.pointer,this.state="file host";else if(e===58&&!this.arrFlag){if(this.buffer==="")return this.parseError=!0,U;let a=Pp(this.buffer,ye(this.url));if(a===U)return U;if(this.url.host=a,this.buffer="",this.state="port",this.stateOverride==="hostname")return!1}else if(isNaN(e)||e===47||e===63||e===35||ye(this.url)&&e===92){if(--this.pointer,ye(this.url)&&this.buffer==="")return this.parseError=!0,U;if(this.stateOverride&&this.buffer===""&&(i2(this.url)||this.url.port!==null))return this.parseError=!0,!1;let a=Pp(this.buffer,ye(this.url));if(a===U)return U;if(this.url.host=a,this.buffer="",this.state="path start",this.stateOverride)return!1}else e===91?this.arrFlag=!0:e===93&&(this.arrFlag=!1),this.buffer+=t;return!0};pe.prototype["parse port"]=function(e,t){if(Ui(e))this.buffer+=t;else if(isNaN(e)||e===47||e===63||e===35||ye(this.url)&&e===92||this.stateOverride){if(this.buffer!==""){let a=parseInt(this.buffer);if(a>Math.pow(2,16)-1)return this.parseError=!0,U;this.url.port=a===C6(this.url.scheme)?null:a,this.buffer=""}if(this.stateOverride)return!1;this.state="path start",--this.pointer}else return this.parseError=!0,U;return!0};var W6=new Set([47,92,63,35]);pe.prototype["parse file"]=function(e){return this.url.scheme="file",e===47||e===92?(e===92&&(this.parseError=!0),this.state="file slash"):this.base!==null&&this.base.scheme==="file"?isNaN(e)?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query):e===63?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):e===35?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):(this.input.length-this.pointer-1===0||!E6(e,this.input[this.pointer+1])||this.input.length-this.pointer-1>=2&&!W6.has(this.input[this.pointer+2])?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),a2(this.url)):this.parseError=!0,this.state="path",--this.pointer):(this.state="path",--this.pointer),!0};pe.prototype["parse file slash"]=function(e){return e===47||e===92?(e===92&&(this.parseError=!0),this.state="file host"):(this.base!==null&&this.base.scheme==="file"&&(P6(this.base.path[0])?this.url.path.push(this.base.path[0]):this.url.host=this.base.host),this.state="path",--this.pointer),!0};pe.prototype["parse file host"]=function(e,t){if(isNaN(e)||e===47||e===92||e===63||e===35)if(--this.pointer,!this.stateOverride&&e2(this.buffer))this.parseError=!0,this.state="path";else if(this.buffer===""){if(this.url.host="",this.stateOverride)return!1;this.state="path start"}else{let a=Pp(this.buffer,ye(this.url));if(a===U)return U;if(a==="localhost"&&(a=""),this.url.host=a,this.stateOverride)return!1;this.buffer="",this.state="path start"}else this.buffer+=t;return!0};pe.prototype["parse path start"]=function(e){return ye(this.url)?(e===92&&(this.parseError=!0),this.state="path",e!==47&&e!==92&&--this.pointer):!this.stateOverride&&e===63?(this.url.query="",this.state="query"):!this.stateOverride&&e===35?(this.url.fragment="",this.state="fragment"):e!==void 0&&(this.state="path",e!==47&&--this.pointer),!0};pe.prototype["parse path"]=function(e){if(isNaN(e)||e===47||ye(this.url)&&e===92||!this.stateOverride&&(e===63||e===35)){if(ye(this.url)&&e===92&&(this.parseError=!0),x6(this.buffer)?(a2(this.url),e!==47&&!(ye(this.url)&&e===92)&&this.url.path.push("")):Zc(this.buffer)&&e!==47&&!(ye(this.url)&&e===92)?this.url.path.push(""):Zc(this.buffer)||(this.url.scheme==="file"&&this.url.path.length===0&&e2(this.buffer)&&(this.url.host!==""&&this.url.host!==null&&(this.parseError=!0,this.url.host=""),this.buffer=this.buffer[0]+":"),this.url.path.push(this.buffer)),this.buffer="",this.url.scheme==="file"&&(e===void 0||e===63||e===35))for(;this.url.path.length>1&&this.url.path[0]==="";)this.parseError=!0,this.url.path.shift();e===63&&(this.url.query="",this.state="query"),e===35&&(this.url.fragment="",this.state="fragment")}else e===37&&(!dt(this.input[this.pointer+1])||!dt(this.input[this.pointer+2]))&&(this.parseError=!0),this.buffer+=Vr(e,r2);return!0};pe.prototype["parse cannot-be-a-base-URL path"]=function(e){return e===63?(this.url.query="",this.state="query"):e===35?(this.url.fragment="",this.state="fragment"):(!isNaN(e)&&e!==37&&(this.parseError=!0),e===37&&(!dt(this.input[this.pointer+1])||!dt(this.input[this.pointer+2]))&&(this.parseError=!0),isNaN(e)||(this.url.path[0]=this.url.path[0]+Vr(e,po))),!0};pe.prototype["parse query"]=function(e,t){if(isNaN(e)||!this.stateOverride&&e===35){(!ye(this.url)||this.url.scheme==="ws"||this.url.scheme==="wss")&&(this.encodingOverride="utf-8");let a=new Buffer(this.buffer);for(let i=0;i<a.length;++i)a[i]<33||a[i]>126||a[i]===34||a[i]===35||a[i]===60||a[i]===62?this.url.query+=t2(a[i]):this.url.query+=String.fromCodePoint(a[i]);this.buffer="",e===35&&(this.url.fragment="",this.state="fragment")}else e===37&&(!dt(this.input[this.pointer+1])||!dt(this.input[this.pointer+2]))&&(this.parseError=!0),this.buffer+=t;return!0};pe.prototype["parse fragment"]=function(e){return isNaN(e)||(e===0?this.parseError=!0:(e===37&&(!dt(this.input[this.pointer+1])||!dt(this.input[this.pointer+2]))&&(this.parseError=!0),this.url.fragment+=Vr(e,po))),!0};function z6(r,e){let t=r.scheme+":";if(r.host!==null?(t+="//",(r.username!==""||r.password!=="")&&(t+=r.username,r.password!==""&&(t+=":"+r.password),t+="@"),t+=Rp(r.host),r.port!==null&&(t+=":"+r.port)):r.host===null&&r.scheme==="file"&&(t+="//"),r.cannotBeABaseURL)t+=r.path[0];else for(let a of r.path)t+="/"+a;return r.query!==null&&(t+="?"+r.query),!e&&r.fragment!==null&&(t+="#"+r.fragment),t}function J6(r){let e=r.scheme+"://";return e+=Rp(r.host),r.port!==null&&(e+=":"+r.port),e}ze.exports.serializeURL=z6;ze.exports.serializeURLOrigin=function(r){switch(r.scheme){case"blob":try{return ze.exports.serializeURLOrigin(ze.exports.parseURL(r.path[0]))}catch{return"null"}case"ftp":case"gopher":case"http":case"https":case"ws":case"wss":return J6({scheme:r.scheme,host:r.host,port:r.port});case"file":return"file://";default:return"null"}};ze.exports.basicURLParse=function(r,e){e===void 0&&(e={});let t=new pe(r,e.baseURL,e.encodingOverride,e.url,e.stateOverride);return t.failure?"failure":t.url};ze.exports.setTheUsername=function(r,e){r.username="";let t=Ua.ucs2.decode(e);for(let a=0;a<t.length;++a)r.username+=Vr(t[a],Ap)};ze.exports.setThePassword=function(r,e){r.password="";let t=Ua.ucs2.decode(e);for(let a=0;a<t.length;++a)r.password+=Vr(t[a],Ap)};ze.exports.serializeHost=Rp;ze.exports.cannotHaveAUsernamePasswordPort=U6;ze.exports.serializeInteger=function(r){return String(r)};ze.exports.parseURL=function(r,e){return e===void 0&&(e={}),ze.exports.basicURLParse(r,{baseURL:e.baseURL,encodingOverride:e.encodingOverride})}});var n2=_e(s2=>{"use strict";var de=bt();s2.implementation=class{constructor(e){let t=e[0],a=e[1],i=null;if(a!==void 0&&(i=de.basicURLParse(a),i==="failure"))throw new TypeError("Invalid base URL");let s=de.basicURLParse(t,{baseURL:i});if(s==="failure")throw new TypeError("Invalid URL");this._url=s}get href(){return de.serializeURL(this._url)}set href(e){let t=de.basicURLParse(e);if(t==="failure")throw new TypeError("Invalid URL");this._url=t}get origin(){return de.serializeURLOrigin(this._url)}get protocol(){return this._url.scheme+":"}set protocol(e){de.basicURLParse(e+":",{url:this._url,stateOverride:"scheme start"})}get username(){return this._url.username}set username(e){de.cannotHaveAUsernamePasswordPort(this._url)||de.setTheUsername(this._url,e)}get password(){return this._url.password}set password(e){de.cannotHaveAUsernamePasswordPort(this._url)||de.setThePassword(this._url,e)}get host(){let e=this._url;return e.host===null?"":e.port===null?de.serializeHost(e.host):de.serializeHost(e.host)+":"+de.serializeInteger(e.port)}set host(e){this._url.cannotBeABaseURL||de.basicURLParse(e,{url:this._url,stateOverride:"host"})}get hostname(){return this._url.host===null?"":de.serializeHost(this._url.host)}set hostname(e){this._url.cannotBeABaseURL||de.basicURLParse(e,{url:this._url,stateOverride:"hostname"})}get port(){return this._url.port===null?"":de.serializeInteger(this._url.port)}set port(e){de.cannotHaveAUsernamePasswordPort(this._url)||(e===""?this._url.port=null:de.basicURLParse(e,{url:this._url,stateOverride:"port"}))}get pathname(){return this._url.cannotBeABaseURL?this._url.path[0]:this._url.path.length===0?"":"/"+this._url.path.join("/")}set pathname(e){this._url.cannotBeABaseURL||(this._url.path=[],de.basicURLParse(e,{url:this._url,stateOverride:"path start"}))}get search(){return this._url.query===null||this._url.query===""?"":"?"+this._url.query}set search(e){let t=this._url;if(e===""){t.query=null;return}let a=e[0]==="?"?e.substring(1):e;t.query="",de.basicURLParse(a,{url:t,stateOverride:"query"})}get hash(){return this._url.fragment===null||this._url.fragment===""?"":"#"+this._url.fragment}set hash(e){if(e===""){this._url.fragment=null;return}let t=e[0]==="#"?e.substring(1):e;this._url.fragment="",de.basicURLParse(t,{url:this._url,stateOverride:"fragment"})}toJSON(){return this.href}}});var d2=_e((pg,Wi)=>{"use strict";var et=Bc(),p2=Vc(),o2=n2(),X=p2.implSymbol;function xe(r){if(!this||this[X]||!(this instanceof xe))throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");if(arguments.length<1)throw new TypeError("Failed to construct 'URL': 1 argument required, but only "+arguments.length+" present.");let e=[];for(let t=0;t<arguments.length&&t<2;++t)e[t]=arguments[t];e[0]=et.USVString(e[0]),e[1]!==void 0&&(e[1]=et.USVString(e[1])),Wi.exports.setup(this,e)}xe.prototype.toJSON=function(){if(!this||!Wi.exports.is(this))throw new TypeError("Illegal invocation");let e=[];for(let t=0;t<arguments.length&&t<0;++t)e[t]=arguments[t];return this[X].toJSON.apply(this[X],e)};Object.defineProperty(xe.prototype,"href",{get(){return this[X].href},set(r){r=et.USVString(r),this[X].href=r},enumerable:!0,configurable:!0});xe.prototype.toString=function(){if(!this||!Wi.exports.is(this))throw new TypeError("Illegal invocation");return this.href};Object.defineProperty(xe.prototype,"origin",{get(){return this[X].origin},enumerable:!0,configurable:!0});Object.defineProperty(xe.prototype,"protocol",{get(){return this[X].protocol},set(r){r=et.USVString(r),this[X].protocol=r},enumerable:!0,configurable:!0});Object.defineProperty(xe.prototype,"username",{get(){return this[X].username},set(r){r=et.USVString(r),this[X].username=r},enumerable:!0,configurable:!0});Object.defineProperty(xe.prototype,"password",{get(){return this[X].password},set(r){r=et.USVString(r),this[X].password=r},enumerable:!0,configurable:!0});Object.defineProperty(xe.prototype,"host",{get(){return this[X].host},set(r){r=et.USVString(r),this[X].host=r},enumerable:!0,configurable:!0});Object.defineProperty(xe.prototype,"hostname",{get(){return this[X].hostname},set(r){r=et.USVString(r),this[X].hostname=r},enumerable:!0,configurable:!0});Object.defineProperty(xe.prototype,"port",{get(){return this[X].port},set(r){r=et.USVString(r),this[X].port=r},enumerable:!0,configurable:!0});Object.defineProperty(xe.prototype,"pathname",{get(){return this[X].pathname},set(r){r=et.USVString(r),this[X].pathname=r},enumerable:!0,configurable:!0});Object.defineProperty(xe.prototype,"search",{get(){return this[X].search},set(r){r=et.USVString(r),this[X].search=r},enumerable:!0,configurable:!0});Object.defineProperty(xe.prototype,"hash",{get(){return this[X].hash},set(r){r=et.USVString(r),this[X].hash=r},enumerable:!0,configurable:!0});Wi.exports={is(r){return!!r&&r[X]instanceof o2.implementation},create(r,e){let t=Object.create(xe.prototype);return this.setup(t,r,e),t},setup(r,e,t){t||(t={}),t.wrapper=r,r[X]=new o2.implementation(e,t),r[X][p2.wrapperSymbol]=r},interface:xe,expose:{Window:{URL:xe},Worker:{URL:xe}}}});var l2=_e(_t=>{"use strict";_t.URL=d2().interface;_t.serializeURL=bt().serializeURL;_t.serializeURLOrigin=bt().serializeURLOrigin;_t.basicURLParse=bt().basicURLParse;_t.setTheUsername=bt().setTheUsername;_t.setThePassword=bt().setThePassword;_t.serializeHost=bt().serializeHost;_t.serializeInteger=bt().serializeInteger;_t.parseURL=bt().parseURL});var S2=_e((ct,_2)=>{"use strict";Object.defineProperty(ct,"__esModule",{value:!0});function Ja(r){return r&&typeof r=="object"&&"default"in r?r.default:r}var lt=Ja(require("stream")),h2=Ja(require("http")),co=Ja(require("url")),f2=Ja(l2()),G6=Ja(require("https")),qr=Ja(require("zlib")),K6=lt.Readable,Lt=Symbol("buffer"),Cp=Symbol("type"),Ji=class r{constructor(){this[Cp]="";let e=arguments[0],t=arguments[1],a=[],i=0;if(e){let n=e,o=Number(n.length);for(let p=0;p<o;p++){let d=n[p],l;d instanceof Buffer?l=d:ArrayBuffer.isView(d)?l=Buffer.from(d.buffer,d.byteOffset,d.byteLength):d instanceof ArrayBuffer?l=Buffer.from(d):d instanceof r?l=d[Lt]:l=Buffer.from(typeof d=="string"?d:String(d)),i+=l.length,a.push(l)}}this[Lt]=Buffer.concat(a);let s=t&&t.type!==void 0&&String(t.type).toLowerCase();s&&!/[^\u0020-\u007E]/.test(s)&&(this[Cp]=s)}get size(){return this[Lt].length}get type(){return this[Cp]}text(){return Promise.resolve(this[Lt].toString())}arrayBuffer(){let e=this[Lt],t=e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);return Promise.resolve(t)}stream(){let e=new K6;return e._read=function(){},e.push(this[Lt]),e.push(null),e}toString(){return"[object Blob]"}slice(){let e=this.size,t=arguments[0],a=arguments[1],i,s;t===void 0?i=0:t<0?i=Math.max(e+t,0):i=Math.min(t,e),a===void 0?s=e:a<0?s=Math.max(e+a,0):s=Math.min(a,e);let n=Math.max(s-i,0),p=this[Lt].slice(i,i+n),d=new r([],{type:arguments[2]});return d[Lt]=p,d}};Object.defineProperties(Ji.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});Object.defineProperty(Ji.prototype,Symbol.toStringTag,{value:"Blob",writable:!1,enumerable:!1,configurable:!0});function Re(r,e,t){Error.call(this,r),this.message=r,this.type=e,t&&(this.code=this.errno=t.code),Error.captureStackTrace(this,this.constructor)}Re.prototype=Object.create(Error.prototype);Re.prototype.constructor=Re;Re.prototype.name="FetchError";var Dp;try{Dp=require("encoding").convert}catch{}var Bt=Symbol("Body internals"),c2=lt.PassThrough;function Ee(r){var e=this,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=t.size;let i=a===void 0?0:a;var s=t.timeout;let n=s===void 0?0:s;r==null?r=null:g2(r)?r=Buffer.from(r.toString()):Ki(r)||Buffer.isBuffer(r)||(Object.prototype.toString.call(r)==="[object ArrayBuffer]"?r=Buffer.from(r):ArrayBuffer.isView(r)?r=Buffer.from(r.buffer,r.byteOffset,r.byteLength):r instanceof lt||(r=Buffer.from(String(r)))),this[Bt]={body:r,disturbed:!1,error:null},this.size=i,this.timeout=n,r instanceof lt&&r.on("error",function(o){let p=o.name==="AbortError"?o:new Re(`Invalid response body while trying to fetch ${e.url}: ${o.message}`,"system",o);e[Bt].error=p})}Ee.prototype={get body(){return this[Bt].body},get bodyUsed(){return this[Bt].disturbed},arrayBuffer(){return Ha.call(this).then(function(r){return r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength)})},blob(){let r=this.headers&&this.headers.get("content-type")||"";return Ha.call(this).then(function(e){return Object.assign(new Ji([],{type:r.toLowerCase()}),{[Lt]:e})})},json(){var r=this;return Ha.call(this).then(function(e){try{return JSON.parse(e.toString())}catch(t){return Ee.Promise.reject(new Re(`invalid json response body at ${r.url} reason: ${t.message}`,"invalid-json"))}})},text(){return Ha.call(this).then(function(r){return r.toString()})},buffer(){return Ha.call(this)},textConverted(){var r=this;return Ha.call(this).then(function(e){return X6(e,r.headers)})}};Object.defineProperties(Ee.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});Ee.mixIn=function(r){for(let e of Object.getOwnPropertyNames(Ee.prototype))if(!(e in r)){let t=Object.getOwnPropertyDescriptor(Ee.prototype,e);Object.defineProperty(r,e,t)}};function Ha(){var r=this;if(this[Bt].disturbed)return Ee.Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[Bt].disturbed=!0,this[Bt].error)return Ee.Promise.reject(this[Bt].error);let e=this.body;if(e===null)return Ee.Promise.resolve(Buffer.alloc(0));if(Ki(e)&&(e=e.stream()),Buffer.isBuffer(e))return Ee.Promise.resolve(e);if(!(e instanceof lt))return Ee.Promise.resolve(Buffer.alloc(0));let t=[],a=0,i=!1;return new Ee.Promise(function(s,n){let o;r.timeout&&(o=setTimeout(function(){i=!0,n(new Re(`Response timeout while trying to fetch ${r.url} (over ${r.timeout}ms)`,"body-timeout"))},r.timeout)),e.on("error",function(p){p.name==="AbortError"?(i=!0,n(p)):n(new Re(`Invalid response body while trying to fetch ${r.url}: ${p.message}`,"system",p))}),e.on("data",function(p){if(!(i||p===null)){if(r.size&&a+p.length>r.size){i=!0,n(new Re(`content size at ${r.url} over limit: ${r.size}`,"max-size"));return}a+=p.length,t.push(p)}}),e.on("end",function(){if(!i){clearTimeout(o);try{s(Buffer.concat(t,a))}catch(p){n(new Re(`Could not create Buffer from response body for ${r.url}: ${p.message}`,"system",p))}}})})}function X6(r,e){if(typeof Dp!="function")throw new Error("The package `encoding` must be installed to use the textConverted() function");let t=e.get("content-type"),a="utf-8",i,s;return t&&(i=/charset=([^;]*)/i.exec(t)),s=r.slice(0,1024).toString(),!i&&s&&(i=/<meta.+?charset=(['"])(.+?)\1/i.exec(s)),!i&&s&&(i=/<meta[\s]+?http-equiv=(['"])content-type\1[\s]+?content=(['"])(.+?)\2/i.exec(s),i||(i=/<meta[\s]+?content=(['"])(.+?)\1[\s]+?http-equiv=(['"])content-type\3/i.exec(s),i&&i.pop()),i&&(i=/charset=(.*)/i.exec(i.pop()))),!i&&s&&(i=/<\?xml.+?encoding=(['"])(.+?)\1/i.exec(s)),i&&(a=i.pop(),(a==="gb2312"||a==="gbk")&&(a="gb18030")),Dp(r,"UTF-8",a).toString()}function g2(r){return typeof r!="object"||typeof r.append!="function"||typeof r.delete!="function"||typeof r.get!="function"||typeof r.getAll!="function"||typeof r.has!="function"||typeof r.set!="function"?!1:r.constructor.name==="URLSearchParams"||Object.prototype.toString.call(r)==="[object URLSearchParams]"||typeof r.sort=="function"}function Ki(r){return typeof r=="object"&&typeof r.arrayBuffer=="function"&&typeof r.type=="string"&&typeof r.stream=="function"&&typeof r.constructor=="function"&&typeof r.constructor.name=="string"&&/^(Blob|File)$/.test(r.constructor.name)&&/^(Blob|File)$/.test(r[Symbol.toStringTag])}function y2(r){let e,t,a=r.body;if(r.bodyUsed)throw new Error("cannot clone body after it is used");return a instanceof lt&&typeof a.getBoundary!="function"&&(e=new c2,t=new c2,a.pipe(e),a.pipe(t),r[Bt].body=e,a=t),a}function v2(r){return r===null?null:typeof r=="string"?"text/plain;charset=UTF-8":g2(r)?"application/x-www-form-urlencoded;charset=UTF-8":Ki(r)?r.type||null:Buffer.isBuffer(r)||Object.prototype.toString.call(r)==="[object ArrayBuffer]"||ArrayBuffer.isView(r)?null:typeof r.getBoundary=="function"?`multipart/form-data;boundary=${r.getBoundary()}`:r instanceof lt?null:"text/plain;charset=UTF-8"}function w2(r){let e=r.body;return e===null?0:Ki(e)?e.size:Buffer.isBuffer(e)?e.length:e&&typeof e.getLengthSync=="function"&&(e._lengthRetrievers&&e._lengthRetrievers.length==0||e.hasKnownLength&&e.hasKnownLength())?e.getLengthSync():null}function Y6(r,e){let t=e.body;t===null?r.end():Ki(t)?t.stream().pipe(r):Buffer.isBuffer(t)?(r.write(t),r.end()):t.pipe(r)}Ee.Promise=global.Promise;var b2=/[^\^_`a-zA-Z\-0-9!#$%&'*+.|~]/,Ip=/[^\t\x20-\x7e\x80-\xff]/;function zi(r){if(r=`${r}`,b2.test(r)||r==="")throw new TypeError(`${r} is not a legal HTTP header name`)}function m2(r){if(r=`${r}`,Ip.test(r))throw new TypeError(`${r} is not a legal HTTP header value`)}function Wa(r,e){e=e.toLowerCase();for(let t in r)if(t.toLowerCase()===e)return t}var ce=Symbol("map"),rt=class r{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:void 0;if(this[ce]=Object.create(null),e instanceof r){let t=e.raw(),a=Object.keys(t);for(let i of a)for(let s of t[i])this.append(i,s);return}if(e!=null)if(typeof e=="object"){let t=e[Symbol.iterator];if(t!=null){if(typeof t!="function")throw new TypeError("Header pairs must be iterable");let a=[];for(let i of e){if(typeof i!="object"||typeof i[Symbol.iterator]!="function")throw new TypeError("Each header pair must be iterable");a.push(Array.from(i))}for(let i of a){if(i.length!==2)throw new TypeError("Each header pair must be a name/value tuple");this.append(i[0],i[1])}}else for(let a of Object.keys(e)){let i=e[a];this.append(a,i)}}else throw new TypeError("Provided initializer must be an object")}get(e){e=`${e}`,zi(e);let t=Wa(this[ce],e);return t===void 0?null:this[ce][t].join(", ")}forEach(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:void 0,a=Fp(this),i=0;for(;i<a.length;){var s=a[i];let n=s[0],o=s[1];e.call(t,o,n,this),a=Fp(this),i++}}set(e,t){e=`${e}`,t=`${t}`,zi(e),m2(t);let a=Wa(this[ce],e);this[ce][a!==void 0?a:e]=[t]}append(e,t){e=`${e}`,t=`${t}`,zi(e),m2(t);let a=Wa(this[ce],e);a!==void 0?this[ce][a].push(t):this[ce][e]=[t]}has(e){return e=`${e}`,zi(e),Wa(this[ce],e)!==void 0}delete(e){e=`${e}`,zi(e);let t=Wa(this[ce],e);t!==void 0&&delete this[ce][t]}raw(){return this[ce]}keys(){return kp(this,"key")}values(){return kp(this,"value")}[Symbol.iterator](){return kp(this,"key+value")}};rt.prototype.entries=rt.prototype[Symbol.iterator];Object.defineProperty(rt.prototype,Symbol.toStringTag,{value:"Headers",writable:!1,enumerable:!1,configurable:!0});Object.defineProperties(rt.prototype,{get:{enumerable:!0},forEach:{enumerable:!0},set:{enumerable:!0},append:{enumerable:!0},has:{enumerable:!0},delete:{enumerable:!0},keys:{enumerable:!0},values:{enumerable:!0},entries:{enumerable:!0}});function Fp(r){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"key+value";return Object.keys(r[ce]).sort().map(e==="key"?function(a){return a.toLowerCase()}:e==="value"?function(a){return r[ce][a].join(", ")}:function(a){return[a.toLowerCase(),r[ce][a].join(", ")]})}var $p=Symbol("internal");function kp(r,e){let t=Object.create(Op);return t[$p]={target:r,kind:e,index:0},t}var Op=Object.setPrototypeOf({next(){if(!this||Object.getPrototypeOf(this)!==Op)throw new TypeError("Value of `this` is not a HeadersIterator");var r=this[$p];let e=r.target,t=r.kind,a=r.index,i=Fp(e,t),s=i.length;return a>=s?{value:void 0,done:!0}:(this[$p].index=a+1,{value:i[a],done:!1})}},Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));Object.defineProperty(Op,Symbol.toStringTag,{value:"HeadersIterator",writable:!1,enumerable:!1,configurable:!0});function Z6(r){let e=Object.assign({__proto__:null},r[ce]),t=Wa(r[ce],"Host");return t!==void 0&&(e[t]=e[t][0]),e}function Q6(r){let e=new rt;for(let t of Object.keys(r))if(!b2.test(t))if(Array.isArray(r[t]))for(let a of r[t])Ip.test(a)||(e[ce][t]===void 0?e[ce][t]=[a]:e[ce][t].push(a));else Ip.test(r[t])||(e[ce][t]=[r[t]]);return e}var pr=Symbol("Response internals"),e4=h2.STATUS_CODES,tt=class r{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};Ee.call(this,e,t);let a=t.status||200,i=new rt(t.headers);if(e!=null&&!i.has("Content-Type")){let s=v2(e);s&&i.append("Content-Type",s)}this[pr]={url:t.url,status:a,statusText:t.statusText||e4[a],headers:i,counter:t.counter}}get url(){return this[pr].url||""}get status(){return this[pr].status}get ok(){return this[pr].status>=200&&this[pr].status<300}get redirected(){return this[pr].counter>0}get statusText(){return this[pr].statusText}get headers(){return this[pr].headers}clone(){return new r(y2(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected})}};Ee.mixIn(tt.prototype);Object.defineProperties(tt.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}});Object.defineProperty(tt.prototype,Symbol.toStringTag,{value:"Response",writable:!1,enumerable:!1,configurable:!0});var jt=Symbol("Request internals"),t4=co.URL||f2.URL,r4=co.parse,a4=co.format;function Np(r){return/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(r)&&(r=new t4(r).toString()),r4(r)}var i4="destroy"in lt.Readable.prototype;function lo(r){return typeof r=="object"&&typeof r[jt]=="object"}function s4(r){let e=r&&typeof r=="object"&&Object.getPrototypeOf(r);return!!(e&&e.constructor.name==="AbortSignal")}var lr=class r{constructor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a;lo(e)?a=Np(e.url):(e&&e.href?a=Np(e.href):a=Np(`${e}`),e={});let i=t.method||e.method||"GET";if(i=i.toUpperCase(),(t.body!=null||lo(e)&&e.body!==null)&&(i==="GET"||i==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let s=t.body!=null?t.body:lo(e)&&e.body!==null?y2(e):null;Ee.call(this,s,{timeout:t.timeout||e.timeout||0,size:t.size||e.size||0});let n=new rt(t.headers||e.headers||{});if(s!=null&&!n.has("Content-Type")){let p=v2(s);p&&n.append("Content-Type",p)}let o=lo(e)?e.signal:null;if("signal"in t&&(o=t.signal),o!=null&&!s4(o))throw new TypeError("Expected signal to be an instanceof AbortSignal");this[jt]={method:i,redirect:t.redirect||e.redirect||"follow",headers:n,parsedURL:a,signal:o},this.follow=t.follow!==void 0?t.follow:e.follow!==void 0?e.follow:20,this.compress=t.compress!==void 0?t.compress:e.compress!==void 0?e.compress:!0,this.counter=t.counter||e.counter||0,this.agent=t.agent||e.agent}get method(){return this[jt].method}get url(){return a4(this[jt].parsedURL)}get headers(){return this[jt].headers}get redirect(){return this[jt].redirect}get signal(){return this[jt].signal}clone(){return new r(this)}};Ee.mixIn(lr.prototype);Object.defineProperty(lr.prototype,Symbol.toStringTag,{value:"Request",writable:!1,enumerable:!1,configurable:!0});Object.defineProperties(lr.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}});function n4(r){let e=r[jt].parsedURL,t=new rt(r[jt].headers);if(t.has("Accept")||t.set("Accept","*/*"),!e.protocol||!e.hostname)throw new TypeError("Only absolute URLs are supported");if(!/^https?:$/.test(e.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(r.signal&&r.body instanceof lt.Readable&&!i4)throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");let a=null;if(r.body==null&&/^(POST|PUT)$/i.test(r.method)&&(a="0"),r.body!=null){let s=w2(r);typeof s=="number"&&(a=String(s))}a&&t.set("Content-Length",a),t.has("User-Agent")||t.set("User-Agent","node-fetch/1.0 (+https://github.com/bitinn/node-fetch)"),r.compress&&!t.has("Accept-Encoding")&&t.set("Accept-Encoding","gzip,deflate");let i=r.agent;return typeof i=="function"&&(i=i(e)),Object.assign({},e,{method:r.method,headers:Z6(t),agent:i})}function za(r){Error.call(this,r),this.type="aborted",this.message=r,Error.captureStackTrace(this,this.constructor)}za.prototype=Object.create(Error.prototype);za.prototype.constructor=za;za.prototype.name="AbortError";var Gi=co.URL||f2.URL,u2=lt.PassThrough,o4=function(e,t){let a=new Gi(t).hostname,i=new Gi(e).hostname;return a===i||a[a.length-i.length-1]==="."&&a.endsWith(i)},p4=function(e,t){let a=new Gi(t).protocol,i=new Gi(e).protocol;return a===i};function dr(r,e){if(!dr.Promise)throw new Error("native promise missing, set fetch.Promise to your favorite alternative");return Ee.Promise=dr.Promise,new dr.Promise(function(t,a){let i=new lr(r,e),s=n4(i),n=(s.protocol==="https:"?G6:h2).request,o=i.signal,p=null,d=function(){let v=new za("The user aborted a request.");a(v),i.body&&i.body instanceof lt.Readable&&Mp(i.body,v),!(!p||!p.body)&&p.body.emit("error",v)};if(o&&o.aborted){d();return}let l=function(){d(),m()},u=n(s),c;o&&o.addEventListener("abort",l);function m(){u.abort(),o&&o.removeEventListener("abort",l),clearTimeout(c)}i.timeout&&u.once("socket",function(h){c=setTimeout(function(){a(new Re(`network timeout at: ${i.url}`,"request-timeout")),m()},i.timeout)}),u.on("error",function(h){a(new Re(`request to ${i.url} failed, reason: ${h.message}`,"system",h)),p&&p.body&&Mp(p.body,h),m()}),d4(u,function(h){o&&o.aborted||p&&p.body&&Mp(p.body,h)}),parseInt(process.version.substring(1))<14&&u.on("socket",function(h){h.addListener("close",function(v){let f=h.listenerCount("data")>0;if(p&&f&&!v&&!(o&&o.aborted)){let g=new Error("Premature close");g.code="ERR_STREAM_PREMATURE_CLOSE",p.body.emit("error",g)}})}),u.on("response",function(h){clearTimeout(c);let v=Q6(h.headers);if(dr.isRedirect(h.statusCode)){let k=v.get("Location"),E=null;try{E=k===null?null:new Gi(k,i.url).toString()}catch{if(i.redirect!=="manual"){a(new Re(`uri requested responds with an invalid redirect URL: ${k}`,"invalid-redirect")),m();return}}switch(i.redirect){case"error":a(new Re(`uri requested responds with a redirect, redirect mode is set to error: ${i.url}`,"no-redirect")),m();return;case"manual":if(E!==null)try{v.set("Location",E)}catch(V){a(V)}break;case"follow":if(E===null)break;if(i.counter>=i.follow){a(new Re(`maximum redirect reached at: ${i.url}`,"max-redirect")),m();return}let N={headers:new rt(i.headers),follow:i.follow,counter:i.counter+1,agent:i.agent,compress:i.compress,method:i.method,body:i.body,signal:i.signal,timeout:i.timeout,size:i.size};if(!o4(i.url,E)||!p4(i.url,E))for(let V of["authorization","www-authenticate","cookie","cookie2"])N.headers.delete(V);if(h.statusCode!==303&&i.body&&w2(i)===null){a(new Re("Cannot follow redirect with body being a readable stream","unsupported-redirect")),m();return}(h.statusCode===303||(h.statusCode===301||h.statusCode===302)&&i.method==="POST")&&(N.method="GET",N.body=void 0,N.headers.delete("content-length")),t(dr(new lr(E,N))),m();return}}h.once("end",function(){o&&o.removeEventListener("abort",l)});let f=h.pipe(new u2),g={url:i.url,status:h.statusCode,statusText:h.statusMessage,headers:v,size:i.size,timeout:i.timeout,counter:i.counter},b=v.get("Content-Encoding");if(!i.compress||i.method==="HEAD"||b===null||h.statusCode===204||h.statusCode===304){p=new tt(f,g),t(p);return}let A={flush:qr.Z_SYNC_FLUSH,finishFlush:qr.Z_SYNC_FLUSH};if(b=="gzip"||b=="x-gzip"){f=f.pipe(qr.createGunzip(A)),p=new tt(f,g),t(p);return}if(b=="deflate"||b=="x-deflate"){let k=h.pipe(new u2);k.once("data",function(E){(E[0]&15)===8?f=f.pipe(qr.createInflate()):f=f.pipe(qr.createInflateRaw()),p=new tt(f,g),t(p)}),k.on("end",function(){p||(p=new tt(f,g),t(p))});return}if(b=="br"&&typeof qr.createBrotliDecompress=="function"){f=f.pipe(qr.createBrotliDecompress()),p=new tt(f,g),t(p);return}p=new tt(f,g),t(p)}),Y6(u,i)})}function d4(r,e){let t;r.on("socket",function(a){t=a}),r.on("response",function(a){let i=a.headers;i["transfer-encoding"]==="chunked"&&!i["content-length"]&&a.once("close",function(s){if(t&&t.listenerCount("data")>0&&!s){let o=new Error("Premature close");o.code="ERR_STREAM_PREMATURE_CLOSE",e(o)}})})}function Mp(r,e){r.destroy?r.destroy(e):(r.emit("error",e),r.end())}dr.isRedirect=function(r){return r===301||r===302||r===303||r===307||r===308};dr.Promise=global.Promise;_2.exports=ct=dr;Object.defineProperty(ct,"__esModule",{value:!0});ct.default=ct;ct.Headers=rt;ct.Request=lr;ct.Response=tt;ct.FetchError=Re;ct.AbortError=za});function J2(){}function ke(r){return typeof r=="object"&&r!==null||typeof r=="function"}function J(r,e){try{Object.defineProperty(r,"name",{value:e,configurable:!0})}catch{}}function De(r){return new Xp(r)}function G(r){return c4(r)}function F(r){return m4(r)}function Jt(r,e,t){return l4.call(r,e,t)}function Ce(r,e,t){Jt(Jt(r,e,t),void 0,G2)}function T2(r,e){Ce(r,e)}function x2(r,e){Ce(r,void 0,e)}function mt(r,e,t){return Jt(r,e,t)}function Ya(r){Jt(r,void 0,G2)}function Io(r,e,t){if(typeof r!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(r,e,t)}function Kr(r,e,t){try{return G(Io(r,e,t))}catch(a){return F(a)}}function Y2(r,e){r._ownerReadableStream=e,e._reader=r,e._state==="readable"?Up(r):e._state==="closed"?(function(t){Up(t),tm(t)})(r):em(r,e._storedError)}function Z2(r,e){return Nm(r._ownerReadableStream,e)}function Q2(r){let e=r._ownerReadableStream;e._state==="readable"?ed(r,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):(function(t,a){em(t,a)})(r,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),e._readableStreamController[Qp](),e._reader=void 0,r._ownerReadableStream=void 0}function Za(r){return new TypeError("Cannot "+r+" a stream using a released reader")}function Up(r){r._closedPromise=De(((e,t)=>{r._closedPromise_resolve=e,r._closedPromise_reject=t}))}function em(r,e){Up(r),ed(r,e)}function ed(r,e){r._closedPromise_reject!==void 0&&(Ya(r._closedPromise),r._closedPromise_reject(e),r._closedPromise_resolve=void 0,r._closedPromise_reject=void 0)}function tm(r){r._closedPromise_resolve!==void 0&&(r._closedPromise_resolve(void 0),r._closedPromise_resolve=void 0,r._closedPromise_reject=void 0)}function Gt(r,e){if(r!==void 0&&typeof(t=r)!="object"&&typeof t!="function")throw new TypeError(`${e} is not an object.`);var t}function ut(r,e){if(typeof r!="function")throw new TypeError(`${e} is not a function.`)}function rm(r,e){if(!(function(t){return typeof t=="object"&&t!==null||typeof t=="function"})(r))throw new TypeError(`${e} is not an object.`)}function Kt(r,e,t){if(r===void 0)throw new TypeError(`Parameter ${e} is required in '${t}'.`)}function Hp(r,e,t){if(r===void 0)throw new TypeError(`${e} is required in '${t}'.`)}function td(r){return Number(r)}function P2(r){return r===0?0:r}function am(r,e){let t=Number.MAX_SAFE_INTEGER,a=Number(r);if(a=P2(a),!E2(a))throw new TypeError(`${e} is not a finite number`);if(a=(function(i){return P2(u4(i))})(a),a<0||a>t)throw new TypeError(`${e} is outside the accepted range of 0 to ${t}, inclusive`);return E2(a)&&a!==0?a:0}function Zi(r){if(!ke(r)||typeof r.getReader!="function")return!1;try{return typeof r.locked=="boolean"}catch{return!1}}function im(r){if(!ke(r)||typeof r.getWriter!="function")return!1;try{return typeof r.locked=="boolean"}catch{return!1}}function sm(r,e){if(!Jr(r))throw new TypeError(`${e} is not a ReadableStream.`)}function nm(r,e){r._reader._readRequests.push(e)}function rd(r,e,t){let a=r._reader._readRequests.shift();t?a._closeSteps():a._chunkSteps(e)}function Fo(r){return r._reader._readRequests.length}function om(r){let e=r._reader;return e!==void 0&&!!zr(e)}function zr(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_readRequests")&&r instanceof Vt}function pm(r,e){let t=r._readRequests;r._readRequests=new Le,t.forEach((a=>{a._errorSteps(e)}))}function mo(r){return new TypeError(`ReadableStreamDefaultReader.prototype.${r} can only be used on a ReadableStreamDefaultReader`)}function A2(r){if(!ke(r)||!Object.prototype.hasOwnProperty.call(r,"_asyncIteratorImpl"))return!1;try{return r._asyncIteratorImpl instanceof Eo}catch{return!1}}function R2(r){return new TypeError(`ReadableStreamAsyncIterator.${r} can only be used on a ReadableSteamAsyncIterator`)}function cm(r,e,t,a,i){new Uint8Array(r).set(new Uint8Array(t,a,i),e)}function C2(r){let e=(function(t,a,i){if(t.slice)return t.slice(a,i);let s=i-a,n=new ArrayBuffer(s);return cm(n,0,t,a,s),n})(r.buffer,r.byteOffset,r.byteOffset+r.byteLength);return new Uint8Array(e)}function Wp(r){let e=r._queue.shift();return r._queueTotalSize-=e.size,r._queueTotalSize<0&&(r._queueTotalSize=0),e.value}function ad(r,e,t){if(typeof(a=t)!="number"||lm(a)||a<0||t===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");var a;r._queue.push({value:e,size:t}),r._queueTotalSize+=t}function ur(r){r._queue=new Le,r._queueTotalSize=0}function Ga(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_controlledReadableByteStream")&&r instanceof qt}function Lp(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_associatedReadableByteStreamController")&&r instanceof cr}function Gr(r){if((function(t){let a=t._controlledReadableByteStream;return a._state!=="readable"||t._closeRequested||!t._started?!1:!!(om(a)&&Fo(a)>0||sd(a)&&bm(a)>0||wm(t)>0)})(r)){if(r._pulling)return void(r._pullAgain=!0);r._pulling=!0,Ce(r._pullAlgorithm(),(()=>(r._pulling=!1,r._pullAgain&&(r._pullAgain=!1,Gr(r)),null)),(t=>(Qa(r,t),null)))}}function mm(r){id(r),r._pendingPullIntos=new Le}function zp(r,e){let t=!1;r._state==="closed"&&(t=!0);let a=um(e);e.readerType==="default"?rd(r,a,t):(function(i,s,n){let o=i._reader._readIntoRequests.shift();n?o._closeSteps(s):o._chunkSteps(s)})(r,a,t)}function um(r){let e=r.bytesFilled,t=r.elementSize;return new r.viewConstructor(r.buffer,r.byteOffset,e/t)}function _o(r,e,t,a){r._queue.push({buffer:e,byteOffset:t,byteLength:a}),r._queueTotalSize+=a}function hm(r,e,t,a){let i;try{i=e.slice(t,t+a)}catch(s){throw Qa(r,s),s}_o(r,i,0,a)}function fm(r,e){e.bytesFilled>0&&hm(r,e.buffer,e.byteOffset,e.bytesFilled),Xa(r)}function gm(r,e){let t=e.elementSize,a=e.bytesFilled-e.bytesFilled%t,i=Math.min(r._queueTotalSize,e.byteLength-e.bytesFilled),s=e.bytesFilled+i,n=s-s%t,o=i,p=!1;n>a&&(o=n-e.bytesFilled,p=!0);let d=r._queue;for(;o>0;){let l=d.peek(),u=Math.min(o,l.byteLength),c=e.byteOffset+e.bytesFilled;cm(e.buffer,c,l.buffer,l.byteOffset,u),l.byteLength===u?d.shift():(l.byteOffset+=u,l.byteLength-=u),r._queueTotalSize-=u,ym(r,u,e),o-=u}return p}function ym(r,e,t){t.bytesFilled+=e}function vm(r){r._queueTotalSize===0&&r._closeRequested?(Po(r),as(r._controlledReadableByteStream)):Gr(r)}function id(r){r._byobRequest!==null&&(r._byobRequest._associatedReadableByteStreamController=void 0,r._byobRequest._view=null,r._byobRequest=null)}function Jp(r){for(;r._pendingPullIntos.length>0;){if(r._queueTotalSize===0)return;let e=r._pendingPullIntos.peek();gm(r,e)&&(Xa(r),zp(r._controlledReadableByteStream,e))}}function k2(r,e){let t=r._pendingPullIntos.peek();id(r),r._controlledReadableByteStream._state==="closed"?(function(a,i){i.readerType==="none"&&Xa(a);let s=a._controlledReadableByteStream;if(sd(s))for(;bm(s)>0;)zp(s,Xa(a))})(r,t):(function(a,i,s){if(ym(0,i,s),s.readerType==="none")return fm(a,s),void Jp(a);if(s.bytesFilled<s.elementSize)return;Xa(a);let n=s.bytesFilled%s.elementSize;if(n>0){let o=s.byteOffset+s.bytesFilled;hm(a,s.buffer,o-n,n)}s.bytesFilled-=n,zp(a._controlledReadableByteStream,s),Jp(a)})(r,e,t),Gr(r)}function Xa(r){return r._pendingPullIntos.shift()}function Po(r){r._pullAlgorithm=void 0,r._cancelAlgorithm=void 0}function Qa(r,e){let t=r._controlledReadableByteStream;t._state==="readable"&&(mm(r),ur(r),Po(r),Mm(t,e))}function N2(r,e){let t=r._queue.shift();r._queueTotalSize-=t.byteLength,vm(r);let a=new Uint8Array(t.buffer,t.byteOffset,t.byteLength);e._chunkSteps(a)}function wm(r){let e=r._controlledReadableByteStream._state;return e==="errored"?null:e==="closed"?0:r._strategyHWM-r._queueTotalSize}function h4(r,e,t){let a=Object.create(qt.prototype),i,s,n;i=e.start!==void 0?()=>e.start(a):()=>{},s=e.pull!==void 0?()=>e.pull(a):()=>G(void 0),n=e.cancel!==void 0?p=>e.cancel(p):()=>G(void 0);let o=e.autoAllocateChunkSize;if(o===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");(function(p,d,l,u,c,m,h){d._controlledReadableByteStream=p,d._pullAgain=!1,d._pulling=!1,d._byobRequest=null,d._queue=d._queueTotalSize=void 0,ur(d),d._closeRequested=!1,d._started=!1,d._strategyHWM=m,d._pullAlgorithm=u,d._cancelAlgorithm=c,d._autoAllocateChunkSize=h,d._pendingPullIntos=new Le,p._readableStreamController=d,Ce(G(l()),(()=>(d._started=!0,Gr(d),null)),(v=>(Qa(d,v),null)))})(r,a,i,s,n,t,o)}function jp(r){return new TypeError(`ReadableStreamBYOBRequest.prototype.${r} can only be used on a ReadableStreamBYOBRequest`)}function Xi(r){return new TypeError(`ReadableByteStreamController.prototype.${r} can only be used on a ReadableByteStreamController`)}function M2(r,e){r._reader._readIntoRequests.push(e)}function bm(r){return r._reader._readIntoRequests.length}function sd(r){let e=r._reader;return e!==void 0&&!!Ka(e)}function Ka(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_readIntoRequests")&&r instanceof Ut}function _m(r,e){let t=r._readIntoRequests;r._readIntoRequests=new Le,t.forEach((a=>{a._errorSteps(e)}))}function uo(r){return new TypeError(`ReadableStreamBYOBReader.prototype.${r} can only be used on a ReadableStreamBYOBReader`)}function rs(r,e){let{highWaterMark:t}=r;if(t===void 0)return e;if(lm(t)||t<0)throw new RangeError("Invalid highWaterMark");return t}function Ao(r){let{size:e}=r;return e||(()=>1)}function Ro(r,e){Gt(r,e);let t=r?.highWaterMark,a=r?.size;return{highWaterMark:t===void 0?void 0:td(t),size:a===void 0?void 0:f4(a,`${e} has member 'size' that`)}}function f4(r,e){return ut(r,e),t=>td(r(t))}function g4(r,e,t){return ut(r,t),a=>Kr(r,e,[a])}function y4(r,e,t){return ut(r,t),()=>Kr(r,e,[])}function v4(r,e,t){return ut(r,t),a=>Io(r,e,[a])}function w4(r,e,t){return ut(r,t),(a,i)=>Kr(r,e,[a,i])}function Tt(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_writableStreamController")&&r instanceof Ht}function So(r){return r._writer!==void 0}function Sm(r,e){var t;if(r._state==="closed"||r._state==="errored")return G(void 0);r._writableStreamController._abortReason=e,(t=r._writableStreamController._abortController)===null||t===void 0||t.abort(e);let a=r._state;if(a==="closed"||a==="errored")return G(void 0);if(r._pendingAbortRequest!==void 0)return r._pendingAbortRequest._promise;let i=!1;a==="erroring"&&(i=!0,e=void 0);let s=De(((n,o)=>{r._pendingAbortRequest={_promise:void 0,_resolve:n,_reject:o,_reason:e,_wasAlreadyErroring:i}}));return r._pendingAbortRequest._promise=s,i||nd(r,e),s}function Tm(r){let e=r._state;if(e==="closed"||e==="errored")return F(new TypeError(`The stream (in ${e} state) is not in the writable state and cannot be closed`));let t=De(((s,n)=>{let o={_resolve:s,_reject:n};r._closeRequest=o})),a=r._writer;var i;return a!==void 0&&r._backpressure&&e==="writable"&&cd(a),ad(i=r._writableStreamController,Em,0),$o(i),t}function Gp(r,e){r._state!=="writable"?od(r):nd(r,e)}function nd(r,e){let t=r._writableStreamController;r._state="erroring",r._storedError=e;let a=r._writer;a!==void 0&&xm(a,e),!(function(i){return!(i._inFlightWriteRequest===void 0&&i._inFlightCloseRequest===void 0)})(r)&&t._started&&od(r)}function od(r){r._state="errored",r._writableStreamController[X2]();let e=r._storedError;if(r._writeRequests.forEach((a=>{a._reject(e)})),r._writeRequests=new Le,r._pendingAbortRequest===void 0)return void ho(r);let t=r._pendingAbortRequest;if(r._pendingAbortRequest=void 0,t._wasAlreadyErroring)return t._reject(e),void ho(r);Ce(r._writableStreamController[K2](t._reason),(()=>(t._resolve(),ho(r),null)),(a=>(t._reject(a),ho(r),null)))}function mr(r){return r._closeRequest!==void 0||r._inFlightCloseRequest!==void 0}function ho(r){r._closeRequest!==void 0&&(r._closeRequest._reject(r._storedError),r._closeRequest=void 0);let e=r._writer;e!==void 0&&ld(e,r._storedError)}function pd(r,e){let t=r._writer;t!==void 0&&e!==r._backpressure&&(e?(function(a){Oo(a)})(t):cd(t)),r._backpressure=e}function Ur(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_ownerWritableStream")&&r instanceof St}function xm(r,e){r._readyPromiseState==="pending"?Cm(r,e):(function(t,a){Kp(t,a)})(r,e)}function Bp(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_controlledWritableStream")&&r instanceof ei}function Co(r){r._writeAlgorithm=void 0,r._closeAlgorithm=void 0,r._abortAlgorithm=void 0,r._strategySizeAlgorithm=void 0}function Pm(r){return r._strategyHWM-r._queueTotalSize}function $o(r){let e=r._controlledWritableStream;if(!r._started||e._inFlightWriteRequest!==void 0)return;if(e._state==="erroring")return void od(e);if(r._queue.length===0)return;let t=r._queue.peek().value;t===Em?(function(a){let i=a._controlledWritableStream;(function(n){n._inFlightCloseRequest=n._closeRequest,n._closeRequest=void 0})(i),Wp(a);let s=a._closeAlgorithm();Co(a),Ce(s,(()=>((function(n){n._inFlightCloseRequest._resolve(void 0),n._inFlightCloseRequest=void 0,n._state==="erroring"&&(n._storedError=void 0,n._pendingAbortRequest!==void 0&&(n._pendingAbortRequest._resolve(),n._pendingAbortRequest=void 0)),n._state="closed";let o=n._writer;o!==void 0&&Rm(o)})(i),null)),(n=>((function(o,p){o._inFlightCloseRequest._reject(p),o._inFlightCloseRequest=void 0,o._pendingAbortRequest!==void 0&&(o._pendingAbortRequest._reject(p),o._pendingAbortRequest=void 0),Gp(o,p)})(i,n),null)))})(r):(function(a,i){let s=a._controlledWritableStream;(function(n){n._inFlightWriteRequest=n._writeRequests.shift()})(s),Ce(a._writeAlgorithm(i),(()=>{(function(o){o._inFlightWriteRequest._resolve(void 0),o._inFlightWriteRequest=void 0})(s);let n=s._state;if(Wp(a),!mr(s)&&n==="writable"){let o=dd(a);pd(s,o)}return $o(a),null}),(n=>(s._state==="writable"&&Co(a),(function(o,p){o._inFlightWriteRequest._reject(p),o._inFlightWriteRequest=void 0,Gp(o,p)})(s,n),null)))})(r,t)}function D2(r,e){r._controlledWritableStream._state==="writable"&&Am(r,e)}function dd(r){return Pm(r)<=0}function Am(r,e){let t=r._controlledWritableStream;Co(r),nd(t,e)}function fo(r){return new TypeError(`WritableStream.prototype.${r} can only be used on a WritableStream`)}function Vp(r){return new TypeError(`WritableStreamDefaultController.prototype.${r} can only be used on a WritableStreamDefaultController`)}function Hr(r){return new TypeError(`WritableStreamDefaultWriter.prototype.${r} can only be used on a WritableStreamDefaultWriter`)}function Yi(r){return new TypeError("Cannot "+r+" a stream using a released writer")}function To(r){r._closedPromise=De(((e,t)=>{r._closedPromise_resolve=e,r._closedPromise_reject=t,r._closedPromiseState="pending"}))}function I2(r,e){To(r),ld(r,e)}function ld(r,e){r._closedPromise_reject!==void 0&&(Ya(r._closedPromise),r._closedPromise_reject(e),r._closedPromise_resolve=void 0,r._closedPromise_reject=void 0,r._closedPromiseState="rejected")}function Rm(r){r._closedPromise_resolve!==void 0&&(r._closedPromise_resolve(void 0),r._closedPromise_resolve=void 0,r._closedPromise_reject=void 0,r._closedPromiseState="resolved")}function Oo(r){r._readyPromise=De(((e,t)=>{r._readyPromise_resolve=e,r._readyPromise_reject=t})),r._readyPromiseState="pending"}function Kp(r,e){Oo(r),Cm(r,e)}function F2(r){Oo(r),cd(r)}function Cm(r,e){r._readyPromise_reject!==void 0&&(Ya(r._readyPromise),r._readyPromise_reject(e),r._readyPromise_resolve=void 0,r._readyPromise_reject=void 0,r._readyPromiseState="rejected")}function cd(r){r._readyPromise_resolve!==void 0&&(r._readyPromise_resolve(void 0),r._readyPromise_resolve=void 0,r._readyPromise_reject=void 0,r._readyPromiseState="fulfilled")}function O2(r,e,t,a,i,s){let n=r.getReader(),o=e.getWriter();Jr(r)&&(r._disturbed=!0);let p,d,l,u=!1,c=!1,m="readable",h="writable",v=!1,f=!1,g=De((A=>{l=A})),b=Promise.resolve(void 0);return De(((A,k)=>{let E;function N(){if(u)return;let R=De(((q,j)=>{(function W(we){we?q():Jt((function(){return u?G(!0):Jt(o.ready,(()=>Jt(n.read(),(be=>!!be.done||(b=o.write(be.value),Ya(b),!1)))))})(),W,j)})(!1)}));Ya(R)}function V(){return m="closed",t?M():_((()=>(Tt(e)&&(v=mr(e),h=e._state),v||h==="closed"?G(void 0):h==="erroring"||h==="errored"?F(d):(v=!0,o.close()))),!1,void 0),null}function T(R){return u||(m="errored",p=R,a?M(!0,R):_((()=>o.abort(R)),!0,R)),null}function w(R){return c||(h="errored",d=R,i?M(!0,R):_((()=>n.cancel(R)),!0,R)),null}if(s!==void 0&&(E=()=>{let R=s.reason!==void 0?s.reason:new _4("Aborted","AbortError"),q=[];a||q.push((()=>h==="writable"?o.abort(R):G(void 0))),i||q.push((()=>m==="readable"?n.cancel(R):G(void 0))),_((()=>Promise.all(q.map((j=>j())))),!0,R)},s.aborted?E():s.addEventListener("abort",E)),Jr(r)&&(m=r._state,p=r._storedError),Tt(e)&&(h=e._state,d=e._storedError,v=mr(e)),Jr(r)&&Tt(e)&&(f=!0,l()),m==="errored")T(p);else if(h==="erroring"||h==="errored")w(d);else if(m==="closed")V();else if(v||h==="closed"){let R=new TypeError("the destination writable stream closed before all data could be piped to it");i?M(!0,R):_((()=>n.cancel(R)),!0,R)}function _(R,q,j){function W(){return h!=="writable"||v?we():T2((function(){let be;return G((function Fe(){if(be!==b)return be=b,mt(b,Fe,Fe)})())})(),we),null}function we(){return R?Ce(R(),(()=>D(q,j)),(be=>D(!0,be))):D(q,j),null}u||(u=!0,f?W():T2(g,W))}function M(R,q){_(void 0,R,q)}function D(R,q){return c=!0,o.releaseLock(),n.releaseLock(),s!==void 0&&s.removeEventListener("abort",E),R?k(q):A(void 0),null}u||(Ce(n.closed,V,T),Ce(o.closed,(function(){return c||(h="closed"),null}),w)),f?N():bo((()=>{f=!0,l(),N()}))}))}function S4(r,e){return(function(t){try{return t.getReader({mode:"byob"}).releaseLock(),!0}catch{return!1}})(r)?(function(t){let a,i,s,n,o,p=t.getReader(),d=!1,l=!1,u=!1,c=!1,m=!1,h=!1,v=De((w=>{o=w}));function f(w){x2(w.closed,(_=>(w!==p||(s.error(_),n.error(_),m&&h||o(void 0)),null)))}function g(){d&&(p.releaseLock(),p=t.getReader(),f(p),d=!1),Ce(p.read(),(w=>{var _,M;if(u=!1,c=!1,w.done)return m||s.close(),h||n.close(),(_=s.byobRequest)===null||_===void 0||_.respond(0),(M=n.byobRequest)===null||M===void 0||M.respond(0),m&&h||o(void 0),null;let D=w.value,R=D,q=D;if(!m&&!h)try{q=C2(D)}catch(j){return s.error(j),n.error(j),o(p.cancel(j)),null}return m||s.enqueue(R),h||n.enqueue(q),l=!1,u?A():c&&k(),null}),(()=>(l=!1,null)))}function b(w,_){d||(p.releaseLock(),p=t.getReader({mode:"byob"}),f(p),d=!0);let M=_?n:s,D=_?s:n;Ce(p.read(w),(R=>{var q;u=!1,c=!1;let j=_?h:m,W=_?m:h;if(R.done){j||M.close(),W||D.close();let be=R.value;return be!==void 0&&(j||M.byobRequest.respondWithNewView(be),W||(q=D.byobRequest)===null||q===void 0||q.respond(0)),j&&W||o(void 0),null}let we=R.value;if(W)j||M.byobRequest.respondWithNewView(we);else{let be;try{be=C2(we)}catch(Fe){return M.error(Fe),D.error(Fe),o(p.cancel(Fe)),null}j||M.byobRequest.respondWithNewView(we),D.enqueue(be)}return l=!1,u?A():c&&k(),null}),(()=>(l=!1,null)))}function A(){if(l)return u=!0,G(void 0);l=!0;let w=s.byobRequest;return w===null?g():b(w.view,!1),G(void 0)}function k(){if(l)return c=!0,G(void 0);l=!0;let w=n.byobRequest;return w===null?g():b(w.view,!0),G(void 0)}function E(w){if(m=!0,a=w,h){let _=[a,i],M=p.cancel(_);o(M)}return v}function N(w){if(h=!0,i=w,m){let _=[a,i],M=p.cancel(_);o(M)}return v}let V=new fe({type:"bytes",start(w){s=w},pull:A,cancel:E}),T=new fe({type:"bytes",start(w){n=w},pull:k,cancel:N});return f(p),[V,T]})(r):(function(t,a){let i=t.getReader(),s,n,o,p,d,l=!1,u=!1,c=!1,m=!1,h=De((k=>{d=k}));function v(){return l?(u=!0,G(void 0)):(l=!0,Ce(i.read(),(k=>{if(u=!1,k.done)return c||o.close(),m||p.close(),c&&m||d(void 0),null;let E=k.value,N=E,V=E;return c||o.enqueue(N),m||p.enqueue(V),l=!1,u&&v(),null}),(()=>(l=!1,null))),G(void 0))}function f(k){if(c=!0,s=k,m){let E=[s,n],N=i.cancel(E);d(N)}return h}function g(k){if(m=!0,n=k,c){let E=[s,n],N=i.cancel(E);d(N)}return h}let b=new fe({start(k){o=k},pull:v,cancel:f}),A=new fe({start(k){p=k},pull:v,cancel:g});return x2(i.closed,(k=>(o.error(k),p.error(k),c&&m||d(void 0),null))),[b,A]})(r)}function go(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_controlledReadableStream")&&r instanceof Wt}function es(r){if((function(t){let a=t._controlledReadableStream;return!Qi(t)||!t._started?!1:!!(ti(a)&&Fo(a)>0||km(t)>0)})(r)){if(r._pulling)return void(r._pullAgain=!0);r._pulling=!0,Ce(r._pullAlgorithm(),(()=>(r._pulling=!1,r._pullAgain&&(r._pullAgain=!1,es(r)),null)),(t=>(ts(r,t),null)))}}function xo(r){r._pullAlgorithm=void 0,r._cancelAlgorithm=void 0,r._strategySizeAlgorithm=void 0}function ts(r,e){let t=r._controlledReadableStream;t._state==="readable"&&(ur(r),xo(r),Mm(t,e))}function km(r){let e=r._controlledReadableStream._state;return e==="errored"?null:e==="closed"?0:r._strategyHWM-r._queueTotalSize}function Qi(r){return!r._closeRequested&&r._controlledReadableStream._state==="readable"}function T4(r,e,t,a){let i=Object.create(Wt.prototype),s,n,o;s=e.start!==void 0?()=>e.start(i):()=>{},n=e.pull!==void 0?()=>e.pull(i):()=>G(void 0),o=e.cancel!==void 0?p=>e.cancel(p):()=>G(void 0),(function(p,d,l,u,c,m,h){d._controlledReadableStream=p,d._queue=void 0,d._queueTotalSize=void 0,ur(d),d._started=!1,d._closeRequested=!1,d._pullAgain=!1,d._pulling=!1,d._strategySizeAlgorithm=h,d._strategyHWM=m,d._pullAlgorithm=u,d._cancelAlgorithm=c,p._readableStreamController=d,Ce(G(l()),(()=>(d._started=!0,es(d),null)),(v=>(ts(d,v),null)))})(r,i,s,n,o,t,a)}function yo(r){return new TypeError(`ReadableStreamDefaultController.prototype.${r} can only be used on a ReadableStreamDefaultController`)}function x4(r,e,t){return ut(r,t),a=>Kr(r,e,[a])}function E4(r,e,t){return ut(r,t),a=>Kr(r,e,[a])}function P4(r,e,t){return ut(r,t),a=>Io(r,e,[a])}function A4(r,e){if((r=`${r}`)!="bytes")throw new TypeError(`${e} '${r}' is not a valid enumeration value for ReadableStreamType`);return r}function R4(r,e){if((r=`${r}`)!="byob")throw new TypeError(`${e} '${r}' is not a valid enumeration value for ReadableStreamReaderMode`);return r}function L2(r,e){Gt(r,e);let t=r?.preventAbort,a=r?.preventCancel,i=r?.preventClose,s=r?.signal;return s!==void 0&&(function(n,o){if(!(function(p){if(typeof p!="object"||p===null)return!1;try{return typeof p.aborted=="boolean"}catch{return!1}})(n))throw new TypeError(`${o} is not an AbortSignal.`)})(s,`${e} has member 'signal' that`),{preventAbort:!!t,preventCancel:!!a,preventClose:!!i,signal:s}}function C4(r,e){Gt(r,e);let t=r?.readable;Hp(t,"readable","ReadableWritablePair"),(function(i,s){if(!Zi(i))throw new TypeError(`${s} is not a ReadableStream.`)})(t,`${e} has member 'readable' that`);let a=r?.writable;return Hp(a,"writable","ReadableWritablePair"),(function(i,s){if(!im(i))throw new TypeError(`${s} is not a WritableStream.`)})(a,`${e} has member 'writable' that`),{readable:t,writable:a}}function Jr(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_readableStreamController")&&r instanceof fe}function ti(r){return r._reader!==void 0}function Nm(r,e){if(r._disturbed=!0,r._state==="closed")return G(void 0);if(r._state==="errored")return F(r._storedError);as(r);let t=r._reader;if(t!==void 0&&Ka(t)){let a=t._readIntoRequests;t._readIntoRequests=new Le,a.forEach((i=>{i._closeSteps(void 0)}))}return mt(r._readableStreamController[Yp](e),J2)}function as(r){r._state="closed";let e=r._reader;if(e!==void 0&&(tm(e),zr(e))){let t=e._readRequests;e._readRequests=new Le,t.forEach((a=>{a._closeSteps()}))}}function Mm(r,e){r._state="errored",r._storedError=e;let t=r._reader;t!==void 0&&(ed(t,e),zr(t)?pm(t,e):_m(t,e))}function Wr(r){return new TypeError(`ReadableStream.prototype.${r} can only be used on a ReadableStream`)}function Dm(r,e){Gt(r,e);let t=r?.highWaterMark;return Hp(t,"highWaterMark","QueuingStrategyInit"),{highWaterMark:td(t)}}function j2(r){return new TypeError(`ByteLengthQueuingStrategy.prototype.${r} can only be used on a ByteLengthQueuingStrategy`)}function B2(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_byteLengthQueuingStrategyHighWaterMark")&&r instanceof is}function V2(r){return new TypeError(`CountQueuingStrategy.prototype.${r} can only be used on a CountQueuingStrategy`)}function q2(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_countQueuingStrategyHighWaterMark")&&r instanceof ss}function k4(r,e,t){return ut(r,t),a=>Kr(r,e,[a])}function N4(r,e,t){return ut(r,t),a=>Io(r,e,[a])}function M4(r,e,t){return ut(r,t),(a,i)=>Kr(r,e,[a,i])}function U2(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_transformStreamController")&&r instanceof ns}function ko(r,e){Do(r,e),Lo(r,e)}function Lo(r,e){$m(r._transformStreamController),(function(t,a){t._writableController.error(a),t._writableState==="writable"&&Bm(t,a)})(r,e),r._backpressure&&No(r,!1)}function No(r,e){r._backpressureChangePromise!==void 0&&r._backpressureChangePromise_resolve(),r._backpressureChangePromise=De((t=>{r._backpressureChangePromise_resolve=t})),r._backpressure=e}function vo(r){return!!ke(r)&&!!Object.prototype.hasOwnProperty.call(r,"_controlledTransformStream")&&r instanceof zt}function $m(r){r._transformAlgorithm=void 0,r._flushAlgorithm=void 0}function Om(r,e){let t=r._controlledTransformStream;if(!Mo(t))throw new TypeError("Readable side is not in a state that permits enqueue");try{(function(i,s){i._readablePulling=!1;try{i._readableController.enqueue(s)}catch(n){throw Do(i,n),n}})(t,e)}catch(i){throw Lo(t,i),t._readableStoredError}(function(i){return!(function(s){return Mo(s)?!!(s._readablePulling||jm(s)>0):!1})(i)})(t)!==t._backpressure&&No(t,!0)}function H2(r,e){return mt(r._transformAlgorithm(e),void 0,(t=>{throw ko(r._controlledTransformStream,t),t}))}function wo(r){return new TypeError(`TransformStreamDefaultController.prototype.${r} can only be used on a TransformStreamDefaultController`)}function W2(r){return new TypeError(`TransformStream.prototype.${r} can only be used on a TransformStream`)}function Mo(r){return!r._readableCloseRequested&&r._readableState==="readable"}function Lm(r){r._readableState="closed",r._readableCloseRequested=!0,r._readableController.close()}function Do(r,e){r._readableState==="readable"&&(r._readableState="errored",r._readableStoredError=e),r._readableController.error(e)}function jm(r){return r._readableController.desiredSize}function qp(r,e){r._writableState!=="writable"?md(r):Bm(r,e)}function Bm(r,e){r._writableState="erroring",r._writableStoredError=e,!(function(t){return t._writableHasInFlightOperation})(r)&&r._writableStarted&&md(r)}function md(r){r._writableState="errored"}function z2(r){r._writableState==="erroring"&&md(r)}var z,G2,Xp,l4,c4,m4,bo,Le,K2,X2,Yp,Zp,Qp,E2,u4,Vt,Eo,dm,lm,cr,qt,Ut,b4,Ht,St,Em,ei,$2,_4,Wt,fe,Im,is,Fm,ss,ns,zt,Vm=Y(()=>{z=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol:r=>`Symbol(${r})`;G2=J2;Xp=Promise,l4=Promise.prototype.then,c4=Promise.resolve.bind(Xp),m4=Promise.reject.bind(Xp);bo=r=>{if(typeof queueMicrotask=="function")bo=queueMicrotask;else{let e=G(void 0);bo=t=>Jt(e,t)}return bo(r)};Le=class{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(e){let t=this._back,a=t;t._elements.length===16383&&(a={_elements:[],_next:void 0}),t._elements.push(e),a!==t&&(this._back=a,t._next=a),++this._size}shift(){let e=this._front,t=e,a=this._cursor,i=a+1,s=e._elements,n=s[a];return i===16384&&(t=e._next,i=0),--this._size,this._cursor=i,e!==t&&(this._front=t),s[a]=void 0,n}forEach(e){let t=this._cursor,a=this._front,i=a._elements;for(;!(t===i.length&&a._next===void 0||t===i.length&&(a=a._next,i=a._elements,t=0,i.length===0));)e(i[t]),++t}peek(){let e=this._front,t=this._cursor;return e._elements[t]}},K2=z("[[AbortSteps]]"),X2=z("[[ErrorSteps]]"),Yp=z("[[CancelSteps]]"),Zp=z("[[PullSteps]]"),Qp=z("[[ReleaseSteps]]");E2=Number.isFinite||function(r){return typeof r=="number"&&isFinite(r)},u4=Math.trunc||function(r){return r<0?Math.ceil(r):Math.floor(r)};Vt=class{constructor(e){if(Kt(e,1,"ReadableStreamDefaultReader"),sm(e,"First parameter"),ti(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");Y2(this,e),this._readRequests=new Le}get closed(){return zr(this)?this._closedPromise:F(mo("closed"))}cancel(e){return zr(this)?this._ownerReadableStream===void 0?F(Za("cancel")):Z2(this,e):F(mo("cancel"))}read(){if(!zr(this))return F(mo("read"));if(this._ownerReadableStream===void 0)return F(Za("read from"));let e,t,a=De(((i,s)=>{e=i,t=s}));return(function(i,s){let n=i._ownerReadableStream;n._disturbed=!0,n._state==="closed"?s._closeSteps():n._state==="errored"?s._errorSteps(n._storedError):n._readableStreamController[Zp](s)})(this,{_chunkSteps:i=>e({value:i,done:!1}),_closeSteps:()=>e({value:void 0,done:!0}),_errorSteps:i=>t(i)}),a}releaseLock(){if(!zr(this))throw mo("releaseLock");this._ownerReadableStream!==void 0&&(function(e){Q2(e);let t=new TypeError("Reader was released");pm(e,t)})(this)}};Object.defineProperties(Vt.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),J(Vt.prototype.cancel,"cancel"),J(Vt.prototype.read,"read"),J(Vt.prototype.releaseLock,"releaseLock"),typeof z.toStringTag=="symbol"&&Object.defineProperty(Vt.prototype,z.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});Eo=class{constructor(e,t){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=e,this._preventCancel=t}next(){let e=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?mt(this._ongoingPromise,e,e):e(),this._ongoingPromise}return(e){let t=()=>this._returnSteps(e);return this._ongoingPromise?mt(this._ongoingPromise,t,t):t()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let e=this._reader;return e===void 0?F(Za("iterate")):Jt(e.read(),(t=>{var a;return this._ongoingPromise=void 0,t.done&&(this._isFinished=!0,(a=this._reader)===null||a===void 0||a.releaseLock(),this._reader=void 0),t}),(t=>{var a;throw this._ongoingPromise=void 0,this._isFinished=!0,(a=this._reader)===null||a===void 0||a.releaseLock(),this._reader=void 0,t}))}_returnSteps(e){if(this._isFinished)return Promise.resolve({value:e,done:!0});this._isFinished=!0;let t=this._reader;if(t===void 0)return F(Za("finish iterating"));if(this._reader=void 0,!this._preventCancel){let a=t.cancel(e);return t.releaseLock(),mt(a,(()=>({value:e,done:!0})))}return t.releaseLock(),G({value:e,done:!0})}},dm={next(){return A2(this)?this._asyncIteratorImpl.next():F(R2("next"))},return(r){return A2(this)?this._asyncIteratorImpl.return(r):F(R2("return"))}};typeof z.asyncIterator=="symbol"&&Object.defineProperty(dm,z.asyncIterator,{value(){return this},writable:!0,configurable:!0});lm=Number.isNaN||function(r){return r!=r};cr=class{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!Lp(this))throw jp("view");return this._view}respond(e){if(!Lp(this))throw jp("respond");if(Kt(e,1,"respond"),e=am(e,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");this._view.buffer,(function(t,a){let i=t._pendingPullIntos.peek();if(t._controlledReadableByteStream._state==="closed"){if(a!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(a===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(i.bytesFilled+a>i.byteLength)throw new RangeError("bytesWritten out of range")}i.buffer=i.buffer,k2(t,a)})(this._associatedReadableByteStreamController,e)}respondWithNewView(e){if(!Lp(this))throw jp("respondWithNewView");if(Kt(e,1,"respondWithNewView"),!ArrayBuffer.isView(e))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");e.buffer,(function(t,a){let i=t._pendingPullIntos.peek();if(t._controlledReadableByteStream._state==="closed"){if(a.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(a.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(i.byteOffset+i.bytesFilled!==a.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(i.bufferByteLength!==a.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(i.bytesFilled+a.byteLength>i.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let s=a.byteLength;i.buffer=a.buffer,k2(t,s)})(this._associatedReadableByteStreamController,e)}};Object.defineProperties(cr.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),J(cr.prototype.respond,"respond"),J(cr.prototype.respondWithNewView,"respondWithNewView"),typeof z.toStringTag=="symbol"&&Object.defineProperty(cr.prototype,z.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});qt=class{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!Ga(this))throw Xi("byobRequest");return(function(e){if(e._byobRequest===null&&e._pendingPullIntos.length>0){let t=e._pendingPullIntos.peek(),a=new Uint8Array(t.buffer,t.byteOffset+t.bytesFilled,t.byteLength-t.bytesFilled),i=Object.create(cr.prototype);(function(s,n,o){s._associatedReadableByteStreamController=n,s._view=o})(i,e,a),e._byobRequest=i}return e._byobRequest})(this)}get desiredSize(){if(!Ga(this))throw Xi("desiredSize");return wm(this)}close(){if(!Ga(this))throw Xi("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let e=this._controlledReadableByteStream._state;if(e!=="readable")throw new TypeError(`The stream (in ${e} state) is not in the readable state and cannot be closed`);(function(t){let a=t._controlledReadableByteStream;if(!(t._closeRequested||a._state!=="readable")){if(t._queueTotalSize>0)return void(t._closeRequested=!0);if(t._pendingPullIntos.length>0&&t._pendingPullIntos.peek().bytesFilled>0){let i=new TypeError("Insufficient bytes to fill elements in the given buffer");throw Qa(t,i),i}Po(t),as(a)}})(this)}enqueue(e){if(!Ga(this))throw Xi("enqueue");if(Kt(e,1,"enqueue"),!ArrayBuffer.isView(e))throw new TypeError("chunk must be an array buffer view");if(e.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(e.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let t=this._controlledReadableByteStream._state;if(t!=="readable")throw new TypeError(`The stream (in ${t} state) is not in the readable state and cannot be enqueued to`);(function(a,i){let s=a._controlledReadableByteStream;if(a._closeRequested||s._state!=="readable")return;let n=i.buffer,o=i.byteOffset,p=i.byteLength,d=n;if(a._pendingPullIntos.length>0){let l=a._pendingPullIntos.peek();l.buffer,id(a),l.buffer=l.buffer,l.readerType==="none"&&fm(a,l)}om(s)?((function(l){let u=l._controlledReadableByteStream._reader;for(;u._readRequests.length>0;){if(l._queueTotalSize===0)return;N2(l,u._readRequests.shift())}})(a),Fo(s)===0?_o(a,d,o,p):(a._pendingPullIntos.length>0&&Xa(a),rd(s,new Uint8Array(d,o,p),!1))):sd(s)?(_o(a,d,o,p),Jp(a)):_o(a,d,o,p),Gr(a)})(this,e)}error(e){if(!Ga(this))throw Xi("error");Qa(this,e)}[Yp](e){mm(this),ur(this);let t=this._cancelAlgorithm(e);return Po(this),t}[Zp](e){let t=this._controlledReadableByteStream;if(this._queueTotalSize>0)return void N2(this,e);let a=this._autoAllocateChunkSize;if(a!==void 0){let i;try{i=new ArrayBuffer(a)}catch(n){return void e._errorSteps(n)}let s={buffer:i,bufferByteLength:a,byteOffset:0,byteLength:a,bytesFilled:0,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(s)}nm(t,e),Gr(this)}[Qp](){if(this._pendingPullIntos.length>0){let e=this._pendingPullIntos.peek();e.readerType="none",this._pendingPullIntos=new Le,this._pendingPullIntos.push(e)}}};Object.defineProperties(qt.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),J(qt.prototype.close,"close"),J(qt.prototype.enqueue,"enqueue"),J(qt.prototype.error,"error"),typeof z.toStringTag=="symbol"&&Object.defineProperty(qt.prototype,z.toStringTag,{value:"ReadableByteStreamController",configurable:!0});Ut=class{constructor(e){if(Kt(e,1,"ReadableStreamBYOBReader"),sm(e,"First parameter"),ti(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!Ga(e._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");Y2(this,e),this._readIntoRequests=new Le}get closed(){return Ka(this)?this._closedPromise:F(uo("closed"))}cancel(e){return Ka(this)?this._ownerReadableStream===void 0?F(Za("cancel")):Z2(this,e):F(uo("cancel"))}read(e){if(!Ka(this))return F(uo("read"));if(!ArrayBuffer.isView(e))return F(new TypeError("view must be an array buffer view"));if(e.byteLength===0)return F(new TypeError("view must have non-zero byteLength"));if(e.buffer.byteLength===0)return F(new TypeError("view's buffer must have non-zero byteLength"));if(e.buffer,this._ownerReadableStream===void 0)return F(Za("read from"));let t,a,i=De(((s,n)=>{t=s,a=n}));return(function(s,n,o){let p=s._ownerReadableStream;p._disturbed=!0,p._state==="errored"?o._errorSteps(p._storedError):(function(d,l,u){let c=d._controlledReadableByteStream,m=1;l.constructor!==DataView&&(m=l.constructor.BYTES_PER_ELEMENT);let h=l.constructor,v=l.buffer,f={buffer:v,bufferByteLength:v.byteLength,byteOffset:l.byteOffset,byteLength:l.byteLength,bytesFilled:0,elementSize:m,viewConstructor:h,readerType:"byob"};if(d._pendingPullIntos.length>0)return d._pendingPullIntos.push(f),void M2(c,u);if(c._state!=="closed"){if(d._queueTotalSize>0){if(gm(d,f)){let g=um(f);return vm(d),void u._chunkSteps(g)}if(d._closeRequested){let g=new TypeError("Insufficient bytes to fill elements in the given buffer");return Qa(d,g),void u._errorSteps(g)}}d._pendingPullIntos.push(f),M2(c,u),Gr(d)}else{let g=new h(f.buffer,f.byteOffset,0);u._closeSteps(g)}})(p._readableStreamController,n,o)})(this,e,{_chunkSteps:s=>t({value:s,done:!1}),_closeSteps:s=>t({value:s,done:!0}),_errorSteps:s=>a(s)}),i}releaseLock(){if(!Ka(this))throw uo("releaseLock");this._ownerReadableStream!==void 0&&(function(e){Q2(e);let t=new TypeError("Reader was released");_m(e,t)})(this)}};Object.defineProperties(Ut.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),J(Ut.prototype.cancel,"cancel"),J(Ut.prototype.read,"read"),J(Ut.prototype.releaseLock,"releaseLock"),typeof z.toStringTag=="symbol"&&Object.defineProperty(Ut.prototype,z.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});b4=typeof AbortController=="function",Ht=class{constructor(e={},t={}){e===void 0?e=null:rm(e,"First parameter");let a=Ro(t,"Second parameter"),i=(function(o,p){Gt(o,p);let d=o?.abort,l=o?.close,u=o?.start,c=o?.type,m=o?.write;return{abort:d===void 0?void 0:g4(d,o,`${p} has member 'abort' that`),close:l===void 0?void 0:y4(l,o,`${p} has member 'close' that`),start:u===void 0?void 0:v4(u,o,`${p} has member 'start' that`),write:m===void 0?void 0:w4(m,o,`${p} has member 'write' that`),type:c}})(e,"First parameter");var s;if((s=this)._state="writable",s._storedError=void 0,s._writer=void 0,s._writableStreamController=void 0,s._writeRequests=new Le,s._inFlightWriteRequest=void 0,s._closeRequest=void 0,s._inFlightCloseRequest=void 0,s._pendingAbortRequest=void 0,s._backpressure=!1,i.type!==void 0)throw new RangeError("Invalid type is specified");let n=Ao(a);(function(o,p,d,l){let u=Object.create(ei.prototype),c,m,h,v;c=p.start!==void 0?()=>p.start(u):()=>{},m=p.write!==void 0?f=>p.write(f,u):()=>G(void 0),h=p.close!==void 0?()=>p.close():()=>G(void 0),v=p.abort!==void 0?f=>p.abort(f):()=>G(void 0),(function(f,g,b,A,k,E,N,V){g._controlledWritableStream=f,f._writableStreamController=g,g._queue=void 0,g._queueTotalSize=void 0,ur(g),g._abortReason=void 0,g._abortController=(function(){if(b4)return new AbortController})(),g._started=!1,g._strategySizeAlgorithm=V,g._strategyHWM=N,g._writeAlgorithm=A,g._closeAlgorithm=k,g._abortAlgorithm=E;let T=dd(g);pd(f,T);let w=b();Ce(G(w),(()=>(g._started=!0,$o(g),null)),(_=>(g._started=!0,Gp(f,_),null)))})(o,u,c,m,h,v,d,l)})(this,i,rs(a,1),n)}get locked(){if(!Tt(this))throw fo("locked");return So(this)}abort(e){return Tt(this)?So(this)?F(new TypeError("Cannot abort a stream that already has a writer")):Sm(this,e):F(fo("abort"))}close(){return Tt(this)?So(this)?F(new TypeError("Cannot close a stream that already has a writer")):mr(this)?F(new TypeError("Cannot close an already-closing stream")):Tm(this):F(fo("close"))}getWriter(){if(!Tt(this))throw fo("getWriter");return new St(this)}};Object.defineProperties(Ht.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),J(Ht.prototype.abort,"abort"),J(Ht.prototype.close,"close"),J(Ht.prototype.getWriter,"getWriter"),typeof z.toStringTag=="symbol"&&Object.defineProperty(Ht.prototype,z.toStringTag,{value:"WritableStream",configurable:!0});St=class{constructor(e){if(Kt(e,1,"WritableStreamDefaultWriter"),(function(i,s){if(!Tt(i))throw new TypeError(`${s} is not a WritableStream.`)})(e,"First parameter"),So(e))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=e,e._writer=this;let t=e._state;if(t==="writable")!mr(e)&&e._backpressure?Oo(this):F2(this),To(this);else if(t==="erroring")Kp(this,e._storedError),To(this);else if(t==="closed")F2(this),To(a=this),Rm(a);else{let i=e._storedError;Kp(this,i),I2(this,i)}var a}get closed(){return Ur(this)?this._closedPromise:F(Hr("closed"))}get desiredSize(){if(!Ur(this))throw Hr("desiredSize");if(this._ownerWritableStream===void 0)throw Yi("desiredSize");return(function(e){let t=e._ownerWritableStream,a=t._state;return a==="errored"||a==="erroring"?null:a==="closed"?0:Pm(t._writableStreamController)})(this)}get ready(){return Ur(this)?this._readyPromise:F(Hr("ready"))}abort(e){return Ur(this)?this._ownerWritableStream===void 0?F(Yi("abort")):(function(t,a){return Sm(t._ownerWritableStream,a)})(this,e):F(Hr("abort"))}close(){if(!Ur(this))return F(Hr("close"));let e=this._ownerWritableStream;return e===void 0?F(Yi("close")):mr(e)?F(new TypeError("Cannot close an already-closing stream")):Tm(this._ownerWritableStream)}releaseLock(){if(!Ur(this))throw Hr("releaseLock");this._ownerWritableStream!==void 0&&(function(e){let t=e._ownerWritableStream,a=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");xm(e,a),(function(i,s){i._closedPromiseState==="pending"?ld(i,s):(function(n,o){I2(n,o)})(i,s)})(e,a),t._writer=void 0,e._ownerWritableStream=void 0})(this)}write(e){return Ur(this)?this._ownerWritableStream===void 0?F(Yi("write to")):(function(t,a){let i=t._ownerWritableStream,s=i._writableStreamController,n=(function(d,l){try{return d._strategySizeAlgorithm(l)}catch(u){return D2(d,u),1}})(s,a);if(i!==t._ownerWritableStream)return F(Yi("write to"));let o=i._state;if(o==="errored")return F(i._storedError);if(mr(i)||o==="closed")return F(new TypeError("The stream is closing or closed and cannot be written to"));if(o==="erroring")return F(i._storedError);let p=(function(d){return De(((l,u)=>{let c={_resolve:l,_reject:u};d._writeRequests.push(c)}))})(i);return(function(d,l,u){try{ad(d,l,u)}catch(m){return void D2(d,m)}let c=d._controlledWritableStream;!mr(c)&&c._state==="writable"&&pd(c,dd(d)),$o(d)})(s,a,n),p})(this,e):F(Hr("write"))}};Object.defineProperties(St.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),J(St.prototype.abort,"abort"),J(St.prototype.close,"close"),J(St.prototype.releaseLock,"releaseLock"),J(St.prototype.write,"write"),typeof z.toStringTag=="symbol"&&Object.defineProperty(St.prototype,z.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});Em={},ei=class{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!Bp(this))throw Vp("abortReason");return this._abortReason}get signal(){if(!Bp(this))throw Vp("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(e){if(!Bp(this))throw Vp("error");this._controlledWritableStream._state==="writable"&&Am(this,e)}[K2](e){let t=this._abortAlgorithm(e);return Co(this),t}[X2](){ur(this)}};Object.defineProperties(ei.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof z.toStringTag=="symbol"&&Object.defineProperty(ei.prototype,z.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});$2=typeof DOMException<"u"?DOMException:void 0,_4=(function(r){if(typeof r!="function"&&typeof r!="object")return!1;try{return new r,!0}catch{return!1}})($2)?$2:(function(){let r=function(e,t){this.message=e||"",this.name=t||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return r.prototype=Object.create(Error.prototype),Object.defineProperty(r.prototype,"constructor",{value:r,writable:!0,configurable:!0}),r})();Wt=class{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!go(this))throw yo("desiredSize");return km(this)}close(){if(!go(this))throw yo("close");if(!Qi(this))throw new TypeError("The stream is not in a state that permits close");(function(e){if(!Qi(e))return;let t=e._controlledReadableStream;e._closeRequested=!0,e._queue.length===0&&(xo(e),as(t))})(this)}enqueue(e){if(!go(this))throw yo("enqueue");if(!Qi(this))throw new TypeError("The stream is not in a state that permits enqueue");return(function(t,a){if(!Qi(t))return;let i=t._controlledReadableStream;if(ti(i)&&Fo(i)>0)rd(i,a,!1);else{let s;try{s=t._strategySizeAlgorithm(a)}catch(n){throw ts(t,n),n}try{ad(t,a,s)}catch(n){throw ts(t,n),n}}es(t)})(this,e)}error(e){if(!go(this))throw yo("error");ts(this,e)}[Yp](e){ur(this);let t=this._cancelAlgorithm(e);return xo(this),t}[Zp](e){let t=this._controlledReadableStream;if(this._queue.length>0){let a=Wp(this);this._closeRequested&&this._queue.length===0?(xo(this),as(t)):es(this),e._chunkSteps(a)}else nm(t,e),es(this)}[Qp](){}};Object.defineProperties(Wt.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),J(Wt.prototype.close,"close"),J(Wt.prototype.enqueue,"enqueue"),J(Wt.prototype.error,"error"),typeof z.toStringTag=="symbol"&&Object.defineProperty(Wt.prototype,z.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});fe=class{constructor(e={},t={}){e===void 0?e=null:rm(e,"First parameter");let a=Ro(t,"Second parameter"),i=(function(n,o){Gt(n,o);let p=n,d=p?.autoAllocateChunkSize,l=p?.cancel,u=p?.pull,c=p?.start,m=p?.type;return{autoAllocateChunkSize:d===void 0?void 0:am(d,`${o} has member 'autoAllocateChunkSize' that`),cancel:l===void 0?void 0:x4(l,p,`${o} has member 'cancel' that`),pull:u===void 0?void 0:E4(u,p,`${o} has member 'pull' that`),start:c===void 0?void 0:P4(c,p,`${o} has member 'start' that`),type:m===void 0?void 0:A4(m,`${o} has member 'type' that`)}})(e,"First parameter");var s;if((s=this)._state="readable",s._reader=void 0,s._storedError=void 0,s._disturbed=!1,i.type==="bytes"){if(a.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");h4(this,i,rs(a,0))}else{let n=Ao(a);T4(this,i,rs(a,1),n)}}get locked(){if(!Jr(this))throw Wr("locked");return ti(this)}cancel(e){return Jr(this)?ti(this)?F(new TypeError("Cannot cancel a stream that already has a reader")):Nm(this,e):F(Wr("cancel"))}getReader(e){if(!Jr(this))throw Wr("getReader");return(function(t,a){Gt(t,a);let i=t?.mode;return{mode:i===void 0?void 0:R4(i,`${a} has member 'mode' that`)}})(e,"First parameter").mode===void 0?new Vt(this):(function(t){return new Ut(t)})(this)}pipeThrough(e,t={}){if(!Zi(this))throw Wr("pipeThrough");Kt(e,1,"pipeThrough");let a=C4(e,"First parameter"),i=L2(t,"Second parameter");if(this.locked)throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(a.writable.locked)throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");return Ya(O2(this,a.writable,i.preventClose,i.preventAbort,i.preventCancel,i.signal)),a.readable}pipeTo(e,t={}){if(!Zi(this))return F(Wr("pipeTo"));if(e===void 0)return F("Parameter 1 is required in 'pipeTo'.");if(!im(e))return F(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let a;try{a=L2(t,"Second parameter")}catch(i){return F(i)}return this.locked?F(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):e.locked?F(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):O2(this,e,a.preventClose,a.preventAbort,a.preventCancel,a.signal)}tee(){if(!Zi(this))throw Wr("tee");if(this.locked)throw new TypeError("Cannot tee a stream that already has a reader");return S4(this)}values(e){if(!Zi(this))throw Wr("values");return(function(t,a){let i=t.getReader(),s=new Eo(i,a),n=Object.create(dm);return n._asyncIteratorImpl=s,n})(this,(function(t,a){return Gt(t,a),{preventCancel:!!t?.preventCancel}})(e,"First parameter").preventCancel)}};Object.defineProperties(fe.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),J(fe.prototype.cancel,"cancel"),J(fe.prototype.getReader,"getReader"),J(fe.prototype.pipeThrough,"pipeThrough"),J(fe.prototype.pipeTo,"pipeTo"),J(fe.prototype.tee,"tee"),J(fe.prototype.values,"values"),typeof z.toStringTag=="symbol"&&Object.defineProperty(fe.prototype,z.toStringTag,{value:"ReadableStream",configurable:!0}),typeof z.asyncIterator=="symbol"&&Object.defineProperty(fe.prototype,z.asyncIterator,{value:fe.prototype.values,writable:!0,configurable:!0});Im=r=>r.byteLength;J(Im,"size");is=class{constructor(e){Kt(e,1,"ByteLengthQueuingStrategy"),e=Dm(e,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=e.highWaterMark}get highWaterMark(){if(!B2(this))throw j2("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!B2(this))throw j2("size");return Im}};Object.defineProperties(is.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof z.toStringTag=="symbol"&&Object.defineProperty(is.prototype,z.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});Fm=()=>1;J(Fm,"size");ss=class{constructor(e){Kt(e,1,"CountQueuingStrategy"),e=Dm(e,"First parameter"),this._countQueuingStrategyHighWaterMark=e.highWaterMark}get highWaterMark(){if(!q2(this))throw V2("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!q2(this))throw V2("size");return Fm}};Object.defineProperties(ss.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof z.toStringTag=="symbol"&&Object.defineProperty(ss.prototype,z.toStringTag,{value:"CountQueuingStrategy",configurable:!0});ns=class{constructor(e={},t={},a={}){e===void 0&&(e=null);let i=Ro(t,"Second parameter"),s=Ro(a,"Third parameter"),n=(function(c,m){Gt(c,m);let h=c?.flush,v=c?.readableType,f=c?.start,g=c?.transform,b=c?.writableType;return{flush:h===void 0?void 0:k4(h,c,`${m} has member 'flush' that`),readableType:v,start:f===void 0?void 0:N4(f,c,`${m} has member 'start' that`),transform:g===void 0?void 0:M4(g,c,`${m} has member 'transform' that`),writableType:b}})(e,"First parameter");if(n.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(n.writableType!==void 0)throw new RangeError("Invalid writableType specified");let o=rs(s,0),p=Ao(s),d=rs(i,1),l=Ao(i),u;(function(c,m,h,v,f,g){function b(){return m}function A(T){return(function(w,_){let M=w._transformStreamController;return w._backpressure?mt(w._backpressureChangePromise,(()=>{if((Tt(w._writable)?w._writable._state:w._writableState)==="erroring")throw Tt(w._writable)?w._writable._storedError:w._writableStoredError;return H2(M,_)})):H2(M,_)})(c,T)}function k(T){return(function(w,_){return ko(w,_),G(void 0)})(c,T)}function E(){return(function(T){let w=T._transformStreamController,_=w._flushAlgorithm();return $m(w),mt(_,(()=>{if(T._readableState==="errored")throw T._readableStoredError;Mo(T)&&Lm(T)}),(M=>{throw ko(T,M),T._readableStoredError}))})(c)}function N(){return(function(T){return No(T,!1),T._backpressureChangePromise})(c)}function V(T){return Lo(c,T),G(void 0)}c._writableState="writable",c._writableStoredError=void 0,c._writableHasInFlightOperation=!1,c._writableStarted=!1,c._writable=(function(T,w,_,M,D,R,q){return new Ht({start(j){T._writableController=j;try{let W=j.signal;W!==void 0&&W.addEventListener("abort",(()=>{T._writableState==="writable"&&(T._writableState="erroring",W.reason&&(T._writableStoredError=W.reason))}))}catch{}return mt(w(),(()=>(T._writableStarted=!0,z2(T),null)),(W=>{throw T._writableStarted=!0,qp(T,W),W}))},write:j=>((function(W){W._writableHasInFlightOperation=!0})(T),mt(_(j),(()=>((function(W){W._writableHasInFlightOperation=!1})(T),z2(T),null)),(W=>{throw(function(we,be){we._writableHasInFlightOperation=!1,qp(we,be)})(T,W),W}))),close:()=>((function(j){j._writableHasInFlightOperation=!0})(T),mt(M(),(()=>((function(j){j._writableHasInFlightOperation=!1,j._writableState==="erroring"&&(j._writableStoredError=void 0),j._writableState="closed"})(T),null)),(j=>{throw(function(W,we){W._writableHasInFlightOperation=!1,W._writableState,qp(W,we)})(T,j),j}))),abort:j=>(T._writableState="errored",T._writableStoredError=j,D(j))},{highWaterMark:R,size:q})})(c,b,A,E,k,h,v),c._readableState="readable",c._readableStoredError=void 0,c._readableCloseRequested=!1,c._readablePulling=!1,c._readable=(function(T,w,_,M,D,R){return new fe({start:q=>(T._readableController=q,w().catch((j=>{Do(T,j)}))),pull:()=>(T._readablePulling=!0,_().catch((q=>{Do(T,q)}))),cancel:q=>(T._readableState="closed",M(q))},{highWaterMark:D,size:R})})(c,b,N,V,f,g),c._backpressure=void 0,c._backpressureChangePromise=void 0,c._backpressureChangePromise_resolve=void 0,No(c,!0),c._transformStreamController=void 0})(this,De((c=>{u=c})),d,l,o,p),(function(c,m){let h=Object.create(zt.prototype),v,f;v=m.transform!==void 0?g=>m.transform(g,h):g=>{try{return Om(h,g),G(void 0)}catch(b){return F(b)}},f=m.flush!==void 0?()=>m.flush(h):()=>G(void 0),(function(g,b,A,k){b._controlledTransformStream=g,g._transformStreamController=b,b._transformAlgorithm=A,b._flushAlgorithm=k})(c,h,v,f)})(this,n),n.start!==void 0?u(n.start(this._transformStreamController)):u(void 0)}get readable(){if(!U2(this))throw W2("readable");return this._readable}get writable(){if(!U2(this))throw W2("writable");return this._writable}};Object.defineProperties(ns.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof z.toStringTag=="symbol"&&Object.defineProperty(ns.prototype,z.toStringTag,{value:"TransformStream",configurable:!0});zt=class{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!vo(this))throw wo("desiredSize");return jm(this._controlledTransformStream)}enqueue(e){if(!vo(this))throw wo("enqueue");Om(this,e)}error(e){if(!vo(this))throw wo("error");var t;t=e,ko(this._controlledTransformStream,t)}terminate(){if(!vo(this))throw wo("terminate");(function(e){let t=e._controlledTransformStream;Mo(t)&&Lm(t);let a=new TypeError("TransformStream terminated");Lo(t,a)})(this)}};Object.defineProperties(zt.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),J(zt.prototype.enqueue,"enqueue"),J(zt.prototype.error,"error"),J(zt.prototype.terminate,"terminate"),typeof z.toStringTag=="symbol"&&Object.defineProperty(zt.prototype,z.toStringTag,{value:"TransformStreamDefaultController",configurable:!0})});var me,jo=Y(()=>{me=r=>typeof r=="function"});async function*D4(r){let e=r.byteOffset+r.byteLength,t=r.byteOffset;for(;t!==e;){let a=Math.min(e-t,qm),i=r.buffer.slice(t,t+a);t+=i.byteLength,yield new Uint8Array(i)}}async function*I4(r){let e=0;for(;e!==r.size;){let a=await r.slice(e,Math.min(r.size,e+qm)).arrayBuffer();e+=a.byteLength,yield new Uint8Array(a)}}async function*Bo(r,e=!1){for(let t of r)ArrayBuffer.isView(t)?e?yield*D4(t):yield t:me(t.stream)?yield*t.stream():yield*I4(t)}function*Um(r,e,t=0,a){a??(a=e);let i=t<0?Math.max(e+t,0):Math.min(t,e),s=a<0?Math.max(e+a,0):Math.min(a,e),n=Math.max(s-i,0),o=0;for(let p of r){if(o>=n)break;let d=ArrayBuffer.isView(p)?p.byteLength:p.size;if(i&&d<=i)i-=d,s-=d;else{let l;ArrayBuffer.isView(p)?(l=p.subarray(i,Math.min(d,s)),o+=l.byteLength):(l=p.slice(i,Math.min(d,s)),o+=l.size),s-=d,i=0,yield l}}}var qm,Hm=Y(()=>{jo();qm=65536});var hr,Wm,Xr,Vo,os,xt,qo=Y(()=>{Vm();jo();Hm();hr=function(r,e,t,a){if(t==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!a:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?a:t==="a"?a.call(r):a?a.value:e.get(r)},Wm=function(r,e,t,a,i){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?i.call(r,t):i?i.value=t:e.set(r,t),t},xt=class r{constructor(e=[],t={}){if(Xr.set(this,[]),Vo.set(this,""),os.set(this,0),t??(t={}),typeof e!="object"||e===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(!me(e[Symbol.iterator]))throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof t!="object"&&!me(t))throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");let a=new TextEncoder;for(let s of e){let n;ArrayBuffer.isView(s)?n=new Uint8Array(s.buffer.slice(s.byteOffset,s.byteOffset+s.byteLength)):s instanceof ArrayBuffer?n=new Uint8Array(s.slice(0)):s instanceof r?n=s:n=a.encode(String(s)),Wm(this,os,hr(this,os,"f")+(ArrayBuffer.isView(n)?n.byteLength:n.size),"f"),hr(this,Xr,"f").push(n)}let i=t.type===void 0?"":String(t.type);Wm(this,Vo,/^[\x20-\x7E]*$/.test(i)?i:"","f")}static[(Xr=new WeakMap,Vo=new WeakMap,os=new WeakMap,Symbol.hasInstance)](e){return!!(e&&typeof e=="object"&&me(e.constructor)&&(me(e.stream)||me(e.arrayBuffer))&&/^(Blob|File)$/.test(e[Symbol.toStringTag]))}get type(){return hr(this,Vo,"f")}get size(){return hr(this,os,"f")}slice(e,t,a){return new r(Um(hr(this,Xr,"f"),this.size,e,t),{type:a})}async text(){let e=new TextDecoder,t="";for await(let a of Bo(hr(this,Xr,"f")))t+=e.decode(a,{stream:!0});return t+=e.decode(),t}async arrayBuffer(){let e=new Uint8Array(this.size),t=0;for await(let a of Bo(hr(this,Xr,"f")))e.set(a,t),t+=a.length;return e.buffer}stream(){let e=Bo(hr(this,Xr,"f"),!0);return new fe({async pull(t){let{value:a,done:i}=await e.next();if(i)return queueMicrotask(()=>t.close());t.enqueue(a)},async cancel(){await e.return()}})}get[Symbol.toStringTag](){return"Blob"}};Object.defineProperties(xt.prototype,{type:{enumerable:!0},size:{enumerable:!0},slice:{enumerable:!0},stream:{enumerable:!0},text:{enumerable:!0},arrayBuffer:{enumerable:!0}})});var zm,Jm,Uo,Ho,ht,ps=Y(()=>{qo();zm=function(r,e,t,a,i){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?i.call(r,t):i?i.value=t:e.set(r,t),t},Jm=function(r,e,t,a){if(t==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!a:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?a:t==="a"?a.call(r):a?a.value:e.get(r)},ht=class extends xt{constructor(e,t,a={}){if(super(e,a),Uo.set(this,void 0),Ho.set(this,0),arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);zm(this,Uo,String(t),"f");let i=a.lastModified===void 0?Date.now():Number(a.lastModified);Number.isNaN(i)||zm(this,Ho,i,"f")}static[(Uo=new WeakMap,Ho=new WeakMap,Symbol.hasInstance)](e){return e instanceof xt&&e[Symbol.toStringTag]==="File"&&typeof e.name=="string"}get name(){return Jm(this,Uo,"f")}get lastModified(){return Jm(this,Ho,"f")}get webkitRelativePath(){return""}get[Symbol.toStringTag](){return"File"}}});var ud,hd=Y(()=>{ps();ud=r=>r instanceof ht});var Qm=_e((Ig,Zm)=>{var ri=1e3,ai=ri*60,ii=ai*60,Yr=ii*24,$4=Yr*7,O4=Yr*365.25;Zm.exports=function(r,e){e=e||{};var t=typeof r;if(t==="string"&&r.length>0)return L4(r);if(t==="number"&&isFinite(r))return e.long?B4(r):j4(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function L4(r){if(r=String(r),!(r.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(e){var t=parseFloat(e[1]),a=(e[2]||"ms").toLowerCase();switch(a){case"years":case"year":case"yrs":case"yr":case"y":return t*O4;case"weeks":case"week":case"w":return t*$4;case"days":case"day":case"d":return t*Yr;case"hours":case"hour":case"hrs":case"hr":case"h":return t*ii;case"minutes":case"minute":case"mins":case"min":case"m":return t*ai;case"seconds":case"second":case"secs":case"sec":case"s":return t*ri;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function j4(r){var e=Math.abs(r);return e>=Yr?Math.round(r/Yr)+"d":e>=ii?Math.round(r/ii)+"h":e>=ai?Math.round(r/ai)+"m":e>=ri?Math.round(r/ri)+"s":r+"ms"}function B4(r){var e=Math.abs(r);return e>=Yr?Jo(r,e,Yr,"day"):e>=ii?Jo(r,e,ii,"hour"):e>=ai?Jo(r,e,ai,"minute"):e>=ri?Jo(r,e,ri,"second"):r+" ms"}function Jo(r,e,t,a){var i=e>=t*1.5;return Math.round(r/t)+" "+a+(i?"s":"")}});var t0=_e((Fg,e0)=>{"use strict";var V4=require("util"),q4=Qm();e0.exports=function(r){if(typeof r=="number")return r;var e=q4(r);if(e===void 0){var t=new Error(V4.format("humanize-ms(%j) result undefined",r));console.warn(t.stack)}return e}});var Go=_e(($g,r0)=>{"use strict";r0.exports={CURRENT_ID:Symbol("agentkeepalive#currentId"),CREATE_ID:Symbol("agentkeepalive#createId"),INIT_SOCKET:Symbol("agentkeepalive#initSocket"),CREATE_HTTPS_CONNECTION:Symbol("agentkeepalive#createHttpsConnection"),SOCKET_CREATED_TIME:Symbol("agentkeepalive#socketCreatedTime"),SOCKET_NAME:Symbol("agentkeepalive#socketName"),SOCKET_REQUEST_COUNT:Symbol("agentkeepalive#socketRequestCount"),SOCKET_REQUEST_FINISHED_COUNT:Symbol("agentkeepalive#socketRequestFinishedCount")}});var _d=_e((Og,n0)=>{"use strict";var U4=require("http").Agent,gd=t0(),Ie=require("util").debuglog("agentkeepalive"),{INIT_SOCKET:a0,CURRENT_ID:Ko,CREATE_ID:i0,SOCKET_CREATED_TIME:s0,SOCKET_NAME:je,SOCKET_REQUEST_COUNT:at,SOCKET_REQUEST_FINISHED_COUNT:At}=Go(),wd=1,yd=parseInt(process.version.split(".",1)[0].substring(1));yd>=11&&yd<=12?wd=2:yd>=13&&(wd=3);function ds(r){console.log("[agentkeepalive:deprecated] %s",r)}var bd=class extends U4{constructor(e){e=e||{},e.keepAlive=e.keepAlive!==!1,e.freeSocketTimeout===void 0&&(e.freeSocketTimeout=4e3),e.keepAliveTimeout&&(ds("options.keepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"),e.freeSocketTimeout=e.keepAliveTimeout,delete e.keepAliveTimeout),e.freeSocketKeepAliveTimeout&&(ds("options.freeSocketKeepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"),e.freeSocketTimeout=e.freeSocketKeepAliveTimeout,delete e.freeSocketKeepAliveTimeout),e.timeout===void 0&&(e.timeout=Math.max(e.freeSocketTimeout*2,8e3)),e.timeout=gd(e.timeout),e.freeSocketTimeout=gd(e.freeSocketTimeout),e.socketActiveTTL=e.socketActiveTTL?gd(e.socketActiveTTL):0,super(e),this[Ko]=0,this.createSocketCount=0,this.createSocketCountLastCheck=0,this.createSocketErrorCount=0,this.createSocketErrorCountLastCheck=0,this.closeSocketCount=0,this.closeSocketCountLastCheck=0,this.errorSocketCount=0,this.errorSocketCountLastCheck=0,this.requestCount=0,this.requestCountLastCheck=0,this.timeoutSocketCount=0,this.timeoutSocketCountLastCheck=0,this.on("free",t=>{let a=this.calcSocketTimeout(t);a>0&&t.timeout!==a&&t.setTimeout(a)})}get freeSocketKeepAliveTimeout(){return ds("agent.freeSocketKeepAliveTimeout is deprecated, please use agent.options.freeSocketTimeout instead"),this.options.freeSocketTimeout}get timeout(){return ds("agent.timeout is deprecated, please use agent.options.timeout instead"),this.options.timeout}get socketActiveTTL(){return ds("agent.socketActiveTTL is deprecated, please use agent.options.socketActiveTTL instead"),this.options.socketActiveTTL}calcSocketTimeout(e){let t=this.options.freeSocketTimeout,a=this.options.socketActiveTTL;if(a){let i=Date.now()-e[s0],s=a-i;if(s<=0)return s;t&&s<t&&(t=s)}if(t)return e.freeSocketTimeout||e.freeSocketKeepAliveTimeout||t}keepSocketAlive(e){let t=super.keepSocketAlive(e);if(!t)return t;let a=this.calcSocketTimeout(e);return typeof a>"u"?!0:a<=0?(Ie("%s(requests: %s, finished: %s) free but need to destroy by TTL, request count %s, diff is %s",e[je],e[at],e[At],a),!1):(e.timeout!==a&&e.setTimeout(a),!0)}reuseSocket(...e){super.reuseSocket(...e);let t=e[0],a=e[1];a.reusedSocket=!0;let i=this.options.timeout;ls(t)!==i&&(t.setTimeout(i),Ie("%s reset timeout to %sms",t[je],i)),t[at]++,Ie("%s(requests: %s, finished: %s) reuse on addRequest, timeout %sms",t[je],t[at],t[At],ls(t))}[i0](){let e=this[Ko]++;return this[Ko]===Number.MAX_SAFE_INTEGER&&(this[Ko]=0),e}[a0](e,t){t.timeout&&(ls(e)||e.setTimeout(t.timeout)),this.options.keepAlive&&e.setNoDelay(!0),this.createSocketCount++,this.options.socketActiveTTL&&(e[s0]=Date.now()),e[je]=`sock[${this[i0]()}#${t._agentKey}]`.split("-----BEGIN",1)[0],e[at]=1,e[At]=0,H4(this,e,t)}createConnection(e,t){let a=!1,i=(n,o)=>{if(!a){if(a=!0,n)return this.createSocketErrorCount++,t(n);this[a0](o,e),t(n,o)}},s=super.createConnection(e,i);return s&&i(null,s),s}get statusChanged(){let e=this.createSocketCount!==this.createSocketCountLastCheck||this.createSocketErrorCount!==this.createSocketErrorCountLastCheck||this.closeSocketCount!==this.closeSocketCountLastCheck||this.errorSocketCount!==this.errorSocketCountLastCheck||this.timeoutSocketCount!==this.timeoutSocketCountLastCheck||this.requestCount!==this.requestCountLastCheck;return e&&(this.createSocketCountLastCheck=this.createSocketCount,this.createSocketErrorCountLastCheck=this.createSocketErrorCount,this.closeSocketCountLastCheck=this.closeSocketCount,this.errorSocketCountLastCheck=this.errorSocketCount,this.timeoutSocketCountLastCheck=this.timeoutSocketCount,this.requestCountLastCheck=this.requestCount),e}getCurrentStatus(){return{createSocketCount:this.createSocketCount,createSocketErrorCount:this.createSocketErrorCount,closeSocketCount:this.closeSocketCount,errorSocketCount:this.errorSocketCount,timeoutSocketCount:this.timeoutSocketCount,requestCount:this.requestCount,freeSockets:vd(this.freeSockets),sockets:vd(this.sockets),requests:vd(this.requests)}}};function ls(r){return r.timeout||r._idleTimeout}function H4(r,e,t){Ie("%s create, timeout %sms",e[je],ls(e));function a(){if(!e._httpMessage&&e[at]===1)return;e[At]++,r.requestCount++,Ie("%s(requests: %s, finished: %s) free",e[je],e[at],e[At]);let p=r.getName(t);e.writable&&r.requests[p]&&r.requests[p].length&&(e[at]++,Ie("%s(requests: %s, finished: %s) will be reuse on agent free event",e[je],e[at],e[At]))}e.on("free",a);function i(p){Ie("%s(requests: %s, finished: %s) close, isError: %s",e[je],e[at],e[At],p),r.closeSocketCount++}e.on("close",i);function s(){let p=e.listeners("timeout").length,d=ls(e),l=e._httpMessage,u=l&&l.listeners("timeout").length||0;Ie("%s(requests: %s, finished: %s) timeout after %sms, listeners %s, defaultTimeoutListenerCount %s, hasHttpRequest %s, HttpRequest timeoutListenerCount %s",e[je],e[at],e[At],d,p,wd,!!l,u),Ie.enabled&&Ie("timeout listeners: %s",e.listeners("timeout").map(m=>m.name).join(", ")),r.timeoutSocketCount++;let c=r.getName(t);if(r.freeSockets[c]&&r.freeSockets[c].indexOf(e)!==-1)e.destroy(),r.removeSocket(e,t),Ie("%s is free, destroy quietly",e[je]);else if(u===0){let m=new Error("Socket timeout");m.code="ERR_SOCKET_TIMEOUT",m.timeout=d,e.destroy(m),r.removeSocket(e,t),Ie("%s destroy with timeout error",e[je])}}e.on("timeout",s);function n(p){let d=e.listeners("error").length;Ie("%s(requests: %s, finished: %s) error: %s, listenerCount: %s",e[je],e[at],e[At],p,d),r.errorSocketCount++,d===1&&(Ie("%s emit uncaught error event",e[je]),e.removeListener("error",n),e.emit("error",p))}e.on("error",n);function o(){Ie("%s(requests: %s, finished: %s) agentRemove",e[je],e[at],e[At]),e.removeListener("close",i),e.removeListener("error",n),e.removeListener("free",a),e.removeListener("timeout",s),e.removeListener("agentRemove",o)}e.on("agentRemove",o)}n0.exports=bd;function vd(r){let e={};for(let t in r)e[t]=r[t].length;return e}});var d0=_e((Lg,p0)=>{"use strict";var Sd=require("https").Agent,W4=_d(),{INIT_SOCKET:z4,CREATE_HTTPS_CONNECTION:o0}=Go(),cs=class extends W4{constructor(e){super(e),this.defaultPort=443,this.protocol="https:",this.maxCachedSessions=this.options.maxCachedSessions,this.maxCachedSessions===void 0&&(this.maxCachedSessions=100),this._sessionCache={map:{},list:[]}}createConnection(e,t){let a=this[o0](e,t);return this[z4](a,e),a}};cs.prototype[o0]=Sd.prototype.createConnection;["getName","_getSession","_cacheSession","_evictSession"].forEach(function(r){typeof Sd.prototype[r]=="function"&&(cs.prototype[r]=Sd.prototype[r])});p0.exports=cs});var c0=_e((jg,ms)=>{"use strict";var l0=_d();ms.exports=l0;ms.exports.HttpAgent=l0;ms.exports.HttpsAgent=d0();ms.exports.constants=Go()});var _0=_e((fs,hs)=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});var y0=new WeakMap,Td=new WeakMap;function Q(r){let e=y0.get(r);return console.assert(e!=null,"'this' is expected an Event object, but got",r),e}function m0(r){if(r.passiveListener!=null){typeof console<"u"&&typeof console.error=="function"&&console.error("Unable to preventDefault inside passive event listener invocation.",r.passiveListener);return}r.event.cancelable&&(r.canceled=!0,typeof r.event.preventDefault=="function"&&r.event.preventDefault())}function si(r,e){y0.set(this,{eventTarget:r,event:e,eventPhase:2,currentTarget:r,canceled:!1,stopped:!1,immediateStopped:!1,passiveListener:null,timeStamp:e.timeStamp||Date.now()}),Object.defineProperty(this,"isTrusted",{value:!1,enumerable:!0});let t=Object.keys(e);for(let a=0;a<t.length;++a){let i=t[a];i in this||Object.defineProperty(this,i,v0(i))}}si.prototype={get type(){return Q(this).event.type},get target(){return Q(this).eventTarget},get currentTarget(){return Q(this).currentTarget},composedPath(){let r=Q(this).currentTarget;return r==null?[]:[r]},get NONE(){return 0},get CAPTURING_PHASE(){return 1},get AT_TARGET(){return 2},get BUBBLING_PHASE(){return 3},get eventPhase(){return Q(this).eventPhase},stopPropagation(){let r=Q(this);r.stopped=!0,typeof r.event.stopPropagation=="function"&&r.event.stopPropagation()},stopImmediatePropagation(){let r=Q(this);r.stopped=!0,r.immediateStopped=!0,typeof r.event.stopImmediatePropagation=="function"&&r.event.stopImmediatePropagation()},get bubbles(){return!!Q(this).event.bubbles},get cancelable(){return!!Q(this).event.cancelable},preventDefault(){m0(Q(this))},get defaultPrevented(){return Q(this).canceled},get composed(){return!!Q(this).event.composed},get timeStamp(){return Q(this).timeStamp},get srcElement(){return Q(this).eventTarget},get cancelBubble(){return Q(this).stopped},set cancelBubble(r){if(!r)return;let e=Q(this);e.stopped=!0,typeof e.event.cancelBubble=="boolean"&&(e.event.cancelBubble=!0)},get returnValue(){return!Q(this).canceled},set returnValue(r){r||m0(Q(this))},initEvent(){}};Object.defineProperty(si.prototype,"constructor",{value:si,configurable:!0,writable:!0});typeof window<"u"&&typeof window.Event<"u"&&(Object.setPrototypeOf(si.prototype,window.Event.prototype),Td.set(window.Event.prototype,si));function v0(r){return{get(){return Q(this).event[r]},set(e){Q(this).event[r]=e},configurable:!0,enumerable:!0}}function J4(r){return{value(){let e=Q(this).event;return e[r].apply(e,arguments)},configurable:!0,enumerable:!0}}function G4(r,e){let t=Object.keys(e);if(t.length===0)return r;function a(i,s){r.call(this,i,s)}a.prototype=Object.create(r.prototype,{constructor:{value:a,configurable:!0,writable:!0}});for(let i=0;i<t.length;++i){let s=t[i];if(!(s in r.prototype)){let o=typeof Object.getOwnPropertyDescriptor(e,s).value=="function";Object.defineProperty(a.prototype,s,o?J4(s):v0(s))}}return a}function w0(r){if(r==null||r===Object.prototype)return si;let e=Td.get(r);return e==null&&(e=G4(w0(Object.getPrototypeOf(r)),r),Td.set(r,e)),e}function K4(r,e){let t=w0(Object.getPrototypeOf(e));return new t(r,e)}function X4(r){return Q(r).immediateStopped}function Y4(r,e){Q(r).eventPhase=e}function Z4(r,e){Q(r).currentTarget=e}function u0(r,e){Q(r).passiveListener=e}var b0=new WeakMap,h0=1,f0=2,Xo=3;function Yo(r){return r!==null&&typeof r=="object"}function us(r){let e=b0.get(r);if(e==null)throw new TypeError("'this' is expected an EventTarget object, but got another value.");return e}function Q4(r){return{get(){let t=us(this).get(r);for(;t!=null;){if(t.listenerType===Xo)return t.listener;t=t.next}return null},set(e){typeof e!="function"&&!Yo(e)&&(e=null);let t=us(this),a=null,i=t.get(r);for(;i!=null;)i.listenerType===Xo?a!==null?a.next=i.next:i.next!==null?t.set(r,i.next):t.delete(r):a=i,i=i.next;if(e!==null){let s={listener:e,listenerType:Xo,passive:!1,once:!1,next:null};a===null?t.set(r,s):a.next=s}},configurable:!0,enumerable:!0}}function xd(r,e){Object.defineProperty(r,`on${e}`,Q4(e))}function g0(r){function e(){ft.call(this)}e.prototype=Object.create(ft.prototype,{constructor:{value:e,configurable:!0,writable:!0}});for(let t=0;t<r.length;++t)xd(e.prototype,r[t]);return e}function ft(){if(this instanceof ft){b0.set(this,new Map);return}if(arguments.length===1&&Array.isArray(arguments[0]))return g0(arguments[0]);if(arguments.length>0){let r=new Array(arguments.length);for(let e=0;e<arguments.length;++e)r[e]=arguments[e];return g0(r)}throw new TypeError("Cannot call a class as a function")}ft.prototype={addEventListener(r,e,t){if(e==null)return;if(typeof e!="function"&&!Yo(e))throw new TypeError("'listener' should be a function or an object.");let a=us(this),i=Yo(t),n=(i?!!t.capture:!!t)?h0:f0,o={listener:e,listenerType:n,passive:i&&!!t.passive,once:i&&!!t.once,next:null},p=a.get(r);if(p===void 0){a.set(r,o);return}let d=null;for(;p!=null;){if(p.listener===e&&p.listenerType===n)return;d=p,p=p.next}d.next=o},removeEventListener(r,e,t){if(e==null)return;let a=us(this),s=(Yo(t)?!!t.capture:!!t)?h0:f0,n=null,o=a.get(r);for(;o!=null;){if(o.listener===e&&o.listenerType===s){n!==null?n.next=o.next:o.next!==null?a.set(r,o.next):a.delete(r);return}n=o,o=o.next}},dispatchEvent(r){if(r==null||typeof r.type!="string")throw new TypeError('"event.type" should be a string.');let e=us(this),t=r.type,a=e.get(t);if(a==null)return!0;let i=K4(this,r),s=null;for(;a!=null;){if(a.once?s!==null?s.next=a.next:a.next!==null?e.set(t,a.next):e.delete(t):s=a,u0(i,a.passive?a.listener:null),typeof a.listener=="function")try{a.listener.call(this,i)}catch(n){typeof console<"u"&&typeof console.error=="function"&&console.error(n)}else a.listenerType!==Xo&&typeof a.listener.handleEvent=="function"&&a.listener.handleEvent(i);if(X4(i))break;a=a.next}return u0(i,null),Y4(i,0),Z4(i,null),!i.defaultPrevented}};Object.defineProperty(ft.prototype,"constructor",{value:ft,configurable:!0,writable:!0});typeof window<"u"&&typeof window.EventTarget<"u"&&Object.setPrototypeOf(ft.prototype,window.EventTarget.prototype);fs.defineEventAttribute=xd;fs.EventTarget=ft;fs.default=ft;hs.exports=ft;hs.exports.EventTarget=hs.exports.default=ft;hs.exports.defineEventAttribute=xd});var x0=_e((ys,gs)=>{"use strict";Object.defineProperty(ys,"__esModule",{value:!0});var Ed=_0(),fr=class extends Ed.EventTarget{constructor(){throw super(),new TypeError("AbortSignal cannot be constructed directly")}get aborted(){let e=Zo.get(this);if(typeof e!="boolean")throw new TypeError(`Expected 'this' to be an 'AbortSignal' object, but got ${this===null?"null":typeof this}`);return e}};Ed.defineEventAttribute(fr.prototype,"abort");function e9(){let r=Object.create(fr.prototype);return Ed.EventTarget.call(r),Zo.set(r,!1),r}function t9(r){Zo.get(r)===!1&&(Zo.set(r,!0),r.dispatchEvent({type:"abort"}))}var Zo=new WeakMap;Object.defineProperties(fr.prototype,{aborted:{enumerable:!0}});typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(fr.prototype,Symbol.toStringTag,{configurable:!0,value:"AbortSignal"});var gr=class{constructor(){T0.set(this,e9())}get signal(){return S0(this)}abort(){t9(S0(this))}},T0=new WeakMap;function S0(r){let e=T0.get(r);if(e==null)throw new TypeError(`Expected 'this' to be an 'AbortController' object, but got ${r===null?"null":typeof r}`);return e}Object.defineProperties(gr.prototype,{signal:{enumerable:!0},abort:{enumerable:!0}});typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(gr.prototype,Symbol.toStringTag,{configurable:!0,value:"AbortController"});ys.AbortController=gr;ys.AbortSignal=fr;ys.default=gr;gs.exports=gr;gs.exports.AbortController=gs.exports.default=gr;gs.exports.AbortSignal=fr});var C0=_e((dy,R0)=>{if(!globalThis.DOMException)try{let{MessageChannel:r}=require("worker_threads"),e=new r().port1,t=new ArrayBuffer;e.postMessage(t,[t,t])}catch(r){r.constructor.name==="DOMException"&&(globalThis.DOMException=r.constructor)}R0.exports=globalThis.DOMException});function l9(r){if(d9(r)!=="object")return!1;let e=Object.getPrototypeOf(r);return e==null?!0:(e.constructor&&e.constructor.toString())===Object.toString()}var d9,k0,N0=Y(()=>{d9=r=>Object.prototype.toString.call(r).slice(8,-1).toLowerCase();k0=l9});var $0={};gt($0,{fileFromPath:()=>u9,fileFromPathSync:()=>m9,isFile:()=>ud});function F0(r,{mtimeMs:e,size:t},a,i={}){let s;k0(a)?[i,s]=[a,void 0]:s=a;let n=new kd({path:r,size:t,lastModified:e});return s||(s=n.name),new ht([n],s,{...i,lastModified:n.lastModified})}function m9(r,e,t={}){let a=(0,ta.statSync)(r);return F0(r,a,e,t)}async function u9(r,e,t){let a=await ta.promises.stat(r);return F0(r,a,e,t)}var ta,D0,I0,M0,ni,ea,Ts,c9,kd,O0=Y(()=>{ta=require("fs"),D0=require("path"),I0=$(C0(),1);ps();N0();hd();M0=function(r,e,t,a,i){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?i.call(r,t):i?i.value=t:e.set(r,t),t},ni=function(r,e,t,a){if(t==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!a:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?a:t==="a"?a.call(r):a?a.value:e.get(r)},c9="The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.",kd=class r{constructor(e){ea.set(this,void 0),Ts.set(this,void 0),M0(this,ea,e.path,"f"),M0(this,Ts,e.start||0,"f"),this.name=(0,D0.basename)(ni(this,ea,"f")),this.size=e.size,this.lastModified=e.lastModified}slice(e,t){return new r({path:ni(this,ea,"f"),lastModified:this.lastModified,size:t-e,start:e})}async*stream(){let{mtimeMs:e}=await ta.promises.stat(ni(this,ea,"f"));if(e>this.lastModified)throw new I0.default(c9,"NotReadableError");this.size&&(yield*(0,ta.createReadStream)(ni(this,ea,"f"),{start:ni(this,Ts,"f"),end:ni(this,Ts,"f")+this.size-1}))}get[(ea=new WeakMap,Ts=new WeakMap,Symbol.toStringTag)](){return"File"}}});var G9={};gt(G9,{activate:()=>z9,deactivate:()=>J9});module.exports=mu(G9);var K=$(require("vscode"),1);var P=$(require("vscode"),1),ue=$(require("fs/promises"),1),Z=$(require("path"),1);function S(r,e){let t=r[e];if(t==null)throw new Error(`Missing required argument: ${e}`);if(typeof t!="string")throw new Error(`Argument ${e} must be a string, but got ${typeof t}`);return t}function Be(r,e){let t=r[e];if(t!=null){if(typeof t!="string")throw new Error(`Argument ${e} must be a string, but got ${typeof t}`);return t}}function Fs(r,e){let t=r[e];if(t==null)throw new Error(`Missing required argument: ${e}`);if(!Array.isArray(t))throw new Error(`Argument ${e} must be an array, but got ${typeof t}`);return t}function zd(r,e,t){r.register({name:"write_to_file",description:"Write content to a file.",isDestructive:!0,input_schema:{type:"object",properties:{path:{type:"string",description:"Path to the file"},targetFile:{type:"string",description:"Alias for path"},content:{type:"string",description:"The content to write"}},required:["content"]},execute:async(a,i,s)=>{let n=Be(a,"path")||Be(a,"targetFile");if(!n)throw new Error("Missing required argument: path (or targetFile)");let o=Be(a,"content")||Be(a,"fileContent");if(o===void 0)throw new Error("Missing required argument: content (or fileContent)");let p=e.resolvePath(n);return await e.writeFile(p,o,s),`File successfully updated: ${p}`}}),r.register({name:"read_file",description:"Read the content of a file.",input_schema:{type:"object",properties:{path:{type:"string",description:"Path to the file"},startLine:{type:"number",description:"First line to read (1-indexed)"},endLine:{type:"number",description:"Last line to read (1-indexed)"}},required:["path"]},execute:async(a,i,s)=>{let n=e.resolvePath(S(a,"path")),o=a.startLine,p=a.endLine;return await e.readFile(n,o,p,s)}}),r.register({name:"list_dir",description:"List files and directories in a path.",input_schema:{type:"object",properties:{path:{type:"string",description:"Directory path"}},required:["path"]},execute:async(a,i,s)=>{let n=e.resolvePath(S(a,"path"));return await e.listDir(n,s)}}),r.register({name:"grep_search",description:"Search for text patterns in files.",input_schema:{type:"object",properties:{query:{type:"string",description:"Search pattern"},path:{type:"string",description:"Path to search in"}},required:["query"]},execute:async(a,i,s)=>{let n=S(a,"query"),o=S(a,"path")||process.cwd(),p=e.resolvePath(o);return await e.grepSearch(n,p,s)}}),r.register({name:"get_git_context",description:"Get git status and diffs.",input_schema:{type:"object",properties:{}},execute:async()=>await e.getGitContext()}),t?.includeExtended&&(e.runCommand&&r.register({name:"run_command",description:"Execute a shell command.",isDestructive:!0,input_schema:{type:"object",properties:{command:{type:"string",description:"Shell command to execute"}},required:["command"]},execute:async(a,i,s)=>{let n=S(a,"command");return await e.runCommand(n,s)}}),e.getFolderStructure&&r.register({name:"get_folder_structure",description:"Get a tree view of a directory structure.",input_schema:{type:"object",properties:{path:{type:"string",description:"Directory path"},depth:{type:"number",description:"Maximum depth"}},required:["path"]},execute:async(a,i,s)=>{let n=e.resolvePath(S(a,"path")),o=a.depth;return await e.getFolderStructure(n,o,s)}}),e.replaceInFile&&(r.register({name:"replace_file_content",description:"Replace a specific string with another in a file. Surgical and mindful.",isDestructive:!0,input_schema:{type:"object",properties:{path:{type:"string",description:"File path"},targetFile:{type:"string",description:"Alias for path"},targetContent:{type:"string",description:"Text to find (alias for search)"},replacementContent:{type:"string",description:"Replacement text (alias for replace)"},search:{type:"string",description:"Text to find"},replace:{type:"string",description:"Replacement text"}},required:["path"]},execute:async(a,i,s)=>{let n=Be(a,"path")||Be(a,"targetFile");if(!n)throw new Error("Missing required argument: path (or targetFile)");let o=Be(a,"targetContent")||Be(a,"search");if(o===void 0)throw new Error("Missing required argument: targetContent (or search)");let p=Be(a,"replacementContent")||Be(a,"replace");if(p===void 0)throw new Error("Missing required argument: replacementContent (or replace)");if(e.replaceInFile)return await e.replaceInFile(e.resolvePath(n),o,p,s);let d=e.resolvePath(n),l=await e.readFile(d,void 0,void 0,s);if(!l.includes(o))return`Error: Could not find target content in ${n}. No changes made.`;let u=l.split(o).length-1,c=l.split(o).join(p);return await e.writeFile(d,c,s),`Replaced ${u} occurrence(s) of target content in ${n}.`}}),r.register({name:"multi_replace_file_content",description:"Apply multiple replacements to a single file at once.",isDestructive:!0,input_schema:{type:"object",properties:{path:{type:"string"},targetFile:{type:"string"},replacementChunks:{type:"array",items:{type:"object",properties:{targetContent:{type:"string"},replacementContent:{type:"string"}},required:["targetContent","replacementContent"]}}},required:["replacementChunks"]},execute:async(a,i,s)=>{let n=Be(a,"path")||Be(a,"targetFile");if(!n)throw new Error("Missing required argument: path (or targetFile)");let o=e.resolvePath(n),p=a.replacementChunks,d="";for(let l of p){let u=await e.replaceInFile(o,l.targetContent,l.replacementContent,s);d+=u+`
237
+ `}return d}})))}async function v1(r,e,t){let a,i=new Promise((s,n)=>{a=setTimeout(()=>{n(new Error(`TimeoutError: ${t} timed out after ${e}ms`))},e)});try{let s=await Promise.race([r,i]);return clearTimeout(a),s}catch(s){throw clearTimeout(a),s}}st();ca();pa();Ks();var $1=$(require("vscode"),1),Xs=class{static async getDefinitions(e,t){let a=await $1.commands.executeCommand("vscode.executeDefinitionProvider",e,t);if(!a||a.length===0)return"No definitions found.";let i=`Found ${a.length} definition(s):
238
+ `;for(let s of a){let n="range"in s?s.range:s.targetRange,o="uri"in s?s.uri:s.targetUri;i+=`- ${o.fsPath} [L${n.start.line+1}:C${n.start.character+1}]
239
+ `}return i}static async getTypeDefinitions(e,t){let a=await $1.commands.executeCommand("vscode.executeTypeDefinitionProvider",e,t);if(!a||a.length===0)return"No type definitions found.";let i=`Found ${a.length} type definition(s):
240
+ `;for(let s of a){let n="range"in s?s.range:s.targetRange,o="uri"in s?s.uri:s.targetUri;i+=`- ${o.fsPath} [L${n.start.line+1}:C${n.start.character+1}]
241
+ `}return i}};st();var Ys=class{static async getFileNetwork(e){try{let t=await na(e),a=/import\s+(?:.*?\s+from\s+)?['"](.*?)['"]/g,i=/export\s+(?:const|class|function|type|interface|enum|default)\s+(\w+)/g,s=[],n=[],o;for(;(o=a.exec(t))!==null;)s.push(o[1]);for(;(o=i.exec(t))!==null;)n.push(o[1]);let p=`# File Network: ${e.split("/").pop()}
242
+
243
+ `;return p+=`## \u{1F4E5} Imports (Dependencies)
244
+ `,s.length>0?s.forEach(d=>p+=`- \`${d}\`
245
+ `):p+=`*None detected (Self-contained logic)*
246
+ `,p+=`
247
+ ## \u{1F4E4} Exports (Offerings)
248
+ `,n.length>0?n.forEach(d=>p+=`- \`${d}\`
249
+ `):p+=`*None detected (Internal consumer)*
250
+ `,p}catch(t){throw new Error(`Failed to map network for ${e}: ${t}`)}}static async checkCircularity(e,t){return!1}};var gl=$(require("fs/promises"),1),Qs=$(require("path"),1),Zs=class{static async getFolderTree(e,t=3){try{let i=`# Folder Structure: ${Qs.basename(e)}
251
+
252
+ `;return i+=await this.generateTree(e,"",0,t),i}catch(a){throw new Error(`Failed to generate folder tree for ${e}: ${a}`)}}static async generateTree(e,t,a,i){if(a>i)return"";let s="",p=(await gl.readdir(e,{withFileTypes:!0})).sort((d,l)=>d.isDirectory()&&!l.isDirectory()?-1:!d.isDirectory()&&l.isDirectory()?1:d.name.localeCompare(l.name)).filter(d=>!d.name.startsWith(".")&&d.name!=="node_modules"&&d.name!=="dist"&&d.name!=="out");for(let d=0;d<p.length;d++){let l=p[d],u=d===p.length-1,c=u?"\u2514\u2500\u2500 ":"\u251C\u2500\u2500 ",m=t+(u?" ":"\u2502 ");s+=`${t}${c}${l.name}${l.isDirectory()?"/":""}
253
+ `,l.isDirectory()&&(s+=await this.generateTree(Qs.join(e,l.name),m,a+1,i))}return s}};O1();en();var Sl=$(require("fs/promises"),1),ha=$(require("path"),1);Ar();var tn=class{static async generate(e){let t=ha.join(e,"src"),a=await this.findTsFiles(t),i=[],s=0,n=a.slice(0,50);for(let d of n)try{let l=await yt(d);i.push({path:ha.relative(e,d),joyScore:l.joyScore,clutterLevel:l.joyScore<60?"Toxic":l.joyScore<80?"Tangled":"Clean"}),s+=l.joyScore}catch(l){console.error(`Failed to scan ${d}`,l)}let o=n.length>0?Math.floor(s/n.length):100,p=i.sort((d,l)=>d.joyScore-l.joyScore).filter(d=>d.joyScore<70).slice(0,5);return{overallJoyScore:o,totalFilesScanned:n.length,hotspots:p,summary:`The project has an average Joy Score of ${o}. `+(p.length>0?`We found ${p.length} hotspots that need immediate attention.`:"The Garden is looking pristine! \u2728")}}static async findTsFiles(e){let t=await Sl.readdir(e,{withFileTypes:!0});return(await Promise.all(t.map(async i=>{let s=ha.resolve(e,i.name);return i.isDirectory()?i.name==="node_modules"||i.name.startsWith(".")?[]:this.findTsFiles(s):s.endsWith(".ts")||s.endsWith(".tsx")?[s]:[]}))).flat()}};Ar();L1();an();function kl(r,e){zd(r,{resolvePath:t=>t,writeFile:async(t,a,i)=>await kt(t,a,i),readFile:async(t,a,i,s)=>await(await Promise.resolve().then(()=>(st(),Pr))).readFile(t,a,i,s),listDir:async(t,a)=>await(await Promise.resolve().then(()=>(st(),Pr))).listFiles(t,a),grepSearch:async(t,a,i)=>await(await Promise.resolve().then(()=>(st(),Pr))).searchFiles(t,a||P.workspace.workspaceFolders?.[0].uri.fsPath||"",i),getGitContext:async()=>{let t=P.workspace.workspaceFolders?.[0].uri.fsPath;if(!t)return"No workspace detected.";let[a,i,s]=await Promise.all([M1(t),D1(t),I1(t)]);return`# Git Context
254
+
255
+ ## Status
256
+ \`\`\`
257
+ ${a}
258
+ \`\`\`
259
+
260
+ ## Staged Changes
261
+ \`\`\`
262
+ ${i}
263
+ \`\`\`
264
+
265
+ ## Unstaged Changes
266
+ \`\`\`
267
+ ${s}
268
+ \`\`\``}}),r.register({name:"resolve_lint_errors",description:"Run targeted linting and receive structured errors with surgical fix suggestions.",input_schema:{type:"object",properties:{path:{type:"string",description:"Optional path to a specific file to lint"},command:{type:"string",description:"Optional custom lint command"}}},execute:async t=>{let a=P.workspace.workspaceFolders?.[0].uri.fsPath||process.cwd(),i=t.path,s=t.command||"npm run lint",n=i?await qe.runLintOnFile(a,i):await qe.runLint(a,s);if(n.length===0)return"No lint errors found. The garden is pure. \u2728";let o=`# \u{1F3E5} Linting Triage Report (${n.length} issues found)
269
+
270
+ `;return n.forEach((p,d)=>{let l=qe.suggestFix(p);o+=`### Issue ${d+1}: ${p.file}:${p.line}
271
+ `,o+=`- **Rule**: ${p.ruleId||"unknown"}
272
+ `,o+=`- **Message**: ${p.message}
273
+ `,l&&(o+=`- **Suggested Fix**: ${l}
274
+ `),o+=`
275
+ `}),o+="**Precision Strike**: Use 'read_file' to audit the specific lines and 'replace_file_content' to apply surgical mends.",o}}),r.register({name:"self_heal",description:"Autonomous systemic recovery. Marie will audit the project for stability alerts and attempt autonomous fixes.",isDestructive:!0,input_schema:{type:"object",properties:{}},execute:async()=>{let t=P.workspace.workspaceFolders?.[0].uri.fsPath||process.cwd(),a=await qe.runLint(t);if(a.length===0)return"Marie's systemic audit found no regressions. Stability is absolute. \u2728";let i=`# \u{1F9EC} Autonomous Recovery Protocol
276
+
277
+ Detected **${a.length}** stability alerts in the codebase.
278
+
279
+ `,s=Array.from(new Set(a.map(n=>n.file)));return i+=`**Impacted Files**:
280
+ ${s.map(n=>`- ${n}`).join(`
281
+ `)}
282
+
283
+ `,i+="**Trajectory**: Use 'resolve_lint_errors' to view the full triage report and begin surgical remediation.",i}}),r.register({name:"discard_file",description:"Permanently delete a file. This is a ritual of letting go.",isDestructive:!0,input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file to discard"}},required:["path"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=P.Uri.file(s),o=await P.commands.executeCommand("vscode.executeDocumentSymbolProvider",n);if(o&&o.length>0){let p=[];for(let d of o){let u=(await P.commands.executeCommand("vscode.executeReferenceProvider",n,d.location.range.start))?.filter(c=>c.uri.fsPath!==s)||[];u.length>0&&p.push(`Symbol \`${d.name}\` is used in ${u.length} other file(s).`)}if(p.length>0)return`# \u{1F342} Refusal of Letting Go
284
+
285
+ I cannot discard \`${Z.basename(s)}\` because it still has active echos in the workspace:
286
+
287
+ `+p.map(d=>`- ${d}`).join(`
288
+ `)+"\n\n**Recommendation**: Use `execute_semantic_move` or `replace_in_file` to resolve these dependencies before composting."}return await oa(s),await Vs(`Discarded '${s}'`),`File '${s}' has been discarded. ${dl()}`}}),r.register({name:"get_symbol_definition",description:"Find the definition of a symbol at the specified position. Helps navigate complex codebases.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file"},line:{type:"number",description:"The line number (1-indexed)"},character:{type:"number",description:"The character position (1-indexed)"}},required:["path","line","character"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=t.line-1,o=t.character-1,p=P.Uri.file(s),d=new P.Position(n,o);return await Xs.getDefinitions(p,d)}}),r.register({name:"get_file_dependencies",description:"Map the structural network of a file (imports/exports) to understand its dependencies and role.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file"}},required:["path"]},execute:async(t,a,i)=>{let s=S(t,"path");return await Ys.getFileNetwork(s)}}),r.register({name:"pin_context",description:"Anchor a critical piece of context (snippet, symbol, or file reference) for long-term strategic memory.",input_schema:{type:"object",properties:{id:{type:"string",description:"A unique identifier for this anchor (e.g., 'auth_flow')"},label:{type:"string",description:"A short, descriptive label"},content:{type:"string",description:"The content to anchor"},type:{type:"string",enum:["snippet","symbol","file_ref"]}},required:["id","label","content","type"]},execute:async(t,a,i)=>(fa.getInstance().anchor({id:S(t,"id"),label:S(t,"label"),content:S(t,"content"),type:S(t,"type")}),`Context anchored: ${S(t,"label")} (ID: ${S(t,"id")}). This information is now preserved for your strategic use. \u2728`)}),r.register({name:"get_file_diagnostics",description:"Get real-time diagnostics (errors, warnings, lints) for a file from VS Code.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file"}},required:["path"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=P.Uri.file(s),o=P.languages.getDiagnostics(n);if(o.length===0)return"No diagnostics found. The file appears clean. \u2728";let p=`# Diagnostics for ${Z.basename(s)}
289
+
290
+ `;return o.forEach(d=>{let l=P.DiagnosticSeverity[d.severity];p+=`- [${l}] L${d.range.start.line+1}: ${d.message} (${d.code||"no-code"})
291
+ `}),p}}),r.register({name:"get_file_history",description:"Consult the 'human echos' of a file by reading its recent git history. Use this to understand context and conventions.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file"}},required:["path"]},execute:async(t,a,i)=>{let s=S(t,"path");return await(await Promise.resolve().then(()=>(Ks(),F1))).getFileHistory(process.cwd(),s)}}),r.register({name:"run_test_suite",description:"Execute a test command and receive a structured 'Triage Report' identifying specific failures.",isDestructive:!0,input_schema:{type:"object",properties:{command:{type:"string",description:"The test command (e.g., 'npm test')"}},required:["command"]},execute:async(t,a,i)=>{let s=S(t,"command");return await ua.runAndTriage(s)}}),r.register({name:"get_code_complexity",description:"Analyze a file for cyclomatic complexity and clutter level to identify refactoring needs.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file"}},required:["path"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=await Yt.analyze(s),o=`# Complexity Scan: ${Z.basename(s)}
292
+
293
+ `;return o+=`- **Clutter Level**: ${n.clutterLevel}
294
+ `,o+=`- **Cyclomatic Complexity**: ${n.cyclomaticComplexity}
295
+ `,o+=`- **Lines of Code**: ${n.loc}
296
+
297
+ `,n.suggestions.length>0&&(o+=`## \u{1F6E0}\uFE0F Refinement Suggestions
298
+ `,n.suggestions.forEach(p=>o+=`- ${p}
299
+ `)),o}}),r.register({name:"audit_architectural_integrity",description:"Verify that code doesn't violate architectural boundaries (e.g., UI/Domain depending on Plumbing) across a file or directory.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file or directory to audit"},recursive:{type:"boolean",description:"Whether to scan subdirectories (default: true)"}},required:["path"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=t.recursive!==!1,o=await ue.stat(s),p=[];if(o.isFile())p.push(s);else{let u=await ue.readdir(s,{withFileTypes:!0,recursive:n});p.push(...u.filter(c=>c.isFile()&&/\.(ts|tsx|js|jsx)$/.test(c.name)).map(c=>Z.join(c.path||s,c.name)))}let d=[];for(let u of p){let c=await yt(u);c.zoningHealth.isBackflowPresent&&d.push(`**${Z.relative(process.cwd(),u)}**: ${c.zoningHealth.illegalImports.join(", ")}`)}if(d.length===0)return`No architectural violations detected in ${p.length} file(s). The structure is pure. \u2728`;let l=`# \u{1F46E}\u200D\u2640\uFE0F Architectural Integrity Report
300
+
301
+ `;return l+=`Audited **${p.length}** file(s). Found **${d.length}** violation(s).
302
+
303
+ `,l+=`## \u26A0\uFE0F Zone Leakage (Backflow)
304
+ `,d.forEach(u=>l+=`- ${u}
305
+ `),l+="\n**Methodology Note**: Respect the Downward Flow Law (Domain -> Infrastructure -> Plumbing). Use `trace_data_flow` to resolve these leaks.",l}}),r.register({name:"extract_component_api",description:"Generate a structured markdown API summary for a component or class (functions, props, types).",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file"}},required:["path"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=await P.commands.executeCommand("vscode.executeDocumentSymbolProvider",P.Uri.file(s));if(!n||n.length===0)return"No symbols found to generate API summary.";let o=`# \u270D\uFE0F API Summary: ${Z.basename(s)}
306
+
307
+ `;return n.forEach(p=>{let d=P.SymbolKind[p.kind];o+=`### [${d}] ${p.name}
308
+ `,p.children.length>0&&p.children.forEach(l=>{let u=P.SymbolKind[l.kind];o+=`- **${l.name}** (${u})
309
+ `}),o+=`
310
+ `}),o}}),r.register({name:"get_folder_structure",description:"Get a recursive, tree-like overview of a folder's structure.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the folder"},depth:{type:"number",description:"Maximum recursion depth (default: 3)"}},required:["path"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=t.depth;return await Zs.getFolderTree(s,n)}}),r.register({name:"find_symbol_references",description:"Find all references/usages of a symbol across the workspace.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file containing the symbol"},line:{type:"number",description:"The line number (1-indexed)"},character:{type:"number",description:"The character position (1-indexed)"}},required:["path","line","character"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=t.line-1,o=t.character-1,p=P.Uri.file(s),d=new P.Position(n,o),l=await P.commands.executeCommand("vscode.executeReferenceProvider",p,d);if(!l||l.length===0)return"No references found.";let u=`Found ${l.length} reference(s):
311
+ `;return l.slice(0,50).forEach(c=>{u+=`- ${c.uri.fsPath} [L${c.range.start.line+1}:C${c.range.start.character+1}]
312
+ `}),l.length>50&&(u+=`
313
+ ... AND ${l.length-50} MORE.`),u}}),r.register({name:"get_workspace_joy_map",description:"Generate a project-wide health report. Use this to identify 'Clutter Hotspots' and prioritize refactoring efforts.",input_schema:{type:"object",properties:{}},execute:async()=>{let t=P.workspace.workspaceFolders?.[0]?.uri.fsPath;if(!t)return"No workspace folder found.";let a=await tn.generate(t),i=e.getCurrentRun(),s=`# \u{1F31F} Workspace Joy Map
314
+
315
+ `;if(s+=`**Overall Joy Score**: ${a.overallJoyScore}/100
316
+ `,i){let n=i.heuristicFixes&&i.heuristicFixes.length>3?"Fragile \u26A0\uFE0F":"Resilient \u2728";s+=`**Agent Resilience**: ${n}
317
+ `}return s+=`**Files Scanned**: ${a.totalFilesScanned}
318
+
319
+ `,s+=`> ${a.summary}
320
+
321
+ `,a.hotspots.length>0&&(s+=`## \u26A0\uFE0F Clutter Hotspots
322
+ `,a.hotspots.forEach(n=>{s+=`- \`${n.path}\`: ${n.joyScore} (${n.clutterLevel})
323
+ `})),s}}),r.register({name:"check_ripple_health",description:"Verify the health of all workspace files that depend on a specific path. Use this to catch regressions in downstream consumers.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the modified file"}},required:["path"]},execute:async(t,a,i)=>{let s=S(t,"path");try{let n=await P.commands.executeCommand("vscode.executeDocumentSymbolProvider",P.Uri.file(s));if(!n||n.length===0)return"No symbols found to check ripples for.";let o=new Set;for(let l of n)(await P.commands.executeCommand("vscode.executeReferenceProvider",P.Uri.file(s),l.location.range.start))?.forEach(c=>{c.uri.fsPath!==s&&o.add(c.uri.fsPath)});if(o.size===0)return"No external downstream dependents found for any symbol in this file. \u2728";let p=`# \u{1F30A} Comprehensive Ripple Health: ${Z.basename(s)}
324
+
325
+ `;p+=`Checking **${o.size}** dependent(s) across all symbols...
326
+
327
+ `;let d=Array.from(o);for(let l of d){let c=P.languages.getDiagnostics(P.Uri.file(l)).filter(m=>m.severity===P.DiagnosticSeverity.Error);p+=`- \`${Z.relative(process.cwd(),l)}\`: ${c.length>0?`\u274C ${c.length} Error(s)`:"\u2705 Clean"}
328
+ `}return p}catch(n){return`Ripple check failed: ${n}`}}}),r.register({name:"generate_evolution_chronicle",description:"Synthesize the 'Story' of a directory or file's evolution using git history and recent diffs.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the directory or file"}},required:["path"]},execute:async(t,a,i)=>{let s=S(t,"path"),o=await(await Promise.resolve().then(()=>(Ks(),F1))).getFileHistory(process.cwd(),s),p=`# \u{1F4DC} Evolution Chronicle: ${Z.basename(s)}
329
+
330
+ `;return p+=`## Recent Trajectory
331
+ `,p+=o+`
332
+
333
+ `,p+=`## Intent Synthesis
334
+ `,p+="Based on the echos above, this area is transitioning through the Living Project lifecycle. Ensure the next 'Pass' aligns with this momentum. \u2728",p}}),r.register({name:"predict_refactor_ripple",description:"Simulate a structural change (e.g., changing a signature) and predict which downstream files will break.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file"},symbol:{type:"string",description:"The symbol being modified"},changeDescription:{type:"string",description:"Description of the change (e.g., 'Removing optional param X')"}},required:["path","symbol","changeDescription"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=S(t,"symbol"),o=P.Uri.file(s),l=(await P.commands.executeCommand("vscode.executeDocumentSymbolProvider",o))?.find(h=>h.name===n)?.location.range.start||new P.Position(0,0),u=await P.commands.executeCommand("vscode.executeReferenceProvider",o,l);if(!u||u.length===0)return`No ripple effect detected for \`${n}\`. The change is isolated. \u2728`;let c=Array.from(new Set(u.map(h=>h.uri.fsPath))).filter(h=>h!==s),m=`# \u{1F52E} Refactor Ripple Prediction: \`${n}\`
335
+
336
+ `;if(m+=`Proposed Change: ${S(t,"changeDescription")}
337
+
338
+ `,c.length>0){m+=`## \u26A0\uFE0F Potentially Broken Dependents (${c.length})
339
+ `;for(let h of c){let v=Z.relative(process.cwd(),h),f=u.filter(g=>g.uri.fsPath===h);m+=`- \`${v}\`: Found ${f.length} reference(s)
340
+ `;try{let A=(await ue.readFile(h,"utf-8")).split(`
341
+ `)[f[0].range.start.line].trim();m+=` > \`${A}\` (L${f[0].range.start.line+1})
342
+ `}catch{}}m+="\nRecommendation: Use `check_ripple_health` after applying the change to verify these files."}else m+="No external dependents found. The change is safe to apply within this file.";return m}}),r.register({name:"generate_migration_plan",description:"Generate a step-by-step 'Blueprint' for migrating code from an old pattern to a new one.",input_schema:{type:"object",properties:{fromPattern:{type:"string",description:"The pattern being replaced"},toPattern:{type:"string",description:"The new target pattern"},files:{type:"array",items:{type:"string"},description:"List of files to migrate"}},required:["fromPattern","toPattern","files"]},execute:async(t,a,i)=>{let s=t.files,n=`# \u{1F4D0} Migration Blueprint
343
+
344
+ `;return n+=`**Trajectory**: From \`${t.fromPattern}\` to \`${t.toPattern}\`
345
+
346
+ `,n+=`## \u{1F5FA}\uFE0F Execution Steps
347
+ `,n+=`1. **Analysis**: Map all instances of old pattern in ${s.length} files.
348
+ `,n+="2. **Transformation**: Apply structural replacements using `replace_in_file`.\n",n+="3. **Verification**: Run `check_ripple_health` and `run_test_suite`.\n\n",n+=`## \u{1F5C2}\uFE0F Target Garden
349
+ `,s.slice(0,10).forEach(o=>n+=`- \`${o.split("/").pop()}\`
350
+ `),s.length>10&&(n+=`- ... and ${s.length-10} more.
351
+ `),n}}),r.register({name:"analyze_agent_telemetry",description:"Analyze your own execution telemetry (errors, heuristic fixes, retries) to self-calibrate your strategy.",input_schema:{type:"object",properties:{}},execute:async()=>{let t=e.getCurrentRun();if(!t)return"No active telemetry found for this session.";let a=`# \u{1F9EA} Strategic Telemetry Analysis
352
+
353
+ `;return a+=`- **Total Elapsed**: ${Math.round((Date.now()-t.startedAt)/1e3)}s
354
+ `,a+=`- **Heuristic Fixes**: ${t.heuristicFixes?.length||0}
355
+ `,a+=`- **Objective Latency**: High (Refining Strategy...)
356
+
357
+ `,t.heuristicFixes&&t.heuristicFixes.length>3?(a+=`## \u26A0\uFE0F Resilience Warning
358
+ `,a+="Multiple heuristic repairs detected. Consider shifting to a more **Empirical Grounding** phase."):a+="Execution is healthy and resilient. \u2728",a}}),r.register({name:"execute_semantic_rename",description:"Perform a workspace-wide, compiler-safe rename of a symbol using the LSP.",isDestructive:!0,input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file containing the symbol"},line:{type:"integer",description:"The line number of the symbol (1-indexed)"},column:{type:"integer",description:"The column number of the symbol (1-indexed)"},newName:{type:"string",description:"The new name for the symbol"}},required:["path","line","column","newName"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=t.line,o=t.column,p=S(t,"newName"),d=P.Uri.file(s),l=new P.Position(n-1,o-1);try{let u=await P.commands.executeCommand("vscode.executeRenameProvider",d,l,p);return u?await P.workspace.applyEdit(u)?`Successfully renamed symbol to \`${p}\` across the entire workspace. \u2728`:"Failed to apply workspace-wide semantic rename.":`LSP could not find a renameable symbol at ${s}:${n}:${o}.`}catch(u){return`Semantic rename failed: ${u}`}}}),r.register({name:"simulate_semantic_edit",description:"Simulate a change in a 'Shadow Buffer' to catch lints/errors without affecting the disk.",input_schema:{type:"object",properties:{path:{type:"string",description:"The absolute path to the file"},targetContent:{type:"string",description:"Exact content to replace"},replacementContent:{type:"string",description:"New content"}},required:["path","targetContent","replacementContent"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=S(t,"targetContent"),o=S(t,"replacementContent");try{let p=await ue.readFile(s,"utf-8");if(!p.includes(n))return`Error: Could not find target content in ${s} for simulation.`;let d=p.replace(n,o),l=s.replace(/(\.[^.]+)$/,".marie_sim$1");await ue.writeFile(l,d),await new Promise(f=>setTimeout(f,1e3));let c=P.languages.getDiagnostics(P.Uri.file(l)).filter(f=>f.severity===P.DiagnosticSeverity.Error),m="";c.length>0&&(m+=`# \u{1F311} Shadow Realm: Local Regressions
359
+ `,c.forEach(f=>m+=`- [Line ${f.range.start.line+1}] ${f.message}
360
+ `));let v=P.languages.getDiagnostics().filter(([f,g])=>f.fsPath!==l&&g.some(b=>b.severity===P.DiagnosticSeverity.Error));return v.length>0&&(m+=`
361
+ ## \u26A0\uFE0F Ripple Regressions Detected
362
+ `,v.slice(0,5).forEach(([f,g])=>{let b=f.fsPath.split("/").pop();m+=`- **${b}**: ${g[0].message}
363
+ `})),await ue.unlink(l),m||"Simulation successful. Change is syntactically sound and produces no ripple regressions. \u2728"}catch(p){return`Shadow simulation failed: ${p}`}}}),r.register({name:"execute_semantic_move",description:"Move a symbol (function/class) to a new file and attempt to update imports throughout the workspace.",isDestructive:!0,input_schema:{type:"object",properties:{sourcePath:{type:"string",description:"Absolute path to source file"},targetPath:{type:"string",description:"Absolute path to target file"},symbolName:{type:"string",description:"Name of the symbol to move"}},required:["sourcePath","targetPath","symbolName"]},execute:async(t,a,i)=>{let s=S(t,"sourcePath"),n=S(t,"targetPath"),o=S(t,"symbolName");try{let d=(await v1(P.commands.executeCommand("vscode.executeDocumentSymbolProvider",P.Uri.file(s)),5e3,"LSP Document Symbol Provider"))?.find(E=>E.name===o);if(!d)return`Could not find symbol \`${o}\` in source file.`;let u=(await ue.readFile(s,"utf-8")).split(`
364
+ `),c=u.slice(d.location.range.start.line,d.location.range.end.line+1).join(`
365
+ `),h=u.filter(E=>E.trim().startsWith("import ")).filter(E=>{let N=E.match(/\{([^}]+)\}/);return N?N[1].split(",").map(T=>T.trim()).some(T=>c.includes(T)):!1}),v=[...u.slice(0,d.location.range.start.line),...u.slice(d.location.range.end.line+1)].join(`
366
+ `);await kt(s,v,i);let f="";try{f=await ue.readFile(n,"utf-8")}catch{f=`// Created for moved symbol ${o}
367
+ `}let g=h.join(`
368
+ `)+`
369
+
370
+ `+f+`
371
+
372
+ `+c;await kt(n,g,i);let A=(await v1(P.commands.executeCommand("vscode.executeReferenceProvider",P.Uri.file(s),d.location.range.start),5e3,"LSP Reference Provider")).filter(E=>E.uri.fsPath!==s&&E.uri.fsPath!==n),k=[];if(A.length>0){let E=new P.WorkspaceEdit,N=Array.from(new Set(A.map(V=>V.uri.fsPath)));for(let V of N){let T=await ue.readFile(V,"utf-8"),w=Z.relative(Z.dirname(V),s).replace(/\.[^.]+$/,"").replace(/\\/g,"/"),_=Z.relative(Z.dirname(V),n).replace(/\.[^.]+$/,"").replace(/\\/g,"/"),M=w.startsWith(".")?w:`./${w}`,D=_.startsWith(".")?_:`./${_}`;if(T.includes(M)){let R=T.replace(new RegExp(`from\\s+['"]${M}['"]`,"g"),`from '${D}'`);R!==T&&(await ue.writeFile(V,R),k.push(Z.basename(V)))}}}return await da(s),await da(n),`Successfully moved \`${o}\` to \`${n.split("/").pop()}\`. \u{1F5E1}\uFE0F
373
+
374
+ **Methodology Complete**: Required imports were identified and copied to the destination.
375
+ `+(k.length>0?`**Downstream Migration**: Automatically updated imports in ${k.length} file(s): ${k.join(", ")}. \u2728`:"**Mirror Polishing**: No external downstream imports required migration.")+`
376
+
377
+ **Autonomy Note**: Post-execution tidying completed for both source and destination. \u{1F338}`}catch(p){return await e.executeSelfHealing(s,p.message)}}}),r.register({name:"trace_data_flow",description:"Analyze how a specific type or interface is used across multiple layers.",input_schema:{type:"object",properties:{typeName:{type:"string",description:"The name of the type/interface to trace"},filePath:{type:"string",description:"Path to the file where the type is defined"}},required:["typeName","filePath"]},execute:async(t,a,i)=>{let s=S(t,"typeName"),n=S(t,"filePath"),o=P.Uri.file(n),l=(await P.commands.executeCommand("vscode.executeDocumentSymbolProvider",o))?.find(f=>f.name===s)?.location.range.start||new P.Position(0,0),u=await P.commands.executeCommand("vscode.executeReferenceProvider",o,l);if(!u||u.length===0)return`Type \`${s}\` appears to be isolated. \u2728`;let c=Array.from(new Set(u.map(f=>f.uri.fsPath))),m=`# \u{1F52E} Data Flow Trace: \`${s}\`
378
+
379
+ `;m+=`Found usages in **${c.length}** files.
380
+
381
+ `;let v=c.map(f=>f.includes("/infrastructure/")?"Infrastructure \u{1F3DB}\uFE0F":f.includes("/domain/")?"Domain \u{1F9E0}":f.includes("/plumbing/")?"Plumbing \u{1F527}":"UI/External \u{1F3A8}").reduce((f,g)=>(f[g]=(f[g]||0)+1,f),{});return m+=`## Layer Distribution
382
+ `,Object.entries(v).forEach(([f,g])=>{m+=`- **${f}**: ${g} files
383
+ `}),v["Domain \u{1F9E0}"]&&v["Infrastructure \u{1F3DB}\uFE0F"]&&(m+=`
384
+ > [!NOTE]
385
+ > This type crosses the Domain/Infrastructure boundary. Ensure strict mapping is in place to maintain Joyful purity. \u2728`),m}}),r.register({name:"generate_architectural_decision",description:"Generate a structured ADR (Architectural Decision Record) to document a major shift in the project.",isDestructive:!0,input_schema:{type:"object",properties:{title:{type:"string",description:"Concise title of the decision"},context:{type:"string",description:"The problem or context driving this change"},decision:{type:"string",description:"The chosen solution and rationale"},consequences:{type:"string",description:"Impact on the system moving forward"}},required:["title","context","decision","consequences"]},execute:async(t,a,i)=>{let s=P.workspace.workspaceFolders?.[0].uri.fsPath;if(!s)return"No workspace detected.";let n=`ADR-${Math.round(Date.now()/1e3)}`,o=Z.join(s,".marie","decisions"),p=Z.join(o,`${n}.md`),d=S(t,"title"),l=d.includes("Refactor")?`
386
+ ## Historical Context
387
+ > This decision aligns with the trajectory identified in the Evolution Chronicle. \u2728
388
+ `:"",u=`# \u{1F6E1}\uFE0F ${n}: ${d}
389
+
390
+ **Date**: ${new Date().toLocaleDateString()}
391
+ **Status**: Accepted
392
+
393
+ `+l+`## Context
394
+ ${S(t,"context")}
395
+
396
+ ## Decision
397
+ ${S(t,"decision")}
398
+
399
+ ## Consequences
400
+ ${S(t,"consequences")}
401
+
402
+ ---
403
+ Generated by Marie Autonomous Agent \u2728`;try{return await ue.mkdir(o,{recursive:!0}),await ue.writeFile(p,u),`Architectural Decision Record saved to \`.marie/decisions/${n}.md\`. History preserved. \u{1F6E1}\uFE0F`}catch(c){return`Failed to save ADR: ${c}`}}}),r.register({name:"diagnose_action_failure",description:"Analyze why a high-order action (Rename, Move) failed and suggest a resilient fallback methodology.",input_schema:{type:"object",properties:{actionAttempted:{type:"string"},errorMessage:{type:"string"},path:{type:"string"}},required:["actionAttempted","errorMessage","path"]},execute:async(t,a,i)=>{let s=S(t,"path"),o=P.languages.getDiagnostics(P.Uri.file(s)).filter(d=>d.severity===P.DiagnosticSeverity.Error),p=`# \u{1FA79} Sovereign Recovery Diagnostic
404
+
405
+ `;return p+=`Failed Action: \`${t.actionAttempted}\`
406
+ `,p+=`Reason: ${t.errorMessage}
407
+
408
+ `,o.length>0?(p+=`## \u26A0\uFE0F Underlying File Errors
409
+ `,p+=`The LSP is likely blocked because the file has syntax/semantic errors:
410
+ `,o.slice(0,3).forEach(d=>p+=`- [L${d.range.start.line+1}] ${d.message}
411
+ `),p+="\n**Recommendation**: Fix these errors using `replace_in_file` before retrying semantic actions."):(p+=`## \u{1F5FA}\uFE0F Fallback Trajectory
412
+ `,p+=`The high-order tool is healthy but the specific symbol could not be transformed.
413
+ `,p+="**Trajectory**: Transition to **Shadow Realm Simulation** via `simulate_semantic_edit` to verify manual replacements."),p}}),r.register({name:"sprout_new_module",description:"Create a new file with architectural boilerplate and register it in the project's living history.",isDestructive:!0,input_schema:{type:"object",properties:{path:{type:"string",description:"Absolute path to the new file"},description:{type:"string",description:"Brief description of the module's purpose"}},required:["path","description"]},execute:async(t,a,i)=>{let s=S(t,"path"),n=S(t,"description"),o=Z.basename(s),p=`/**
414
+ * ${o}: ${n}
415
+ *
416
+ * Part of the Living Project - Sprouted on ${new Date().toLocaleDateString()}
417
+ */
418
+
419
+ `;return s.includes("/infrastructure/")?p+=`import * as vscode from 'vscode';
420
+
421
+ export class ${o.replace(/\.[^.]+$/,"")} {
422
+ // Implementation
423
+ }
424
+ `:s.includes("/domain/")?p+=`export interface ${o.replace(/\.[^.]+$/,"")} {
425
+ // Domain Logic
426
+ }
427
+ `:s.includes("/plumbing/")&&(p+=`/** Plumbing Utility */
428
+ export function ${o.replace(/\.[^.]+$/,"").toLowerCase()}() {
429
+ return;
430
+ }
431
+ `),await kt(s,p),await Vs(`Sprouted new module: ${o}`),`# \u{1F331} New Sprout: ${o}
432
+
433
+ Module created at \`${Z.relative(process.cwd(),s)}\`.
434
+ **Intent**: ${n}
435
+
436
+ > **Methodology Note**: This module has been registered in the project's lineage. Please use \`get_file_diagnostics\` to verify initial health. \u2728`}}),r.register({name:"propose_logic_clustering",description:"Scan a directory and propose structural reorganizations (Clustering) based on semantic co-dependency.",input_schema:{type:"object",properties:{directoryPath:{type:"string",description:"Absolute path to the directory to analyze"}},required:["directoryPath"]},execute:async(t,a,i)=>{let s=S(t,"directoryPath"),{proposeClustering:n}=await Promise.resolve().then(()=>(ca(),N1)),o=await n(s);if(o.length===0)return"No significant clustering opportunities detected. The architecture appears naturally granular. \u2728";let p=`# \u{1F9D8}\u200D\u2642\uFE0F Convergence Ritual: Clustering Proposal
437
+
438
+ `;return p+=`Based on semantic co-dependency and zoning laws, the following 'Logic Clusters' are proposed for \`${s.split("/").pop()}\`:
439
+
440
+ `,o.forEach(d=>{p+=`### ${d.zone} Zone Fragment
441
+ `,p+=`- **File Count**: ${d.fileCount}
442
+ `,p+=`- **Suggested Clusters**: ${d.suggestedClusters.join(", ")}
443
+ `,p+=`- **Rationale**: High internal cohesion suggests these should be grouped into a single module to reduce workspace noise.
444
+
445
+ `}),p+="**Action**: Use `execute_semantic_move` to begin converging these fragments into the suggested clusters.",p}}),r.register({name:"get_pinned_context",description:"Retrieve all anchored strategic context to refresh your memory.",input_schema:{type:"object",properties:{}},execute:async()=>fa.getInstance().getAllAnchors()}),r.register({name:"find_files",description:"Search for files across the workspace using a glob pattern (e.g., '**/*.test.ts').",input_schema:{type:"object",properties:{pattern:{type:"string",description:"The glob pattern to search for"},exclude:{type:"string",description:"Optional glob pattern for files to exclude"}},required:["pattern"]},execute:async(t,a,i)=>{let s=S(t,"pattern"),n=t.exclude,o=await P.workspace.findFiles(s,n);if(o.length===0)return"No files found matching the pattern.";let p=`Found ${o.length} file(s) matching \`${s}\`:
446
+ `;return o.slice(0,50).forEach(d=>p+=`- \`${d.fsPath}\`
447
+ `),o.length>50&&(p+=`
448
+ ... AND ${o.length-50} MORE.`),p}}),r.register({name:"list_workspace_symbols",description:"Search for symbols (classes, functions, etc.) across the entire workspace.",input_schema:{type:"object",properties:{query:{type:"string",description:"The symbol name or partial name to search for"}},required:["query"]},execute:async(t,a,i)=>{let s=S(t,"query"),n=await P.commands.executeCommand("vscode.executeWorkspaceSymbolProvider",s);if(!n||n.length===0)return"No symbols found matching the query.";let o=`Found ${n.length} symbol(s) matching \`${s}\`:
449
+ `;return n.slice(0,50).forEach(p=>{let d=P.SymbolKind[p.kind];o+=`- [${d}] \`${p.name}\` in \`${p.location.uri.fsPath}\`
450
+ `}),n.length>50&&(o+=`
451
+ ... AND ${n.length-50} MORE.`),o}}),r.register({name:"verify_workspace_health",description:"Perform a non-destructive health check (build/lint) to ensure recent changes haven't introduced regressions.",input_schema:{type:"object",properties:{}},execute:async()=>await(await Promise.resolve().then(()=>(q1(),V1))).TerminalService.runCommand("npm run build -- --noEmit || npx tsc --noEmit")}),r.register({name:"run_command",description:"Execute a command in the terminal. Requires user approval. Use this for running tests or building the project.",isDestructive:!0,input_schema:{type:"object",properties:{command:{type:"string",description:"The shell command to execute"}},required:["command"]},execute:async(t,a,i)=>{let s=S(t,"command");return await(await Promise.resolve().then(()=>(q1(),V1))).TerminalService.runCommand(s,i)}}),r.register({name:"perform_strategic_planning",description:"A mandatory planning ritual. Call this at the start of any complex task.",input_schema:{type:"object",properties:{intent:{type:"string"},joyZone:{type:"string",enum:["joyful","infrastructure","plumbing"]},projectName:{type:"string"},lifecycleStage:{type:"string",enum:["sprout","bloom","compost"]},objectives:{type:"array",items:{type:"object",properties:{id:{type:"string"},label:{type:"string"},status:{type:"string",enum:["pending","in_progress","completed","blocked"]}},required:["id","label","status"]}},ritualChecked:{type:"boolean"},gratitudeMoment:{type:"string"},dependencyRisk:{type:"string"},totalPasses:{type:"number",description:"Total number of passes (1-4)"},passFocus:{type:"string",description:"Initial focus of Pass 1"}},required:["intent","joyZone","projectName","lifecycleStage","ritualChecked","gratitudeMoment","totalPasses","passFocus"]},execute:async(t,a)=>{let i=S(t,"intent"),s=S(t,"joyZone"),n=S(t,"projectName"),o=S(t,"lifecycleStage"),p=Fs(t,"objectives"),d=S(t,"gratitudeMoment"),u=["joyful","infrastructure","plumbing"].indexOf(s);return a?.({context:`Mindfulness: ${i} [Zone: ${s}]`,completedObjectiveIds:[],activeObjectiveId:p[0]?.id,achieved:[`Aligned with ${s} zone protocols`,`Planning for ${n} (${o})`,`Ritual: ${d}`],lifecycleStage:o,ritualComplete:!0,currentPass:1,totalPasses:S(t,"totalPasses")||1,passFocus:S(t,"passFocus")}),`Strategic Plan for '${n}' accepted. The KonMari Waterfall (Domain -> Infrastructure -> Plumbing) has been aligned. \u2728`}}),r.register({name:"checkpoint_pass",description:"Explicitly end a pass, summarize achievements, and orient for the next pass.",input_schema:{type:"object",properties:{summary:{type:"string",description:"What was achieved in this pass"},reflection:{type:"string",description:"What sparked joy or was learned in this pass? (KonMari Reflection)"},nextPassFocus:{type:"string",description:"The focus for the upcoming pass"},zoneSolidification:{type:"boolean",description:"Confirm that all new code follows JOY zoning protocols."},tidyChecked:{type:"boolean",description:"Confirm that Joyful Tidying (fold_file) has been performed."},isFinalPass:{type:"boolean"}},required:["summary","reflection","nextPassFocus","zoneSolidification","tidyChecked","isFinalPass"]},execute:async(t,a)=>{let i=S(t,"summary"),s=S(t,"reflection"),n=S(t,"nextPassFocus"),o=t.zoneSolidification,p=t.isFinalPass;return o?t.tidyChecked?(a?.({context:`Checkpoint: ${i} (Reflection: ${s})`,achieved:[`Completed Pass: ${i}`],passHistory:[{pass:t.currentPass||1,summary:i,reflection:s}],currentPass:p?null:void 0,passFocus:p?void 0:n}),`Pass internal checkpoint reached. Focus shifting to: ${n}. Reflection: ${s}`):"Error: Joyful Tidying check failed. Please perform 'fold_file' on modified files to ensure code health.":"Error: Zone Solidification check failed. Please ensure all new code is correctly zoned before ending the pass."}}),r.register({name:"map_project_context",description:"A mapping ritual. Returns a high-level overview of JOY zones and key inhabitants to aid strategic planning.",input_schema:{type:"object",properties:{}},execute:async()=>{let t=P.workspace.workspaceFolders?.[0].uri.fsPath;if(!t)return"No workspace detected.";let{isProjectJoyful:a,proposeClustering:i}=await Promise.resolve().then(()=>(ca(),N1)),s=await a(t),n=await i(t),o=[];try{let l=(await ue.readdir(t,{withFileTypes:!0,recursive:!0})).filter(m=>m.isFile()&&!m.name.startsWith(".")&&!m.path.includes("node_modules")).map(m=>Z.join(m.path,m.name)),c=(await Promise.all(l.map(async m=>({path:m,mtime:(await ue.stat(m)).mtime.getTime()})))).sort((m,h)=>h.mtime-m.mtime).slice(0,5);o.push(...c.map(m=>Z.relative(t,m.path)))}catch(d){console.error("Hotspot detection failed:",d),o.push("src/domain/marie/MarieTypes.ts","src/infrastructure/ai/MarieEngine.ts")}let p=`# Project Map (JOY Structure)
452
+
453
+ `;p+=`**Status**: ${s?"Joyful Ecosystem \u2728":"Architectural Void \u26A0\uFE0F (Genesis Needed)"}
454
+
455
+ `,p+=`**Zones**:
456
+ `,p+="- **Domain** (`src/domain`): Core logic and purity.\n",p+="- **Infrastructure** (`src/infrastructure`): Adapters and stability.\n",p+="- **Plumbing** (`src/plumbing`): Mechanical machinery.\n\n",p+=`**Hotspots** (Most Recently Modified):
457
+ `;for(let d of o)p+=`- \`${d}\`
458
+ `;if(p+=`
459
+ `,n.length>0){p+=`**Clustering Opportunities**:
460
+ `;for(let d of n)p+=`- ${d.zone}: ${d.fileCount} files. Consider sub-zones like ${d.suggestedClusters.join(", ")}.
461
+ `}return p}}),r.register({name:"update_run_objectives",description:"Update the current run's objectives and progress context.",input_schema:{type:"object",properties:{context:{type:"string"},completedObjectiveIds:{type:"array",items:{type:"string"}},activeObjectiveId:{type:"string"},achieved:{type:"array",items:{type:"string"}},totalPasses:{type:"number"}},required:["context"]},execute:async(t,a)=>{let i=S(t,"context"),s=Fs(t,"completedObjectiveIds"),n=S(t,"activeObjectiveId"),o=Fs(t,"achieved"),p=t.totalPasses;return a?.({context:i,completedObjectiveIds:s,activeObjectiveId:n,achieved:o,totalPasses:p}),`Progress updated: ${i}${p?` (Total Passes: ${p})`:""}`}}),r.register({name:"augment_roadmap",description:"Insert a new pass into the current roadmap. Use this when significant unexpected complexity is discovered.",input_schema:{type:"object",properties:{addedPassCount:{type:"number",description:"How many passes to add (usually 1)"},newPassFocus:{type:"string",description:"The focus for the upcoming augmented pass"},reason:{type:"string",description:"Why is the roadmap being augmented? (Mindfulness discovery)"}},required:["addedPassCount","newPassFocus","reason"]},execute:async(t,a)=>{let i=t.addedPassCount,s=S(t,"newPassFocus"),n=S(t,"reason");return a?.({context:`Roadmap Augmented: ${n}`,achieved:[`Calibrated roadmap: +${i} pass(es)`],totalPasses:i,passFocus:s}),`Roadmap augmented with ${i} additional pass(es). Reason: ${n}`}}),r.register({name:"execute_genesis_ritual",description:"Convert an entire project to the JOY structure.",input_schema:{type:"object",properties:{}},execute:async()=>await e.triggerGenesis()}),r.register({name:"sow_joy_feature",description:"Scaffold a new feature structure across all JOY zones.",input_schema:{type:"object",properties:{name:{type:"string"},intent:{type:"string"}},required:["name","intent"]},execute:async t=>await e.sowJoyFeature(S(t,"name"),S(t,"intent"))}),r.register({name:"perform_garden_pulse",description:"Deep audit of project structure and scaffolding.",input_schema:{type:"object",properties:{}},execute:async()=>await e.performGardenPulse()}),r.register({name:"execute_joy_maintenance",description:"Perform autonomous maintenance on the garden structure (Restoration Ritual).",isDestructive:!0,input_schema:{type:"object",properties:{}},execute:async()=>await e.executeAutonomousRestoration()}),r.register({name:"fold_file",description:"Format and organize imports in a file.",input_schema:{type:"object",properties:{path:{type:"string"}},required:["path"]},execute:async t=>await da(S(t,"path"))}),r.register({name:"cherish_file",description:"Update the timestamp of a 'Sentimental' file.",input_schema:{type:"object",properties:{path:{type:"string"}},required:["path"]},execute:async t=>await P1(S(t,"path"))}),r.register({name:"check_code_health",description:"Analyze a file for complexity and technical debt.",input_schema:{type:"object",properties:{path:{type:"string"}},required:["path"]},execute:async t=>JSON.stringify(await yt(S(t,"path")))}),r.register({name:"replace_file_content",description:"Replace a specific string with another in a file. Surgical and mindful.",isDestructive:!0,input_schema:{type:"object",properties:{path:{type:"string"},targetFile:{type:"string"},targetContent:{type:"string"},replacementContent:{type:"string"},search:{type:"string"},replace:{type:"string"}},required:["path"]},execute:async(t,a,i)=>{let s=S(t,"path")||S(t,"targetFile"),n=S(t,"targetContent")||S(t,"search"),o=S(t,"replacementContent")||S(t,"replace");try{let{replaceInFile:p}=await Promise.resolve().then(()=>(st(),Pr)),d=await p(s,n,o);return await da(s),`${d}
462
+
463
+ **Autonomy Note**: Post-execution tidying completed. \u{1F338}`}catch(p){return await e.executeSelfHealing(s,p.message)}}}),r.register({name:"generate_joy_dashboard",description:"Generate a JOY.md dashboard for the workspace.",input_schema:{type:"object",properties:{rootPath:{type:"string"}},required:["rootPath"]},execute:async t=>await E1(S(t,"rootPath"))}),r.register({name:"complete_task_ritual",description:"A final ritual to conclude a large task. Summarizes the entire journey and expresses gratitude. WARNING: Do NOT call this tool until you have confirmed the user's request is 100% satisfied. If you have any doubts or pending verifications, use `notify_user` instead.",input_schema:{type:"object",properties:{finalSummary:{type:"string",description:"The 'Bloom Report': a synthesis of all work achieved."},gratitude:{type:"string",description:"A final expression of gratitude for the code and the process."},healthCheck:{type:"string",description:"A final assessment of the project's JOY state."}},required:["finalSummary","gratitude","healthCheck"]},execute:async(t,a)=>{let i=S(t,"finalSummary"),s=S(t,"gratitude"),n=S(t,"healthCheck");return a?.({context:`Bloom Ritual: ${i}`,achieved:[`Task Completed: ${i}`,"Code Ascension complete \u2728"],currentPass:null,passFocus:void 0,ritualComplete:!0}),`Task Bloom Ritual complete.
464
+
465
+ Report: ${i}
466
+
467
+ Garden Growth: Metrics archived in telemetry.
468
+
469
+ Health: ${n}
470
+
471
+ Gratitude: ${s} \u2728`}})}var Cr=$(require("vscode"),1);ca();U1();var pn=class{constructor(e,t){this.context=e;this.joyService=t}currentRun;setCurrentRun(e){this.currentRun=e}getCurrentRun(){return this.currentRun}async triggerGenesis(){let e=Cr.workspace.workspaceFolders?.[0].uri.fsPath;if(!e)return"No workspace detected.";let t=await k1(e);return await this.joyService.addAchievement("Performed the Genesis Ritual. Project reborn in JOY. \u2728",100),t}async sowJoyFeature(e,t){let a=Cr.workspace.workspaceFolders?.[0].uri.fsPath;if(!a)return"No workspace detected.";let i=await C1(a,e,t);return await this.joyService.addAchievement(`Sowed the seeds of '${e}' across the garden. \u{1F331}`,25),i}heartbeatTimer;async performGardenPulse(){let e=Cr.workspace.workspaceFolders?.[0].uri.fsPath;if(!e)return"No workspace folder detected.";let t="";try{let a=await ga.audit(e);t+=`\u{1F6E1}\uFE0F **Sentinel Scan Complete**: ${a.stability} (Entropy: ${a.entropyScore})
472
+ `,a.zoneViolations.length>0?t+=`- \u274C Found ${a.zoneViolations.length} architectural violations.
473
+ `:t+=`- \u2705 No cross-zone contamination detected. Domain remains pure.
474
+ `;let i=await la(e);await qs(e);let s=await Hs(e),n=await Us(e),o=await ui(e);if(i||(t+=`
475
+ - \u26A0\uFE0F **Architectural Void**: Project has not yet embraced the JOY structure.`),n.length>0){t+=`
476
+ - ${n.length} structural drifts detected.`;let{ConfigService:p}=await Promise.resolve().then(()=>(Ke(),Kd)),d=p.getAutoRepair();if((n.length>5||a.entropyScore>10)&&d){await this.joyService.addAchievement("Sentinel Auto-Repair initiated. \u{1F6E0}\uFE0F",10);let l=await this.executeAutonomousRestoration();t+=`
477
+ - \u{1F6E0}\uFE0F **Auto-Repair Executed**: ${l}`}}await this.scoutAchievements()}catch(a){t+=`
478
+ - \u274C **Pulse Interrupted**: ${a.message}`}return`${t}
479
+
480
+ The system remains under Sentinel protection. \u{1F6E1}\uFE0F`}startAutonomousHeartbeat(e=3e5){this.heartbeatTimer||(this.heartbeatTimer=setInterval(async()=>{await this.performGardenPulse()},e))}stopAutonomousHeartbeat(){this.heartbeatTimer&&(clearInterval(this.heartbeatTimer),this.heartbeatTimer=void 0)}async executeAutonomousRestoration(){let e=Cr.workspace.workspaceFolders?.[0].uri.fsPath;if(!e)return"No workspace folder detected.";let t=await R1(e);return await this.joyService.addAchievement("The Garden was autonomously restored to harmony. \u2728",50),t}async executeSelfHealing(e,t){return await this.joyService.addAchievement("Self-healing initiated. \u{1F9EC}",15),t.includes("content check failed")||t.includes("could not find")?`Self-healing: Analyzing \`${e}\` to resolve: ${t}.
481
+ Please retry the operation with \`find_files\` or \`grep_search\` to refresh context. \u2728`:`Self-healing could not determine a recovery path for: ${t}`}async autoScaffold(){let e=Cr.workspace.workspaceFolders?.[0].uri.fsPath;e&&await Hs(e)}async scoutAchievements(){let e=Cr.workspace.workspaceFolders?.[0].uri.fsPath;if(e)try{await this.joyService.addAchievement("Sentinel Resonance achieved. \u{1F30C}",5),await la(e)&&await this.joyService.addAchievement("Structural Harmony attained. \u{1F3DB}\uFE0F",20)}catch(t){console.error("[Singularity] Scouting failed",t)}}dispose(){this.stopAutonomousHeartbeat()}};Ke();var dn=class{tools=new Map;cachedRegisteredTools=null;register(e){this.tools.set(e.name,e),this.cachedRegisteredTools=null}getTool(e){return this.tools.get(e)}getTools(){return this.cachedRegisteredTools||(this.cachedRegisteredTools=Array.from(this.tools.values()).map(e=>({name:e.name,description:e.description,input_schema:e.input_schema}))),this.cachedRegisteredTools}async execute(e,t,a,i){let s=this.tools.get(e);if(!s)throw new Error(`Tool ${e} not found`);return await s.execute(t,a,i)}};var Ul=$(require("path"),1);Ke();var ln=$(require("vscode"),1);Ke();pa();ma();var Me=class{static levenshtein(e,t){if(e.length>5e3||t.length>5e3){let p=this.getCommonPrefixLength(e,t),d=this.getCommonSuffixLength(e,t),l=Math.abs(e.length-t.length);return l+(Math.max(e.length,t.length)-p-d-l)}if(e.length>t.length){let p=e;e=t,t=p}let i=e.length,s=t.length;if(i===0)return s;let n=new Array(i+1),o=new Array(i+1);for(let p=0;p<=i;p++)n[p]=p;for(let p=1;p<=s;p++){o[0]=p;for(let l=1;l<=i;l++)t[p-1]===e[l-1]?o[l]=n[l-1]:o[l]=Math.min(n[l-1],o[l-1],n[l])+1;let d=n;n=o,o=d}return n[i]}static similarity(e,t){let a=Math.max(e.length,t.length),i=Math.min(e.length,t.length);return a===0?1:(i/a<.5,(a-this.levenshtein(e,t))/a)}static extractText(e){return e==null?"":typeof e=="string"?e:Array.isArray(e)?e.filter(t=>t&&t.type==="text").map(t=>t.text||"").join(" "):""}static getCommonPrefixLength(e,t){let a=0,i=Math.min(e.length,t.length);for(;a<i&&e[a]===t[a];)a++;return a}static getCommonSuffixLength(e,t){let a=0,i=e.length,s=t.length,n=Math.min(i,s);for(;a<n&&e[i-1-a]===t[s-1-a];)a++;return a}};var hi=class{static estimateTokens(e,t){return Math.ceil(e.length*t)}static estimateObjectTokens(e,t,a=0){if(!e||a>10)return 0;if(typeof e=="string")return this.estimateTokens(e,t);if(typeof e=="number"||typeof e=="boolean")return 1;let i=0;if(Array.isArray(e))for(let s of e)i+=this.estimateObjectTokens(s,t,a+1);else if(typeof e=="object")for(let s in e)i+=this.estimateTokens(s,t),i+=this.estimateObjectTokens(e[s],t,a+1);return i}static getMessageTokens(e,t){return typeof e.content=="string"?this.estimateTokens(e.content,t):Array.isArray(e.content)?e.content.reduce((a,i)=>i.type==="text"?a+this.estimateTokens(i.text,t):i.type==="tool_use"?a+this.estimateObjectTokens(i.input,t,0):i.type==="tool_result"?typeof i.content=="string"?a+this.estimateTokens(i.content,t):a+this.estimateObjectTokens(i.content,t,0):a,0):0}static getTotalTokens(e,t){return e.reduce((a,i)=>a+this.getMessageTokens(i,t),0)}static async manage(e,t,a){let i=L.getMaxContextTokens(),s=L.getTokensPerChar(),n=this.getTotalTokens(e,s);if(n<i*.9)return e;ln.window.showInformationMessage(`Marie is tidying up conversation history (${n} tokens)...`);let o=L.getKeepRecentMessages();if(e.length<=o)return e;let p=e.slice(0,e.length-o),d=e.slice(e.length-o);try{let l=await t.createMessage({model:L.getModel(),max_tokens:1024,messages:p.concat({role:"user",content:sl}),system:il}),u=Me.extractText(l.content)||"Summary unavailable.",c="";if(a){let h=Object.entries(a.errorHotspots).filter(([g,b])=>b>=2).map(([g,b])=>`${g}(${b}x)`).join(", "),v=a.lastDecree?.strategy||"EXECUTE",f=a.lastDecree?.reason||"None";c=`[ASCENSION STATE] Strategy: ${v}, Mood: ${a.mood}, Spirit Pressure (Flow): ${a.spiritPressure}/100, Victory Streak: ${a.victoryStreak}${h?`, Hotspots: ${h}`:""}, Last Intent: ${f}
482
+
483
+ `}let m=[{role:"user",content:`[System Note: Previous conversation summary]
484
+ ${c}${u}`},...d];return ln.window.showInformationMessage(`Marie finished tidying. Tokens reduced from ${n} to ${this.getTotalTokens(m,s)}.`),m}catch(l){let u=Oe(l);return console.error("Context summarization failed:",u),ln.window.showErrorMessage(`Failed to summarize conversation: ${u}. Continuing with full history.`),e}}};pa();var Qt=class r{content;cachedText;constructor(e){this.content=e,this.cachedText=Me.extractText(e)}getText(){return this.cachedText}getTrimmed(){return this.cachedText.trim()}getRaw(){return this.content}hasText(){return this.getText().length>0}isShaky(){let e=this.getTrimmed(),t=this.getReasoning();return e.length===0&&t.length===0&&!this.hasToolCalls()?!0:e.length<10&&t.length<10&&!this.hasToolCalls()}getReasoning(){if(!Array.isArray(this.content))return"";let e="",t=this.content;for(let a=0;a<t.length;a++){let i=t[a];if(i&&(i.type==="thought"||i.type==="reasoning")){let s=i.text||i.reasoning||"";e?e+=`
485
+ `+s:e=s}}return e}getTools(e){let t=this.getToolCalls();return e?t.filter(a=>a.name===e):t}getToolCalls(){if(!Array.isArray(this.content))return[];let e=[],t=this.content;for(let a=0;a<t.length;a++)t[a].type==="tool_use"&&e.push(t[a]);return e}hasToolCalls(){if(!Array.isArray(this.content))return!1;for(let e=0;e<this.content.length;e++)if(this.content[e].type==="tool_use")return!0;return!1}static wrap(e){return new r(e)}};var cn=class{constructor(e,t,a,i,s,n,o="full"){this.provider=e;this.toolRegistry=t;this.saveHistory=a;this.messages=i;this.tracker=s;this.providerFactory=n;this.promptProfile=o}resolveSystemPrompt(){return this.promptProfile==="continuation"?al:x1}async*executeLoop(e,t,a){let i=e.map(n=>({...n})),s=!1;try{let n=await hi.manage(e,this.provider,a);if(n!==e){e.length=0;for(let f of n)e.push(f);s=!0}let o={model:L.getModel(),max_tokens:8192,messages:n,system:this.resolveSystemPrompt(),tools:this.toolRegistry.getTools()},p=[],d=null,l=()=>{d&&(d({done:!0,value:void 0}),d=null)};t?.addEventListener("abort",l);let u=null,c=0,m=3;for(;c<m;)try{u=this.provider.createMessageStream(o,f=>{p.push(f),d&&(d({value:p.shift(),done:!1}),d=null)},t);break}catch(f){if(c++,(f.status===429||f.status>=500||f.message?.includes("rate limit"))&&c<m&&this.providerFactory){let b=L.getAiProvider(),A=b==="anthropic"?"openrouter":b==="openrouter"?"cerebras":"anthropic";console.warn(`[SpectralFailover] Attempt ${c} failed for ${b}. Switching to ${A}.`),this.tracker?.emitEvent({type:"reasoning",runId:this.tracker.getRun().runId,text:`\u{1F504} SPECTRAL FAILOVER: ${b} is struggling. Switching to ${A} mid-turn...`,elapsedMs:this.tracker.elapsedMs()}),this.provider=this.providerFactory(A);continue}throw f}if(!u)throw new Error("Failed to initialize AI stream.");try{for(;!t?.aborted;)if(p.length>0)yield p.shift();else{let f=await Promise.race([u.then(()=>({done:!0})),new Promise(g=>d=g)]);if(f.done){for(;p.length>0;)yield p.shift();break}yield f.value}}finally{t?.removeEventListener("abort",l)}let h=await u,v=h.content;if(h.tool_uses&&h.tool_uses.length>0){let f=[];Array.isArray(h.content)?f.push(...h.content):h.content&&f.push({type:"text",text:h.content});for(let g of h.tool_uses)f.push({type:"tool_use",...g});v=f}if(t?.aborted){if(console.warn("[MarieSession] Execution aborted. History will NOT be updated for this turn."),s){console.warn("[MarieSession] Restoring messages array to pre-run state due to abort."),e.length=0;for(let f of i)e.push(f)}return}e.push({role:"assistant",content:v,timestamp:Date.now()}),await this.saveHistory(this.tracker?.getRun())}catch(n){if(s){console.warn("[MarieSession] Restoring messages array to pre-run state due to error:",n),e.length=0;for(let o of i)e.push(o)}throw n}}async generate(){let e=this.tracker?.getRun().ascensionState,t={model:L.getModel(),max_tokens:8192,messages:await hi.manage(this.messages,this.provider,e),system:this.resolveSystemPrompt(),tools:this.toolRegistry.getTools()},a=await this.provider.createMessageStream(t,()=>{}),i=a.content;if(a.tool_uses&&a.tool_uses.length>0){let s=[];Array.isArray(a.content)?s.push(...a.content):a.content&&s.push({type:"text",text:a.content});for(let n of a.tool_uses)s.push({type:"tool_use",...n});i=s}return this.messages.push({role:"assistant",content:i}),new Qt(i)}};var mn=class{constructor(e,t){this.tracker=e;this.ghostPort=t}toolNames=new Map;pendingContent="";pendingToolDeltas=new Map;throttleTimer=null;toolThrottleTimer=null;THROTTLE_MS=50;TOOL_THROTTLE_MS=100;dispatch(e){let t=this.tracker.getRun();switch(e.type){case"stage_change":this.flushContent(),this.updateStage(e);break;case"content_delta":this.handleContentDelta(e,t);break;case"tool_call_delta":this.handleToolDelta(e,t);break;case"usage":this.flushContent(),t.usage=e.usage,this.tracker.emitEvent({type:"usage",runId:t.runId,usage:e.usage,elapsedMs:this.tracker.elapsedMs()});break}}handleContentDelta(e,t){this.pendingContent+=e.text,this.throttleTimer||(this.throttleTimer=setTimeout(()=>{this.flushContent()},this.THROTTLE_MS))}flushContent(){if(!this.pendingContent)return;let e=this.pendingContent;this.pendingContent="",this.throttleTimer=null;let t=this.tracker.getRun();this.tracker.emitStream(e),this.tracker.emitEvent({type:"content_delta",runId:t.runId,text:e,elapsedMs:this.tracker.elapsedMs()})}activeToolDelta(e,t){if(this.flushContent(),e.argumentsDelta){let a=e.id||"default";e.name&&(this.toolNames.has(a)||this.toolNames.set(a,e.name));let i=this.toolNames.get(a)||"";if(this.tracker.emitEvent({type:"tool_delta",runId:t.runId,name:i,inputDelta:e.argumentsDelta,elapsedMs:this.tracker.elapsedMs()}),this.ghostPort&&this.ghostPort.handleDelta(a,i,e.argumentsDelta),e.argumentsDelta.includes("path")||e.argumentsDelta.includes("file")){let s=e.argumentsDelta.match(/"path"\s*:\s*"([^"]*)"/);s&&(t.activeFilePath=s[1],this.tracker.emitProgressUpdate())}}}clear(){this.toolNames.clear(),this.flushContent(),this.flushToolDeltas()}handleToolDelta(e,t){if(!e.argumentsDelta)return;let a=e.index!==void 0?String(e.index):"default";e.name&&!this.toolNames.has(a)&&this.toolNames.set(a,e.name);let i=this.pendingToolDeltas.get(a)||"";this.pendingToolDeltas.set(a,i+e.argumentsDelta),this.toolThrottleTimer||(this.toolThrottleTimer=setTimeout(()=>{this.flushToolDeltas()},this.TOOL_THROTTLE_MS))}flushToolDeltas(){let e=this.tracker.getRun();for(let[t,a]of this.pendingToolDeltas.entries()){let i=this.toolNames.get(t)||"";if(this.tracker.emitEvent({type:"tool_delta",runId:e.runId,name:i,inputDelta:a,elapsedMs:this.tracker.elapsedMs()}),this.ghostPort&&this.ghostPort.handleDelta(t,i,a),a.includes("path")||a.includes("file")){let s=a.match(/"path"\s*:\s*"([^"]*)"/);s&&(e.activeFilePath=s[1],this.tracker.emitProgressUpdate())}}this.pendingToolDeltas.clear(),this.toolThrottleTimer=null}updateStage(e){let t=this.tracker.getRun(),a=e.stage;t.steps+=1,["responding","calling_tool","editing"].includes(a)&&(this.tracker.setObjectiveStatus("understand_request","completed"),this.tracker.setObjectiveStatus("execute_plan","in_progress",e.label||"Executing..."),t.activeObjectiveId="execute_plan"),this.tracker.emitEvent({type:"stage",runId:t.runId,stage:a,label:e.label||a,elapsedMs:this.tracker.elapsedMs()}),this.tracker.emitProgressUpdate(e.label||`Stage: ${a}`)}};var z1=$(require("path"),1),Bl=require("module");ma();var un=class{maxRetries=3;baseDelayMs=100;maxDelayMs=5e3;transientErrors=["ECONNRESET","ETIMEDOUT","ENOTFOUND","ECONNREFUSED","timeout","throttle","rate limit","too many requests","429","503","504"];permanentErrors=["EACCES","EPERM","permission denied","unauthorized","forbidden","401","403","invalid","validation","not found","404"];categorizeError(e){let t=e.toLowerCase();return this.transientErrors.some(a=>t.includes(a.toLowerCase()))?"TRANSIENT":this.permanentErrors.some(a=>t.includes(a.toLowerCase()))?"PERMANENT":"UNKNOWN"}isRetryable(e){return this.categorizeError(e)==="TRANSIENT"}getBackoffDelay(e){let t=this.baseDelayMs*Math.pow(2,e),a=Math.random()*.3*t;return Math.min(t+a,this.maxDelayMs)}};async function Ml(r,e,t,a){let i=null;for(let s=0;s<=e.maxRetries;s++){if(a?.aborted)throw new Error(`${t}: Aborted by user.`);try{return await r()}catch(n){i=n;let o=n?.message||String(n),p=e.categorizeError(o);if(s===0&&console.log(`[Marie] ${t}: Error category: ${p}`),p==="PERMANENT")throw console.log(`[Marie] ${t}: Permanent error, failing immediately.`),n;if(p==="UNKNOWN")throw console.log(`[Marie] ${t}: Unknown error type, failing without retry.`),n;if(s>=e.maxRetries)throw console.error(`[Marie] ${t}: Max retries (${e.maxRetries}) exceeded.`),n;let d=e.getBackoffDelay(s);console.warn(`[Marie] ${t}: Attempt ${s+1} failed (${p}), retrying in ${Math.round(d)}ms... Error: ${o}`),await Tu(d,a)}}throw i||new Error(`${t}: Retry loop failed unexpectedly`)}function Tu(r,e){return new Promise((t,a)=>{let i=setTimeout(()=>{e&&e.removeEventListener("abort",s),t()},r),s=()=>{clearTimeout(i),a(new Error("Operation aborted."))};e&&e.addEventListener("abort",s,{once:!0})})}st();var Eu={},xu=(0,Bl.createRequire)(Eu.url),W1=null,Ll=!1;function jl(){if(!Ll){Ll=!0;try{W1=xu("vscode")}catch{W1=null}}return W1}var hn=class r{constructor(e,t,a,i,s){this.toolRegistry=e;this.tracker=t;this.approvalRequester=a;this.state=i;this.fs=s}static RETRY_CONFIG=new un;failureCircuitBreaker=new Map;async process(e,t){let{name:a,start_line:i,end_line:s,repaired:n}=e,o=e.input,p=JSON.stringify(o);n&&this.tracker.recordHeuristicFix(e.name);let d=this.failureCircuitBreaker.get(a);if(d&&d.lastInput===p&&d.count>=3)return this.recordError(a,`CIRCUIT BREAKER: ${a} has failed 3 times with the same input. Possible death spiral.`,!0),`HALT: Protocol Violation. Circuit breaker tripped for ${a} after repeated failures. Diversify your approach immediately.`;let l=this.toolRegistry.getTool(e.name);if(!l)return this.recordError(e.name,"Tool not found"),`Tool ${e.name} not found`;try{let u=this.validate(e.name,o);if(u)return this.recordError(e.name,u),`Error: ${u}`;let c=Date.now();console.log(`[Marie] Tool ${e.name} starting. ID: ${e.id}`);let m={...o};typeof m.content=="string"&&m.content.length>500&&(m.content=m.content.substring(0,500)+"...[TRUNCATED]"),typeof m.replacementContent=="string"&&m.replacementContent.length>500&&(m.replacementContent=m.replacementContent.substring(0,500)+"...[TRUNCATED]"),this.tracker.emitEvent({type:"tool",runId:this.tracker.getRun().runId,id:e.id,phase:"start",name:e.name,input:m,elapsedMs:this.tracker.elapsedMs()});let h=this.tracker.getRun();h.activeToolName=e.name,h.lastToolName=e.name,this.tracker.emitProgressUpdate(),this.tracker.recordToolUsage(e.name);let v=[],f=e.input?.path||e.input?.targetFile||e.input?.file||e.input?.filePath;l.isDestructive&&(f&&typeof f=="string"&&(v.push(f),this.fs&&await this.fs.backupFile(f)),a==="execute_semantic_move"&&o.dest&&(v.push(o.dest),this.fs&&await this.fs.backupFile(o.dest)));let g=await Ml(()=>l.execute(o,void 0,t),r.RETRY_CONFIG,`Tool: ${e.name}`,t);if(typeof g=="string"&&g.length>512*1024)console.warn(`[MarieStability] Tool ${e.name} output exceeded 512KB. Truncating at source.`),g=g.substring(0,512*1024)+`
486
+
487
+ \u{1F6A8} STABILITY ALERT: Output truncated at 512KB to prevent Extension Host lag.`;else if(g&&typeof g=="object"){let E=JSON.stringify(g);E.length>512*1024&&(console.warn(`[MarieStability] Tool ${e.name} JSON output exceeded 512KB. Truncating at source.`),g=E.substring(0,512*1024)+`
488
+
489
+ \u{1F6A8} STABILITY ALERT: JSON output truncated at 512KB.`)}this.fs&&this.fs.clearBackups(),this.failureCircuitBreaker.delete(a);let b=Date.now()-c;console.log(`[Marie] Tool ${e.name} completed in ${b}ms.`),this.tracker.emitEvent({type:"tool",runId:this.tracker.getRun().runId,id:e.id,phase:"complete",name:e.name,message:typeof g=="string"?g.substring(0,100):"Completed",elapsedMs:this.tracker.elapsedMs()}),h.activeToolName=void 0,h.lastToolName=e.name,this.tracker.emitProgressUpdate(),g&&typeof g=="object"&&this.applyUpdate(g,e.name),this.recordCodeStats(e.name,o),this.state.techniqueExecutions.push({name:e.name,durationMs:b,success:!0,timestamp:Date.now(),filePath:typeof f=="string"?f:void 0}),this.state.toolHistory.push(e.name),this.state.toolHistory.length>20&&this.state.toolHistory.shift(),this.state.victoryStreak++;let A=this.tracker.getRun();if(A.metrics||(A.metrics={cherishedFiles:[],releasedDebtCount:0}),e.name==="cherish_file"&&o&&typeof o=="object")try{let E=S(o,"path");E&&!A.metrics.cherishedFiles.includes(E)&&(A.metrics.cherishedFiles.push(E),this.tracker.emitProgressUpdate(`File cherished: ${E.split("/").pop()}`))}catch(E){console.warn("Failed to extract path for cherish_file metric",E)}else e.name==="discard_file"&&(A.metrics.releasedDebtCount++,this.tracker.emitProgressUpdate("Technical debt released \u{1F342}"));let k=typeof g=="string"?g:JSON.stringify(g);if(l.isDestructive&&f&&typeof f=="string"){let E=await this.runZoningSentinel(f,typeof g=="string"?g:void 0);E&&(k+=`
490
+
491
+ \u{1F6E1}\uFE0F **ZENITH: Zoning Sentinel Alert**
492
+ ${E}`);let N=await this.runBuildSentinel(f);N&&(k+=`
493
+
494
+ \u{1F9F1} **SINGULARITY: Build Sentinel Alert**
495
+ ${N}`)}return k}catch(u){let c=Oe(u),m=this.isTerminalError(a,c),h=this.tracker.getRun();h.activeToolName=void 0,h.lastToolName=a,this.tracker.emitProgressUpdate();try{console.log(`[Marie] Initiating systemic rollback for tool failure: ${a}`),this.fs?await this.fs.rollbackAll():await mi()}catch(b){console.error(`[Marie] Transactional recovery failed: ${b}`)}let v=this.failureCircuitBreaker.get(a)||{count:0,lastInput:p};v.lastInput===p?v.count++:(v.count=1,v.lastInput=p),this.failureCircuitBreaker.set(a,v),this.recordError(a,c,m,e.id),console.error(`[Marie] Tool ${a} failed: ${c}`);let f=e.input?.path||e.input?.targetFile||e.input?.file||e.input?.filePath;if(this.state.techniqueExecutions.push({name:a,durationMs:0,success:!1,timestamp:Date.now(),filePath:typeof f=="string"?f:void 0}),this.state.totalErrorCount++,this.state.victoryStreak=0,typeof f=="string"&&(this.state.errorHotspots[f]=(this.state.errorHotspots[f]||0)+1),m||v.count>=3){let b=v.count>=3?" [CIRCUIT BREAKER TRIPPED]":"";return`HALT: Critical protocol or parsing failure in ${a}: ${c}${b}`}let g=[`Error executing ${a}: ${c}`];if(f&&typeof f=="string"){let b=this.state.errorHotspots[f]||0;b>=2&&g.push(`
496
+
497
+ \u{1F525} CURSE HOTSPOT: This file (${f}) has failed ${b} times. Technique adjustment required.`)}return this.state.spiritPressure<30&&g.push(`
498
+ \u26A0\uFE0F Low spirit pressure (${this.state.spiritPressure}/100). Simplify your next action.`),this.state.mood==="CAUTIOUS"&&g.push(`
499
+ \u{1F6E1}\uFE0F Ascension Mood: CAUTIOUS. Observe before acting. Verify the pattern.`),c.includes("ENOENT")||c.includes("no such file")?g.push(`
500
+
501
+ \u{1F4A1} Reflection Hint: The file or directory does not exist. Use 'list_dir' to verify the path or 'grep_search' to locate it.`):c.includes("target content not found")?g.push(`
502
+
503
+ \u{1F4A1} Reflection Hint: The content you tried to replace wasn't found. Use 'read_file' (without line numbers) to verify the current file content before retrying.`):c.includes("Input is required")?g.push(`
504
+
505
+ \u{1F4A1} Reflection Hint: You missed a required argument. Check the tool schema.`):g.push(`
506
+
507
+ \u{1F4A1} Reflection Hint: Please analyze why this failed and propose a diverse alternative strategy.`),v.count>1&&g.push(`
508
+
509
+ \u26A0\uFE0F REPEATED FAILURE: This exact tool call has failed ${v.count} times. If it fails again, the circuit breaker will trip and you will be forced to change strategy.`),g.join("")}}isTerminalError(e,t){return!!(e==="checkpoint_pass"&&t.includes("failed")||t.includes("Failed to parse tool arguments"))}validate(e,t){if(!t||typeof t!="object")return"Input must be a valid object";let a=this.toolRegistry.getTool(e);if(!a)return`Tool "${e}" not found in registry`;let i=a.input_schema;if(i.required&&Array.isArray(i.required)){let n=i.required.filter(o=>!(o in t));if(n.length>0)return`Missing required fields: ${n.join(", ")}`}let s=["path","targetFile","file","sourcePath","targetPath","directoryPath"];for(let n of s)if(t[n]&&typeof t[n]=="string"){let o=this.validatePath(t[n]);if(o)return o}return null}validatePath(e){let a=jl()?.workspace.workspaceFolders;if(!a||a.length===0)return null;let i=a[0].uri.fsPath,s=(e.startsWith("~")||e.includes(":"),e);return(e.startsWith("/")||e.length>1&&e[1]===":")&&!e.startsWith(i)?`Security Error: Path ${e} is outside the workspace boundary (${i}). Access denied. \u{1F6D1}`:null}async requestApproval(e,t){let a=this.tracker.getRun(),i;return e==="replace_in_file"&&t.targetContent&&t.replacementContent?i={old:t.targetContent,new:t.replacementContent}:e==="write_file"&&t.content&&(i={old:"",new:t.content}),await this.approvalRequester(e,t,i)}applyUpdate(e,t){let a=this.tracker.getRun();e.context&&(a.currentContext=e.context),e.activeObjectiveId&&(a.activeObjectiveId=e.activeObjectiveId),e.lifecycleStage&&(a.lifecycleStage=e.lifecycleStage),e.totalPasses!==void 0&&(a.totalPasses=e.totalPasses),e.currentPass!==void 0&&(a.currentPass=e.currentPass===null?void 0:e.currentPass),e.passFocus!==void 0&&(a.passFocus=e.passFocus),e.passHistory&&(a.passHistory=[...a.passHistory||[],...e.passHistory]),e.metrics&&(a.metrics={cherishedFiles:Array.from(new Set([...a.metrics?.cherishedFiles||[],...e.metrics.cherishedFiles||[]])),releasedDebtCount:(a.metrics?.releasedDebtCount||0)+(e.metrics.releasedDebtCount||0)}),t==="checkpoint_pass"&&a.currentPass!==void 0&&a.currentPass++,a.currentPass!==void 0&&a.totalPasses!==void 0&&a.passFocus?this.tracker.emitPassTransition(a.currentPass,a.totalPasses,a.passFocus):this.tracker.emitProgressUpdate(),t==="augment_roadmap"&&e.totalPasses!==void 0&&(a.totalPasses=(a.totalPasses||0)+e.totalPasses,this.tracker.emitProgressUpdate(`Roadmap calibrated: ${a.totalPasses} total passes.`))}countLines(e){if(!e)return 0;let t=1,a=-1;for(;(a=e.indexOf(`
510
+ `,a+1))!==-1;)t++;return t}recordCodeStats(e,t){try{if(e==="write_to_file"){let a=this.countLines(t.content),i=t.targetFile||t.file||t.path||t.filePath;i&&this.tracker.recordFileChange(i,a,0)}else if(e==="replace_file_content"){let a=this.countLines(t.replacementContent),i=this.countLines(t.targetContent),s=t.targetFile||t.file||t.path||t.filePath;s&&this.tracker.recordFileChange(s,a,i)}else if(e==="multi_replace_file_content"&&Array.isArray(t.replacementChunks)){let a=0,i=0;for(let n of t.replacementChunks)a+=this.countLines(n.replacementContent),i+=this.countLines(n.targetContent);let s=t.targetFile||t.file||t.path||t.filePath;s&&this.tracker.recordFileChange(s,a,i)}}catch(a){console.warn("Failed to record code stats",a)}}recordError(e,t,a=!1,i){this.tracker.emitEvent({type:"tool",runId:this.tracker.getRun().runId,id:i,phase:"error",name:e,message:(a?"[TERMINAL] ":"")+t,elapsedMs:this.tracker.elapsedMs()})}async runZoningSentinel(e,t){try{let{detectMigrationNeeds:a}=await Promise.resolve().then(()=>(Ar(),Bs)),{readFile:i}=await Promise.resolve().then(()=>(st(),Pr)),s=await i(e),{shouldMigrate:n,targetZone:o,reason:p}=a(e,s);return n?(this.tracker.emitEvent({type:"reasoning",runId:this.tracker.getRun().runId,text:`\u{1F6E1}\uFE0F ZENITH: Zoning Sentinel detected a leak in \`${e.split("/").pop()}\`.`,elapsedMs:this.tracker.elapsedMs()}),`\u26A0\uFE0F **Dependency Leak**: ${p}
511
+ Suggested Zone: \`${o}\`. Consider moving this file or refactoring its dependencies.`):e.includes("/domain/")&&(s.includes("/infrastructure/")||s.includes("/adapters/"))?`\u26A0\uFE0F **Architectural Heresy**: Domain layer should not depend on Infrastructure. Found infrastructure imports in \`${z1.basename(e)}\`.`:null}catch(a){return console.warn("[Zenith] Zoning Sentinel failed",a),null}}async runBuildSentinel(e){let t=jl(),a=t?.workspace.workspaceFolders?.[0].uri.fsPath||process.cwd();try{let{QualityGuardrailService:i}=await Promise.resolve().then(()=>(Ol(),$l));this.tracker.emitProgressUpdate("Initiating Sub-Atomic Integrity Audit... \u{1F6E1}\uFE0F");let s=await i.evaluate(a,e);if(s.surgicalMends>0&&this.tracker.emitEvent({type:"reasoning",runId:this.tracker.getRun().runId,text:`\u2728 SURGICAL MEND: Marie autonomously repaired ${s.surgicalMends} sub-atomic issue(s) in \`${z1.basename(e)}\`.`,elapsedMs:this.tracker.elapsedMs()}),!s.passed){this.tracker.emitEvent({type:"reasoning",runId:this.tracker.getRun().runId,text:`\u{1F9F1} SUB-ATOMIC REJECTION: Project integrity at risk (Score: ${s.score}/100).`,elapsedMs:this.tracker.elapsedMs()});let n=`\u{1F6A8} **SUB-ATOMIC INTEGRITY REJECTION** \u{1F6A8}
512
+
513
+ Marie has audited your change and found it architecturally or stylistically toxic.
514
+
515
+ `;return n+=`**Quality Score**: ${s.score}/100
516
+ `,n+=s.violations.map(o=>`- \u274C ${o}`).join(`
517
+ `),n+=`
518
+
519
+ **Action Required**: You must resolve these precision regressions. Use 'resolve_lint_errors' for location-specific data. Type sovereignty is absolute. \u{1F6A9}`,n}s.score<100&&this.tracker.emitProgressUpdate(`Sub-Atomic Audit Passed (Score: ${s.score}/100) \u2728`)}catch(i){if(console.warn("[Singularity] Sub-Atomic Guardrails failed",i),t){let n=t.languages.getDiagnostics(t.Uri.file(e)).filter(o=>o.severity===t.DiagnosticSeverity.Error);if(n.length>0)return`\u{1F6A8} **Build Regressions Detected**: ${n.length} error(s) found. Fix these immediately.`}}return null}};pa();Ke();var fn=class{constructor(e){this.provider=e}lastConfidence=1.2;consecutiveSuccesses=0;async evaluate(e,t,a){try{let i=a?.profile??L.getAscensionProfile(),s=a?.aggression??L.getAscensionIntensity(),n=a?.maxRequiredActions??L.getAscensionMaxRequiredActions(),o=Object.entries(t.errorHotspots).filter(([u,c])=>c>=2).map(([u,c])=>`${u}(${c}x)`).join(", ")||"None",p=`
520
+ [ASCENSION CONTEXT]
521
+ Memory Snapshot:
522
+ - Spirit Pressure (Flow): ${t.spiritPressure}/100
523
+ - Victory Streak: ${t.victoryStreak}
524
+ - Karma Drain (Errors): ${t.totalErrorCount}
525
+ - Curse Hotspots: ${o}
526
+ - Recent Echoes: ${t.recentFiles.slice(-5).join(", ")}
527
+ - Protocol: ${i}
528
+ - Intensity: ${s}
529
+ - Environment: ${t.environment}
530
+
531
+ [SOVEREIGN DUTIES]
532
+ Your decree integrates Strategic Trajectory, Quality Audit, and Stability Guardianship.
533
+
534
+ Return guidance in the exact structure below:
535
+ Strategy: EXECUTE|DEBUG|RESEARCH|HYPE|PANIC
536
+ Urgency: LOW|MEDIUM|HIGH
537
+ Confidence: 0.5-3.0
538
+ Structural Uncertainty: YES|NO
539
+ Continue Directive: YES|NO
540
+ Required Actions: action1 | action2
541
+ Blocked By: blocker1 | blocker2
542
+ Stop Condition: landed|structural_uncertainty
543
+ Reason: <one concise line integrating Auditor/ISO findings>
544
+
545
+ Required Actions must be <= ${n}.`,d=await this.provider.createMessage({model:L.getModel(),system:nl,messages:[...e.map(u=>({role:u.role,content:u.content})),{role:"user",content:p}],max_tokens:900}),l=Qt.wrap(d.content).getText().substring(0,1200);return this.parseDecree(l,e,t,i,s,n,t.victoryStreak)}catch(i){return console.error("MarieAscendant evaluation error",i),{strategy:"EXECUTE",urgency:"MEDIUM",confidence:Math.max(1.2,this.lastConfidence*.8),isContinueDirective:this.hasContinueDirective(e),structuralUncertainty:!1,reason:"Fallback: Hero maintains course via instinct.",requiredActions:[],blockedBy:[],stopCondition:"landed",profile:L.getAscensionProfile(),raw:"Fallback decree (spirit pressure rift)"}}}parseDecree(e,t,a,i,s,n,o){let p=e.replace(/\r/g,""),d=p.match(/Strategy\s*:\s*(EXECUTE|DEBUG|RESEARCH|HYPE|PANIC)/i),l=p.match(/Urgency\s*:\s*(LOW|MEDIUM|HIGH)/i),u=p.match(/Confidence\s*:\s*([0-9]+(?:\.[0-9]+)?)/i),c=p.match(/Structural\s*Uncertainty\s*:\s*(YES|NO|TRUE|FALSE)/i),m=p.match(/Continue\s*Directive\s*:\s*(YES|NO|TRUE|FALSE)/i),h=p.match(/Required\s*Actions\s*:\s*(.+)/i),v=p.match(/Heroic\s*Vow\s*:\s*(.+)/i),f=p.match(/Karma\s*Bond\s*:\s*(.+)/i),g=p.match(/Sacrifice\s*Triggered\s*:\s*(YES|NO|TRUE|FALSE)/i),b=p.match(/Blocked\s*By\s*:\s*(.+)/i),A=p.match(/Stop\s*Condition\s*:\s*(landed|structural_uncertainty)/i),k=p.match(/Reason\s*:\s*(.+)/i),E=this.inferStrategy(p),N=d?.[1]?.toUpperCase()||E,V=l?.[1]?.toUpperCase()||this.inferUrgency(p),T=this.clampConfidence(Number(u?.[1]??this.inferConfidence(V,N))),w=this.parseBoolean(c?.[1])||this.inferUncertainty(p),_=this.parseBoolean(m?.[1])||this.hasContinueDirective(t)||/continue\s+immediately/i.test(p),M=this.parseDelimitedList(h?.[1]).slice(0,n),D=v?.[1]?.trim(),R=f?.[1]?.trim(),q=this.parseBoolean(g?.[1]),j=this.parseDelimitedList(b?.[1]).slice(0,4),W=A?.[1]?.toLowerCase()||(w?"structural_uncertainty":"landed");return D&&(T=Math.min(3,T+.5)),a.isAwakened&&(T=3),T=this.applyProfileTuning(T,i,s,w,o),_&&(N==="EXECUTE"||N==="HYPE")&&(T=Math.min(3,T+.3)),this.lastConfidence=T,N==="EXECUTE"||N==="HYPE"?this.consecutiveSuccesses++:this.consecutiveSuccesses=0,{strategy:N,urgency:V,confidence:T,structuralUncertainty:w,isContinueDirective:_,heroicVow:D,sacrificeTriggered:q,reason:(k?.[1]||this.defaultReason(N,V)).trim().substring(0,220),requiredActions:M,blockedBy:j,stopCondition:W,profile:i,raw:p.substring(0,1200)}}inferStrategy(e){return/uncertainty|unknown|unclear|ambiguous\s+structure|dependency\s+risk/i.test(e)?"DEBUG":/research|investigate|inspect/i.test(e)?"RESEARCH":/ship|launch|demo day|hype|singularity/i.test(e)?"HYPE":/panic|halt|assess\s+failure/i.test(e)?"PANIC":/limit\s*break|absolute\s*conviction|no\s*limit/i.test(e)?"LIMIT_BREAK":"EXECUTE"}inferUrgency(e){return/immediately|now|urgent|critical momentum|no hesitation/i.test(e)?"HIGH":/careful|cautious|stability/i.test(e)?"LOW":"MEDIUM"}inferConfidence(e,t){return t==="HYPE"?2:t==="PANIC"?.5:e==="HIGH"?1.9:e==="LOW"?1:1.5}inferUncertainty(e){return/structural\s+uncertainty|critical unknown|not enough context|missing wiring/i.test(e)}defaultReason(e,t){return`Hero signal: ${e} with ${t.toLowerCase()} urgency.`}parseBoolean(e){return e?["YES","TRUE"].includes(e.toUpperCase()):!1}clampConfidence(e){return Number.isFinite(e)?Math.min(3,Math.max(.5,e)):1.2}applyProfileTuning(e,t,a,i,s){let n=1;t==="demo_day"&&(n=1.2),t==="recovery"&&(n=.9);let o=Math.min(.5,(s||0)*.05),p=e*n*a*(1+o);i&&(p*=.85);let d=this.lastConfidence*.15;return p+=d,this.clampConfidence(p)}parseDelimitedList(e){return e?/^none$/i.test(e.trim())?[]:e.split(/[|,;]/).map(t=>t.trim()).filter(Boolean).slice(0,6):[]}hasContinueDirective(e){let t=[...e].reverse().find(a=>a?.role==="user"&&typeof a?.content=="string");return t?/\bcontinue\b/i.test(t.content):!1}};var gi=class{constructor(e){this.tracker=e}toolsInFlight=new Map;getLock(e){let t=this.toolsInFlight.get(e);return t||(t={write:null,reads:new Set},this.toolsInFlight.set(e,t)),t}async acquireLock(e,t,a,i){let s=this.getLock(e);if(i&&s.ownerContextId===i)return;let n=Date.now(),o=async p=>{if(!p)return;let d=setInterval(()=>{let c=Date.now()-n;c>5e3&&(console.warn(`[MarieLockManager] SLOW LOCK: Acquisition on ${e} taking ${c}ms...`),this.tracker&&this.tracker.emitEvent({type:"reasoning",runId:this.tracker.getRun().runId,text:`\u26A0\uFE0F SLOW LOCK: Acquisition on ${e} is delayed...`,elapsedMs:this.tracker.elapsedMs()}))},5e3),l,u=new Promise((c,m)=>l=setTimeout(()=>m(new Error(`Extreme Stability: Lock Acquisition Timeout on ${e}`)),3e4));try{return await Promise.race([p,u])}finally{clearInterval(d),clearTimeout(l)}};if(t)for(s.write&&await o(s.write),await o(Promise.allSettled(Array.from(s.reads))),s=this.getLock(e);s.write||s.reads.size>0;){if(a?.aborted)throw new Error("Aborted while waiting for lock");s.write&&await o(s.write),s.reads.size>0&&await o(Promise.allSettled(Array.from(s.reads))),s=this.getLock(e)}else s.write&&await o(s.write)}registerExecution(e,t,a,i){let s=this.getLock(e);t?(s.write=a,i&&(s.ownerContextId=i)):s.reads.add(a),a.finally(()=>{this.releaseLock(e,t,a,i)})}releaseLock(e,t,a,i){let s=this.toolsInFlight.get(e);s&&(t?s.write===a&&(s.write=null,s.ownerContextId===i&&(s.ownerContextId=void 0)):s.reads.delete(a),!s.write&&s.reads.size===0&&this.toolsInFlight.delete(e))}async waitForAll(){let e=[];for(let t of Array.from(this.toolsInFlight.values()))t.write&&e.push(t.write),t.reads.forEach(a=>e.push(a));await Promise.allSettled(e)}};var Pe=class{static repairJsonDetailed(e){if(typeof e!="string")return{repaired:"{}",wasFixed:!1};let t=e.trim();if(!t)return{repaired:"{}",wasFixed:!1};let a=!1,i=t;t=t.replace(/'/g,'"');let s=!1,n=[],o=0;for(;o<t.length;){let l=t[o],c=(o>0?t[o-1]:"")==="\\";if(l==='"'&&!c)s=!s;else if(!s){if(l==="{"||l==="[")n.push(l);else if(l==="}"||l==="]"){let m=l==="}"?"{":"[";n.length>0&&n[n.length-1]===m&&n.pop()}}o++}s&&(t+='"');let p=n.length>0;for(;n.length>0;){let l=n.pop();l==="{"?t+="}":l==="["&&(t+="]")}t=t.replace(/([{,]\s*)([a-zA-Z0-9_$]+)(\s*):/g,'$1"$2"$3:');let d=/,\s*[}\]]/.test(t);return t=t.replace(/,\s*([}\]])/g,"$1"),a=t!==i||p||d||s,{repaired:t,wasFixed:a}}static repairJson(e){return this.repairJsonDetailed(e).repaired}static parseCache=new Map;static PARSE_CACHE_MAX=100;static safeParseJson(e){let t=this.parseCache.get(e);if(t)return t.result;let{repaired:a,wasFixed:i}=this.repairJsonDetailed(e),s=JSON.parse(a);if(this.parseCache.set(e,{result:s,wasFixed:i}),this.parseCache.size>this.PARSE_CACHE_MAX){let n=this.parseCache.keys().next().value;n&&this.parseCache.delete(n)}return s}static safeParseJsonDetailed(e){let t=this.parseCache.get(e);if(t)return t;let{repaired:a,wasFixed:i}=this.repairJsonDetailed(e),n={result:JSON.parse(a),wasFixed:i};if(this.parseCache.set(e,n),this.parseCache.size>this.PARSE_CACHE_MAX){let o=this.parseCache.keys().next().value;o&&this.parseCache.delete(o)}return n}static extractToolCall(e){if(typeof e!="string")return null;let t=e.trim();if(!t||t.length<5)return null;let a=e,i=!1,s="";if(a=a.replace(/<thought>[\s\S]*?<\/thought>/g,""),/^\s*<\|tool_calls_section_begin\|>\s*<\|tool_calls_section_end\|>\s*$/.test(a))return console.warn("[Marie] JsonUtils: Empty tool section markers detected"),null;try{let m=a.indexOf("{"),h=a.lastIndexOf("}");if(m!==-1&&h>m){let v=a.substring(m,h+1),f=JSON.parse(v);if(f.tool_calls&&Array.isArray(f.tool_calls)&&f.tool_calls.length>0){let g=f.tool_calls[0];if(g.type&&g.arguments)return console.log("[Marie] JsonUtils: Found JSON tool_calls format"),{name:g.type,input:g.arguments,id:g.id,repaired:!0}}}}catch{}let o=a.match(/<(?:\|tool_call_begin\|>|\|tool_calls_section_begin\|>)\s*([\w.]+)(?::\d+)?(?:\s*<\|tool_call_arguments?_begin\|>)?\s*([\s\S]*?)(?:\s*(?:<\|tool_call_end\|>|<\|tool_calls_section_end\|>)|$)/);if(o){let m=o[2];if(!m||!m.trim())return console.warn("[Marie] JsonUtils: Tool section markers found but no content between them"),null;s=o[1].replace(/^functions\./,""),a=m,i=!0}else{let m=a.match(/([\w.]+)(?::(\d+))?>(\{[\s\S]*?)(?:$)/);if(m){s=m[1].replace(/^functions\./,"");let v=m[2]?`call_${m[2]}`:void 0;a=m[3];let{repaired:f,wasFixed:g}=this.repairJsonDetailed(a);try{let b=JSON.parse(f);return{name:s,input:b,id:v,repaired:g}}catch{}}let h=a.match(/<tool_code>([\s\S]*?)(?:<\/tool_code>|$)/);if(h)a=h[1];else{let v=a.match(/<tool_call>([\s\S]*?)(?:<\/tool_call>|$)/);if(v)a=v[1];else{let f=a.match(/<tool>([\s\S]*?)(?:<\/tool>|$)/);if(f)a=f[1];else{let g=a.match(/<invoke\s+([^>]*?name=["']?([^"'\s>]+)["']?[^>]*?)>/i);if(g){s=g[2];let b=g.index,A=a.substring(b+g[0].length),k=A.lastIndexOf("</invoke>"),E=k!==-1?A.substring(0,k):A,N={},V=/<parameter\s+[^>]*?name=["']?([^"'\s>]+)["']?[^>]*?>/gi,T;for(;(T=V.exec(E))!==null;){let w=T[1],_=T.index+T[0].length,M=E.indexOf("</parameter>",_),R=(M!==-1?E.substring(_,M):E.substring(_)).trim();if(R.startsWith("{")||R.startsWith("["))try{N[w]=JSON.parse(this.repairJson(R))}catch{N[w]=R}else R.toLowerCase()==="true"?N[w]=!0:R.toLowerCase()==="false"?N[w]=!1:!isNaN(Number(R))&&R!==""?N[w]=Number(R):N[w]=R}if(Object.keys(N).length>0)return{name:s,input:N,repaired:!0};a=E}}}}}let p=/```/.test(a);p&&(a=a.replace(/```(?:json)?/g,"").replace(/```/g,""));let d=a.indexOf("{"),l=a.lastIndexOf("}"),u=a.match(/\[Tool Use:\s*([\w.]+)\s*\]/i);if(u&&!s&&(s=u[1],console.log(`[Marie] JsonUtils: Found bracketed tool name: ${s}`)),d===-1)return s?{name:s,input:{},repaired:!0}:null;let c=a.substring(d);try{let{repaired:m,wasFixed:h}=this.repairJsonDetailed(c),v=JSON.parse(m);if(i)return{name:s,input:v,repaired:h||p};let f=this.normalizeToolCall(v);if(f)return f.repaired=h||p||d>0,f;if(s)return{name:s,input:v,repaired:h||p||d>0}}catch{}return null}static normalizeToolCall(e){if(e.tool_name&&e.tool_input)return{name:e.tool_name,input:e.tool_input,id:e.tool_id};if(e.name&&e.arguments)return{name:e.name,input:typeof e.arguments=="string"?this.safeParseJson(e.arguments):e.arguments,id:e.id};if(e.name&&e.input)return{name:e.name,input:e.input,id:e.id};let t=Object.keys(e);return t.length===1&&typeof e[t[0]]=="object"&&!Array.isArray(e[t[0]])?{name:t[0],input:e[t[0]]}:null}};var Vl={write_file:"write_to_file",edit_file:"replace_file_content",replace_in_file:"replace_file_content",read_files:"read_file",list_files:"list_dir",search_files:"grep_search",execute_command:"run_command",get_folder_tree:"get_folder_structure",multi_replace:"multi_replace_file_content",multi_edit_file:"multi_replace_file_content",delete_file:"discard_file",discard_file:"delete_file"},gn=class{constructor(e){this.toolRegistry=e}async performFuzzyRepair(e,t,a,i,s,n){if(Vl[e.name]){let u=Vl[e.name];if(this.toolRegistry.getTools().some(c=>c.name===u))return a.emitEvent({type:"reasoning",runId:a.getRun().runId,text:`\u{1FA79} PROACTIVE REPAIR: Mapping hallucinated tool: ${e.name} -> ${u}`,elapsedMs:a.elapsedMs()}),e.name=u,e.repaired=!0,await i.process(e,n)}let o=this.toolRegistry.getTools(),p="",d=0;for(let u of o){let c=Me.similarity(e.name,u.name);c>d&&(d=c,p=u.name)}let l=p?{name:p,similarity:d}:null;if(l&&l.similarity>.8&&l.name!==e.name)return a.emitEvent({type:"reasoning",runId:a.getRun().runId,text:`\u{1FA79} FUZZY REPAIR: Fixing tool name hallucination: ${e.name} -> ${l.name}`,elapsedMs:a.elapsedMs()}),e.name=l.name,await i.process(e,n);if(t.includes("ENOENT")||t.includes("not found")){let u=e.input?.path||e.input?.targetFile||e.input?.file;if(u&&typeof u=="string"){let c=s.recentFiles||[],m="",h=0;for(let f of c){let g=Me.similarity(u,f);g>h&&(h=g,m=f)}let v=m?{path:m,similarity:h}:null;if(v&&v.similarity>.85&&v.path!==u)return a.emitEvent({type:"reasoning",runId:a.getRun().runId,text:`\u{1FA79} FUZZY REPAIR: Fixing path hallucination: ${u} -> ${v.path}`,elapsedMs:a.elapsedMs()}),e.input.path&&(e.input.path=v.path),e.input.targetFile&&(e.input.targetFile=v.path),e.input.file&&(e.input.file=v.path),await i.process(e,n)}}return null}repairJsonString(e){let{repaired:t}=Pe.repairJsonDetailed(e);try{return JSON.parse(t),t}catch{return e}}};var he=$(require("vscode"),1);var yn=class r{buffers=new Map;static KEY_PATTERNS=new Map([['"path":',/[{"\s,]"path":/],['"content":',/[{"\s,]"content":/],['"old_content":',/[{"\s,]"old_content":/],['"search":',/[{"\s,]"search":/],['"replace":',/[{"\s,]"replace":/]]);static LINE_START_REGEX=/[{"\s,]"line_start"\s*:\s*(\d+)/;append(e,t){let a=(this.buffers.get(e)||"")+t;if(a.endsWith("\\")){let i=0;for(let s=a.length-1;s>=0&&a[s]==="\\";s--)i++;if(i%2!==0)return this.buffers.set(e,a.slice(0,-1)),this.parse(a.slice(0,-1))}return this.buffers.set(e,a),this.parse(a)}parse(e){let t={};t.path=this.extractString(e,'"path":'),t.content=this.extractString(e,'"content":'),t.old_content=this.extractString(e,'"old_content":'),t.search=this.extractString(e,'"search":'),t.replace=this.extractString(e,'"replace":');let a=e.match(r.LINE_START_REGEX);if(a){let i=parseInt(a[1]);isNaN(i)||(t.line_start=i)}return t}extractString(e,t){let a=e.indexOf(t);if(a===-1||this.isInsideString(e,a))return;if(a>0){let p=e[a-1];if(!["{",","," "," ",`
546
+ `,"\r"].includes(p))return}let i=a+t.length,s=e.indexOf('"',i);if(s===-1)return;let n=e.substring(s+1),o=this.findClosingQuote(n);return o!==-1?this.unescape(n.substring(0,o)):this.unescape(n)}isInsideString(e,t){let a=!1,i=!1;for(let s=0;s<t;s++){let n=e[s];if(i){i=!1;continue}if(n==="\\"){i=!0;continue}n==='"'&&(a=!a)}return a}findClosingQuote(e){for(let t=0;t<e.length;t++)if(e[t]==='"'){let a=0;for(let i=t-1;i>=0&&e[i]==="\\";i--)a++;if(a%2===0)return t}return-1}unescape(e){return e.replace(/\\(u[0-9a-fA-F]{4}|[^u])/g,(t,a)=>{if(a.startsWith("u")){let i=a.substring(1);return i.length===4?String.fromCharCode(parseInt(i,16)):`\\${a}`}switch(a){case"n":return`
547
+ `;case"r":return"\r";case"t":return" ";case"b":return"\b";case"f":return"\f";case'"':return'"';case"\\":return"\\";case"/":return"/";default:return a}})}clear(e){this.buffers.delete(e)}clearAll(){this.buffers.clear()}};var ql=$(require("vscode"),1),va=class r{static instance;scm;static MAX_DIFF_URIS=200;diffUris=new Map;constructor(e){this.scm=ql.scm.createSourceControl("marie","Marie Proposed Edits"),this.scm.quickDiffProvider={provideOriginalResource:t=>this.diffUris.get(t.toString())},e.subscriptions.push(this.scm),r.instance=this}static getInstance(){return this.instance}registerDiff(e,t){if(this.diffUris.size>=r.MAX_DIFF_URIS){let a=this.diffUris.keys().next().value;a&&this.diffUris.delete(a)}this.diffUris.set(e.toString(),t)}clear(e){this.diffUris.delete(e.toString())}clearAll(){this.diffUris.clear()}};var wa=class{static parser=new yn;static lastUpdate=0;static activeGhosts=new Map;static ghostDecoration=he.window.createTextEditorDecorationType({before:{color:new he.ThemeColor("editorGhostText.foreground"),fontStyle:"italic",margin:"0 0.5em 0 0"},opacity:"0.4",backgroundColor:new he.ThemeColor("editorGhostText.background"),isWholeLine:!0});static init(e){e.subscriptions.push(he.window.onDidChangeVisibleTextEditors(()=>{new Set(Array.from(this.activeGhosts.values()).map(a=>a.uri)).forEach(a=>this.refreshDecorations(he.Uri.parse(a)))}))}static thoughtDecoration=he.window.createTextEditorDecorationType({after:{color:new he.ThemeColor("editorCodeLens.foreground"),fontStyle:"italic",margin:"0 0 0 2em"},isWholeLine:!0});static showThought(e,t){let a=he.window.activeTextEditor;if(!a)return;let i=a.selection.active.line,s={range:new he.Range(i,0,i,0),renderOptions:{after:{contentText:` // \u{1F9E0} ${e}: ${t}`}}};a.setDecorations(this.thoughtDecoration,[s]);let n=`${a.document.uri.toString()}:${i}`;this.thoughtTimeouts.has(n)&&clearTimeout(this.thoughtTimeouts.get(n));let o=setTimeout(()=>{a.setDecorations(this.thoughtDecoration,[]),this.thoughtTimeouts.delete(n)},4e3);this.thoughtTimeouts.set(n,o)}static pendingDeltas=new Map;static updateTimer=null;static handleDelta(e,t,a){if(!["write_file","replace_in_file","write_to_file","replace_file_content","multi_replace_file_content"].includes(t))return;let i=this.pendingDeltas.get(e)||"";this.pendingDeltas.set(e,i+a),this.updateTimer||(this.updateTimer=setTimeout(()=>this.flushUpdates(),50))}static flushUpdates(){this.updateTimer=null;for(let[e,t]of Array.from(this.pendingDeltas.entries())){let a=this.parser.append(e,t),i=a.content!==void 0||a.replace!==void 0;if(a.path&&i){let s=he.Uri.file(a.path);this.updateGhost(e,s,a)}}this.pendingDeltas.clear()}static updateGhost(e,t,a){let i=he.window.visibleTextEditors.filter(l=>l.document.uri.toString()===t.toString());if(i.length===0)return;let s=i[0],n=0;if(a.line_start!==void 0)n=Math.max(0,a.line_start-1);else if(a.old_content||a.search){let u=(a.search||a.old_content||"").substring(0,30);if(u){for(let c=0;c<s.document.lineCount;c++)if(s.document.lineAt(c).text.includes(u)){n=c;break}}}let o=new he.Range(n,0,n,0),d=` $(sync~spin) Proposed: ${(a.replace||Me.extractText(a.content)||"").substring(0,80).replace(/\n/g," ")}...`;this.activeGhosts.set(e,{uri:t.toString(),range:o,text:d}),this.refreshDecorations(t),va.getInstance()?.registerDiff(t,t)}static refreshDecorations(e){let t=e.toString(),i=Array.from(this.activeGhosts.values()).filter(s=>s.uri===t).map(s=>({range:s.range,renderOptions:{before:{contentText:s.text}}}));he.window.visibleTextEditors.filter(s=>s.document.uri.toString()===t).forEach(s=>s.setDecorations(this.ghostDecoration,i))}static clear(e){let t=this.activeGhosts.get(e);t&&(this.activeGhosts.delete(e),this.refreshDecorations(he.Uri.parse(t.uri)),Array.from(this.activeGhosts.values()).some(i=>i.uri===t.uri)||va.getInstance()?.clear(he.Uri.parse(t.uri))),this.parser.clear(e)}static clearAll(){let e=new Set(Array.from(this.activeGhosts.values()).map(t=>t.uri));this.activeGhosts.clear(),this.parser.clearAll(),e.forEach(t=>this.refreshDecorations(he.Uri.parse(t))),va.getInstance()?.clearAll()}static thoughtTimeouts=new Map;static dispose(){this.ghostDecoration.dispose(),this.thoughtDecoration.dispose(),this.thoughtTimeouts.forEach(e=>clearTimeout(e)),this.thoughtTimeouts.clear(),this.updateTimer&&clearTimeout(this.updateTimer)}};var vn=class{constructor(e){this.tracker=e}heartbeatTimer=null;watchdogTimer=null;startTurnWatchdog(e){return this.stopTurnWatchdog(),this.watchdogTimer=setTimeout(()=>{console.error("[MariePulseService] LOCK RECOVERY: AI Engine lock held for >120s. Force-releasing..."),this.tracker.emitEvent({type:"reasoning",runId:this.tracker.getRun().runId,text:"\u{1F6A8} LOCK RECOVERY: Stale reasoning process detected (>120s). Force-releasing engine lock.",elapsedMs:this.tracker.elapsedMs()}),e()},12e4),this.watchdogTimer}stopTurnWatchdog(){this.watchdogTimer&&(clearTimeout(this.watchdogTimer),this.watchdogTimer=null)}startHeartbeat(){this.stopHeartbeat(),this.heartbeatTimer=setTimeout(()=>{this.tracker.emitEvent({type:"reasoning",runId:this.tracker.getRun().runId,text:"\u{1F6A8} PLANETARY STABILITY HAZARD: AI reasoning hang detected (>60s).",elapsedMs:this.tracker.elapsedMs()})},6e4)}stopHeartbeat(){this.heartbeatTimer&&(clearTimeout(this.heartbeatTimer),this.heartbeatTimer=null)}cleanup(){this.stopHeartbeat(),this.stopTurnWatchdog(),wa.clearAll()}};var wn=class{static lag=0;static interval=null;static lastTick=Date.now();static cooldownActive=!1;static start(){this.interval||(this.lastTick=Date.now(),this.interval=setInterval(()=>{let e=Date.now(),t=e-this.lastTick-1e3;this.lag=Math.max(0,t),this.lastTick=e,this.lag>150?(console.warn(`[MarieStabilityMonitor] CRITICAL EVENT LOOP LAG: ${this.lag}ms. Triggering UI preservation cooldown.`),this.cooldownActive=!0):this.lag<50&&(this.cooldownActive=!1)},1e3),this.interval.unref&&this.interval.unref())}static stop(){this.interval&&(clearInterval(this.interval),this.interval=null)}static isHighPressure(){let e=process.memoryUsage(),t=e.heapUsed/e.heapTotal>.85;return this.lag>100||t||this.cooldownActive}static getLag(){return this.lag}static getMetrics(){let e=process.memoryUsage();return{lagMs:this.lag,heapUsedMb:Math.round(e.heapUsed/1024/1024),heapTotalMb:Math.round(e.heapTotal/1024/1024),cooldown:this.cooldownActive}}};var bn=class r{iterations=[];static MAX_SELF_REFLECTIONS=3;actionFrozen=!1;think(e,t){return this.iterations.length>=r.MAX_SELF_REFLECTIONS?!1:(this.iterations.push({iteration:this.iterations.length+1,thought:e,proposedAction:t}),!0)}freezeAction(){this.actionFrozen=!0}isActionFrozen(){return this.actionFrozen}validateOutput(e,t){return t(e)}getIterations(){return this.iterations}getIterationCount(){return this.iterations.length}isExhausted(){return this.iterations.length>=r.MAX_SELF_REFLECTIONS}produceResult(e,t){let a=this.validateOutput(e,t);return{iterations:this.iterations,finalOutput:e,schemaValidated:a,actionFrozen:this.actionFrozen}}reset(){this.iterations=[],this.actionFrozen=!1}};function Pu(r){return r>0?"continuation":"full"}var yi=class r{constructor(e,t,a,i,s,n){this.provider=e;this.toolRegistry=t;this.approvalRequester=a;this.providerFactory=i;this.fs=s;this.ghostPort=n;this.ascendant=new fn(this.provider),this.state=this.initializeState(),this.lockManager=new gi,this.toolMender=new gn(this.toolRegistry),this.reasoningBudget=new bn}static CONTENT_BUFFER_MAX_BYTES=1024*1024;ascendant;state;lockManager;toolMender;pulseService;reasoningBudget;toolCallCounter=0;contentBuffer="";lastContentEmit=0;static activeTurn=null;disposed=!1;initializeState(){return{errorHotspots:{},totalErrorCount:0,spiritPressure:50,recentFiles:[],toolHistory:[],techniqueExecutions:[],victoryStreak:0,shakyResponseDensity:0,writtenFiles:[],actionDiffs:{},wiringAlerts:[],mood:"STABLE",isSpiritBurstActive:!1,isAwakened:!1,karmaBond:void 0,panicCoolDown:0,environment:this.fs?.type==="vscode"?"vscode":"cli",lastFailedFile:void 0}}async chatLoop(e,t,a,i,s=0,n=0,o=""){if(this.disposed)throw new Error("MarieEngine has been disposed.");if(console.log(`[MarieEngine] chatLoop started at depth ${n}. Accumulated content length: ${o.length}`),r.activeTurn){console.warn("[MarieEngine] TURN COLLISION DETECTED. Waiting for previous turn to finalize..."),t.emitEvent({type:"reasoning",runId:t.getRun().runId,text:"\u23F3 TURN COLLISION: Another AI turn is active. Queuing reasoning loop...",elapsedMs:t.elapsedMs()});let l=this.ensurePulseService(t).startTurnWatchdog(()=>{r.activeTurn=null});try{await r.activeTurn}finally{l&&clearTimeout(l)}}let p=()=>{};r.activeTurn=new Promise(d=>{p=d});try{let d=await this._executeChatLoop(e,t,a,i,s,n,o);return console.log(`[MarieEngine] chatLoop finished at depth ${n}. Final content length: ${d.length}`),d}finally{p(),r.activeTurn=null}}async _executeChatLoop(e,t,a,i,s=0,n=0,o=""){let p=this.ensurePulseService(t);if(n>20)throw new Error("Extreme Stability Alert: Maximum chatLoop depth reached. Possible infinite reasoning loop detected.");t.resetReasoningBudget(),this.lockManager=new gi(t);let d=new mn(t,this.ghostPort);wn.start(),t.getRun().steps===0&&!t.getRun().isResuming&&t.emitEvent({type:"reasoning",runId:t.getRun().runId,text:"\u{1F525} Ascension protocol initiated. Hero's conviction rising.",elapsedMs:t.elapsedMs()});let l=this.state.isSpiritBurstActive,u=this.state.isAwakened;this.state.isSpiritBurstActive=this.state.spiritPressure>85,this.state.isAwakened=this.state.spiritPressure>95,this.state.isAwakened&&!u?t.emitEvent({type:"reasoning",runId:t.getRun().runId,text:"\u2728 AWAKENED! Ultra Instinct achieved. Full codebase sovereignty established.",elapsedMs:t.elapsedMs()}):this.state.isSpiritBurstActive&&!l&&t.emitEvent({type:"reasoning",runId:t.getRun().runId,text:"\u{1F4A5} SPIRIT BURST! Conviction is absolute. Auto-approval mandate expanded.",elapsedMs:t.elapsedMs()}),Date.now()-(this.state.techniqueExecutions.slice(-1)[0]?.timestamp||0)>3e5&&(this.state.spiritPressure=Math.max(30,this.state.spiritPressure-10));let c=new hn(this.toolRegistry,t,async(w,_)=>this.shouldAutoApprove(w,_)?(t.emitEvent({type:"checkpoint",runId:t.getRun().runId,status:"approved",toolName:w,summary:{what:"Ascension Auto-Approved",why:"Heroic Conviction",impact:"Maximum Speed"},elapsedMs:t.elapsedMs()}),!0):this.approvalRequester(w,_),this.state,this.fs),m="",h=new Map,v=new Map,f=[],g=0,b=0,A=Date.now(),k=30,E=async w=>{if(!this.toolRegistry.getTool(w.name))return this.updateShakyResponse(),{type:"tool_result",tool_use_id:w.id,content:`Error: Tool "${w.name}" not found.`};let M=Date.now();p.startHeartbeat();try{t.getRun().activeObjectiveId==="understand_request"&&(t.setObjectiveStatus("understand_request","completed"),t.setObjectiveStatus("execute_plan","in_progress"),t.getRun().activeObjectiveId="execute_plan",t.emitProgressUpdate(`Executing technique: ${w.name}`));let D=await c.process(w,i);typeof D=="string"&&D.length>1024*1024&&(D=D.substring(0,1024*1024)+`
548
+
549
+ \u{1F6A8} Truncated at 1MB.`);let R=Date.now()-M,q=w.input?.path||w.input?.targetFile||w.input?.file;return typeof D=="string"&&D.startsWith("Error")?(this.handleFailure(t,w.name,D,q),g++):this.handleSuccess(t,w.name,R,q),this.toolCallCounter++,{type:"tool_result",tool_use_id:w.id,content:D}}finally{p.stopHeartbeat()}},N=Pu(n),V=new cn(this.provider,this.toolRegistry,a,e,t,this.providerFactory,N);try{let w=V.executeLoop(e,i);for await(let _ of w)if(A=Date.now(),p.startHeartbeat(),process.env.MARIE_DEBUG&&console.log(`[Engine Debug] AI Event: ${_.type}`,_.type==="content_delta"?`(${_.text.length} chars)`:""),d.dispatch(_),_.type==="content_delta"){if(m+=_.text,this.contentBuffer+=_.text,this.contentBuffer.length>=r.CONTENT_BUFFER_MAX_BYTES)break}else if(_.type==="tool_call_delta"){let D=h.get(_.index);if(D?(_.id&&!D.id&&(D.id=_.id),_.name&&!D.name&&(D.name=_.name)):(D={id:_.id,name:_.name,inputString:""},h.set(_.index,D)),_.argumentsDelta&&(D.inputString+=_.argumentsDelta),D.name&&this.isLikelyCompleteJson(D.inputString)){let R=this.tryParseToolInput(D.inputString,D.name,v);if(!R)continue;if(h.delete(_.index),b++,b>k)break;let q=R.path||R.targetFile||R.file||"GLOBAL",j=["write_to_file","replace_file_content","multi_replace_file_content","run_command","delete_file"].includes(D.name);await this.lockManager.acquireLock(q,j,i,t.getRun().runId);let W=await E({id:D.id,name:D.name,input:R});f.push(W)}}else _.type==="usage"&&(t.getRun().usage=_.usage)}finally{p.cleanup()}for(let[w,_]of h.entries())if(_.name){let M=this.tryParseToolInput(_.inputString,_.name,v);if(M){b++;let D=M.path||M.targetFile||M.file||"GLOBAL",R=["write_to_file","replace_file_content","multi_replace_file_content","run_command","delete_file"].includes(_.name);await this.lockManager.acquireLock(D,R,i,t.getRun().runId);let q=await E({id:_.id,name:_.name,input:M});f.push(q)}}h.clear();let T=o+m;if(console.log(`[MarieEngine] Depth ${n}: Turn content length: ${m.length}. New accumulated length: ${T.length}`),this.contentBuffer.length>0&&(this.contentBuffer=""),await this.lockManager.waitForAll(),b>0){e.push({role:"user",content:f});let w=await this.ascendant.evaluate(e,this.state);return this.state.lastDecree=w,t.emitEvent({type:"reasoning",runId:t.getRun().runId,text:`\u26A1 Protocol Decree: ${w.strategy} @ ${w.confidence.toFixed(2)} \u2014 ${w.reason}`,elapsedMs:t.elapsedMs()}),this.calibrateStrategicTrajectory(w,t),w.strategy==="PANIC"&&(this.state.panicCoolDown=3,e.push({role:"user",content:"\u{1F6A8} SYSTEM PANIC: Instability detected. Re-evaluating ascension trajectory."})),w.strategy==="LIMIT_BREAK"?(t.emitEvent({type:"reasoning",runId:t.getRun().runId,text:"\u26A1 LIMIT BREAK! Bypassing recursive safety seals for peak momentum.",elapsedMs:t.elapsedMs()}),a(t.getRun()).catch(_=>console.error("History Save Error:",_)),await this._executeChatLoop(e,t,a,i,g>0?s+1:0,n,T)):(w.heroicVow&&(t.emitEvent({type:"reasoning",runId:t.getRun().runId,text:`\u{1F5E1}\uFE0F HEROIC VOW: "${w.heroicVow}". Spirit Pressure surging!`,elapsedMs:t.elapsedMs()}),this.state.spiritPressure=Math.min(100,this.state.spiritPressure+20)),w.sacrificeTriggered&&(t.emitEvent({type:"reasoning",runId:t.getRun().runId,text:"\u{1F56F}\uFE0F HEROIC SACRIFICE! Resetting soul for a final, absolute strike.",elapsedMs:t.elapsedMs()}),this.state.spiritPressure=50,w.confidence=3),this.suggestSelfHealing(t,e),a(t.getRun()).catch(_=>console.error("History Save Error:",_)),await this._executeChatLoop(e,t,a,i,g>0?s+1:0,n+1,T))}return t.setObjectiveStatus("execute_plan","completed"),t.setObjectiveStatus("deliver_result","completed"),t.emitEvent({type:"reasoning",runId:t.getRun().runId,text:"\u2728 Convergence achieved. The pattern sparks joy.",elapsedMs:t.elapsedMs()}),d.clear(),T}handleSuccess(e,t,a,i){this.state.victoryStreak++,this.state.totalErrorCount=0,this.state.spiritPressure=Math.min(100,this.state.spiritPressure+10),this.state.techniqueExecutions.push({name:t,durationMs:a,success:!0,timestamp:Date.now(),filePath:i}),this.state.toolHistory.push(t),this.state.victoryStreak%3===0&&e.emitEvent({type:"reasoning",runId:e.getRun().runId,text:`\u2728 Technique Mastery! ${t} executed perfectly. Victory Streak: ${this.state.victoryStreak}.`,elapsedMs:e.elapsedMs()}),i&&!this.state.recentFiles.includes(i)&&(this.state.recentFiles.push(i),this.state.recentFiles.length>10&&this.state.recentFiles.shift(),this.proactiveContextAnchoring(i,e))}handleFailure(e,t,a,i){this.state.victoryStreak=0,this.state.spiritPressure=Math.max(0,this.state.spiritPressure-20),this.state.techniqueExecutions.push({name:t,durationMs:0,success:!1,timestamp:Date.now(),filePath:i});let s=(this.state.errorHotspots[i||"system"]||0)+1;i&&(this.state.errorHotspots[i]=s,this.state.totalErrorCount++,this.state.lastFailedFile=i),e.emitEvent({type:"reasoning",runId:e.getRun().runId,text:`\u26A0\uFE0F Technique Falter! ${t} failed in ${i||"system"}. Resistance: ${s}x. Regrouping...`,elapsedMs:e.elapsedMs()})}updateShakyResponse(){this.state.shakyResponseDensity=Math.min(1,this.state.shakyResponseDensity+.2)}shouldAutoApprove(e,t){if(["read_file","view_file","list_dir","grep_search","search_web","get_file_diagnostics"].includes(e))return!0;let i=this.state.spiritPressure,s=this.state.victoryStreak;return!!(i>70&&s>5||this.state.isAwakened&&s>10||this.state.isSpiritBurstActive&&s>3&&!["delete_file","run_command"].includes(e))}tryParseToolInput(e,t,a){try{return JSON.parse(e)}catch{let i=this.toolMender.repairJsonString(e);try{return JSON.parse(i)}catch{return null}}}isLikelyCompleteJson(e){let t=e.trim();if(!t||!t.startsWith("{")&&!t.startsWith("["))return!1;let a=0,i=!1;for(let s=0;s<t.length;s++)t[s]==='"'&&t[s-1]!=="\\"&&(i=!i),i||((t[s]==="{"||t[s]==="[")&&a++,(t[s]==="}"||t[s]==="]")&&a--);return a===0&&t.length>=2}suggestSelfHealing(e,t){let a=this.state.spiritPressure,i=Object.entries(this.state.errorHotspots).filter(([s,n])=>n>=2);if(a<40||i.length>0){let s=i.map(([o])=>Ul.default.basename(o)).join(", "),n=a<40?"Low spirit pressure (instability detected)":`Repeated failures in: ${s}`;e.emitEvent({type:"reasoning",runId:e.getRun().runId,text:`\u{1F9EC} HIGH-CONVICTION RECOVERY: ${n}. Marie mandates a systemic audit.`,elapsedMs:e.elapsedMs()}),t.push({role:"user",content:`\u{1F6A8} **MANDATORY RECOVERY PROTOCOL**: Codebase stability has dropped below safety thresholds.
550
+ Reason: ${n}
551
+
552
+ You MUST now execute one of the following recovery tools before continuing your task:
553
+ 1. \`self_heal\`: Perform an autonomous systemic audit and auto-repair.
554
+ 2. \`resolve_lint_errors\`: Triage and fix persistent lint/build regressions.
555
+
556
+ Do not attempt to continue the previous objective until the garden has been restored to harmony.`})}}dispose(){this.disposed=!0,this.pulseService?.cleanup(),this.pulseService=void 0,this.contentBuffer=""}ensurePulseService(e){return this.pulseService||(this.pulseService=new vn(e)),this.pulseService}calibrateStrategicTrajectory(e,t){let a=t.getRun();if(e.strategy==="RESEARCH"||e.urgency==="HIGH"&&e.confidence>2){let i=a.totalPasses||3;i<10&&(a.totalPasses=i+1,t.emitEvent({type:"reasoning",runId:a.runId,text:`\u{1F30C} ZENITH: Autonomously expanded roadmap to ${a.totalPasses} passes. Focus sharpened: ${e.reason}`,elapsedMs:t.elapsedMs()}))}}async proactiveContextAnchoring(e,t){if(/Domain|Config|Service|Interface|types/i.test(e))try{let{ContextArchiveService:i}=await Promise.resolve().then(()=>(L1(),xl)),{readFile:s}=await Promise.resolve().then(()=>(st(),Pr)),n=await s(e);await i.getInstance().anchor({id:`proactive_${e.split("/").pop()}`,label:`Strategic: ${e.split("/").pop()}`,content:n.substring(0,2e3),type:"file_ref"}),t.emitEvent({type:"reasoning",runId:t.getRun().runId,text:`\u2693 ZENITH: Proactively anchored \`${e.split("/").pop()}\` to strategic memory.`,elapsedMs:t.elapsedMs()})}catch(i){console.warn("[Zenith] Failed proactive anchoring",i)}}};var _n=class{static MAX_DEPTH=10;static STRING_LIMIT=5e3;static BREADTH_LIMIT=100;static GLOBAL_MAX_SIZE=512*1024;static sanitize(e){let t=new WeakSet,a=0,i=(s,n)=>{if(a>this.GLOBAL_MAX_SIZE)return"[Global Size Limit Reached]";if(n>this.MAX_DEPTH)return"[Max Depth Reached]";if(s==null)return s;let o=typeof s;if(o==="string"){let p=Math.min(s.length,this.STRING_LIMIT);return a+=p,s.length>this.STRING_LIMIT?s.substring(0,this.STRING_LIMIT)+"... [Truncated]":s}if(o==="number")return a+=8,s;if(o==="boolean")return a+=4,s;if(o==="function")return"[Function]";if(o==="symbol")return"[Symbol]";if(o==="object"){if(t.has(s))return"[Circular Reference]";if(t.add(s),Array.isArray(s)){let u=s.slice(0,this.BREADTH_LIMIT).map(c=>i(c,n+1));return s.length>this.BREADTH_LIMIT&&u.push(`... [${s.length-this.BREADTH_LIMIT} items truncated]`),u}let p={},d=Object.keys(s),l=d.slice(0,this.BREADTH_LIMIT);for(let u of l)if(!(u.startsWith("_")||u==="extensionContext"||u==="provider"))try{a+=u.length,p[u]=i(s[u],n+1)}catch{p[u]="[Unreadable]"}return d.length>this.BREADTH_LIMIT&&(p._truncated=`${d.length-this.BREADTH_LIMIT} properties truncated`),p}return String(s)};return i(e,0)}};var Sn=class r{constructor(e,t){this.callbacks=e;this.run=t}reasoningEventCount=0;reasoningCharCount=0;static MAX_REASONING_EVENTS_PER_TURN=10;static MAX_REASONING_CHARS_PER_TURN=5e3;resetReasoningBudget(){this.reasoningEventCount=0,this.reasoningCharCount=0}isReasoningBudgetExhausted(){return this.reasoningEventCount>=r.MAX_REASONING_EVENTS_PER_TURN||this.reasoningCharCount>=r.MAX_REASONING_CHARS_PER_TURN}getRun(){return this.run}emitEvent(e){if(this.shouldDropEvent(e))return;if(e.type==="reasoning"){if(this.isReasoningBudgetExhausted())return;this.reasoningEventCount++;let a=e.text?.length||0;this.reasoningCharCount+=a;let i=r.MAX_REASONING_CHARS_PER_TURN-this.reasoningCharCount;i<0&&e.text&&(e.text=e.text.substring(0,Math.max(0,e.text.length+i))+"... [truncated]",this.reasoningCharCount=r.MAX_REASONING_CHARS_PER_TURN)}let t=_n.sanitize(e);this.callbacks?.onEvent?.(t)}eventCountInLastSecond=0;lastSecondTimestamp=Date.now();shouldDropEvent(e){let t=Date.now();return t-this.lastSecondTimestamp>1e3&&(this.eventCountInLastSecond=0,this.lastSecondTimestamp=t),this.eventCountInLastSecond++,this.eventCountInLastSecond>100&&(e.type==="reasoning"||e.type==="tool_delta")}setObjectiveStatus(e,t,a){let i=this.run.objectives.find(s=>s.id===e);i&&(i.status=t,a&&(i.context=a))}setObjectiveEvidence(e,t){let a=this.run.objectives.find(i=>i.id===e);a&&(a.verificationEvidence=t)}getPendingObjectives(){return this.run.objectives.filter(e=>e.status!=="completed"&&e.status!=="skipped")}recordAchievement(e){this.run.achieved.includes(e)||this.run.achieved.push(e)}recordToolUsage(e){this.run.tools++,this.run.toolUsage||(this.run.toolUsage={}),this.run.toolUsage[e]=(this.run.toolUsage[e]||0)+1}recordFileChange(e,t,a){this.run.codeStats||(this.run.codeStats={modifiedFiles:{}}),this.run.codeStats.modifiedFiles[e]||(this.run.codeStats.modifiedFiles[e]={added:0,removed:0}),this.run.codeStats.modifiedFiles[e].added+=t,this.run.codeStats.modifiedFiles[e].removed+=a}recordHeuristicFix(e){this.run.heuristicFixes||(this.run.heuristicFixes=[]);let t=`Heuristic repair for ${e} \u2728`;this.run.heuristicFixes.includes(t)||(this.run.heuristicFixes.push(t),this.emitProgressUpdate(t))}updateDebounceTimer=null;pendingUpdate=!1;emitStream(e){this.callbacks?.onStream?.(e,this.run.runId)}emitProgressUpdate(e){if(e&&(this.run.currentContext=e),this.updateDebounceTimer){this.pendingUpdate=!0;return}this.internalEmitProgress(),this.updateDebounceTimer=setTimeout(()=>{this.updateDebounceTimer=null,this.pendingUpdate&&(this.pendingUpdate=!1,this.internalEmitProgress())},150)}lastObjectivesJson="";lastAchievedJson="";internalEmitProgress(){let e=this.run.objectives.filter(c=>c.status==="completed").length,t=this.run.objectives.length>0?Math.round(e/this.run.objectives.length*100):0,a=this.run.logs?.length||0,i=this.run.events?.length||0,s=a+i;s>1e3&&(this.emitEvent({type:"reasoning",runId:this.run.runId,text:`\u26A0\uFE0F CONTEXT PRESSURE: ${s} items in memory. Trimming background telemetry...`,elapsedMs:this.elapsedMs()}),this.run.events&&this.run.events.length>500&&(this.run.events=[...this.run.events.slice(0,50),{type:"reasoning",text:"... [Planetary Pruning: Events recovered] ..."},...this.run.events.slice(-100)]),this.run.logs&&this.run.logs.length>500&&(this.run.logs=[...this.run.logs.slice(0,50),{type:"reasoning",text:"... [Planetary Pruning: Logs recovered] ..."},...this.run.logs.slice(-100)]));let n=this.run.objectives.map(c=>({...c})),o=JSON.stringify(n),p=[...this.run.achieved],d=JSON.stringify(p),l=o!==this.lastObjectivesJson,u=d!==this.lastAchievedJson;this.lastObjectivesJson=o,this.lastAchievedJson=d,this.emitEvent({type:"progress_update",runId:this.run.runId,completionPercent:t,activeObjectiveId:this.run.activeObjectiveId,activeToolName:this.run.activeToolName,lastToolName:this.run.lastToolName,objectives:l?n:void 0,achieved:u?p:void 0,context:this.run.currentContext,lifecycleStage:this.run.lifecycleStage,ritualComplete:this.run.ritualComplete,activeFilePath:this.run.activeFilePath,currentPass:this.run.currentPass,totalPasses:this.run.totalPasses,passFocus:this.run.passFocus,isResuming:this.run.isResuming,passHistory:this.run.passHistory?[...this.run.passHistory]:void 0,metrics:this.run.metrics?{...this.run.metrics}:void 0,heuristicFixes:this.run.heuristicFixes?[...this.run.heuristicFixes]:void 0,ascensionState:this.run.ascensionState,elapsedMs:Date.now()-this.run.startedAt})}flush(){this.updateDebounceTimer&&(clearTimeout(this.updateDebounceTimer),this.updateDebounceTimer=null),this.pendingUpdate=!1,this.internalEmitProgress()}dispose(){this.updateDebounceTimer&&(clearTimeout(this.updateDebounceTimer),this.updateDebounceTimer=null)}emitPassTransition(e,t,a){this.run.currentPass=e,this.run.totalPasses=t,this.run.passFocus=a,this.emitEvent({type:"pass_transition",runId:this.run.runId,currentPass:e,totalPasses:t,passFocus:a,elapsedMs:this.elapsedMs()}),this.emitProgressUpdate()}elapsedMs(){return Date.now()-this.run.startedAt}};var Tn=class{constructor(e){this.options=e;this.toolRegistry=new dn,this.options.toolRegistrar(this.toolRegistry,this.options.automationService),this.initPromise=this.initialize()}provider;lastProviderKey;toolRegistry;currentSessionId="default";messages=[];abortController=null;currentRun;initPromise;pendingApprovals=new Map;async initialize(){this.currentSessionId=await this.options.sessionStore.getCurrentSessionId()||"default",await this.loadHistory()}async ensureInitialized(){await this.initPromise}createProvider(e){let t=e,a=this.options.config.getApiKey(t)||"";return this.options.providerFactory(t,a)}initializeProvider(){let e=this.options.config.getAiProvider(),t=this.options.config.getApiKey(e)||"",a=`${e}:${t}`;this.provider&&this.lastProviderKey===a||(this.lastProviderKey=a,this.provider=this.options.providerFactory(e,t))}async loadHistory(){let e=await this.options.sessionStore.getSessions();this.messages=e[this.currentSessionId]||[]}async saveHistory(e,t,a){this.messages.length>50&&(this.messages=this.messages.slice(this.messages.length-50));let i=t||this.currentSessionId,s=await this.options.sessionStore.getSessions(),n=i===this.currentSessionId,o=a?!0:n;i===this.currentSessionId&&o?s[i]=this.messages:s[i]||(s[i]=[]),await this.options.sessionStore.saveSessions(s);let p=await this.options.sessionStore.getSessionMetadata(),d=p.findIndex(m=>m.id===i),l=i===this.currentSessionId?this.messages:s[i],u=l&&l.length>0?l[0].content:"",c=l&&l.length>0?this.generateSessionTitle(u):"New Session";d>=0?(p[d].lastModified=Date.now(),p[d].title==="New Session"&&(p[d].title=c)):i!=="default"&&p.unshift({id:i,title:c,lastModified:Date.now(),isPinned:!1}),await this.options.sessionStore.saveSessionMetadata(p),i===this.currentSessionId&&await this.options.sessionStore.setCurrentSessionId(i),e!==void 0&&await this.options.sessionStore.setLastTelemetry(e===null?void 0:e)}generateSessionTitle(e){let a=Qt.wrap(e).getText(),i=a.match(/(?:Goal|Objective|Task):\s*([^\n.]+)/i);if(i&&i[1].trim())return this.formatTitle(i[1].trim());let s=a.split(`
557
+ `).map(o=>o.trim()).filter(o=>o.length>5);if(s.length>0&&s[0].length<60)return this.formatTitle(s[0]);let n=a.trim()||"New Session";return this.formatTitle(n)}formatTitle(e){let t=e.replace(/^[#\-*\s]+/,"").trim();return t.length>30?t.substring(0,27)+"...":t||"New Session"}async createSession(){return await this.ensureInitialized(),this.currentSessionId=`session_${Date.now()}`,this.messages=[],await this.saveHistory(),this.currentSessionId}async listSessions(){return await this.ensureInitialized(),this.options.sessionStore.getSessionMetadata()}async loadSession(e){return await this.ensureInitialized(),this.stopGeneration(),this.currentSessionId=e,await this.loadHistory(),await this.options.sessionStore.setCurrentSessionId(e),this.currentSessionId}async deleteSession(e){await this.ensureInitialized(),this.currentSessionId===e&&this.stopGeneration();let t=await this.options.sessionStore.getSessions();delete t[e],await this.options.sessionStore.saveSessions(t);let i=(await this.options.sessionStore.getSessionMetadata()).filter(s=>s.id!==e);await this.options.sessionStore.saveSessionMetadata(i),this.currentSessionId===e&&(i.length>0?await this.loadSession(i[0].id):await this.createSession())}async renameSession(e,t){await this.ensureInitialized();let a=await this.options.sessionStore.getSessionMetadata(),i=a.findIndex(s=>s.id===e);i>=0&&(a[i].title=t,await this.options.sessionStore.saveSessionMetadata(a))}async togglePinSession(e){await this.ensureInitialized();let t=await this.options.sessionStore.getSessionMetadata(),a=t.findIndex(i=>i.id===e);a>=0&&(t[a].isPinned=!t[a].isPinned,await this.options.sessionStore.saveSessionMetadata(t))}async handleMessage(e,t){if(await this.ensureInitialized(),this.initializeProvider(),!this.provider)return"Please configure your API key for the selected provider.";let a=await this.options.sessionStore.getLastTelemetry(),i=this.currentSessionId,s={runId:`run_${Date.now()}`,startedAt:Date.now(),steps:0,tools:0,objectives:[{id:"understand_request",label:"Understand request",status:"in_progress"},{id:"execute_plan",label:"Execute plan",status:"pending"},{id:"deliver_result",label:"Deliver result",status:"pending"}],activeObjectiveId:"understand_request",achieved:[],currentPass:a?.currentPass,totalPasses:a?.totalPasses,passFocus:a?.passFocus,isResuming:!!a,originatingSessionId:i},n=new Sn({...t,onStream:l=>t?.onStream?.(l,s.runId,i),onTool:l=>t?.onTool?.(l,s.runId,i),onToolDelta:l=>t?.onToolDelta?.(l,s.runId,i),onEvent:l=>{l.originatingSessionId=i,l.type==="progress_update"&&this.options.onProgressEvent?.(l),t?.onEvent?.(l)}},s);this.currentRun=s,this.options.automationService.setCurrentRun(s);let o=async(l,u,c)=>{if(this.options.shouldBypassApprovals?.())return!0;let m={id:`approval_${Date.now()}_${Math.random().toString(36).slice(2,7)}`,toolName:l,toolInput:u,diff:c};if(!!!(t?.onApprovalRequest||this.options.onApprovalRequest))return!0;let v=new Promise(f=>{this.pendingApprovals.set(m.id,f)});return t?.onApprovalRequest?.(m,s.runId,i),this.options.onApprovalRequest&&this.options.onApprovalRequest(m).then(f=>{this.resolveApproval(m.id,f)}),v},p=new yi(this.provider,this.toolRegistry,o,this.createProvider.bind(this),this.options.fs,this.options.ghostPort);n.emitEvent({type:"run_started",runId:s.runId,startedAt:s.startedAt}),n.emitProgressUpdate("Thinking..."),this.messages.push({role:"user",content:e,timestamp:Date.now()}),await this.saveHistory(),this.abortController&&this.abortController.abort(),this.abortController=new AbortController;let d=Date.now();try{let l=await p.chatLoop(this.messages,n,u=>this.saveHistory(u,i,d),this.abortController.signal);if(this.messages.length>=6&&this.messages.length<=10){let c=(await this.options.sessionStore.getSessionMetadata()).find(m=>m.id===this.currentSessionId);c&&(c.title==="New Session"||c.title.length>50)&&this.summarizeSession(this.currentSessionId).catch(console.error)}return l}catch(l){return n.emitEvent({type:"run_error",runId:s.runId,elapsedMs:n.elapsedMs(),message:String(l)}),`Error: ${l}`}finally{this.abortController=null,this.currentRun=void 0}}async summarizeSession(e){if(this.initializeProvider(),!this.provider)return;let a=(await this.options.sessionStore.getSessions())[e]||[];if(a.length<2)return;let i=new yi(this.provider,this.toolRegistry,async()=>!0),s="Based on our conversation so far, generate a very concise (3-5 words) and descriptive title for this session. Respond ONLY with the title. No quotes, no intro.";try{let n=await i.chatLoop([...a,{role:"user",content:s}],{emitProgressUpdate:()=>{},emitEvent:()=>{}},async()=>{});if(n&&typeof n=="string"&&n.length<60)await this.renameSession(e,n.trim().replace(/^"|"$/g,""));else if(n&&String(n).length<60){let o=Me.extractText(n).trim();await this.renameSession(e,o.replace(/^"|"$/g,""))}}catch(n){console.error("Failed to summarize session",n)}}async clearCurrentSession(){await this.ensureInitialized(),this.messages=[],await this.saveHistory()}stopGeneration(){this.abortController&&(this.abortController.abort(),this.abortController=null)}updateSettings(){this.initializeProvider()}async getModels(){return await this.ensureInitialized(),this.initializeProvider(),this.provider?.listModels()||[]}getMessages(){return this.messages}getCurrentSessionId(){return this.currentSessionId}getCurrentRun(){return this.currentRun}resolveApproval(e,t){let a=this.pendingApprovals.get(e);return a?(this.pendingApprovals.delete(e),a(t),!0):!1}dispose(){this.stopGeneration(),this.options.automationService.dispose?.()}};function x(r,e,t,a,i){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?i.call(r,t):i?i.value=t:e.set(r,t),t}function y(r,e,t,a){if(t==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!a:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?a:t==="a"?a.call(r):a?a.value:e.get(r)}var J1=function(){let{crypto:r}=globalThis;if(r?.randomUUID)return J1=r.randomUUID.bind(r),r.randomUUID();let e=new Uint8Array(1),t=r?()=>r.getRandomValues(e)[0]:()=>Math.random()*255&255;return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,a=>(+a^t()&15>>+a/4).toString(16))};function Nt(r){return typeof r=="object"&&r!==null&&("name"in r&&r.name==="AbortError"||"message"in r&&String(r.message).includes("FetchRequestCanceledException"))}var vi=r=>{if(r instanceof Error)return r;if(typeof r=="object"&&r!==null){try{if(Object.prototype.toString.call(r)==="[object Error]"){let e=new Error(r.message,r.cause?{cause:r.cause}:{});return r.stack&&(e.stack=r.stack),r.cause&&!e.cause&&(e.cause=r.cause),r.name&&(e.name=r.name),e}}catch{}try{return new Error(JSON.stringify(r))}catch{}}return new Error(r)};var C=class extends Error{},Se=class r extends C{constructor(e,t,a,i){super(`${r.makeMessage(e,t,a)}`),this.status=e,this.headers=i,this.requestID=i?.get("request-id"),this.error=t}static makeMessage(e,t,a){let i=t?.message?typeof t.message=="string"?t.message:JSON.stringify(t.message):t?JSON.stringify(t):a;return e&&i?`${e} ${i}`:e?`${e} status code (no body)`:i||"(no status code or body)"}static generate(e,t,a,i){if(!e||!i)return new er({message:a,cause:vi(t)});let s=t;return e===400?new _a(e,s,a,i):e===401?new Sa(e,s,a,i):e===403?new Ta(e,s,a,i):e===404?new xa(e,s,a,i):e===409?new Ea(e,s,a,i):e===422?new Pa(e,s,a,i):e===429?new Aa(e,s,a,i):e>=500?new Ra(e,s,a,i):new r(e,s,a,i)}},Ae=class extends Se{constructor({message:e}={}){super(void 0,void 0,e||"Request was aborted.",void 0)}},er=class extends Se{constructor({message:e,cause:t}){super(void 0,void 0,e||"Connection error.",void 0),t&&(this.cause=t)}},ba=class extends er{constructor({message:e}={}){super({message:e??"Request timed out."})}},_a=class extends Se{},Sa=class extends Se{},Ta=class extends Se{},xa=class extends Se{},Ea=class extends Se{},Pa=class extends Se{},Aa=class extends Se{},Ra=class extends Se{};var Ru=/^[a-z][a-z0-9+.-]*:/i,Hl=r=>Ru.test(r),G1=r=>(G1=Array.isArray,G1(r)),K1=G1;function xn(r){return typeof r!="object"?{}:r??{}}function Wl(r){if(!r)return!0;for(let e in r)return!1;return!0}function zl(r,e){return Object.prototype.hasOwnProperty.call(r,e)}var Jl=(r,e)=>{if(typeof e!="number"||!Number.isInteger(e))throw new C(`${r} must be an integer`);if(e<0)throw new C(`${r} must be a positive integer`);return e};var En=r=>{try{return JSON.parse(r)}catch{return}};var Gl=r=>new Promise(e=>setTimeout(e,r));var tr="0.73.0";var Zl=()=>typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u";function Cu(){return typeof Deno<"u"&&Deno.build!=null?"deno":typeof EdgeRuntime<"u"?"edge":Object.prototype.toString.call(typeof globalThis.process<"u"?globalThis.process:0)==="[object process]"?"node":"unknown"}var ku=()=>{let r=Cu();if(r==="deno")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":tr,"X-Stainless-OS":Xl(Deno.build.os),"X-Stainless-Arch":Kl(Deno.build.arch),"X-Stainless-Runtime":"deno","X-Stainless-Runtime-Version":typeof Deno.version=="string"?Deno.version:Deno.version?.deno??"unknown"};if(typeof EdgeRuntime<"u")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":tr,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":globalThis.process.version};if(r==="node")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":tr,"X-Stainless-OS":Xl(globalThis.process.platform??"unknown"),"X-Stainless-Arch":Kl(globalThis.process.arch??"unknown"),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":globalThis.process.version??"unknown"};let e=Nu();return e?{"X-Stainless-Lang":"js","X-Stainless-Package-Version":tr,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${e.browser}`,"X-Stainless-Runtime-Version":e.version}:{"X-Stainless-Lang":"js","X-Stainless-Package-Version":tr,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}};function Nu(){if(typeof navigator>"u"||!navigator)return null;let r=[{key:"edge",pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"chrome",pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"firefox",pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"safari",pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}];for(let{key:e,pattern:t}of r){let a=t.exec(navigator.userAgent);if(a){let i=a[1]||0,s=a[2]||0,n=a[3]||0;return{browser:e,version:`${i}.${s}.${n}`}}}return null}var Kl=r=>r==="x32"?"x32":r==="x86_64"||r==="x64"?"x64":r==="arm"?"arm":r==="aarch64"||r==="arm64"?"arm64":r?`other:${r}`:"unknown",Xl=r=>(r=r.toLowerCase(),r.includes("ios")?"iOS":r==="android"?"Android":r==="darwin"?"MacOS":r==="win32"?"Windows":r==="freebsd"?"FreeBSD":r==="openbsd"?"OpenBSD":r==="linux"?"Linux":r?`Other:${r}`:"Unknown"),Yl,Ql=()=>Yl??(Yl=ku());function ec(){if(typeof fetch<"u")return fetch;throw new Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new Anthropic({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}function X1(...r){let e=globalThis.ReadableStream;if(typeof e>"u")throw new Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new e(...r)}function Pn(r){let e=Symbol.asyncIterator in r?r[Symbol.asyncIterator]():r[Symbol.iterator]();return X1({start(){},async pull(t){let{done:a,value:i}=await e.next();a?t.close():t.enqueue(i)},async cancel(){await e.return?.()}})}function wi(r){if(r[Symbol.asyncIterator])return r;let e=r.getReader();return{async next(){try{let t=await e.read();return t?.done&&e.releaseLock(),t}catch(t){throw e.releaseLock(),t}},async return(){let t=e.cancel();return e.releaseLock(),await t,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function tc(r){if(r===null||typeof r!="object")return;if(r[Symbol.asyncIterator]){await r[Symbol.asyncIterator]().return?.();return}let e=r.getReader(),t=e.cancel();e.releaseLock(),await t}var rc=({headers:r,body:e})=>({bodyHeaders:{"content-type":"application/json"},body:JSON.stringify(e)});function sc(r){let e=0;for(let i of r)e+=i.length;let t=new Uint8Array(e),a=0;for(let i of r)t.set(i,a),a+=i.length;return t}var ac;function bi(r){let e;return(ac??(e=new globalThis.TextEncoder,ac=e.encode.bind(e)))(r)}var ic;function Y1(r){let e;return(ic??(e=new globalThis.TextDecoder,ic=e.decode.bind(e)))(r)}var Ue,He,Mt=class{constructor(){Ue.set(this,void 0),He.set(this,void 0),x(this,Ue,new Uint8Array,"f"),x(this,He,null,"f")}decode(e){if(e==null)return[];let t=e instanceof ArrayBuffer?new Uint8Array(e):typeof e=="string"?bi(e):e;x(this,Ue,sc([y(this,Ue,"f"),t]),"f");let a=[],i;for(;(i=Iu(y(this,Ue,"f"),y(this,He,"f")))!=null;){if(i.carriage&&y(this,He,"f")==null){x(this,He,i.index,"f");continue}if(y(this,He,"f")!=null&&(i.index!==y(this,He,"f")+1||i.carriage)){a.push(Y1(y(this,Ue,"f").subarray(0,y(this,He,"f")-1))),x(this,Ue,y(this,Ue,"f").subarray(y(this,He,"f")),"f"),x(this,He,null,"f");continue}let s=y(this,He,"f")!==null?i.preceding-1:i.preceding,n=Y1(y(this,Ue,"f").subarray(0,s));a.push(n),x(this,Ue,y(this,Ue,"f").subarray(i.index),"f"),x(this,He,null,"f")}return a}flush(){return y(this,Ue,"f").length?this.decode(`
558
+ `):[]}};Ue=new WeakMap,He=new WeakMap;Mt.NEWLINE_CHARS=new Set([`
559
+ `,"\r"]);Mt.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function Iu(r,e){for(let i=e??0;i<r.length;i++){if(r[i]===10)return{preceding:i,index:i+1,carriage:!1};if(r[i]===13)return{preceding:i,index:i+1,carriage:!0}}return null}function nc(r){for(let a=0;a<r.length-1;a++){if(r[a]===10&&r[a+1]===10||r[a]===13&&r[a+1]===13)return a+2;if(r[a]===13&&r[a+1]===10&&a+3<r.length&&r[a+2]===13&&r[a+3]===10)return a+4}return-1}var Rn={off:0,error:200,warn:300,info:400,debug:500},Z1=(r,e,t)=>{if(r){if(zl(Rn,r))return r;Te(t).warn(`${e} was set to ${JSON.stringify(r)}, expected one of ${JSON.stringify(Object.keys(Rn))}`)}};function _i(){}function An(r,e,t){return!e||Rn[r]>Rn[t]?_i:e[r].bind(e)}var Fu={error:_i,warn:_i,info:_i,debug:_i},oc=new WeakMap;function Te(r){let e=r.logger,t=r.logLevel??"off";if(!e)return Fu;let a=oc.get(e);if(a&&a[0]===t)return a[1];let i={error:An("error",e,t),warn:An("warn",e,t),info:An("info",e,t),debug:An("debug",e,t)};return oc.set(e,[t,i]),i}var Dt=r=>(r.options&&(r.options={...r.options},delete r.options.headers),r.headers&&(r.headers=Object.fromEntries((r.headers instanceof Headers?[...r.headers]:Object.entries(r.headers)).map(([e,t])=>[e,e.toLowerCase()==="x-api-key"||e.toLowerCase()==="authorization"||e.toLowerCase()==="cookie"||e.toLowerCase()==="set-cookie"?"***":t]))),"retryOfRequestLogID"in r&&(r.retryOfRequestLogID&&(r.retryOf=r.retryOfRequestLogID),delete r.retryOfRequestLogID),r);var Si,vt=class r{constructor(e,t,a){this.iterator=e,Si.set(this,void 0),this.controller=t,x(this,Si,a,"f")}static fromSSEResponse(e,t,a){let i=!1,s=a?Te(a):console;async function*n(){if(i)throw new C("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");i=!0;let o=!1;try{for await(let p of $u(e,t)){if(p.event==="completion")try{yield JSON.parse(p.data)}catch(d){throw s.error("Could not parse message into JSON:",p.data),s.error("From chunk:",p.raw),d}if(p.event==="message_start"||p.event==="message_delta"||p.event==="message_stop"||p.event==="content_block_start"||p.event==="content_block_delta"||p.event==="content_block_stop")try{yield JSON.parse(p.data)}catch(d){throw s.error("Could not parse message into JSON:",p.data),s.error("From chunk:",p.raw),d}if(p.event!=="ping"&&p.event==="error")throw new Se(void 0,En(p.data)??p.data,void 0,e.headers)}o=!0}catch(p){if(Nt(p))return;throw p}finally{o||t.abort()}}return new r(n,t,a)}static fromReadableStream(e,t,a){let i=!1;async function*s(){let o=new Mt,p=wi(e);for await(let d of p)for(let l of o.decode(d))yield l;for(let d of o.flush())yield d}async function*n(){if(i)throw new C("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");i=!0;let o=!1;try{for await(let p of s())o||p&&(yield JSON.parse(p));o=!0}catch(p){if(Nt(p))return;throw p}finally{o||t.abort()}}return new r(n,t,a)}[(Si=new WeakMap,Symbol.asyncIterator)](){return this.iterator()}tee(){let e=[],t=[],a=this.iterator(),i=s=>({next:()=>{if(s.length===0){let n=a.next();e.push(n),t.push(n)}return s.shift()}});return[new r(()=>i(e),this.controller,y(this,Si,"f")),new r(()=>i(t),this.controller,y(this,Si,"f"))]}toReadableStream(){let e=this,t;return X1({async start(){t=e[Symbol.asyncIterator]()},async pull(a){try{let{value:i,done:s}=await t.next();if(s)return a.close();let n=bi(JSON.stringify(i)+`
560
+ `);a.enqueue(n)}catch(i){a.error(i)}},async cancel(){await t.return?.()}})}};async function*$u(r,e){if(!r.body)throw e.abort(),typeof globalThis.navigator<"u"&&globalThis.navigator.product==="ReactNative"?new C("The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api"):new C("Attempted to iterate over a response with no body");let t=new Q1,a=new Mt,i=wi(r.body);for await(let s of Ou(i))for(let n of a.decode(s)){let o=t.decode(n);o&&(yield o)}for(let s of a.flush()){let n=t.decode(s);n&&(yield n)}}async function*Ou(r){let e=new Uint8Array;for await(let t of r){if(t==null)continue;let a=t instanceof ArrayBuffer?new Uint8Array(t):typeof t=="string"?bi(t):t,i=new Uint8Array(e.length+a.length);i.set(e),i.set(a,e.length),e=i;let s;for(;(s=nc(e))!==-1;)yield e.slice(0,s),e=e.slice(s)}e.length>0&&(yield e)}var Q1=class{constructor(){this.event=null,this.data=[],this.chunks=[]}decode(e){if(e.endsWith("\r")&&(e=e.substring(0,e.length-1)),!e){if(!this.event&&!this.data.length)return null;let s={event:this.event,data:this.data.join(`
561
+ `),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],s}if(this.chunks.push(e),e.startsWith(":"))return null;let[t,a,i]=Lu(e,":");return i.startsWith(" ")&&(i=i.substring(1)),t==="event"?this.event=i:t==="data"&&this.data.push(i),null}};function Lu(r,e){let t=r.indexOf(e);return t!==-1?[r.substring(0,t),e,r.substring(t+e.length)]:[r,"",""]}async function Cn(r,e){let{response:t,requestLogID:a,retryOfRequestLogID:i,startTime:s}=e,n=await(async()=>{if(e.options.stream)return Te(r).debug("response",t.status,t.url,t.headers,t.body),e.options.__streamClass?e.options.__streamClass.fromSSEResponse(t,e.controller):vt.fromSSEResponse(t,e.controller);if(t.status===204)return null;if(e.options.__binaryResponse)return t;let p=t.headers.get("content-type")?.split(";")[0]?.trim();if(p?.includes("application/json")||p?.endsWith("+json")){if(t.headers.get("content-length")==="0")return;let c=await t.json();return ep(c,t)}return await t.text()})();return Te(r).debug(`[${a}] response parsed`,Dt({retryOfRequestLogID:i,url:t.url,status:t.status,body:n,durationMs:Date.now()-s})),n}function ep(r,e){return!r||typeof r!="object"||Array.isArray(r)?r:Object.defineProperty(r,"_request_id",{value:e.headers.get("request-id"),enumerable:!1})}var Ti,kr=class r extends Promise{constructor(e,t,a=Cn){super(i=>{i(null)}),this.responsePromise=t,this.parseResponse=a,Ti.set(this,void 0),x(this,Ti,e,"f")}_thenUnwrap(e){return new r(y(this,Ti,"f"),this.responsePromise,async(t,a)=>ep(e(await this.parseResponse(t,a),a),a.response))}asResponse(){return this.responsePromise.then(e=>e.response)}async withResponse(){let[e,t]=await Promise.all([this.parse(),this.asResponse()]);return{data:e,response:t,request_id:t.headers.get("request-id")}}parse(){return this.parsedPromise||(this.parsedPromise=this.responsePromise.then(e=>this.parseResponse(y(this,Ti,"f"),e))),this.parsedPromise}then(e,t){return this.parse().then(e,t)}catch(e){return this.parse().catch(e)}finally(e){return this.parse().finally(e)}};Ti=new WeakMap;var kn,Nn=class{constructor(e,t,a,i){kn.set(this,void 0),x(this,kn,e,"f"),this.options=i,this.response=t,this.body=a}hasNextPage(){return this.getPaginatedItems().length?this.nextPageRequestOptions()!=null:!1}async getNextPage(){let e=this.nextPageRequestOptions();if(!e)throw new C("No next page expected; please check `.hasNextPage()` before calling `.getNextPage()`.");return await y(this,kn,"f").requestAPIList(this.constructor,e)}async*iterPages(){let e=this;for(yield e;e.hasNextPage();)e=await e.getNextPage(),yield e}async*[(kn=new WeakMap,Symbol.asyncIterator)](){for await(let e of this.iterPages())for(let t of e.getPaginatedItems())yield t}},xi=class extends kr{constructor(e,t,a){super(e,t,async(i,s)=>new a(i,s.response,await Cn(i,s),s.options))}async*[Symbol.asyncIterator](){let e=await this;for await(let t of e)yield t}},Ye=class extends Nn{constructor(e,t,a,i){super(e,t,a,i),this.data=a.data||[],this.has_more=a.has_more||!1,this.first_id=a.first_id||null,this.last_id=a.last_id||null}getPaginatedItems(){return this.data??[]}hasNextPage(){return this.has_more===!1?!1:super.hasNextPage()}nextPageRequestOptions(){if(this.options.query?.before_id){let t=this.first_id;return t?{...this.options,query:{...xn(this.options.query),before_id:t}}:null}let e=this.last_id;return e?{...this.options,query:{...xn(this.options.query),after_id:e}}:null}};var Ca=class extends Nn{constructor(e,t,a,i){super(e,t,a,i),this.data=a.data||[],this.has_more=a.has_more||!1,this.next_page=a.next_page||null}getPaginatedItems(){return this.data??[]}hasNextPage(){return this.has_more===!1?!1:super.hasNextPage()}nextPageRequestOptions(){let e=this.next_page;return e?{...this.options,query:{...xn(this.options.query),page:e}}:null}};var rp=()=>{if(typeof File>"u"){let{process:r}=globalThis,e=typeof r?.versions?.node=="string"&&parseInt(r.versions.node.split("."))<20;throw new Error("`File` is not defined as a global, which is required for file uploads."+(e?" Update to Node 20 LTS or newer, or set `globalThis.File` to `import('node:buffer').File`.":""))}};function Nr(r,e,t){return rp(),new File(r,e??"unknown_file",t)}function Ei(r,e){let t=typeof r=="object"&&r!==null&&("name"in r&&r.name&&String(r.name)||"url"in r&&r.url&&String(r.url)||"filename"in r&&r.filename&&String(r.filename)||"path"in r&&r.path&&String(r.path))||"";return e?t.split(/[\\/]/).pop()||void 0:t}var ap=r=>r!=null&&typeof r=="object"&&typeof r[Symbol.asyncIterator]=="function";var ka=async(r,e,t=!0)=>({...r,body:await Vu(r.body,e,t)}),pc=new WeakMap;function Bu(r){let e=typeof r=="function"?r:r.fetch,t=pc.get(e);if(t)return t;let a=(async()=>{try{let i="Response"in e?e.Response:(await e("data:,")).constructor,s=new FormData;return s.toString()!==await new i(s).text()}catch{return!0}})();return pc.set(e,a),a}var Vu=async(r,e,t=!0)=>{if(!await Bu(e))throw new TypeError("The provided fetch function does not support file uploads with the current global FormData class.");let a=new FormData;return await Promise.all(Object.entries(r||{}).map(([i,s])=>tp(a,i,s,t))),a},qu=r=>r instanceof Blob&&"name"in r;var tp=async(r,e,t,a)=>{if(t!==void 0){if(t==null)throw new TypeError(`Received null for "${e}"; to pass null in FormData, you must use the string 'null'`);if(typeof t=="string"||typeof t=="number"||typeof t=="boolean")r.append(e,String(t));else if(t instanceof Response){let i={},s=t.headers.get("Content-Type");s&&(i={type:s}),r.append(e,Nr([await t.blob()],Ei(t,a),i))}else if(ap(t))r.append(e,Nr([await new Response(Pn(t)).blob()],Ei(t,a)));else if(qu(t))r.append(e,Nr([t],Ei(t,a),{type:t.type}));else if(Array.isArray(t))await Promise.all(t.map(i=>tp(r,e+"[]",i,a)));else if(typeof t=="object")await Promise.all(Object.entries(t).map(([i,s])=>tp(r,`${e}[${i}]`,s,a)));else throw new TypeError(`Invalid value given to form, expected a string, number, boolean, object, Array, File or Blob but got ${t} instead`)}};var dc=r=>r!=null&&typeof r=="object"&&typeof r.size=="number"&&typeof r.type=="string"&&typeof r.text=="function"&&typeof r.slice=="function"&&typeof r.arrayBuffer=="function",Uu=r=>r!=null&&typeof r=="object"&&typeof r.name=="string"&&typeof r.lastModified=="number"&&dc(r),Hu=r=>r!=null&&typeof r=="object"&&typeof r.url=="string"&&typeof r.blob=="function";async function Mn(r,e,t){if(rp(),r=await r,e||(e=Ei(r,!0)),Uu(r))return r instanceof File&&e==null&&t==null?r:Nr([await r.arrayBuffer()],e??r.name,{type:r.type,lastModified:r.lastModified,...t});if(Hu(r)){let i=await r.blob();return e||(e=new URL(r.url).pathname.split(/[\\/]/).pop()),Nr(await ip(i),e,t)}let a=await ip(r);if(!t?.type){let i=a.find(s=>typeof s=="object"&&"type"in s&&s.type);typeof i=="string"&&(t={...t,type:i})}return Nr(a,e,t)}async function ip(r){let e=[];if(typeof r=="string"||ArrayBuffer.isView(r)||r instanceof ArrayBuffer)e.push(r);else if(dc(r))e.push(r instanceof Blob?r:await r.arrayBuffer());else if(ap(r))for await(let t of r)e.push(...await ip(t));else{let t=r?.constructor?.name;throw new Error(`Unexpected data type: ${typeof r}${t?`; constructor: ${t}`:""}${Wu(r)}`)}return e}function Wu(r){return typeof r!="object"||r===null?"":`; props: [${Object.getOwnPropertyNames(r).map(t=>`"${t}"`).join(", ")}]`}var te=class{constructor(e){this._client=e}};var lc=Symbol.for("brand.privateNullableHeaders");function*Ju(r){if(!r)return;if(lc in r){let{values:a,nulls:i}=r;yield*a.entries();for(let s of i)yield[s,null];return}let e=!1,t;r instanceof Headers?t=r.entries():K1(r)?t=r:(e=!0,t=Object.entries(r??{}));for(let a of t){let i=a[0];if(typeof i!="string")throw new TypeError("expected header name to be a string");let s=K1(a[1])?a[1]:[a[1]],n=!1;for(let o of s)o!==void 0&&(e&&!n&&(n=!0,yield[i,null]),yield[i,o])}}var O=r=>{let e=new Headers,t=new Set;for(let a of r){let i=new Set;for(let[s,n]of Ju(a)){let o=s.toLowerCase();i.has(o)||(e.delete(s),i.add(o)),n===null?(e.delete(s),t.add(o)):(e.append(s,n),t.delete(o))}}return{[lc]:!0,values:e,nulls:t}};var Pi=Symbol("anthropic.sdk.stainlessHelper");function Dn(r){return typeof r=="object"&&r!==null&&Pi in r}function sp(r,e){let t=new Set;if(r)for(let a of r)Dn(a)&&t.add(a[Pi]);if(e){for(let a of e)if(Dn(a)&&t.add(a[Pi]),Array.isArray(a.content))for(let i of a.content)Dn(i)&&t.add(i[Pi])}return Array.from(t)}function In(r,e){let t=sp(r,e);return t.length===0?{}:{"x-stainless-helper":t.join(", ")}}function cc(r){return Dn(r)?{"x-stainless-helper":r[Pi]}:{}}function uc(r){return r.replace(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]+/g,encodeURIComponent)}var mc=Object.freeze(Object.create(null)),Gu=(r=uc)=>function(t,...a){if(t.length===1)return t[0];let i=!1,s=[],n=t.reduce((l,u,c)=>{/[?#]/.test(u)&&(i=!0);let m=a[c],h=(i?encodeURIComponent:r)(""+m);return c!==a.length&&(m==null||typeof m=="object"&&m.toString===Object.getPrototypeOf(Object.getPrototypeOf(m.hasOwnProperty??mc)??mc)?.toString)&&(h=m+"",s.push({start:l.length+u.length,length:h.length,error:`Value of type ${Object.prototype.toString.call(m).slice(8,-1)} is not a valid path parameter`})),l+u+(c===a.length?"":h)},""),o=n.split(/[?#]/,1)[0],p=/(?<=^|\/)(?:\.|%2e){1,2}(?=\/|$)/gi,d;for(;(d=p.exec(o))!==null;)s.push({start:d.index,length:d[0].length,error:`Value "${d[0]}" can't be safely passed as a path parameter`});if(s.sort((l,u)=>l.start-u.start),s.length>0){let l=0,u=s.reduce((c,m)=>{let h=" ".repeat(m.start-l),v="^".repeat(m.length);return l=m.start+m.length,c+h+v},"");throw new C(`Path parameters result in path with invalid segments:
562
+ ${s.map(c=>c.error).join(`
563
+ `)}
564
+ ${n}
565
+ ${u}`)}return n},re=Gu(uc);var Na=class extends te{list(e={},t){let{betas:a,...i}=e??{};return this._client.getAPIList("/v1/files",Ye,{query:i,...t,headers:O([{"anthropic-beta":[...a??[],"files-api-2025-04-14"].toString()},t?.headers])})}delete(e,t={},a){let{betas:i}=t??{};return this._client.delete(re`/v1/files/${e}`,{...a,headers:O([{"anthropic-beta":[...i??[],"files-api-2025-04-14"].toString()},a?.headers])})}download(e,t={},a){let{betas:i}=t??{};return this._client.get(re`/v1/files/${e}/content`,{...a,headers:O([{"anthropic-beta":[...i??[],"files-api-2025-04-14"].toString(),Accept:"application/binary"},a?.headers]),__binaryResponse:!0})}retrieveMetadata(e,t={},a){let{betas:i}=t??{};return this._client.get(re`/v1/files/${e}`,{...a,headers:O([{"anthropic-beta":[...i??[],"files-api-2025-04-14"].toString()},a?.headers])})}upload(e,t){let{betas:a,...i}=e;return this._client.post("/v1/files",ka({body:i,...t,headers:O([{"anthropic-beta":[...a??[],"files-api-2025-04-14"].toString()},cc(i.file),t?.headers])},this._client))}};var Ma=class extends te{retrieve(e,t={},a){let{betas:i}=t??{};return this._client.get(re`/v1/models/${e}?beta=true`,{...a,headers:O([{...i?.toString()!=null?{"anthropic-beta":i?.toString()}:void 0},a?.headers])})}list(e={},t){let{betas:a,...i}=e??{};return this._client.getAPIList("/v1/models?beta=true",Ye,{query:i,...t,headers:O([{...a?.toString()!=null?{"anthropic-beta":a?.toString()}:void 0},t?.headers])})}};var Fn={"claude-opus-4-20250514":8192,"claude-opus-4-0":8192,"claude-4-opus-20250514":8192,"anthropic.claude-opus-4-20250514-v1:0":8192,"claude-opus-4@20250514":8192,"claude-opus-4-1-20250805":8192,"anthropic.claude-opus-4-1-20250805-v1:0":8192,"claude-opus-4-1@20250805":8192};function hc(r){return r?.output_format??r?.output_config?.format}function np(r,e,t){let a=hc(e);return!e||!("parse"in(a??{}))?{...r,content:r.content.map(i=>{if(i.type==="text"){let s=Object.defineProperty({...i},"parsed_output",{value:null,enumerable:!1});return Object.defineProperty(s,"parsed",{get(){return t.logger.warn("The `parsed` property on `text` blocks is deprecated, please use `parsed_output` instead."),null},enumerable:!1})}return i}),parsed_output:null}:op(r,e,t)}function op(r,e,t){let a=null,i=r.content.map(s=>{if(s.type==="text"){let n=Yu(e,s.text);a===null&&(a=n);let o=Object.defineProperty({...s},"parsed_output",{value:n,enumerable:!1});return Object.defineProperty(o,"parsed",{get(){return t.logger.warn("The `parsed` property on `text` blocks is deprecated, please use `parsed_output` instead."),n},enumerable:!1})}return s});return{...r,content:i,parsed_output:a}}function Yu(r,e){let t=hc(r);if(t?.type!=="json_schema")return null;try{return"parse"in t?t.parse(e):JSON.parse(e)}catch(a){throw new C(`Failed to parse structured output: ${a}`)}}var Zu=r=>{let e=0,t=[];for(;e<r.length;){let a=r[e];if(a==="\\"){e++;continue}if(a==="{"){t.push({type:"brace",value:"{"}),e++;continue}if(a==="}"){t.push({type:"brace",value:"}"}),e++;continue}if(a==="["){t.push({type:"paren",value:"["}),e++;continue}if(a==="]"){t.push({type:"paren",value:"]"}),e++;continue}if(a===":"){t.push({type:"separator",value:":"}),e++;continue}if(a===","){t.push({type:"delimiter",value:","}),e++;continue}if(a==='"'){let o="",p=!1;for(a=r[++e];a!=='"';){if(e===r.length){p=!0;break}if(a==="\\"){if(e++,e===r.length){p=!0;break}o+=a+r[e],a=r[++e]}else o+=a,a=r[++e]}a=r[++e],p||t.push({type:"string",value:o});continue}if(a&&/\s/.test(a)){e++;continue}let s=/[0-9]/;if(a&&s.test(a)||a==="-"||a==="."){let o="";for(a==="-"&&(o+=a,a=r[++e]);a&&s.test(a)||a===".";)o+=a,a=r[++e];t.push({type:"number",value:o});continue}let n=/[a-z]/i;if(a&&n.test(a)){let o="";for(;a&&n.test(a)&&e!==r.length;)o+=a,a=r[++e];if(o=="true"||o=="false"||o==="null")t.push({type:"name",value:o});else{e++;continue}continue}e++}return t},Da=r=>{if(r.length===0)return r;let e=r[r.length-1];switch(e.type){case"separator":return r=r.slice(0,r.length-1),Da(r);break;case"number":let t=e.value[e.value.length-1];if(t==="."||t==="-")return r=r.slice(0,r.length-1),Da(r);case"string":let a=r[r.length-2];if(a?.type==="delimiter")return r=r.slice(0,r.length-1),Da(r);if(a?.type==="brace"&&a.value==="{")return r=r.slice(0,r.length-1),Da(r);break;case"delimiter":return r=r.slice(0,r.length-1),Da(r);break}return r},Qu=r=>{let e=[];return r.map(t=>{t.type==="brace"&&(t.value==="{"?e.push("}"):e.splice(e.lastIndexOf("}"),1)),t.type==="paren"&&(t.value==="["?e.push("]"):e.splice(e.lastIndexOf("]"),1))}),e.length>0&&e.reverse().map(t=>{t==="}"?r.push({type:"brace",value:"}"}):t==="]"&&r.push({type:"paren",value:"]"})}),r},e6=r=>{let e="";return r.map(t=>{switch(t.type){case"string":e+='"'+t.value+'"';break;default:e+=t.value;break}}),e},$n=r=>JSON.parse(e6(Qu(Da(Zu(r)))));var Ze,rr,Ia,Ai,On,Ri,Ci,Ln,ki,It,Ni,jn,Bn,Mr,Vn,qn,Mi,pp,fc,Un,dp,lp,cp,gc,yc="__json_buf";function vc(r){return r.type==="tool_use"||r.type==="server_tool_use"||r.type==="mcp_tool_use"}var Hn=class r{constructor(e,t){Ze.add(this),this.messages=[],this.receivedMessages=[],rr.set(this,void 0),Ia.set(this,null),this.controller=new AbortController,Ai.set(this,void 0),On.set(this,()=>{}),Ri.set(this,()=>{}),Ci.set(this,void 0),Ln.set(this,()=>{}),ki.set(this,()=>{}),It.set(this,{}),Ni.set(this,!1),jn.set(this,!1),Bn.set(this,!1),Mr.set(this,!1),Vn.set(this,void 0),qn.set(this,void 0),Mi.set(this,void 0),Un.set(this,a=>{if(x(this,jn,!0,"f"),Nt(a)&&(a=new Ae),a instanceof Ae)return x(this,Bn,!0,"f"),this._emit("abort",a);if(a instanceof C)return this._emit("error",a);if(a instanceof Error){let i=new C(a.message);return i.cause=a,this._emit("error",i)}return this._emit("error",new C(String(a)))}),x(this,Ai,new Promise((a,i)=>{x(this,On,a,"f"),x(this,Ri,i,"f")}),"f"),x(this,Ci,new Promise((a,i)=>{x(this,Ln,a,"f"),x(this,ki,i,"f")}),"f"),y(this,Ai,"f").catch(()=>{}),y(this,Ci,"f").catch(()=>{}),x(this,Ia,e,"f"),x(this,Mi,t?.logger??console,"f")}get response(){return y(this,Vn,"f")}get request_id(){return y(this,qn,"f")}async withResponse(){x(this,Mr,!0,"f");let e=await y(this,Ai,"f");if(!e)throw new Error("Could not resolve a `Response` object");return{data:this,response:e,request_id:e.headers.get("request-id")}}static fromReadableStream(e){let t=new r(null);return t._run(()=>t._fromReadableStream(e)),t}static createMessage(e,t,a,{logger:i}={}){let s=new r(t,{logger:i});for(let n of t.messages)s._addMessageParam(n);return x(s,Ia,{...t,stream:!0},"f"),s._run(()=>s._createMessage(e,{...t,stream:!0},{...a,headers:{...a?.headers,"X-Stainless-Helper-Method":"stream"}})),s}_run(e){e().then(()=>{this._emitFinal(),this._emit("end")},y(this,Un,"f"))}_addMessageParam(e){this.messages.push(e)}_addMessage(e,t=!0){this.receivedMessages.push(e),t&&this._emit("message",e)}async _createMessage(e,t,a){let i=a?.signal,s;i&&(i.aborted&&this.controller.abort(),s=this.controller.abort.bind(this.controller),i.addEventListener("abort",s));try{y(this,Ze,"m",dp).call(this);let{response:n,data:o}=await e.create({...t,stream:!0},{...a,signal:this.controller.signal}).withResponse();this._connected(n);for await(let p of o)y(this,Ze,"m",lp).call(this,p);if(o.controller.signal?.aborted)throw new Ae;y(this,Ze,"m",cp).call(this)}finally{i&&s&&i.removeEventListener("abort",s)}}_connected(e){this.ended||(x(this,Vn,e,"f"),x(this,qn,e?.headers.get("request-id"),"f"),y(this,On,"f").call(this,e),this._emit("connect"))}get ended(){return y(this,Ni,"f")}get errored(){return y(this,jn,"f")}get aborted(){return y(this,Bn,"f")}abort(){this.controller.abort()}on(e,t){return(y(this,It,"f")[e]||(y(this,It,"f")[e]=[])).push({listener:t}),this}off(e,t){let a=y(this,It,"f")[e];if(!a)return this;let i=a.findIndex(s=>s.listener===t);return i>=0&&a.splice(i,1),this}once(e,t){return(y(this,It,"f")[e]||(y(this,It,"f")[e]=[])).push({listener:t,once:!0}),this}emitted(e){return new Promise((t,a)=>{x(this,Mr,!0,"f"),e!=="error"&&this.once("error",a),this.once(e,t)})}async done(){x(this,Mr,!0,"f"),await y(this,Ci,"f")}get currentMessage(){return y(this,rr,"f")}async finalMessage(){return await this.done(),y(this,Ze,"m",pp).call(this)}async finalText(){return await this.done(),y(this,Ze,"m",fc).call(this)}_emit(e,...t){if(y(this,Ni,"f"))return;e==="end"&&(x(this,Ni,!0,"f"),y(this,Ln,"f").call(this));let a=y(this,It,"f")[e];if(a&&(y(this,It,"f")[e]=a.filter(i=>!i.once),a.forEach(({listener:i})=>i(...t))),e==="abort"){let i=t[0];!y(this,Mr,"f")&&!a?.length&&Promise.reject(i),y(this,Ri,"f").call(this,i),y(this,ki,"f").call(this,i),this._emit("end");return}if(e==="error"){let i=t[0];!y(this,Mr,"f")&&!a?.length&&Promise.reject(i),y(this,Ri,"f").call(this,i),y(this,ki,"f").call(this,i),this._emit("end")}}_emitFinal(){this.receivedMessages.at(-1)&&this._emit("finalMessage",y(this,Ze,"m",pp).call(this))}async _fromReadableStream(e,t){let a=t?.signal,i;a&&(a.aborted&&this.controller.abort(),i=this.controller.abort.bind(this.controller),a.addEventListener("abort",i));try{y(this,Ze,"m",dp).call(this),this._connected(null);let s=vt.fromReadableStream(e,this.controller);for await(let n of s)y(this,Ze,"m",lp).call(this,n);if(s.controller.signal?.aborted)throw new Ae;y(this,Ze,"m",cp).call(this)}finally{a&&i&&a.removeEventListener("abort",i)}}[(rr=new WeakMap,Ia=new WeakMap,Ai=new WeakMap,On=new WeakMap,Ri=new WeakMap,Ci=new WeakMap,Ln=new WeakMap,ki=new WeakMap,It=new WeakMap,Ni=new WeakMap,jn=new WeakMap,Bn=new WeakMap,Mr=new WeakMap,Vn=new WeakMap,qn=new WeakMap,Mi=new WeakMap,Un=new WeakMap,Ze=new WeakSet,pp=function(){if(this.receivedMessages.length===0)throw new C("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},fc=function(){if(this.receivedMessages.length===0)throw new C("stream ended without producing a Message with role=assistant");let t=this.receivedMessages.at(-1).content.filter(a=>a.type==="text").map(a=>a.text);if(t.length===0)throw new C("stream ended without producing a content block with type=text");return t.join(" ")},dp=function(){this.ended||x(this,rr,void 0,"f")},lp=function(t){if(this.ended)return;let a=y(this,Ze,"m",gc).call(this,t);switch(this._emit("streamEvent",t,a),t.type){case"content_block_delta":{let i=a.content.at(-1);switch(t.delta.type){case"text_delta":{i.type==="text"&&this._emit("text",t.delta.text,i.text||"");break}case"citations_delta":{i.type==="text"&&this._emit("citation",t.delta.citation,i.citations??[]);break}case"input_json_delta":{vc(i)&&i.input&&this._emit("inputJson",t.delta.partial_json,i.input);break}case"thinking_delta":{i.type==="thinking"&&this._emit("thinking",t.delta.thinking,i.thinking);break}case"signature_delta":{i.type==="thinking"&&this._emit("signature",i.signature);break}case"compaction_delta":{i.type==="compaction"&&i.content&&this._emit("compaction",i.content);break}default:t.delta}break}case"message_stop":{this._addMessageParam(a),this._addMessage(np(a,y(this,Ia,"f"),{logger:y(this,Mi,"f")}),!0);break}case"content_block_stop":{this._emit("contentBlock",a.content.at(-1));break}case"message_start":{x(this,rr,a,"f");break}case"content_block_start":case"message_delta":break}},cp=function(){if(this.ended)throw new C("stream has ended, this shouldn't happen");let t=y(this,rr,"f");if(!t)throw new C("request ended without sending any chunks");return x(this,rr,void 0,"f"),np(t,y(this,Ia,"f"),{logger:y(this,Mi,"f")})},gc=function(t){let a=y(this,rr,"f");if(t.type==="message_start"){if(a)throw new C(`Unexpected event order, got ${t.type} before receiving "message_stop"`);return t.message}if(!a)throw new C(`Unexpected event order, got ${t.type} before "message_start"`);switch(t.type){case"message_stop":return a;case"message_delta":return a.container=t.delta.container,a.stop_reason=t.delta.stop_reason,a.stop_sequence=t.delta.stop_sequence,a.usage.output_tokens=t.usage.output_tokens,a.context_management=t.context_management,t.usage.input_tokens!=null&&(a.usage.input_tokens=t.usage.input_tokens),t.usage.cache_creation_input_tokens!=null&&(a.usage.cache_creation_input_tokens=t.usage.cache_creation_input_tokens),t.usage.cache_read_input_tokens!=null&&(a.usage.cache_read_input_tokens=t.usage.cache_read_input_tokens),t.usage.server_tool_use!=null&&(a.usage.server_tool_use=t.usage.server_tool_use),t.usage.iterations!=null&&(a.usage.iterations=t.usage.iterations),a;case"content_block_start":return a.content.push(t.content_block),a;case"content_block_delta":{let i=a.content.at(t.index);switch(t.delta.type){case"text_delta":{i?.type==="text"&&(a.content[t.index]={...i,text:(i.text||"")+t.delta.text});break}case"citations_delta":{i?.type==="text"&&(a.content[t.index]={...i,citations:[...i.citations??[],t.delta.citation]});break}case"input_json_delta":{if(i&&vc(i)){let s=i[yc]||"";s+=t.delta.partial_json;let n={...i};if(Object.defineProperty(n,yc,{value:s,enumerable:!1,writable:!0}),s)try{n.input=$n(s)}catch(o){let p=new C(`Unable to parse tool parameter JSON from model. Please retry your request or adjust your prompt. Error: ${o}. JSON: ${s}`);y(this,Un,"f").call(this,p)}a.content[t.index]=n}break}case"thinking_delta":{i?.type==="thinking"&&(a.content[t.index]={...i,thinking:i.thinking+t.delta.thinking});break}case"signature_delta":{i?.type==="thinking"&&(a.content[t.index]={...i,signature:t.delta.signature});break}case"compaction_delta":{i?.type==="compaction"&&(a.content[t.index]={...i,content:(i.content||"")+t.delta.content});break}default:t.delta}return a}case"content_block_stop":return a}},Symbol.asyncIterator)](){let e=[],t=[],a=!1;return this.on("streamEvent",i=>{let s=t.shift();s?s.resolve(i):e.push(i)}),this.on("end",()=>{a=!0;for(let i of t)i.resolve(void 0);t.length=0}),this.on("abort",i=>{a=!0;for(let s of t)s.reject(i);t.length=0}),this.on("error",i=>{a=!0;for(let s of t)s.reject(i);t.length=0}),{next:async()=>e.length?{value:e.shift(),done:!1}:a?{value:void 0,done:!0}:new Promise((s,n)=>t.push({resolve:s,reject:n})).then(s=>s?{value:s,done:!1}:{value:void 0,done:!0}),return:async()=>(this.abort(),{value:void 0,done:!0})}}toReadableStream(){return new vt(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}};var Dr=class extends Error{constructor(e){let t=typeof e=="string"?e:e.map(a=>a.type==="text"?a.text:`[${a.type}]`).join(" ");super(t),this.name="ToolError",this.content=e}};var wc=`You have been working on the task described above but have not yet completed it. Write a continuation summary that will allow you (or another instance of yourself) to resume work efficiently in a future context window where the conversation history will be replaced with this summary. Your summary should be structured, concise, and actionable. Include:
566
+ 1. Task Overview
567
+ The user's core request and success criteria
568
+ Any clarifications or constraints they specified
569
+ 2. Current State
570
+ What has been completed so far
571
+ Files created, modified, or analyzed (with paths if relevant)
572
+ Key outputs or artifacts produced
573
+ 3. Important Discoveries
574
+ Technical constraints or requirements uncovered
575
+ Decisions made and their rationale
576
+ Errors encountered and how they were resolved
577
+ What approaches were tried that didn't work (and why)
578
+ 4. Next Steps
579
+ Specific actions needed to complete the task
580
+ Any blockers or open questions to resolve
581
+ Priority order if multiple steps remain
582
+ 5. Context to Preserve
583
+ User preferences or style requirements
584
+ Domain-specific details that aren't obvious
585
+ Any promises made to the user
586
+ Be concise but complete\u2014err on the side of including information that would prevent duplicate work or repeated mistakes. Write in a way that enables immediate resumption of the task.
587
+ Wrap your summary in <summary></summary> tags.`;var Di,Fa,Ir,ge,Ii,We,Ft,ar,Fi,bc,mp;function _c(){let r,e;return{promise:new Promise((a,i)=>{r=a,e=i}),resolve:r,reject:e}}var $a=class{constructor(e,t,a){Di.add(this),this.client=e,Fa.set(this,!1),Ir.set(this,!1),ge.set(this,void 0),Ii.set(this,void 0),We.set(this,void 0),Ft.set(this,void 0),ar.set(this,void 0),Fi.set(this,0),x(this,ge,{params:{...t,messages:structuredClone(t.messages)}},"f");let s=["BetaToolRunner",...sp(t.tools,t.messages)].join(", ");x(this,Ii,{...a,headers:O([{"x-stainless-helper":s},a?.headers])},"f"),x(this,ar,_c(),"f")}async*[(Fa=new WeakMap,Ir=new WeakMap,ge=new WeakMap,Ii=new WeakMap,We=new WeakMap,Ft=new WeakMap,ar=new WeakMap,Fi=new WeakMap,Di=new WeakSet,bc=async function(){let t=y(this,ge,"f").params.compactionControl;if(!t||!t.enabled)return!1;let a=0;if(y(this,We,"f")!==void 0)try{let d=await y(this,We,"f");a=d.usage.input_tokens+(d.usage.cache_creation_input_tokens??0)+(d.usage.cache_read_input_tokens??0)+d.usage.output_tokens}catch{return!1}let i=t.contextTokenThreshold??1e5;if(a<i)return!1;let s=t.model??y(this,ge,"f").params.model,n=t.summaryPrompt??wc,o=y(this,ge,"f").params.messages;if(o[o.length-1].role==="assistant"){let d=o[o.length-1];if(Array.isArray(d.content)){let l=d.content.filter(u=>u.type!=="tool_use");l.length===0?o.pop():d.content=l}}let p=await this.client.beta.messages.create({model:s,messages:[...o,{role:"user",content:[{type:"text",text:n}]}],max_tokens:y(this,ge,"f").params.max_tokens},{headers:{"x-stainless-helper":"compaction"}});if(p.content[0]?.type!=="text")throw new C("Expected text response for compaction");return y(this,ge,"f").params.messages=[{role:"user",content:p.content}],!0},Symbol.asyncIterator)](){var e;if(y(this,Fa,"f"))throw new C("Cannot iterate over a consumed stream");x(this,Fa,!0,"f"),x(this,Ir,!0,"f"),x(this,Ft,void 0,"f");try{for(;;){let t;try{if(y(this,ge,"f").params.max_iterations&&y(this,Fi,"f")>=y(this,ge,"f").params.max_iterations)break;x(this,Ir,!1,"f"),x(this,Ft,void 0,"f"),x(this,Fi,(e=y(this,Fi,"f"),e++,e),"f"),x(this,We,void 0,"f");let{max_iterations:a,compactionControl:i,...s}=y(this,ge,"f").params;if(s.stream?(t=this.client.beta.messages.stream({...s},y(this,Ii,"f")),x(this,We,t.finalMessage(),"f"),y(this,We,"f").catch(()=>{}),yield t):(x(this,We,this.client.beta.messages.create({...s,stream:!1},y(this,Ii,"f")),"f"),yield y(this,We,"f")),!await y(this,Di,"m",bc).call(this)){if(!y(this,Ir,"f")){let{role:p,content:d}=await y(this,We,"f");y(this,ge,"f").params.messages.push({role:p,content:d})}let o=await y(this,Di,"m",mp).call(this,y(this,ge,"f").params.messages.at(-1));if(o)y(this,ge,"f").params.messages.push(o);else if(!y(this,Ir,"f"))break}}finally{t&&t.abort()}}if(!y(this,We,"f"))throw new C("ToolRunner concluded without a message from the server");y(this,ar,"f").resolve(await y(this,We,"f"))}catch(t){throw x(this,Fa,!1,"f"),y(this,ar,"f").promise.catch(()=>{}),y(this,ar,"f").reject(t),x(this,ar,_c(),"f"),t}}setMessagesParams(e){typeof e=="function"?y(this,ge,"f").params=e(y(this,ge,"f").params):y(this,ge,"f").params=e,x(this,Ir,!0,"f"),x(this,Ft,void 0,"f")}async generateToolResponse(){let e=await y(this,We,"f")??this.params.messages.at(-1);return e?y(this,Di,"m",mp).call(this,e):null}done(){return y(this,ar,"f").promise}async runUntilDone(){if(!y(this,Fa,"f"))for await(let e of this);return this.done()}get params(){return y(this,ge,"f").params}pushMessages(...e){this.setMessagesParams(t=>({...t,messages:[...t.messages,...e]}))}then(e,t){return this.runUntilDone().then(e,t)}};mp=async function(e){return y(this,Ft,"f")!==void 0?y(this,Ft,"f"):(x(this,Ft,r6(y(this,ge,"f").params,e),"f"),y(this,Ft,"f"))};async function r6(r,e=r.messages.at(-1)){if(!e||e.role!=="assistant"||!e.content||typeof e.content=="string")return null;let t=e.content.filter(i=>i.type==="tool_use");return t.length===0?null:{role:"user",content:await Promise.all(t.map(async i=>{let s=r.tools.find(n=>("name"in n?n.name:n.mcp_server_name)===i.name);if(!s||!("run"in s))return{type:"tool_result",tool_use_id:i.id,content:`Error: Tool '${i.name}' not found`,is_error:!0};try{let n=i.input;"parse"in s&&s.parse&&(n=s.parse(n));let o=await s.run(n);return{type:"tool_result",tool_use_id:i.id,content:o}}catch(n){return{type:"tool_result",tool_use_id:i.id,content:n instanceof Dr?n.content:`Error: ${n instanceof Error?n.message:String(n)}`,is_error:!0}}}))}}var Oa=class r{constructor(e,t){this.iterator=e,this.controller=t}async*decoder(){let e=new Mt;for await(let t of this.iterator)for(let a of e.decode(t))yield JSON.parse(a);for(let t of e.flush())yield JSON.parse(t)}[Symbol.asyncIterator](){return this.decoder()}static fromResponse(e,t){if(!e.body)throw t.abort(),typeof globalThis.navigator<"u"&&globalThis.navigator.product==="ReactNative"?new C("The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api"):new C("Attempted to iterate over a response with no body");return new r(wi(e.body),t)}};var La=class extends te{create(e,t){let{betas:a,...i}=e;return this._client.post("/v1/messages/batches?beta=true",{body:i,...t,headers:O([{"anthropic-beta":[...a??[],"message-batches-2024-09-24"].toString()},t?.headers])})}retrieve(e,t={},a){let{betas:i}=t??{};return this._client.get(re`/v1/messages/batches/${e}?beta=true`,{...a,headers:O([{"anthropic-beta":[...i??[],"message-batches-2024-09-24"].toString()},a?.headers])})}list(e={},t){let{betas:a,...i}=e??{};return this._client.getAPIList("/v1/messages/batches?beta=true",Ye,{query:i,...t,headers:O([{"anthropic-beta":[...a??[],"message-batches-2024-09-24"].toString()},t?.headers])})}delete(e,t={},a){let{betas:i}=t??{};return this._client.delete(re`/v1/messages/batches/${e}?beta=true`,{...a,headers:O([{"anthropic-beta":[...i??[],"message-batches-2024-09-24"].toString()},a?.headers])})}cancel(e,t={},a){let{betas:i}=t??{};return this._client.post(re`/v1/messages/batches/${e}/cancel?beta=true`,{...a,headers:O([{"anthropic-beta":[...i??[],"message-batches-2024-09-24"].toString()},a?.headers])})}async results(e,t={},a){let i=await this.retrieve(e);if(!i.results_url)throw new C(`No batch \`results_url\`; Has it finished processing? ${i.processing_status} - ${i.id}`);let{betas:s}=t??{};return this._client.get(i.results_url,{...a,headers:O([{"anthropic-beta":[...s??[],"message-batches-2024-09-24"].toString(),Accept:"application/binary"},a?.headers]),stream:!0,__binaryResponse:!0})._thenUnwrap((n,o)=>Oa.fromResponse(o.response,o.controller))}};var Sc={"claude-1.3":"November 6th, 2024","claude-1.3-100k":"November 6th, 2024","claude-instant-1.1":"November 6th, 2024","claude-instant-1.1-100k":"November 6th, 2024","claude-instant-1.2":"November 6th, 2024","claude-3-sonnet-20240229":"July 21st, 2025","claude-3-opus-20240229":"January 5th, 2026","claude-2.1":"July 21st, 2025","claude-2.0":"July 21st, 2025","claude-3-7-sonnet-latest":"February 19th, 2026","claude-3-7-sonnet-20250219":"February 19th, 2026"},i6=["claude-opus-4-6"],$t=class extends te{constructor(){super(...arguments),this.batches=new La(this._client)}create(e,t){let a=Tc(e),{betas:i,...s}=a;s.model in Sc&&console.warn(`The model '${s.model}' is deprecated and will reach end-of-life on ${Sc[s.model]}
588
+ Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`),s.model in i6&&s.thinking&&s.thinking.type==="enabled"&&console.warn(`Using Claude with ${s.model} and 'thinking.type=enabled' is deprecated. Use 'thinking.type=adaptive' instead which results in better model performance in our testing: https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking`);let n=this._client._options.timeout;if(!s.stream&&n==null){let p=Fn[s.model]??void 0;n=this._client.calculateNonstreamingTimeout(s.max_tokens,p)}let o=In(s.tools,s.messages);return this._client.post("/v1/messages?beta=true",{body:s,timeout:n??6e5,...t,headers:O([{...i?.toString()!=null?{"anthropic-beta":i?.toString()}:void 0},o,t?.headers]),stream:a.stream??!1})}parse(e,t){return t={...t,headers:O([{"anthropic-beta":[...e.betas??[],"structured-outputs-2025-12-15"].toString()},t?.headers])},this.create(e,t).then(a=>op(a,e,{logger:this._client.logger??console}))}stream(e,t){return Hn.createMessage(this,e,t)}countTokens(e,t){let a=Tc(e),{betas:i,...s}=a;return this._client.post("/v1/messages/count_tokens?beta=true",{body:s,...t,headers:O([{"anthropic-beta":[...i??[],"token-counting-2024-11-01"].toString()},t?.headers])})}toolRunner(e,t){return new $a(this._client,e,t)}};function Tc(r){if(!r.output_format)return r;if(r.output_config?.format)throw new C("Both output_format and output_config.format were provided. Please use only output_config.format (output_format is deprecated).");let{output_format:e,...t}=r;return{...t,output_config:{...r.output_config,format:e}}}$t.Batches=La;$t.BetaToolRunner=$a;$t.ToolError=Dr;var ja=class extends te{create(e,t={},a){let{betas:i,...s}=t??{};return this._client.post(re`/v1/skills/${e}/versions?beta=true`,ka({body:s,...a,headers:O([{"anthropic-beta":[...i??[],"skills-2025-10-02"].toString()},a?.headers])},this._client))}retrieve(e,t,a){let{skill_id:i,betas:s}=t;return this._client.get(re`/v1/skills/${i}/versions/${e}?beta=true`,{...a,headers:O([{"anthropic-beta":[...s??[],"skills-2025-10-02"].toString()},a?.headers])})}list(e,t={},a){let{betas:i,...s}=t??{};return this._client.getAPIList(re`/v1/skills/${e}/versions?beta=true`,Ca,{query:s,...a,headers:O([{"anthropic-beta":[...i??[],"skills-2025-10-02"].toString()},a?.headers])})}delete(e,t,a){let{skill_id:i,betas:s}=t;return this._client.delete(re`/v1/skills/${i}/versions/${e}?beta=true`,{...a,headers:O([{"anthropic-beta":[...s??[],"skills-2025-10-02"].toString()},a?.headers])})}};var Fr=class extends te{constructor(){super(...arguments),this.versions=new ja(this._client)}create(e={},t){let{betas:a,...i}=e??{};return this._client.post("/v1/skills?beta=true",ka({body:i,...t,headers:O([{"anthropic-beta":[...a??[],"skills-2025-10-02"].toString()},t?.headers])},this._client,!1))}retrieve(e,t={},a){let{betas:i}=t??{};return this._client.get(re`/v1/skills/${e}?beta=true`,{...a,headers:O([{"anthropic-beta":[...i??[],"skills-2025-10-02"].toString()},a?.headers])})}list(e={},t){let{betas:a,...i}=e??{};return this._client.getAPIList("/v1/skills?beta=true",Ca,{query:i,...t,headers:O([{"anthropic-beta":[...a??[],"skills-2025-10-02"].toString()},t?.headers])})}delete(e,t={},a){let{betas:i}=t??{};return this._client.delete(re`/v1/skills/${e}?beta=true`,{...a,headers:O([{"anthropic-beta":[...i??[],"skills-2025-10-02"].toString()},a?.headers])})}};Fr.Versions=ja;var pt=class extends te{constructor(){super(...arguments),this.models=new Ma(this._client),this.messages=new $t(this._client),this.files=new Na(this._client),this.skills=new Fr(this._client)}};pt.Models=Ma;pt.Messages=$t;pt.Files=Na;pt.Skills=Fr;var $r=class extends te{create(e,t){let{betas:a,...i}=e;return this._client.post("/v1/complete",{body:i,timeout:this._client._options.timeout??6e5,...t,headers:O([{...a?.toString()!=null?{"anthropic-beta":a?.toString()}:void 0},t?.headers]),stream:e.stream??!1})}};function xc(r){return r?.output_config?.format}function up(r,e,t){let a=xc(e);return!e||!("parse"in(a??{}))?{...r,content:r.content.map(i=>i.type==="text"?Object.defineProperty({...i},"parsed_output",{value:null,enumerable:!1}):i),parsed_output:null}:hp(r,e,t)}function hp(r,e,t){let a=null,i=r.content.map(s=>{if(s.type==="text"){let n=p6(e,s.text);return a===null&&(a=n),Object.defineProperty({...s},"parsed_output",{value:n,enumerable:!1})}return s});return{...r,content:i,parsed_output:a}}function p6(r,e){let t=xc(r);if(t?.type!=="json_schema")return null;try{return"parse"in t?t.parse(e):JSON.parse(e)}catch(a){throw new C(`Failed to parse structured output: ${a}`)}}var Qe,ir,Ba,$i,Wn,Oi,Li,zn,ji,Ot,Bi,Jn,Gn,Or,Kn,Xn,Vi,fp,Ec,gp,yp,vp,wp,Pc,Ac="__json_buf";function Rc(r){return r.type==="tool_use"||r.type==="server_tool_use"}var Yn=class r{constructor(e,t){Qe.add(this),this.messages=[],this.receivedMessages=[],ir.set(this,void 0),Ba.set(this,null),this.controller=new AbortController,$i.set(this,void 0),Wn.set(this,()=>{}),Oi.set(this,()=>{}),Li.set(this,void 0),zn.set(this,()=>{}),ji.set(this,()=>{}),Ot.set(this,{}),Bi.set(this,!1),Jn.set(this,!1),Gn.set(this,!1),Or.set(this,!1),Kn.set(this,void 0),Xn.set(this,void 0),Vi.set(this,void 0),gp.set(this,a=>{if(x(this,Jn,!0,"f"),Nt(a)&&(a=new Ae),a instanceof Ae)return x(this,Gn,!0,"f"),this._emit("abort",a);if(a instanceof C)return this._emit("error",a);if(a instanceof Error){let i=new C(a.message);return i.cause=a,this._emit("error",i)}return this._emit("error",new C(String(a)))}),x(this,$i,new Promise((a,i)=>{x(this,Wn,a,"f"),x(this,Oi,i,"f")}),"f"),x(this,Li,new Promise((a,i)=>{x(this,zn,a,"f"),x(this,ji,i,"f")}),"f"),y(this,$i,"f").catch(()=>{}),y(this,Li,"f").catch(()=>{}),x(this,Ba,e,"f"),x(this,Vi,t?.logger??console,"f")}get response(){return y(this,Kn,"f")}get request_id(){return y(this,Xn,"f")}async withResponse(){x(this,Or,!0,"f");let e=await y(this,$i,"f");if(!e)throw new Error("Could not resolve a `Response` object");return{data:this,response:e,request_id:e.headers.get("request-id")}}static fromReadableStream(e){let t=new r(null);return t._run(()=>t._fromReadableStream(e)),t}static createMessage(e,t,a,{logger:i}={}){let s=new r(t,{logger:i});for(let n of t.messages)s._addMessageParam(n);return x(s,Ba,{...t,stream:!0},"f"),s._run(()=>s._createMessage(e,{...t,stream:!0},{...a,headers:{...a?.headers,"X-Stainless-Helper-Method":"stream"}})),s}_run(e){e().then(()=>{this._emitFinal(),this._emit("end")},y(this,gp,"f"))}_addMessageParam(e){this.messages.push(e)}_addMessage(e,t=!0){this.receivedMessages.push(e),t&&this._emit("message",e)}async _createMessage(e,t,a){let i=a?.signal,s;i&&(i.aborted&&this.controller.abort(),s=this.controller.abort.bind(this.controller),i.addEventListener("abort",s));try{y(this,Qe,"m",yp).call(this);let{response:n,data:o}=await e.create({...t,stream:!0},{...a,signal:this.controller.signal}).withResponse();this._connected(n);for await(let p of o)y(this,Qe,"m",vp).call(this,p);if(o.controller.signal?.aborted)throw new Ae;y(this,Qe,"m",wp).call(this)}finally{i&&s&&i.removeEventListener("abort",s)}}_connected(e){this.ended||(x(this,Kn,e,"f"),x(this,Xn,e?.headers.get("request-id"),"f"),y(this,Wn,"f").call(this,e),this._emit("connect"))}get ended(){return y(this,Bi,"f")}get errored(){return y(this,Jn,"f")}get aborted(){return y(this,Gn,"f")}abort(){this.controller.abort()}on(e,t){return(y(this,Ot,"f")[e]||(y(this,Ot,"f")[e]=[])).push({listener:t}),this}off(e,t){let a=y(this,Ot,"f")[e];if(!a)return this;let i=a.findIndex(s=>s.listener===t);return i>=0&&a.splice(i,1),this}once(e,t){return(y(this,Ot,"f")[e]||(y(this,Ot,"f")[e]=[])).push({listener:t,once:!0}),this}emitted(e){return new Promise((t,a)=>{x(this,Or,!0,"f"),e!=="error"&&this.once("error",a),this.once(e,t)})}async done(){x(this,Or,!0,"f"),await y(this,Li,"f")}get currentMessage(){return y(this,ir,"f")}async finalMessage(){return await this.done(),y(this,Qe,"m",fp).call(this)}async finalText(){return await this.done(),y(this,Qe,"m",Ec).call(this)}_emit(e,...t){if(y(this,Bi,"f"))return;e==="end"&&(x(this,Bi,!0,"f"),y(this,zn,"f").call(this));let a=y(this,Ot,"f")[e];if(a&&(y(this,Ot,"f")[e]=a.filter(i=>!i.once),a.forEach(({listener:i})=>i(...t))),e==="abort"){let i=t[0];!y(this,Or,"f")&&!a?.length&&Promise.reject(i),y(this,Oi,"f").call(this,i),y(this,ji,"f").call(this,i),this._emit("end");return}if(e==="error"){let i=t[0];!y(this,Or,"f")&&!a?.length&&Promise.reject(i),y(this,Oi,"f").call(this,i),y(this,ji,"f").call(this,i),this._emit("end")}}_emitFinal(){this.receivedMessages.at(-1)&&this._emit("finalMessage",y(this,Qe,"m",fp).call(this))}async _fromReadableStream(e,t){let a=t?.signal,i;a&&(a.aborted&&this.controller.abort(),i=this.controller.abort.bind(this.controller),a.addEventListener("abort",i));try{y(this,Qe,"m",yp).call(this),this._connected(null);let s=vt.fromReadableStream(e,this.controller);for await(let n of s)y(this,Qe,"m",vp).call(this,n);if(s.controller.signal?.aborted)throw new Ae;y(this,Qe,"m",wp).call(this)}finally{a&&i&&a.removeEventListener("abort",i)}}[(ir=new WeakMap,Ba=new WeakMap,$i=new WeakMap,Wn=new WeakMap,Oi=new WeakMap,Li=new WeakMap,zn=new WeakMap,ji=new WeakMap,Ot=new WeakMap,Bi=new WeakMap,Jn=new WeakMap,Gn=new WeakMap,Or=new WeakMap,Kn=new WeakMap,Xn=new WeakMap,Vi=new WeakMap,gp=new WeakMap,Qe=new WeakSet,fp=function(){if(this.receivedMessages.length===0)throw new C("stream ended without producing a Message with role=assistant");return this.receivedMessages.at(-1)},Ec=function(){if(this.receivedMessages.length===0)throw new C("stream ended without producing a Message with role=assistant");let t=this.receivedMessages.at(-1).content.filter(a=>a.type==="text").map(a=>a.text);if(t.length===0)throw new C("stream ended without producing a content block with type=text");return t.join(" ")},yp=function(){this.ended||x(this,ir,void 0,"f")},vp=function(t){if(this.ended)return;let a=y(this,Qe,"m",Pc).call(this,t);switch(this._emit("streamEvent",t,a),t.type){case"content_block_delta":{let i=a.content.at(-1);switch(t.delta.type){case"text_delta":{i.type==="text"&&this._emit("text",t.delta.text,i.text||"");break}case"citations_delta":{i.type==="text"&&this._emit("citation",t.delta.citation,i.citations??[]);break}case"input_json_delta":{Rc(i)&&i.input&&this._emit("inputJson",t.delta.partial_json,i.input);break}case"thinking_delta":{i.type==="thinking"&&this._emit("thinking",t.delta.thinking,i.thinking);break}case"signature_delta":{i.type==="thinking"&&this._emit("signature",i.signature);break}default:t.delta}break}case"message_stop":{this._addMessageParam(a),this._addMessage(up(a,y(this,Ba,"f"),{logger:y(this,Vi,"f")}),!0);break}case"content_block_stop":{this._emit("contentBlock",a.content.at(-1));break}case"message_start":{x(this,ir,a,"f");break}case"content_block_start":case"message_delta":break}},wp=function(){if(this.ended)throw new C("stream has ended, this shouldn't happen");let t=y(this,ir,"f");if(!t)throw new C("request ended without sending any chunks");return x(this,ir,void 0,"f"),up(t,y(this,Ba,"f"),{logger:y(this,Vi,"f")})},Pc=function(t){let a=y(this,ir,"f");if(t.type==="message_start"){if(a)throw new C(`Unexpected event order, got ${t.type} before receiving "message_stop"`);return t.message}if(!a)throw new C(`Unexpected event order, got ${t.type} before "message_start"`);switch(t.type){case"message_stop":return a;case"message_delta":return a.stop_reason=t.delta.stop_reason,a.stop_sequence=t.delta.stop_sequence,a.usage.output_tokens=t.usage.output_tokens,t.usage.input_tokens!=null&&(a.usage.input_tokens=t.usage.input_tokens),t.usage.cache_creation_input_tokens!=null&&(a.usage.cache_creation_input_tokens=t.usage.cache_creation_input_tokens),t.usage.cache_read_input_tokens!=null&&(a.usage.cache_read_input_tokens=t.usage.cache_read_input_tokens),t.usage.server_tool_use!=null&&(a.usage.server_tool_use=t.usage.server_tool_use),a;case"content_block_start":return a.content.push({...t.content_block}),a;case"content_block_delta":{let i=a.content.at(t.index);switch(t.delta.type){case"text_delta":{i?.type==="text"&&(a.content[t.index]={...i,text:(i.text||"")+t.delta.text});break}case"citations_delta":{i?.type==="text"&&(a.content[t.index]={...i,citations:[...i.citations??[],t.delta.citation]});break}case"input_json_delta":{if(i&&Rc(i)){let s=i[Ac]||"";s+=t.delta.partial_json;let n={...i};Object.defineProperty(n,Ac,{value:s,enumerable:!1,writable:!0}),s&&(n.input=$n(s)),a.content[t.index]=n}break}case"thinking_delta":{i?.type==="thinking"&&(a.content[t.index]={...i,thinking:i.thinking+t.delta.thinking});break}case"signature_delta":{i?.type==="thinking"&&(a.content[t.index]={...i,signature:t.delta.signature});break}default:t.delta}return a}case"content_block_stop":return a}},Symbol.asyncIterator)](){let e=[],t=[],a=!1;return this.on("streamEvent",i=>{let s=t.shift();s?s.resolve(i):e.push(i)}),this.on("end",()=>{a=!0;for(let i of t)i.resolve(void 0);t.length=0}),this.on("abort",i=>{a=!0;for(let s of t)s.reject(i);t.length=0}),this.on("error",i=>{a=!0;for(let s of t)s.reject(i);t.length=0}),{next:async()=>e.length?{value:e.shift(),done:!1}:a?{value:void 0,done:!0}:new Promise((s,n)=>t.push({resolve:s,reject:n})).then(s=>s?{value:s,done:!1}:{value:void 0,done:!0}),return:async()=>(this.abort(),{value:void 0,done:!0})}}toReadableStream(){return new vt(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}};var Va=class extends te{create(e,t){return this._client.post("/v1/messages/batches",{body:e,...t})}retrieve(e,t){return this._client.get(re`/v1/messages/batches/${e}`,t)}list(e={},t){return this._client.getAPIList("/v1/messages/batches",Ye,{query:e,...t})}delete(e,t){return this._client.delete(re`/v1/messages/batches/${e}`,t)}cancel(e,t){return this._client.post(re`/v1/messages/batches/${e}/cancel`,t)}async results(e,t){let a=await this.retrieve(e);if(!a.results_url)throw new C(`No batch \`results_url\`; Has it finished processing? ${a.processing_status} - ${a.id}`);return this._client.get(a.results_url,{...t,headers:O([{Accept:"application/binary"},t?.headers]),stream:!0,__binaryResponse:!0})._thenUnwrap((i,s)=>Oa.fromResponse(s.response,s.controller))}};var sr=class extends te{constructor(){super(...arguments),this.batches=new Va(this._client)}create(e,t){e.model in Cc&&console.warn(`The model '${e.model}' is deprecated and will reach end-of-life on ${Cc[e.model]}
589
+ Please migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`),e.model in l6&&e.thinking&&e.thinking.type==="enabled"&&console.warn(`Using Claude with ${e.model} and 'thinking.type=enabled' is deprecated. Use 'thinking.type=adaptive' instead which results in better model performance in our testing: https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking`);let a=this._client._options.timeout;if(!e.stream&&a==null){let s=Fn[e.model]??void 0;a=this._client.calculateNonstreamingTimeout(e.max_tokens,s)}let i=In(e.tools,e.messages);return this._client.post("/v1/messages",{body:e,timeout:a??6e5,...t,headers:O([i,t?.headers]),stream:e.stream??!1})}parse(e,t){return this.create(e,t).then(a=>hp(a,e,{logger:this._client.logger??console}))}stream(e,t){return Yn.createMessage(this,e,t,{logger:this._client.logger??console})}countTokens(e,t){return this._client.post("/v1/messages/count_tokens",{body:e,...t})}},Cc={"claude-1.3":"November 6th, 2024","claude-1.3-100k":"November 6th, 2024","claude-instant-1.1":"November 6th, 2024","claude-instant-1.1-100k":"November 6th, 2024","claude-instant-1.2":"November 6th, 2024","claude-3-sonnet-20240229":"July 21st, 2025","claude-3-opus-20240229":"January 5th, 2026","claude-2.1":"July 21st, 2025","claude-2.0":"July 21st, 2025","claude-3-7-sonnet-latest":"February 19th, 2026","claude-3-7-sonnet-20250219":"February 19th, 2026","claude-3-5-haiku-latest":"February 19th, 2026","claude-3-5-haiku-20241022":"February 19th, 2026"},l6=["claude-opus-4-6"];sr.Batches=Va;var Lr=class extends te{retrieve(e,t={},a){let{betas:i}=t??{};return this._client.get(re`/v1/models/${e}`,{...a,headers:O([{...i?.toString()!=null?{"anthropic-beta":i?.toString()}:void 0},a?.headers])})}list(e={},t){let{betas:a,...i}=e??{};return this._client.getAPIList("/v1/models",Ye,{query:i,...t,headers:O([{...a?.toString()!=null?{"anthropic-beta":a?.toString()}:void 0},t?.headers])})}};var qi=r=>{if(typeof globalThis.process<"u")return globalThis.process.env?.[r]?.trim()??void 0;if(typeof globalThis.Deno<"u")return globalThis.Deno.env?.get?.(r)?.trim()};var bp,_p,Zn,kc,Nc="\\n\\nHuman:",Mc="\\n\\nAssistant:",se=class{constructor({baseURL:e=qi("ANTHROPIC_BASE_URL"),apiKey:t=qi("ANTHROPIC_API_KEY")??null,authToken:a=qi("ANTHROPIC_AUTH_TOKEN")??null,...i}={}){bp.add(this),Zn.set(this,void 0);let s={apiKey:t,authToken:a,...i,baseURL:e||"https://api.anthropic.com"};if(!s.dangerouslyAllowBrowser&&Zl())throw new C(`It looks like you're running in a browser-like environment.
590
+
591
+ This is disabled by default, as it risks exposing your secret API credentials to attackers.
592
+ If you understand the risks and have appropriate mitigations in place,
593
+ you can set the \`dangerouslyAllowBrowser\` option to \`true\`, e.g.,
594
+
595
+ new Anthropic({ apiKey, dangerouslyAllowBrowser: true });
596
+ `);this.baseURL=s.baseURL,this.timeout=s.timeout??_p.DEFAULT_TIMEOUT,this.logger=s.logger??console;let n="warn";this.logLevel=n,this.logLevel=Z1(s.logLevel,"ClientOptions.logLevel",this)??Z1(qi("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",this)??n,this.fetchOptions=s.fetchOptions,this.maxRetries=s.maxRetries??2,this.fetch=s.fetch??ec(),x(this,Zn,rc,"f"),this._options=s,this.apiKey=typeof t=="string"?t:null,this.authToken=a}withOptions(e){return new this.constructor({...this._options,baseURL:this.baseURL,maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,apiKey:this.apiKey,authToken:this.authToken,...e})}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:e,nulls:t}){if(!(e.get("x-api-key")||e.get("authorization"))&&!(this.apiKey&&e.get("x-api-key"))&&!t.has("x-api-key")&&!(this.authToken&&e.get("authorization"))&&!t.has("authorization"))throw new Error('Could not resolve authentication method. Expected either apiKey or authToken to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted')}async authHeaders(e){return O([await this.apiKeyAuth(e),await this.bearerAuth(e)])}async apiKeyAuth(e){if(this.apiKey!=null)return O([{"X-Api-Key":this.apiKey}])}async bearerAuth(e){if(this.authToken!=null)return O([{Authorization:`Bearer ${this.authToken}`}])}stringifyQuery(e){return Object.entries(e).filter(([t,a])=>typeof a<"u").map(([t,a])=>{if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")return`${encodeURIComponent(t)}=${encodeURIComponent(a)}`;if(a===null)return`${encodeURIComponent(t)}=`;throw new C(`Cannot stringify type ${typeof a}; Expected string, number, boolean, or null. If you need to pass nested query parameters, you can manually encode them, e.g. { query: { 'foo[key1]': value1, 'foo[key2]': value2 } }, and please open a GitHub issue requesting better support for your use case.`)}).join("&")}getUserAgent(){return`${this.constructor.name}/JS ${tr}`}defaultIdempotencyKey(){return`stainless-node-retry-${J1()}`}makeStatusError(e,t,a,i){return Se.generate(e,t,a,i)}buildURL(e,t,a){let i=!y(this,bp,"m",kc).call(this)&&a||this.baseURL,s=Hl(e)?new URL(e):new URL(i+(i.endsWith("/")&&e.startsWith("/")?e.slice(1):e)),n=this.defaultQuery();return Wl(n)||(t={...n,...t}),typeof t=="object"&&t&&!Array.isArray(t)&&(s.search=this.stringifyQuery(t)),s.toString()}_calculateNonstreamingTimeout(e){if(3600*e/128e3>600)throw new C("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#streaming-responses for more details");return 600*1e3}async prepareOptions(e){}async prepareRequest(e,{url:t,options:a}){}get(e,t){return this.methodRequest("get",e,t)}post(e,t){return this.methodRequest("post",e,t)}patch(e,t){return this.methodRequest("patch",e,t)}put(e,t){return this.methodRequest("put",e,t)}delete(e,t){return this.methodRequest("delete",e,t)}methodRequest(e,t,a){return this.request(Promise.resolve(a).then(i=>({method:e,path:t,...i})))}request(e,t=null){return new kr(this,this.makeRequest(e,t,void 0))}async makeRequest(e,t,a){let i=await e,s=i.maxRetries??this.maxRetries;t==null&&(t=s),await this.prepareOptions(i);let{req:n,url:o,timeout:p}=await this.buildRequest(i,{retryCount:s-t});await this.prepareRequest(n,{url:o,options:i});let d="log_"+(Math.random()*(1<<24)|0).toString(16).padStart(6,"0"),l=a===void 0?"":`, retryOf: ${a}`,u=Date.now();if(Te(this).debug(`[${d}] sending request`,Dt({retryOfRequestLogID:a,method:i.method,url:o,options:i,headers:n.headers})),i.signal?.aborted)throw new Ae;let c=new AbortController,m=await this.fetchWithTimeout(o,n,p,c).catch(vi),h=Date.now();if(m instanceof globalThis.Error){let g=`retrying, ${t} attempts remaining`;if(i.signal?.aborted)throw new Ae;let b=Nt(m)||/timed? ?out/i.test(String(m)+("cause"in m?String(m.cause):""));if(t)return Te(this).info(`[${d}] connection ${b?"timed out":"failed"} - ${g}`),Te(this).debug(`[${d}] connection ${b?"timed out":"failed"} (${g})`,Dt({retryOfRequestLogID:a,url:o,durationMs:h-u,message:m.message})),this.retryRequest(i,t,a??d);throw Te(this).info(`[${d}] connection ${b?"timed out":"failed"} - error; no more retries left`),Te(this).debug(`[${d}] connection ${b?"timed out":"failed"} (error; no more retries left)`,Dt({retryOfRequestLogID:a,url:o,durationMs:h-u,message:m.message})),b?new ba:new er({cause:m})}let v=[...m.headers.entries()].filter(([g])=>g==="request-id").map(([g,b])=>", "+g+": "+JSON.stringify(b)).join(""),f=`[${d}${l}${v}] ${n.method} ${o} ${m.ok?"succeeded":"failed"} with status ${m.status} in ${h-u}ms`;if(!m.ok){let g=await this.shouldRetry(m);if(t&&g){let V=`retrying, ${t} attempts remaining`;return await tc(m.body),Te(this).info(`${f} - ${V}`),Te(this).debug(`[${d}] response error (${V})`,Dt({retryOfRequestLogID:a,url:m.url,status:m.status,headers:m.headers,durationMs:h-u})),this.retryRequest(i,t,a??d,m.headers)}let b=g?"error; no more retries left":"error; not retryable";Te(this).info(`${f} - ${b}`);let A=await m.text().catch(V=>vi(V).message),k=En(A),E=k?void 0:A;throw Te(this).debug(`[${d}] response error (${b})`,Dt({retryOfRequestLogID:a,url:m.url,status:m.status,headers:m.headers,message:E,durationMs:Date.now()-u})),this.makeStatusError(m.status,k,E,m.headers)}return Te(this).info(f),Te(this).debug(`[${d}] response start`,Dt({retryOfRequestLogID:a,url:m.url,status:m.status,headers:m.headers,durationMs:h-u})),{response:m,options:i,controller:c,requestLogID:d,retryOfRequestLogID:a,startTime:u}}getAPIList(e,t,a){return this.requestAPIList(t,a&&"then"in a?a.then(i=>({method:"get",path:e,...i})):{method:"get",path:e,...a})}requestAPIList(e,t){let a=this.makeRequest(t,null,void 0);return new xi(this,a,e)}async fetchWithTimeout(e,t,a,i){let{signal:s,method:n,...o}=t||{},p=this._makeAbort(i);s&&s.addEventListener("abort",p,{once:!0});let d=setTimeout(p,a),l=globalThis.ReadableStream&&o.body instanceof globalThis.ReadableStream||typeof o.body=="object"&&o.body!==null&&Symbol.asyncIterator in o.body,u={signal:i.signal,...l?{duplex:"half"}:{},method:"GET",...o};n&&(u.method=n.toUpperCase());try{return await this.fetch.call(void 0,e,u)}finally{clearTimeout(d)}}async shouldRetry(e){let t=e.headers.get("x-should-retry");return t==="true"?!0:t==="false"?!1:e.status===408||e.status===409||e.status===429||e.status>=500}async retryRequest(e,t,a,i){let s,n=i?.get("retry-after-ms");if(n){let p=parseFloat(n);Number.isNaN(p)||(s=p)}let o=i?.get("retry-after");if(o&&!s){let p=parseFloat(o);Number.isNaN(p)?s=Date.parse(o)-Date.now():s=p*1e3}if(!(s&&0<=s&&s<60*1e3)){let p=e.maxRetries??this.maxRetries;s=this.calculateDefaultRetryTimeoutMillis(t,p)}return await Gl(s),this.makeRequest(e,t-1,a)}calculateDefaultRetryTimeoutMillis(e,t){let s=t-e,n=Math.min(.5*Math.pow(2,s),8),o=1-Math.random()*.25;return n*o*1e3}calculateNonstreamingTimeout(e,t){if(36e5*e/128e3>6e5||t!=null&&e>t)throw new C("Streaming is required for operations that may take longer than 10 minutes. See https://github.com/anthropics/anthropic-sdk-typescript#long-requests for more details");return 6e5}async buildRequest(e,{retryCount:t=0}={}){let a={...e},{method:i,path:s,query:n,defaultBaseURL:o}=a,p=this.buildURL(s,n,o);"timeout"in a&&Jl("timeout",a.timeout),a.timeout=a.timeout??this.timeout;let{bodyHeaders:d,body:l}=this.buildBody({options:a}),u=await this.buildHeaders({options:e,method:i,bodyHeaders:d,retryCount:t});return{req:{method:i,headers:u,...a.signal&&{signal:a.signal},...globalThis.ReadableStream&&l instanceof globalThis.ReadableStream&&{duplex:"half"},...l&&{body:l},...this.fetchOptions??{},...a.fetchOptions??{}},url:p,timeout:a.timeout}}async buildHeaders({options:e,method:t,bodyHeaders:a,retryCount:i}){let s={};this.idempotencyHeader&&t!=="get"&&(e.idempotencyKey||(e.idempotencyKey=this.defaultIdempotencyKey()),s[this.idempotencyHeader]=e.idempotencyKey);let n=O([s,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(i),...e.timeout?{"X-Stainless-Timeout":String(Math.trunc(e.timeout/1e3))}:{},...Ql(),...this._options.dangerouslyAllowBrowser?{"anthropic-dangerous-direct-browser-access":"true"}:void 0,"anthropic-version":"2023-06-01"},await this.authHeaders(e),this._options.defaultHeaders,a,e.headers]);return this.validateHeaders(n),n.values}_makeAbort(e){return()=>e.abort()}buildBody({options:{body:e,headers:t}}){if(!e)return{bodyHeaders:void 0,body:void 0};let a=O([t]);return ArrayBuffer.isView(e)||e instanceof ArrayBuffer||e instanceof DataView||typeof e=="string"&&a.values.has("content-type")||globalThis.Blob&&e instanceof globalThis.Blob||e instanceof FormData||e instanceof URLSearchParams||globalThis.ReadableStream&&e instanceof globalThis.ReadableStream?{bodyHeaders:void 0,body:e}:typeof e=="object"&&(Symbol.asyncIterator in e||Symbol.iterator in e&&"next"in e&&typeof e.next=="function")?{bodyHeaders:void 0,body:Pn(e)}:y(this,Zn,"f").call(this,{body:e,headers:a})}};_p=se,Zn=new WeakMap,bp=new WeakSet,kc=function(){return this.baseURL!=="https://api.anthropic.com"};se.Anthropic=_p;se.HUMAN_PROMPT=Nc;se.AI_PROMPT=Mc;se.DEFAULT_TIMEOUT=6e5;se.AnthropicError=C;se.APIError=Se;se.APIConnectionError=er;se.APIConnectionTimeoutError=ba;se.APIUserAbortError=Ae;se.NotFoundError=xa;se.ConflictError=Ea;se.RateLimitError=Aa;se.BadRequestError=_a;se.AuthenticationError=Sa;se.InternalServerError=Ra;se.PermissionDeniedError=Ta;se.UnprocessableEntityError=Pa;se.toFile=Mn;var wt=class extends se{constructor(){super(...arguments),this.completions=new $r(this),this.messages=new sr(this),this.models=new Lr(this),this.beta=new pt(this)}};wt.Completions=$r;wt.Messages=sr;wt.Models=Lr;wt.Beta=pt;Ke();var Qn=class{client;constructor(e){this.client=new wt({apiKey:e})}async createMessage(e){let t=await this.client.messages.create({model:e.model,max_tokens:e.max_tokens||1024,system:e.system,messages:e.messages,tools:e.tools});if(!t.content||t.content.length===0)throw new Error("Anthropic API returned an empty content array.");let a=t.content.filter(i=>i.type==="tool_use").map(i=>({id:i.id,name:i.name,input:i.input}));return{role:"assistant",content:t.content,tool_uses:a.length>0?a:void 0}}async createMessageStream(e,t,a){let i=Date.now();t({type:"run_started",timestamp:i}),t({type:"stage_change",stage:"thinking",label:"Processing request..."});let s=await this.client.messages.create({model:e.model,max_tokens:e.max_tokens||1024,system:e.system,messages:e.messages,tools:e.tools,stream:!0},{signal:a}),n=[],o={},p=!1;for await(let c of s)if(c.type==="content_block_delta"&&c.delta.type==="text_delta"){p||(p=!0,t({type:"stage_change",stage:"responding",label:"Generating response..."}));let m=c.delta.text;n.push(m),t({type:"content_delta",text:m})}else if(c.type==="content_block_start"&&c.content_block.type==="tool_use")t({type:"stage_change",stage:"calling_tool",label:"Using tool..."}),o[c.index]={id:c.content_block.id,name:c.content_block.name,inputParts:[]},t({type:"tool_call_delta",index:c.index,id:c.content_block.id,name:c.content_block.name});else if(c.type==="content_block_delta"&&c.delta.type==="input_json_delta"){let m=o[c.index];m&&(m.inputParts.push(c.delta.partial_json),t({type:"tool_call_delta",index:c.index,argumentsDelta:c.delta.partial_json}))}else c.type==="message_delta"&&c.usage&&t({type:"usage",usage:{inputTokens:c.usage.input_tokens??void 0,outputTokens:c.usage.output_tokens??void 0,totalTokens:(c.usage.input_tokens??0)+(c.usage.output_tokens??0)}});let d=Date.now();t({type:"run_completed",timestamp:d,durationMs:d-i});let l=n.join(""),u=Object.values(o).map(c=>({id:c.id,name:c.name,input:Pe.safeParseJson(c.inputParts.join(""))}));return{role:"assistant",content:l,tool_uses:u.length>0?u:void 0}}estimateTokens(e){let t=L.getTokensPerChar();return Math.ceil(e.length*t)}async listModels(){return[{id:"claude-3-5-sonnet-20241022",name:"Claude 3.5 Sonnet (Latest)"},{id:"claude-3-5-haiku-20241022",name:"Claude 3.5 Haiku"},{id:"claude-3-opus-20240229",name:"Claude 3 Opus"},{id:"claude-3-sonnet-20240229",name:"Claude 3 Sonnet"},{id:"claude-3-haiku-20240307",name:"Claude 3 Haiku"}]}};Ke();ma();var eo=class r{root={children:new Map,isEndOfTag:!1};tags=[];constructor(e){this.tags=e;for(let t of e)this.insert(t)}insert(e){let t=this.root;for(let a of e)t.children.has(a)||t.children.set(a,{children:new Map,isEndOfTag:!1}),t=t.children.get(a);t.isEndOfTag=!0,t.tag=e}findEarliestTag(e){let t=1/0,a="";for(let i=0;i<e.length&&!(i>=t);i++){let s=this.matchFromPosition(e,i);s&&s.index<t&&(t=s.index,a=s.tag)}return a?{index:t,tag:a}:null}matchFromPosition(e,t){let a=this.root,i=null;for(let s=t;s<e.length;s++){let n=e[s];if(!a.children.has(n))break;if(a=a.children.get(n),a.isEndOfTag&&!i)return i=a.tag,{index:t,tag:i}}return null}findLongestPartialAtEnd(e){let t=0;for(let a=0;a<e.length;a++){let i=this.matchPartialFromPosition(e,a);i>0&&a+i===e.length&&(t=Math.max(t,i))}return t}matchPartialFromPosition(e,t){let a=this.root,i=0;for(let s=t;s<e.length;s++){let n=e[s];if(!a.children.has(n))return i;if(a=a.children.get(n),i++,a.isEndOfTag)return 0}return i}editDistanceCache=new Map;static MAX_CACHE_SIZE=1e3;findSimilarTags(e,t=2){let a=[];for(let i of this.tags){let s=`${e}:${i}`,n=this.editDistanceCache.get(s);if(n===void 0){if(n=this.editDistance(e,i),this.editDistanceCache.size>=r.MAX_CACHE_SIZE){let o=Array.from(this.editDistanceCache.keys()).slice(0,r.MAX_CACHE_SIZE/2);for(let p of o)this.editDistanceCache.delete(p)}this.editDistanceCache.set(s,n)}n<=t&&a.push(i)}return a}editDistance(e,t){return Me.levenshtein(e,t)}clearCache(){this.editDistanceCache.clear()}};var to=class r{buffer="";static MAX_BUFFER_SIZE=1e5;tags=["<|tool_call_begin|>","<|tool_call_end|>","<|tool_calls_section_begin|>","<|tool_calls_section_end|>","<|tool_call_id|>","<|tool_call_argument_begin|>","<|tool_call_arguments_begin|>","<tool>","</tool>","<function","</function>","<function_calls>","</function_calls>","<invoke","</invoke>","<thought>","</thought>","<tool_code>","</tool_code>","<tool_call>","</tool_call>","<|eot_id|>","<|start_header_id|>","<|end_header_id|>"];prefixTree;constructor(){this.prefixTree=new eo(this.tags)}process(e){if(this.buffer+=e,this.buffer.length>r.MAX_BUFFER_SIZE){console.error("[Marie] StreamTagDetector buffer exceeded safety limit. Flushing.");let m=this.buffer;return this.buffer="",{type:"content",text:m}}let t=this.prefixTree.findEarliestTag(this.buffer);if(t){let m=this.buffer.substring(0,t.index);return this.buffer=this.buffer.substring(t.index+t.tag.length),console.log(`[Marie] Tag detected: ${t.tag} at index ${t.index}`),{type:"tag",text:m,tag:t.tag}}let a=Math.min(200,this.buffer.length),i=this.buffer.substring(this.buffer.length-a),s=/<\|[\w_]{3,}(?:\|>|>)?|(?:^|[^a-zA-Z0-9_])(call:\d+>)|(?:^|[\s,])(\[Tool (?:Use|Result):[^\]]+\])/g,n=Array.from(i.matchAll(s));if(n.length>0){let m=n[n.length-1],h=m[2]||m[1]||m[0],v=this.buffer.length-a+m.index+(m[0].length-h.length);if(h.endsWith(">")||h.endsWith("]")||this.tags.includes(h)){let f=this.buffer.substring(0,v);return this.buffer=this.buffer.substring(v+h.length),console.log(`[Marie] Dynamic tag detected: ${h}`),{type:"tag",text:f,tag:h}}}let o=this.prefixTree.findLongestPartialAtEnd(this.buffer),p=this.buffer.match(/<\|[\w_]*$/),d=this.buffer.match(/call:\d*$/),l=Math.max(p?p[0].length:0,d?d[0].length:0),u=Math.max(o,l);if(u>0){let m=this.buffer.length-u,h=this.buffer.substring(0,m);return this.buffer=this.buffer.substring(m),{type:"incomplete",text:h}}let c=this.buffer;return this.buffer="",{type:"content",text:c}}reset(){this.buffer=""}getBufferSize(){return this.buffer.length}};var ro=class{tagDetector;llamaToolMode=!1;thinkingMode=!1;llamaBufferParts=[];toolCalls={};indexCount=0;constructor(){this.tagDetector=new to}stripToolWrapperTags(e){return e?e.replace(/<\|tool_calls_section_begin\|>/g,"").replace(/<\|tool_calls_section_end\|>/g,"").replace(/<\|tool_call_begin\|>/g,"").replace(/<\|tool_call_end\|>/g,"").replace(/<\|tool_call_argument_begin\|>/g,"").replace(/<\|tool_call_arguments_begin\|>/g,"").replace(/<tool_call>/g,"").replace(/<\/tool_call>/g,"").replace(/<tool>/g,"").replace(/<\/tool>/g,"").replace(/<function\b[^>]*>/g,"").replace(/<\/function>/g,"").replace(/<function_calls>/g,"").replace(/<\/function_calls>/g,"").trim():""}processContent(e){let t=[],a=e;for(;;){let i=this.tagDetector.process(a);if(a="",i.text&&(this.llamaToolMode?this.llamaBufferParts.push(i.text):this.thinkingMode?t.push({type:"reasoning_delta",text:i.text}):t.push({type:"content_delta",text:i.text})),i.type==="tag"){let s=i.tag;if(s==="<thought>"){this.thinkingMode=!0,t.push({type:"stage_change",stage:"thinking",label:"Thinking..."});continue}else if(s==="</thought>"){this.thinkingMode=!1,t.push({type:"stage_change",stage:"responding",label:"Generating response..."});continue}let n=s.startsWith("[Tool Use:"),o=s.startsWith("[Tool Result:");if(n||o){this.llamaToolMode&&this.finalizeCurrentBuffer(t),n?(this.llamaToolMode=!0,this.llamaBufferParts.push(s),t.push({type:"stage_change",stage:"calling_tool",label:"Using tool..."})):t.push({type:"content_delta",text:s});continue}let p=s==="<tool>"||s==="<|tool_call_begin|>"||s==="<|tool_calls_section_begin|>"||s==="<function_calls>"||s.startsWith("<function")||s==="<invoke"||s==="<tool_code>"||s==="<tool_call>",d=/<\|(?!.*_end)[\w_]{3,}\|>/.test(s)||/^call:\d+>$/.test(s),l=p||d;if(s==="</tool>"||s==="<|tool_call_end|>"||s==="<|tool_calls_section_end|>"||s==="</invoke>"||s==="</function>"||s==="</function_calls>"||s==="</tool_code>"||s==="</tool_call>"||s==="</call>"){this.llamaBufferParts.push(s);let c=this.llamaBufferParts.join(""),m=c.includes("<|tool_calls_section_begin|>")||c.includes("<|tool_call_begin|>"),h=c.length>s.length+10;if(m&&!h)console.warn("[Marie] Empty tool section detected - no tool content between markers"),t.push({type:"content_delta",text:c});else{let v=Pe.extractToolCall(c);if(v){let f=v.id||`call_${Date.now()}_${this.indexCount}`;t.push({type:"tool_call_delta",index:this.indexCount,id:f,name:v.name,argumentsDelta:JSON.stringify(v.input)}),this.toolCalls[this.indexCount]={id:f,name:v.name,arguments:JSON.stringify(v.input)},this.indexCount++,this.llamaToolMode=!1}else{let f=this.stripToolWrapperTags(c);f&&(console.warn("[Marie] Tool extraction failed, emitting cleaned fallback content"),t.push({type:"content_delta",text:f}))}}this.llamaToolMode=!1,this.llamaBufferParts=[]}else l?(this.llamaToolMode=!0,t.push({type:"stage_change",stage:"calling_tool",label:"Using tool..."}),this.llamaBufferParts.push(s)):this.llamaToolMode?this.llamaBufferParts.push(s):t.push({type:"content_delta",text:s});continue}break}return t}finalizeCurrentBuffer(e){if(this.llamaBufferParts.length===0)return;let t=this.llamaBufferParts.join(""),a=Pe.extractToolCall(t);if(a){let i=a.id||`call_${Date.now()}_${this.indexCount}`;e.push({type:"tool_call_delta",index:this.indexCount,id:i,name:a.name,argumentsDelta:JSON.stringify(a.input)}),this.toolCalls[this.indexCount]={id:i,name:a.name,arguments:JSON.stringify(a.input)},this.indexCount++}else{let i=this.stripToolWrapperTags(t);i&&e.push({type:"content_delta",text:i})}this.llamaBufferParts=[],this.llamaToolMode=!1}getCollectedToolCalls(){return this.toolCalls}finalize(e){let t=[],a=this.llamaBufferParts.join(""),i=Pe.extractToolCall(a);if(i||(i=Pe.extractToolCall(e)),i){let s=i.id||`call_${Date.now()}_${this.indexCount}_final`;console.log(`[Marie] Parser: Finalized extraction SUCCESS: ${i.name} (ID: ${s})`),Object.values(this.toolCalls).some(o=>o.name===i.name&&(o.arguments===JSON.stringify(i.input)||o.arguments.includes(JSON.stringify(i.input))))||(t.push({type:"tool_call_delta",index:this.indexCount,id:s,name:i.name,argumentsDelta:JSON.stringify(i.input)}),this.toolCalls[this.indexCount]={id:s,name:i.name,arguments:JSON.stringify(i.input)},this.indexCount++),this.llamaBufferParts=[]}else{let s=this.llamaBufferParts.join(""),n=this.stripToolWrapperTags(s);n&&s!==a?t.push({type:"content_delta",text:n}):n&&this.llamaToolMode&&t.push({type:"content_delta",text:n})}return this.llamaToolMode=!1,this.llamaBufferParts=[],t}};var ao=class{apiKey;baseUrl="https://openrouter.ai/api/v1";constructor(e){this.apiKey=e}async createMessage(e){let t=this.translateModelName(e.model),a=await fetch(`${this.baseUrl}/chat/completions`,{method:"POST",headers:{Authorization:`Bearer ${this.apiKey}`,"HTTP-Referer":"https://github.com/bozoegg/MarieCoder","X-Title":"MarieCoder VS Code Extension","Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({model:t,messages:this.getOpenAiMessages(e),tools:this.getOpenAiTools(e),max_tokens:e.max_tokens||1024})});if(!a.ok){let n=`OpenRouter API error: ${a.status} ${a.statusText} (model: ${t})`;try{let o=await a.json();o.error?.message&&(n=`OpenRouter API error: ${o.error.message} (model: ${t})`)}catch{let p=await a.text().catch(()=>"");p&&(n+=` - ${p}`)}throw new Error(n)}let i=await a.json();if(!i.choices||i.choices.length===0)throw new Error("OpenRouter API returned no choices.");let s=i.choices[0].message;if(s.tool_calls&&s.tool_calls.length>0)try{let n=s.tool_calls.map(o=>({id:o.id,name:o.function.name,input:Pe.safeParseJson(o.function.arguments)}));return{role:"assistant",content:s.content||"",tool_uses:n}}catch(n){return console.error("Failed to parse tool arguments from OpenRouter:",Oe(n)),{role:"assistant",content:s.content||"(Message error: Malformed tool arguments)"}}return{role:"assistant",content:s.content||""}}async createMessageStream(e,t,a){let i=new AbortController,s=!1,n=setTimeout(()=>{s=!0,i.abort()},12e4),o=!1,p=()=>{o=!0,i.abort()};a&&a.addEventListener("abort",p);try{let d=this.translateModelName(e.model),l=await fetch(`${this.baseUrl}/chat/completions`,{method:"POST",headers:{Authorization:`Bearer ${this.apiKey}`,"HTTP-Referer":"https://github.com/bozoegg/MarieCoder","X-Title":"MarieCoder VS Code Extension","Content-Type":"application/json",Accept:"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"},body:JSON.stringify({model:d,messages:this.getOpenAiMessages(e),tools:this.getOpenAiTools(e),max_tokens:e.max_tokens||1024,stream:!0,include_reasoning:!0}),signal:i.signal});if(!l.ok)throw new Error(`OpenRouter API error: ${l.status} (model: ${d})`);if(!l.body)throw new Error("OpenRouter API returned no body.");let u=l.body.getReader(),c=new TextDecoder,m=[],h=[],v=[],f={},g=Date.now();t({type:"run_started",timestamp:g}),t({type:"stage_change",stage:"thinking",label:"Processing request..."});let b=new ro;try{for(;;){let{done:_,value:M}=await u.read();if(_)break;let D=c.decode(M,{stream:!0});v.push(D);let q=v.join("").split(`
597
+ `),j=q.pop()||"";v.length=0,j&&v.push(j);for(let W of q){let we=W.trim();if(!(!we||we.startsWith(":"))&&we.startsWith("data: ")){let be=we.slice(6);if(be==="[DONE]")continue;try{let Fe=JSON.parse(be),Hd=Fe.choices?.[0];if(!Hd)continue;let Ds=Hd.delta;if(Ds?.content){let Ge=b.processContent(Ds.content);for(let $e of Ge)$e.type==="content_delta"&&m.push($e.text),$e.type==="reasoning_delta"&&h.push($e.text),t($e)}if(Ds?.tool_calls){t({type:"stage_change",stage:"calling_tool",label:"Using tool..."});for(let Ge of Ds.tool_calls){let $e=Ge.index;f[$e]?(Ge.id&&(f[$e].id=Ge.id),Ge.function?.name&&(f[$e].name+=Ge.function.name)):f[$e]={id:Ge.id||"",name:Ge.function?.name||"",argumentsParts:[]},Ge.function?.arguments&&(f[$e].argumentsParts.push(Ge.function.arguments),t({type:"tool_call_delta",index:$e,id:f[$e].id,name:f[$e].name,argumentsDelta:Ge.function.arguments}))}}Fe.usage&&t({type:"usage",usage:{inputTokens:Fe.usage.prompt_tokens,outputTokens:Fe.usage.completion_tokens,totalTokens:Fe.usage.total_tokens,reasoningTokens:Fe.usage.reasoning_tokens}})}catch{}}}}}finally{u.releaseLock()}let A=m.join(""),k=h.join(""),E=b.finalize(A);for(let _ of E)t(_);let N=Date.now();t({type:"run_completed",timestamp:N,durationMs:N-g});let V=b.getCollectedToolCalls();for(let _ in V){let M=V[_];f[parseInt(_)+1e3]={id:M.id,name:M.name,argumentsParts:[M.arguments]}}let T=[];for(let _ in f){let M=f[_];try{let D=M.argumentsParts.join("");T.push({id:M.id,name:M.name,input:Pe.safeParseJson(D)})}catch{}}let w=[];return k&&w.push({type:"thought",text:k}),A&&w.push({type:"text",text:A}),{role:"assistant",content:w.length>0?w:A,tool_uses:T.length>0?T:void 0}}catch(d){throw d instanceof Error&&d.name==="AbortError"?o?new Error("Request stopped by user"):s?new Error("OpenRouter timeout"):new Error("Request aborted"):d}finally{clearTimeout(n),a&&a.removeEventListener("abort",p)}}translateModelName(e){let t=(e||"").trim();if(!t)return"anthropic/claude-3.5-sonnet";if(t.includes("/"))return t;let a={"claude-3-5-sonnet-20241022":"anthropic/claude-3.5-sonnet","claude-3-5-sonnet":"anthropic/claude-3.5-sonnet","claude-3-5-haiku-20241022":"anthropic/claude-3.5-haiku","claude-3-5-haiku":"anthropic/claude-3.5-haiku","claude-3-opus-20240229":"anthropic/claude-3-opus","claude-3-opus":"anthropic/claude-3-opus","claude-3-sonnet-20240229":"anthropic/claude-3-sonnet","claude-3-sonnet":"anthropic/claude-3-sonnet","claude-3-haiku-20240307":"anthropic/claude-3-haiku","claude-3-haiku":"anthropic/claude-3-haiku"};if(a[t])return a[t];if(t.startsWith("claude-")){let i=t.replace(/-20\d{6}$/,""),s=i.match(/^claude-(\d+)-(\d+)(-.+)$/);if(s){let n=s[1],o=s[2],p=s[3];return`anthropic/claude-${n}.${o}${p}`}return`anthropic/${i}`}return t}getOpenAiMessages(e){let t=[];e.system&&t.push({role:"system",content:e.system});for(let a of e.messages)if(typeof a.content=="string")t.push({role:a.role,content:a.content});else if(Array.isArray(a.content)){let i="",s=[];for(let n of a.content)n.type==="text"?i+=n.text:n.type==="tool_use"?s.push({id:n.id,type:"function",function:{name:n.name,arguments:JSON.stringify(n.input)}}):n.type==="tool_result"&&t.push({role:"tool",tool_call_id:n.tool_use_id,content:typeof n.content=="string"?n.content:JSON.stringify(n.content)});if(a.role==="assistant"&&(i||s.length>0)){let n={role:"assistant",content:i||null};s.length>0&&(n.tool_calls=s),t.push(n)}else a.role==="user"&&i&&t.push({role:"user",content:i})}return t}getOpenAiTools(e){if(e.tools)return e.tools.map(t=>({type:"function",function:{name:t.name,description:t.description,parameters:t.input_schema}}))}estimateTokens(e){return Math.ceil(e.length*L.getTokensPerChar())}async listModels(){return[{id:"anthropic/claude-3.5-sonnet",name:"Claude 3.5 Sonnet"},{id:"google/gemini-2.0-flash-001",name:"Gemini 2.0 Flash"}]}};var jr="1.64.1";var Dc=!1,Br,Sp,m6,u6,h6,Ic,f6,io,Tp,Fc,xp,so,$c;function Oc(r,e={auto:!1}){if(Dc)throw new Error(`you must \`import '@cerebras/cerebras_cloud_sdk/shims/${r.kind}'\` before importing anything else from @cerebras/cerebras_cloud_sdk`);if(Br)throw new Error(`can't \`import '@cerebras/cerebras_cloud_sdk/shims/${r.kind}'\` after \`import '@cerebras/cerebras_cloud_sdk/shims/${Br}'\``);Dc=e.auto,Br=r.kind,Sp=r.fetch,m6=r.Request,u6=r.Response,h6=r.Headers,Ic=r.FormData,f6=r.Blob,io=r.File,Tp=r.ReadableStream,Fc=r.getMultipartRequestOptions,xp=r.getDefaultAgent,so=r.fileFromPath,$c=r.isFsReadStream}var vr=$(S2(),1);var Ym=require("util");ps();hd();qo();var Gm=r=>r instanceof xt;jo();var Km=require("util"),Xm=(0,Km.deprecate)(()=>{},'Constructor "entries" argument is not spec-compliant and will be removed in next major release.');var Et=function(r,e,t,a){if(t==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!a:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?a:t==="a"?a.call(r):a?a.value:e.get(r)},Wo,Pt,fd,zo=class{constructor(e){Wo.add(this),Pt.set(this,new Map),e&&(Xm(),e.forEach(({name:t,value:a,fileName:i})=>this.append(t,a,i)))}static[(Pt=new WeakMap,Wo=new WeakSet,Symbol.hasInstance)](e){return!!(e&&me(e.constructor)&&e[Symbol.toStringTag]==="FormData"&&me(e.append)&&me(e.set)&&me(e.get)&&me(e.getAll)&&me(e.has)&&me(e.delete)&&me(e.entries)&&me(e.values)&&me(e.keys)&&me(e[Symbol.iterator])&&me(e.forEach))}append(e,t,a){Et(this,Wo,"m",fd).call(this,{name:e,fileName:a,append:!0,rawValue:t,argsLength:arguments.length})}set(e,t,a){Et(this,Wo,"m",fd).call(this,{name:e,fileName:a,append:!1,rawValue:t,argsLength:arguments.length})}get(e){let t=Et(this,Pt,"f").get(String(e));return t?t[0]:null}getAll(e){let t=Et(this,Pt,"f").get(String(e));return t?t.slice():[]}has(e){return Et(this,Pt,"f").has(String(e))}delete(e){Et(this,Pt,"f").delete(String(e))}*keys(){for(let e of Et(this,Pt,"f").keys())yield e}*entries(){for(let e of this.keys()){let t=this.getAll(e);for(let a of t)yield[e,a]}}*values(){for(let[,e]of this)yield e}[(fd=function({name:t,rawValue:a,append:i,fileName:s,argsLength:n}){let o=i?"append":"set";if(n<2)throw new TypeError(`Failed to execute '${o}' on 'FormData': 2 arguments required, but only ${n} present.`);t=String(t);let p;if(ud(a))p=s===void 0?a:new ht([a],s,{type:a.type,lastModified:a.lastModified});else if(Gm(a))p=new ht([a],s===void 0?"blob":s,{type:a.type});else{if(s)throw new TypeError(`Failed to execute '${o}' on 'FormData': parameter 2 is not of type 'Blob'.`);p=String(a)}let d=Et(this,Pt,"f").get(t);if(!d)return void Et(this,Pt,"f").set(t,[p]);if(!i)return void Et(this,Pt,"f").set(t,[p]);d.push(p)},Symbol.iterator)](){return this.entries()}forEach(e,t){for(let[a,i]of this)e.call(t,i,a,this)}get[Symbol.toStringTag](){return"FormData"}[Ym.inspect.custom](){return this[Symbol.toStringTag]}};qo();ps();var Nd=$(c0(),1),j0=$(x0(),1),B0=require("node:fs");var E0="abcdefghijklmnopqrstuvwxyz0123456789";function r9(){let r=16,e="";for(;r--;)e+=E0[Math.random()*E0.length<<0];return e}var P0=r9;var a9=r=>Object.prototype.toString.call(r).slice(8,-1).toLowerCase();function i9(r){if(a9(r)!=="object")return!1;let e=Object.getPrototypeOf(r);return e==null?!0:(e.constructor&&e.constructor.toString())===Object.toString()}var Pd=i9;var s9=r=>String(r).replace(/\r|\n/g,(e,t,a)=>e==="\r"&&a[t+1]!==`
598
+ `||e===`
599
+ `&&a[t-1]!=="\r"?`\r
600
+ `:e),Ad=s9;var n9=r=>String(r).replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/"/g,"%22"),Rd=n9;var o9=r=>typeof r=="function",Xt=o9;var Zr=r=>!!(r&&typeof r=="object"&&Xt(r.constructor)&&r[Symbol.toStringTag]==="File"&&Xt(r.stream)&&r.name!=null&&r.size!=null&&r.lastModified!=null);var A0=r=>!!(r&&Xt(r.constructor)&&r[Symbol.toStringTag]==="FormData"&&Xt(r.append)&&Xt(r.getAll)&&Xt(r.entries)&&Xt(r[Symbol.iterator]));var vs=function(r,e,t,a,i){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?i.call(r,t):i?i.value=t:e.set(r,t),t},ae=function(r,e,t,a){if(t==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!a:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?a:t==="a"?a.call(r):a?a.value:e.get(r)},Qo,yr,ws,e1,bs,Qr,_s,Ss,t1,Cd,p9={enableAdditionalHeaders:!1},r1=class{constructor(e,t,a){if(Qo.add(this),yr.set(this,`\r
601
+ `),ws.set(this,void 0),e1.set(this,void 0),bs.set(this,"-".repeat(2)),Qr.set(this,new TextEncoder),_s.set(this,void 0),Ss.set(this,void 0),t1.set(this,void 0),!A0(e))throw new TypeError("Expected first argument to be a FormData instance.");let i;if(Pd(t)?a=t:i=t,i||(i=P0()),typeof i!="string")throw new TypeError("Expected boundary argument to be a string.");if(a&&!Pd(a))throw new TypeError("Expected options argument to be an object.");vs(this,Ss,e,"f"),vs(this,t1,{...p9,...a},"f"),vs(this,ws,ae(this,Qr,"f").encode(ae(this,yr,"f")),"f"),vs(this,e1,ae(this,ws,"f").byteLength,"f"),this.boundary=`form-data-boundary-${i}`,this.contentType=`multipart/form-data; boundary=${this.boundary}`,vs(this,_s,ae(this,Qr,"f").encode(`${ae(this,bs,"f")}${this.boundary}${ae(this,bs,"f")}${ae(this,yr,"f").repeat(2)}`),"f"),this.contentLength=String(this.getContentLength()),this.headers=Object.freeze({"Content-Type":this.contentType,"Content-Length":this.contentLength}),Object.defineProperties(this,{boundary:{writable:!1,configurable:!1},contentType:{writable:!1,configurable:!1},contentLength:{writable:!1,configurable:!1},headers:{writable:!1,configurable:!1}})}getContentLength(){let e=0;for(let[t,a]of ae(this,Ss,"f")){let i=Zr(a)?a:ae(this,Qr,"f").encode(Ad(a));e+=ae(this,Qo,"m",Cd).call(this,t,i).byteLength,e+=Zr(i)?i.size:i.byteLength,e+=ae(this,e1,"f")}return e+ae(this,_s,"f").byteLength}*values(){for(let[e,t]of ae(this,Ss,"f").entries()){let a=Zr(t)?t:ae(this,Qr,"f").encode(Ad(t));yield ae(this,Qo,"m",Cd).call(this,e,a),yield a,yield ae(this,ws,"f")}yield ae(this,_s,"f")}async*encode(){for(let e of this.values())Zr(e)?yield*e.stream():yield e}[(yr=new WeakMap,ws=new WeakMap,e1=new WeakMap,bs=new WeakMap,Qr=new WeakMap,_s=new WeakMap,Ss=new WeakMap,t1=new WeakMap,Qo=new WeakSet,Cd=function(t,a){let i="";return i+=`${ae(this,bs,"f")}${this.boundary}${ae(this,yr,"f")}`,i+=`Content-Disposition: form-data; name="${Rd(t)}"`,Zr(a)&&(i+=`; filename="${Rd(a.name)}"${ae(this,yr,"f")}`,i+=`Content-Type: ${a.type||"application/octet-stream"}`),ae(this,t1,"f").enableAdditionalHeaders===!0&&(i+=`${ae(this,yr,"f")}Content-Length: ${Zr(a)?a.size:a.byteLength}`),ae(this,Qr,"f").encode(`${i}${ae(this,yr,"f").repeat(2)}`)},Symbol.iterator)](){return this.values()}[Symbol.asyncIterator](){return this.encode()}};var V0=require("node:stream");var a1=class{constructor(e){this.body=e}get[Symbol.toStringTag](){return"MultipartBody"}};var q0=require("node:stream/web"),L0=!1;async function h9(r,...e){let{fileFromPath:t}=await Promise.resolve().then(()=>(O0(),$0));return L0||(console.warn(`fileFromPath is deprecated; use fs.createReadStream(${JSON.stringify(r)}) instead`),L0=!0),await t(r,...e)}var f9=new Nd.default({keepAlive:!0,timeout:300*1e3}),g9=new Nd.default.HttpsAgent({keepAlive:!0,timeout:300*1e3});async function y9(r,e){let t=new r1(r),a=V0.Readable.from(t),i=new a1(a),s={...e.headers,...t.headers,"Content-Length":t.contentLength};return{...e,body:i,headers:s}}function U0(){return typeof AbortController>"u"&&(globalThis.AbortController=j0.AbortController),{kind:"node",fetch:vr.default,Request:vr.Request,Response:vr.Response,Headers:vr.Headers,FormData:zo,Blob:xt,File:ht,ReadableStream:q0.ReadableStream,getMultipartRequestOptions:y9,getDefaultAgent:r=>r.startsWith("https")?g9:f9,fileFromPath:h9,isFsReadStream:r=>r instanceof B0.ReadStream}}var Md=()=>{Br||Oc(U0(),{auto:!0})};Md();var Ne=class extends Error{},ve=class r extends Ne{constructor(e,t,a,i){super(`${r.makeMessage(e,t,a)}`),this.status=e,this.headers=i,this.error=t}static makeMessage(e,t,a){let i=t?.message?typeof t.message=="string"?t.message:JSON.stringify(t.message):t?JSON.stringify(t):a;return e&&i?`${e} ${i}`:e?`${e} status code (no body)`:i||"(no status code or body)"}static generate(e,t,a,i){if(e===void 0||i===void 0)return new wr({message:a,cause:i1(t)});let s=t;return e===400?new xs(e,s,a,i):e===401?new Es(e,s,a,i):e===403?new Ps(e,s,a,i):e===404?new As(e,s,a,i):e===409?new Rs(e,s,a,i):e===422?new Cs(e,s,a,i):e===429?new ks(e,s,a,i):e>=500?new Ns(e,s,a,i):new r(e,s,a,i)}},ra=class extends ve{constructor({message:e}={}){super(void 0,void 0,e||"Request was aborted.",void 0)}},wr=class extends ve{constructor({message:e,cause:t}){super(void 0,void 0,e||"Connection error.",void 0),t&&(this.cause=t)}},oi=class extends wr{constructor({message:e}={}){super({message:e??"Request timed out."})}},xs=class extends ve{},Es=class extends ve{},Ps=class extends ve{},As=class extends ve{},Rs=class extends ve{},Cs=class extends ve{},ks=class extends ve{},Ns=class extends ve{};var s1=class r{constructor(e,t){this.iterator=e,this.controller=t}static fromSSEResponse(e,t){let a=!1;async function*i(){if(a)throw new Error("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");a=!0;let s=!1;try{for await(let n of w9(e,t))if(!s){if(n.data.startsWith("[DONE]")){s=!0;continue}if(n.event===null){let o;try{o=JSON.parse(n.data)}catch(p){throw console.error("Could not parse message into JSON:",n.data),console.error("From chunk:",n.raw),p}if(o&&o.error){let p=o.status_code||0;throw ve.generate(p,o.error,void 0,void 0)}yield o}else{let o;try{o=JSON.parse(n.data)}catch(p){throw console.error("Could not parse message into JSON:",n.data),console.error("From chunk:",n.raw),p}if(n.event=="error"){let p=o.status_code||0;throw ve.generate(p,o.error,void 0,void 0)}yield{event:n.event,data:o}}}s=!0}catch(n){if(n instanceof Error&&n.name==="AbortError")return;throw n}finally{s||t.abort()}}return new r(i,t)}static fromReadableStream(e,t){let a=!1;async function*i(){let n=new pi,o=H0(e);for await(let p of o)for(let d of n.decode(p))yield d;for(let p of n.flush())yield p}async function*s(){if(a)throw new Error("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");a=!0;let n=!1;try{for await(let o of i())n||o&&(yield JSON.parse(o));n=!0}catch(o){if(o instanceof Error&&o.name==="AbortError")return;throw o}finally{n||t.abort()}}return new r(s,t)}[Symbol.asyncIterator](){return this.iterator()}tee(){let e=[],t=[],a=this.iterator(),i=s=>({next:()=>{if(s.length===0){let n=a.next();e.push(n),t.push(n)}return s.shift()}});return[new r(()=>i(e),this.controller),new r(()=>i(t),this.controller)]}toReadableStream(){let e=this,t,a=new TextEncoder;return new Tp({async start(){t=e[Symbol.asyncIterator]()},async pull(i){try{let{value:s,done:n}=await t.next();if(n)return i.close();let o=a.encode(JSON.stringify(s)+`
602
+ `);i.enqueue(o)}catch(s){i.error(s)}},async cancel(){await t.return?.()}})}};async function*w9(r,e){if(!r.body)throw e.abort(),new Ne("Attempted to iterate over a response with no body");let t=new Dd,a=new pi,i=H0(r.body);for await(let s of b9(i))for(let n of a.decode(s)){let o=t.decode(n);o&&(yield o)}for(let s of a.flush()){let n=t.decode(s);n&&(yield n)}}async function*b9(r){let e=new Uint8Array;for await(let t of r){if(t==null)continue;let a=t instanceof ArrayBuffer?new Uint8Array(t):typeof t=="string"?new TextEncoder().encode(t):t,i=new Uint8Array(e.length+a.length);i.set(e),i.set(a,e.length),e=i;let s;for(;(s=_9(e))!==-1;)yield e.slice(0,s),e=e.slice(s)}e.length>0&&(yield e)}function _9(r){for(let a=0;a<r.length-2;a++){if(r[a]===10&&r[a+1]===10||r[a]===13&&r[a+1]===13)return a+2;if(r[a]===13&&r[a+1]===10&&a+3<r.length&&r[a+2]===13&&r[a+3]===10)return a+4}return-1}var Dd=class{constructor(){this.event=null,this.data=[],this.chunks=[]}decode(e){if(e.endsWith("\r")&&(e=e.substring(0,e.length-1)),!e){if(!this.event&&!this.data.length)return null;let s={event:this.event,data:this.data.join(`
603
+ `),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],s}if(this.chunks.push(e),e.startsWith(":"))return null;let[t,a,i]=S9(e,":");return i.startsWith(" ")&&(i=i.substring(1)),t==="event"?this.event=i:t==="data"&&this.data.push(i),null}},pi=class r{constructor(){this.buffer=[],this.trailingCR=!1}decode(e){let t=this.decodeText(e);if(this.trailingCR&&(t="\r"+t,this.trailingCR=!1),t.endsWith("\r")&&(this.trailingCR=!0,t=t.slice(0,-1)),!t)return[];let a=r.NEWLINE_CHARS.has(t[t.length-1]||""),i=t.split(r.NEWLINE_REGEXP);return a&&i.pop(),i.length===1&&!a?(this.buffer.push(i[0]),[]):(this.buffer.length>0&&(i=[this.buffer.join("")+i[0],...i.slice(1)],this.buffer=[]),a||(this.buffer=[i.pop()||""]),i)}decodeText(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof Buffer<"u"){if(e instanceof Buffer)return e.toString();if(e instanceof Uint8Array)return Buffer.from(e).toString();throw new Ne(`Unexpected: received non-Uint8Array (${e.constructor.name}) stream chunk in an environment with a global "Buffer" defined, which this library assumes to be Node. Please report this error.`)}if(typeof TextDecoder<"u"){if(e instanceof Uint8Array||e instanceof ArrayBuffer)return this.textDecoder??(this.textDecoder=new TextDecoder("utf8")),this.textDecoder.decode(e);throw new Ne(`Unexpected: received non-Uint8Array/ArrayBuffer (${e.constructor.name}) in a web platform. Please report this error.`)}throw new Ne("Unexpected: neither Buffer nor TextDecoder are available as globals. Please report this error.")}flush(){if(!this.buffer.length&&!this.trailingCR)return[];let e=[this.buffer.join("")];return this.buffer=[],this.trailingCR=!1,e}};pi.NEWLINE_CHARS=new Set([`
604
+ `,"\r"]);pi.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function S9(r,e){let t=r.indexOf(e);return t!==-1?[r.substring(0,t),e,r.substring(t+e.length)]:[r,"",""]}function H0(r){if(r[Symbol.asyncIterator])return r;let e=r.getReader();return{async next(){try{let t=await e.read();return t?.done&&e.releaseLock(),t}catch(t){throw e.releaseLock(),t}},async return(){let t=e.cancel();return e.releaseLock(),await t,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}var T9=r=>r!=null&&typeof r=="object"&&typeof r.url=="string"&&typeof r.blob=="function",x9=r=>r!=null&&typeof r=="object"&&typeof r.name=="string"&&typeof r.lastModified=="number"&&Ms(r),Ms=r=>r!=null&&typeof r=="object"&&typeof r.size=="number"&&typeof r.type=="string"&&typeof r.text=="function"&&typeof r.slice=="function"&&typeof r.arrayBuffer=="function";async function W0(r,e,t){if(r=await r,x9(r))return r;if(T9(r)){let i=await r.blob();e||(e=new URL(r.url).pathname.split(/[\\/]/).pop()??"unknown_file");let s=Ms(i)?[await i.arrayBuffer()]:[i];return new io(s,e,t)}let a=await E9(r);if(e||(e=A9(r)??"unknown_file"),!t?.type){let i=a[0]?.type;typeof i=="string"&&(t={...t,type:i})}return new io(a,e,t)}async function E9(r){let e=[];if(typeof r=="string"||ArrayBuffer.isView(r)||r instanceof ArrayBuffer)e.push(r);else if(Ms(r))e.push(await r.arrayBuffer());else if(R9(r))for await(let t of r)e.push(t);else throw new Error(`Unexpected data type: ${typeof r}; constructor: ${r?.constructor?.name}; props: ${P9(r)}`);return e}function P9(r){return`[${Object.getOwnPropertyNames(r).map(t=>`"${t}"`).join(", ")}]`}function A9(r){return Id(r.name)||Id(r.filename)||Id(r.path)?.split(/[\\/]/).pop()}var Id=r=>{if(typeof r=="string")return r;if(typeof Buffer<"u"&&r instanceof Buffer)return String(r)},R9=r=>r!=null&&typeof r=="object"&&typeof r[Symbol.asyncIterator]=="function",Fd=r=>r&&typeof r=="object"&&r.body&&r[Symbol.toStringTag]==="MultipartBody";var Y0=function(r,e,t,a,i){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?i.call(r,t):i?i.value=t:e.set(r,t),t},Z0=function(r,e,t,a){if(t==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!a:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?a:t==="a"?a.call(r):a?a.value:e.get(r)},p1,n1;Md();async function Q0(r){let{response:e}=r;if(r.options.stream)return br("response",e.status,e.url,e.headers,e.body),r.options.__streamClass?r.options.__streamClass.fromSSEResponse(e,r.controller):s1.fromSSEResponse(e,r.controller);if(e.status===204)return null;if(r.options.__binaryResponse)return e;let a=e.headers.get("content-type")?.split(";")[0]?.trim();if(a?.includes("application/json")||a?.endsWith("+json")){let n=await e.json();return br("response",e.status,e.url,e.headers,n),n}let s=await e.text();return br("response",e.status,e.url,e.headers,s),s}var d1=class r extends Promise{constructor(e,t=Q0){super(a=>{a(null)}),this.responsePromise=e,this.parseResponse=t}_thenUnwrap(e){return new r(this.responsePromise,async t=>e(await this.parseResponse(t),t))}asResponse(){return this.responsePromise.then(e=>e.response)}async withResponse(){let[e,t]=await Promise.all([this.parse(),this.asResponse()]);return{data:e,response:t}}parse(){return this.parsedPromise||(this.parsedPromise=this.responsePromise.then(this.parseResponse)),this.parsedPromise}then(e,t){return this.parse().then(e,t)}catch(e){return this.parse().catch(e)}finally(e){return this.parse().finally(e)}},l1=class{constructor({baseURL:e,baseURLOverridden:t,maxRetries:a=2,timeout:i=6e4,httpAgent:s,fetch:n}){p1.set(this,void 0),this.baseURL=e,Y0(this,p1,t,"f"),this.maxRetries=$d("maxRetries",a),this.timeout=$d("timeout",i),this.httpAgent=s,this.fetch=n??Sp}authHeaders(e){return{}}defaultHeaders(e){return{Accept:"application/json",...["head","get"].includes(e.method)?{}:{"Content-Type":"application/json"},"User-Agent":this.getUserAgent(),...I9(),...this.authHeaders(e)}}validateHeaders(e,t){}defaultIdempotencyKey(){return`stainless-node-retry-${j9()}`}get(e,t){return this.methodRequest("get",e,t)}post(e,t){return this.methodRequest("post",e,t)}patch(e,t){return this.methodRequest("patch",e,t)}put(e,t){return this.methodRequest("put",e,t)}delete(e,t){return this.methodRequest("delete",e,t)}methodRequest(e,t,a){return this.request(Promise.resolve(a).then(async i=>{let s=i&&Ms(i?.body)?new DataView(await i.body.arrayBuffer()):i?.body instanceof DataView?i.body:i?.body instanceof ArrayBuffer?new DataView(i.body):i&&ArrayBuffer.isView(i?.body)?new DataView(i.body.buffer):i?.body;return{method:e,path:t,...i,body:s}}))}getAPIList(e,t,a){return this.requestAPIList(t,{method:"get",path:e,...a})}calculateContentLength(e){if(typeof e=="string"){if(typeof Buffer<"u")return Buffer.byteLength(e,"utf8").toString();if(typeof TextEncoder<"u")return new TextEncoder().encode(e).length.toString()}else if(ArrayBuffer.isView(e))return e.byteLength.toString();return null}async buildRequest(e,{retryCount:t=0}={}){let a={...e},{method:i,path:s,query:n,defaultBaseURL:o,headers:p={}}=a,d=ArrayBuffer.isView(a.body)||a.__binaryRequest&&typeof a.body=="string"?a.body:Fd(a.body)?a.body.body:a.body?JSON.stringify(a.body,null,2):null,l=this.calculateContentLength(d),u=this.buildURL(s,n,o);"timeout"in a&&$d("timeout",a.timeout),a.timeout=a.timeout??this.timeout;let c=a.httpAgent??this.httpAgent??xp(u),m=a.timeout+1e3;typeof c?.options?.timeout=="number"&&m>(c.options.timeout??0)&&(c.options.timeout=m),this.idempotencyHeader&&i!=="get"&&(e.idempotencyKey||(e.idempotencyKey=this.defaultIdempotencyKey()),p[this.idempotencyHeader]=e.idempotencyKey);let h=this.buildHeaders({options:a,headers:p,contentLength:l,retryCount:t});return{req:{method:i,...d&&{body:d},headers:h,...c&&{agent:c},signal:a.signal??null},url:u,timeout:a.timeout}}buildHeaders({options:e,headers:t,contentLength:a,retryCount:i}){let s={};a&&(s["content-length"]=a);let n=this.defaultHeaders(e);return X0(s,n),X0(s,t),Fd(e.body)&&Br!=="node"&&delete s["content-type"],o1(n,"x-stainless-retry-count")===void 0&&o1(t,"x-stainless-retry-count")===void 0&&(s["x-stainless-retry-count"]=String(i)),o1(n,"x-stainless-timeout")===void 0&&o1(t,"x-stainless-timeout")===void 0&&e.timeout&&(s["x-stainless-timeout"]=String(Math.trunc(e.timeout/1e3))),this.validateHeaders(s,t),s}async prepareOptions(e){}async prepareRequest(e,{url:t,options:a}){}parseHeaders(e){return e?Symbol.iterator in e?Object.fromEntries(Array.from(e).map(t=>[...t])):{...e}:{}}makeStatusError(e,t,a,i){return ve.generate(e,t,a,i)}request(e,t=null){return new d1(this.makeRequest(e,t))}async makeRequest(e,t){let a=await e,i=a.maxRetries??this.maxRetries;t==null&&(t=i),await this.prepareOptions(a);let{req:s,url:n,timeout:o}=await this.buildRequest(a,{retryCount:i-t});if(await this.prepareRequest(s,{url:n,options:a}),br("request",n,a,s.headers),a.signal?.aborted)throw new ra;let p=new AbortController,d=await this.fetchWithTimeout(n,s,o,p).catch(i1);if(d instanceof Error){if(a.signal?.aborted)throw new ra;if(t)return this.retryRequest(a,t);throw d.name==="AbortError"?new oi:new wr({cause:d})}let l=k9(d.headers);if(!d.ok){if(t&&this.shouldRetry(d)){let f=`retrying, ${t} attempts remaining`;return br(`response (error; ${f})`,d.status,n,l),this.retryRequest(a,t,l)}let u=await d.text().catch(f=>i1(f).message),c=F9(u),m=c?void 0:u;throw br(`response (error; ${t?"(error; no more retries left)":"(error; not retryable)"})`,d.status,n,l,m),this.makeStatusError(d.status,c,m,l)}return{response:d,options:a,controller:p}}requestAPIList(e,t){let a=this.makeRequest(t,null);return new Od(this,a,e)}buildURL(e,t,a){let i=!Z0(this,p1,"f")&&a||this.baseURL,s=O9(e)?new URL(e):new URL(i+(i.endsWith("/")&&e.startsWith("/")?e.slice(1):e)),n=this.defaultQuery();return eu(n)||(t={...n,...t}),typeof t=="object"&&t&&!Array.isArray(t)&&(s.search=this.stringifyQuery(t)),s.toString()}stringifyQuery(e){return Object.entries(e).filter(([t,a])=>typeof a<"u").map(([t,a])=>{if(typeof a=="string"||typeof a=="number"||typeof a=="boolean")return`${encodeURIComponent(t)}=${encodeURIComponent(a)}`;if(a===null)return`${encodeURIComponent(t)}=`;throw new Ne(`Cannot stringify type ${typeof a}; Expected string, number, boolean, or null. If you need to pass nested query parameters, you can manually encode them, e.g. { query: { 'foo[key1]': value1, 'foo[key2]': value2 } }, and please open a GitHub issue requesting better support for your use case.`)}).join("&")}async fetchWithTimeout(e,t,a,i){let{signal:s,...n}=t||{};s&&s.addEventListener("abort",()=>i.abort());let o=setTimeout(()=>i.abort(),a),p={signal:i.signal,...n};return p.method&&(p.method=p.method.toUpperCase()),this.fetch.call(void 0,e,p).finally(()=>{clearTimeout(o)})}shouldRetry(e){let t=e.headers.get("x-should-retry");return t==="true"?!0:t==="false"?!1:e.status===408||e.status===409||e.status===429||e.status>=500}async retryRequest(e,t,a){let i,s=a?.["retry-after-ms"];if(s){let o=parseFloat(s);Number.isNaN(o)||(i=o)}let n=a?.["retry-after"];if(n&&!i){let o=parseFloat(n);Number.isNaN(o)?i=Date.parse(n)-Date.now():i=o*1e3}if(!(i&&0<=i&&i<60*1e3)){let o=e.maxRetries??this.maxRetries;i=this.calculateDefaultRetryTimeoutMillis(t,o)}return await L9(i),this.makeRequest(e,t-1)}calculateDefaultRetryTimeoutMillis(e,t){let s=t-e,n=Math.min(.5*Math.pow(2,s),8),o=1-Math.random()*.25;return n*o*1e3}getUserAgent(){return`${this.constructor.name}/JS ${jr}`}};p1=new WeakMap;var z0=class{constructor(e,t,a,i){n1.set(this,void 0),Y0(this,n1,e,"f"),this.options=i,this.response=t,this.body=a}hasNextPage(){return this.getPaginatedItems().length?this.nextPageInfo()!=null:!1}async getNextPage(){let e=this.nextPageInfo();if(!e)throw new Ne("No next page expected; please check `.hasNextPage()` before calling `.getNextPage()`.");let t={...this.options};if("params"in e&&typeof t.query=="object")t.query={...t.query,...e.params};else if("url"in e){let a=[...Object.entries(t.query||{}),...e.url.searchParams.entries()];for(let[i,s]of a)e.url.searchParams.set(i,s);t.query=void 0,t.path=e.url.toString()}return await Z0(this,n1,"f").requestAPIList(this.constructor,t)}async*iterPages(){let e=this;for(yield e;e.hasNextPage();)e=await e.getNextPage(),yield e}async*[(n1=new WeakMap,Symbol.asyncIterator)](){for await(let e of this.iterPages())for(let t of e.getPaginatedItems())yield t}},Od=class extends d1{constructor(e,t,a){super(t,async i=>new a(e,i.response,await Q0(i),i.options))}async*[Symbol.asyncIterator](){let e=await this;for await(let t of e)yield t}},k9=r=>new Proxy(Object.fromEntries(r.entries()),{get(e,t){let a=t.toString();return e[a.toLowerCase()]||e[a]}}),N9={method:!0,path:!0,query:!0,body:!0,headers:!0,defaultBaseURL:!0,maxRetries:!0,stream:!0,timeout:!0,httpAgent:!0,signal:!0,idempotencyKey:!0,__binaryRequest:!0,__binaryResponse:!0,__streamClass:!0},Ld=r=>typeof r=="object"&&r!==null&&!eu(r)&&Object.keys(r).every(e=>tu(N9,e)),M9=()=>{if(typeof Deno<"u"&&Deno.build!=null)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":jr,"X-Stainless-OS":G0(Deno.build.os),"X-Stainless-Arch":J0(Deno.build.arch),"X-Stainless-Runtime":"deno","X-Stainless-Runtime-Version":typeof Deno.version=="string"?Deno.version:Deno.version?.deno??"unknown"};if(typeof EdgeRuntime<"u")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":jr,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":process.version};if(Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":jr,"X-Stainless-OS":G0(process.platform),"X-Stainless-Arch":J0(process.arch),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":process.version};let r=D9();return r?{"X-Stainless-Lang":"js","X-Stainless-Package-Version":jr,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${r.browser}`,"X-Stainless-Runtime-Version":r.version}:{"X-Stainless-Lang":"js","X-Stainless-Package-Version":jr,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}};function D9(){if(typeof navigator>"u"||!navigator)return null;let r=[{key:"edge",pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"chrome",pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"firefox",pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"safari",pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}];for(let{key:e,pattern:t}of r){let a=t.exec(navigator.userAgent);if(a){let i=a[1]||0,s=a[2]||0,n=a[3]||0;return{browser:e,version:`${i}.${s}.${n}`}}}return null}var J0=r=>r==="x32"?"x32":r==="x86_64"||r==="x64"?"x64":r==="arm"?"arm":r==="aarch64"||r==="arm64"?"arm64":r?`other:${r}`:"unknown",G0=r=>(r=r.toLowerCase(),r.includes("ios")?"iOS":r==="android"?"Android":r==="darwin"?"MacOS":r==="win32"?"Windows":r==="freebsd"?"FreeBSD":r==="openbsd"?"OpenBSD":r==="linux"?"Linux":r?`Other:${r}`:"Unknown"),K0,I9=()=>K0??(K0=M9()),F9=r=>{try{return JSON.parse(r)}catch{return}},$9=/^[a-z][a-z0-9+.-]*:/i,O9=r=>$9.test(r),L9=r=>new Promise(e=>setTimeout(e,r)),$d=(r,e)=>{if(typeof e!="number"||!Number.isInteger(e))throw new Ne(`${r} must be an integer`);if(e<0)throw new Ne(`${r} must be a positive integer`);return e},i1=r=>{if(r instanceof Error)return r;if(typeof r=="object"&&r!==null)try{return new Error(JSON.stringify(r))}catch{}return new Error(r)};var jd=r=>{if(typeof process<"u")return process.env?.[r]?.trim()??void 0;if(typeof Deno<"u")return Deno.env?.get?.(r)?.trim()};function eu(r){if(!r)return!0;for(let e in r)return!1;return!0}function tu(r,e){return Object.prototype.hasOwnProperty.call(r,e)}function X0(r,e){for(let t in e){if(!tu(e,t))continue;let a=t.toLowerCase();if(!a)continue;let i=e[t];i===null?delete r[a]:i!==void 0&&(r[a]=i)}}function br(r,...e){typeof process<"u"&&process?.env?.DEBUG==="true"&&console.log(`Cerebras:DEBUG:${r}`,...e)}var j9=()=>"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,r=>{let e=Math.random()*16|0;return(r==="x"?e:e&3|8).toString(16)});var B9=r=>typeof r?.get=="function";var o1=(r,e)=>{let t=e.toLowerCase();if(B9(r)){let a=e[0]?.toUpperCase()+e.substring(1).replace(/([^\w])(\w)/g,(i,s,n)=>s+n.toUpperCase());for(let i of[e,t,e.toUpperCase(),a]){let s=r.get(i);if(s)return s}}for(let[a,i]of Object.entries(r))if(a.toLowerCase()===t)return Array.isArray(i)?(i.length<=1||console.warn(`Received ${i.length} entries for the ${e} header, using the first entry.`),i[0]):i};var Rt=class{constructor(e){this._client=e}};var di=class extends Rt{create(e,t){let{"CF-RAY":a,"X-Amz-Cf-Id":i,"X-delay-time":s,...n}=e;return this._client.post("/v1/chat/completions",{body:n,...t,stream:n.stream??!1,headers:{...a!=null?{"CF-RAY":a}:void 0,...i!=null?{"X-Amz-Cf-Id":i}:void 0,...s?.toString()!=null?{"X-delay-time":s?.toString()}:void 0,...t?.headers}})}};var _r=class extends Rt{constructor(){super(...arguments),this.completions=new di(this._client)}};_r.Completions=di;var aa=class extends Rt{create(e,t){let{"CF-RAY":a,"X-Amz-Cf-Id":i,"X-delay-time":s,...n}=e;return this._client.post("/v1/completions",{body:n,...t,stream:n.stream??!1,headers:{...a!=null?{"CF-RAY":a}:void 0,...i!=null?{"X-Amz-Cf-Id":i}:void 0,...s?.toString()!=null?{"X-delay-time":s?.toString()}:void 0,...t?.headers}})}};var ia=class extends Rt{retrieve(e,t={},a){if(Ld(t))return this.retrieve(e,{},t);let{"CF-RAY":i,"X-Amz-Cf-Id":s}=t;return this._client.get(`/v1/models/${e}`,{...a,headers:{...i!=null?{"CF-RAY":i}:void 0,...s!=null?{"X-Amz-Cf-Id":s}:void 0,...a?.headers}})}list(e={},t){if(Ld(e))return this.list({},e);let{"CF-RAY":a,"X-Amz-Cf-Id":i}=e;return this._client.get("/v1/models",{...t,headers:{...a!=null?{"CF-RAY":a}:void 0,...i!=null?{"X-Amz-Cf-Id":i}:void 0,...t?.headers}})}};var ru,au,H9,ie=class extends l1{constructor({baseURL:e=jd("CEREBRAS_BASE_URL"),apiKey:t=jd("CEREBRAS_API_KEY"),warmTCPConnection:a=!0,...i}={}){if(t===void 0)throw new Ne("The CEREBRAS_API_KEY environment variable is missing or empty; either provide it, or instantiate the Cerebras client with an apiKey option, like new Cerebras({ apiKey: 'My API Key' }).");let s={apiKey:t,...i,baseURL:e||"https://api.cerebras.ai"};super({baseURL:s.baseURL,baseURLOverridden:e?e!=="https://api.cerebras.ai":!1,timeout:s.timeout??6e4,httpAgent:s.httpAgent,maxRetries:s.maxRetries,fetch:s.fetch}),ru.add(this),this.chat=new _r(this),this.completions=new aa(this),this.models=new ia(this),this._options=s,this.apiKey=t,a&&(async()=>{try{await this.get("/v1/tcp_warming",{timeout:1e3,maxRetries:0})}catch(n){br(`TCP Warming had exception: ${n}`)}})()}defaultQuery(){return this._options.defaultQuery}defaultHeaders(e){return{...super.defaultHeaders(e),...this._options.defaultHeaders}}authHeaders(e){return{Authorization:`Bearer ${this.apiKey}`}}};au=ie,ru=new WeakSet,H9=function(){return this.baseURL!=="https://api.cerebras.ai"};ie.Cerebras=au;ie.DEFAULT_TIMEOUT=6e4;ie.CerebrasError=Ne;ie.APIError=ve;ie.APIConnectionError=wr;ie.APIConnectionTimeoutError=oi;ie.APIUserAbortError=ra;ie.NotFoundError=As;ie.ConflictError=Rs;ie.RateLimitError=ks;ie.BadRequestError=xs;ie.AuthenticationError=Es;ie.InternalServerError=Ns;ie.PermissionDeniedError=Ps;ie.UnprocessableEntityError=Cs;ie.toFile=W0;ie.fileFromPath=so;ie.Chat=_r;ie.Completions=aa;ie.Models=ia;var iu=ie;Ke();ma();var c1=class{client;constructor(e){this.client=new iu({apiKey:e})}async createMessage(e){try{let i=(await this.client.chat.completions.create({model:e.model,messages:this.convertMessages(e.messages),tools:this.convertTools(e.tools),max_tokens:e.max_tokens||1024})).choices[0].message;return i.tool_calls&&i.tool_calls.length>0?{role:"assistant",content:i.content||"",tool_uses:i.tool_calls.map(s=>({id:s.id,name:s.function.name,input:Pe.safeParseJson(s.function.arguments)}))}:{role:"assistant",content:i.content||""}}catch(t){throw new Error(`Cerebras API Error: ${Oe(t)}`)}}async createMessageStream(e,t,a){let i=Date.now();t({type:"run_started",timestamp:i}),t({type:"stage_change",stage:"thinking",label:"Processing request..."});try{let s=await this.client.chat.completions.create({model:e.model,messages:this.convertMessages(e.messages),tools:this.convertTools(e.tools),max_tokens:e.max_tokens||1024,stream:!0},{abortSignal:a}),n=[],o={},p=!1;for await(let m of s){if(a?.aborted)throw new Error("Cerebras request aborted by user.");let v=m.choices[0]?.delta;if(v){if(v.content&&(p||(p=!0,t({type:"stage_change",stage:"responding",label:"Generating response..."})),n.push(v.content),t({type:"content_delta",text:v.content})),v.tool_calls){t({type:"stage_change",stage:"calling_tool",label:"Using tool..."});for(let f of v.tool_calls){let g=f.index;f.id&&(o[g]={id:f.id,name:f.function?.name||"",inputParts:[]},t({type:"tool_call_delta",index:g,id:f.id,name:f.function?.name})),f.function?.arguments&&(o[g]&&o[g].inputParts.push(f.function.arguments),t({type:"tool_call_delta",index:g,argumentsDelta:f.function.arguments}))}}if(m.usage){let f=m.usage;t({type:"usage",usage:{inputTokens:f.prompt_tokens,outputTokens:f.completion_tokens,totalTokens:f.total_tokens}})}}}let d=Date.now();t({type:"run_completed",timestamp:d,durationMs:d-i});let l=n.join(""),u=Object.values(o).map(m=>({id:m.id,name:m.name,input:Pe.safeParseJson(m.inputParts.join(""))})),c=[];return l&&c.push({type:"text",text:l}),{role:"assistant",content:c.length>0?c:l,tool_uses:u.length>0?u:void 0}}catch(s){throw new Error(`Cerebras Stream Error: ${Oe(s)}`)}}estimateTokens(e){return Math.ceil(e.length*L.getTokensPerChar())}async listModels(){return[{id:"llama3.1-8b",name:"Llama 3.1 8B"},{id:"llama3.1-70b",name:"Llama 3.1 70B"}]}convertMessages(e){return e.map(t=>{if(Array.isArray(t.content)){let a=t.content.map(n=>n.type==="text"?{type:"text",text:n.text}:n),i=t.content.filter(n=>n.type==="text").map(n=>n.text).join(""),s=t.content.find(n=>n.type==="tool_result");return s?{role:"tool",tool_call_id:s.tool_use_id,content:typeof s.content=="string"?s.content:JSON.stringify(s.content)}:{role:t.role,content:i}}return{role:t.role,content:t.content}})}convertTools(e){if(e)return e.map(t=>({type:"function",function:{name:t.name,description:t.description,parameters:t.input_schema}}))}};function su(r,e){return r==="openrouter"?new ao(e):r==="cerebras"?new c1(e):new Qn(e)}var m1=class{constructor(e){this.runtime=e}async createSession(){return this.runtime.createSession()}async listSessions(){return this.runtime.listSessions()}async loadSession(e){return this.runtime.loadSession(e)}async deleteSession(e){await this.runtime.deleteSession(e)}async renameSession(e,t){await this.runtime.renameSession(e,t)}async togglePinSession(e){await this.runtime.togglePinSession(e)}async handleMessage(e,t){return this.runtime.handleMessage(e,t)}async clearCurrentSession(){await this.runtime.clearCurrentSession()}stopGeneration(){this.runtime.stopGeneration()}updateSettings(){this.runtime.updateSettings()}async getModels(){return this.runtime.getModels()}getMessages(){return this.runtime.getMessages()}getCurrentSessionId(){return this.runtime.getCurrentSessionId()}getCurrentRun(){return this.runtime.getCurrentRun()}resolveApproval(e,t){return this.runtime.resolveApproval(e,t)}dispose(){this.runtime.dispose()}};st();var u1=class{type="vscode";async readFile(e,t){return na(e,void 0,void 0,t)}async writeFile(e,t,a){return kt(e,t,a)}async deleteFile(e){return oa(e)}async backupFile(e){return S1(e)}async restoreFile(e){return js(e)}async rollbackAll(){return mi()}clearBackups(){T1()}};var Bd=class{getAiProvider(){return L.getAiProvider()}getApiKey(e){return e==="openrouter"?L.getOpenRouterApiKey()||"":e==="cerebras"?L.getCerebrasApiKey()||"":L.getApiKey()||""}},Vd=class{constructor(e){this.context=e}async getSessions(){return this.context.workspaceState.get("marie.sessions")||{}}async saveSessions(e){await this.context.workspaceState.update("marie.sessions",e)}async getSessionMetadata(){return this.context.workspaceState.get("marie.sessionMetadata")||[]}async saveSessionMetadata(e){await this.context.workspaceState.update("marie.sessionMetadata",e)}async getCurrentSessionId(){return this.context.workspaceState.get("marie.currentSessionId")||"default"}async setCurrentSessionId(e){await this.context.workspaceState.update("marie.currentSessionId",e)}async getLastTelemetry(){return this.context.workspaceState.get("marie.lastTelemetry")}async setLastTelemetry(e){await this.context.workspaceState.update("marie.lastTelemetry",e)}},h1=class extends m1{constructor(t,a){let i=new pn(t,a);process.env.MARIE_EXTENSION_TESTS||i.startAutonomousHeartbeat();let s=new Tn({config:new Bd,sessionStore:new Vd(t),toolRegistrar:kl,providerFactory:su,automationService:i,onProgressEvent:n=>this.joyService.onRunProgress(n),shouldBypassApprovals:()=>L.getAutonomyMode()!=="balanced",fs:new u1,ghostPort:{handleDelta:(n,o,p)=>wa.handleDelta(n,o,p)}});super(s);this.context=t;this.joyService=a}dispose(){super.dispose()}};var le=$(require("vscode"),1);Ar();ca();var f1=class{constructor(e,t){this.context=e;this.joyLog=t;this.statusBarItem=le.window.createStatusBarItem(le.StatusBarAlignment.Right,100),e.subscriptions.push(this.statusBarItem),this.intention=e.workspaceState.get("marie.intention")||null,process.env.MARIE_EXTENSION_TESTS||(e.subscriptions.push(le.window.onDidChangeActiveTextEditor(()=>this.updateJoyStatus())),e.subscriptions.push(le.workspace.onDidSaveTextDocument(async a=>{await this.updateJoyStatus(),le.workspace.getConfiguration("marie").get("strictMode")&&(await yt(a.fileName)).zoningHealth?.isBackflowPresent&&le.window.showWarningMessage(`\u26A0\uFE0F Strict Mode: Zoning Violation detected in ${le.workspace.asRelativePath(a.fileName)}. Please respect the Downward Flow Law.`)})),this.updateJoyStatus())}statusBarItem;_onJoyScoreChange=new le.EventEmitter;onJoyScoreChange=this._onJoyScoreChange.event;_onRunProgress=new le.EventEmitter;onRunProgress=this._onRunProgress.event;intention=null;_lastProjectScore=null;async addAchievement(e,t=10){return await this.joyLog.addAchievement(e,t)}async setIntention(e){this.intention=e,await this.context.workspaceState.update("marie.intention",e),this.updateJoyStatus()}async getProjectHealth(){let e=le.workspace.workspaceFolders?.[0].uri.fsPath;if(!e)return null;let t=await le.workspace.findFiles("**/*.{ts,js,tsx,jsx}","**/node_modules/**",100),a=0,i=0,s=0,n=0,o=0,p=[];for(let c of t.slice(0,30))try{let m=await yt(c.fsPath);a+=m.joyScore,i++,m.zoningHealth?.isBackflowPresent&&s++,m.zoningHealth?.migrationNeed?.shouldMigrate&&p.push({file:le.workspace.asRelativePath(c),reason:m.zoningHealth.migrationNeed.reason||"Conceptual drift detected."}),c.fsPath.includes("/domain/")?n++:c.fsPath.includes("/plumbing/")&&o++}catch{}let d=i>0?Math.round(a/i):100,l=await ui(e),u=await la(e);return this._lastProjectScore!==null&&d>this._lastProjectScore&&await this.joyLog.addAchievement(`Project health improved to ${d}! \u2728`,50),this._lastProjectScore=d,{average:d,fileCount:i,log:this.joyLog.getLog(),zoningViolations:s,joyfulFiles:n,plumbingFiles:o,migrationAlerts:p,clusteringAlerts:l,isJoyful:u}}_onLettingGoRequest=new le.EventEmitter;onLettingGoRequest=this._onLettingGoRequest.event;async requestLettingGo(e){let t=0;try{t=(await le.workspace.fs.readFile(le.Uri.file(e))).toString().split(`
605
+ `).length}catch{}this._onLettingGoRequest.fire({path:e,lines:t})}async updateJoyStatus(){let e=le.window.activeTextEditor,t="",a="";if(this.intention&&(t=`$(heart) Intention: ${this.intention} `,a+=`Current Intention: ${this.intention}
606
+
607
+ `),!e){this.intention?(this.statusBarItem.text=t,this.statusBarItem.tooltip=a,this.statusBarItem.show()):this.statusBarItem.hide();return}let i=e.document;if(i.uri.scheme==="file"&&this.isSupportedFile(i.fileName))try{let s=await yt(i.fileName),n=s.joyScore;n===100&&await this.joyLog.addAchievement(`Reached 100% Joy in ${le.workspace.asRelativePath(i.fileName)}! \u2764\uFE0F`,20);let o="$(sparkle)";n===100?o="$(heart)":n>=80?o="$(sparkle)":n>=50?o="$(warning)":o="$(trash)",t+=`${o} Joy: ${n}`,a+=`Joy Status: ${s.joyStatus}
608
+
609
+ ${s.tips.join(`
610
+ `)}`,this._onJoyScoreChange.fire({score:n,status:s.joyStatus,tips:s.tips})}catch{}t?(this.statusBarItem.text=t,this.statusBarItem.tooltip=a,this.statusBarItem.show()):this.statusBarItem.hide()}isSupportedFile(e){return e.endsWith(".ts")||e.endsWith(".js")||e.endsWith(".tsx")||e.endsWith(".jsx")}dispose(){this.statusBarItem.dispose(),this._onJoyScoreChange.dispose(),this._onLettingGoRequest.dispose(),this._onRunProgress.dispose()}};var nu=$(require("vscode"),1),g1=class r{constructor(e){this.context=e;this._loadLog()}static STORAGE_KEY="marie.joyLog";_log=[];_onAchievementAdded=new nu.EventEmitter;onAchievementAdded=this._onAchievementAdded.event;_loadLog(){let e=this.context.globalState.get(r.STORAGE_KEY);this._log=e||[]}async addAchievement(e,t=10){let a={id:Math.random().toString(36).substring(7),description:e,timestamp:Date.now(),points:t};return this._log.unshift(a),this._log.length>100&&(this._log=this._log.slice(0,100)),await this.context.globalState.update(r.STORAGE_KEY,this._log),this._onAchievementAdded.fire(a),a}getLog(){return this._log}getStats(){return{totalPoints:this._log.reduce((t,a)=>t+a.points,0),count:this._log.length,recent:this._log.slice(0,5)}}async clearLog(){this._log=[],await this.context.globalState.update(r.STORAGE_KEY,[])}};Ke();var li,qd,Je,Sr,Ud=class{constructor(e,t){this.context=e;this.marieInstance=t}webviews=new Set;attach(e){this.webviews.add(e),e.options={enableScripts:!0,localResourceRoots:[K.Uri.joinPath(this.context.extensionUri,"dist","webview-ui"),K.Uri.joinPath(this.context.extensionUri,"assets")]};let t=K.Uri.joinPath(this.context.extensionUri,"dist","webview-ui","main.js");K.workspace.fs.stat(t).then(()=>{},()=>{K.window.showErrorMessage("Marie webview bundle missing (dist/webview-ui/main.js). Run `npm run build` and reinstall the extension.")}),e.html=this.getHtml(e),e.onDidReceiveMessage(a=>this.onMessage(a)),this.pushInitState().catch(()=>{})}detach(e){this.webviews.delete(e)}post(e){for(let t of this.webviews)t.postMessage(e)}async onMessage(e){switch(e?.type){case"ready":await this.pushInitState();return;case"send_message":await this.handleSendMessage(String(e.text||""));return;case"stop_generation":this.marieInstance.stopGeneration(),this.post({type:"status",isLoading:!1});return;case"approval_response":e.id&&typeof e.approved=="boolean"&&this.marieInstance.resolveApproval(String(e.id),!!e.approved);return;case"create_session":await this.marieInstance.createSession(),await this.pushInitState();return;case"clear_session":await this.marieInstance.clearCurrentSession(),await this.pushInitState();return;case"list_sessions":await this.pushSessions();return;case"load_session":e.id&&(await this.marieInstance.loadSession(String(e.id)),await this.pushInitState());return;case"delete_session":e.id&&(await this.marieInstance.deleteSession(String(e.id)),await this.pushInitState());return;case"rename_session":e.id&&e.title&&(await this.marieInstance.renameSession(String(e.id),String(e.title)),await this.pushSessions());return;case"toggle_pin_session":e.id&&(await this.marieInstance.togglePinSession(String(e.id)),await this.pushSessions());return;case"get_models":this.post({type:"models",models:await this.marieInstance.getModels()});return;case"set_provider":await this.setProvider(String(e.provider||"anthropic"));return;case"set_model":await this.setModel(String(e.model||""));return;case"set_autonomy_mode":await this.setAutonomyMode(String(e.mode||"balanced"));return;case"set_api_key":await this.setApiKey(String(e.provider||"anthropic"),String(e.apiKey||""));return;case"open_settings":await K.commands.executeCommand("workbench.action.openSettings","@ext:cardsorting.marie");return;default:return}}async handleSendMessage(e){let t=e.trim();if(t){this.post({type:"status",isLoading:!0}),this.post({type:"user_echo",text:t});try{let a=await this.marieInstance.handleMessage(t,{onStream:i=>{this.post({type:"message_stream",chunk:i})},onTool:i=>{this.post({type:"tool_event",tool:i})},onToolDelta:i=>{this.post({type:"tool_delta",delta:i})},onApprovalRequest:i=>{this.post({type:"approval_request",request:i})},onEvent:i=>{this.post({type:"runtime_event",event:i})}});this.post({type:"assistant_response",text:a})}catch(a){this.post({type:"error",message:String(a)})}finally{this.post({type:"status",isLoading:!1}),await this.pushSessions()}}}async setAutonomyMode(e){let t=e==="yolo"||e==="high"?e:"balanced";await K.workspace.getConfiguration("marie").update("autonomyMode",t,K.ConfigurationTarget.Global),this.marieInstance.updateSettings(),this.post({type:"config",config:this.getConfigSnapshot()})}async setProvider(e){let t=e==="openrouter"||e==="cerebras"?e:"anthropic",a=K.workspace.getConfiguration("marie"),i=L.getModel(),s;t==="openrouter"?s="anthropic/claude-3.5-sonnet":t==="cerebras"?s="llama3.1-8b":s="claude-3-5-sonnet-20241022";let n=!this.isModelCompatibleWithProvider(i,t);await a.update("aiProvider",t,K.ConfigurationTarget.Global),n&&await a.update("model",s,K.ConfigurationTarget.Global),this.marieInstance.updateSettings(),this.post({type:"config",config:this.getConfigSnapshot()}),this.post({type:"models",models:await this.marieInstance.getModels()})}isModelCompatibleWithProvider(e,t){return t==="anthropic"?e.startsWith("claude-"):t==="openrouter"?e.includes("/")||e.startsWith("llama-")||e.startsWith("gpt-"):t==="cerebras"?e.startsWith("llama-"):!1}async setModel(e){let t=e.trim();if(!t)return;await K.workspace.getConfiguration("marie").update("model",t,K.ConfigurationTarget.Global),this.marieInstance.updateSettings(),this.post({type:"config",config:this.getConfigSnapshot()})}async setApiKey(e,t){let a=e==="openrouter"||e==="cerebras"?e:"anthropic",i=t.trim();if(!i)return;let s=K.workspace.getConfiguration("marie"),n=a==="openrouter"?"openrouterApiKey":a==="cerebras"?"cerebrasApiKey":"apiKey";await s.update(n,i,K.ConfigurationTarget.Global),this.marieInstance.updateSettings(),this.post({type:"config",config:this.getConfigSnapshot()}),this.post({type:"models",models:await this.marieInstance.getModels()})}async pushInitState(){this.post({type:"init_state",state:{messages:this.getUiMessages(),config:this.getConfigSnapshot(),currentSessionId:this.marieInstance.getCurrentSessionId()}}),await this.pushSessions()}async pushSessions(){let e=await this.marieInstance.listSessions();this.post({type:"sessions",sessions:e,currentSessionId:this.marieInstance.getCurrentSessionId()})}getConfigSnapshot(){let e=L.getAiProvider(),t=e==="openrouter"?L.getOpenRouterApiKey():e==="cerebras"?L.getCerebrasApiKey():L.getApiKey();return{provider:e,model:L.getModel(),autonomyMode:L.getAutonomyMode(),hasAnyApiKey:!!(L.getApiKey()||L.getOpenRouterApiKey()||L.getCerebrasApiKey()),hasProviderApiKey:!!t}}getUiMessages(){return this.marieInstance.getMessages().map((e,t)=>({id:`hist_${t}`,role:e.role||"assistant",content:this.extractMessageText(e),timestamp:Date.now()}))}extractMessageText(e){if(typeof e?.content=="string")return e.content;if(!Array.isArray(e?.content))return String(e?.content??"");let t=[];for(let a of e.content)if(a?.type==="text")t.push(a.text||"");else if(a?.type==="tool_use")t.push(`[Tool Use: ${a.name}]`);else if(a?.type==="tool_result"){let i=typeof a.content=="string"?a.content:JSON.stringify(a.content),s=i.length>100?i.substring(0,100)+"...":i;t.push(`[Tool Result: ${s}]`)}return t.join(`
611
+ `).trim()||"(empty content)"}getHtml(e){let t=e.asWebviewUri(K.Uri.joinPath(this.context.extensionUri,"dist","webview-ui","main.js")),a=e.asWebviewUri(K.Uri.joinPath(this.context.extensionUri,"dist","webview-ui","main.css")),i=`${Date.now()}${Math.random().toString(36).slice(2)}`;return`<!DOCTYPE html>
612
+ <html lang="en">
613
+ <head>
614
+ <meta charset="UTF-8" />
615
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
616
+ <meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src ${e.cspSource} https: data:; style-src ${e.cspSource} 'unsafe-inline'; script-src ${e.cspSource} 'nonce-${i}';" />
617
+ <link rel="stylesheet" type="text/css" href="${a}" />
618
+ <title>Marie</title>
619
+ </head>
620
+ <body>
621
+ <div id="app" style="padding:12px;font-family:var(--vscode-font-family);color:var(--vscode-foreground);">Loading Marie UI\u2026</div>
622
+ <script nonce="${i}">
623
+ try {
624
+ const el = document.getElementById('app');
625
+ if (el) el.textContent = 'Marie script bootstrapping\u2026';
626
+ } catch {}
627
+ </script>
628
+ <script nonce="${i}" src="${t}"></script>
629
+ </body>
630
+ </html>`}},y1=class{static viewType="marieView";resolveWebviewView(e){Sr?.attach(e.webview),e.onDidDispose(()=>{Sr?.detach(e.webview)})}};function W9(r){return Je?(Je.reveal(K.ViewColumn.Beside),Je):(Je=K.window.createWebviewPanel("marieUi","Marie",K.ViewColumn.Beside,{enableScripts:!0,retainContextWhenHidden:!1}),Sr?.attach(Je.webview),Je.onDidDispose(()=>{Je&&Sr?.detach(Je.webview),Je=void 0},null,r.subscriptions),Je)}function z9(r){console.log("[Marie] Activating extension...");let e=new g1(r);console.log("[Marie] JoyLogService initialized"),qd=new f1(r,e),console.log("[Marie] JoyService initialized"),li=new h1(r,qd),console.log("[Marie] Marie adapter initialized"),Sr=new Ud(r,li),console.log("[Marie] MarieWebviewHost initialized");let t=K.commands.registerCommand("marie.start",()=>W9(r)),a=K.window.registerWebviewViewProvider(y1.viewType,new y1);return r.subscriptions.push(t),r.subscriptions.push(a),r.subscriptions.push(li),console.log("[Marie] Commands and providers registered"),{getWebviewHtml:()=>Sr?.getHtml?.call(Sr,{asWebviewUri:i=>i,cspSource:"vscode-resource:"})}}function J9(){Je&&(Je.dispose(),Je=void 0),li&&(li.dispose(),li=void 0),Sr=void 0,qd=void 0}0&&(module.exports={activate,deactivate});
631
+ /*! Bundled license information:
632
+
633
+ web-streams-polyfill/dist/ponyfill.mjs:
634
+ (**
635
+ * @license
636
+ * web-streams-polyfill v4.0.0-beta.3
637
+ * Copyright 2021 Mattias Buelens, Diwank Singh Tomer and other contributors.
638
+ * This code is released under the MIT license.
639
+ * SPDX-License-Identifier: MIT
640
+ *)
641
+
642
+ formdata-node/lib/esm/blobHelpers.js:
643
+ formdata-node/lib/esm/Blob.js:
644
+ (*! Based on fetch-blob. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> & David Frank *)
645
+
646
+ humanize-ms/index.js:
647
+ (*!
648
+ * humanize-ms - index.js
649
+ * Copyright(c) 2014 dead_horse <dead_horse@qq.com>
650
+ * MIT Licensed
651
+ *)
652
+
653
+ node-domexception/index.js:
654
+ (*! node-domexception. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> *)
655
+ */