@mcp-abap-adt/llm-agent-server 17.0.0 → 18.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated/version.d.ts +1 -1
- package/dist/generated/version.js +1 -1
- package/dist/smart-agent/build-stepper-root.d.ts +97 -0
- package/dist/smart-agent/build-stepper-root.d.ts.map +1 -0
- package/dist/smart-agent/build-stepper-root.js +242 -0
- package/dist/smart-agent/build-stepper-root.js.map +1 -0
- package/dist/smart-agent/config.d.ts +119 -1
- package/dist/smart-agent/config.d.ts.map +1 -1
- package/dist/smart-agent/config.js +219 -24
- package/dist/smart-agent/config.js.map +1 -1
- package/dist/smart-agent/jsonl-knowledge-backend.d.ts +19 -0
- package/dist/smart-agent/jsonl-knowledge-backend.d.ts.map +1 -0
- package/dist/smart-agent/jsonl-knowledge-backend.js +46 -0
- package/dist/smart-agent/jsonl-knowledge-backend.js.map +1 -0
- package/dist/smart-agent/session-meta-store.d.ts +53 -0
- package/dist/smart-agent/session-meta-store.d.ts.map +1 -0
- package/dist/smart-agent/session-meta-store.js +36 -0
- package/dist/smart-agent/session-meta-store.js.map +1 -0
- package/dist/smart-agent/smart-server.d.ts +99 -2
- package/dist/smart-agent/smart-server.d.ts.map +1 -1
- package/dist/smart-agent/smart-server.js +546 -8
- package/dist/smart-agent/smart-server.js.map +1 -1
- package/dist/smart-agent/stepper-coordinator-handler.d.ts +36 -0
- package/dist/smart-agent/stepper-coordinator-handler.d.ts.map +1 -0
- package/dist/smart-agent/stepper-coordinator-handler.js +214 -0
- package/dist/smart-agent/stepper-coordinator-handler.js.map +1 -0
- package/package.json +26 -26
|
@@ -583,16 +583,23 @@ function validateResolvedConfig(_resolved, yaml, env) {
|
|
|
583
583
|
}
|
|
584
584
|
}
|
|
585
585
|
if (get(yaml, 'mcp')) {
|
|
586
|
-
const
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
586
|
+
const rawMcpVal = yaml.mcp;
|
|
587
|
+
const mcpEntries = Array.isArray(rawMcpVal)
|
|
588
|
+
? rawMcpVal
|
|
589
|
+
: [rawMcpVal];
|
|
590
|
+
mcpEntries.forEach((entry, i) => {
|
|
591
|
+
const label = Array.isArray(rawMcpVal) ? `mcp[${i}]` : 'mcp';
|
|
592
|
+
const mcpType = entry?.type;
|
|
593
|
+
if (mcpType && !['http', 'stdio', 'none'].includes(mcpType)) {
|
|
594
|
+
issues.push(`${label}.type: "${mcpType}" is invalid (one of: http, stdio, none)`);
|
|
595
|
+
}
|
|
596
|
+
if (mcpType === 'http' && !entry?.url) {
|
|
597
|
+
issues.push(`${label}.url: required when ${label}.type is http`);
|
|
598
|
+
}
|
|
599
|
+
if (mcpType === 'stdio' && !entry?.command) {
|
|
600
|
+
issues.push(`${label}.command: required when ${label}.type is stdio`);
|
|
601
|
+
}
|
|
602
|
+
});
|
|
596
603
|
}
|
|
597
604
|
if (get(yaml, 'rag')) {
|
|
598
605
|
checkRagStore('rag', get(yaml, 'rag'), issues);
|
|
@@ -692,10 +699,14 @@ export function resolveSmartServerConfig(args = {}, yaml = {}, env = process.env
|
|
|
692
699
|
const flatApiKey = get(yaml, 'llm', 'apiKey') ?? '';
|
|
693
700
|
const pipelineApiKey = get(yaml, 'pipeline', 'llm', 'main', 'apiKey');
|
|
694
701
|
const apiKey = flatApiKey || pipelineApiKey || '';
|
|
702
|
+
const rawMcp = yaml.mcp;
|
|
703
|
+
const mcpIsArray = Array.isArray(rawMcp);
|
|
695
704
|
const mcpUrl = get(yaml, 'mcp', 'url');
|
|
696
705
|
const mcpCommand = get(yaml, 'mcp', 'command');
|
|
697
|
-
const mcpTypeRaw =
|
|
698
|
-
|
|
706
|
+
const mcpTypeRaw = mcpIsArray
|
|
707
|
+
? null // array form: type resolved per-entry inside connectMcpClientsFromConfig
|
|
708
|
+
: (get(yaml, 'mcp', 'type') ??
|
|
709
|
+
(mcpUrl ? 'http' : mcpCommand ? 'stdio' : null));
|
|
699
710
|
const mcpType = (mcpTypeRaw === 'none' ? null : mcpTypeRaw);
|
|
700
711
|
const promptSystem = get(yaml, 'prompts', 'system') ?? null;
|
|
701
712
|
const promptClassifier = get(yaml, 'prompts', 'classifier') ?? null;
|
|
@@ -739,18 +750,22 @@ export function resolveSmartServerConfig(args = {}, yaml = {}, env = process.env
|
|
|
739
750
|
: {}),
|
|
740
751
|
}
|
|
741
752
|
: undefined,
|
|
742
|
-
mcp:
|
|
743
|
-
?
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
: undefined,
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
753
|
+
mcp: mcpIsArray
|
|
754
|
+
? // Array form: pass through as-is so connectMcpClientsFromConfig can
|
|
755
|
+
// iterate and connect each entry. Typed as SmartServerMcpConfig[].
|
|
756
|
+
rawMcp
|
|
757
|
+
: mcpType
|
|
758
|
+
? {
|
|
759
|
+
type: mcpType,
|
|
760
|
+
url: mcpUrl || undefined,
|
|
761
|
+
command: mcpCommand || undefined,
|
|
762
|
+
args: args['mcp-args'] || get(yaml, 'mcp', 'args')
|
|
763
|
+
? String(args['mcp-args'] || get(yaml, 'mcp', 'args')).split(' ')
|
|
764
|
+
: undefined,
|
|
765
|
+
headers: get(yaml, 'mcp', 'headers') ||
|
|
766
|
+
undefined,
|
|
767
|
+
}
|
|
768
|
+
: undefined,
|
|
754
769
|
agent: {
|
|
755
770
|
externalToolsValidationMode: (get(yaml, 'agent', 'externalToolsValidationMode') ?? 'permissive'),
|
|
756
771
|
maxIterations: Number(get(yaml, 'agent', 'maxIterations') ?? 10),
|
|
@@ -880,4 +895,184 @@ export function resolveSmartServerConfig(args = {}, yaml = {}, env = process.env
|
|
|
880
895
|
validateResolvedConfig(resolved, yaml, env);
|
|
881
896
|
return resolved;
|
|
882
897
|
}
|
|
898
|
+
const MODES = new Set(['cyclic-react', 'planned-react']);
|
|
899
|
+
/**
|
|
900
|
+
* Preset expansion: each `mode` maps to a default `flow` composition.
|
|
901
|
+
* An explicit `coordinator.flow` block overrides these per-component.
|
|
902
|
+
*/
|
|
903
|
+
const MODE_FLOW_PRESET = {
|
|
904
|
+
'cyclic-react': { planner: 'none', executor: 'cyclic-react' },
|
|
905
|
+
'planned-react': { planner: 'llm', executor: 'cyclic-react' },
|
|
906
|
+
};
|
|
907
|
+
/** Parse declarative `flow.plan` nodes (for the static planner). */
|
|
908
|
+
function parseFlowPlan(raw) {
|
|
909
|
+
if (!Array.isArray(raw))
|
|
910
|
+
return undefined;
|
|
911
|
+
const nodes = raw
|
|
912
|
+
.filter((n) => !!n && typeof n.goal === 'string')
|
|
913
|
+
.map((n, i) => ({
|
|
914
|
+
id: typeof n.id === 'string' && n.id ? n.id : `n${i}`,
|
|
915
|
+
goal: n.goal,
|
|
916
|
+
...(Array.isArray(n.dependsOn)
|
|
917
|
+
? {
|
|
918
|
+
dependsOn: n.dependsOn.filter((d) => typeof d === 'string'),
|
|
919
|
+
}
|
|
920
|
+
: {}),
|
|
921
|
+
...(typeof n.agent === 'string' ? { agent: n.agent } : {}),
|
|
922
|
+
}));
|
|
923
|
+
return nodes.length > 0 ? nodes : undefined;
|
|
924
|
+
}
|
|
925
|
+
/**
|
|
926
|
+
* Parse a (possibly nested) `flow` block into a full StepperCompositionSpec,
|
|
927
|
+
* inheriting bounds from the root. Mutually recursive with
|
|
928
|
+
* parseCompositionNodes (function declarations are hoisted).
|
|
929
|
+
*/
|
|
930
|
+
function parseNestedFlowSpec(flowCfg, bounds) {
|
|
931
|
+
const plannerType = flowCfg?.planner?.type ?? 'llm';
|
|
932
|
+
if (!['none', 'llm', 'static'].includes(plannerType))
|
|
933
|
+
throw new Error(`flow.planner.type must be none|llm|static`);
|
|
934
|
+
const granularity = flowCfg?.planner?.granularity ?? 'shallow';
|
|
935
|
+
if (!['shallow', 'detailed'].includes(granularity))
|
|
936
|
+
throw new Error(`flow.planner.granularity must be shallow|detailed`);
|
|
937
|
+
const executor = flowCfg?.executor?.type ?? 'cyclic-react';
|
|
938
|
+
if (!['simple', 'cyclic-react'].includes(executor))
|
|
939
|
+
throw new Error(`flow.executor.type must be simple|cyclic-react (recursive is deferred to 18.1)`);
|
|
940
|
+
const plannerSystemPrompt = parseSystemPromptOverride(flowCfg?.planner?.systemPrompt, 'flow.planner.systemPrompt');
|
|
941
|
+
const executorSystemPrompt = parseSystemPromptOverride(flowCfg?.executor?.systemPrompt, 'flow.executor.systemPrompt');
|
|
942
|
+
const plan = parseFlowPlan(flowCfg?.plan);
|
|
943
|
+
const nodes = parseCompositionNodes(flowCfg?.nodes, bounds);
|
|
944
|
+
return {
|
|
945
|
+
// Declared nodes ARE the plan ⇒ this level is static (keep the spec honest:
|
|
946
|
+
// buildFromComposition routes a node-bearing level to a StaticPlanner).
|
|
947
|
+
planner: (nodes ? 'static' : plannerType),
|
|
948
|
+
granularity: granularity,
|
|
949
|
+
...(plan ? { plan } : {}),
|
|
950
|
+
...(nodes ? { nodes } : {}),
|
|
951
|
+
executor: executor,
|
|
952
|
+
finalizer: 'llm',
|
|
953
|
+
...(plannerSystemPrompt ? { plannerSystemPrompt } : {}),
|
|
954
|
+
...(executorSystemPrompt ? { executorSystemPrompt } : {}),
|
|
955
|
+
...bounds,
|
|
956
|
+
};
|
|
957
|
+
}
|
|
958
|
+
/** Validate an optional system-prompt override: must be a non-empty string. */
|
|
959
|
+
function parseSystemPromptOverride(raw, label) {
|
|
960
|
+
if (raw === undefined || raw === null)
|
|
961
|
+
return undefined;
|
|
962
|
+
if (typeof raw !== 'string' || raw.trim() === '')
|
|
963
|
+
throw new Error(`coordinator.${label} must be a non-empty string`);
|
|
964
|
+
return raw;
|
|
965
|
+
}
|
|
966
|
+
/** Parse composition nodes; a node with a nested `flow` recurses into a sub-spec. */
|
|
967
|
+
function parseCompositionNodes(raw, bounds) {
|
|
968
|
+
if (!Array.isArray(raw))
|
|
969
|
+
return undefined;
|
|
970
|
+
const nodes = raw
|
|
971
|
+
.filter((n) => !!n && typeof n.goal === 'string')
|
|
972
|
+
.map((n, i) => ({
|
|
973
|
+
id: typeof n.id === 'string' && n.id ? n.id : `n${i}`,
|
|
974
|
+
goal: n.goal,
|
|
975
|
+
...(Array.isArray(n.dependsOn)
|
|
976
|
+
? {
|
|
977
|
+
dependsOn: n.dependsOn.filter((d) => typeof d === 'string'),
|
|
978
|
+
}
|
|
979
|
+
: {}),
|
|
980
|
+
...(n.flow ? { flow: parseNestedFlowSpec(n.flow, bounds) } : {}),
|
|
981
|
+
}));
|
|
982
|
+
return nodes.length > 0 ? nodes : undefined;
|
|
983
|
+
}
|
|
984
|
+
/**
|
|
985
|
+
* Parse stepper coordinator configuration from a raw config object.
|
|
986
|
+
*
|
|
987
|
+
* Supports:
|
|
988
|
+
* - `mode` (string) — default 'planned-react'; one of cyclic-react | planned-react
|
|
989
|
+
* - `stepper.maxParallelSteps` (number) — default 4
|
|
990
|
+
* - `stepper.maxDepth` (number) — default 4
|
|
991
|
+
* - `stepper.tokenBudget` (number) — default 1,000,000
|
|
992
|
+
* - `stepper.reviewer.atDepths` (number[] | 'all') — default [0,1]; 'all' means accept any depth
|
|
993
|
+
*/
|
|
994
|
+
export function parseStepperCoordinatorConfig(coord) {
|
|
995
|
+
const mode = coord.mode ?? 'planned-react';
|
|
996
|
+
if (!MODES.has(mode))
|
|
997
|
+
throw new Error(`unknown coordinator.mode '${String(coord.mode)}'`);
|
|
998
|
+
// Tool permissioning is the MCP SERVER's responsibility — whatever it exposes
|
|
999
|
+
// via tools/list is allowed. The agent does not classify tools (read-only vs
|
|
1000
|
+
// mutating); there is no agent-side gate. The consumer wires the agent to a
|
|
1001
|
+
// server that exposes only the permitted tools (e.g. a read-only MCP proxy).
|
|
1002
|
+
const stepper = coord.stepper ?? {};
|
|
1003
|
+
const reviewerCfg = stepper.reviewer ?? {};
|
|
1004
|
+
const atDepths = reviewerCfg.atDepths ?? [0, 1];
|
|
1005
|
+
const reviewerAtDepths = atDepths === 'all'
|
|
1006
|
+
? { has: () => true }
|
|
1007
|
+
: (() => {
|
|
1008
|
+
const s = new Set(atDepths);
|
|
1009
|
+
return { has: (d) => s.has(d) };
|
|
1010
|
+
})();
|
|
1011
|
+
const knowledgeSeed = Array.isArray(coord.knowledgeSeed)
|
|
1012
|
+
? coord.knowledgeSeed
|
|
1013
|
+
.filter((e) => e && typeof e.content === 'string' && e.content.trim() !== '')
|
|
1014
|
+
.map((e) => ({
|
|
1015
|
+
content: e.content,
|
|
1016
|
+
artifactType: typeof e.artifactType === 'string' && e.artifactType
|
|
1017
|
+
? e.artifactType
|
|
1018
|
+
: 'guidance',
|
|
1019
|
+
}))
|
|
1020
|
+
: [];
|
|
1021
|
+
// Resolve the program flow: explicit `coordinator.flow` overrides the
|
|
1022
|
+
// mode-derived preset per component. `mode` thus becomes a preset alias.
|
|
1023
|
+
const preset = MODE_FLOW_PRESET[mode];
|
|
1024
|
+
const flowCfg = coord.flow;
|
|
1025
|
+
const plannerType = flowCfg?.planner?.type ?? preset.planner;
|
|
1026
|
+
if (!['none', 'llm', 'static'].includes(plannerType))
|
|
1027
|
+
throw new Error(`coordinator.flow.planner.type must be none|llm|static`);
|
|
1028
|
+
const granularity = flowCfg?.planner?.granularity ?? 'shallow';
|
|
1029
|
+
if (!['shallow', 'detailed'].includes(granularity))
|
|
1030
|
+
throw new Error(`coordinator.flow.planner.granularity must be shallow|detailed`);
|
|
1031
|
+
const executorType = flowCfg?.executor?.type ?? preset.executor;
|
|
1032
|
+
if (!['simple', 'cyclic-react'].includes(executorType))
|
|
1033
|
+
throw new Error(`coordinator.flow.executor.type must be simple|cyclic-react (recursive is deferred to 18.1)`);
|
|
1034
|
+
const finalizerType = flowCfg?.finalizer?.type ?? 'llm';
|
|
1035
|
+
if (finalizerType !== 'llm')
|
|
1036
|
+
throw new Error(`coordinator.flow.finalizer.type 'passthrough' is not yet implemented (use 'llm')`);
|
|
1037
|
+
const plannerSystemPrompt = parseSystemPromptOverride(flowCfg?.planner?.systemPrompt, 'flow.planner.systemPrompt');
|
|
1038
|
+
const executorSystemPrompt = parseSystemPromptOverride(flowCfg?.executor?.systemPrompt, 'flow.executor.systemPrompt');
|
|
1039
|
+
const plan = parseFlowPlan(flowCfg?.plan);
|
|
1040
|
+
const maxParallelSteps = Number(stepper.maxParallelSteps ?? 4);
|
|
1041
|
+
const maxDepth = Number(stepper.maxDepth ?? 4);
|
|
1042
|
+
const tokenBudget = Number(stepper.tokenBudget ?? 1_000_000);
|
|
1043
|
+
const formalizeTask = coord.formalizeTask === true;
|
|
1044
|
+
// Nested composition nodes inherit the root bounds (a sub-cycle uses the same
|
|
1045
|
+
// parallelism / depth / budget / safety unless the runtime threads otherwise).
|
|
1046
|
+
const bounds = {
|
|
1047
|
+
reviewerAtDepths,
|
|
1048
|
+
maxParallelSteps,
|
|
1049
|
+
maxDepth,
|
|
1050
|
+
tokenBudget,
|
|
1051
|
+
formalizeTask,
|
|
1052
|
+
};
|
|
1053
|
+
const nodes = parseCompositionNodes(flowCfg?.nodes, bounds);
|
|
1054
|
+
// Static planner needs an explicit plan OR declared nodes (nodes ARE the plan).
|
|
1055
|
+
if (plannerType === 'static' && !plan && !nodes)
|
|
1056
|
+
throw new Error(`coordinator.flow.planner.type 'static' requires coordinator.flow.plan or coordinator.flow.nodes`);
|
|
1057
|
+
return {
|
|
1058
|
+
mode,
|
|
1059
|
+
reviewerAtDepths,
|
|
1060
|
+
maxParallelSteps,
|
|
1061
|
+
maxDepth,
|
|
1062
|
+
tokenBudget,
|
|
1063
|
+
knowledgeSeed,
|
|
1064
|
+
formalizeTask,
|
|
1065
|
+
flow: {
|
|
1066
|
+
// Declared root nodes ARE the plan ⇒ static at the root (honest spec).
|
|
1067
|
+
planner: (nodes ? 'static' : plannerType),
|
|
1068
|
+
granularity: granularity,
|
|
1069
|
+
executor: executorType,
|
|
1070
|
+
finalizer: 'llm',
|
|
1071
|
+
...(plannerSystemPrompt ? { plannerSystemPrompt } : {}),
|
|
1072
|
+
...(executorSystemPrompt ? { executorSystemPrompt } : {}),
|
|
1073
|
+
...(plan ? { plan } : {}),
|
|
1074
|
+
...(nodes ? { nodes } : {}),
|
|
1075
|
+
},
|
|
1076
|
+
};
|
|
1077
|
+
}
|
|
883
1078
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/smart-agent/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAO7B,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,2BAA2B,EAC3B,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAW1C;;;;;;GAMG;AACH,SAAS,eAAe,CAAC,KAA0C;IACjE,MAAM,IAAI,GAAG,KAAsC,CAAC;IACpD,OAAO,CACL,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ;QACjC,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;QAC/B,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;QAC9B,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,CAC7B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAA2C;IAE3C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,IAAI,EAAE,KAA6B,EAAsB,CAAC;IACrE,CAAC;IACD,MAAM,GAAG,GAAG,KAAqB,CAAC;IAClC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;IACJ,CAAC;IACD,OAAO,GAAuB,CAAC;AACjC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,GAAiC,EACjC,IAAwB;IAExB,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IACpC,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAC9B,GAAiC,EACjC,IAAa,EACb,gBAAuC;IAEvC,IAAI,CAAC,GAAG;QAAE,OAAO,gBAAgB,CAAC;IAClC,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC;IAC9C,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAgE,EAChE,IAA2B;IAE3B,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,WAAW,CAAC;IACpE,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QACzC,IAAI,CACF,wEAAwE,CACzE,CAAC;QACF,OAAO,KAAK,CAAC,UAAU,CAAC;IAC1B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AA8BD,MAAM,WAAW,GAAG;IAClB,UAAU;IACV,UAAU;IACV,UAAU;IACV,mBAAmB;IACnB,YAAY;IACZ,UAAU;IACV,YAAY;CACb,CAAC;AACF,MAAM,QAAQ,GAAG;IACf,SAAS;IACT,aAAa;IACb,UAAU;IACV,eAAe;IACf,WAAW;IACX,aAAa;IACb,eAAe;CAChB,CAAC;AAEF,+CAA+C;AAC/C,SAAS,kBAAkB,CAAC,KAAa,EAAE,IAAa;IACtD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CACb,eAAe,KAAK,iDAAiD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAC5F,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAI,IAA2B,CAAC,IAAI,CAAC;IAC/C,IACE,IAAI,KAAK,SAAS;QAClB,IAAI,KAAK,KAAK;QACd,CAAC,CAAC,KAAK,KAAK,WAAW,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,KAAK,UAAU,CAAC,CAAC,EAC3E,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,eAAe,KAAK,mBAAmB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1E,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,CAAC,YAAY,EAAE,aAAa,EAAE,cAAc,CAAU,EAAE,CAAC;QAC3E,MAAM,GAAG,GAAI,IAAgC,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,GAAG,KAAK,SAAS,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CACb,eAAe,KAAK,IAAI,KAAK,oDAAoD,MAAM,CAAC,GAAG,CAAC,EAAE,CAC/F,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,EAAE,GAAI,IAAmC,CAAC,YAAY,CAAC;IAC7D,IAAI,EAAE,KAAK,SAAS,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CACb,eAAe,KAAK,wCAAwC,MAAM,CAAC,EAAE,CAAC,EAAE,CACzE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,EAAW;IAC3C,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;QAC/D,MAAM,IAAI,KAAK,CACb,6EAA6E,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAClG,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAI,EAAyB,CAAC,IAAI,CAAC;IAC7C,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CACb,4CAA4C,MAAM,CAAC,IAAI,CAAC,6BAA6B,CACtF,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,GAAI,EAA+B,CAAC,UAAU,CAAC;IACvD,IAAI,EAAE,KAAK,SAAS,IAAI,CAAC,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CACb,4EAA4E,MAAM,CAAC,EAAE,CAAC,EAAE,CACzF,CAAC;IACJ,CAAC;AACH,CAAC;AAED;8DAC8D;AAC9D,MAAM,UAAU,4BAA4B,CAC1C,KAA8B;IAE9B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC;IAC1C,IAAI,KAAK,EAAE,CAAC;QACV,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjC,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAClC,kBAAkB,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACtC,wBAAwB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAChD,CAAC;QACD,IACE,KAAK,CAAC,WAAW,KAAK,SAAS;YAC/B,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,EACrC,CAAC;YACD,MAAM,IAAI,KAAK,CACb,6EAA6E,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CACjH,CAAC;QACJ,CAAC;QACD,IACE,KAAK,CAAC,aAAa,KAAK,SAAS;YACjC,CAAC,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,EACpE,CAAC;YACD,MAAM,IAAI,KAAK,CACb,iEAAiE,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAC/F,CAAC;QACJ,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACb,iBAAiB,CAAC,2EAA2E,CAC9F,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACb,iBAAiB,CAAC,wEAAwE,CAC3F,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,IAAY,EAAE,UAAgB;IACvE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,UAAU;YACb,OAAO,IAAI,eAAe,CAAC,UAAU,CAAC,CAAC;QACzC,KAAK,iBAAiB;YACpB,OAAO,IAAI,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAC/C,KAAK,aAAa;YAChB,+DAA+D;YAC/D,gEAAgE;YAChE,oEAAoE;YACpE,OAAO,IAAI,kBAAkB,EAAE,CAAC;QAClC;YACE,MAAM,IAAI,KAAK,CACb,2CAA2C,IAAI,qDAAqD,CACrG,CAAC;IACN,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B,CAC5C,QAAyC;IAEzC,OAAO,QAAQ,IAAI,QAAQ,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,IAAY,EACZ,WAAkB,EAClB,cAAwC;IAExC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,UAAU;YACb,OAAO,IAAI,gBAAgB,CAAC,cAAc,CAAC,CAAC;QAC9C,KAAK,MAAM;YACT,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CACb,0DAA0D,CAC3D,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC;QACvC,KAAK,QAAQ;YACX,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,cAAc,CACvB,IAAI,gBAAgB,CAAC,cAAc,CAAC,EACpC,IAAI,YAAY,CAAC,WAAW,CAAC,CAC9B,CAAC;QACJ;YACE,MAAM,IAAI,KAAK,CACb,2CAA2C,IAAI,qCAAqC,CACrF,CAAC;IACN,CAAC;AACH,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,IAAY;IACvD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM;YACT,OAAO,IAAI,cAAc,EAAE,CAAC;QAC9B,KAAK,UAAU;YACb,OAAO,IAAI,kBAAkB,EAAE,CAAC;QAClC;YACE,MAAM,IAAI,KAAK,CACb,6CAA6C,IAAI,6BAA6B,CAC/E,CAAC;IACN,CAAC;AACH,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,IAAY,EACZ,MAA8B;IAE9B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,OAAO;YACV,OAAO,IAAI,iBAAiB,EAAE,CAAC;QACjC,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,QAAQ,GAAG,MAAM,EAAE,QAAQ,CAAC;YAClC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,2BAA2B,CAAC,QAAQ,CAAC,CAAC;QACnD,CAAC;QACD;YACE,MAAM,IAAI,KAAK,CACb,yCAAyC,IAAI,+BAA+B,CAC7E,CAAC;IACN,CAAC;AACH,CAAC;AAED,MAAM,eAAe,GAAG;IACtB,QAAQ;IACR,WAAW;IACX,UAAU;IACV,YAAY;IACZ,QAAQ;CACA,CAAC;AAEX,MAAM,eAAe,GAAG;IACtB,WAAW;IACX,QAAQ;IACR,aAAa;IACb,WAAW;CACH,CAAC;AAEX,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,MAAgB;QAC1B,KAAK,CACH,8CAA8C,MAAM;aACjD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;aACtB,IAAI,CAAC,IAAI,CAAC,8CAA8C,CAC5D,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AA6BD,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+J5B,CAAC;AAEF,MAAM,UAAU,cAAc,CAC5B,KAAc,EACd,MAAyB,OAAO,CAAC,GAAG;IAEpC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAC3B,OAAO,KAAK,CAAC,OAAO,CAClB,6BAA6B,EAC7B,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,QAAQ,IAAI,EAAE,CACnD,CAAC;IACJ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC1E,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAC7C,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;YAC/D,CAAC;YACD,cAAc,CAAC,CAAC,EAAE,GAAG,CAAC;SACvB,CAAC,CACH,CAAC;IACJ,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,QAAgB,EAChB,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC9C,OAAO,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,CAAe,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,UAAkB;IACvD,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;AAQD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,GAA8B,EAC9B,MAAoC,EACpC,gBAAkD,EAClD,OAAwD;IAExD,MAAM,IAAI,GAAG,GAAG,EAAE,IAAI,IAAI,aAAa,CAAC;IACxC,IAAI,IAAI,KAAK,aAAa;QAAE,OAAO,IAAI,oBAAoB,EAAE,CAAC;IAC9D,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,IAAI,iBAAiB,EAAE,CAAC;IACxD,iBAAiB;IACjB,MAAM,QAAQ,GAAG,gBAAgB,CAC/B,MAAM,EACN,GAAG,EAAE,YAAY,EACjB,gBAAgB,CACjB,CAAC;IACF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,wHAAwH,CACzH,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpC,OAAO,IAAI,YAAY,CAAC,GAAG,EAAE;QAC3B,YAAY,EAAE,GAAG,EAAE,YAAY;KAChC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,GAAG,GAAG,CAAC,GAAY,EAAE,GAAG,IAAc,EAAW,EAAE,CACvD,IAAI,CAAC,MAAM,CAAU,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;IAC5B,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,OAAQ,CAA6B,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,EAAE,GAAG,CAAC,CAAC;AAEV,SAAS,YAAY,CACnB,KAAa,EACb,IAA2E,EAC3E,YAAqB,EACrB,GAAsB,EACtB,MAAgB;IAEhB,MAAM,QAAQ,GAAG,IAAI,EAAE,QAA8B,CAAC;IACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,CAAC,IAAI,CACT,GAAG,KAAK,+EAA+E,CACxF,CAAC;QACF,OAAO;IACT,CAAC;IACD,yEAAyE;IACzE,sEAAsE;IACtE,IAAI,CAAE,eAAqC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/D,MAAM,CAAC,IAAI,CACT,GAAG,KAAK,eAAe,QAAQ,wEAAwE,CACxG,CAAC;QACF,OAAO;IACT,CAAC;IACD,IAAI,YAAY,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,2BAA2B,CAAC,CAAC;IACnD,CAAC;IACD,IACE,QAAQ,KAAK,QAAQ;QACrB,QAAQ,KAAK,WAAW;QACxB,QAAQ,KAAK,UAAU,EACvB,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CACT,GAAG,QAAQ,aAAa,KAAK,6DAA6D,QAAQ,CAAC,WAAW,EAAE,2BAA2B,CAC5I,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,CACT,yHAAyH,CAC1H,CAAC;QACJ,CAAC;IACH,CAAC;IACD,+BAA+B;AACjC,CAAC;AAED,SAAS,aAAa,CACpB,KAAa,EACb,KAQa,EACb,MAAgB;IAEhB,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,MAAM,OAAO,GAAG,KAAK,CAAC,IAA0B,CAAC;IACjD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CACT,GAAG,KAAK,qEAAqE,CAC9E,CAAC;IACJ,CAAC;SAAM,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACxD,MAAM,CAAC,IAAI,CACT,GAAG,KAAK,WAAW,OAAO,4EAA4E,OAAO,sDAAsD,CACpK,CAAC;IACJ,CAAC;SAAM,IAAI,CAAE,eAAqC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACrE,MAAM,CAAC,IAAI,CACT,GAAG,KAAK,WAAW,OAAO,kEAAkE,CAC7F,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,IAAI,OAAO,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,sBAAsB,KAAK,cAAc,CAAC,CAAC;QACjE,CAAC;QACD,IACE,CAAC,OAAO,KAAK,aAAa,IAAI,OAAO,KAAK,WAAW,CAAC;YACtD,CAAC,KAAK,CAAC,cAAc,EACrB,CAAC;YACD,MAAM,CAAC,IAAI,CACT,GAAG,KAAK,iCAAiC,KAAK,SAAS,OAAO,EAAE,CACjE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,oEAAoE;IACpE,2EAA2E;IAC3E,MAAM,QAAQ,GAAG,KAAK,CAAC,QAA8B,CAAC;IACtD,IAAI,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;QACxD,MAAM,CAAC,IAAI,CACT,GAAG,KAAK,eAAe,QAAQ,yFAAyF,CACzH,CAAC;IACJ,CAAC;IACD,sEAAsE;IACtE,qEAAqE;IACrE,MAAM,YAAY,GAChB,OAAO,KAAK,QAAQ;QACpB,OAAO,KAAK,aAAa;QACzB,OAAO,KAAK,WAAW;QACvB,CAAC,OAAO,KAAK,WAAW,IAAI,QAAQ,IAAI,IAAI,CAAC,CAAC;IAChD,IAAI,YAAY,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,CAAC,IAAI,CACT,GAAG,KAAK,oEAAoE,CAC7E,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,KAAa,EACb,GAA0E,EAC1E,QAAiB,EACjB,GAAsB,EACtB,MAAgB;IAEhB,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,sBAAsB,CAC7B,SAAyC,EACzC,IAAgB,EAChB,GAAsB;IAEtB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,aAAa,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAE7D,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAK7B,CAAC;QACd,YAAY,CAAC,mBAAmB,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QACnE,IAAI,MAAM,EAAE,UAAU,EAAE,CAAC;YACvB,YAAY,CACV,yBAAyB,EACzB,MAAM,CAAC,UAAU,EACjB,KAAK,EACL,GAAG,EACH,MAAM,CACP,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;YACnB,YAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,kEAAkE;QAClE,qFAAqF;QACrF,gDAAgD;QAChD,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK,CAMjB,CAAC;QACd,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,sEAAsE;YACtE,+DAA+D;YAC/D,MAAM,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;QACxE,CAAC;aAAM,IACL,OAAQ,MAAiC,CAAC,QAAQ,KAAK,QAAQ,EAC/D,CAAC;YACD,mCAAmC;YACnC,gBAAgB,CACd,KAAK,EACL,MAAmE,EACnE,IAAI,EACJ,GAAG,EACH,MAAM,CACP,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,oEAAoE;YACpE,MAAM,GAAG,GAAG,MAGX,CAAC;YACF,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACN,gBAAgB,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YAC5D,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChD,IAAI,IAAI,KAAK,MAAM;oBAAE,SAAS;gBAC9B,gBAAgB,CAAC,OAAO,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAuB,CAAC;QAC/D,IAAI,OAAO,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5D,MAAM,CAAC,IAAI,CACT,cAAc,OAAO,0CAA0C,CAChE,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,KAAK,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YACnD,MAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;YACxD,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QACrB,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,CAA4B,EAAE,MAAM,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAElC,CAAC;IACd,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACxD,aAAa,CAAC,gBAAgB,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,qBAAqB,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,cAAc,CACrB,IAAgB,EAChB,UAA8B,EAC9B,IAAuB,EACvB,GAAsB;IAEtB,MAAM,GAAG,GAAI,IAAgC,CAAC,SAAS,CAAC;IACxD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC9D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CACb,4FAA4F,CAC7F,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IACvD,MAAM,GAAG,GAAgC,EAAE,CAAC;IAC5C,KAAK,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;QACxB,IACE,CAAC,KAAK;YACN,OAAO,KAAK,KAAK,QAAQ;YACzB,OAAQ,KAA4B,CAAC,IAAI,KAAK,QAAQ;YACtD,OAAQ,KAA8B,CAAC,MAAM,KAAK,QAAQ,EAC1D,CAAC;YACD,MAAM,IAAI,KAAK,CACb,0DAA0D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CACnF,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAI,KAA0B,CAAC,IAAI,CAAC;QAC9C,MAAM,MAAM,GAAI,KAA4B,CAAC,MAAM,CAAC;QACpD,MAAM,WAAW,GAAI,KAAmC,CAAC,WAAW,CAAC;QACrE,IAAI,WAAW,KAAK,SAAS,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YACjE,MAAM,IAAI,KAAK,CACb,8DAA8D,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAC7F,CAAC;QACJ,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAC3C,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAElC,MAAM,OAAO,GAAG,cAAc,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QACnD,IAAK,OAAmC,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjE,MAAM,IAAI,KAAK,CACb,aAAa,IAAI,gFAAgF,CAClG,CAAC;QACJ,CAAC;QAED,wEAAwE;QACxE,sEAAsE;QACtE,yDAAyD;QACzD,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAK,OAAmC,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjE,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChC,CAAC;QACD,IAAK,OAAuC,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACzE,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACpC,CAAC;QACD,IACG,OAAwC,CAAC,cAAc,KAAK,SAAS,EACtE,CAAC;YACD,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACrC,CAAC;QACD,MAAM,WAAW,GAAI,OAAkC,CAAC,QAAQ,CAAC;QACjE,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,WAAsC,CAAC;YACjD,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS;gBAAE,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACpE,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS;gBAC/B,WAAW,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAC7C,IAAI,CAAC,CAAC,eAAe,KAAK,SAAS;gBACjC,WAAW,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YAC/C,IACE,CAAC,CAAC,GAAG,KAAK,SAAS;gBACnB,CAAC,CAAC,GAAG,KAAK,IAAI;gBACd,OAAO,CAAC,CAAC,GAAG,KAAK,QAAQ;gBACzB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EACrB,CAAC;gBACD,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,aAAa,IAAI,0BAA0B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACrE,CAAC;QACJ,CAAC;QAED,yEAAyE;QACzE,kEAAkE;QAClE,MAAM,WAAW,GAAG,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;YAC/D,UAAU,EAAE,aAAa;SAC1B,CAAC,CAAC;QACH,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAWD,MAAM,UAAU,wBAAwB,CACtC,OAA0B,EAAE,EAC5B,OAAmB,EAAE,EACrB,MAAyB,OAAO,CAAC,GAAG,EACpC,UAA2C,EAAE;IAE7C,MAAM,UAAU,GAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAY,IAAI,EAAE,CAAC;IAChE,MAAM,cAAc,GAAG,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAEvD,CAAC;IACd,MAAM,MAAM,GAAG,UAAU,IAAI,cAAc,IAAI,EAAE,CAAC;IAElD,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAuB,CAAC;IAC7D,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAuB,CAAC;IACrE,MAAM,UAAU,GACb,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAY;QACpC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAGlD,CAAC;IAET,MAAM,YAAY,GAAI,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAY,IAAI,IAAI,CAAC;IACxE,MAAM,gBAAgB,GACnB,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,YAAY,CAAY,IAAI,IAAI,CAAC;IACzD,MAAM,eAAe,GAAG,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,IAAI,IAAI,CAAC;IAClE,MAAM,kBAAkB,GAAG,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,IAAI,IAAI,CAAC;IACxE,MAAM,oBAAoB,GAAG,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,gBAAgB,CAAC,IAAI,IAAI,CAAC;IAE5E,MAAM,QAAQ,GAAmC;QAC/C,IAAI,EAAE,MAAM,CACT,IAAI,CAAC,IAAe,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,IAAI,CAC/D;QACD,IAAI,EAAG,IAAI,CAAC,IAAe,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,SAAS;QAC7D,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC;YACnB,CAAC,CAAC,OAAO,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,QAAQ;gBAChD,CAAC,CAAC;oBACE,QAAQ,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAMxB;oBACb,MAAM;oBACN,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAuB;oBAClD,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAuB;oBACtD,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,aAAa,CAAC,IAAI,GAAG,CAAC;oBAC3D,qBAAqB,EAAE,MAAM,CAC3B,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,uBAAuB,CAAC,IAAI,GAAG,CACjD;iBACF;gBACH,CAAC,CAAE,GAAG,CAAC,IAAI,EAAE,KAAK,CAA0C;YAC9D,CAAC,CAAC,SAAS;QACb,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC;YACnB,CAAC,CAAC;gBACE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAKhB;gBACb,QAAQ,EAAG,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAY,IAAI,SAAS;gBAC/D,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAuB;gBAClD,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAuB;gBACtD,cAAc,EACX,IAAI,CAAC,qBAAqB,CAAY;oBACvC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,gBAAgB,CAAC;oBAClC,SAAS;gBACX,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,gBAAgB,CAAC,IAAI,IAAI,CAAC;gBAClE,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,CAAC,IAAI,GAAG,CAAC;gBAC7D,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,IAAI,GAAG,CAAC;gBAC/D,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,KAAK,SAAS;oBACjD,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,EAAE;oBAC9D,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,SAAS;oBAC5C,CAAC,CAAC;wBACE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAEtB;qBACxB;oBACH,CAAC,CAAC,EAAE,CAAC;aACR;YACH,CAAC,CAAC,SAAS;QACb,GAAG,EAAE,OAAO;YACV,CAAC,CAAC;gBACE,IAAI,EAAE,OAAO;gBACb,GAAG,EAAE,MAAM,IAAI,SAAS;gBACxB,OAAO,EAAE,UAAU,IAAI,SAAS;gBAChC,IAAI,EACD,IAAI,CAAC,UAAU,CAAY,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC;oBACtD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;oBACjE,CAAC,CAAC,SAAS;gBACf,OAAO,EACJ,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAA4B;oBACvD,SAAS;aACZ;YACH,CAAC,CAAC,SAAS;QACb,KAAK,EAAE;YACL,2BAA2B,EAAE,CAAC,GAAG,CAC/B,IAAI,EACJ,OAAO,EACP,6BAA6B,CAC9B,IAAI,YAAY,CAAsC;YACvD,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,CAAC;YAChE,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,CAAC;YAC9D,oBAAoB,EAAE,MAAM,CAC1B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,sBAAsB,CAAC,IAAI,MAAM,CACrD;YACD,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;YACxD,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,qBAAqB,CAAC,KAAK,SAAS;gBACzD,CAAC,CAAC;oBACE,mBAAmB,EAAE,MAAM,CACzB,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAC1C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,wBAAwB,CAAC,KAAK,SAAS;gBAC5D,CAAC,CAAC;oBACE,sBAAsB,EAAE,OAAO,CAC7B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,wBAAwB,CAAC,CAC7C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,sBAAsB,CAAC,KAAK,SAAS;gBAC1D,CAAC,CAAC;oBACE,oBAAoB,EAAE,MAAM,CAC1B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAC3C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,0BAA0B,CAAC,KAAK,SAAS;gBAC9D,CAAC,CAAC;oBACE,wBAAwB,EAAE,MAAM,CAC9B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,0BAA0B,CAAC,CAC/C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,aAAa,EAAE,OAAO,CACpB,IAAI,CAAC,sBAAsB,CAAC;gBAC1B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC;gBACnC,KAAK,CACR;YACD,yBAAyB,EAAE,MAAM,CAC/B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,2BAA2B,CAAC,IAAI,EAAE,CACtD;YACD,qBAAqB,EAAE,OAAO,CAC5B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,uBAAuB,CAAC,IAAI,KAAK,CACrD;YACD,oBAAoB,EAAE,MAAM,CAC1B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,sBAAsB,CAAC,IAAI,MAAM,CACrD;YACD,kBAAkB,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC;YACzE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,uBAAuB,CAAC,KAAK,SAAS;gBAC3D,CAAC,CAAC;oBACE,qBAAqB,EAAE,OAAO,CAC5B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,uBAAuB,CAAC,CAC5C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,0BAA0B,CAAC,KAAK,SAAS;gBAC9D,CAAC,CAAC;oBACE,wBAAwB,EAAE,OAAO,CAC/B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,0BAA0B,CAAC,CAC/C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,qBAAqB,CAAC,KAAK,SAAS;gBACzD,CAAC,CAAC;oBACE,mBAAmB,EAAE,OAAO,CAC1B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAC1C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,0BAA0B,CAAC,KAAK,SAAS;gBAC9D,CAAC,CAAC;oBACE,wBAAwB,EAAE,OAAO,CAC/B,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,0BAA0B,CAAC,CAC/C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,KAAK,SAAS;gBAChD,CAAC,CAAC;oBACE,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,CAExC;iBACZ;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,iBAAiB,CAAC,KAAK,SAAS;gBACrD,CAAC,CAAC;oBACE,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAG/C;iBACf;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,qBAAqB,CAAC,KAAK,SAAS;gBACzD,CAAC,CAAC;oBACE,mBAAmB,EAAE,MAAM,CACzB,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAC1C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,iBAAiB,CAAC,KAAK,SAAS;gBACrD,CAAC,CAAC;oBACE,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC;iBAC/D;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,SAAS;gBAC3C,CAAC,CAAC;oBACE,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAKhC;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,KAAK,SAAS;gBACnD,CAAC,CAAC;oBACE,aAAa,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,CAGhD;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;SACR;QACD,OAAO,EACL,YAAY;YACZ,gBAAgB;YAChB,eAAe;YACf,kBAAkB;YAClB,oBAAoB;YAClB,CAAC,CAAC;gBACE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,GAAG,CAAC,OAAO,eAAe,KAAK,QAAQ;oBACrC,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE;oBAChC,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,kBAAkB,KAAK,QAAQ;oBACxC,CAAC,CAAC,EAAE,YAAY,EAAE,kBAAkB,EAAE;oBACtC,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,oBAAoB,KAAK,QAAQ;oBAC1C,CAAC,CAAC,EAAE,cAAc,EAAE,oBAAoB,EAAE;oBAC1C,CAAC,CAAC,EAAE,CAAC;aACR;YACH,CAAC,CAAC,SAAS;QACf,IAAI,EAAG,GAAG,CAAC,IAAI,EAAE,MAAM,CAAqB,IAAI,SAAS;QACzD,MAAM,EAAG,IAAI,CAAC,SAAS,CAAY,IAAI,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI;QAClE,SAAS,EACN,IAAI,CAAC,YAAY,CAAY,IAAI,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,SAAS;QACvE,GAAG,CAAC,GAAG,EAAE;YACP,MAAM,eAAe,GAAG,cAAc,CACpC,IAAI,EACJ,OAAO,CAAC,UAAU,EAClB,IAAI,EACJ,GAAG,CACJ,CAAC;YACF,OAAO,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,CAAC,CAAC,EAAE;QACJ,GAAG,CAAC,GAAG,EAAE;YACP,MAAM,eAAe,GAAI,IAA0C;iBAChE,WAAW,CAAC;YACf,OAAO,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,CAAC,CAAC,EAAE;QACJ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,IAAI,CAAC,MAAM;YACb,CAAC,CAAC;gBACE,MAAM,EAAE;oBACN,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,QAAQ,CAG9B;oBAChB,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAyB;oBACzD,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,CAEjC;iBACd;aACF;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IACF,sBAAsB,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAC5C,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/smart-agent/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { KnowledgeEntry } from '@mcp-abap-adt/llm-agent';
|
|
2
|
+
import type { KnowledgeBackend } from '@mcp-abap-adt/llm-agent-libs';
|
|
3
|
+
export declare class JsonlKnowledgeBackend implements KnowledgeBackend {
|
|
4
|
+
private readonly logDir;
|
|
5
|
+
/** Optional semantic index for query(); when absent, query falls back to recency. */
|
|
6
|
+
private readonly semantic?;
|
|
7
|
+
constructor(logDir: string,
|
|
8
|
+
/** Optional semantic index for query(); when absent, query falls back to recency. */
|
|
9
|
+
semantic?: {
|
|
10
|
+
upsert(sid: string, e: KnowledgeEntry): Promise<void>;
|
|
11
|
+
query(sid: string, text: string, k?: number): Promise<readonly KnowledgeEntry[]>;
|
|
12
|
+
} | undefined);
|
|
13
|
+
private file;
|
|
14
|
+
put(sid: string, entry: KnowledgeEntry): Promise<void>;
|
|
15
|
+
semanticQuery(sid: string, text: string, k?: number): Promise<readonly KnowledgeEntry[]>;
|
|
16
|
+
scan(sid: string): Promise<readonly KnowledgeEntry[]>;
|
|
17
|
+
deleteSession(sid: string): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=jsonl-knowledge-backend.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonl-knowledge-backend.d.ts","sourceRoot":"","sources":["../../src/smart-agent/jsonl-knowledge-backend.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE,qBAAa,qBAAsB,YAAW,gBAAgB;IAE1D,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,qFAAqF;IACrF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAFT,MAAM,EAAE,MAAM;IAC/B,qFAAqF;IACpE,QAAQ,CAAC,EAAE;QAC1B,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACtD,KAAK,CACH,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,CAAC,CAAC,EAAE,MAAM,GACT,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC,CAAC;KACvC,YAAA;IAGH,OAAO,CAAC,IAAI;IAIN,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAOtD,aAAa,CACjB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,CAAC,CAAC,EAAE,MAAM,GACT,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC;IAM/B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC;IAarD,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIhD"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { appendFile, mkdir, readFile, rm } from 'node:fs/promises';
|
|
2
|
+
import { dirname, join } from 'node:path';
|
|
3
|
+
export class JsonlKnowledgeBackend {
|
|
4
|
+
logDir;
|
|
5
|
+
semantic;
|
|
6
|
+
constructor(logDir,
|
|
7
|
+
/** Optional semantic index for query(); when absent, query falls back to recency. */
|
|
8
|
+
semantic) {
|
|
9
|
+
this.logDir = logDir;
|
|
10
|
+
this.semantic = semantic;
|
|
11
|
+
}
|
|
12
|
+
file(sid) {
|
|
13
|
+
return join(this.logDir, 'sessions', sid, 'knowledge.jsonl');
|
|
14
|
+
}
|
|
15
|
+
async put(sid, entry) {
|
|
16
|
+
const f = this.file(sid);
|
|
17
|
+
await mkdir(dirname(f), { recursive: true });
|
|
18
|
+
await appendFile(f, `${JSON.stringify(entry)}\n`, 'utf8');
|
|
19
|
+
await this.semantic?.upsert(sid, entry);
|
|
20
|
+
}
|
|
21
|
+
async semanticQuery(sid, text, k) {
|
|
22
|
+
if (this.semantic)
|
|
23
|
+
return this.semantic.query(sid, text, k);
|
|
24
|
+
const all = await this.scan(sid);
|
|
25
|
+
return k ? all.slice(-k) : all;
|
|
26
|
+
}
|
|
27
|
+
async scan(sid) {
|
|
28
|
+
try {
|
|
29
|
+
const raw = await readFile(this.file(sid), 'utf8');
|
|
30
|
+
return raw
|
|
31
|
+
.split('\n')
|
|
32
|
+
.filter(Boolean)
|
|
33
|
+
.map((l) => JSON.parse(l));
|
|
34
|
+
}
|
|
35
|
+
catch (e) {
|
|
36
|
+
if (e.code === 'ENOENT')
|
|
37
|
+
return [];
|
|
38
|
+
throw e;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
async deleteSession(sid) {
|
|
42
|
+
// Remove the whole per-session directory (knowledge.jsonl + any siblings).
|
|
43
|
+
await rm(dirname(this.file(sid)), { recursive: true, force: true });
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=jsonl-knowledge-backend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonl-knowledge-backend.js","sourceRoot":"","sources":["../../src/smart-agent/jsonl-knowledge-backend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAI1C,MAAM,OAAO,qBAAqB;IAEb;IAEA;IAHnB,YACmB,MAAc;IAC/B,qFAAqF;IACpE,QAOhB;QATgB,WAAM,GAAN,MAAM,CAAQ;QAEd,aAAQ,GAAR,QAAQ,CAOxB;IACA,CAAC;IAEI,IAAI,CAAC,GAAW;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,KAAqB;QAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzB,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,UAAU,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,GAAW,EACX,IAAY,EACZ,CAAU;QAEV,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAW;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;YACnD,OAAO,GAAG;iBACP,KAAK,CAAC,IAAI,CAAC;iBACX,MAAM,CAAC,OAAO,CAAC;iBACf,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAmB,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAK,CAA2B,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,EAAE,CAAC;YAC9D,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,GAAW;QAC7B,2EAA2E;QAC3E,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,CAAC;CACF"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
export interface SessionMetaRow {
|
|
2
|
+
sessionId: string;
|
|
3
|
+
userIdentity: string | null;
|
|
4
|
+
title?: string;
|
|
5
|
+
createdAt: string;
|
|
6
|
+
lastUsedAt?: string;
|
|
7
|
+
status: 'idle' | 'in-progress' | 'drained';
|
|
8
|
+
promptCount?: number;
|
|
9
|
+
}
|
|
10
|
+
export interface ISessionMetaStore {
|
|
11
|
+
create(row: SessionMetaRow): Promise<void>;
|
|
12
|
+
get(sessionId: string): Promise<SessionMetaRow | undefined>;
|
|
13
|
+
listForUser(userIdentity: string): Promise<SessionMetaRow[]>;
|
|
14
|
+
touch(sessionId: string, at: string): Promise<void>;
|
|
15
|
+
setStatus(sessionId: string, status: SessionMetaRow['status']): Promise<void>;
|
|
16
|
+
delete(sessionId: string): Promise<void>;
|
|
17
|
+
inProgressSessions(): Promise<SessionMetaRow[]>;
|
|
18
|
+
}
|
|
19
|
+
export declare class InMemorySessionMetaStore implements ISessionMetaStore {
|
|
20
|
+
private readonly rows;
|
|
21
|
+
create(row: SessionMetaRow): Promise<void>;
|
|
22
|
+
get(id: string): Promise<{
|
|
23
|
+
sessionId: string;
|
|
24
|
+
userIdentity: string | null;
|
|
25
|
+
title?: string;
|
|
26
|
+
createdAt: string;
|
|
27
|
+
lastUsedAt?: string;
|
|
28
|
+
status: "idle" | "in-progress" | "drained";
|
|
29
|
+
promptCount?: number;
|
|
30
|
+
} | undefined>;
|
|
31
|
+
listForUser(u: string): Promise<{
|
|
32
|
+
sessionId: string;
|
|
33
|
+
userIdentity: string | null;
|
|
34
|
+
title?: string;
|
|
35
|
+
createdAt: string;
|
|
36
|
+
lastUsedAt?: string;
|
|
37
|
+
status: "idle" | "in-progress" | "drained";
|
|
38
|
+
promptCount?: number;
|
|
39
|
+
}[]>;
|
|
40
|
+
touch(id: string, at: string): Promise<void>;
|
|
41
|
+
setStatus(id: string, status: SessionMetaRow['status']): Promise<void>;
|
|
42
|
+
delete(id: string): Promise<void>;
|
|
43
|
+
inProgressSessions(): Promise<{
|
|
44
|
+
sessionId: string;
|
|
45
|
+
userIdentity: string | null;
|
|
46
|
+
title?: string;
|
|
47
|
+
createdAt: string;
|
|
48
|
+
lastUsedAt?: string;
|
|
49
|
+
status: "idle" | "in-progress" | "drained";
|
|
50
|
+
promptCount?: number;
|
|
51
|
+
}[]>;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=session-meta-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-meta-store.d.ts","sourceRoot":"","sources":["../../src/smart-agent/session-meta-store.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;IAC5D,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAC7D,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,kBAAkB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;CACjD;AAED,qBAAa,wBAAyB,YAAW,iBAAiB;IAChE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAqC;IACpD,MAAM,CAAC,GAAG,EAAE,cAAc;IAG1B,GAAG,CAAC,EAAE,EAAE,MAAM;mBAxBT,MAAM;sBACH,MAAM,GAAG,IAAI;gBACnB,MAAM;mBACH,MAAM;qBACJ,MAAM;gBACX,MAAM,GAAG,aAAa,GAAG,SAAS;sBAC5B,MAAM;;IAsBd,WAAW,CAAC,CAAC,EAAE,MAAM;mBA5BhB,MAAM;sBACH,MAAM,GAAG,IAAI;gBACnB,MAAM;mBACH,MAAM;qBACJ,MAAM;gBACX,MAAM,GAAG,aAAa,GAAG,SAAS;sBAC5B,MAAM;;IA2Bd,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAI5B,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC;IAItD,MAAM,CAAC,EAAE,EAAE,MAAM;IAGjB,kBAAkB;mBA5Cb,MAAM;sBACH,MAAM,GAAG,IAAI;gBACnB,MAAM;mBACH,MAAM;qBACJ,MAAM;gBACX,MAAM,GAAG,aAAa,GAAG,SAAS;sBAC5B,MAAM;;CA2CrB"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export class InMemorySessionMetaStore {
|
|
2
|
+
rows = new Map();
|
|
3
|
+
async create(row) {
|
|
4
|
+
this.rows.set(row.sessionId, { ...row });
|
|
5
|
+
}
|
|
6
|
+
async get(id) {
|
|
7
|
+
const r = this.rows.get(id);
|
|
8
|
+
return r ? { ...r } : undefined;
|
|
9
|
+
}
|
|
10
|
+
async listForUser(u) {
|
|
11
|
+
return [...this.rows.values()]
|
|
12
|
+
.filter((r) => r.userIdentity === u)
|
|
13
|
+
.map((r) => ({ ...r }));
|
|
14
|
+
}
|
|
15
|
+
async touch(id, at) {
|
|
16
|
+
const r = this.rows.get(id);
|
|
17
|
+
if (r)
|
|
18
|
+
r.lastUsedAt = at;
|
|
19
|
+
}
|
|
20
|
+
async setStatus(id, status) {
|
|
21
|
+
const r = this.rows.get(id);
|
|
22
|
+
if (r)
|
|
23
|
+
r.status = status;
|
|
24
|
+
}
|
|
25
|
+
async delete(id) {
|
|
26
|
+
this.rows.delete(id);
|
|
27
|
+
}
|
|
28
|
+
async inProgressSessions() {
|
|
29
|
+
return [...this.rows.values()]
|
|
30
|
+
.filter((r) => r.status === 'in-progress')
|
|
31
|
+
.map((r) => ({ ...r }));
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
// Note: A PgSessionMetaStore (using the existing pg client from pg-vector-rag) ships behind
|
|
35
|
+
// config in a later commit. The in-memory store is the default for v1.
|
|
36
|
+
//# sourceMappingURL=session-meta-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-meta-store.js","sourceRoot":"","sources":["../../src/smart-agent/session-meta-store.ts"],"names":[],"mappings":"AAoBA,MAAM,OAAO,wBAAwB;IAClB,IAAI,GAAG,IAAI,GAAG,EAA0B,CAAC;IAC1D,KAAK,CAAC,MAAM,CAAC,GAAmB;QAC9B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,EAAU;QAClB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5B,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAClC,CAAC;IACD,KAAK,CAAC,WAAW,CAAC,CAAS;QACzB,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;aAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC;aACnC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,CAAC;IACD,KAAK,CAAC,KAAK,CAAC,EAAU,EAAE,EAAU;QAChC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,CAAC;YAAE,CAAC,CAAC,UAAU,GAAG,EAAE,CAAC;IAC3B,CAAC;IACD,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,MAAgC;QAC1D,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,CAAC;YAAE,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;IAC3B,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,CAAC;IACD,KAAK,CAAC,kBAAkB;QACtB,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;aAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC;aACzC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,CAAC;CACF;AAED,4FAA4F;AAC5F,uEAAuE"}
|