@miller-tech/uap 1.20.51 → 1.22.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.
@@ -14,21 +14,21 @@ export declare const TokenThroughputConfigSchema: z.ZodObject<{
14
14
  maxTokens: z.ZodDefault<z.ZodNumber>;
15
15
  temperature: z.ZodDefault<z.ZodNumber>;
16
16
  }, "strip", z.ZodTypeAny, {
17
- endpoint: string;
18
17
  model: string;
19
- temperature: number;
20
- maxTokens: number;
18
+ endpoint: string;
21
19
  contextSizes: number[];
22
20
  warmupRuns: number;
23
21
  measurementRuns: number;
22
+ maxTokens: number;
23
+ temperature: number;
24
24
  }, {
25
- endpoint?: string | undefined;
26
25
  model?: string | undefined;
27
- temperature?: number | undefined;
28
- maxTokens?: number | undefined;
26
+ endpoint?: string | undefined;
29
27
  contextSizes?: number[] | undefined;
30
28
  warmupRuns?: number | undefined;
31
29
  measurementRuns?: number | undefined;
30
+ maxTokens?: number | undefined;
31
+ temperature?: number | undefined;
32
32
  }>;
33
33
  export type TokenThroughputConfig = z.infer<typeof TokenThroughputConfigSchema>;
34
34
  export declare const TokenThroughputResultSchema: z.ZodObject<{
@@ -41,33 +41,33 @@ export declare const TokenThroughputResultSchema: z.ZodObject<{
41
41
  tokensGenerated: z.ZodNumber;
42
42
  latencyMs: z.ZodNumber;
43
43
  }, "strip", z.ZodTypeAny, {
44
- latencyMs: number;
45
44
  runIndex: number;
46
45
  tokensGenerated: number;
47
- }, {
48
46
  latencyMs: number;
47
+ }, {
49
48
  runIndex: number;
50
49
  tokensGenerated: number;
50
+ latencyMs: number;
51
51
  }>, "many">;
52
52
  }, "strip", z.ZodTypeAny, {
53
- avgLatencyMs: number;
54
53
  contextSize: number;
55
54
  tokensPerSecond: number;
56
55
  totalTimeMs: number;
56
+ avgLatencyMs: number;
57
57
  runs: {
58
- latencyMs: number;
59
58
  runIndex: number;
60
59
  tokensGenerated: number;
60
+ latencyMs: number;
61
61
  }[];
62
62
  }, {
63
- avgLatencyMs: number;
64
63
  contextSize: number;
65
64
  tokensPerSecond: number;
66
65
  totalTimeMs: number;
66
+ avgLatencyMs: number;
67
67
  runs: {
68
- latencyMs: number;
69
68
  runIndex: number;
70
69
  tokensGenerated: number;
70
+ latencyMs: number;
71
71
  }[];
72
72
  }>;
73
73
  export type TokenThroughputResult = z.infer<typeof TokenThroughputResultSchema>;
@@ -84,21 +84,21 @@ export declare const TokenThroughputBenchmarkSchema: z.ZodObject<{
84
84
  maxTokens: z.ZodDefault<z.ZodNumber>;
85
85
  temperature: z.ZodDefault<z.ZodNumber>;
86
86
  }, "strip", z.ZodTypeAny, {
87
- endpoint: string;
88
87
  model: string;
89
- temperature: number;
90
- maxTokens: number;
88
+ endpoint: string;
91
89
  contextSizes: number[];
92
90
  warmupRuns: number;
93
91
  measurementRuns: number;
92
+ maxTokens: number;
93
+ temperature: number;
94
94
  }, {
95
- endpoint?: string | undefined;
96
95
  model?: string | undefined;
97
- temperature?: number | undefined;
98
- maxTokens?: number | undefined;
96
+ endpoint?: string | undefined;
99
97
  contextSizes?: number[] | undefined;
100
98
  warmupRuns?: number | undefined;
101
99
  measurementRuns?: number | undefined;
100
+ maxTokens?: number | undefined;
101
+ temperature?: number | undefined;
102
102
  }>;
