pm-orchestrator-runner 1.0.3 → 1.0.5
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/config/global-config.d.ts +69 -0
- package/dist/config/global-config.d.ts.map +1 -0
- package/dist/config/global-config.js +168 -0
- package/dist/config/global-config.js.map +1 -0
- package/dist/repl/commands/keys.d.ts +17 -0
- package/dist/repl/commands/keys.d.ts.map +1 -1
- package/dist/repl/commands/keys.js +68 -5
- package/dist/repl/commands/keys.js.map +1 -1
- package/dist/repl/repl-interface.d.ts +25 -1
- package/dist/repl/repl-interface.d.ts.map +1 -1
- package/dist/repl/repl-interface.js +215 -11
- package/dist/repl/repl-interface.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Global Configuration Manager
|
|
3
|
+
*
|
|
4
|
+
* Manages user-level global settings stored in ~/.pm-orchestrator-runner/config.json
|
|
5
|
+
* This is NOT environment variables - it's a persistent config file.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Global config structure
|
|
9
|
+
*/
|
|
10
|
+
export interface GlobalConfig {
|
|
11
|
+
/** API keys for different providers */
|
|
12
|
+
apiKeys?: {
|
|
13
|
+
openai?: string;
|
|
14
|
+
anthropic?: string;
|
|
15
|
+
};
|
|
16
|
+
/** Default provider (openai, anthropic) */
|
|
17
|
+
defaultProvider?: string;
|
|
18
|
+
/** Default model for each provider */
|
|
19
|
+
defaultModels?: {
|
|
20
|
+
openai?: string;
|
|
21
|
+
anthropic?: string;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Load global config
|
|
26
|
+
* @returns Global config object (empty object if file doesn't exist)
|
|
27
|
+
*/
|
|
28
|
+
export declare function loadGlobalConfig(): GlobalConfig;
|
|
29
|
+
/**
|
|
30
|
+
* Save global config
|
|
31
|
+
* @param config - Config object to save
|
|
32
|
+
*/
|
|
33
|
+
export declare function saveGlobalConfig(config: GlobalConfig): void;
|
|
34
|
+
/**
|
|
35
|
+
* Get API key for a provider
|
|
36
|
+
* @param provider - Provider name (openai, anthropic)
|
|
37
|
+
* @returns API key or undefined
|
|
38
|
+
*/
|
|
39
|
+
export declare function getApiKey(provider: string): string | undefined;
|
|
40
|
+
/**
|
|
41
|
+
* Set API key for a provider
|
|
42
|
+
* @param provider - Provider name (openai, anthropic)
|
|
43
|
+
* @param key - API key to set
|
|
44
|
+
*/
|
|
45
|
+
export declare function setApiKey(provider: string, key: string): void;
|
|
46
|
+
/**
|
|
47
|
+
* Check if any API key is configured
|
|
48
|
+
* @returns true if at least one API key is set
|
|
49
|
+
*/
|
|
50
|
+
export declare function hasAnyApiKey(): boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Get default provider
|
|
53
|
+
* @returns Default provider name or 'openai'
|
|
54
|
+
*/
|
|
55
|
+
export declare function getDefaultProvider(): string;
|
|
56
|
+
/**
|
|
57
|
+
* Set default provider
|
|
58
|
+
* @param provider - Provider name
|
|
59
|
+
*/
|
|
60
|
+
export declare function setDefaultProvider(provider: string): void;
|
|
61
|
+
/**
|
|
62
|
+
* Get config file path (for display purposes)
|
|
63
|
+
*/
|
|
64
|
+
export declare function getConfigFilePath(): string;
|
|
65
|
+
/**
|
|
66
|
+
* Get config directory path
|
|
67
|
+
*/
|
|
68
|
+
export declare function getConfigDirPath(): string;
|
|
69
|
+
//# sourceMappingURL=global-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-config.d.ts","sourceRoot":"","sources":["../../src/config/global-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,uCAAuC;IACvC,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,2CAA2C;IAC3C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sCAAsC;IACtC,aAAa,CAAC,EAAE;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAqBD;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,YAAY,CAU/C;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAO3D;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQ9D;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAW7D;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAGtC;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAG3C;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAIzD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Global Configuration Manager
|
|
4
|
+
*
|
|
5
|
+
* Manages user-level global settings stored in ~/.pm-orchestrator-runner/config.json
|
|
6
|
+
* This is NOT environment variables - it's a persistent config file.
|
|
7
|
+
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.loadGlobalConfig = loadGlobalConfig;
|
|
43
|
+
exports.saveGlobalConfig = saveGlobalConfig;
|
|
44
|
+
exports.getApiKey = getApiKey;
|
|
45
|
+
exports.setApiKey = setApiKey;
|
|
46
|
+
exports.hasAnyApiKey = hasAnyApiKey;
|
|
47
|
+
exports.getDefaultProvider = getDefaultProvider;
|
|
48
|
+
exports.setDefaultProvider = setDefaultProvider;
|
|
49
|
+
exports.getConfigFilePath = getConfigFilePath;
|
|
50
|
+
exports.getConfigDirPath = getConfigDirPath;
|
|
51
|
+
const fs = __importStar(require("fs"));
|
|
52
|
+
const path = __importStar(require("path"));
|
|
53
|
+
const os = __importStar(require("os"));
|
|
54
|
+
/**
|
|
55
|
+
* Global config directory path
|
|
56
|
+
*/
|
|
57
|
+
const CONFIG_DIR = path.join(os.homedir(), '.pm-orchestrator-runner');
|
|
58
|
+
/**
|
|
59
|
+
* Global config file path
|
|
60
|
+
*/
|
|
61
|
+
const CONFIG_FILE = path.join(CONFIG_DIR, 'config.json');
|
|
62
|
+
/**
|
|
63
|
+
* Ensure config directory exists
|
|
64
|
+
*/
|
|
65
|
+
function ensureConfigDir() {
|
|
66
|
+
if (!fs.existsSync(CONFIG_DIR)) {
|
|
67
|
+
fs.mkdirSync(CONFIG_DIR, { recursive: true, mode: 0o700 });
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Load global config
|
|
72
|
+
* @returns Global config object (empty object if file doesn't exist)
|
|
73
|
+
*/
|
|
74
|
+
function loadGlobalConfig() {
|
|
75
|
+
try {
|
|
76
|
+
if (fs.existsSync(CONFIG_FILE)) {
|
|
77
|
+
const content = fs.readFileSync(CONFIG_FILE, 'utf-8');
|
|
78
|
+
return JSON.parse(content);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
catch (err) {
|
|
82
|
+
console.error('Warning: Failed to load global config:', err.message);
|
|
83
|
+
}
|
|
84
|
+
return {};
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Save global config
|
|
88
|
+
* @param config - Config object to save
|
|
89
|
+
*/
|
|
90
|
+
function saveGlobalConfig(config) {
|
|
91
|
+
ensureConfigDir();
|
|
92
|
+
// Write with restricted permissions (owner read/write only)
|
|
93
|
+
fs.writeFileSync(CONFIG_FILE, JSON.stringify(config, null, 2), {
|
|
94
|
+
encoding: 'utf-8',
|
|
95
|
+
mode: 0o600,
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Get API key for a provider
|
|
100
|
+
* @param provider - Provider name (openai, anthropic)
|
|
101
|
+
* @returns API key or undefined
|
|
102
|
+
*/
|
|
103
|
+
function getApiKey(provider) {
|
|
104
|
+
const config = loadGlobalConfig();
|
|
105
|
+
if (provider === 'openai') {
|
|
106
|
+
return config.apiKeys?.openai;
|
|
107
|
+
}
|
|
108
|
+
else if (provider === 'anthropic') {
|
|
109
|
+
return config.apiKeys?.anthropic;
|
|
110
|
+
}
|
|
111
|
+
return undefined;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Set API key for a provider
|
|
115
|
+
* @param provider - Provider name (openai, anthropic)
|
|
116
|
+
* @param key - API key to set
|
|
117
|
+
*/
|
|
118
|
+
function setApiKey(provider, key) {
|
|
119
|
+
const config = loadGlobalConfig();
|
|
120
|
+
if (!config.apiKeys) {
|
|
121
|
+
config.apiKeys = {};
|
|
122
|
+
}
|
|
123
|
+
if (provider === 'openai') {
|
|
124
|
+
config.apiKeys.openai = key;
|
|
125
|
+
}
|
|
126
|
+
else if (provider === 'anthropic') {
|
|
127
|
+
config.apiKeys.anthropic = key;
|
|
128
|
+
}
|
|
129
|
+
saveGlobalConfig(config);
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Check if any API key is configured
|
|
133
|
+
* @returns true if at least one API key is set
|
|
134
|
+
*/
|
|
135
|
+
function hasAnyApiKey() {
|
|
136
|
+
const config = loadGlobalConfig();
|
|
137
|
+
return !!(config.apiKeys?.openai || config.apiKeys?.anthropic);
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Get default provider
|
|
141
|
+
* @returns Default provider name or 'openai'
|
|
142
|
+
*/
|
|
143
|
+
function getDefaultProvider() {
|
|
144
|
+
const config = loadGlobalConfig();
|
|
145
|
+
return config.defaultProvider || 'openai';
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Set default provider
|
|
149
|
+
* @param provider - Provider name
|
|
150
|
+
*/
|
|
151
|
+
function setDefaultProvider(provider) {
|
|
152
|
+
const config = loadGlobalConfig();
|
|
153
|
+
config.defaultProvider = provider;
|
|
154
|
+
saveGlobalConfig(config);
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Get config file path (for display purposes)
|
|
158
|
+
*/
|
|
159
|
+
function getConfigFilePath() {
|
|
160
|
+
return CONFIG_FILE;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Get config directory path
|
|
164
|
+
*/
|
|
165
|
+
function getConfigDirPath() {
|
|
166
|
+
return CONFIG_DIR;
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=global-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-config.js","sourceRoot":"","sources":["../../src/config/global-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,11 +3,14 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Per spec 10_REPL_UX.md Section 2.3:
|
|
5
5
|
* - /keys: show status of all API keys (SET/NOT SET)
|
|
6
|
+
* - /keys set <provider> <key>: set API key in global config
|
|
6
7
|
* - /keys check: validate API key format
|
|
7
8
|
*
|
|
8
9
|
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
9
10
|
* - API keys must NEVER appear in logs or evidence
|
|
10
11
|
* - Only "SET" or "NOT SET" status is allowed
|
|
12
|
+
*
|
|
13
|
+
* API keys are stored in global config file (~/.pm-orchestrator-runner/config.json)
|
|
11
14
|
*/
|
|
12
15
|
/**
|
|
13
16
|
* Key status result
|
|
@@ -39,9 +42,23 @@ export declare class KeysCommand {
|
|
|
39
42
|
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
40
43
|
* - Only show SET/NOT SET, never the actual key value
|
|
41
44
|
*
|
|
45
|
+
* Checks both:
|
|
46
|
+
* - Global config file (~/.pm-orchestrator-runner/config.json)
|
|
47
|
+
* - Environment variables (legacy support)
|
|
48
|
+
*
|
|
42
49
|
* @returns Keys result
|
|
43
50
|
*/
|
|
44
51
|
getKeyStatus(): Promise<KeysResult>;
|
|
52
|
+
/**
|
|
53
|
+
* Set API key in global config
|
|
54
|
+
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
55
|
+
* - API key value is stored but NEVER displayed
|
|
56
|
+
*
|
|
57
|
+
* @param provider - Provider ID (openai or anthropic)
|
|
58
|
+
* @param key - API key value
|
|
59
|
+
* @returns Keys result
|
|
60
|
+
*/
|
|
61
|
+
setKey(provider: string, key: string): Promise<KeysResult>;
|
|
45
62
|
/**
|
|
46
63
|
* Check if a specific provider's API key is configured
|
|
47
64
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/repl/commands/keys.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/repl/commands/keys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAeH;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,KAAK,GAAG,SAAS,GAAG,cAAc,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB;;;;;;;;;;OAUG;IACG,YAAY,IAAI,OAAO,CAAC,UAAU,CAAC;IA4BzC;;;;;;;;OAQG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAyChE;;;;;OAKG;IACG,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAgC/D;;;;;;;;OAQG;IACH,eAAe,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM;CA+B3C"}
|
|
@@ -4,17 +4,21 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Per spec 10_REPL_UX.md Section 2.3:
|
|
6
6
|
* - /keys: show status of all API keys (SET/NOT SET)
|
|
7
|
+
* - /keys set <provider> <key>: set API key in global config
|
|
7
8
|
* - /keys check: validate API key format
|
|
8
9
|
*
|
|
9
10
|
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
10
11
|
* - API keys must NEVER appear in logs or evidence
|
|
11
12
|
* - Only "SET" or "NOT SET" status is allowed
|
|
13
|
+
*
|
|
14
|
+
* API keys are stored in global config file (~/.pm-orchestrator-runner/config.json)
|
|
12
15
|
*/
|
|
13
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
17
|
exports.KeysCommand = void 0;
|
|
15
18
|
const sensitive_data_masker_1 = require("../../logging/sensitive-data-masker");
|
|
16
19
|
const repl_1 = require("../../models/repl");
|
|
17
20
|
const model_registry_1 = require("../../models/repl/model-registry");
|
|
21
|
+
const global_config_1 = require("../../config/global-config");
|
|
18
22
|
/**
|
|
19
23
|
* Keys Command class
|
|
20
24
|
*/
|
|
@@ -24,18 +28,27 @@ class KeysCommand {
|
|
|
24
28
|
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
25
29
|
* - Only show SET/NOT SET, never the actual key value
|
|
26
30
|
*
|
|
31
|
+
* Checks both:
|
|
32
|
+
* - Global config file (~/.pm-orchestrator-runner/config.json)
|
|
33
|
+
* - Environment variables (legacy support)
|
|
34
|
+
*
|
|
27
35
|
* @returns Keys result
|
|
28
36
|
*/
|
|
29
37
|
async getKeyStatus() {
|
|
30
38
|
const providers = (0, model_registry_1.getAllProviders)();
|
|
31
39
|
const keys = [];
|
|
32
40
|
for (const provider of providers) {
|
|
41
|
+
// Check global config first
|
|
42
|
+
const globalKey = (0, global_config_1.getApiKey)(provider.id);
|
|
43
|
+
// Then check environment variables (legacy)
|
|
33
44
|
const keyCheck = (0, sensitive_data_masker_1.checkApiKeyForProvider)(provider.id);
|
|
45
|
+
// Use global config if set, otherwise fall back to env var
|
|
46
|
+
const isSet = !!globalKey || keyCheck.status === 'SET';
|
|
34
47
|
keys.push({
|
|
35
48
|
provider: provider.displayName,
|
|
36
49
|
envVar: keyCheck.envVar,
|
|
37
50
|
required: keyCheck.required,
|
|
38
|
-
status:
|
|
51
|
+
status: isSet ? 'SET' : 'NOT SET',
|
|
39
52
|
});
|
|
40
53
|
}
|
|
41
54
|
return {
|
|
@@ -44,6 +57,52 @@ class KeysCommand {
|
|
|
44
57
|
keys,
|
|
45
58
|
};
|
|
46
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* Set API key in global config
|
|
62
|
+
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
63
|
+
* - API key value is stored but NEVER displayed
|
|
64
|
+
*
|
|
65
|
+
* @param provider - Provider ID (openai or anthropic)
|
|
66
|
+
* @param key - API key value
|
|
67
|
+
* @returns Keys result
|
|
68
|
+
*/
|
|
69
|
+
async setKey(provider, key) {
|
|
70
|
+
// Validate provider
|
|
71
|
+
const validProviders = ['openai', 'anthropic'];
|
|
72
|
+
if (!validProviders.includes(provider.toLowerCase())) {
|
|
73
|
+
return {
|
|
74
|
+
success: false,
|
|
75
|
+
message: 'Invalid provider',
|
|
76
|
+
error: {
|
|
77
|
+
code: 'E102',
|
|
78
|
+
message: 'Invalid provider: ' + provider + '. Valid providers: openai, anthropic',
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
// Validate key format
|
|
83
|
+
if (!key || key.length < 10) {
|
|
84
|
+
return {
|
|
85
|
+
success: false,
|
|
86
|
+
message: 'Invalid API key',
|
|
87
|
+
error: {
|
|
88
|
+
code: 'E108',
|
|
89
|
+
message: 'API key appears to be invalid (too short)',
|
|
90
|
+
},
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
// Set the key in global config
|
|
94
|
+
(0, global_config_1.setApiKey)(provider.toLowerCase(), key);
|
|
95
|
+
return {
|
|
96
|
+
success: true,
|
|
97
|
+
message: 'API key set successfully for ' + provider,
|
|
98
|
+
keys: [{
|
|
99
|
+
provider: provider,
|
|
100
|
+
envVar: null,
|
|
101
|
+
required: true,
|
|
102
|
+
status: 'SET',
|
|
103
|
+
}],
|
|
104
|
+
};
|
|
105
|
+
}
|
|
47
106
|
/**
|
|
48
107
|
* Check if a specific provider's API key is configured
|
|
49
108
|
*
|
|
@@ -97,14 +156,18 @@ class KeysCommand {
|
|
|
97
156
|
else {
|
|
98
157
|
const statusIcon = key.status === 'SET' ? '[OK]' : '[MISSING]';
|
|
99
158
|
output += ' Status: ' + statusIcon + ' ' + key.status + '\n';
|
|
100
|
-
|
|
159
|
+
if (key.envVar) {
|
|
160
|
+
output += ' Legacy Env Var: ' + key.envVar + '\n';
|
|
161
|
+
}
|
|
101
162
|
}
|
|
102
163
|
output += '\n';
|
|
103
164
|
}
|
|
165
|
+
// Add config file info
|
|
166
|
+
output += 'Config file: ' + (0, global_config_1.getConfigFilePath)() + '\n\n';
|
|
104
167
|
// Add help text
|
|
105
|
-
output += 'To set an API key
|
|
106
|
-
output += '
|
|
107
|
-
output += '
|
|
168
|
+
output += 'To set an API key:\n';
|
|
169
|
+
output += ' /keys set openai <your-api-key>\n';
|
|
170
|
+
output += ' /keys set anthropic <your-api-key>\n';
|
|
108
171
|
output += '\n';
|
|
109
172
|
output += 'Note: API keys are NEVER displayed for security reasons.';
|
|
110
173
|
return output;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/repl/commands/keys.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/repl/commands/keys.ts"],"names":[],"mappings":"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"}
|
|
@@ -126,6 +126,7 @@ export declare class REPLInterface extends EventEmitter {
|
|
|
126
126
|
private initOnlyMode;
|
|
127
127
|
private inputQueue;
|
|
128
128
|
private isProcessingInput;
|
|
129
|
+
private multiLineBuffer;
|
|
129
130
|
private executionMode;
|
|
130
131
|
private exitCode;
|
|
131
132
|
private hasError;
|
|
@@ -182,12 +183,21 @@ export declare class REPLInterface extends EventEmitter {
|
|
|
182
183
|
* Per spec Property 32: temp mode directories may be cleaned up
|
|
183
184
|
*/
|
|
184
185
|
cleanup(): Promise<void>;
|
|
186
|
+
/**
|
|
187
|
+
* Check API key status and show warning if not configured
|
|
188
|
+
* API keys are stored in global config file (~/.pm-orchestrator-runner/config.json)
|
|
189
|
+
*/
|
|
190
|
+
private checkApiKeyStatus;
|
|
185
191
|
/**
|
|
186
192
|
* Start the REPL
|
|
187
193
|
* Per spec 10_REPL_UX.md L45: validate project structure on startup
|
|
188
194
|
*
|
|
189
195
|
* If .claude is missing, enter init-only mode instead of throwing.
|
|
190
196
|
* In init-only mode, only /help, /init, /exit are available.
|
|
197
|
+
*
|
|
198
|
+
* API Key Check:
|
|
199
|
+
* - In api-key mode, check for API keys in global config
|
|
200
|
+
* - Show warning if not configured, with instructions to set up
|
|
191
201
|
*/
|
|
192
202
|
start(): Promise<void>;
|
|
193
203
|
/**
|
|
@@ -197,6 +207,11 @@ export declare class REPLInterface extends EventEmitter {
|
|
|
197
207
|
/**
|
|
198
208
|
* Enqueue input for sequential processing
|
|
199
209
|
* This prevents race conditions when piped input arrives faster than processing
|
|
210
|
+
*
|
|
211
|
+
* Multi-line input support (for voice input like SuperWhisper):
|
|
212
|
+
* - Non-empty lines are accumulated in multiLineBuffer
|
|
213
|
+
* - Empty line triggers submission of accumulated content
|
|
214
|
+
* - This allows long messages with newlines to be sent together
|
|
200
215
|
*/
|
|
201
216
|
private enqueueInput;
|
|
202
217
|
/**
|
|
@@ -223,7 +238,12 @@ export declare class REPLInterface extends EventEmitter {
|
|
|
223
238
|
*/
|
|
224
239
|
private processNaturalLanguage;
|
|
225
240
|
/**
|
|
226
|
-
*
|
|
241
|
+
* Handle clarification needed - prompt user interactively
|
|
242
|
+
* Returns true if clarification was requested (and will be processed separately)
|
|
243
|
+
*/
|
|
244
|
+
private handleClarificationNeeded;
|
|
245
|
+
/**
|
|
246
|
+
* Print welcome message with clear auth status
|
|
227
247
|
*/
|
|
228
248
|
private printWelcome;
|
|
229
249
|
/**
|
|
@@ -256,6 +276,10 @@ export declare class REPLInterface extends EventEmitter {
|
|
|
256
276
|
/**
|
|
257
277
|
* Handle /keys command
|
|
258
278
|
* Per spec 10_REPL_UX.md Section 2.3
|
|
279
|
+
*
|
|
280
|
+
* /keys - Show status of all API keys
|
|
281
|
+
* /keys set <p> <k> - Set API key for provider
|
|
282
|
+
* /keys <provider> - Check specific provider
|
|
259
283
|
*/
|
|
260
284
|
private handleKeys;
|
|
261
285
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repl-interface.d.ts","sourceRoot":"","sources":["../../src/repl/repl-interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,kBAAkB,EAAoB,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"repl-interface.d.ts","sourceRoot":"","sources":["../../src/repl/repl-interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,6 +66,7 @@ const provider_1 = require("./commands/provider");
|
|
|
66
66
|
const models_1 = require("./commands/models");
|
|
67
67
|
const keys_1 = require("./commands/keys");
|
|
68
68
|
const logs_1 = require("./commands/logs");
|
|
69
|
+
const global_config_1 = require("../config/global-config");
|
|
69
70
|
/**
|
|
70
71
|
* Exit codes for non-interactive mode - per spec 10_REPL_UX.md
|
|
71
72
|
* These are deterministic based on session state
|
|
@@ -107,6 +108,8 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
107
108
|
// Sequential input processing (prevents race conditions with piped input)
|
|
108
109
|
inputQueue = [];
|
|
109
110
|
isProcessingInput = false;
|
|
111
|
+
// Multi-line input buffer (for voice input support - submit on empty line)
|
|
112
|
+
multiLineBuffer = [];
|
|
110
113
|
// Non-interactive mode support (per spec 10_REPL_UX.md)
|
|
111
114
|
executionMode;
|
|
112
115
|
exitCode = exports.EXIT_CODES.COMPLETE;
|
|
@@ -172,7 +175,9 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
172
175
|
projectPath: resolvedProjectPath,
|
|
173
176
|
evidenceDir: config.evidenceDir || path.join(resolvedProjectPath, '.claude', 'evidence'),
|
|
174
177
|
prompt: config.prompt || 'pm> ',
|
|
175
|
-
|
|
178
|
+
// Default to 'api-key' mode - wrapper is the main use case
|
|
179
|
+
// 'claude-code' mode is for advanced users who want to use Claude Code CLI directly
|
|
180
|
+
authMode: config.authMode || 'api-key',
|
|
176
181
|
timeout: config.timeout || 120000,
|
|
177
182
|
forceNonInteractive: config.forceNonInteractive,
|
|
178
183
|
projectMode: config.projectMode,
|
|
@@ -303,16 +308,63 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
303
308
|
// The OS will clean it up eventually, and leaving it allows for debugging
|
|
304
309
|
// In fixed mode, the directory persists as expected
|
|
305
310
|
}
|
|
311
|
+
/**
|
|
312
|
+
* Check API key status and show warning if not configured
|
|
313
|
+
* API keys are stored in global config file (~/.pm-orchestrator-runner/config.json)
|
|
314
|
+
*/
|
|
315
|
+
async checkApiKeyStatus() {
|
|
316
|
+
// Check global config for API keys
|
|
317
|
+
const hasKey = (0, global_config_1.hasAnyApiKey)();
|
|
318
|
+
if (!hasKey) {
|
|
319
|
+
// Show prominent warning
|
|
320
|
+
console.log('');
|
|
321
|
+
console.log('============================================================');
|
|
322
|
+
console.log(' WARNING: No API key configured!');
|
|
323
|
+
console.log('============================================================');
|
|
324
|
+
console.log('');
|
|
325
|
+
console.log('This application requires an API key to function.');
|
|
326
|
+
console.log('');
|
|
327
|
+
console.log('To set up your API key, use one of these commands:');
|
|
328
|
+
console.log('');
|
|
329
|
+
console.log(' /keys set openai <your-openai-api-key>');
|
|
330
|
+
console.log(' /keys set anthropic <your-anthropic-api-key>');
|
|
331
|
+
console.log('');
|
|
332
|
+
console.log('API keys are stored securely in:');
|
|
333
|
+
console.log(' ' + (0, global_config_1.getConfigFilePath)());
|
|
334
|
+
console.log('');
|
|
335
|
+
console.log('You can also check current key status with: /keys');
|
|
336
|
+
console.log('============================================================');
|
|
337
|
+
console.log('');
|
|
338
|
+
}
|
|
339
|
+
else {
|
|
340
|
+
// Check which keys are set and show status
|
|
341
|
+
const openaiKey = (0, global_config_1.getApiKey)('openai');
|
|
342
|
+
const anthropicKey = (0, global_config_1.getApiKey)('anthropic');
|
|
343
|
+
console.log('');
|
|
344
|
+
console.log('API Key Status:');
|
|
345
|
+
console.log(' OpenAI: ' + (openaiKey ? 'Configured' : 'Not set'));
|
|
346
|
+
console.log(' Anthropic: ' + (anthropicKey ? 'Configured' : 'Not set'));
|
|
347
|
+
console.log('');
|
|
348
|
+
}
|
|
349
|
+
}
|
|
306
350
|
/**
|
|
307
351
|
* Start the REPL
|
|
308
352
|
* Per spec 10_REPL_UX.md L45: validate project structure on startup
|
|
309
353
|
*
|
|
310
354
|
* If .claude is missing, enter init-only mode instead of throwing.
|
|
311
355
|
* In init-only mode, only /help, /init, /exit are available.
|
|
356
|
+
*
|
|
357
|
+
* API Key Check:
|
|
358
|
+
* - In api-key mode, check for API keys in global config
|
|
359
|
+
* - Show warning if not configured, with instructions to set up
|
|
312
360
|
*/
|
|
313
361
|
async start() {
|
|
314
362
|
// Initialize project root
|
|
315
363
|
await this.initialize();
|
|
364
|
+
// Check API keys for api-key mode
|
|
365
|
+
if (this.config.authMode === 'api-key') {
|
|
366
|
+
await this.checkApiKeyStatus();
|
|
367
|
+
}
|
|
316
368
|
// Validate project structure per spec 10_REPL_UX.md L45
|
|
317
369
|
const validation = await this.validateProjectStructure();
|
|
318
370
|
if (!validation.valid) {
|
|
@@ -390,19 +442,60 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
390
442
|
/**
|
|
391
443
|
* Enqueue input for sequential processing
|
|
392
444
|
* This prevents race conditions when piped input arrives faster than processing
|
|
445
|
+
*
|
|
446
|
+
* Multi-line input support (for voice input like SuperWhisper):
|
|
447
|
+
* - Non-empty lines are accumulated in multiLineBuffer
|
|
448
|
+
* - Empty line triggers submission of accumulated content
|
|
449
|
+
* - This allows long messages with newlines to be sent together
|
|
393
450
|
*/
|
|
394
451
|
enqueueInput(line) {
|
|
395
452
|
const trimmed = line.trim();
|
|
396
453
|
if (!trimmed) {
|
|
397
|
-
// Empty line -
|
|
398
|
-
if (
|
|
399
|
-
|
|
454
|
+
// Empty line - submit accumulated multi-line buffer
|
|
455
|
+
if (this.multiLineBuffer.length > 0) {
|
|
456
|
+
// Join accumulated lines and submit as single input
|
|
457
|
+
const fullInput = this.multiLineBuffer.join('\n');
|
|
458
|
+
this.multiLineBuffer = [];
|
|
459
|
+
this.inputQueue.push(fullInput);
|
|
460
|
+
// Start processing if not already processing
|
|
461
|
+
this.processQueue();
|
|
462
|
+
}
|
|
463
|
+
else {
|
|
464
|
+
// No buffered content - just show prompt if not processing
|
|
465
|
+
if (!this.isProcessingInput && this.running) {
|
|
466
|
+
this.rl?.prompt();
|
|
467
|
+
}
|
|
400
468
|
}
|
|
401
469
|
return;
|
|
402
470
|
}
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
471
|
+
// Slash commands are processed immediately (no multi-line buffering)
|
|
472
|
+
if (trimmed.startsWith('/')) {
|
|
473
|
+
// Flush any pending multi-line buffer first
|
|
474
|
+
if (this.multiLineBuffer.length > 0) {
|
|
475
|
+
const fullInput = this.multiLineBuffer.join('\n');
|
|
476
|
+
this.multiLineBuffer = [];
|
|
477
|
+
this.inputQueue.push(fullInput);
|
|
478
|
+
}
|
|
479
|
+
// Process slash command immediately
|
|
480
|
+
this.inputQueue.push(trimmed);
|
|
481
|
+
this.processQueue();
|
|
482
|
+
return;
|
|
483
|
+
}
|
|
484
|
+
// Non-empty line without slash - accumulate in multi-line buffer
|
|
485
|
+
this.multiLineBuffer.push(trimmed);
|
|
486
|
+
// In non-interactive mode, no empty line expected - process immediately
|
|
487
|
+
if (this.executionMode === 'non_interactive') {
|
|
488
|
+
const fullInput = this.multiLineBuffer.join('\n');
|
|
489
|
+
this.multiLineBuffer = [];
|
|
490
|
+
this.inputQueue.push(fullInput);
|
|
491
|
+
this.processQueue();
|
|
492
|
+
return;
|
|
493
|
+
}
|
|
494
|
+
// In interactive mode, show continuation indicator
|
|
495
|
+
if (this.running && !this.isProcessingInput) {
|
|
496
|
+
// Show continuation prompt to indicate multi-line mode
|
|
497
|
+
process.stdout.write('... ');
|
|
498
|
+
}
|
|
406
499
|
}
|
|
407
500
|
/**
|
|
408
501
|
* Process queued inputs sequentially
|
|
@@ -569,6 +662,16 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
569
662
|
selectedModel,
|
|
570
663
|
});
|
|
571
664
|
console.log(`[DEBUG processNaturalLanguage] runner.execute returned, status=${result.overall_status}`);
|
|
665
|
+
// Handle INCOMPLETE with clarification interactively
|
|
666
|
+
if (result.overall_status === enums_1.OverallStatus.INCOMPLETE &&
|
|
667
|
+
result.incomplete_task_reasons &&
|
|
668
|
+
result.incomplete_task_reasons.length > 0) {
|
|
669
|
+
const clarificationNeeded = await this.handleClarificationNeeded(input, result.incomplete_task_reasons);
|
|
670
|
+
if (clarificationNeeded) {
|
|
671
|
+
// User provided clarification, will be processed in next input
|
|
672
|
+
return;
|
|
673
|
+
}
|
|
674
|
+
}
|
|
572
675
|
this.printExecutionResult(result);
|
|
573
676
|
}
|
|
574
677
|
catch (err) {
|
|
@@ -578,19 +681,86 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
578
681
|
console.log(`[DEBUG processNaturalLanguage] done`);
|
|
579
682
|
}
|
|
580
683
|
/**
|
|
581
|
-
*
|
|
684
|
+
* Handle clarification needed - prompt user interactively
|
|
685
|
+
* Returns true if clarification was requested (and will be processed separately)
|
|
686
|
+
*/
|
|
687
|
+
async handleClarificationNeeded(originalInput, reasons) {
|
|
688
|
+
// Parse the clarification reason
|
|
689
|
+
for (const item of reasons) {
|
|
690
|
+
const reason = item.reason;
|
|
691
|
+
// Handle target_file_ambiguous - ask where to save
|
|
692
|
+
if (reason.includes('target_file_ambiguous')) {
|
|
693
|
+
this.print('');
|
|
694
|
+
this.print('--- Clarification Needed ---');
|
|
695
|
+
this.print('');
|
|
696
|
+
this.print('Task: ' + originalInput);
|
|
697
|
+
this.print('');
|
|
698
|
+
this.print('Question: Where should the file be saved?');
|
|
699
|
+
this.print('');
|
|
700
|
+
this.print('Suggestions:');
|
|
701
|
+
this.print(' 1. docs/spec.md');
|
|
702
|
+
this.print(' 2. README.md');
|
|
703
|
+
this.print(' 3. Enter a custom path');
|
|
704
|
+
this.print('');
|
|
705
|
+
this.print('Please specify the file path in your next input.');
|
|
706
|
+
this.print('Example: "Save to docs/clipboard-tool-spec.md"');
|
|
707
|
+
this.print('');
|
|
708
|
+
this.print('Or rephrase your request with the file path included:');
|
|
709
|
+
this.print('Example: "Create docs/clipboard-tool-spec.md with the specification for a clipboard tool"');
|
|
710
|
+
this.print('----------------------------');
|
|
711
|
+
this.print('');
|
|
712
|
+
return true;
|
|
713
|
+
}
|
|
714
|
+
// Handle other clarification types
|
|
715
|
+
if (reason.includes('clarification_required')) {
|
|
716
|
+
this.print('');
|
|
717
|
+
this.print('--- Clarification Needed ---');
|
|
718
|
+
this.print('');
|
|
719
|
+
this.print('Task: ' + originalInput);
|
|
720
|
+
this.print('Issue: ' + reason);
|
|
721
|
+
this.print('');
|
|
722
|
+
this.print('Please provide more details in your next input.');
|
|
723
|
+
this.print('----------------------------');
|
|
724
|
+
this.print('');
|
|
725
|
+
return true;
|
|
726
|
+
}
|
|
727
|
+
}
|
|
728
|
+
return false;
|
|
729
|
+
}
|
|
730
|
+
/**
|
|
731
|
+
* Print welcome message with clear auth status
|
|
582
732
|
*/
|
|
583
733
|
printWelcome() {
|
|
584
734
|
this.print('');
|
|
585
735
|
this.print('PM Orchestrator Runner - Interactive Mode');
|
|
586
736
|
this.print('=========================================');
|
|
587
737
|
this.print('Project: ' + this.session.projectPath);
|
|
588
|
-
this.print('Auth Mode: ' + this.config.authMode + ' (L1 uses Claude Code CLI)');
|
|
589
738
|
this.print('Project Mode: ' + this.projectMode);
|
|
590
739
|
if (this.projectMode === 'fixed') {
|
|
591
740
|
this.print('Verification Root: ' + this.verificationRoot);
|
|
592
741
|
}
|
|
593
742
|
this.print('');
|
|
743
|
+
// Clear auth status display
|
|
744
|
+
this.print('Authentication Status:');
|
|
745
|
+
if (this.config.authMode === 'claude-code') {
|
|
746
|
+
this.print(' Provider: Claude Code CLI');
|
|
747
|
+
this.print(' API Key: Not required (uses your Claude subscription)');
|
|
748
|
+
this.print(' Status: Ready');
|
|
749
|
+
}
|
|
750
|
+
else {
|
|
751
|
+
// Check for API keys when using API mode
|
|
752
|
+
const anthropicKey = process.env.ANTHROPIC_API_KEY;
|
|
753
|
+
const openaiKey = process.env.OPENAI_API_KEY;
|
|
754
|
+
this.print(' Provider: API Mode');
|
|
755
|
+
this.print(' ANTHROPIC_API_KEY: ' + (anthropicKey ? 'SET' : 'NOT SET'));
|
|
756
|
+
this.print(' OPENAI_API_KEY: ' + (openaiKey ? 'SET' : 'NOT SET'));
|
|
757
|
+
if (!anthropicKey && !openaiKey) {
|
|
758
|
+
this.print('');
|
|
759
|
+
this.print(' WARNING: No API keys configured!');
|
|
760
|
+
this.print(' Set ANTHROPIC_API_KEY or OPENAI_API_KEY environment variable.');
|
|
761
|
+
}
|
|
762
|
+
}
|
|
763
|
+
this.print('');
|
|
594
764
|
this.print('Type /help for available commands, or just describe your task.');
|
|
595
765
|
this.print('');
|
|
596
766
|
}
|
|
@@ -614,6 +784,7 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
614
784
|
this.print(' /model Show current model configuration');
|
|
615
785
|
this.print(' /model <name> Set model (saves to .claude/repl.json)');
|
|
616
786
|
this.print(' /keys Show API key status (SET/NOT SET)');
|
|
787
|
+
this.print(' /keys set <p> <key> Set API key (openai or anthropic)');
|
|
617
788
|
this.print('');
|
|
618
789
|
this.print('Session Management:');
|
|
619
790
|
this.print(' /start [path] Start a new session (optional project path)');
|
|
@@ -777,15 +948,48 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
777
948
|
/**
|
|
778
949
|
* Handle /keys command
|
|
779
950
|
* Per spec 10_REPL_UX.md Section 2.3
|
|
951
|
+
*
|
|
952
|
+
* /keys - Show status of all API keys
|
|
953
|
+
* /keys set <p> <k> - Set API key for provider
|
|
954
|
+
* /keys <provider> - Check specific provider
|
|
780
955
|
*/
|
|
781
956
|
async handleKeys(args) {
|
|
782
957
|
let result;
|
|
783
|
-
|
|
958
|
+
// /keys set <provider> <key>
|
|
959
|
+
if (args.length >= 3 && args[0] === 'set') {
|
|
960
|
+
const provider = args[1];
|
|
961
|
+
const key = args[2];
|
|
962
|
+
result = await this.keysCommand.setKey(provider, key);
|
|
963
|
+
if (result.success) {
|
|
964
|
+
this.print('API key set successfully for ' + provider);
|
|
965
|
+
this.print('Saved to: ' + (0, global_config_1.getConfigFilePath)());
|
|
966
|
+
return { success: true };
|
|
967
|
+
}
|
|
968
|
+
else {
|
|
969
|
+
this.print('Error [' + result.error?.code + ']: ' + (result.error?.message || result.message));
|
|
970
|
+
return { success: false, error: result.error };
|
|
971
|
+
}
|
|
972
|
+
}
|
|
973
|
+
// /keys <provider> - check specific provider
|
|
974
|
+
if (args.length > 0 && args[0] !== 'set') {
|
|
784
975
|
result = await this.keysCommand.checkProviderKey(args[0]);
|
|
785
976
|
}
|
|
786
|
-
else {
|
|
977
|
+
else if (args.length === 0) {
|
|
978
|
+
// /keys - show all
|
|
787
979
|
result = await this.keysCommand.getKeyStatus();
|
|
788
980
|
}
|
|
981
|
+
else {
|
|
982
|
+
// /keys set without enough args
|
|
983
|
+
this.print('Usage: /keys set <provider> <api-key>');
|
|
984
|
+
this.print(' provider: openai or anthropic');
|
|
985
|
+
return {
|
|
986
|
+
success: false,
|
|
987
|
+
error: {
|
|
988
|
+
code: 'E107',
|
|
989
|
+
message: 'Invalid arguments. Usage: /keys set <provider> <api-key>',
|
|
990
|
+
},
|
|
991
|
+
};
|
|
992
|
+
}
|
|
789
993
|
if (result.success) {
|
|
790
994
|
const output = this.keysCommand.formatKeyStatus(result.keys || []);
|
|
791
995
|
this.print(output);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repl-interface.js","sourceRoot":"","sources":["../../src/repl/repl-interface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"repl-interface.js","sourceRoot":"","sources":["../../src/repl/repl-interface.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,mDAAqC;AACrC,2CAA6B;AAC7B,uCAAyB;AACzB,uCAAyB;AACzB,mCAAsC;AAEtC,2CAAgD;AAChD,2EAAyF;AACzF,0CAA8C;AAC9C,4CAAgD;AAChD,gDAAqD;AACrD,8CAAmD;AACnD,kDAAsD;AACtD,8CAAkD;AAClD,0CAA8C;AAC9C,0CAA8C;AAC9C,2DAOiC;AA4EjC;;;GAGG;AACU,QAAA,UAAU,GAAG;IACxB,QAAQ,EAAE,CAAC,EAAK,mCAAmC;IACnD,KAAK,EAAE,CAAC,EAAQ,kCAAkC;IAClD,UAAU,EAAE,CAAC,EAAG,sCAAsC;CAC9C,CAAC;AA0BX;;;GAGG;AACH,MAAM,0BAA0B,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE5D;;;GAGG;AACH,MAAM,cAAc,GAAG;IACrB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU;IAC5C,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM;IACpC,sCAAsC;IACtC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM;CACrC,CAAC;AAEF;;;GAGG;AACH,MAAM,cAAc,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;AAE5D;;GAEG;AACH,MAAa,aAAc,SAAQ,qBAAY;IAC5B,MAAM,CAAa;IAC5B,EAAE,GAA8B,IAAI,CAAC;IACrC,OAAO,CAAc;IACrB,OAAO,GAAY,KAAK,CAAC;IACzB,YAAY,GAAY,KAAK,CAAC;IAEtC,0EAA0E;IAClE,UAAU,GAAa,EAAE,CAAC;IAC1B,iBAAiB,GAAY,KAAK,CAAC;IAE3C,2EAA2E;IACnE,eAAe,GAAa,EAAE,CAAC;IAEvC,wDAAwD;IAChD,aAAa,CAAoB;IACjC,QAAQ,GAAW,kBAAU,CAAC,QAAQ,CAAC;IACvC,QAAQ,GAAY,KAAK,CAAC;IAC1B,kBAAkB,GAAY,KAAK,CAAC;IAE5C,2DAA2D;IACnD,gBAAgB,GAAY,KAAK,CAAC;IAE1C,iEAAiE;IACzD,WAAW,CAAc;IACzB,gBAAgB,CAAS;IACzB,oBAAoB,GAAkB,IAAI,CAAC;IAEnD,mBAAmB;IACX,WAAW,CAAc;IACzB,YAAY,CAAe;IAC3B,eAAe,CAAkB;IACjC,cAAc,CAAiB;IAEvC,8CAA8C;IACtC,eAAe,CAAkB;IACjC,aAAa,CAAgB;IAC7B,WAAW,CAAc;IACzB,WAAW,CAAc;IAEjC,YAAY,SAAqB,EAAE;QACjC,KAAK,EAAE,CAAC;QAER,kDAAkD;QAClD,IAAI,MAAM,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACzE,CAAC;YACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC;QAEhD,sCAAsC;QACtC,IAAI,IAAI,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;YACjC,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,WAAY,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,kEAAkE;YAClE,iEAAiE;YACjE,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC;YACrE,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC;YACpC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;YAEhC,2DAA2D;YAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAChD,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,MAAM,eAAe,GAAG,0EAA0E,CAAC;YACnG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;YAC9E,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;gBACrC,OAAO,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE;gBACnD,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE;aACzB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACZ,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;QACpF,CAAC;QAED,+EAA+E;QAC/E,0EAA0E;QAC1E,mEAAmE;QACnE,MAAM,mBAAmB,GAAG,IAAI,CAAC,WAAW,KAAK,MAAM;YACrD,CAAC,CAAC,IAAI,CAAC,gBAAiB;YACxB,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,GAAG;YACZ,WAAW,EAAE,mBAAmB;YAChC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,SAAS,EAAE,UAAU,CAAC;YACxF,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,MAAM;YAC/B,2DAA2D;YAC3D,oFAAoF;YACpF,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,SAAS;YACtC,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,MAAM;YACjC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;SAC1C,CAAC;QAEF,iDAAiD;QACjD,mEAAmE;QACnE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAEhD,IAAI,CAAC,OAAO,GAAG;YACb,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAY;YACrC,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,MAAM;SACf,CAAC;QAEF,8BAA8B;QAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,kBAAW,EAAE,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,IAAI,oBAAY,EAAE,CAAC;QACvC,IAAI,CAAC,eAAe,GAAG,IAAI,yBAAe,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACtE,IAAI,CAAC,cAAc,GAAG,IAAI,uBAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEvD,kCAAkC;QAClC,IAAI,CAAC,eAAe,GAAG,IAAI,0BAAe,EAAE,CAAC;QAC7C,IAAI,CAAC,aAAa,GAAG,IAAI,sBAAa,EAAE,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,IAAI,kBAAW,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,IAAI,kBAAW,EAAE,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,mBAAmB;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU;QACd,+CAA+C;QAC/C,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1D,MAAM,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACzC,CAAC;QAED,4DAA4D;QAC5D,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,yBAAyB;QAC7B,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;YAChC,OAAO;QACT,CAAC;QAED,wBAAwB;QACxB,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC;QACpC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAEhC,iDAAiD;QACjD,qEAAqE;QACrE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAChD,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE7C,2BAA2B;QAC3B,MAAM,eAAe,GAAG,0EAA0E,CAAC;QACnG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;QAE9E,+BAA+B;QAC/B,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;YACrC,OAAO,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE;YACnD,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE;SACzB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACZ,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;QAElF,uDAAuD;QACvD,8DAA8D;QAC9D,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,aAAuB;QACjC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAErC,OAAO,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YACtC,kDAAkD;YAClD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;YAExE,OAAO;gBACL,IAAI,EAAE,YAAY;gBAClB,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;gBACnC,WAAW,EAAE,GAAG;gBAChB,gBAAgB,EAAE,MAAe;aAClC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,MAAc,EAAE,WAAmB;QAC/C,OAAO;YACL,OAAO,EAAE,MAAM;YACf,WAAW;YACX,iBAAiB,EAAE,IAAI,CAAC,gBAAgB;YACxC,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACrC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,oEAAoE;QACpE,0EAA0E;QAC1E,oDAAoD;IACtD,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,iBAAiB;QAC7B,mCAAmC;QACnC,MAAM,MAAM,GAAG,IAAA,4BAAY,GAAE,CAAC;QAE9B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,yBAAyB;YACzB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;YAC5E,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;YAC5E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;YACjE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YAClE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAA,iCAAiB,GAAE,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;YACjE,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;YAC5E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,2CAA2C;YAC3C,MAAM,SAAS,GAAG,IAAA,yBAAS,EAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,YAAY,GAAG,IAAA,yBAAS,EAAC,WAAW,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YACnE,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YACzE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,KAAK;QACT,0BAA0B;QAC1B,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAExB,kCAAkC;QAClC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACjC,CAAC;QAED,wDAAwD;QACxD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACzD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,0CAA0C;YAC1C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;YAChD,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBACtC,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;YAC9B,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpB,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;YACjC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAC1B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;SACrC,CAAC,CAAC;QAEH,qDAAqD;QACrD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC;QAED,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;QAEjB,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC1B,+DAA+D;YAC/D,yEAAyE;YACzE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,iDAAiD;QACjD,4DAA4D;QAC5D,sFAAsF;QACtF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,IAAI,CAAC,EAAG,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;gBAC9B,qEAAqE;gBACrE,yDAAyD;gBACzD,IAAI,IAAI,CAAC,aAAa,KAAK,iBAAiB,EAAE,CAAC;oBAC7C,yEAAyE;oBACzE,qFAAqF;oBACrF,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;wBAC9E,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;oBAC5C,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBAErB,8CAA8C;gBAC9C,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBAEzB,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBAErB,iDAAiD;gBACjD,IAAI,IAAI,CAAC,aAAa,KAAK,iBAAiB,EAAE,CAAC;oBAC7C,IAAI,CAAC,cAAc,EAAE,CAAC;oBACtB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;gBACnC,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY,CAAC,KAAa;QACtC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACK,YAAY,CAAC,IAAY;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAE5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,oDAAoD;YACpD,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,oDAAoD;gBACpD,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClD,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;gBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAChC,6CAA6C;gBAC7C,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,2DAA2D;gBAC3D,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC5C,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC;gBACpB,CAAC;YACH,CAAC;YACD,OAAO;QACT,CAAC;QAED,qEAAqE;QACrE,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,4CAA4C;YAC5C,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClD,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;gBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAClC,CAAC;YACD,oCAAoC;YACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,iEAAiE;QACjE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEnC,wEAAwE;QACxE,IAAI,IAAI,CAAC,aAAa,KAAK,iBAAiB,EAAE,CAAC;YAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAChC,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,mDAAmD;QACnD,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5C,uDAAuD;YACvD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,YAAY;QACxB,kEAAkE;QAClE,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAE9B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAG,CAAC;gBAEvC,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACjC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,UAAU,CAAC,GAAY,CAAC,CAAC;gBAChC,CAAC;gBAED,2DAA2D;gBAC3D,gEAAgE;gBAChE,IAAI,IAAI,CAAC,aAAa,KAAK,iBAAiB,EAAE,CAAC;oBAC7C,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3B,CAAC;gBAED,wEAAwE;gBACxE,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACjD,IAAI,IAAI,CAAC,aAAa,KAAK,aAAa,EAAE,CAAC;wBACzC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC;oBACpB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QACjC,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,cAAc,CAAC,KAAa;QAChC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE5B,sEAAsE;QACtE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACtC,iEAAiE;YACjE,IAAI,CAAC,KAAK,CAAC,oBAAoB,GAAG,OAAO,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACjD,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,oBAAoB,GAAG,OAAO,GAAG,sCAAsC;iBACjF;aACF,CAAC;QACJ,CAAC;QAED,6BAA6B;QAC7B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE/C,yDAAyD;QACzD,IAAI,UAAU,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAChE,IAAI,CAAC,KAAK,CAAC,qBAAqB,GAAG,OAAO,GAAG,6BAA6B,CAAC,CAAC;YAC5E,IAAI,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAC3D,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,cAAc,GAAG,OAAO,GAAG,gEAAgE;iBACrG;aACF,CAAC;QACJ,CAAC;QAED,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,MAAM;gBACT,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAE3B,KAAK,MAAM;gBACT,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAErC,KAAK,OAAO;gBACV,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAEtC,KAAK,OAAO;gBACV,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBACzB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAE3B,KAAK,QAAQ;gBACX,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAE3B,KAAK,OAAO;gBACV,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAEtC,KAAK,UAAU;gBACb,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAEzC,KAAK,SAAS;gBACZ,OAAO,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAEpC,KAAK,MAAM;gBACT,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBACxB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAE3B,sCAAsC;YACtC,KAAK,UAAU;gBACb,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAEzC,KAAK,QAAQ;gBACX,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAEvC,KAAK,MAAM;gBACT,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAErC,KAAK,MAAM;gBACT,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAErC;gBACE,wEAAwE;gBACxE,0EAA0E;gBAC1E,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,OAAO,GAAG,kDAAkD,CAAC,CAAC;QAChH,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,sBAAsB,CAAC,KAAa;QAChD,OAAO,CAAC,GAAG,CAAC,gDAAgD,KAAK,GAAG,CAAC,CAAC;QACtE,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACtC,8DAA8D;YAC9D,IAAI,IAAI,CAAC,aAAa,KAAK,iBAAiB,EAAE,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,+EAA+E,CAAC,CAAC;gBAC7F,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBAC/C,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;oBACzB,IAAI,CAAC,KAAK,CAAC,gCAAgC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC;oBAC/F,OAAO;gBACT,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;gBACxF,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEf,IAAI,CAAC;YACH,uEAAuE;YACvE,mDAAmD;YACnD,IAAI,aAAiC,CAAC;YACtC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAC/E,IAAI,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;gBAC9E,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC;YACpC,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;YACxE,0CAA0C;YAC1C,6EAA6E;YAC7E,wEAAwE;YACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC/C,KAAK,EAAE,CAAC;wBACN,EAAE,EAAE,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE;wBACxB,WAAW,EAAE,KAAK;wBAClB,mBAAmB,EAAE,KAAK;qBAC3B,CAAC;gBACF,aAAa;aACd,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,kEAAkE,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;YAEvG,qDAAqD;YACrD,IAAI,MAAM,CAAC,cAAc,KAAK,qBAAa,CAAC,UAAU;gBAClD,MAAM,CAAC,uBAAuB;gBAC9B,MAAM,CAAC,uBAAuB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9C,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,uBAAuB,CAAC,CAAC;gBACxG,IAAI,mBAAmB,EAAE,CAAC;oBACxB,+DAA+D;oBAC/D,OAAO;gBACT,CAAC;YACH,CAAC;YAED,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,yCAA0C,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAC/E,IAAI,CAAC,UAAU,CAAC,GAAY,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,yBAAyB,CACrC,aAAqB,EACrB,OAAmD;QAEnD,iCAAiC;QACjC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAE3B,mDAAmD;YACnD,IAAI,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;gBAC7C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAC3C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,aAAa,CAAC,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBACxD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAC3B,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAChC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBAC7B,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBACvC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;gBAC/D,IAAI,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;gBAC7D,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;gBACpE,IAAI,CAAC,KAAK,CAAC,2FAA2F,CAAC,CAAC;gBACxG,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAC3C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,OAAO,IAAI,CAAC;YACd,CAAC;YAED,mCAAmC;YACnC,IAAI,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBAC9C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAC3C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,aAAa,CAAC,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC;gBAC/B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;gBAC9D,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAC3C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,YAAY;QAClB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACxD,IAAI,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACxD,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEf,4BAA4B;QAC5B,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;YACtE,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,yCAAyC;YACzC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;YACnD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;YAC7C,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,uBAAuB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YACzE,IAAI,CAAC,KAAK,CAAC,oBAAoB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YACnE,IAAI,CAAC,YAAY,IAAI,CAAC,SAAS,EAAE,CAAC;gBAChC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBACjD,IAAI,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;YAChF,CAAC;QACH,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;QAC7E,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED;;OAEG;IACK,SAAS;QACf,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAC5D,IAAI,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;QACtF,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAC3D,IAAI,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAClE,IAAI,CAAC,KAAK,CAAC,sEAAsE,CAAC,CAAC;QACnF,IAAI,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QACvE,IAAI,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAC;QAC5E,IAAI,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QACvE,IAAI,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QACvE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACjF,IAAI,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACjF,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;QACxE,IAAI,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;QAC7E,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAC7D,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;QACxE,IAAI,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QACvE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;QAClF,IAAI,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACrE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,UAAU,CAAC,IAAc;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAE1D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YAC9C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;YACvC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,MAAM,CAAC,OAAO;iBACxB;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,WAAW,CAAC,IAAc;QACtC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAC1E,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,iEAAiE;gBACjE,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC7C,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;oBACtB,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;gBAClD,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,gDAAgD;gBAChD,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC/F,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,eAAe,EAAE;iBACpF,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACnF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC7C,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;oBACxB,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBACjD,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,wDAAwD;gBACxD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,IAAI,MAAM,CAAC;gBAC/C,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,qBAAqB,CAAC;gBACtF,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,GAAG,KAAK,GAAG,YAAY,CAAC,CAAC;gBACzD,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE;iBAClD,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,cAAc,CAAC,IAAc;QACzC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,2BAA2B;YAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAChF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC;gBACtF,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACnB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC/F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;YACjD,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YAC9B,4BAA4B;YAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;YAC1D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACvF,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YACnF,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,EAAE,eAAe,CAAC,CAAC;YAChG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACnB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,kCAAkC;YAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACzF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC1C,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC7C,IAAI,CAAC,KAAK,CAAC,4EAA4E,CAAC,CAAC;gBACzF,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;oBACxB,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBACjD,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC/F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,YAAY,CAAC,IAAc;QACvC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAEzF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAC/C,MAAM,CAAC,MAAM,IAAI,EAAE,EACnB,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,QAAQ,CAChB,CAAC;YACF,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACnB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YAC/F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;QACjD,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,UAAU,CAAC,IAAc;QACrC,IAAI,MAAM,CAAC;QAEX,6BAA6B;QAC7B,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAEtD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,+BAA+B,GAAG,QAAQ,CAAC,CAAC;gBACvD,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAA,iCAAiB,GAAE,CAAC,CAAC;gBAC/C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC/F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;YACjD,CAAC;QACH,CAAC;QAED,6CAA6C;QAC7C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;YACzC,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,mBAAmB;YACnB,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,gCAAgC;YAChC,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACpD,IAAI,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YAC9C,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,0DAA0D;iBACpE;aACF,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YACnE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACnB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YAC/F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;QACjD,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,UAAU,CAAC,IAAc;QACrC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,4CAA4C;YAC5C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC5B,IAAI,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;gBAChE,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,EAAE;iBACtD,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAC5C,IAAI,CAAC,OAAO,CAAC,WAAW,EACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CACvB,CAAC;YACF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,gBAAgB,CAAC,CAAC;gBAC9C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC/F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;YACjD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,2BAA2B;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CACjD,IAAI,CAAC,OAAO,CAAC,WAAW,EACxB,MAAM,EACN,IAAI,CACL,CAAC;YACF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,sBAAsB,CAAC,CAAC;gBACpD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC/F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY;QACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;QACrD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,WAAW,CAAC,IAAc;QACtC,yDAAyD;QACzD,qEAAqE;QACrE,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC;YACzB,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAEnF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAE7D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,SAAU,CAAC;gBAC3C,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAO,CAAC;gBACrC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;gBAChC,4DAA4D;gBAC5D,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;gBAEvC,wBAAwB;gBACxB,MAAM,gBAAgB,GAAqB;oBACzC,eAAe,EAAE,IAAI;oBACrB,UAAU,EAAE,CAAC;oBACb,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;iBACrD,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,wCAAkB,CAC9C,IAAI,CAAC,OAAO,CAAC,MAAM,EACnB,gBAAgB,CACjB,CAAC;gBAEF,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;gBACnD,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC,CAAC;gBACtC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;gBAC9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;gBACvC,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,yBAAyB,EAAE;iBAC9E,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,UAAU,CAAC,GAAY,CAAC,CAAC;YAC9B,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAG,GAAa,CAAC,OAAO,EAAE;aACzD,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc,CAAC,IAAc;QACzC,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QAEpD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,sEAAsE,CAAC,CAAC;YACnF,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,wBAAwB,EAAE;aAC3D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;YAErE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;gBACnC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAO,CAAC;gBACrC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;gBAEhC,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAAC;gBAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;gBACvC,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,4BAA4B,EAAE;iBACjF,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,UAAU,CAAC,GAAY,CAAC,CAAC;YAC9B,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAG,GAAa,CAAC,OAAO,EAAE;aACzD,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa;QACzB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;YAC5C,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,8BAA8B,EAAE;aACjE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAE1E,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBACjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;gBACvC,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,mBAAmB,EAAE;iBACxE,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,UAAU,CAAC,GAAY,CAAC,CAAC;YAC9B,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAG,GAAa,CAAC,OAAO,EAAE;aACzD,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,UAAU;QACtB,sEAAsE;QACtE,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAE7B,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAEtC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YAClD,IAAI,CAAC;gBACH,+EAA+E;gBAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB,CAAC;gBACxD,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;gBAClD,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACtC,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACzD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,mEAAmE;gBACnE,MAAM,YAAY,GAAI,GAAa,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC3D,IAAI,CAAC,KAAK,CAAC,yCAAyC,GAAG,YAAY,CAAC,CAAC;gBACrE,0DAA0D;gBAC1D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACrB,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAEvB,kEAAkE;QAClE,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAEzB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IAED;;;OAGG;IACK,oBAAoB,CAAC,MAQ5B;QACC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;QAE/C,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,eAAe,GAAG,GAAG,GAAG,MAAM,CAAC,WAAW,GAAG,YAAY,CAAC,CAAC;YAEzF,8DAA8D;YAC9D,IAAI,MAAM,CAAC,eAAe,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC,EAAE,CAAC;gBACvD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAC/B,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,CAAC;QACH,CAAC;QAED,2FAA2F;QAC3F,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7C,IAAK,MAAM,CAAC,KAAmC,CAAC,IAAI,EAAE,CAAC;gBACrD,IAAI,CAAC,KAAK,CAAC,cAAc,GAAI,MAAM,CAAC,KAAmC,CAAC,IAAI,CAAC,CAAC;YAChF,CAAC;YACD,4BAA4B;YAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;QAED,oEAAoE;QACpE,IAAI,MAAM,CAAC,uBAAuB,IAAI,MAAM,CAAC,uBAAuB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChF,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAChC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,uBAAuB,EAAE,CAAC;gBACpD,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;QAED,qBAAqB;QACrB,IAAI,MAAM,CAAC,cAAc,KAAK,qBAAa,CAAC,KAAK,EAAE,CAAC;YAClD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;QAED,0BAA0B;QAC1B,IAAI,MAAM,CAAC,cAAc,KAAK,qBAAa,CAAC,UAAU,EAAE,CAAC;YACvD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;QAED,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAClE,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;gBAC9B,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,OAAe;QAC3B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,WAAW;QACvB,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACnC,oDAAoD;YACpD,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC7B,OAAO,EAAE,CAAC;YACZ,CAAC;iBAAM,CAAC;gBACN,uBAAuB;gBACvB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;oBAChC,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,GAAU;QAC3B,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,wBAAwB;QAC5B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAY,CAAC;QAE7C,iCAAiC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,iCAAiC,GAAG,SAAS,CAAC,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,sDAAsD;YACtD,MAAM,aAAa,GAAG;gBACpB,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE;gBAC5E,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE;aACrF,CAAC;YAEF,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;gBACjC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9B,MAAM,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,GAAG,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC1B,MAAM;SACP,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,cAAc;QAClB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACzD,IAAI,CAAC,YAAY,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC;QACtC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;;;OAMG;IACK,SAAS,CAAC,IAAY;QAC5B,sCAAsC;QACtC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACpB,CAAC;QAED,wCAAwC;QACxC,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhE,oDAAoD;QACpD,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACtB,CAAC;IAED;;;OAGG;IACK,mBAAmB;QACzB,8BAA8B;QAC9B,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;YACpC,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAED,2CAA2C;QAC3C,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,GAAG,EAAE,CAAC;YAClD,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAED,qCAAqC;QACrC,sDAAsD;QACtD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACzB,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,OAAO,IAAI,CAAC,aAAa,KAAK,iBAAiB,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACK,cAAc;QACpB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,QAAQ,GAAG,kBAAU,CAAC,KAAK,CAAC;QACnC,CAAC;aAAM,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACnC,IAAI,CAAC,QAAQ,GAAG,kBAAU,CAAC,UAAU,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,QAAQ,GAAG,kBAAU,CAAC,QAAQ,CAAC;QACtC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF;AAj8CD,sCAi8CC"}
|