@iobroker/js-controller-cli 7.0.1 → 7.0.2-alpha.0-20241026-8055a2557
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/build/cjs/lib/setup/setupBackup.d.ts +9 -3
- package/build/cjs/lib/setup/setupBackup.js +81 -61
- package/build/cjs/lib/setup/setupBackup.js.map +3 -3
- package/build/cjs/lib/setup.js +3 -3
- package/build/cjs/lib/setup.js.map +2 -2
- package/build/esm/lib/setup/setupBackup.d.ts +9 -3
- package/build/esm/lib/setup/setupBackup.d.ts.map +1 -1
- package/build/esm/lib/setup/setupBackup.js +95 -65
- package/build/esm/lib/setup/setupBackup.js.map +1 -1
- package/build/esm/lib/setup.js +3 -3
- package/build/esm/lib/setup.js.map +1 -1
- package/build/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +4 -4
|
@@ -47,6 +47,8 @@ export declare class BackupRestore {
|
|
|
47
47
|
private readonly HOSTNAME_PLACEHOLDER_REPLACE;
|
|
48
48
|
/** Regex to replace all occurrences of the HOSTNAME_PLACEHOLDER */
|
|
49
49
|
private readonly HOSTNAME_PLACEHOLDER_REGEX;
|
|
50
|
+
/** Postfix for backup name */
|
|
51
|
+
private readonly BACKUP_POSTFIX;
|
|
50
52
|
constructor(options: CLIBackupRestoreOptions);
|
|
51
53
|
private _copyFile;
|
|
52
54
|
copyDir(id: string, srcPath: string, destPath: string): Promise<void>;
|
|
@@ -138,11 +140,11 @@ export declare class BackupRestore {
|
|
|
138
140
|
*/
|
|
139
141
|
listBackups(): string[];
|
|
140
142
|
/**
|
|
141
|
-
* Validates
|
|
143
|
+
* Validates a JSONL-style backup and all json files inside the backup (in temporary directory)
|
|
142
144
|
*
|
|
143
145
|
* @param noConfig if the backup does not contain a `config.json` (used by setup custom migration)
|
|
144
146
|
*/
|
|
145
|
-
private
|
|
147
|
+
private _validateTempDirectory;
|
|
146
148
|
/**
|
|
147
149
|
* Validate that the created JSONL files in the temporary directories are parseable
|
|
148
150
|
*/
|
|
@@ -152,7 +154,11 @@ export declare class BackupRestore {
|
|
|
152
154
|
*
|
|
153
155
|
* @param _name - index or name of the backup
|
|
154
156
|
*/
|
|
155
|
-
validateBackup(_name: string | number): Promise<void
|
|
157
|
+
validateBackup(_name: string | number): Promise<void>;
|
|
158
|
+
/**
|
|
159
|
+
* Validate an unpacked legacy backup in the temporary directory
|
|
160
|
+
*/
|
|
161
|
+
private _validateLegacyTempDir;
|
|
156
162
|
/**
|
|
157
163
|
* Checks a directory for json files and validates them, steps down recursive in subdirectories
|
|
158
164
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupBackup.d.ts","sourceRoot":"","sources":["../../../../src/lib/setup/setupBackup.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAS,MAAM,gCAAgC,CAAC;AAGnE,OAAO,KAAK,EAAE,MAAM,IAAI,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,KAAK,EAAE,MAAM,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAE/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAMjG,MAAM,WAAW,uBAAuB;IACpC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,WAAW,EAAE,mBAAmB,CAAC;IACjC,aAAa,EAAE,oBAAoB,CAAC;IACpC,iBAAiB,EAAE,iBAAiB,CAAC;CACxC;AAID,MAAM,WAAW,wBAAwB;IACrC,+BAA+B;IAC/B,QAAQ,EAAE,UAAU,CAAC;IACrB,iDAAiD;IACjD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,kDAAkD;IAClD,OAAO,EAAE,kBAAkB,CAAC;CAC/B;AA4BD,MAAM,WAAW,oBAAoB;IACjC,0CAA0C;IAC1C,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,iFAAiF;IACjF,KAAK,EAAE,OAAO,CAAC;IACf,gEAAgE;IAChE,kBAAkB,EAAE,OAAO,CAAC;CAC/B;AAID,qBAAa,aAAa;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmD;IAC1E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuD;IAC9E,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAyC;IACrE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA+C;IACjF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA2C;IACzE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAU;IACtC,oHAAoH;IACpH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkC;IACpE,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAW;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,gFAAgF;IAChF,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAsB;IAC3D,8DAA8D;IAC9D,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAA0B;IACvE,mEAAmE;IACnE,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAA2B;
|
|
1
|
+
{"version":3,"file":"setupBackup.d.ts","sourceRoot":"","sources":["../../../../src/lib/setup/setupBackup.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,8 @@ export class BackupRestore {
|
|
|
30
30
|
HOSTNAME_PLACEHOLDER_REPLACE = '$$$$__hostname__$$$$';
|
|
31
31
|
/** Regex to replace all occurrences of the HOSTNAME_PLACEHOLDER */
|
|
32
32
|
HOSTNAME_PLACEHOLDER_REGEX = /\$\$__hostname__\$\$/g;
|
|
33
|
+
/** Postfix for backup name */
|
|
34
|
+
BACKUP_POSTFIX = `_backup${tools.appNameLowerCase}`;
|
|
33
35
|
constructor(options) {
|
|
34
36
|
options = options || {};
|
|
35
37
|
if (!options.states) {
|
|
@@ -185,7 +187,10 @@ export class BackupRestore {
|
|
|
185
187
|
async createBackup(name, noConfig = false) {
|
|
186
188
|
if (!name) {
|
|
187
189
|
const d = new Date();
|
|
188
|
-
name = `${d.getFullYear()}_${`0${d.getMonth() + 1}`.slice(-2)}_${`0${d.getDate()}`.slice(-2)}-${`0${d.getHours()}`.slice(-2)}_${`0${d.getMinutes()}`.slice(-2)}_${`0${d.getSeconds()}`.slice(-2)}
|
|
190
|
+
name = `${d.getFullYear()}_${`0${d.getMonth() + 1}`.slice(-2)}_${`0${d.getDate()}`.slice(-2)}-${`0${d.getHours()}`.slice(-2)}_${`0${d.getMinutes()}`.slice(-2)}_${`0${d.getSeconds()}`.slice(-2)}${this.BACKUP_POSTFIX}`;
|
|
191
|
+
}
|
|
192
|
+
else if (!name.endsWith(this.BACKUP_POSTFIX) && !name.endsWith(`${this.BACKUP_POSTFIX}.tar.gz`)) {
|
|
193
|
+
name += this.BACKUP_POSTFIX;
|
|
189
194
|
}
|
|
190
195
|
name = name.toString().replace(/\\/g, '/');
|
|
191
196
|
if (!name.includes('/')) {
|
|
@@ -270,7 +275,7 @@ export class BackupRestore {
|
|
|
270
275
|
}
|
|
271
276
|
console.log(`host.${hostname} Validating backup ...`);
|
|
272
277
|
try {
|
|
273
|
-
await this.
|
|
278
|
+
await this._validateTempDirectory(noConfig);
|
|
274
279
|
console.log(`host.${hostname} The backup is valid!`);
|
|
275
280
|
return await this._packBackup(name);
|
|
276
281
|
}
|
|
@@ -534,8 +539,13 @@ export class BackupRestore {
|
|
|
534
539
|
const { force, dontDeleteAdapters } = options;
|
|
535
540
|
const hostname = tools.getHostName();
|
|
536
541
|
const backupBaseDir = path.join(this.tmpDir, 'backup');
|
|
537
|
-
|
|
538
|
-
|
|
542
|
+
let backupHostName = hostname;
|
|
543
|
+
// Note: on backups created during migration no config exists
|
|
544
|
+
let config;
|
|
545
|
+
if (await fs.pathExists(path.join(backupBaseDir, 'config.json'))) {
|
|
546
|
+
config = (await fs.readJSON(path.join(backupBaseDir, 'config.json')));
|
|
547
|
+
backupHostName = config.system?.hostname || hostname;
|
|
548
|
+
}
|
|
539
549
|
// we need to find the host obj for the compatibility check
|
|
540
550
|
const objFd = await open(path.join(backupBaseDir, 'objects.jsonl'));
|
|
541
551
|
const rlObj = objFd.readLines();
|
|
@@ -560,8 +570,10 @@ export class BackupRestore {
|
|
|
560
570
|
await this._removeAllAdapters();
|
|
561
571
|
}
|
|
562
572
|
// restore ioBroker.json
|
|
563
|
-
|
|
564
|
-
|
|
573
|
+
if (config) {
|
|
574
|
+
fs.writeFileSync(tools.getConfigFileName(), JSON.stringify(config, null, 2));
|
|
575
|
+
await this.connectToNewDatabase(config);
|
|
576
|
+
}
|
|
565
577
|
console.log(`host.${hostname} Clear all objects and states...`);
|
|
566
578
|
await this.cleanDatabase(false);
|
|
567
579
|
console.log(`host.${hostname} done.`);
|
|
@@ -597,7 +609,7 @@ export class BackupRestore {
|
|
|
597
609
|
async _restoreAfterStop(options) {
|
|
598
610
|
const { force, restartOnFinish, dontDeleteAdapters } = options;
|
|
599
611
|
const backupBaseDir = path.join(this.tmpDir, 'backup');
|
|
600
|
-
const isJsonl = await fs.pathExists(path.join(backupBaseDir, '
|
|
612
|
+
const isJsonl = await fs.pathExists(path.join(backupBaseDir, 'objects.jsonl'));
|
|
601
613
|
if (isJsonl) {
|
|
602
614
|
const exitCode = await this._restoreJsonlBackup(options);
|
|
603
615
|
if (exitCode !== EXIT_CODES.NO_ERROR) {
|
|
@@ -774,22 +786,26 @@ export class BackupRestore {
|
|
|
774
786
|
return result;
|
|
775
787
|
}
|
|
776
788
|
/**
|
|
777
|
-
* Validates
|
|
789
|
+
* Validates a JSONL-style backup and all json files inside the backup (in temporary directory)
|
|
778
790
|
*
|
|
779
791
|
* @param noConfig if the backup does not contain a `config.json` (used by setup custom migration)
|
|
780
792
|
*/
|
|
781
|
-
async
|
|
793
|
+
async _validateTempDirectory(noConfig = false) {
|
|
782
794
|
const backupBaseDir = path.join(this.tmpDir, 'backup');
|
|
783
795
|
if (!noConfig) {
|
|
784
796
|
await fs.readJSON(path.join(backupBaseDir, 'config.json'));
|
|
797
|
+
console.log(`host.${this.hostname} "config.json" is valid`);
|
|
785
798
|
}
|
|
786
799
|
if (!(await fs.pathExists(path.join(backupBaseDir, 'objects.jsonl')))) {
|
|
787
800
|
throw new Error('Backup does not contain valid objects');
|
|
788
801
|
}
|
|
802
|
+
console.log(`host.${this.hostname} "objects.jsonl" exists`);
|
|
789
803
|
if (!(await fs.pathExists(path.join(backupBaseDir, 'states.jsonl')))) {
|
|
790
804
|
throw new Error('Backup does not contain valid states');
|
|
791
805
|
}
|
|
806
|
+
console.log(`host.${this.hostname} "states.jsonl" exists`);
|
|
792
807
|
await this._validateDatabaseFiles();
|
|
808
|
+
console.log(`host.${this.hostname} JSONL lines are valid`);
|
|
793
809
|
// we check all other json files, we assume them as optional, because user created files may be no valid json
|
|
794
810
|
try {
|
|
795
811
|
this._checkDirectory(path.join(backupBaseDir, 'files'));
|
|
@@ -832,7 +848,7 @@ export class BackupRestore {
|
|
|
832
848
|
*
|
|
833
849
|
* @param _name - index or name of the backup
|
|
834
850
|
*/
|
|
835
|
-
validateBackup(_name) {
|
|
851
|
+
async validateBackup(_name) {
|
|
836
852
|
let backups;
|
|
837
853
|
let name = typeof _name === 'number' ? _name.toString() : _name;
|
|
838
854
|
if (!name) {
|
|
@@ -842,13 +858,13 @@ export class BackupRestore {
|
|
|
842
858
|
// List all available backups
|
|
843
859
|
console.log('Please specify one of the backup names:');
|
|
844
860
|
for (const t in backups) {
|
|
845
|
-
console.log(`${backups[t]} or ${backups[t].replace(
|
|
861
|
+
console.log(`${backups[t]} or ${backups[t].replace(`${this.BACKUP_POSTFIX}.tar.gz`, '')} or ${t}`);
|
|
846
862
|
}
|
|
847
863
|
}
|
|
848
864
|
else {
|
|
849
865
|
console.warn(`No backups found. Create a backup, using "${tools.appName} backup" first`);
|
|
850
866
|
}
|
|
851
|
-
|
|
867
|
+
throw new IoBrokerError({ message: 'Backup not found', code: EXIT_CODES.INVALID_ARGUMENTS });
|
|
852
868
|
}
|
|
853
869
|
// If number
|
|
854
870
|
if (parseInt(name, 10).toString() === name.toString()) {
|
|
@@ -860,22 +876,22 @@ export class BackupRestore {
|
|
|
860
876
|
if (backups.length) {
|
|
861
877
|
console.log('Please specify one of the backup names:');
|
|
862
878
|
for (const t in backups) {
|
|
863
|
-
console.log(`${backups[t]} or ${backups[t].replace(
|
|
879
|
+
console.log(`${backups[t]} or ${backups[t].replace(`${this.BACKUP_POSTFIX}.tar.gz`, '')} or ${t}`);
|
|
864
880
|
}
|
|
865
881
|
}
|
|
866
882
|
else {
|
|
867
883
|
console.log(`No existing backups. Create a backup, using "${tools.appName} backup" first`);
|
|
868
884
|
}
|
|
869
|
-
|
|
885
|
+
throw new IoBrokerError({ message: 'Backup not found', code: EXIT_CODES.INVALID_ARGUMENTS });
|
|
870
886
|
}
|
|
871
887
|
console.log(`host.${this.hostname} Using backup file ${name}`);
|
|
872
888
|
}
|
|
873
889
|
name = name.toString().replace(/\\/g, '/');
|
|
874
890
|
if (!name.includes('/')) {
|
|
875
891
|
name = BackupRestore.getBackupDir() + name;
|
|
876
|
-
const regEx = new RegExp(
|
|
892
|
+
const regEx = new RegExp(this.BACKUP_POSTFIX, 'i');
|
|
877
893
|
if (!regEx.test(name)) {
|
|
878
|
-
name +=
|
|
894
|
+
name += this.BACKUP_POSTFIX;
|
|
879
895
|
}
|
|
880
896
|
if (!name.match(/\.tar\.gz$/i)) {
|
|
881
897
|
name += '.tar.gz';
|
|
@@ -883,56 +899,70 @@ export class BackupRestore {
|
|
|
883
899
|
}
|
|
884
900
|
if (!fs.existsSync(name)) {
|
|
885
901
|
console.error(`host.${this.hostname} Cannot find ${name}`);
|
|
886
|
-
|
|
902
|
+
throw new IoBrokerError({ message: 'Backup not found', code: EXIT_CODES.INVALID_ARGUMENTS });
|
|
887
903
|
}
|
|
888
904
|
if (fs.existsSync(`${this.tmpDir}/backup/backup.json`)) {
|
|
889
905
|
fs.unlinkSync(`${this.tmpDir}/backup/backup.json`);
|
|
890
906
|
}
|
|
891
|
-
|
|
892
|
-
tar.extract({
|
|
907
|
+
try {
|
|
908
|
+
await tar.extract({
|
|
893
909
|
file: name,
|
|
894
910
|
cwd: this.tmpDir,
|
|
895
|
-
}, undefined, err => {
|
|
896
|
-
if (err) {
|
|
897
|
-
console.error(`host.${this.hostname} Cannot extract from file "${name}": ${err.message}`);
|
|
898
|
-
return void this.processExit(EXIT_CODES.INVALID_ARGUMENTS);
|
|
899
|
-
}
|
|
900
|
-
if (!fs.existsSync(`${this.tmpDir}/backup/backup.json`)) {
|
|
901
|
-
console.error(`host.${this.hostname} Validation failed. Cannot find extracted file from file "${this.tmpDir}/backup/backup.json"`);
|
|
902
|
-
return void this.processExit(EXIT_CODES.CANNOT_EXTRACT_FROM_ZIP);
|
|
903
|
-
}
|
|
904
|
-
console.log(`host.${this.hostname} Starting validation ...`);
|
|
905
|
-
let backupJSON;
|
|
906
|
-
try {
|
|
907
|
-
backupJSON = fs.readJSONSync(`${this.tmpDir}/backup/backup.json`);
|
|
908
|
-
}
|
|
909
|
-
catch (err) {
|
|
910
|
-
console.error(`host.${this.hostname} Backup corrupted. Backup ${name} does not contain a valid backup.json file: ${err.message}`);
|
|
911
|
-
this.removeTempBackupDir();
|
|
912
|
-
return void this.processExit(EXIT_CODES.CANNOT_EXTRACT_FROM_ZIP);
|
|
913
|
-
}
|
|
914
|
-
if (!backupJSON || !backupJSON.objects || !backupJSON.objects.length) {
|
|
915
|
-
console.error(`host.${this.hostname} Backup corrupted. Backup does not contain valid objects`);
|
|
916
|
-
try {
|
|
917
|
-
this.removeTempBackupDir();
|
|
918
|
-
}
|
|
919
|
-
catch (e) {
|
|
920
|
-
console.error(`host.${this.hostname} Cannot clear temporary backup directory: ${e.message}`);
|
|
921
|
-
}
|
|
922
|
-
return void this.processExit(EXIT_CODES.CANNOT_EXTRACT_FROM_ZIP);
|
|
923
|
-
}
|
|
924
|
-
console.log(`host.${this.hostname} backup.json OK`);
|
|
925
|
-
try {
|
|
926
|
-
this._checkDirectory(`${this.tmpDir}/backup/files`, true);
|
|
927
|
-
this.removeTempBackupDir();
|
|
928
|
-
resolve();
|
|
929
|
-
}
|
|
930
|
-
catch (err) {
|
|
931
|
-
console.error(`host.${this.hostname} Backup corrupted: ${err.message}`);
|
|
932
|
-
return void this.processExit(EXIT_CODES.CANNOT_EXTRACT_FROM_ZIP);
|
|
933
|
-
}
|
|
934
911
|
});
|
|
935
|
-
}
|
|
912
|
+
}
|
|
913
|
+
catch (e) {
|
|
914
|
+
const errMessage = `Cannot extract from file "${name}": ${e.message}`;
|
|
915
|
+
console.error(`host.${this.hostname} ${errMessage}`);
|
|
916
|
+
throw new IoBrokerError({ message: 'Backup not found', code: EXIT_CODES.INVALID_ARGUMENTS });
|
|
917
|
+
}
|
|
918
|
+
try {
|
|
919
|
+
if (fs.existsSync(path.join(this.tmpDir, 'backup', 'backup.json'))) {
|
|
920
|
+
this._validateLegacyTempDir();
|
|
921
|
+
}
|
|
922
|
+
else {
|
|
923
|
+
await this._validateTempDirectory();
|
|
924
|
+
}
|
|
925
|
+
}
|
|
926
|
+
catch (e) {
|
|
927
|
+
console.error(`host.${this.hostname} ${e.message}`);
|
|
928
|
+
try {
|
|
929
|
+
this.removeTempBackupDir();
|
|
930
|
+
}
|
|
931
|
+
catch (e) {
|
|
932
|
+
console.error(`host.${this.hostname} Cannot clear temporary backup directory: ${e.message}`);
|
|
933
|
+
}
|
|
934
|
+
throw new IoBrokerError({ message: e.message, code: EXIT_CODES.CANNOT_EXTRACT_FROM_ZIP });
|
|
935
|
+
}
|
|
936
|
+
try {
|
|
937
|
+
this.removeTempBackupDir();
|
|
938
|
+
}
|
|
939
|
+
catch (e) {
|
|
940
|
+
console.error(`host.${this.hostname} Cannot clear temporary backup directory: ${e.message}`);
|
|
941
|
+
throw new IoBrokerError({ message: e.message, code: EXIT_CODES.CANNOT_EXTRACT_FROM_ZIP });
|
|
942
|
+
}
|
|
943
|
+
}
|
|
944
|
+
/**
|
|
945
|
+
* Validate an unpacked legacy backup in the temporary directory
|
|
946
|
+
*/
|
|
947
|
+
_validateLegacyTempDir() {
|
|
948
|
+
console.log(`host.${this.hostname} Starting validation ...`);
|
|
949
|
+
let backupJSON;
|
|
950
|
+
try {
|
|
951
|
+
backupJSON = fs.readJSONSync(`${this.tmpDir}/backup/backup.json`);
|
|
952
|
+
}
|
|
953
|
+
catch (e) {
|
|
954
|
+
throw new Error(`Backup corrupted. Backup does not contain a valid backup.json file: ${e.message}`);
|
|
955
|
+
}
|
|
956
|
+
if (!backupJSON || !backupJSON.objects || !backupJSON.objects.length) {
|
|
957
|
+
throw new Error(`host.${this.hostname} Backup corrupted. Backup does not contain valid objects`);
|
|
958
|
+
}
|
|
959
|
+
console.log(`host.${this.hostname} backup.json OK`);
|
|
960
|
+
try {
|
|
961
|
+
this._checkDirectory(`${this.tmpDir}/backup/files`, true);
|
|
962
|
+
}
|
|
963
|
+
catch (e) {
|
|
964
|
+
throw new Error(`Backup corrupted: ${e.message}`);
|
|
965
|
+
}
|
|
936
966
|
}
|
|
937
967
|
/**
|
|
938
968
|
* Checks a directory for json files and validates them, steps down recursive in subdirectories
|
|
@@ -981,7 +1011,7 @@ export class BackupRestore {
|
|
|
981
1011
|
backups = this.listBackups();
|
|
982
1012
|
backups.sort((a, b) => (b > a ? 1 : b === a ? 0 : -1));
|
|
983
1013
|
if (backups.length) {
|
|
984
|
-
backups.forEach((backup, i) => console.log(`${backup} or ${backup.replace(
|
|
1014
|
+
backups.forEach((backup, i) => console.log(`${backup} or ${backup.replace(`${this.BACKUP_POSTFIX}.tar.gz`, '')} or ${i}`));
|
|
985
1015
|
}
|
|
986
1016
|
else {
|
|
987
1017
|
console.warn('No backups found');
|
|
@@ -1003,7 +1033,7 @@ export class BackupRestore {
|
|
|
1003
1033
|
console.log('No matching backup found');
|
|
1004
1034
|
if (backups.length) {
|
|
1005
1035
|
console.log('Please specify one of the backup names:');
|
|
1006
|
-
backups.forEach((backup, i) => console.log(`${backup} or ${backup.replace(
|
|
1036
|
+
backups.forEach((backup, i) => console.log(`${backup} or ${backup.replace(`${this.BACKUP_POSTFIX}.tar.gz`, '')} or ${i}`));
|
|
1007
1037
|
}
|
|
1008
1038
|
}
|
|
1009
1039
|
else {
|
|
@@ -1013,9 +1043,9 @@ export class BackupRestore {
|
|
|
1013
1043
|
name = name.toString().replace(/\\/g, '/');
|
|
1014
1044
|
if (!name.includes('/')) {
|
|
1015
1045
|
name = BackupRestore.getBackupDir() + name;
|
|
1016
|
-
const regEx = new RegExp(
|
|
1046
|
+
const regEx = new RegExp(this.BACKUP_POSTFIX, 'i');
|
|
1017
1047
|
if (!regEx.test(name)) {
|
|
1018
|
-
name +=
|
|
1048
|
+
name += this.BACKUP_POSTFIX;
|
|
1019
1049
|
}
|
|
1020
1050
|
if (!name.match(/\.tar\.gz$/i)) {
|
|
1021
1051
|
name += '.tar.gz';
|
|
@@ -1041,8 +1071,8 @@ export class BackupRestore {
|
|
|
1041
1071
|
return { exitCode: EXIT_CODES.CANNOT_EXTRACT_FROM_ZIP, objects: this.objects, states: this.states };
|
|
1042
1072
|
}
|
|
1043
1073
|
if (!(await fs.pathExists(path.join(backupBasePath, 'backup.json'))) &&
|
|
1044
|
-
!(await fs.pathExists(path.join(backupBasePath, '
|
|
1045
|
-
console.error(`host.${this.hostname} Cannot find extracted file "${path.join(backupBasePath, 'backup.json')}" or "${path.join(backupBasePath, '
|
|
1074
|
+
!(await fs.pathExists(path.join(backupBasePath, 'objects.jsonl')))) {
|
|
1075
|
+
console.error(`host.${this.hostname} Cannot find extracted file "${path.join(backupBasePath, 'backup.json')}" or "${path.join(backupBasePath, 'objects.jsonl')}"`);
|
|
1046
1076
|
return { exitCode: EXIT_CODES.CANNOT_EXTRACT_FROM_ZIP, objects: this.objects, states: this.states };
|
|
1047
1077
|
}
|
|
1048
1078
|
await CLIProcess.stopJSController();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupBackup.js","sourceRoot":"","sources":["../../../../src/lib/setup/setupBackup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setupBackup.js","sourceRoot":"","sources":["../../../../src/lib/setup/setupBackup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,GAAG,MAAM,KAAK,CAAC;AAGtB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAyDnD,MAAM,aAAa,GAAG,KAAK,CAAC,gBAAgB,EAAE,CAAC;AAE/C,MAAM,OAAO,aAAa;IACL,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAC/B,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;IACzD,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;IACtE,OAAO,CAAqB;IAC5B,MAAM,CAAoB;IACjB,WAAW,CAAyC;IACpD,iBAAiB,CAA+C;IAChE,aAAa,CAA2C;IACxD,WAAW,CAAU;IACtC,oHAAoH;IACnG,iBAAiB,GAAG,CAAC,OAAO,EAAE,UAAU,CAAU,CAAC;IAC5D,MAAM,CAAS;IACf,WAAW,CAAW;IACb,SAAS,CAAS;IACnC,gFAAgF;IAC/D,oBAAoB,GAAG,kBAAkB,CAAC;IAC3D,8DAA8D;IAC7C,4BAA4B,GAAG,sBAAsB,CAAC;IACvE,mEAAmE;IAClD,0BAA0B,GAAG,uBAAuB,CAAC;IACtE,8BAA8B;IACb,cAAc,GAAG,UAAU,KAAK,CAAC,gBAAgB,EAAE,CAAC;IAErE,YAAY,OAAgC;QACxC,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;QAExB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;QACnD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,KAAK,CAAC;QAEhD,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC;QAElC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,gBAAgB;QACxC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,eAAe;IAChE,CAAC;IAED,qGAAqG;IAC7F,KAAK,CAAC,SAAS,CAAC,EAAU,EAAE,OAAe,EAAE,QAAgB;QACjE,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YACtD,IAAI,IAAI,EAAE,CAAC;gBACP,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1C,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,GAAG,OAAO,OAAO,QAAQ,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACpF,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU,EAAE,OAAe,EAAE,QAAgB;QACvD,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAE3B,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YACzD,IAAI,GAAG,EAAE,CAAC;gBACN,KAAK,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;oBACtB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;wBACd,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,GAAG,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;oBACpF,CAAC;yBAAM,CAAC;wBACJ,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;wBAC3B,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,GAAG,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;oBACtF,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACtC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,OAAO,sBAAsB,GAAG,EAAE,CAAC,CAAC;YACxE,CAAC;QACL,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,YAAY;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,UAAU,CAAC,CAAC;IACrD,CAAC;IAED,YAAY,CAAC,MAAc,EAAE,MAAc;QACvC,IAAI,UAAU,GAAG,MAAM,CAAC;QAExB,IAAI,CAAC;YACD,yEAAyE;YACzE,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;oBACpC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC1D,CAAC;YACL,CAAC;YAED,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,kBAAkB,UAAU,OAAO,MAAM,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7E,CAAC;IACL,CAAC;IAED,uBAAuB,CAAC,MAAc,EAAE,MAAc;QAClD,IAAI,KAAK,GAAG,EAAE,CAAC;QAEf,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACzB,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC;QAED,oDAAoD;QACpD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC/B,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO;QACP,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YAC7D,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAC/B,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACjB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC1C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC5B,OAAO;gBACX,CAAC;gBACD,IAAI,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;oBACvC,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;gBAC1D,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;gBAC/C,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED;;OAEG;IACK,mBAAmB;QACvB,IAAI,CAAC;YACD,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAClF,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,6CAA6C,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACjG,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,WAAW,CAAC,IAAY;QAC5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACrC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;gBAChB,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;YAEH,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE;gBACd,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,0BAA0B,IAAI,CAAC,MAAM,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;gBACjG,MAAM,CAAC,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;YAC9F,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC;gBACD,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3E,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,0BAA0B,IAAI,CAAC,MAAM,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;gBACjG,MAAM,CAAC,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;YAC9F,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,QAAQ,GAAG,KAAK;QAC7C,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,GAAG,GAAG,CAAC,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,CACpH,CAAC,CAAC,CACL,IAAI,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAClG,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,cAAc,SAAS,CAAC,EAAE,CAAC;YAChG,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC;QAChC,CAAC;QAED,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,UAAU,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC;YAEhD,iCAAiC;YACjC,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAE7B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5B,IAAI,GAAG,GAAG,UAAU,GAAG,IAAI,SAAS,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACJ,IAAI,GAAG,UAAU,GAAG,IAAI,CAAC;YAC7B,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACrC,wGAAwG;QACxG,MAAM,sBAAsB,GAAG,eAAe,QAAQ,GAAG,CAAC;QAE1D,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE9B,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACxD,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;QACjC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;QAErD,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,IAAI,MAAyC,CAAC;QAE9C,qBAAqB;QACrB,IAAI,CAAC;YACD,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAA0B,CAAC;YACjF,8BAA8B;YAC9B,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,QAAQ,QAAQ,6BAA6B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,CAAC,QAAQ,IAAI,MAAM,EAAE,CAAC;YACtB,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7G,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,EAAE,GAAG,CAAC,CAAC;QAE9E,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1E,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;gBACzB,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC;oBACnD,MAAM,EAAE,GAAG,CAAC,KAAK;oBACjB,gBAAgB;oBAChB,QAAQ;oBACR,sBAAsB;iBACzB,CAAC,CAAC;gBACH,MAAM,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACpE,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,QAAQ,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,gBAAgB,CAAC,CAAC;QAC7E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,QAAQ,QAAQ,wBAAwB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAExB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,EAAE,GAAG,CAAC,CAAC;QAE5E,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC5C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAK,CAAC,CAAC;YAEhD,IAAI,IAAI,EAAE,CAAC;gBACP,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACnC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;oBAEpB,IAAI,CAAC,GAAG,EAAE,CAAC;wBACP,SAAS;oBACb,CAAC;oBAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACpB,2FAA2F;wBAC3F,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe,QAAQ,EAAE,EAAE,CAAC;4BACzC,GAAG,CAAC,IAAI,CAAC,OAAO,CACZ,eAAe,QAAQ,EAAE,EACzB,eAAe,IAAI,CAAC,4BAA4B,EAAE,CACrD,CAAC;wBACN,CAAC;wBACD,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;4BAC7C,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;wBAC3E,CAAC;oBACL,CAAC;oBAED,MAAM,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBAC7E,CAAC;gBAED,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,QAAQ,QAAQ,IAAI,IAAI,CAAC,MAAM,eAAe,CAAC,CAAC;YAChE,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,QAAQ,QAAQ,uBAAuB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,QAAQ,QAAQ,wBAAwB,CAAC,CAAC;QACtD,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,QAAQ,QAAQ,uBAAuB,CAAC,CAAC;YAErD,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,QAAQ,QAAQ,wBAAwB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACnE,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAE3B,IAAI,CAAC,YAAY,aAAa,EAAE,CAAC;gBAC7B,MAAM,CAAC,CAAC;YACZ,CAAC;YAED,MAAM,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,uBAAuB,EAAE,CAAC,CAAC;QAC9F,CAAC;IACL,CAAC;IAED,qGAAqG;IACrG;;;;;OAKG;IACK,KAAK,CAAC,eAAe,CAAC,OAAe,EAAE,WAA2B;QACtE,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,kCAAkC,OAAO,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAChG,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,aAAa,CAAC,MAAuB;QAC/C,wBAAwB;QACxB,IACI,CAAC,IAAI,CAAC,WAAW;YACjB,MAAM,CAAC,GAAG;YACV,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YAC5C,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,uBAAuB,CAAC;YAC/C,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,0BAA0B,CAAC,EACpD,CAAC;YACC,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;gBACzB,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YAClC,CAAC;QACL,CAAC;QAED,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,mBAAmB,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACrF,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,oBAAoB,CAAC,UAA6B;QAC5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,OAAO;QACX,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;YAC9B,IAAI,GAAG,CAAC;YACR,IAAI,CAAC;gBACD,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACnD,CAAC;YAAC,MAAM,CAAC;gBACL,SAAS;YACb,CAAC;YAED,IAAI,CAAC,GAAG,EAAE,CAAC;gBACP,mCAAmC;gBACnC,IAAI,CAAC;oBACD,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;oBACjD,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,WAAW,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC;gBACtE,CAAC;gBAAC,MAAM,CAAC;oBACL,SAAS;gBACb,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,sBAAsB;QAChC,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,IAAI,QAAQ,CAAC;QACb,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QAEjD,IAAI,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YAC9B,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACnB,QAAQ,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,kBAAkB,CAAC,CAAC,CAAC;YACzF,IAAI,QAAQ,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,EAAE,GAAG,CAAC,CAAC;gBACtD,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;oBAC5B,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBACnF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACtB,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,sBAAsB;QACtB,IACI,EAAE,CAAC,UAAU,CACT,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,gBAAgB,CAAC,CACvG,EACH,CAAC;YACC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YACzC,QAAQ,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,kBAAkB,CAAC,CAAC,CAAC;YACzF,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,EAAE,GAAG,CAAC,CAAC;YACvD,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC5B,0CAA0C;gBAC1C,IACI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;oBACnB,uBAAuB;oBACvB,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,eAAe;oBAC9D,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAC5D,CAAC;oBACC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACtB,CAAC;YACL,CAAC;QACL,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;YACpD,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAC1D,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAEzD,IAAI,GAAG,CAAC;YAER,IAAI,CAAC,GAAG,EAAE,CAAC;gBACP,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;YACD,MAAM,UAAU,GAAG,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YACpD,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,UAAU,kBAAkB,CAAC,EAAE,CAAC;gBACjD,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,UAAU,kBAAkB,CAAC,CAAC;YAC3D,CAAC;YAED,IAAI,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,WAAW,GAAG,WAAW,CAAC,CAAC;gBAC5D,MAAM,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACjD,CAAC;QACL,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,IAAY,EAAE,UAAmB;QAC5D,UAAU,GAAG,UAAU,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO;QACX,CAAC;QACD,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC;QAChD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;YAChD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxB,SAAS;YACb,CAAC;YACD,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACD,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,UAAU,IAAI,IAAI,EAAE,CAAC,CAAC;gBAC/D,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;gBACnC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACpC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACtC,MAAM,KAAK,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;gBAC3C,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,sBAAsB,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC;gBAC3E,IAAI,CAAC;oBACD,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,IAAI,GAAG,UAAU,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;gBACvG,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC3C,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,iBAAiB,CAAC,OAAgC;QAC5D,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC;QAE/E,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3C,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACpB,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,sCAAsC,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC9F,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC;gBAC/C,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC;YACnD,CAAC;iBAAM,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;gBACvD,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;YACjF,CAAC;iBAAM,IAAI,MAAM,CAAC,GAAG,KAAK,eAAe,QAAQ,EAAE,EAAE,CAAC;gBAClD,MAAM,CAAC,GAAG,GAAG,eAAe,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACxD,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC;gBAChC,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC;gBACnD,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;oBACpC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC;gBAC1D,CAAC;gBAED,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC;gBAChC,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC;gBACnD,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC;oBACpB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC;gBAC1D,CAAC;YACL,CAAC;QACL,CAAC;QAED,iBAAiB;QACjB,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;YAChE,wCAAwC;YACxC,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBAChF,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,iBAAiB,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;YACpF,CAAC;QACL,CAAC;QAED,iBAAiB;QACjB,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC;YAC1D,IAAI,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;YAE9C,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7D,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YAC/D,CAAC;YAED,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACD,IAAI,CAAC,uBAAuB,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,MAAM,SAAS,CAAC,CAAC;gBAC1E,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACT,OAAO,CAAC,KAAK,CAAC,QAAQ,QAAQ,sBAAsB,cAAc,gBAAgB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC/F,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBAC3B,MAAM,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC;gBACtF,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,kBAAkB,CAAC,SAAiB;QACxC,IAAI,CAAC;YACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;gBAC9C,OAAO;YACX,CAAC;YACD,MAAM,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAEvC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBACf,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;oBAClB,OAAO;gBACX,CAAC;gBACD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAC7C,IAAI,IAAI,CAAC;gBACT,IAAI,CAAC;oBACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;wBAC7B,OAAO;oBACX,CAAC;oBACD,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACnC,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACT,OAAO,CAAC,KAAK,CAAC,YAAY,UAAU,mCAAmC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;oBACpF,OAAO;gBACX,CAAC;gBACD,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;oBACrB,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7D,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,YAAY,SAAS,oCAAoC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxF,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,mBAAmB,CAAC,OAAgC;QAC9D,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;QAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAErC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEvD,IAAI,cAAc,GAAG,QAAQ,CAAC;QAC9B,6DAA6D;QAC7D,IAAI,MAAyC,CAAC;QAE9C,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;YAC/D,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAA0B,CAAC;YAC/F,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,IAAI,QAAQ,CAAC;QACzD,CAAC;QAED,2DAA2D;QAC3D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;QACpE,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QAEhC,MAAM,UAAU,GAAmB,EAAE,CAAC;QAEtC,IAAI,KAAK,EAAE,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;YAC3B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE,QAAQ,CAAC,CAAC;YAC/D,MAAM,GAAG,GAAoB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,GAAG,CAAC,GAAG,KAAK,eAAe,cAAc,EAAE,EAAE,CAAC;gBAC9C,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC7C,MAAM;YACV,CAAC;QACL,CAAC;QAED,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QAEpB,mFAAmF;QACnF,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;QAE7F,IAAI,QAAQ,EAAE,CAAC;YACX,kBAAkB;YAClB,OAAO,QAAQ,CAAC;QACpB,CAAC;QAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtB,4CAA4C;YAC5C,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACpC,CAAC;QAED,wBAAwB;QACxB,IAAI,MAAM,EAAE,CAAC;YACT,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7E,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,QAAQ,QAAQ,kCAAkC,CAAC,CAAC;QAChE,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,QAAQ,QAAQ,QAAQ,CAAC,CAAC;QAEtC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;QACxE,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC;QAExC,IAAI,KAAK,GAAG,CAAC,CAAC;QAEd,IAAI,KAAK,EAAE,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;YAC/B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE,QAAQ,CAAC,CAAC;YAC/D,MAAM,GAAG,GAAoB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC9C,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAC9B,KAAK,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,oBAAoB,CAAC,CAAC;QAE1C,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAExB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;QAEtC,KAAK,GAAG,CAAC,CAAC;QAEV,IAAI,KAAK,EAAE,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC9B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE,QAAQ,CAAC,CAAC;YAC/D,MAAM,KAAK,GAGP,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrB,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YAClD,KAAK,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,mBAAmB,CAAC,CAAC;QAEzC,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;QAEvB,OAAO,UAAU,CAAC,QAAQ,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,iBAAiB,CAAC,OAAgC;QAC5D,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;QAE/D,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;QAE/E,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YACzD,IAAI,QAAQ,KAAK,UAAU,CAAC,QAAQ,EAAE,CAAC;gBACnC,OAAO,QAAQ,CAAC;YACpB,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,QAAQ,QAAQ,yBAAyB,CAAC,CAAC;YAEvD,YAAY;YACZ,IAAI,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;YAC5E,2DAA2D;YAC3D,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE,QAAQ,CAAC,CAAC;YAC/D,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,CAAC;YACjE,IAAI,OAAe,CAAC;YACpB,IAAI,CAAC;gBACD,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1F,OAAO,UAAU,CAAC,qBAAqB,CAAC;YAC5C,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;gBAC1D,OAAO,UAAU,CAAC,qBAAqB,CAAC;YAC5C,CAAC;YAED,mFAAmF;YACnF,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CACtC,aAAa,EACb,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,IAAI,QAAQ,EAC5C,OAAO,CAAC,OAAO,EACf,KAAK,CACR,CAAC;YAEF,IAAI,QAAQ,EAAE,CAAC;gBACX,kBAAkB;gBAClB,OAAO,QAAQ,CAAC;YACpB,CAAC;YAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACtB,4CAA4C;gBAC5C,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACpC,CAAC;YAED,wBAAwB;YACxB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACjB,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBACrF,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACpD,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,QAAQ,QAAQ,kCAAkC,CAAC,CAAC;YAChE,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,QAAQ,QAAQ,QAAQ,CAAC,CAAC;YAEtC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAE1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9C,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBACnD,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC;oBAChB,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,cAAc,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC;gBAC1F,CAAC;YACL,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,oBAAoB,CAAC,CAAC;YAC3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACpB,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnD,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC;oBAChB,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,cAAc,CAAC,IAAI,KAAK,CAAC,MAAM,SAAS,CAAC,CAAC;gBAC/E,CAAC;YACL,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,mBAAmB,CAAC,CAAC;QACpD,CAAC;QAED,0BAA0B;QAC1B,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;QAC/D,0GAA0G;QAC1G,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QACpC,sBAAsB;QACtB,MAAM,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAC/E,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtE,+BAA+B;QAC/B,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;QACvC,8BAA8B;QAC9B,MAAM,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAEvC,IAAI,KAAK,EAAE,CAAC;YACR,0EAA0E;YAC1E,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;YACpD,IAAI,CAAC;gBACD,MAAM,SAAS,CACX,IAAI,OAAO,CAAC,QAAQ,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CACnG,CAAC;YACN,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CACT,gGAAgG,CAAC,CAAC,OAAO,EAAE,CAC9G,CAAC;YACN,CAAC;QACL,CAAC;QAED,IAAI,eAAe,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACvB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC7B,CAAC;QAED,OAAO,UAAU,CAAC,QAAQ,CAAC;IAC/B,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,oBAAoB,CAAC,MAA6B;QAC5D,OAAO,CAAC,GAAG,CACP,QAAQ,IAAI,CAAC,QAAQ,0BAA0B,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,4BAA4B,CACvH,CAAC;QACF,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,mCAAmC,CAAC,CAAC;QAEtE,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAE9C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB;QAC5B,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACtD,MAAM,cAAc,GAAG,EAAE,CAAC,WAAW,CAAC,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/E,sFAAsF;QACtF,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YAC/B,IACI,GAAG,CAAC,WAAW,EAAE;gBACjB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC;gBACtD,GAAG,CAAC,IAAI,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,gBAAgB,EAC7D,CAAC;gBACC,IAAI,CAAC;oBACD,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;oBACtF,OAAO,CAAC,GAAG,CAAC,oCAAoC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;oBACjE,MAAM,KAAK,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACnD,CAAC;gBAAC,MAAM,CAAC;oBACL,SAAS;gBACb,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACK,oBAAoB,CACxB,aAAqB,EACrB,cAAsB,EACtB,aAA6B,EAC7B,KAAc;QAEd,IAAI,CAAC;YACD,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC,CAAC;YAChF,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,eAAe,cAAc,EAAE,CAAC,CAAC;YAEtF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;gBAC1E,OAAO,UAAU,CAAC,qBAAqB,CAAC;YAC5C,CAAC;YAED,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,KAAK,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACtE,IAAI,CAAC,KAAK,EAAE,CAAC;oBACT,OAAO,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;oBAC7F,OAAO,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;oBAC3F,OAAO,CAAC,IAAI,CACR,6FAA6F,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,6CAA6C,CAClL,CAAC;oBACF,OAAO,CAAC,IAAI,CACR,sIAAsI,CACzI,CAAC;oBAEF,OAAO,UAAU,CAAC,qBAAqB,CAAC;gBAC5C,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;gBAC7F,OAAO,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;gBAC3F,OAAO,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;YAChG,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACL,SAAS;QACb,CAAC;IACL,CAAC;IAED;;OAEG;IACH,WAAW;QACP,MAAM,GAAG,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC;QACzC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;oBAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;YACL,CAAC;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,sBAAsB,CAAC,QAAQ,GAAG,KAAK;QACjD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEvD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,yBAAyB,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,yBAAyB,CAAC,CAAC;QAE5D,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC5D,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,wBAAwB,CAAC,CAAC;QAE3D,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAEpC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,wBAAwB,CAAC,CAAC;QAE3D,6GAA6G;QAC7G,IAAI,CAAC;YACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,8CAA8C,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7F,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,uDAAuD,CAAC,CAAC;QAC/F,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,sBAAsB;QAChC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEvD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;QACxE,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC;QAExC,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC;gBACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3E,CAAC;QACL,CAAC;QAED,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAExB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;QAEtC,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAChC,IAAI,CAAC;gBACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1E,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,KAAsB;QACvC,IAAI,OAAO,CAAC;QACZ,IAAI,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QAEhE,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACjB,6BAA6B;gBAC7B,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;gBAEvD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;oBACtB,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACvG,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,6CAA6C,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;YAC7F,CAAC;YACD,MAAM,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACjG,CAAC;QACD,YAAY;QACZ,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YACpD,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACR,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;gBACxC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACjB,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;oBACvD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;wBACtB,OAAO,CAAC,GAAG,CACP,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CACxF,CAAC;oBACN,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,GAAG,CAAC,gDAAgD,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;gBAC/F,CAAC;gBAED,MAAM,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACjG,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,sBAAsB,IAAI,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,GAAG,aAAa,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC;YAC3C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;YACnD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpB,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC;YAChC,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC7B,IAAI,IAAI,SAAS,CAAC;YACtB,CAAC;QACL,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,gBAAgB,IAAI,EAAE,CAAC,CAAC;YAC3D,MAAM,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACjG,CAAC;QAED,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,MAAM,qBAAqB,CAAC,EAAE,CAAC;YACrD,EAAE,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,MAAM,qBAAqB,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC;YACD,MAAM,GAAG,CAAC,OAAO,CAAC;gBACd,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,IAAI,CAAC,MAAM;aACnB,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,UAAU,GAAG,6BAA6B,IAAI,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;YACtE,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,UAAU,EAAE,CAAC,CAAC;YACrD,MAAM,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACjG,CAAC;QAED,IAAI,CAAC;YACD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;gBACjE,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACxC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAEpD,IAAI,CAAC;gBACD,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC/B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,6CAA6C,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACjG,CAAC;YAED,MAAM,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,uBAAuB,EAAE,CAAC,CAAC;QAC9F,CAAC;QAED,IAAI,CAAC;YACD,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC/B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,6CAA6C,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7F,MAAM,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,uBAAuB,EAAE,CAAC,CAAC;QAC9F,CAAC;IACL,CAAC;IAED;;OAEG;IACK,sBAAsB;QAC1B,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,0BAA0B,CAAC,CAAC;QAC7D,IAAI,UAAU,CAAC;QACf,IAAI,CAAC;YACD,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,MAAM,qBAAqB,CAAC,CAAC;QACtE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxG,CAAC;QAED,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,0DAA0D,CAAC,CAAC;QACrG,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,iBAAiB,CAAC,CAAC;QAEpD,IAAI,CAAC;YACD,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,MAAM,eAAe,EAAE,IAAI,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACK,eAAe,CAAC,IAAY,EAAE,OAAO,GAAG,KAAK;QACjD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAChB,OAAO;YACX,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACvB,MAAM,QAAQ,GAAG,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;gBACnC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;oBACjE,6BAA6B;oBAC7B,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC5C,CAAC;qBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBAChC,IAAI,CAAC;wBACD,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;wBAC1B,IAAI,OAAO,EAAE,CAAC;4BACV,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,IAAI,KAAK,CAAC,CAAC;wBACpD,CAAC;oBACL,CAAC;oBAAC,MAAM,CAAC;wBACL,MAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,QAAQ,2BAA2B,CAAC,CAAC;oBAClF,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CAAC,OAA6B;QAC7C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAE3D,IAAI,OAAO,CAAC;QACZ,IAAI,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QAEhE,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,6BAA6B;YAC7B,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;YACvD,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACjB,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAC1B,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAC7F,CAAC;YACN,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACrC,CAAC;YACD,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,iBAAiB,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QAClG,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACvE,CAAC;QAED,YAAY;QACZ,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YACpD,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACR,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;gBACxC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACjB,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;oBACvD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAC1B,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAC7F,CAAC;gBACN,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,sBAAsB,IAAI,EAAE,CAAC,CAAC;YACnE,CAAC;QACL,CAAC;QAED,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,GAAG,aAAa,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC;YAC3C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;YACnD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpB,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC;YAChC,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC7B,IAAI,IAAI,SAAS,CAAC;YACtB,CAAC;QACL,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,gBAAgB,IAAI,EAAE,CAAC,CAAC;YAC3D,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,iBAAiB,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QAClG,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAExD,6BAA6B;QAC7B,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;YAC1D,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC;YACD,MAAM,GAAG,CAAC,OAAO,CAAC;gBACd,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,IAAI,CAAC,MAAM;aACnB,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,8BAA8B,IAAI,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACxF,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,uBAAuB,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QACxG,CAAC;QAED,IACI,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC;YAChE,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC,EACpE,CAAC;YACC,OAAO,CAAC,KAAK,CACT,QAAQ,IAAI,CAAC,QAAQ,gCAAgC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,GAAG,CACtJ,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,uBAAuB,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QACxG,CAAC;QAED,MAAM,UAAU,CAAC,gBAAgB,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC;YAC1C,eAAe,EAAE,KAAK;YACtB,KAAK;YACL,kBAAkB;SACrB,CAAC,CAAC;QAEH,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IACpE,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,yBAAyB;QACnC,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/C,IAAI,CAAC;gBACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,kBAAkB,WAAW,EAAE,CAAC,CAAC;gBACjF,IAAI,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;oBAC9B,IAAI,aAAa,CAAC;oBAClB,IAAI,UAAU,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;wBAClC,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC;oBACpD,CAAC;yBAAM,CAAC;wBACJ,aAAa,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,WAAW,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjG,CAAC;oBAED,OAAO,CAAC,GAAG,CAAC,yBAAyB,WAAW,WAAW,aAAa,GAAG,CAAC,CAAC;oBAC7E,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;oBAEzD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;wBACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,WAAW,MAAM,GAAG,CAAC,QAAQ,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;oBACjG,CAAC;gBACL,CAAC;YACL,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CAAC,0CAA0C,WAAW,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1F,CAAC;QACL,CAAC;IACL,CAAC;CACJ"}
|
package/build/esm/lib/setup.js
CHANGED
|
@@ -1149,9 +1149,9 @@ async function processCommand(command, args, params, callback) {
|
|
|
1149
1149
|
console.log('Backup OK');
|
|
1150
1150
|
return void exitApplicationSave(0);
|
|
1151
1151
|
}
|
|
1152
|
-
catch (
|
|
1153
|
-
console.log(`Backup check failed: ${
|
|
1154
|
-
return void exitApplicationSave(1);
|
|
1152
|
+
catch (e) {
|
|
1153
|
+
console.log(`Backup check failed: ${e.message}`);
|
|
1154
|
+
return void exitApplicationSave(e instanceof IoBrokerError ? e.code : 1);
|
|
1155
1155
|
}
|
|
1156
1156
|
});
|
|
1157
1157
|
break;
|