103
103
  results: z.ZodArray<z.ZodObject<{
104
104
  contextSize: z.ZodNumber;
@@ -110,33 +110,33 @@ export declare const TokenThroughputBenchmarkSchema: z.ZodObject<{
110
110
  tokensGenerated: z.ZodNumber;
111
111
  latencyMs: z.ZodNumber;
112
112
  }, "strip", z.ZodTypeAny, {
113
- latencyMs: number;
114
113
  runIndex: number;
115
114
  tokensGenerated: number;
116
- }, {
117
115
  latencyMs: number;
116
+ }, {
118
117
  runIndex: number;
119
118
  tokensGenerated: number;
119
+ latencyMs: number;
120
120
  }>, "many">;
121
121
  }, "strip", z.ZodTypeAny, {
122
- avgLatencyMs: number;
123
122
  contextSize: number;
124
123
  tokensPerSecond: number;
125
124
  totalTimeMs: number;
125
+ avgLatencyMs: number;
126
126
  runs: {
127
- latencyMs: number;
128
127
  runIndex: number;
129
128
  tokensGenerated: number;
129
+ latencyMs: number;
130
130
  }[];
131
131
  }, {
132
- avgLatencyMs: number;
133
132
  contextSize: number;
134
133
  tokensPerSecond: number;
135
134
  totalTimeMs: number;
135
+ avgLatencyMs: number;
136
136
  runs: {
137
- latencyMs: number;
138
137
  runIndex: number;
139
138
  tokensGenerated: number;
139
+ latencyMs: number;
140
140
  }[];
141
141
  }>, "many">;
