cucumberjs-qase-reporter 0.2.3 → 0.2.8-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -14
- package/dist/index.d.ts +3 -0
- package/dist/index.js +98 -40
- package/dist/index.js.map +1 -1
- package/examples/package-lock.json +16491 -2546
- package/examples/screenshots/screenshot.png +0 -0
- package/package.json +6 -4
- package/examples/README.md +0 -7
package/README.md
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
#
|
|
1
|
+
> # Qase TMS Cucumber JS reporter
|
|
2
|
+
>
|
|
3
|
+
> Publish results simple and easy.
|
|
2
4
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
## Installation
|
|
5
|
+
## How to integrate
|
|
6
6
|
|
|
7
7
|
```
|
|
8
8
|
npm install cucumberjs-qase-reporter
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
## Usage
|
|
11
|
+
## Example of usage
|
|
13
12
|
|
|
14
13
|
Decorate your scenarios with Qase TMS case IDs in format `Q-<case id>` or `Q123`, also `q` can be in any case:
|
|
15
14
|
|
|
@@ -34,12 +33,17 @@ Feature: Cucumber documentation
|
|
|
34
33
|
And I should see a "Dependencies" badge
|
|
35
34
|
```
|
|
36
35
|
|
|
37
|
-
|
|
36
|
+
To run tests and create a test run, execute the command (for example from folder examples):
|
|
38
37
|
|
|
39
|
-
```bash
|
|
40
|
-
cucumber-js -f cucumberjs-qase-reporter features
|
|
41
38
|
```
|
|
39
|
+
cucumber-js -f cucumberjs-qase-reporter --format-options='{\"qaseConfig\": \"./.qaserc\"}' features -r examples/zombie/support -r examples/zombie/steps
|
|
42
40
|
|
|
41
|
+
```
|
|
42
|
+

|
|
43
|
+
A test run will be performed and available at:
|
|
44
|
+
```
|
|
45
|
+
https://app.qase.io/run/<projectCode>
|
|
46
|
+
```
|
|
43
47
|
## Configuration
|
|
44
48
|
|
|
45
49
|
Qase reporter supports passing parameters using two ways:
|
|
@@ -47,6 +51,8 @@ using `.qaserc` file and using ENV variables.
|
|
|
47
51
|
|
|
48
52
|
`.qaserc` parameters:
|
|
49
53
|
- `enabled` - Enable reporter
|
|
54
|
+
- `basePath` - URL Qase.io
|
|
55
|
+
- `environmentId` - To execute with the sending of the envinroment information
|
|
50
56
|
- `apiToken` - Token for API access, you can find more information
|
|
51
57
|
[here](https://developers.qase.io/#authentication)
|
|
52
58
|
- `projectCode` - Code of your project (can be extracted from main
|
|
@@ -62,24 +68,33 @@ using `.qaserc` file and using ENV variables.
|
|
|
62
68
|
Example configuration file:
|
|
63
69
|
```json
|
|
64
70
|
{
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
71
|
+
"enabled": true,
|
|
72
|
+
"logging": true,
|
|
73
|
+
"apiToken": "api_key",
|
|
74
|
+
"projectCode": "project_code",
|
|
75
|
+
"runName": "CucumberJS run %DATE%",
|
|
76
|
+
"environmentId": 1,
|
|
77
|
+
"basePath": "https://api.qase.io/v1"
|
|
70
78
|
}
|
|
71
79
|
```
|
|
72
80
|
|
|
73
81
|
Supported ENV variables:
|
|
74
82
|
|
|
75
83
|
- `QASE_ENABLED` - Same as `enabled`
|
|
84
|
+
- `QASE_API_BASE_URL` - Same as `basePath`
|
|
76
85
|
- `QASE_API_TOKEN` - Same as `apiToken`
|
|
77
86
|
- `QASE_PROJECT` - Same as `projectCode`
|
|
78
87
|
- `QASE_RUN_ID` - Pass Run ID from ENV and override reporter options
|
|
79
88
|
- `QASE_RUN_NAME` - Same as `runName`
|
|
80
89
|
- `QASE_RUN_DESCRIPTION` - Same as `runDescription`
|
|
90
|
+
- `QASE_ENVIRONMENT_ID` - Same as `environmentId`
|
|
81
91
|
- `QASE_LOGGING` - Same as `logging`
|
|
82
92
|
|
|
93
|
+
To run using ENV you have to execute:
|
|
94
|
+
```bash
|
|
95
|
+
cucumber-js -f cucumberjs-qase-reporter features
|
|
96
|
+
```
|
|
97
|
+
|
|
83
98
|
## Setup with Protractor
|
|
84
99
|
|
|
85
100
|
Due to different configurations of protractor and cucumber itself you should install a bit more libraries:
|
|
@@ -105,3 +120,7 @@ exports.config = {
|
|
|
105
120
|
```
|
|
106
121
|
|
|
107
122
|
**Do not forget to add .qaserc file!**
|
|
123
|
+
|
|
124
|
+
<!-- references -->
|
|
125
|
+
|
|
126
|
+
[auth]: https://developers.qase.io/#authentication
|
package/dist/index.d.ts
CHANGED
|
@@ -17,10 +17,13 @@ declare class QaseReporter extends Formatter {
|
|
|
17
17
|
private _log;
|
|
18
18
|
private checkProject;
|
|
19
19
|
private createRun;
|
|
20
|
+
private createRunObject;
|
|
20
21
|
private checkRun;
|
|
21
22
|
private saveRunId;
|
|
22
23
|
private logTestItem;
|
|
23
24
|
private publishCaseResult;
|
|
24
25
|
private extractIds;
|
|
26
|
+
private createHeaders;
|
|
27
|
+
private getPackageVersion;
|
|
25
28
|
}
|
|
26
29
|
export = QaseReporter;
|
package/dist/index.js
CHANGED
|
@@ -2,20 +2,22 @@
|
|
|
2
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
|
+
/* eslint-disable camelcase */
|
|
5
6
|
/* eslint-disable no-console,no-underscore-dangle,@typescript-eslint/no-non-null-assertion */
|
|
6
|
-
const
|
|
7
|
+
const src_1 = require("qaseio/dist/src");
|
|
7
8
|
const cucumber_1 = require("@cucumber/cucumber");
|
|
8
9
|
const qaseio_1 = require("qaseio");
|
|
9
10
|
const chalk_1 = __importDefault(require("chalk"));
|
|
11
|
+
const child_process_1 = require("child_process");
|
|
10
12
|
const fs_1 = __importDefault(require("fs"));
|
|
11
13
|
const messages_1 = require("@cucumber/messages/dist/src/messages");
|
|
12
14
|
const moment_1 = __importDefault(require("moment"));
|
|
13
15
|
const path_1 = __importDefault(require("path"));
|
|
14
16
|
var Status = messages_1.io.cucumber.messages.TestStepFinished.TestStepResult.Status;
|
|
15
17
|
const StatusMapping = {
|
|
16
|
-
[Status.PASSED]:
|
|
17
|
-
[Status.FAILED]:
|
|
18
|
-
[Status.SKIPPED]:
|
|
18
|
+
[Status.PASSED]: src_1.ResultCreateStatusEnum.PASSED,
|
|
19
|
+
[Status.FAILED]: src_1.ResultCreateStatusEnum.FAILED,
|
|
20
|
+
[Status.SKIPPED]: src_1.ResultCreateStatusEnum.SKIPPED,
|
|
19
21
|
[Status.AMBIGUOUS]: null,
|
|
20
22
|
[Status.PENDING]: null,
|
|
21
23
|
[Status.UNDEFINED]: null,
|
|
@@ -42,12 +44,12 @@ const prepareConfig = (options = {}, configFile = '.qaserc') => {
|
|
|
42
44
|
const config = Object.assign(loaded || {}, options);
|
|
43
45
|
return {
|
|
44
46
|
enabled: process.env.QASE_ENABLED === 'true' || config.enabled || false,
|
|
45
|
-
|
|
47
|
+
basePath: process.env.QASE_API_BASE_URL || config.basePath,
|
|
48
|
+
apiToken: process.env.QASE_API_TOKEN || config.apiToken || '',
|
|
49
|
+
environmentId: Number.parseInt(process.env.QASE_ENVIRONMENT_ID, 10) || config.environmentId,
|
|
46
50
|
projectCode: process.env.QASE_PROJECT || config.projectCode || '',
|
|
47
51
|
runId: process.env.QASE_RUN_ID || config.runId || '',
|
|
48
|
-
runName: process.env.QASE_RUN_NAME ||
|
|
49
|
-
config.runName ||
|
|
50
|
-
'Automated Run %DATE%',
|
|
52
|
+
runName: process.env.QASE_RUN_NAME || config.runName || 'Automated Run %DATE%',
|
|
51
53
|
runDescription: process.env.QASE_RUN_DESCRIPTION || config.runDescription,
|
|
52
54
|
logging: process.env.QASE_LOGGING !== '' || config.logging,
|
|
53
55
|
};
|
|
@@ -83,7 +85,7 @@ class QaseReporter extends cucumber_1.Formatter {
|
|
|
83
85
|
this.shouldPublish = 0;
|
|
84
86
|
this.config = prepareConfig(options.parsedArgvOptions, (_a = options.parsedArgvOptions) === null || _a === void 0 ? void 0 : _a.qaseConfig);
|
|
85
87
|
this.enabled = verifyConfig(this.config);
|
|
86
|
-
this.api = new qaseio_1.QaseApi(this.config.apiToken);
|
|
88
|
+
this.api = new qaseio_1.QaseApi(this.config.apiToken, this.config.basePath, this.createHeaders());
|
|
87
89
|
if (!this.enabled) {
|
|
88
90
|
return;
|
|
89
91
|
}
|
|
@@ -97,13 +99,13 @@ class QaseReporter extends cucumber_1.Formatter {
|
|
|
97
99
|
};
|
|
98
100
|
}
|
|
99
101
|
else if (envelope.testRunStarted) {
|
|
100
|
-
this.checkProject(this.config.projectCode, (prjExists) => {
|
|
102
|
+
void this.checkProject(this.config.projectCode, async (prjExists) => {
|
|
101
103
|
if (prjExists) {
|
|
102
104
|
this._log(chalk_1.default `{green Project ${this.config.projectCode} exists}`);
|
|
103
105
|
const willRun = Object.keys(this.pickleInfo).length !== 0;
|
|
104
106
|
if (this.config.runId && willRun) {
|
|
105
107
|
this.saveRunId(this.config.runId);
|
|
106
|
-
this.checkRun(this.config.runId, (runExists) => {
|
|
108
|
+
return this.checkRun(this.config.runId, (runExists) => {
|
|
107
109
|
const run = this.config.runId;
|
|
108
110
|
if (runExists) {
|
|
109
111
|
this._log(chalk_1.default `{green Using run ${run} to publish test results}`);
|
|
@@ -114,9 +116,10 @@ class QaseReporter extends cucumber_1.Formatter {
|
|
|
114
116
|
});
|
|
115
117
|
}
|
|
116
118
|
else if (!this.config.runId && willRun) {
|
|
117
|
-
this.createRun(this.config.runName, this.config.runDescription, (created) => {
|
|
119
|
+
return this.createRun(this.config.runName, this.config.runDescription, (created) => {
|
|
120
|
+
var _a;
|
|
118
121
|
if (created) {
|
|
119
|
-
this.saveRunId(created.id);
|
|
122
|
+
this.saveRunId((_a = created.result) === null || _a === void 0 ? void 0 : _a.id);
|
|
120
123
|
this._log(
|
|
121
124
|
// eslint-disable-next-line max-len
|
|
122
125
|
chalk_1.default `{green Using run ${this.config.runId} to publish test results}`);
|
|
@@ -153,7 +156,7 @@ class QaseReporter extends cucumber_1.Formatter {
|
|
|
153
156
|
}
|
|
154
157
|
else if (envelope.testCaseStarted) {
|
|
155
158
|
this.testCaseStarts[envelope.testCaseStarted.id] = envelope.testCaseStarted;
|
|
156
|
-
this.testCaseStartedResult[envelope.testCaseStarted.id] =
|
|
159
|
+
this.testCaseStartedResult[envelope.testCaseStarted.id] = src_1.ResultCreateStatusEnum.PASSED;
|
|
157
160
|
}
|
|
158
161
|
else if (envelope.testStepFinished) {
|
|
159
162
|
const stepFin = envelope.testStepFinished;
|
|
@@ -167,10 +170,10 @@ class QaseReporter extends cucumber_1.Formatter {
|
|
|
167
170
|
chalk_1.default `{redBright Unexpected finish status ${stepStatus} received for step ${stepMessage}}`);
|
|
168
171
|
return;
|
|
169
172
|
}
|
|
170
|
-
if (newStatus !==
|
|
173
|
+
if (newStatus !== src_1.ResultCreateStatusEnum.PASSED) {
|
|
171
174
|
this.addErrorMessage(stepFin.testCaseStartedId, (_a = stepFin.testStepResult) === null || _a === void 0 ? void 0 : _a.message);
|
|
172
175
|
if (oldStatus) {
|
|
173
|
-
if (oldStatus !==
|
|
176
|
+
if (oldStatus !== src_1.ResultCreateStatusEnum.FAILED && newStatus) {
|
|
174
177
|
this.testCaseStartedResult[stepFin.testCaseStartedId] = newStatus;
|
|
175
178
|
}
|
|
176
179
|
}
|
|
@@ -217,32 +220,50 @@ class QaseReporter extends cucumber_1.Formatter {
|
|
|
217
220
|
console.log(chalk_1.default `{bold {blue qase:}} ${message}`, ...optionalParams);
|
|
218
221
|
}
|
|
219
222
|
}
|
|
220
|
-
checkProject(projectCode, cb) {
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
.
|
|
223
|
+
async checkProject(projectCode, cb) {
|
|
224
|
+
var _a;
|
|
225
|
+
try {
|
|
226
|
+
const resp = await this.api.projects.getProject(projectCode);
|
|
227
|
+
await cb(Boolean((_a = resp.data.result) === null || _a === void 0 ? void 0 : _a.code));
|
|
228
|
+
}
|
|
229
|
+
catch (err) {
|
|
224
230
|
this._log(err);
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
createRun(name, description, cb) {
|
|
228
|
-
this.api.runs.create(this.config.projectCode, new models_1.RunCreate(name || `Automated run ${new Date().toISOString()}`, [], { description: description || 'Cypress automated run' }))
|
|
229
|
-
.then((res) => res.data)
|
|
230
|
-
.then(cb)
|
|
231
|
-
.catch((err) => {
|
|
232
|
-
this._log(`Error on creating run ${err}`);
|
|
233
|
-
});
|
|
231
|
+
this.enabled = false;
|
|
232
|
+
}
|
|
234
233
|
}
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
this.
|
|
238
|
-
|
|
239
|
-
.
|
|
240
|
-
|
|
234
|
+
async createRun(name, description, cb) {
|
|
235
|
+
try {
|
|
236
|
+
const runObject = this.createRunObject(name || `Automated run ${new Date().toISOString()}`, [], {
|
|
237
|
+
description: description || 'CucumberJS automated run',
|
|
238
|
+
environment_id: this.config.environmentId,
|
|
239
|
+
is_autotest: true,
|
|
241
240
|
});
|
|
241
|
+
const res = await this.api.runs.createRun(this.config.projectCode, runObject);
|
|
242
|
+
cb(res.data);
|
|
243
|
+
}
|
|
244
|
+
catch (err) {
|
|
245
|
+
this._log(`Error on creating run ${err}`);
|
|
246
|
+
this.enabled = false;
|
|
242
247
|
}
|
|
243
|
-
|
|
248
|
+
}
|
|
249
|
+
createRunObject(name, cases, args) {
|
|
250
|
+
return Object.assign({ title: name, cases }, args);
|
|
251
|
+
}
|
|
252
|
+
async checkRun(runId, cb) {
|
|
253
|
+
if (runId === undefined) {
|
|
244
254
|
cb(false);
|
|
255
|
+
return;
|
|
245
256
|
}
|
|
257
|
+
return this.api.runs.getRun(this.config.projectCode, Number(runId))
|
|
258
|
+
.then((resp) => {
|
|
259
|
+
var _a, _b;
|
|
260
|
+
this._log(`Get run result on checking run ${(_a = resp.data.result) === null || _a === void 0 ? void 0 : _a.id}`);
|
|
261
|
+
cb(Boolean((_b = resp.data.result) === null || _b === void 0 ? void 0 : _b.id));
|
|
262
|
+
})
|
|
263
|
+
.catch((err) => {
|
|
264
|
+
this._log(`Error on checking run ${err}`);
|
|
265
|
+
this.enabled = false;
|
|
266
|
+
});
|
|
246
267
|
}
|
|
247
268
|
saveRunId(runId) {
|
|
248
269
|
this.config.runId = runId;
|
|
@@ -275,15 +296,16 @@ class QaseReporter extends cucumber_1.Formatter {
|
|
|
275
296
|
if (caseId) {
|
|
276
297
|
const add = caseIds.length > 1 ? chalk_1.default ` {white For case ${caseId}}` : '';
|
|
277
298
|
this._log(chalk_1.default `{gray Start publishing: ${test.name}}${add}`);
|
|
278
|
-
|
|
299
|
+
this.api.results.createResult(this.config.projectCode, Number(runId), {
|
|
300
|
+
status,
|
|
301
|
+
case_id: parseInt(caseId, 10),
|
|
279
302
|
time: test.duration,
|
|
280
303
|
stacktrace: test.error,
|
|
281
304
|
comment: test.error ? test.error.split('\n')[0] : undefined,
|
|
282
|
-
})
|
|
283
|
-
this.api.results.create(this.config.projectCode, runId, result)
|
|
305
|
+
})
|
|
284
306
|
.then((res) => {
|
|
285
307
|
this.results.push({ test, result: res.data });
|
|
286
|
-
this._log(chalk_1.default `{gray Result published: ${test.name} ${
|
|
308
|
+
this._log(chalk_1.default `{gray Result published: ${test.name} ${caseId}}${add}`);
|
|
287
309
|
this.shouldPublish--;
|
|
288
310
|
})
|
|
289
311
|
.catch((err) => {
|
|
@@ -304,6 +326,42 @@ class QaseReporter extends cucumber_1.Formatter {
|
|
|
304
326
|
const regex = /[Qq]-*(\d+)/;
|
|
305
327
|
return tagsList.filter((tagInfo) => regex.test(tagInfo.name)).map((tagInfo) => regex.exec(tagInfo.name)[1]);
|
|
306
328
|
}
|
|
329
|
+
createHeaders() {
|
|
330
|
+
const { version: nodeVersion, platform: os, arch } = process;
|
|
331
|
+
const npmVersion = child_process_1.execSync('npm -v', { encoding: 'utf8' }).replace(/['"\n]+/g, '');
|
|
332
|
+
const qaseapiVersion = this.getPackageVersion('qaseio');
|
|
333
|
+
const frameworkVersion = this.getPackageVersion('@cucumber/cucumber');
|
|
334
|
+
const reporterVersion = this.getPackageVersion('cucumberjs-qase-reporter');
|
|
335
|
+
const xPlatformHeader = `node=${nodeVersion};npm=${npmVersion};os=${os};arch=${arch}`;
|
|
336
|
+
// eslint-disable-next-line max-len
|
|
337
|
+
const xClientHeader = `cucumberjs=${frameworkVersion};qase-cucumberjs=${reporterVersion};qaseapi=${qaseapiVersion}`;
|
|
338
|
+
return {
|
|
339
|
+
'X-Client': xClientHeader,
|
|
340
|
+
'X-Platform': xPlatformHeader,
|
|
341
|
+
};
|
|
342
|
+
}
|
|
343
|
+
getPackageVersion(name) {
|
|
344
|
+
const UNDEFINED = 'undefined';
|
|
345
|
+
try {
|
|
346
|
+
const pathToPackageJson = require.resolve(`${name}/package.json`, { paths: [process.cwd()] });
|
|
347
|
+
if (pathToPackageJson) {
|
|
348
|
+
try {
|
|
349
|
+
const packageString = fs_1.default.readFileSync(pathToPackageJson, { encoding: 'utf8' });
|
|
350
|
+
if (packageString) {
|
|
351
|
+
const packageObject = JSON.parse(packageString);
|
|
352
|
+
return packageObject.version;
|
|
353
|
+
}
|
|
354
|
+
return UNDEFINED;
|
|
355
|
+
}
|
|
356
|
+
catch (error) {
|
|
357
|
+
return UNDEFINED;
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
catch (error) {
|
|
362
|
+
return UNDEFINED;
|
|
363
|
+
}
|
|
364
|
+
}
|
|
307
365
|
}
|
|
308
366
|
module.exports = QaseReporter;
|
|
309
367
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,8BAA8B;AAC9B,6FAA6F;AAC7F,yCAAmE;AACnE,iDAA6C;AAE7C,mCAA+B;AAC/B,kDAA0B;AAC1B,iDAAuC;AACvC,4CAAoB;AACpB,mEAAwD;AACxD,oDAA4B;AAC5B,gDAAwB;AAIxB,IAAO,MAAM,GAAG,aAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,cAAc,CAAC,MAAM,CAAC;AAuB5E,MAAM,aAAa,GAAkD;IACjE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,4BAAsB,CAAC,MAAM;IAC9C,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,4BAAsB,CAAC,MAAM;IAC9C,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,4BAAsB,CAAC,OAAO;IAChD,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI;IACxB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI;IACtB,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI;IACxB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI;CACzB,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAsB,EAAE;IAClD,IAAI;QACA,MAAM,IAAI,GAAG,YAAE,CAAC,YAAY,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,MAAM,EAAC,CAAC,CAAC;QAEvD,IAAI,IAAI,EAAE;YACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAW,CAAC;SACrC;KACJ;IAAC,OAAO,KAAK,EAAE;QACZ,0DAA0D;KAC7D;IAED,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,UAAkB,EAAY,EAAE,UAAU,GAAG,SAAS,EAAU,EAAE;IACrF,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC;IAC3E,IAAI,CAAC,MAAM,EAAE;QACT,4CAA4C;QAC5C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAA,gDAAgD,CAAC,CAAC;KACtE;IACD,MAAM,MAAM,GAAW,MAAM,CAAC,MAAM,CAChC,MAAM,IAAI,EAAE,EACZ,OAAO,CACV,CAAC;IAEF,OAAO;QACH,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,KAAK;QACvE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,MAAM,CAAC,QAAQ;QAC1D,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE;QAC7D,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAoB,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,aAAa;QAC5F,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,MAAM,CAAC,WAAW,IAAI,EAAE;QACjE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE;QACpD,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,MAAM,CAAC,OAAO,IAAI,sBAAsB;QAC9E,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,MAAM,CAAC,cAAc;QACzE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,EAAE,IAAI,MAAM,CAAC,OAAO;KAC7D,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CACtB,MAAc,EAChB,EAAE;IACA,MAAM,IAAI,GAAG,gBAAM,EAAE,CAAC,MAAM,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,OAAO;SAChB,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,EAAE;IACpC,MAAM,EAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAC,GAAG,MAAM,CAAC;IAChD,IAAI,OAAO,EAAE;QACT,IAAI,CAAC,WAAW,EAAE;YACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAA,2DAA2D,CAAC,CAAC;SACjF;QACD,IAAI,QAAQ,IAAI,WAAW,EAAE;YACzB,OAAO,IAAI,CAAC;SACf;KACJ;IAED,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,YAAa,SAAQ,oBAAS;IAchC,YAAmB,OAA0B;;QACzC,KAAK,CAAC,OAAO,CAAC,CAAC;QAVX,eAAU,GAAqD,EAAE,CAAC;QAClE,mBAAc,GAAqC,EAAE,CAAC;QACtD,0BAAqB,GAA2C,EAAE,CAAC;QACnE,0BAAqB,GAA6B,EAAE,CAAC;QACrD,uBAAkB,GAA2B,EAAE,CAAC;QAChD,YAAO,GAA4C,EAAE,CAAC;QACtD,YAAO,GAAqC,EAAE,CAAC;QAC/C,kBAAa,GAAG,CAAC,CAAC;QAItB,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,iBAA2B,QAAE,OAAO,CAAC,iBAAiB,0CAAE,UAAU,CAAC,CAAC;QACxG,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,GAAG,GAAG,IAAI,gBAAO,CAClB,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,IAAI,CAAC,aAAa,EAAE,CACvB,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,OAAO;SACV;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAErD,OAAO,CAAC,gBAAgB;aACnB,EAAE,CAAC,UAAU,EAAE,CAAC,QAAmB,EAAE,EAAE;;YACpC,IAAI,QAAQ,CAAC,MAAM,EAAE;gBACjB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAG,CAAC,GAAG;oBACnC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAK;iBAC5E,CAAC;aACL;iBAAM,IAAI,QAAQ,CAAC,cAAc,EAAE;gBAChC,KAAK,IAAI,CAAC,YAAY,CAClB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,KAAK,EAAE,SAAS,EAAiB,EAAE;oBAC/B,IAAI,SAAS,EAAE;wBACX,IAAI,CAAC,IAAI,CAAC,eAAK,CAAA,kBAAkB,IAAI,CAAC,MAAM,CAAC,WAAW,UAAU,CAAC,CAAC;wBACpE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;wBAC1D,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,OAAO,EAAE;4BAC9B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;4BAClC,OAAO,IAAI,CAAC,QAAQ,CAChB,IAAI,CAAC,MAAM,CAAC,KAAK,EACjB,CAAC,SAAkB,EAAE,EAAE;gCACnB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAA0B,CAAC;gCACnD,IAAI,SAAS,EAAE;oCACX,IAAI,CAAC,IAAI,CAAC,eAAK,CAAA,oBAAoB,GAAG,2BAA2B,CAAC,CAAC;iCACtE;qCAAM;oCACH,IAAI,CAAC,IAAI,CAAC,eAAK,CAAA,YAAY,GAAG,kBAAkB,CAAC,CAAC;iCACrD;4BACL,CAAC,CACJ,CAAC;yBACL;6BAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,OAAO,EAAE;4BACtC,OAAO,IAAI,CAAC,SAAS,CACjB,IAAI,CAAC,MAAM,CAAC,OAAO,EACnB,IAAI,CAAC,MAAM,CAAC,cAAc,EAC1B,CAAC,OAAO,EAAE,EAAE;;gCACR,IAAI,OAAO,EAAE;oCACT,IAAI,CAAC,SAAS,OAAC,OAAO,CAAC,MAAM,0CAAE,EAAE,CAAC,CAAC;oCACnC,IAAI,CAAC,IAAI;oCACL,mCAAmC;oCACnC,eAAK,CAAA,oBAAoB,IAAI,CAAC,MAAM,CAAC,KAA0B,2BAA2B,CAC7F,CAAC;iCACL;qCAAM;oCACH,IAAI,CAAC,IAAI;oCACL,mCAAmC;oCACnC,eAAK,CAAA,wCAAwC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAC1E,CAAC;iCACL;4BACL,CAAC,CACJ,CAAC;yBACL;6BAAM,IAAI,CAAC,OAAO,EAAE;4BACjB,IAAI,CAAC,IAAI,CAAC,eAAK,CAAA,kCAAkC,CAAC,CAAC;yBACtD;qBACJ;yBAAM;wBACH,IAAI,CAAC,IAAI,CAAC,eAAK,CAAA,gBAAgB,IAAI,CAAC,MAAM,CAAC,WAAW,kBAAkB,CAAC,CAAC;qBAC7E;gBACL,CAAC,CACJ,CAAC;aACL;iBAAM,IAAI,QAAQ,CAAC,eAAe,EAAE;gBACjC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,KAAK,CAAC,EAAE;oBACvD,IAAI,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;iBAC1F;gBACD,IAAI,QAAQ,CAAC,eAAe,CAAC,OAAO,EAAE;oBAClC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;iBACjC;qBAAM;oBACH,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;iBACrC;aACJ;iBAAM,IAAI,QAAQ,CAAC,QAAQ,EAAE;gBAC1B,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAG,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAS,CAAC;aAChF;iBAAM,IAAI,QAAQ,CAAC,eAAe,EAAE;gBACjC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAG,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC;gBAC7E,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAG,CAAC,GAAG,4BAAsB,CAAC,MAAM,CAAC;aAC5F;iBAAM,IAAI,QAAQ,CAAC,gBAAgB,EAAE;gBAClC,MAAM,OAAO,GAAG,QAAQ,CAAC,gBAAgB,CAAC;gBAC1C,MAAM,UAAU,GAAG,OAAO,CAAC,cAAe,CAAC,MAAO,CAAC;gBACnD,MAAM,WAAW,GAAG,OAAO,CAAC,cAAe,CAAC,OAAQ,CAAC;gBACrD,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,iBAAkB,CAAC,CAAC;gBACzE,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,cAAe,CAAC,MAAO,CAAC,CAAC;gBACjE,IAAI,SAAS,KAAK,IAAI,EAAE;oBACpB,IAAI,CAAC,IAAI;oBACL,mCAAmC;oBACnC,eAAK,CAAA,uCAAuC,UAA+B,sBAAsB,WAAW,GAAG,CAClH,CAAC;oBACF,OAAO;iBACV;gBACD,IAAI,SAAS,KAAK,4BAAsB,CAAC,MAAM,EAAE;oBAC7C,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,iBAAkB,QAAE,OAAO,CAAC,cAAc,0CAAE,OAAO,CAAC,CAAC;oBAClF,IAAI,SAAS,EAAE;wBACX,IAAI,SAAS,KAAK,4BAAsB,CAAC,MAAM,IAAI,SAAS,EAAE;4BAC1D,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,iBAAkB,CAAC,GAAG,SAAS,CAAC;yBACtE;qBACJ;yBAAM;wBACH,IAAI,SAAS,EAAE;4BACX,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,iBAAkB,CAAC,GAAG,SAAS,CAAC;yBACtE;qBACJ;iBACJ;aACJ;iBAAM,IAAI,QAAQ,CAAC,gBAAgB,EAAE;gBAClC,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC,iBAAkB,CAAC,CAAC;gBAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAW,CAAC,CAAC;gBAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACvC,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,iBAAkB,CAAC,CAAC;gBACxF,MAAM,IAAI,GAAS;oBACf,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,OAAO,EAAE,GAAG;oBACZ,QAAQ,EAAE,QAAQ,CAAC,gBAAgB;oBACnC,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,qFAAqF;oBACrF,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAU,CAAC,OAAkB,GAAI,GAAG,CAAC,SAAU,CAAC,OAAmB,CAAC,CAAC;oBACnH,KAAK,QAAE,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAG,CAAC,0CAAE,IAAI,CAAC,MAAM,CAAC;iBAC3D,CAAC;gBACF,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;aACxC;iBAAM,IAAI,QAAQ,CAAC,UAAU,EAAE;gBAC5B,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;aAC9C;QACL,CAAC,CAAC,CAAC;IACX,CAAC;IAEO,eAAe,CAAC,KAAa,EAAE,KAAgC;QACnE,IAAI,KAAK,EAAE;YACP,IAAI,KAAK,IAAI,IAAI,CAAC,qBAAqB,EAAE;gBACrC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACjD;iBAAM;gBACH,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;aAC/C;SACJ;IACL,CAAC;IAEO,IAAI,CAAC,OAAa,EAAE,GAAG,cAAqB;QAChD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAC;YACpB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAA,uBAAuB,OAAO,EAAE,EAAE,GAAG,cAAc,CAAC,CAAC;SACzE;IACL,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,WAAmB,EAAE,EAAsC;;QAClF,IAAI;YACA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAE7D,MAAM,EAAE,CAAC,OAAO,OAAC,IAAI,CAAC,IAAI,CAAC,MAAM,0CAAE,IAAI,CAAC,CAAC,CAAC;SAC7C;QAAC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACf,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACxB;IACL,CAAC;IAEO,KAAK,CAAC,SAAS,CACnB,IAAwB,EACxB,WAA+B,EAC/B,EAAiC;QAEjC,IAAI;YACA,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAClC,IAAI,IAAI,iBAAiB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,EACnD,EAAE,EACF;gBACI,WAAW,EAAE,WAAW,IAAI,0BAA0B;gBACtD,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;gBACzC,WAAW,EAAE,IAAI;aACpB,CACJ,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CACrC,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,SAAS,CACZ,CAAC;YACF,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SAChB;QAAC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,yBAAyB,GAAa,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACxB;IACL,CAAC;IAEO,eAAe,CAAC,IAAY,EAAE,KAAe,EAAE,IAItD;QACG,uBACI,KAAK,EAAE,IAAI,EACX,KAAK,IACF,IAAI,EACT;IACN,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,KAAkC,EAAE,EAA6B;QACpF,IAAI,KAAK,KAAK,SAAS,EAAE;YACrB,EAAE,CAAC,KAAK,CAAC,CAAC;YACV,OAAO;SACV;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;aAC9D,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;;YACX,IAAI,CAAC,IAAI,CAAC,kCAAkC,MAAA,IAAI,CAAC,IAAI,CAAC,MAAM,0CAAE,EAAuB,EAAE,CAAC,CAAC;YACzF,EAAE,CAAC,OAAO,OAAC,IAAI,CAAC,IAAI,CAAC,MAAM,0CAAE,EAAE,CAAC,CAAC,CAAC;QACtC,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACX,IAAI,CAAC,IAAI,CAAC,yBAAyB,GAAa,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACzB,CAAC,CAAC,CAAC;IAEX,CAAC;IAEO,SAAS,CAAC,KAAuB;QACrC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAC1B,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YACnB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;gBACxB,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBACvD,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChC,IAAI,EAAE,EAAE;oBACJ,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;iBACzB;aACJ;SACJ;IACL,CAAC;IAEO,WAAW,CAAC,IAAY,EAAE,MAA8B;QAC5D,MAAM,GAAG,GAAG;YACR,MAAM,EAAE,eAAK,CAAA,aAAa,IAAI,IAAI,MAAM,GAAG;YAC3C,MAAM,EAAE,eAAK,CAAA,eAAe,IAAI,IAAI,MAAM,GAAG;YAC7C,OAAO,EAAE,eAAK,CAAA,oBAAoB,IAAI,IAAI,MAAM,GAAG;SACtD,CAAC;QACF,IAAI,MAAM,EAAE;YACR,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;SAC1B;IACL,CAAC;IAEO,iBAAiB,CAAC,IAAU,EAAE,MAA8B;QAChE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAEpC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;QAC1B,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YACvB,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,MAAM,WAAW,GAAG,CAAC,KAAsB,EAAE,EAAE;gBAC3C,IAAI,MAAM,EAAE;oBACR,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAK,CAAA,oBAAoB,MAAM,GAAG,CAAA,CAAC,CAAA,EAAE,CAAC;oBACvE,IAAI,CAAC,IAAI,CACL,eAAK,CAAA,2BAA2B,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,CACrD,CAAC;oBAEF,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE;wBAClE,MAAM;wBACN,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;wBAC7B,IAAI,EAAE,IAAI,CAAC,QAAQ;wBACnB,UAAU,EAAE,IAAI,CAAC,KAAK;wBACtB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,CAAA,SAAS;qBAC5D,CAAC;yBACG,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;wBACV,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,EAAC,CAAC,CAAC;wBAC5C,IAAI,CAAC,IAAI,CAAC,eAAK,CAAA,2BAA2B,IAAI,CAAC,IAAI,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC;wBACxE,IAAI,CAAC,aAAa,EAAE,CAAC;oBACzB,CAAC,CAAC;yBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;wBACX,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACf,IAAI,CAAC,aAAa,EAAE,CAAC;oBACzB,CAAC,CAAC,CAAC;iBACV;YACL,CAAC,CAAC;YAEF,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;gBACnB,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aAClC;iBAAM;gBACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;aAClC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,UAAU,CAAC,QAAkD;QACjE,MAAM,KAAK,GAAG,aAAa,CAAC;QAC5B,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAK,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACnH,CAAC;IAEO,aAAa;QACjB,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;QAC7D,MAAM,UAAU,GAAG,wBAAQ,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACpF,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAC;QACtE,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;QAC3E,MAAM,eAAe,GAAG,QAAQ,WAAW,QAAQ,UAAU,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC;QACtF,mCAAmC;QACnC,MAAM,aAAa,GAAG,cAAc,gBAA0B,oBAAoB,eAAyB,YAAY,cAAwB,EAAE,CAAC;QAElJ,OAAO;YACH,UAAU,EAAE,aAAa;YACzB,YAAY,EAAE,eAAe;SAChC,CAAC;IACN,CAAC;IAEO,iBAAiB,CAAC,IAAY;QAClC,MAAM,SAAS,GAAG,WAAW,CAAC;QAC9B,IAAI;YACA,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,eAAe,EAAE,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9F,IAAI,iBAAiB,EAAE;gBACnB,IAAI;oBACA,MAAM,aAAa,GAAG,YAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC/E,IAAI,aAAa,EAAE;wBACf,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAwB,CAAC;wBACvE,OAAO,aAAa,CAAC,OAAO,CAAC;qBAChC;oBACD,OAAO,SAAS,CAAC;iBACpB;gBAAC,OAAO,KAAK,EAAE;oBACZ,OAAO,SAAS,CAAC;iBACpB;aACJ;SACJ;QAAC,OAAO,KAAK,EAAE;YACZ,OAAO,SAAS,CAAC;SACpB;IACL,CAAC;CACJ;AAED,iBAAS,YAAY,CAAC"}
|