@agentica/core 0.29.0 → 0.29.2

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.
package/lib/Agentica.js CHANGED
@@ -211,6 +211,7 @@ class Agentica {
211
211
  */
212
212
  getContext(props) {
213
213
  const request = (source, body) => __awaiter(this, void 0, void 0, function* () {
214
+ var _a, _b;
214
215
  const event = (0, events_1.createRequestEvent)({
215
216
  source,
216
217
  body: Object.assign(Object.assign({}, body), { model: this.props.vendor.model, stream: true, stream_options: {
@@ -220,7 +221,22 @@ class Agentica {
220
221
  });
221
222
  props.dispatch(event);
222
223
  // completion
223
- const completion = yield this.props.vendor.api.chat.completions.create(event.body, event.options);
224
+ const backoffStrategy = (_b = (_a = this.props.config) === null || _a === void 0 ? void 0 : _a.backoffStrategy) !== null && _b !== void 0 ? _b : ((props) => {
225
+ throw props.error;
226
+ });
227
+ const completion = yield (() => __awaiter(this, void 0, void 0, function* () {
228
+ let count = 0;
229
+ while (true) {
230
+ try {
231
+ return yield this.props.vendor.api.chat.completions.create(event.body, event.options);
232
+ }
233
+ catch (error) {
234
+ const waiting = backoffStrategy({ count, error });
235
+ yield new Promise(resolve => setTimeout(resolve, waiting));
236
+ count++;
237
+ }
238
+ }
239
+ }))();
224
240
  const [streamForEvent, temporaryStream] = StreamUtil_1.StreamUtil.transform(completion.toReadableStream(), value => ChatGptCompletionMessageUtil_1.ChatGptCompletionMessageUtil.transformCompletionChunk(value)).tee();
225
241
  const [streamForAggregate, streamForReturn] = temporaryStream.tee();
226
242
  (() => __awaiter(this, void 0, void 0, function* () {
@@ -1 +1 @@
1
- {"version":3,"file":"Agentica.js","sourceRoot":"","sources":["../src/Agentica.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Agentica.js","sourceRoot":"","sources":["../src/Agentica.ts"],"names":[],"mappings":"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"}
@@ -205,6 +205,7 @@ class MicroAgentica {
205
205
  */
206
206
  getContext(props) {
207
207
  const request = (source, body) => __awaiter(this, void 0, void 0, function* () {
208
+ var _a, _b;
208
209
  const event = (0, events_1.createRequestEvent)({
209
210
  source,
210
211
  body: Object.assign(Object.assign({}, body), { model: this.props.vendor.model, stream: true, stream_options: {
@@ -214,7 +215,22 @@ class MicroAgentica {
214
215
  });
215
216
  props.dispatch(event);
216
217
  // completion
217
- const completion = yield this.props.vendor.api.chat.completions.create(event.body, event.options);
218
+ const backoffStrategy = (_b = (_a = this.props.config) === null || _a === void 0 ? void 0 : _a.backoffStrategy) !== null && _b !== void 0 ? _b : ((props) => {
219
+ throw props.error;
220
+ });
221
+ const completion = yield (() => __awaiter(this, void 0, void 0, function* () {
222
+ let count = 0;
223
+ while (true) {
224
+ try {
225
+ return yield this.props.vendor.api.chat.completions.create(event.body, event.options);
226
+ }
227
+ catch (error) {
228
+ const waiting = backoffStrategy({ count, error });
229
+ yield new Promise(resolve => setTimeout(resolve, waiting));
230
+ count++;
231
+ }
232
+ }
233
+ }))();
218
234
  const [streamForEvent, temporaryStream] = StreamUtil_1.StreamUtil.transform(completion.toReadableStream(), value => ChatGptCompletionMessageUtil_1.ChatGptCompletionMessageUtil.transformCompletionChunk(value)).tee();
219
235
  const [streamForAggregate, streamForReturn] = temporaryStream.tee();
220
236
  void (() => __awaiter(this, void 0, void 0, function* () {
@@ -1 +1 @@
1
- {"version":3,"file":"MicroAgentica.js","sourceRoot":"","sources":["../src/MicroAgentica.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MicroAgentica.js","sourceRoot":"","sources":["../src/MicroAgentica.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from "./AgenticaDefaultPrompt";
2
+ export * from "./AgenticaSystemPrompt";
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./AgenticaDefaultPrompt"), exports);
18
+ __exportStar(require("./AgenticaSystemPrompt"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,yDAAuC"}
package/lib/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from "./Agentica";
2
+ export * from "./constants";
2
3
  export * from "./context";
3
4
  export * from "./events";
4
5
  export * as factory from "./factory";
package/lib/index.js CHANGED
@@ -38,6 +38,7 @@ var __importStar = (this && this.__importStar) || (function () {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.utils = exports.orchestrate = exports.factory = void 0;
40
40
  __exportStar(require("./Agentica"), exports);
41
+ __exportStar(require("./constants"), exports);
41
42
  __exportStar(require("./context"), exports);
42
43
  __exportStar(require("./events"), exports);
43
44
  exports.factory = __importStar(require("./factory"));
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA2B;AAE3B,4CAA0B;AAC1B,2CAAyB;AACzB,qDAAqC;AACrC,+CAA6B;AAC7B,8CAA4B;AAC5B,yCAAuB;AACvB,kDAAgC;AAChC,6DAA6C;AAC7C,+CAA6B;AAE7B;;GAEG;AACH,iDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA2B;AAE3B,8CAA4B;AAC5B,4CAA0B;AAC1B,2CAAyB;AACzB,qDAAqC;AACrC,+CAA6B;AAC7B,8CAA4B;AAC5B,yCAAuB;AACvB,kDAAgC;AAChC,6DAA6C;AAC7C,+CAA6B;AAE7B;;GAEG;AACH,iDAAiC"}
package/lib/index.mjs CHANGED
@@ -4156,7 +4156,24 @@ class Agentica {
4156
4156
  }
4157
4157
  });
4158
4158
  props.dispatch(event);
4159
- const completion = await this.props.vendor.api.chat.completions.create(event.body, event.options);
4159
+ const backoffStrategy = this.props.config?.backoffStrategy ?? (props => {
4160
+ throw props.error;
4161
+ });
4162
+ const completion = await (async () => {
4163
+ let count = 0;
4164
+ while (true) {
4165
+ try {
4166
+ return await this.props.vendor.api.chat.completions.create(event.body, event.options);
4167
+ } catch (error) {
4168
+ const waiting = backoffStrategy({
4169
+ count,
4170
+ error
4171
+ });
4172
+ await new Promise((resolve => setTimeout(resolve, waiting)));
4173
+ count++;
4174
+ }
4175
+ }
4176
+ })();
4160
4177
  const [streamForEvent, temporaryStream] = StreamUtil.transform(completion.toReadableStream(), (value => ChatGptCompletionMessageUtil.transformCompletionChunk(value))).tee();
4161
4178
  const [streamForAggregate, streamForReturn] = temporaryStream.tee();
4162
4179
  (async () => {
@@ -43017,7 +43034,24 @@ class MicroAgentica {
43017
43034
  options: this.props.vendor.options
43018
43035
  });
43019
43036
  props.dispatch(event);
43020
- const completion = await this.props.vendor.api.chat.completions.create(event.body, event.options);
43037
+ const backoffStrategy = this.props.config?.backoffStrategy ?? (props => {
43038
+ throw props.error;
43039
+ });
43040
+ const completion = await (async () => {
43041
+ let count = 0;
43042
+ while (true) {
43043
+ try {
43044
+ return await this.props.vendor.api.chat.completions.create(event.body, event.options);
43045
+ } catch (error) {
43046
+ const waiting = backoffStrategy({
43047
+ count,
43048
+ error
43049
+ });
43050
+ await new Promise((resolve => setTimeout(resolve, waiting)));
43051
+ count++;
43052
+ }
43053
+ }
43054
+ })();
43021
43055
  const [streamForEvent, temporaryStream] = StreamUtil.transform(completion.toReadableStream(), (value => ChatGptCompletionMessageUtil.transformCompletionChunk(value))).tee();
43022
43056
  const [streamForAggregate, streamForReturn] = temporaryStream.tee();
43023
43057
  void (async () => {
@@ -43105,5 +43139,5 @@ var index = Object.freeze({
43105
43139
  toAsyncGenerator
43106
43140
  });
43107
43141
 
43108
- export { Agentica, AgenticaTokenUsage, MicroAgentica, assertHttpController, assertHttpLlmApplication, assertMcpController, index$2 as factory, index$1 as orchestrate, index as utils, validateHttpController, validateHttpLlmApplication, validateMcpController };
43142
+ export { Agentica, AgenticaDefaultPrompt, AgenticaSystemPrompt, AgenticaTokenUsage, MicroAgentica, assertHttpController, assertHttpLlmApplication, assertMcpController, index$2 as factory, index$1 as orchestrate, index as utils, validateHttpController, validateHttpLlmApplication, validateMcpController, write };
43109
43143
  //# sourceMappingURL=index.mjs.map
package/lib/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/context/internal/AgenticaTokenUsageAggregator.ts","../src/context/AgenticaTokenUsage.ts","../src/utils/__map_take.ts","../src/context/internal/AgenticaOperationComposer.ts","../src/factory/histories.ts","../src/factory/events.ts","../src/constants/AgenticaConstant.ts","../src/utils/Singleton.ts","../src/constants/AgenticaSystemPrompt.ts","../src/constants/AgenticaDefaultPrompt.ts","../src/context/internal/isAgenticaContext.ts","../src/utils/ByteArrayUtil.ts","../src/utils/ChatGptTokenUsageAggregator.ts","../src/utils/ChatGptCompletionMessageUtil.ts","../src/utils/StreamUtil.ts","../src/factory/operations.ts","../src/orchestrate/internal/cancelFunctionFromContext.ts","../src/orchestrate/call.ts","../src/orchestrate/cancel.ts","../src/utils/AsyncQueue.ts","../src/utils/MPSC.ts","../src/orchestrate/describe.ts","../src/orchestrate/initialize.ts","../src/orchestrate/internal/selectFunctionFromContext.ts","../src/orchestrate/select.ts","../src/orchestrate/execute.ts","../src/transformers/transformHistory.ts","../src/Agentica.ts","../src/functional/assertHttpController.ts","../src/functional/assertHttpLlmApplication.ts","../src/functional/assertMcpController.ts","../src/functional/validateHttpController.ts","../src/functional/validateHttpLlmApplication.ts","../src/functional/validateMcpController.ts","../src/MicroAgentica.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["aggregate","props","component","usage","kind","total","completionUsage","total_tokens","input","prompt_tokens","prompt_tokens_details","audio_tokens","cached","cached_tokens","output","completion_tokens","accepted_prediction","completion_tokens_details","accepted_prediction_tokens","reasoning","reasoning_tokens","rejected_prediction","rejected_prediction_tokens","sum","getter","Object","entries","filter","key","map","comp","reduce","a","b","AgenticaTokenUsageAggregator","AgenticaTokenUsage","constructor","undefined","zero","this","initialize","select","cancel","call","describe","increment","y","x","use","toJSON","_co0","plus","z","__map_take","dict","generator","oldbie","get","value","set","compose","unique","controllers","length","names","application","functions","func","name","flat","Set","size","array","getOperations","naming","controllerIndex","capacity","config","divided","divide","Map","group","item","controller","flatMap","idx","protocol","toHttpOperations","index","toClassOperations","toMcpOperations","Error","function","Number","isNaN","TypeError","Infinity","Math","ceil","replica","slice","Array","from","splice","AgenticaOperationComposer","decodeHistory","history","type","role","tool_calls","id","arguments","JSON","stringify","selection","operation","reason","tool_call_id","content","description","parameters","method","path","status","data","body","text","contents","decodeUserMessageContent","input_audio","format","file","file_data","filename","file_id","image_url","url","detail","createUserMessageHistory","created_at","createAssistantMessageHistory","prompt","createSystemMessageHistory","createDescribeHistory","executes","execute","createSelectHistory","createCancelHistory","createExecuteHistory","createInitializeEvent","event","v4","Date","toISOString","createSelectEvent","toHistory","createCancelEvent","createCallEvent","createValidateEvent","result","createExecuteEvent","createUserMessageEvent","creatAssistantMessageEvent","stream","join","done","createDescribeEvent","createRequestEvent","source","options","createResponseEvent","AgenticaConstant","RETRY","ELITICISM","NOT_MOUNTED_YET","Singleton","closure","closure_","value_","args","AgenticaSystemPrompt","CANCEL","COMMON","DESCRIBE","EXECUTE","INITIALIZE","SELECT","getLocale","is_node","process","env","LANG","split","navigator","language","getTimezone","Intl","DateTimeFormat","resolvedOptions","timeZone","write","systemPrompt","common","locale","timezone","replace","AgenticaDefaultPrompt","isAgenticaContext","ctx","ByteArrayUtil","toUtf8","byteArray","TextDecoder","decode","sumCompletionTokenDetail","sumPromptTokenDetail","ChatGptTokenUsageAggregator","transformCompletionChunk","str","Uint8Array","parse","accumulate","origin","chunk","choices","forEach","choice","accChoice","mergeChoice","finish_reason","logprobs","message","delta","acc","cur","refusal","merge","chunks","firstChunk","created","model","object","service_tier","system_fingerprint","_a","toolCalls","toolCall","existingToolCall","mergeToolCalls","ChatGptCompletionMessageUtil","async","readAll","reader","getReader","read","push","reducer","initial","iterator","streamDefaultReaderToAsyncGenerator","ReadableStream","start","enqueue","close","toAsyncGenerator","transform","transformer","pull","StreamUtil","createOperationSelection","cancelFunctionFromContext","reference","stack","findIndex","dispatch","operations","completionStream","request","messages","histories","tools","s","separated","llm","properties","required","additionalProperties","$defs","tool_choice","completion","tc","fillHttpArguments","exec","propagate","Promise","resolve","retry","propagateHttp","propagateClass","propagateMcp","check","validate","success","trial","correct","errors","response","executeHttpOperation","error","headers","executeClassOperation","executeMcpOperation","operationArguments","controllerBaseArguments","connection","HttpLlm","client","callTool","then","v","find","route","requestBody","isObject","query","schema","ChatGptTypeChecker","isReference","$ref","at","isAnyOf","anyOf","every","LlmTypeCheckerV3_1","isOneOf","oneOf","CONTAINER","step","stacks","events","all","i","e","eliticism","some","cancelled","failures","op","tags","emendMessages","validation","_io0","isArray","elem","_io1","_vo0","_path","_exceptionable","_report","f","AsyncQueueClosedError","super","AsyncQueue","queue","resolvers","closeResolvers","emptyResolvers","closed","console","shift","dequeue","isEmpty","isClosed","waitUntilEmpty","waitClosed","MPSC","consumer","produce","describeContext","accPromise","registerContext","mpsc","ChatGptDescribeFunctionAgent","FUNCTION","textContext","c","selectFunctionFromContext","selected","executor","ready","transformHistory","transformUserMessage","transformAssistantMessage","transformSystemMessage","transformSelect","transformCancel","transformExecute","transformDescribe","findOperation","next","found","Agentica","operations_","stack_","listeners_","histories_","executor_","semaphore_","vendor","semaphore","Semaphore","token_usage_","tokenUsage","ready_","clone","conversate","historyGetters","catch","getContext","abortSignal","completed","h","getConfig","getVendor","getControllers","getHistories","getTokenUsage","stream_options","include_usage","signal","api","chat","completions","create","streamForEvent","temporaryStream","toReadableStream","tee","streamForAggregate","streamForReturn","streamForStream","streamForJoin","acquire","release","on","listener","add","off","delete","assertHttpController","document","OpenApi","convert","swagger","RegExp","test","info","host","basePath","consumes","produces","definitions","_io4","_io16","responses","_io29","securityDefinitions","_io31","security","_io39","paths","_io40","_io47","title","termsOfService","contact","_io2","license","_io3","version","email","keys","assertHttpLlmApplication","assertMcpController","ListToolsResultSchema","import","McpLlm","inputSchema","_iu1","nullable","_iu0","maxProperties","minProperties","deprecated","examples","_io5","validateHttpController","inspect","validateHttpLlmApplication","validateMcpController","MicroAgentica"],"mappings":"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,OAAAoU,OAAAhT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAA,GAK9B3B,MAAMic;IACR,OAAO;QACL5W,UAAU;QACVlB,MAAMnE,MAAMmE;QACZH,aAAa0P,QAAQ1P,YAAY;YAC/B+K,OAAO/O,MAAM+O;YACbkN;YACAzR,SAASxK,MAAMwK;;QAEjBxB,SAAShJ,MAAMgJ;QACfyK,YAAYzT,MAAMyT;;AAEtB;;AC/EM,SAAUwK,yBAEdje;IAqBA,OAAO0T,QAAQ1P,YAAY;QACzB+K,OAAO/O,MAAM+O;QACbkN,UAAUC,QAAQC,QAAO;YAAA,MAAArG,OAAAvV,SAAA,SAAAA,MAAA6b,WAAAha,cAAA7B,MAAA6b,YAAA,UAAA7b,MAAA6b,WAAA,oBAAA7b,MAAA6b,WAAAC,OAAA,+CAAAC,KAAA/b,MAAA6b,cAAAha,cAAA7B,MAAAgc,QAAA,oBAAAhc,MAAAgc,QAAA,SAAAhc,MAAAgc,QAAAtG,KAAA1V,MAAAgc,WAAAna,cAAA7B,MAAAic,QAAA,oBAAAjc,MAAAic,UAAApa,cAAA7B,MAAAkc,YAAA,oBAAAlc,MAAAkc,cAAAra,cAAA7B,MAAAmc,YAAAtW,MAAA2P,QAAAxV,MAAAmc,aAAAnc,MAAAmc,SAAA/H,OAAAqB,QAAA,oBAAAA,YAAA5T,cAAA7B,MAAAoc,YAAAvW,MAAA2P,QAAAxV,MAAAoc,aAAApc,MAAAoc,SAAAhI,OAAAqB,QAAA,oBAAAA,YAAA5T,cAAA7B,MAAAqc,eAAA,oBAAArc,MAAAqc,eAAA,SAAArc,MAAAqc,eAAA,UAAAxW,MAAA2P,QAAAxV,MAAAqc,gBAAAC,KAAAtc,MAAAqc,kBAAAxa,cAAA7B,MAAAgH,cAAA,oBAAAhH,MAAAgH,cAAA,SAAAhH,MAAAgH,cAAA,UAAAnB,MAAA2P,QAAAxV,MAAAgH,eAAAuV,MAAAvc,MAAAgH,iBAAAnF,cAAA7B,MAAAwc,aAAA,oBAAAxc,MAAAwc,aAAA,SAAAxc,MAAAwc,aAAA,UAAA3W,MAAA2P,QAAAxV,MAAAwc,cAAAC,MAAAzc,MAAAwc,gBAAA3a,cAAA7B,MAAA0c,uBAAA,oBAAA1c,MAAA0c,uBAAA,SAAA1c,MAAA0c,uBAAA,UAAA7W,MAAA2P,QAAAxV,MAAA0c,wBAAAC,MAAA3c,MAAA0c,0BAAA7a,cAAA7B,MAAA4c,YAAA/W,MAAA2P,QAAAxV,MAAA4c,aAAA5c,MAAA4c,SAAAxI,OAAAqB,QAAA,oBAAAA,QAAA,SAAAA,QAAA,UAAA5P,MAAA2P,QAAAC,SAAAoH,MAAApH,aAAA5T,cAAA7B,MAAA8c,SAAA,oBAAA9c,MAAA8c,SAAA,SAAA9c,MAAA8c,SAAA,UAAAjX,MAAA2P,QAAAxV,MAAA8c,UAAAC,MAAA/c,MAAA8c,YAAAjb,cAAA7B,MAAAoV,QAAAvP,MAAA2P,QAAAxV,MAAAoV,SAAApV,MAAAoV,KAAAhB,OAAAqB,QAAA,oBAAAA,QAAA,SAAAA,QAAAuH,MAAAvH;YAAA,MAAAC,OAAA1V,SAAA,oBAAAA,MAAAid,UAAApb,cAAA7B,MAAA+G,eAAA,oBAAA/G,MAAA+G,iBAAAlF,cAAA7B,MAAAkd,kBAAA,oBAAAld,MAAAkd,oBAAArb,cAAA7B,MAAAmd,WAAA,oBAAAnd,MAAAmd,WAAA,SAAAnd,MAAAmd,WAAA,UAAAtX,MAAA2P,QAAAxV,MAAAmd,YAAAC,KAAApd,MAAAmd,cAAAtb,cAAA7B,MAAAqd,WAAA,oBAAArd,MAAAqd,WAAA,SAAArd,MAAAqd,WAAAC,KAAAtd,MAAAqd,aAAA,oBAAArd,MAAAud;YAAA,MAAAH,OAAApd,UAAA6B,cAAA7B,MAAA4D,QAAA,oBAAA5D,MAAA4D,UAAA/B,cAAA7B,MAAAgI,OAAA,oBAAAhI,MAAAgI,SAAAnG,cAAA7B,MAAAwd,SAAA,oBAAAxd,MAAAwd;YAAA,MAAAF,OAAAtd,SAAA,oBAAAA,MAAA4D,SAAA/B,cAAA7B,MAAAgI,OAAA,oBAAAhI,MAAAgI;YAAA,MAAAsU,OAAAtc,SAAAiB,OAAAwc,KAAAzd,OAAAoU,OAAAhT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAA,GAKX3B,MAAMi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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/context/internal/AgenticaTokenUsageAggregator.ts","../src/context/AgenticaTokenUsage.ts","../src/utils/__map_take.ts","../src/context/internal/AgenticaOperationComposer.ts","../src/factory/histories.ts","../src/factory/events.ts","../src/constants/AgenticaConstant.ts","../src/utils/Singleton.ts","../src/constants/AgenticaSystemPrompt.ts","../src/constants/AgenticaDefaultPrompt.ts","../src/context/internal/isAgenticaContext.ts","../src/utils/ByteArrayUtil.ts","../src/utils/ChatGptTokenUsageAggregator.ts","../src/utils/ChatGptCompletionMessageUtil.ts","../src/utils/StreamUtil.ts","../src/factory/operations.ts","../src/orchestrate/internal/cancelFunctionFromContext.ts","../src/orchestrate/call.ts","../src/orchestrate/cancel.ts","../src/utils/AsyncQueue.ts","../src/utils/MPSC.ts","../src/orchestrate/describe.ts","../src/orchestrate/initialize.ts","../src/orchestrate/internal/selectFunctionFromContext.ts","../src/orchestrate/select.ts","../src/orchestrate/execute.ts","../src/transformers/transformHistory.ts","../src/Agentica.ts","../src/functional/assertHttpController.ts","../src/functional/assertHttpLlmApplication.ts","../src/functional/assertMcpController.ts","../src/functional/validateHttpController.ts","../src/functional/validateHttpLlmApplication.ts","../src/functional/validateMcpController.ts","../src/MicroAgentica.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["aggregate","props","component","usage","kind","total","completionUsage","total_tokens","input","prompt_tokens","prompt_tokens_details","audio_tokens","cached","cached_tokens","output","completion_tokens","accepted_prediction","completion_tokens_details","accepted_prediction_tokens","reasoning","reasoning_tokens","rejected_prediction","rejected_prediction_tokens","sum","getter","Object","entries","filter","key","map","comp","reduce","a","b","AgenticaTokenUsageAggregator","AgenticaTokenUsage","constructor","undefined","zero","this","initialize","select","cancel","call","describe","increment","y","x","use","toJSON","_co0","plus","z","__map_take","dict","generator","oldbie","get","value","set","compose","unique","controllers","length","names","application","functions","func","name","flat","Set","size","array","getOperations","naming","controllerIndex","capacity","config","divided","divide","Map","group","item","controller","flatMap","idx","protocol","toHttpOperations","index","toClassOperations","toMcpOperations","Error","function","Number","isNaN","TypeError","Infinity","Math","ceil","replica","slice","Array","from","splice","AgenticaOperationComposer","decodeHistory","history","type","role","tool_calls","id","arguments","JSON","stringify","selection","operation","reason","tool_call_id","content","description","parameters","method","path","status","data","body","text","contents","decodeUserMessageContent","input_audio","format","file","file_data","filename","file_id","image_url","url","detail","createUserMessageHistory","created_at","createAssistantMessageHistory","prompt","createSystemMessageHistory","createDescribeHistory","executes","execute","createSelectHistory","createCancelHistory","createExecuteHistory","createInitializeEvent","event","v4","Date","toISOString","createSelectEvent","toHistory","createCancelEvent","createCallEvent","createValidateEvent","result","createExecuteEvent","createUserMessageEvent","creatAssistantMessageEvent","stream","join","done","createDescribeEvent","createRequestEvent","source","options","createResponseEvent","AgenticaConstant","RETRY","ELITICISM","NOT_MOUNTED_YET","Singleton","closure","closure_","value_","args","AgenticaSystemPrompt","CANCEL","COMMON","DESCRIBE","EXECUTE","INITIALIZE","SELECT","getLocale","is_node","process","env","LANG","split","navigator","language","getTimezone","Intl","DateTimeFormat","resolvedOptions","timeZone","write","systemPrompt","common","locale","timezone","replace","AgenticaDefaultPrompt","isAgenticaContext","ctx","ByteArrayUtil","toUtf8","byteArray","TextDecoder","decode","sumCompletionTokenDetail","sumPromptTokenDetail","ChatGptTokenUsageAggregator","transformCompletionChunk","str","Uint8Array","parse","accumulate","origin","chunk","choices","forEach","choice","accChoice","mergeChoice","finish_reason","logprobs","message","delta","acc","cur","refusal","merge","chunks","firstChunk","created","model","object","service_tier","system_fingerprint","_a","toolCalls","toolCall","existingToolCall","mergeToolCalls","ChatGptCompletionMessageUtil","async","readAll","reader","getReader","read","push","reducer","initial","iterator","streamDefaultReaderToAsyncGenerator","ReadableStream","start","enqueue","close","toAsyncGenerator","transform","transformer","pull","StreamUtil","createOperationSelection","cancelFunctionFromContext","reference","stack","findIndex","dispatch","operations","completionStream","request","messages","histories","tools","s","separated","llm","properties","required","additionalProperties","$defs","tool_choice","completion","tc","fillHttpArguments","exec","propagate","Promise","resolve","retry","propagateHttp","propagateClass","propagateMcp","check","validate","success","trial","correct","errors","response","executeHttpOperation","error","headers","executeClassOperation","executeMcpOperation","operationArguments","controllerBaseArguments","connection","HttpLlm","client","callTool","then","v","find","route","requestBody","isObject","query","schema","ChatGptTypeChecker","isReference","$ref","at","isAnyOf","anyOf","every","LlmTypeCheckerV3_1","isOneOf","oneOf","CONTAINER","step","stacks","events","all","i","e","eliticism","some","cancelled","failures","op","tags","emendMessages","validation","_io0","isArray","elem","_io1","_vo0","_path","_exceptionable","_report","f","AsyncQueueClosedError","super","AsyncQueue","queue","resolvers","closeResolvers","emptyResolvers","closed","console","shift","dequeue","isEmpty","isClosed","waitUntilEmpty","waitClosed","MPSC","consumer","produce","describeContext","accPromise","registerContext","mpsc","ChatGptDescribeFunctionAgent","FUNCTION","textContext","c","selectFunctionFromContext","selected","executor","ready","transformHistory","transformUserMessage","transformAssistantMessage","transformSystemMessage","transformSelect","transformCancel","transformExecute","transformDescribe","findOperation","next","found","Agentica","operations_","stack_","listeners_","histories_","executor_","semaphore_","vendor","semaphore","Semaphore","token_usage_","tokenUsage","ready_","clone","conversate","historyGetters","catch","getContext","abortSignal","completed","h","getConfig","getVendor","getControllers","getHistories","getTokenUsage","stream_options","include_usage","signal","backoffStrategy","count","api","chat","completions","create","waiting","setTimeout","streamForEvent","temporaryStream","toReadableStream","tee","streamForAggregate","streamForReturn","streamForStream","streamForJoin","acquire","release","on","listener","add","off","delete","assertHttpController","document","OpenApi","convert","swagger","RegExp","test","info","host","basePath","consumes","produces","definitions","_io4","_io16","responses","_io29","securityDefinitions","_io31","security","_io39","paths","_io40","_io47","title","termsOfService","contact","_io2","license","_io3","version","email","keys","assertHttpLlmApplication","assertMcpController","ListToolsResultSchema","import","McpLlm","inputSchema","_iu1","nullable","_iu0","maxProperties","minProperties","deprecated","examples","_io5","validateHttpController","inspect","validateHttpLlmApplication","validateMcpController","MicroAgentica"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAA,GAK9B3B,MAAMqc;IACR,OAAO;QACLhX,UAAU;QACVlB,MAAMnE,MAAMmE;QACZH,aAAa0P,QAAQ1P,YAAY;YAC/B+K,OAAO/O,MAAM+O;YACbsN;YACA7R,SAASxK,MAAMwK;;QAEjBxB,SAAShJ,MAAMgJ;QACfyK,YAAYzT,MAAMyT;;AAEtB;;AC/EM,SAAU4K,yBAEdre;IAqBA,OAAO0T,QAAQ1P,YAAY;QACzB+K,OAAO/O,MAAM+O;QACbsN,UAAUC,QAAQC,QAAO;YAAA,MAAAzG,OAAAvV,SAAA,SAAAA,MAAAic,WAAApa,cAAA7B,MAAAic,YAAA,UAAAjc,MAAAic,WAAA,oBAAAjc,MAAAic,WAAAC,OAAA,+CAAAC,KAAAnc,MAAAic,cAAApa,cAAA7B,MAAAoc,QAAA,oBAAApc,MAAAoc,QAAA,SAAApc,MAAAoc,QAAA1G,KAAA1V,MAAAoc,WAAAva,cAAA7B,MAAAqc,QAAA,oBAAArc,MAAAqc,UAAAxa,cAAA7B,MAAAsc,YAAA,oBAAAtc,MAAAsc,cAAAza,cAAA7B,MAAAuc,YAAA1W,MAAA2P,QAAAxV,MAAAuc,aAAAvc,MAAAuc,SAAAnI,OAAAqB,QAAA,oBAAAA,YAAA5T,cAAA7B,MAAAwc,YAAA3W,MAAA2P,QAAAxV,MAAAwc,aAAAxc,MAAAwc,SAAApI,OAAAqB,QAAA,oBAAAA,YAAA5T,cAAA7B,MAAAyc,eAAA,oBAAAzc,MAAAyc,eAAA,SAAAzc,MAAAyc,eAAA,UAAA5W,MAAA2P,QAAAxV,MAAAyc,gBAAAC,KAAA1c,MAAAyc,kBAAA5a,cAAA7B,MAAAgH,cAAA,oBAAAhH,MAAAgH,cAAA,SAAAhH,MAAAgH,cAAA,UAAAnB,MAAA2P,QAAAxV,MAAAgH,eAAA2V,MAAA3c,MAAAgH,iBAAAnF,cAAA7B,MAAA4c,aAAA,oBAAA5c,MAAA4c,aAAA,SAAA5c,MAAA4c,aAAA,UAAA/W,MAAA2P,QAAAxV,MAAA4c,cAAAC,MAAA7c,MAAA4c,gBAAA/a,cAAA7B,MAAA8c,uBAAA,oBAAA9c,MAAA8c,uBAAA,SAAA9c,MAAA8c,uBAAA,UAAAjX,MAAA2P,QAAAxV,MAAA8c,wBAAAC,MAAA/c,MAAA8c,0BAAAjb,cAAA7B,MAAAgd,YAAAnX,MAAA2P,QAAAxV,MAAAgd,aAAAhd,MAAAgd,SAAA5I,OAAAqB,QAAA,oBAAAA,QAAA,SAAAA,QAAA,UAAA5P,MAAA2P,QAAAC,SAAAwH,MAAAxH,aAAA5T,cAAA7B,MAAAkd,SAAA,oBAAAld,MAAAkd,SAAA,SAAAld,MAAAkd,SAAA,UAAArX,MAAA2P,QAAAxV,MAAAkd,UAAAC,MAAAnd,MAAAkd,YAAArb,cAAA7B,MAAAoV,QAAAvP,MAAA2P,QAAAxV,MAAAoV,SAAApV,MAAAoV,KAAAhB,OAAAqB,QAAA,oBAAAA,QAAA,SAAAA,QAAA2H,MAAA3H;YAAA,MAAAC,OAAA1V,SAAA,oBAAAA,MAAAqd,UAAAxb,cAAA7B,MAAA+G,eAAA,oBAAA/G,MAAA+G,iBAAAlF,cAAA7B,MAAAsd,kBAAA,oBAAAtd,MAAAsd,oBAAAzb,cAAA7B,MAAAud,WAAA,oBAAAvd,MAAAud,WAAA,SAAAvd,MAAAud,WAAA,UAAA1X,MAAA2P,QAAAxV,MAAAud,YAAAC,KAAAxd,MAAAud,cAAA1b,cAAA7B,MAAAyd,WAAA,oBAAAzd,MAAAyd,WAAA,SAAAzd,MAAAyd,WAAAC,KAAA1d,MAAAyd,aAAA,oBAAAzd,MAAA2d;YAAA,MAAAH,OAAAxd,UAAA6B,cAAA7B,MAAA4D,QAAA,oBAAA5D,MAAA4D,UAAA/B,cAAA7B,MAAAgI,OAAA,oBAAAhI,MAAAgI,SAAAnG,cAAA7B,MAAA4d,SAAA,oBAAA5d,MAAA4d;YAAA,MAAAF,OAAA1d,SAAA,oBAAAA,MAAA4D,SAAA/B,cAAA7B,MAAAgI,OAAA,oBAAAhI,MAAAgI;YAAA,MAAA0U,OAAA1c,SAAAiB,OAAA4c,KAAA7d,OAAAoU,OAAAhT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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AhI,MAAAgI;QAAA,MAAA0U,OAAA1c,SAAAiB,OAAA4c,KAAA7d,OAAAoU,OAAAhT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
@@ -109,4 +109,21 @@ export interface IAgenticaConfig<Model extends ILlmSchema.Model> {
109
109
  * @default true
110
110
  */
111
111
  eliticism?: boolean;
112
+ /**
113
+ * Backoff strategy.
114
+ *
115
+ * If OpenAI SDK fails to connect LLM API Server, this Backoff factor
116
+ * would be used to retry for the next connection.
117
+ *
118
+ * If the function returns `true`, the retry would be stopped.
119
+ * Otherwise, the retry would be continued.
120
+ *
121
+ * @default (props) => throw props.error
122
+ * @returns {number} The number of milliseconds to wait before the next retry
123
+ * @throws {Error} If the function want to stop the retry, you can throw an error
124
+ */
125
+ backoffStrategy?: (props: {
126
+ count: number;
127
+ error: unknown;
128
+ }) => number;
112
129
  }
@@ -71,4 +71,21 @@ export interface IMicroAgenticaConfig<Model extends ILlmSchema.Model> {
71
71
  * @default 3
72
72
  */
73
73
  retry?: number;
74
+ /**
75
+ * Backoff strategy.
76
+ *
77
+ * If OpenAI SDK fails to connect LLM API Server, this Backoff factor
78
+ * would be used to retry for the next connection.
79
+ *
80
+ * If the function returns `true`, the retry would be stopped.
81
+ * Otherwise, the retry would be continued.
82
+ *
83
+ * @default (props) => throw props.error
84
+ * @returns {number} The number of milliseconds to wait before the next retry
85
+ * @throws {Error} If the function want to stop the retry, you can throw an error
86
+ */
87
+ backoffStrategy?: (props: {
88
+ count: number;
89
+ error: unknown;
90
+ }) => number;
74
91
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentica/core",
3
- "version": "0.29.0",
3
+ "version": "0.29.2",
4
4
  "description": "Agentic AI Library specialized in LLM Function Calling",
5
5
  "author": "Wrtn Technologies",
6
6
  "license": "MIT",
package/src/Agentica.ts CHANGED
@@ -283,10 +283,25 @@ export class Agentica<Model extends ILlmSchema.Model> {
283
283
  props.dispatch(event);
284
284
 
285
285
  // completion
286
- const completion = await this.props.vendor.api.chat.completions.create(
287
- event.body,
288
- event.options,
289
- );
286
+ const backoffStrategy = this.props.config?.backoffStrategy ?? ((props) => {
287
+ throw props.error;
288
+ });
289
+ const completion = await (async () => {
290
+ let count = 0;
291
+ while (true) {
292
+ try {
293
+ return await this.props.vendor.api.chat.completions.create(
294
+ event.body,
295
+ event.options,
296
+ );
297
+ }
298
+ catch (error) {
299
+ const waiting = backoffStrategy({ count, error });
300
+ await new Promise(resolve => setTimeout(resolve, waiting));
301
+ count++;
302
+ }
303
+ }
304
+ })();
290
305
 
291
306
  const [streamForEvent, temporaryStream] = StreamUtil.transform(
292
307
  completion.toReadableStream() as ReadableStream<Uint8Array>,
@@ -263,10 +263,25 @@ export class MicroAgentica<Model extends ILlmSchema.Model> {
263
263
  props.dispatch(event);
264
264
 
265
265
  // completion
266
- const completion = await this.props.vendor.api.chat.completions.create(
267
- event.body,
268
- event.options,
269
- );
266
+ const backoffStrategy = this.props.config?.backoffStrategy ?? ((props) => {
267
+ throw props.error;
268
+ });
269
+ const completion = await (async () => {
270
+ let count = 0;
271
+ while (true) {
272
+ try {
273
+ return await this.props.vendor.api.chat.completions.create(
274
+ event.body,
275
+ event.options,
276
+ );
277
+ }
278
+ catch (error) {
279
+ const waiting = backoffStrategy({ count, error });
280
+ await new Promise(resolve => setTimeout(resolve, waiting));
281
+ count++;
282
+ }
283
+ }
284
+ })();
270
285
 
271
286
  const [streamForEvent, temporaryStream] = StreamUtil.transform(
272
287
  completion.toReadableStream() as ReadableStream<Uint8Array>,
@@ -0,0 +1,2 @@
1
+ export * from "./AgenticaDefaultPrompt";
2
+ export * from "./AgenticaSystemPrompt";
package/src/index.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from "./Agentica";
2
2
 
3
+ export * from "./constants";
3
4
  export * from "./context";
4
5
  export * from "./events";
5
6
  export * as factory from "./factory";
@@ -120,4 +120,22 @@ export interface IAgenticaConfig<Model extends ILlmSchema.Model> {
120
120
  * @default true
121
121
  */
122
122
  eliticism?: boolean;
123
+
124
+ /**
125
+ * Backoff strategy.
126
+ *
127
+ * If OpenAI SDK fails to connect LLM API Server, this Backoff factor
128
+ * would be used to retry for the next connection.
129
+ *
130
+ * If the function returns `true`, the retry would be stopped.
131
+ * Otherwise, the retry would be continued.
132
+ *
133
+ * @default (props) => throw props.error
134
+ * @returns {number} The number of milliseconds to wait before the next retry
135
+ * @throws {Error} If the function want to stop the retry, you can throw an error
136
+ */
137
+ backoffStrategy?: (props: {
138
+ count: number;
139
+ error: unknown;
140
+ }) => number;
123
141
  }
@@ -81,4 +81,5 @@ export interface IAgenticaProps<Model extends ILlmSchema.Model> {
81
81
  * tracing would be binded to the instance.
82
82
  */
83
83
  tokenUsage?: IAgenticaTokenUsageJson | AgenticaTokenUsage | undefined;
84
+
84
85
  }
@@ -79,4 +79,22 @@ export interface IMicroAgenticaConfig<Model extends ILlmSchema.Model> {
79
79
  * @default 3
80
80
  */
81
81
  retry?: number;
82
+
83
+ /**
84
+ * Backoff strategy.
85
+ *
86
+ * If OpenAI SDK fails to connect LLM API Server, this Backoff factor
87
+ * would be used to retry for the next connection.
88
+ *
89
+ * If the function returns `true`, the retry would be stopped.
90
+ * Otherwise, the retry would be continued.
91
+ *
92
+ * @default (props) => throw props.error
93
+ * @returns {number} The number of milliseconds to wait before the next retry
94
+ * @throws {Error} If the function want to stop the retry, you can throw an error
95
+ */
96
+ backoffStrategy?: (props: {
97
+ count: number;
98
+ error: unknown;
99
+ }) => number;
82
100
  }