142
142
  summary: z.ZodObject<{
@@ -162,49 +162,29 @@ export declare const TokenThroughputBenchmarkSchema: z.ZodObject<{
162
162
  totalTokensProcessed: number;
163
163
  }>;
164
164
  }, "strip", z.ZodTypeAny, {
165
- endpoint: string;
166
- model: string;
167
165
  config: {
168
- endpoint: string;
169
166
  model: string;
170
- temperature: number;
171
- maxTokens: number;
167
+ endpoint: string;
172
168
  contextSizes: number[];
173
169
  warmupRuns: number;
174
170
  measurementRuns: number;
171
+ maxTokens: number;
172
+ temperature: number;
175
173
  };
176
- summary: {
177
- avgLatencyMs: number;
178
- avgTokensPerSecond: number;
179
- minTokensPerSecond: number;
180
- maxTokensPerSecond: number;
181
- totalRuns: number;
182
- totalTokensProcessed: number;
183
- };
174
+ model: string;
175
+ endpoint: string;
184
176
  timestamp: string;
185
177
  results: {
186
- avgLatencyMs: number;
187
178
  contextSize: number;
188
179
  tokensPerSecond: number;
189
180
  totalTimeMs: number;
181
+ avgLatencyMs: number;
190
182
  runs: {
191
- latencyMs: number;
192
183
  runIndex: number;
193
184
  tokensGenerated: number;
185
+ latencyMs: number;
194
186
  }[];
195
187
  }[];
196
- }, {
197
- endpoint: string;
198
- model: string;
199
- config: {
200
- endpoint?: string | undefined;
201
- model?: string | undefined;
202
- temperature?: number | undefined;
203
- maxTokens?: number | undefined;
204
- contextSizes?: number[] | undefined;
205
- warmupRuns?: number | undefined;
206
- measurementRuns?: number | undefined;
207
- };
208
188
  summary: {
209
189
  avgLatencyMs: number;
210
190
  avgTokensPerSecond: number;
@@ -213,18 +193,38 @@ export declare const TokenThroughputBenchmarkSchema: z.ZodObject<{
213
193
  totalRuns: number;
214
194
  totalTokensProcessed: number;
215
195
  };
196
+ }, {
197
+ config: {
198
+ model?: string | undefined;
199
+ endpoint?: string | undefined;
200
+ contextSizes?: number[] | undefined;
201
+ warmupRuns?: number | undefined;
202
+ measurementRuns?: number | undefined;
203
+ maxTokens?: number | undefined;
204
+ temperature?: number | undefined;
205
+ };
206
+ model: string;
207
+ endpoint: string;
216
208
  timestamp: string;
217
209
  results: {
218
- avgLatencyMs: number;
219
210
  contextSize: number;
220
211
  tokensPerSecond: number;
221
212
  totalTimeMs: number;
213
+ avgLatencyMs: number;
222
214
  runs: {
223
- latencyMs: number;
224
215
  runIndex: number;
225
216
  tokensGenerated: number;
217
+ latencyMs: number;
226
218
  }[];
227
219
  }[];
220
+ summary: {
221
+ avgLatencyMs: number;
222
+ avgTokensPerSecond: number;
223
+ minTokensPerSecond: number;
224
+ maxTokensPerSecond: number;
225
+ totalRuns: number;
226
+ totalTokensProcessed: number;
227
+ };
228
228
  }>;
229
229
  export type TokenThroughputBenchmark = z.infer<typeof TokenThroughputBenchmarkSchema>;
230
230
  export interface ChatCompletionRequest {
package/dist/bin/cli.js CHANGED
File without changes
File without changes
File without changes
@@ -27,7 +27,7 @@ export declare const ModelConfigSchemaModels: z.ZodObject<{
27
27
  }, "strip", z.ZodTypeAny, {
28
28
  id: string;
29
29
  name: string;
30
- provider: "anthropic" | "openai" | "ollama" | "custom";
30
+ provider: "custom" | "anthropic" | "openai" | "ollama";
31
31
  apiModel: string;
32
32
  maxContextTokens: number;
33
33
  capabilities: string[];
@@ -39,7 +39,7 @@ export declare const ModelConfigSchemaModels: z.ZodObject<{
39
39
  }, {
40
40
  id: string;
41
41
  name: string;
42
- provider: "anthropic" | "openai" | "ollama" | "custom";
42
+ provider: "custom" | "anthropic" | "openai" | "ollama";
43
43
  apiModel: string;
44
44
  endpoint?: string | undefined;
45
45
  apiKeyEnvVar?: string | undefined;
@@ -89,12 +89,12 @@ export declare const RoutingRuleSchema: z.ZodObject<{
89
89
  priority: number;
90
90
  complexity?: "low" | "medium" | "high" | "critical" | undefined;
91
91
  keywords?: string[] | undefined;
92
- taskType?: "planning" | "review" | "coding" | "refactoring" | "bug-fix" | "documentation" | undefined;
92
+ taskType?: "planning" | "coding" | "refactoring" | "bug-fix" | "review" | "documentation" | undefined;
93
93
  }, {
94
94
  targetRole: "planner" | "executor" | "reviewer" | "fallback";
95
95
  complexity?: "low" | "medium" | "high" | "critical" | undefined;
96
96
  keywords?: string[] | undefined;
97
- taskType?: "planning" | "review" | "coding" | "refactoring" | "bug-fix" | "documentation" | undefined;
97
+ taskType?: "planning" | "coding" | "refactoring" | "bug-fix" | "review" | "documentation" | undefined;
98
98
  priority?: number | undefined;
99
99
  }>;
100
100
  export type RoutingRule = z.infer<typeof RoutingRuleSchema>;
@@ -118,7 +118,7 @@ export declare const MultiModelConfigSchema: z.ZodObject<{
118
118
  }, "strip", z.ZodTypeAny, {
119
119
  id: string;
120
120
  name: string;
121
- provider: "anthropic" | "openai" | "ollama" | "custom";
121
+ provider: "custom" | "anthropic" | "openai" | "ollama";
122
122
  apiModel: string;
123
123
  maxContextTokens: number;
124
124
  capabilities: string[];
@@ -130,7 +130,7 @@ export declare const MultiModelConfigSchema: z.ZodObject<{
130
130
  }, {
131
131
  id: string;
132
132
  name: string;
133
- provider: "anthropic" | "openai" | "ollama" | "custom";
133
+ provider: "custom" | "anthropic" | "openai" | "ollama";
134
134
  apiModel: string;
135
135
  endpoint?: string | undefined;
136
136
  apiKeyEnvVar?: string | undefined;
@@ -167,12 +167,12 @@ export declare const MultiModelConfigSchema: z.ZodObject<{
167
167
  priority: number;
168
168
  complexity?: "low" | "medium" | "high" | "critical" | undefined;
169
169
  keywords?: string[] | undefined;
170
- taskType?: "planning" | "review" | "coding" | "refactoring" | "bug-fix" | "documentation" | undefined;
170
+ taskType?: "planning" | "coding" | "refactoring" | "bug-fix" | "review" | "documentation" | undefined;
171
171
  }, {
172
172
  targetRole: "planner" | "executor" | "reviewer" | "fallback";
173
173
  complexity?: "low" | "medium" | "high" | "critical" | undefined;
174
174
  keywords?: string[] | undefined;
175
- taskType?: "planning" | "review" | "coding" | "refactoring" | "bug-fix" | "documentation" | undefined;
175
+ taskType?: "planning" | "coding" | "refactoring" | "bug-fix" | "review" | "documentation" | undefined;
176
176
  priority?: number | undefined;
177
177
  }>, "many">>;
178
178
  costOptimization: z.ZodOptional<z.ZodObject<{
@@ -233,7 +233,7 @@ export declare const MultiModelConfigSchema: z.ZodObject<{
233
233
  models: (string | {
234
234
  id: string;
235
235
  name: string;
236
- provider: "anthropic" | "openai" | "ollama" | "custom";
236
+ provider: "custom" | "anthropic" | "openai" | "ollama";
237
237
  apiModel: string;
238
238
  maxContextTokens: number;
239
239
  capabilities: string[];
@@ -255,7 +255,7 @@ export declare const MultiModelConfigSchema: z.ZodObject<{
255
255
  priority: number;
256
256
  complexity?: "low" | "medium" | "high" | "critical" | undefined;
257
257
  keywords?: string[] | undefined;
258
- taskType?: "planning" | "review" | "coding" | "refactoring" | "bug-fix" | "documentation" | undefined;
258
+ taskType?: "planning" | "coding" | "refactoring" | "bug-fix" | "review" | "documentation" | undefined;
259
259
  }[] | undefined;
260
260
  costOptimization?: {
261
261
  enabled: boolean;
@@ -282,7 +282,7 @@ export declare const MultiModelConfigSchema: z.ZodObject<{
282
282
  models?: (string | {
283
283
  id: string;
284
284
  name: string;
285
- provider: "anthropic" | "openai" | "ollama" | "custom";
285
+ provider: "custom" | "anthropic" | "openai" | "ollama";
286
286
  apiModel: string;
287
287
  endpoint?: string | undefined;
288
288
  apiKeyEnvVar?: string | undefined;
@@ -302,7 +302,7 @@ export declare const MultiModelConfigSchema: z.ZodObject<{
302
302
  targetRole: "planner" | "executor" | "reviewer" | "fallback";
303
303
  complexity?: "low" | "medium" | "high" | "critical" | undefined;
304
304
  keywords?: string[] | undefined;
305
- taskType?: "planning" | "review" | "coding" | "refactoring" | "bug-fix" | "documentation" | undefined;
305
+ taskType?: "planning" | "coding" | "refactoring" | "bug-fix" | "review" | "documentation" | undefined;
306
306
  priority?: number | undefined;
307
307
  }[] | undefined;
308
308
  costOptimization?: {
@@ -1 +1 @@
1
- {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/tasks/database.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAItC,qBAAa,YAAY;IACvB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA6B;IAEpD,OAAO;IAeP,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAOhD,MAAM,CAAC,aAAa,IAAI,IAAI;IAO5B,WAAW,IAAI,QAAQ,CAAC,QAAQ;IAIhC,OAAO,CAAC,UAAU;IAqFlB;;;OAGG;IACH,OAAO,CAAC,OAAO;IAmBf,KAAK,IAAI,IAAI;CAGd;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD"}
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/tasks/database.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAItC,qBAAa,YAAY;IACvB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA6B;IAEpD,OAAO;IAeP,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAOhD,MAAM,CAAC,aAAa,IAAI,IAAI;IAO5B,WAAW,IAAI,QAAQ,CAAC,QAAQ;IAIhC,OAAO,CAAC,UAAU;IAwFlB;;;OAGG;IACH,OAAO,CAAC,OAAO;IAuBf,KAAK,IAAI,IAAI;CAGd;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD"}
@@ -59,7 +59,10 @@ export class TaskDatabase {
59
59
  CREATE INDEX IF NOT EXISTS idx_tasks_priority ON tasks(priority);
60
60
  CREATE INDEX IF NOT EXISTS idx_tasks_assignee ON tasks(assignee);
61
61
  CREATE INDEX IF NOT EXISTS idx_tasks_parent ON tasks(parent_id);
62
- CREATE INDEX IF NOT EXISTS idx_tasks_due_date ON tasks(due_date);
62
+ -- NOTE: idx_tasks_due_date is created in migrate(), NOT here. On an
63
+ -- existing pre-due_date DB this CREATE TABLE IF NOT EXISTS no-ops, so
64
+ -- the column would still be absent at this point and indexing it here
65
+ -- crashes ("no such column: due_date") before migrate() can add it.
63
66
 
64
67
  -- Dependencies (DAG edges)
65
68
  CREATE TABLE IF NOT EXISTS task_dependencies (
@@ -126,8 +129,12 @@ export class TaskDatabase {
126
129
  // v4.9.0: Add due_date column to tasks
127
130
  if (!columnNames.has('due_date')) {
128
131
  this.db.exec('ALTER TABLE tasks ADD COLUMN due_date TEXT');
129
- this.db.exec('CREATE INDEX IF NOT EXISTS idx_tasks_due_date ON tasks(due_date)');
130
132
  }
133
+ // Index created unconditionally AFTER the column is guaranteed to exist
134
+ // (fresh DB: from CREATE TABLE; migrated DB: from the ALTER above).
135
+ // IF NOT EXISTS keeps it idempotent. Must not live in initSchema() —
136
+ // initSchema runs before migrate(), so on an old DB the column is absent.
137
+ this.db.exec('CREATE INDEX IF NOT EXISTS idx_tasks_due_date ON tasks(due_date)');
131
138
  // v9.4.0: Add closed_at and closed_reason if missing (older DBs)
132
139
  if (!columnNames.has('closed_at')) {
133
140
  this.db.exec('ALTER TABLE tasks ADD COLUMN closed_at TEXT');
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/tasks/database.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,MAAM,OAAO,YAAY;IACf,EAAE,CAAoB;IACtB,MAAM,CAAC,QAAQ,GAAwB,IAAI,CAAC;IAEpD,YAAoB,MAAc;QAChC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACrB,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,CAAC,EAAE,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/B,oEAAoE;QACpE,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,MAAc;QAC/B,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YAC3B,YAAY,CAAC,QAAQ,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,YAAY,CAAC,QAAQ,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,aAAa;QAClB,IAAI,YAAY,CAAC,QAAQ,EAAE,CAAC;YAC1B,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC9B,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IAEO,UAAU;QAChB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiFZ,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,OAAO;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAA4B,CAAC;QAC/E,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAExD,uCAAuC;QACvC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;YAC3D,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QACnF,CAAC;QAED,iEAAiE;QACjE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;;AAGH,MAAM,UAAU,oBAAoB;IAClC,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,0BAA0B,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/tasks/database.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,MAAM,OAAO,YAAY;IACf,EAAE,CAAoB;IACtB,MAAM,CAAC,QAAQ,GAAwB,IAAI,CAAC;IAEpD,YAAoB,MAAc;QAChC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACrB,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,CAAC,EAAE,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/B,oEAAoE;QACpE,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,MAAc;QAC/B,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YAC3B,YAAY,CAAC,QAAQ,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,YAAY,CAAC,QAAQ,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,aAAa;QAClB,IAAI,YAAY,CAAC,QAAQ,EAAE,CAAC;YAC1B,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC9B,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IAEO,UAAU;QAChB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAoFZ,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,OAAO;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAA4B,CAAC;QAC/E,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAExD,uCAAuC;QACvC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;QAC7D,CAAC;QACD,wEAAwE;QACxE,oEAAoE;QACpE,qEAAqE;QACrE,0EAA0E;QAC1E,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QAEjF,iEAAiE;QACjE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;;AAGH,MAAM,UAAU,oBAAoB;IAClC,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,0BAA0B,CAAC;AACpC,CAAC"}