agl 21.0.2 → 22.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/changelog.md +9 -0
- package/dist_serve/bundle.js +1 -1
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/classes.aglhome.d.ts +25 -0
- package/dist_ts/classes.aglhome.js +65 -0
- package/dist_ts/classes.authmodels.js +7 -12
- package/dist_ts/classes.authstore.js +2 -29
- package/dist_ts/classes.cli.js +93 -35
- package/dist_ts/classes.config.d.ts +2 -11
- package/dist_ts/classes.config.js +14 -80
- package/dist_ts/classes.controller.d.ts +4 -1
- package/dist_ts/classes.controller.js +64 -26
- package/dist_ts/classes.embeddeddb.js +6 -5
- package/dist_ts/classes.gitreversion.js +3 -2
- package/dist_ts/classes.upgradecoordinator.d.ts +6 -1
- package/dist_ts/classes.upgradecoordinator.js +588 -177
- package/dist_ts/classes.upgradetransaction.js +46 -12
- package/dist_ts/classes.uploadmanager.d.ts +12 -0
- package/dist_ts/classes.uploadmanager.js +204 -2
- package/dist_ts/constants.upgradeenvironment.d.ts +2 -0
- package/dist_ts/constants.upgradeenvironment.js +3 -0
- package/dist_ts/functions.controllerdataroot.d.ts +4 -5
- package/dist_ts/functions.controllerdataroot.js +4 -29
- package/dist_ts/functions.embeddeddb.d.ts +1 -1
- package/dist_ts/functions.embeddeddb.js +8 -3
- package/dist_ts/functions.runtimeenvironment.js +2 -1
- package/dist_ts/index.d.ts +1 -0
- package/dist_ts/index.js +2 -1
- package/dist_ts/interfaces.config.d.ts +5 -7
- package/dist_ts_migration/classes.documentmigrationrunner.js +3 -1
- package/dist_ts_migration/index.d.ts +2 -0
- package/dist_ts_migration/index.js +3 -1
- package/dist_ts_migration/v23_aglhome.d.ts +91 -0
- package/dist_ts_migration/v23_aglhome.js +1775 -0
- package/dist_ts_migration/v23_runtimeconfig.d.ts +11 -0
- package/dist_ts_migration/v23_runtimeconfig.js +87 -0
- package/dist_ts_migration/v2_controllerdataroot.d.ts +5 -0
- package/dist_ts_migration/v2_controllerdataroot.js +176 -15
- package/package.json +1 -1
- package/readme.md +116 -35
- package/readme.plan.md +24 -9
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/classes.aglhome.ts +116 -0
- package/ts/classes.authmodels.ts +5 -13
- package/ts/classes.authstore.ts +1 -39
- package/ts/classes.cli.ts +92 -34
- package/ts/classes.config.ts +20 -117
- package/ts/classes.controller.ts +92 -26
- package/ts/classes.embeddeddb.ts +5 -4
- package/ts/classes.gitreversion.ts +3 -2
- package/ts/classes.upgradecoordinator.ts +668 -191
- package/ts/classes.upgradetransaction.ts +46 -11
- package/ts/classes.uploadmanager.ts +231 -1
- package/ts/constants.upgradeenvironment.ts +2 -0
- package/ts/functions.controllerdataroot.ts +11 -47
- package/ts/functions.embeddeddb.ts +13 -2
- package/ts/functions.runtimeenvironment.ts +1 -0
- package/ts/index.ts +1 -0
- package/ts/interfaces.config.ts +5 -7
- package/ts_migration/classes.documentmigrationrunner.ts +2 -0
- package/ts_migration/index.ts +2 -0
- package/ts_migration/v23_aglhome.ts +2101 -0
- package/ts_migration/v23_runtimeconfig.ts +112 -0
- package/ts_migration/v2_controllerdataroot.ts +174 -16
- package/ts_web/00_commitinfo_data.ts +1 -1
package/dist_ts/classes.cli.js
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import * as plugins from './plugins.js';
|
|
2
2
|
import { commitinfo } from './00_commitinfo_data.js';
|
|
3
3
|
import { controllerPackageName, controllerProtocolVersion, controllerUpgradeManagementVersion, } from '../dist_ts_interfaces/index.js';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { defaultControllerPort, } from './classes.config.js';
|
|
5
|
+
import { resolveAGLHomePaths } from './classes.aglhome.js';
|
|
6
|
+
import { ensureControllerDataRoot, preflightAGLHomeMigration, } from './functions.controllerdataroot.js';
|
|
6
7
|
import { assertProvidedSetupCode, SmartDataAuthStore } from './classes.authstore.js';
|
|
7
8
|
import { OpenCodeController } from './classes.controller.js';
|
|
8
9
|
import { assertControllerStatus, isLoopbackPortListening, queryControllerStatus as queryManagedControllerStatus, requestControllerUpgradeLaunch, stopVerifiedController, tryQueryControllerStatus as tryQueryManagedControllerStatus, waitUntilControllerExited, } from './classes.controllermanagement.js';
|
|
9
10
|
import { inspectControllerProcess, listControllerProcessesForCli, signalVerifiedControllerProcess, } from './classes.processinspection.js';
|
|
10
|
-
import { createUpgradeToken, parseUpgradeWorkerPayload, UpgradeCoordinator, upgradePackageTransitionSource, upgradePackageTransitionTarget,
|
|
11
|
+
import { createUpgradeToken, parseUpgradeWorkerPayload, UpgradeCoordinator, upgradePackageTransitionSource, upgradePackageTransitionTarget, } from './classes.upgradecoordinator.js';
|
|
12
|
+
import { upgradeTokenEnvironmentVariable } from './constants.upgradeenvironment.js';
|
|
11
13
|
import { createUpgradeWorkerPayload, launchDetachedUpgradeWorker, resolveCurrentCliPath, resolveCurrentPnpmGlobalInstallation, runUpgradeWorker, tryResolveCurrentPnpmGlobalInstallation, } from './classes.upgradetransaction.js';
|
|
12
14
|
import { followUpgradeTransaction } from './functions.upgradefollower.js';
|
|
13
15
|
const currentCliName = commitinfo.name === upgradePackageTransitionSource.packageName
|
|
@@ -36,13 +38,14 @@ Commands:
|
|
|
36
38
|
temp-password Mint a temporary browser login password (max 24 hours)
|
|
37
39
|
help Show this help
|
|
38
40
|
|
|
39
|
-
|
|
41
|
+
Startup options:
|
|
40
42
|
--port <port> Controller port (default: 4097)
|
|
41
43
|
--opencode-port <port> Local-only OpenCode port (default: 4098)
|
|
42
|
-
--directory <path>
|
|
44
|
+
--directory <path> Transiently register this existing directory on this start
|
|
45
|
+
(also valid later; omitted: do not create a project)
|
|
43
46
|
--projects-root <path> Default base for relative project paths and suggestions
|
|
44
|
-
(default:
|
|
45
|
-
be outside it;
|
|
47
|
+
(default: user home; explicitly typed absolute projects may
|
|
48
|
+
be outside it; immutable after initialization)
|
|
46
49
|
--public-origin <origin> Browser origin used for WebAuthn
|
|
47
50
|
--rp-id <hostname> WebAuthn relying-party ID
|
|
48
51
|
--behind-tls-proxy Trust an explicitly configured TLS reverse proxy
|
|
@@ -61,11 +64,10 @@ Upgrade requirements:
|
|
|
61
64
|
on Linux and macOS. Normal progress mode prints the detached worker log before
|
|
62
65
|
stopping anything; --json emits it in the terminal document.
|
|
63
66
|
|
|
64
|
-
${currentRuntimeName}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
with HARNESS_CONTROLLER_DB_DIR). Set HARNESS_CONTROLLER_MONGO_URL /
|
|
67
|
+
${currentRuntimeName} owns one private AGL_HOME (default
|
|
68
|
+
$XDG_CONFIG_HOME/agl, normally ~/.config/agl; repository checkouts use
|
|
69
|
+
./.nogit/agl). The embedded database lives under $AGL_HOME/database; override
|
|
70
|
+
the database directory with HARNESS_CONTROLLER_DB_DIR. Set HARNESS_CONTROLLER_MONGO_URL /
|
|
69
71
|
HARNESS_CONTROLLER_MONGO_DB to use an external MongoDB-compatible server
|
|
70
72
|
instead. temp-password writes to the controller database directly, so run
|
|
71
73
|
it with the same database environment as the running controller; in
|
|
@@ -74,10 +76,10 @@ password authenticates the browser UI without a passkey until it expires.
|
|
|
74
76
|
|
|
75
77
|
The first successful start prints a one-time setup code. Runtime configuration
|
|
76
78
|
is immutable after initialization; use the same --port for later management.
|
|
77
|
-
|
|
78
|
-
$
|
|
79
|
-
|
|
80
|
-
log
|
|
79
|
+
--directory is transient and may be supplied on any stopped start.
|
|
80
|
+
Detached starts append ${currentRuntimeName} errors to
|
|
81
|
+
$AGL_HOME/logs/controller-<port>.log. Upgrade workers write a separate private
|
|
82
|
+
log in $AGL_HOME/logs and print its path before work begins.
|
|
81
83
|
In --json mode the path is retained before work begins and emitted at completion.
|
|
82
84
|
`.trim();
|
|
83
85
|
const publicCliCommands = new Set([
|
|
@@ -167,17 +169,23 @@ const readNumberOption = (argvArg, keyArg, alternateKeyArg, fallbackArg, minimum
|
|
|
167
169
|
};
|
|
168
170
|
export const readUpgradeGracePeriodMs = (argvArg) => (readNumberOption(argvArg, 'gracePeriodSeconds', 'grace-period-seconds', 300, 1, 3_600) * 1_000);
|
|
169
171
|
const readPortOption = (argvArg, keyArg, alternateKeyArg, fallbackArg) => readNumberOption(argvArg, keyArg, alternateKeyArg, fallbackArg, 1, 65_535);
|
|
170
|
-
export const parseRuntimeOverrides = (argvArg) =>
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
172
|
+
export const parseRuntimeOverrides = (argvArg) => {
|
|
173
|
+
const initialProjectDirectory = readStringOption(argvArg, 'directory', 'directory');
|
|
174
|
+
const projectsRoot = readStringOption(argvArg, 'projectsRoot', 'projects-root');
|
|
175
|
+
return {
|
|
176
|
+
controllerPort: readPortOption(argvArg, 'port', 'port', defaultControllerPort),
|
|
177
|
+
publicOrigin: readStringOption(argvArg, 'publicOrigin', 'public-origin'),
|
|
178
|
+
rpId: readStringOption(argvArg, 'rpId', 'rp-id'),
|
|
179
|
+
initialProjectDirectory: initialProjectDirectory === undefined
|
|
180
|
+
? undefined
|
|
181
|
+
: plugins.path.resolve(initialProjectDirectory),
|
|
182
|
+
projectsRoot: projectsRoot === undefined ? undefined : plugins.path.resolve(projectsRoot),
|
|
183
|
+
opencodePort: readPortOption(argvArg, 'opencodePort', 'opencode-port'),
|
|
184
|
+
behindTlsProxy: readOption(argvArg, 'behindTlsProxy', 'behind-tls-proxy') === undefined
|
|
185
|
+
? undefined
|
|
186
|
+
: readBooleanOption(argvArg, 'behindTlsProxy', 'behind-tls-proxy'),
|
|
187
|
+
};
|
|
188
|
+
};
|
|
181
189
|
const currentStatusExpectation = {
|
|
182
190
|
packageName: controllerPackageName,
|
|
183
191
|
packageVersion: commitinfo.version,
|
|
@@ -227,7 +235,7 @@ const detachedLogRotateBytes = 1024 * 1024;
|
|
|
227
235
|
class RetainedControllerStartupError extends Error {
|
|
228
236
|
}
|
|
229
237
|
const resolveDetachedLogFilePath = (portArg) => {
|
|
230
|
-
return plugins.path.join(
|
|
238
|
+
return plugins.path.join(resolveAGLHomePaths().logs, `controller-${portArg}.log`);
|
|
231
239
|
};
|
|
232
240
|
const openDetachedLogFile = async (logFilePathArg) => {
|
|
233
241
|
await plugins.fs.promises.mkdir(plugins.path.dirname(logFilePathArg), { recursive: true, mode: 0o700 });
|
|
@@ -274,12 +282,13 @@ const acquireStartAdmission = async (commandArg) => {
|
|
|
274
282
|
const installation = await tryResolveCurrentPnpmGlobalInstallation();
|
|
275
283
|
if (!installation)
|
|
276
284
|
return undefined;
|
|
285
|
+
const upgradeToken = process.env[upgradeTokenEnvironmentVariable];
|
|
277
286
|
const coordinator = new UpgradeCoordinator(installation.globalRoot);
|
|
278
287
|
return await coordinator.acquireStartLease({
|
|
279
288
|
token: createUpgradeToken(),
|
|
280
289
|
cliPath: installation.cliPath,
|
|
281
290
|
command: commandArg,
|
|
282
|
-
upgradeToken
|
|
291
|
+
upgradeToken,
|
|
283
292
|
});
|
|
284
293
|
};
|
|
285
294
|
const serializeRuntimeOptions = (overridesArg) => {
|
|
@@ -288,8 +297,9 @@ const serializeRuntimeOptions = (overridesArg) => {
|
|
|
288
297
|
args.push('--public-origin', overridesArg.publicOrigin);
|
|
289
298
|
if (overridesArg.rpId !== undefined)
|
|
290
299
|
args.push('--rp-id', overridesArg.rpId);
|
|
291
|
-
if (overridesArg.
|
|
292
|
-
args.push('--directory', overridesArg.
|
|
300
|
+
if (overridesArg.initialProjectDirectory !== undefined) {
|
|
301
|
+
args.push('--directory', overridesArg.initialProjectDirectory);
|
|
302
|
+
}
|
|
293
303
|
if (overridesArg.projectsRoot !== undefined)
|
|
294
304
|
args.push('--projects-root', overridesArg.projectsRoot);
|
|
295
305
|
if (overridesArg.opencodePort !== undefined)
|
|
@@ -483,6 +493,7 @@ const startDetachedWithoutAdmission = async (argvArg) => {
|
|
|
483
493
|
if (existingProcess) {
|
|
484
494
|
throw new Error(`An ${currentRuntimeName} process is already starting or running (PID ${existingProcess.identity.pid}).`);
|
|
485
495
|
}
|
|
496
|
+
await ensureControllerDataRoot();
|
|
486
497
|
const upgradeToken = process.env[upgradeTokenEnvironmentVariable];
|
|
487
498
|
let upgradeGlobalRoot;
|
|
488
499
|
if (upgradeToken) {
|
|
@@ -491,11 +502,12 @@ const startDetachedWithoutAdmission = async (argvArg) => {
|
|
|
491
502
|
const logFilePath = resolveDetachedLogFilePath(overrides.controllerPort);
|
|
492
503
|
const logFileHandle = await openDetachedLogFile(logFilePath);
|
|
493
504
|
let child;
|
|
505
|
+
let spawnError;
|
|
494
506
|
try {
|
|
495
507
|
const childEnvironment = { ...process.env };
|
|
496
508
|
delete childEnvironment[upgradeTokenEnvironmentVariable];
|
|
497
509
|
child = plugins.childProcess.spawn(process.execPath, [cliPath, '__serve', ...serializeRuntimeOptions(overrides)], {
|
|
498
|
-
cwd:
|
|
510
|
+
cwd: plugins.os.homedir(),
|
|
499
511
|
detached: true,
|
|
500
512
|
env: childEnvironment,
|
|
501
513
|
shell: false,
|
|
@@ -504,10 +516,46 @@ const startDetachedWithoutAdmission = async (argvArg) => {
|
|
|
504
516
|
stdio: ['ignore', 'ignore', logFileHandle.fd, 'ipc'],
|
|
505
517
|
});
|
|
506
518
|
}
|
|
507
|
-
|
|
519
|
+
catch (errorArg) {
|
|
520
|
+
spawnError = errorArg;
|
|
521
|
+
}
|
|
522
|
+
let logCloseError;
|
|
523
|
+
try {
|
|
508
524
|
await logFileHandle.close();
|
|
509
525
|
}
|
|
510
|
-
|
|
526
|
+
catch (errorArg) {
|
|
527
|
+
try {
|
|
528
|
+
await logFileHandle.close();
|
|
529
|
+
}
|
|
530
|
+
catch (retryErrorArg) {
|
|
531
|
+
logCloseError = new AggregateError([errorArg, retryErrorArg], 'The detached controller log handle could not be closed.');
|
|
532
|
+
}
|
|
533
|
+
}
|
|
534
|
+
if (spawnError !== undefined || logCloseError !== undefined) {
|
|
535
|
+
const errors = [spawnError, logCloseError]
|
|
536
|
+
.filter((errorArg) => errorArg !== undefined);
|
|
537
|
+
if (child) {
|
|
538
|
+
try {
|
|
539
|
+
if (child.exitCode === null && child.signalCode === null)
|
|
540
|
+
child.kill('SIGKILL');
|
|
541
|
+
if (!await waitForSpawnedChildExit(child, 2_000)) {
|
|
542
|
+
throw new Error('The gated detached controller survived startup-handle cleanup.');
|
|
543
|
+
}
|
|
544
|
+
}
|
|
545
|
+
catch (errorArg) {
|
|
546
|
+
errors.push(errorArg);
|
|
547
|
+
}
|
|
548
|
+
finally {
|
|
549
|
+
if (child.connected)
|
|
550
|
+
child.disconnect();
|
|
551
|
+
child.unref();
|
|
552
|
+
}
|
|
553
|
+
}
|
|
554
|
+
if (errors.length === 1)
|
|
555
|
+
throw errors[0];
|
|
556
|
+
throw new AggregateError(errors, 'Detached controller spawn or log-handle cleanup failed.');
|
|
557
|
+
}
|
|
558
|
+
if (!child?.pid)
|
|
511
559
|
throw new Error('Detached controller did not provide a process ID.');
|
|
512
560
|
let spawnedIdentity = null;
|
|
513
561
|
try {
|
|
@@ -583,6 +631,7 @@ const startDetachedWithoutAdmission = async (argvArg) => {
|
|
|
583
631
|
}
|
|
584
632
|
};
|
|
585
633
|
const startDetached = async (argvArg) => {
|
|
634
|
+
await preflightAGLHomeMigration();
|
|
586
635
|
const lease = await acquireStartAdmission('start');
|
|
587
636
|
try {
|
|
588
637
|
await startDetachedWithoutAdmission(argvArg);
|
|
@@ -592,6 +641,7 @@ const startDetached = async (argvArg) => {
|
|
|
592
641
|
}
|
|
593
642
|
};
|
|
594
643
|
const runForegroundWithAdmission = async (argvArg) => {
|
|
644
|
+
await preflightAGLHomeMigration();
|
|
595
645
|
const lease = await acquireStartAdmission('foreground');
|
|
596
646
|
delete process.env[upgradeTokenEnvironmentVariable];
|
|
597
647
|
try {
|
|
@@ -624,6 +674,9 @@ const runControllerProcess = async (argvArg, detachedArg) => {
|
|
|
624
674
|
else {
|
|
625
675
|
providedSetupCode = readProvidedSetupCode();
|
|
626
676
|
}
|
|
677
|
+
if (upgradeToken !== undefined) {
|
|
678
|
+
process.env[upgradeTokenEnvironmentVariable] = upgradeToken;
|
|
679
|
+
}
|
|
627
680
|
const controller = new OpenCodeController({
|
|
628
681
|
processMode: detachedArg ? 'detached' : 'foreground',
|
|
629
682
|
runtimeOverrides: parseRuntimeOverrides(argvArg),
|
|
@@ -777,6 +830,7 @@ export const createCurrentPackageUpgradeTransaction = async (coordinatorArg, opt
|
|
|
777
830
|
return await coordinatorArg.createTransaction(optionsArg);
|
|
778
831
|
};
|
|
779
832
|
const upgradeController = async (argvArg) => {
|
|
833
|
+
await preflightAGLHomeMigration();
|
|
780
834
|
if (process.platform !== 'linux' && process.platform !== 'darwin') {
|
|
781
835
|
throw new Error(`${currentCliName} upgrade is currently supported on Linux and macOS only.`);
|
|
782
836
|
}
|
|
@@ -788,6 +842,8 @@ const upgradeController = async (argvArg) => {
|
|
|
788
842
|
if (!status && await isLoopbackPortListening(port)) {
|
|
789
843
|
throw new Error(`Port ${port} is occupied by an incompatible service or controller version; refusing to upgrade.`);
|
|
790
844
|
}
|
|
845
|
+
if (!status)
|
|
846
|
+
await ensureControllerDataRoot();
|
|
791
847
|
const payload = createUpgradeWorkerPayload({
|
|
792
848
|
port,
|
|
793
849
|
gracePeriodMs,
|
|
@@ -1027,6 +1083,7 @@ const mintTempPasswordWithoutAdmission = async (argvArg) => {
|
|
|
1027
1083
|
}
|
|
1028
1084
|
};
|
|
1029
1085
|
const mintTempPassword = async (argvArg) => {
|
|
1086
|
+
await preflightAGLHomeMigration();
|
|
1030
1087
|
const lease = await acquireStartAdmission('temp-password');
|
|
1031
1088
|
try {
|
|
1032
1089
|
await mintTempPasswordWithoutAdmission(argvArg);
|
|
@@ -1036,6 +1093,7 @@ const mintTempPassword = async (argvArg) => {
|
|
|
1036
1093
|
}
|
|
1037
1094
|
};
|
|
1038
1095
|
export const runCli = async (testArgvArg) => {
|
|
1096
|
+
process.env.AGL_HOME = resolveAGLHomePaths().root;
|
|
1039
1097
|
activeRuntimeArguments = (testArgvArg ?? process.argv).slice(2);
|
|
1040
1098
|
if (activeRuntimeArguments.some((argumentArg) => argumentArg === '--help' || argumentArg === '-h')
|
|
1041
1099
|
&& (activeRuntimeArguments[0] === '--help'
|
|
@@ -1079,4 +1137,4 @@ export const runCli = async (testArgvArg) => {
|
|
|
1079
1137
|
}
|
|
1080
1138
|
await commandPromise;
|
|
1081
1139
|
};
|
|
1082
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5jbGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy9jbGFzc2VzLmNsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUNMLHFCQUFxQixFQUNyQix5QkFBeUIsRUFDekIsa0NBQWtDLEdBRW5DLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixxQkFBcUIsR0FDdEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQVE3RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVBQ0wsc0JBQXNCLEVBQ3RCLHVCQUF1QixFQUN2QixxQkFBcUIsSUFBSSw0QkFBNEIsRUFDckQsOEJBQThCLEVBQzlCLHNCQUFzQixFQUN0Qix3QkFBd0IsSUFBSSwrQkFBK0IsRUFDM0QseUJBQXlCLEdBQzFCLE1BQU0sbUNBQW1DLENBQUM7QUFDM0MsT0FBTyxFQUNMLHdCQUF3QixFQUN4Qiw2QkFBNkIsRUFDN0IsK0JBQStCLEdBQ2hDLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUNMLGtCQUFrQixFQUNsQix5QkFBeUIsRUFDekIsa0JBQWtCLEVBQ2xCLDhCQUE4QixFQUM5Qiw4QkFBOEIsRUFFOUIsK0JBQStCLEdBQ2hDLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUNMLDBCQUEwQixFQUMxQiwyQkFBMkIsRUFDM0IscUJBQXFCLEVBQ3JCLG9DQUFvQyxFQUNwQyxnQkFBZ0IsRUFDaEIsdUNBQXVDLEdBQ3hDLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFJMUUsTUFBTSxjQUFjLEdBQUcsVUFBVSxDQUFDLElBQUksS0FBSyw4QkFBOEIsQ0FBQyxXQUFXO0lBQ25GLENBQUMsQ0FBQyw4QkFBOEIsQ0FBQyxPQUFPO0lBQ3hDLENBQUMsQ0FBQyw4QkFBOEIsQ0FBQyxPQUFPLENBQUM7QUFDM0MsTUFBTSxrQkFBa0IsR0FBRyxjQUFjLEtBQUssOEJBQThCLENBQUMsT0FBTztJQUNsRixDQUFDLENBQUMsS0FBSztJQUNQLENBQUMsQ0FBQyxjQUFjLENBQUM7QUFFbkIsTUFBTSxRQUFRLEdBQUc7RUFDZixrQkFBa0IsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLDJCQUEyQixDQUFDLENBQUMsQ0FBQyxrQkFBa0I7OztJQUc3RSxjQUFjO0lBQ2QsY0FBYztJQUNkLGNBQWM7SUFDZCxjQUFjO0lBQ2QsY0FBYztJQUNkLGNBQWM7Ozt5QkFHTyxrQkFBa0I7NkJBQ2Qsa0JBQWtCOzRDQUNILGtCQUFrQjs7dUJBRXZDLGtCQUFrQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUE2QnZDLGtCQUFrQjs7Ozs7Ozs7Ozs7Ozt5QkFhSyxrQkFBa0I7Ozs7O0NBSzFDLENBQUMsSUFBSSxFQUFFLENBQUM7QUFFVCxNQUFNLGlCQUFpQixHQUFHLElBQUksR0FBRyxDQUFDO0lBQ2hDLE9BQU87SUFDUCxRQUFRO0lBQ1IsTUFBTTtJQUNOLFNBQVM7SUFDVCxZQUFZO0lBQ1osZUFBZTtJQUNmLE1BQU07Q0FDUCxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxRQUFpQixFQUFVLEVBQUU7SUFDMUQsTUFBTSxRQUFRLEdBQWEsRUFBRSxDQUFDO0lBQzlCLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxFQUFXLENBQUM7SUFDaEMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxRQUFpQixFQUFFLFFBQWdCLEVBQVEsRUFBRTtRQUMxRCxJQUFJLFFBQVEsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7WUFBRSxPQUFPO1FBQy9DLElBQUksQ0FBQyxPQUFPLFFBQVEsS0FBSyxRQUFRLElBQUksUUFBUSxLQUFLLElBQUksQ0FBQyxJQUFJLE9BQU8sUUFBUSxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQzFGLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckIsQ0FBQztRQUNELElBQUksUUFBUSxZQUFZLEtBQUssRUFBRSxDQUFDO1lBQzlCLElBQUksUUFBUSxDQUFDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztnQkFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM5RixJQUFJLFFBQVEsWUFBWSxjQUFjLEVBQUUsQ0FBQztnQkFDdkMsS0FBSyxNQUFNLFdBQVcsSUFBSSxRQUFRLENBQUMsTUFBTTtvQkFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUM5RSxDQUFDO1lBQ0QsSUFBSSxRQUFRLENBQUMsS0FBSyxLQUFLLFNBQVM7Z0JBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3RFLE9BQU87UUFDVCxDQUFDO1FBQ0QsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2pDLElBQUksT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7WUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JFLENBQUMsQ0FBQztJQUNGLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbkIsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSw0QkFBNEIsQ0FBQztJQUM1RSxPQUFPLE1BQU0sQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJO1FBQ3JELENBQUMsQ0FBQyxTQUFTO1FBQ1gsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQztBQUNwRyxDQUFDLENBQUM7QUFFRixNQUFNLFVBQVUsR0FBRyxDQUNqQixPQUF5QixFQUN6QixNQUFjLEVBQ2QsZUFBd0IsRUFDZixFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBRTFGLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDdkIsT0FBeUIsRUFDekIsTUFBYyxFQUNkLGVBQXdCLEVBQ0osRUFBRTtJQUN0QixNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxlQUFlLENBQUMsQ0FBQztJQUMzRCxJQUFJLEtBQUssS0FBSyxTQUFTO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDMUMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxLQUFLLGVBQWUsSUFBSSxNQUFNLG9CQUFvQixDQUFDLENBQUM7SUFDN0csT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDLENBQUM7QUFFRixNQUFNLGlCQUFpQixHQUFHLENBQ3hCLE9BQXlCLEVBQ3pCLE1BQWMsRUFDZCxlQUF3QixFQUNmLEVBQUU7SUFDWCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxlQUFlLENBQUMsQ0FBQztJQUMzRCxJQUFJLEtBQUssS0FBSyxTQUFTO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFDdEMsSUFBSSxPQUFPLEtBQUssS0FBSyxTQUFTO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxLQUFLLGVBQWUsSUFBSSxNQUFNLDBCQUEwQixDQUFDLENBQUM7SUFDMUcsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDLENBQUM7QUFFRiwrRUFBK0U7QUFDL0Usb0VBQW9FO0FBQ3BFLElBQUksc0JBQXNCLEdBQWEsRUFBRSxDQUFDO0FBRTFDLE1BQU0scUJBQXFCLEdBQUcsR0FBdUIsRUFBRTtJQUNyRCxLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsc0JBQXNCLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDbkUsTUFBTSxLQUFLLEdBQUcsc0JBQXNCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUMsSUFBSSxLQUFLLEtBQUssY0FBYyxFQUFFLENBQUM7WUFDN0IsTUFBTSxLQUFLLEdBQUcsc0JBQXNCLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ2hELElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ2xELE1BQU0sSUFBSSxLQUFLLENBQUMsMEZBQTBGLENBQUMsQ0FBQztZQUM5RyxDQUFDO1lBQ0QsT0FBTyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4QyxDQUFDO1FBQ0QsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7WUFDdEMsT0FBTyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxnQkFBZ0IsR0FBRyxDQUN2QixPQUF5QixFQUN6QixNQUFjLEVBQ2QsZUFBdUIsRUFDdkIsV0FBK0IsRUFDL0IsVUFBa0IsRUFDbEIsVUFBa0IsRUFDRSxFQUFFO0lBQ3RCLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQzNELElBQUksS0FBSyxLQUFLLFNBQVM7UUFBRSxPQUFPLFdBQVcsQ0FBQztJQUM1QyxNQUFNLFVBQVUsR0FBRyxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JFLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLFVBQVUsR0FBRyxVQUFVLElBQUksVUFBVSxHQUFHLFVBQVUsRUFBRSxDQUFDO1FBQzVGLE1BQU0sSUFBSSxLQUFLLENBQ2IsS0FBSyxlQUFlLCtCQUErQixVQUFVLFFBQVEsVUFBVSxHQUFHLENBQ25GLENBQUM7SUFDSixDQUFDO0lBQ0QsT0FBTyxVQUFVLENBQUM7QUFDcEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxPQUF5QixFQUFVLEVBQUUsQ0FBQyxDQUM3RSxnQkFBZ0IsQ0FDZCxPQUFPLEVBQ1Asb0JBQW9CLEVBQ3BCLHNCQUFzQixFQUN0QixHQUFHLEVBQ0gsQ0FBQyxFQUNELEtBQUssQ0FDTCxHQUFHLEtBQUssQ0FDWCxDQUFDO0FBRUYsTUFBTSxjQUFjLEdBQUcsQ0FDckIsT0FBeUIsRUFDekIsTUFBYyxFQUNkLGVBQXVCLEVBQ3ZCLFdBQW9CLEVBQ0EsRUFBRSxDQUFDLGdCQUFnQixDQUN2QyxPQUFPLEVBQ1AsTUFBTSxFQUNOLGVBQWUsRUFDZixXQUFXLEVBQ1gsQ0FBQyxFQUNELE1BQU0sQ0FDUCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FDbkMsT0FBeUIsRUFDSSxFQUFFLENBQUMsQ0FBQztJQUNqQyxjQUFjLEVBQUUsY0FBYyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLHFCQUFxQixDQUFFO0lBQy9FLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsY0FBYyxFQUFFLGVBQWUsQ0FBQztJQUN4RSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUM7SUFDaEQsa0JBQWtCLEVBQUUsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLENBQUM7SUFDdkUsWUFBWSxFQUFFLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsZUFBZSxDQUFDO0lBQ3hFLFlBQVksRUFBRSxjQUFjLENBQUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxlQUFlLENBQUM7SUFDdEUsY0FBYyxFQUFFLFVBQVUsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLENBQUMsS0FBSyxTQUFTO1FBQ3JGLENBQUMsQ0FBQyxTQUFTO1FBQ1gsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsQ0FBQztDQUNyRSxDQUFDLENBQUM7QUFFSCxNQUFNLHdCQUF3QixHQUFHO0lBQy9CLFdBQVcsRUFBRSxxQkFBcUI7SUFDbEMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxPQUFPO0lBQ2xDLGVBQWUsRUFBRSx5QkFBeUI7SUFDMUMsd0JBQXdCLEVBQUUsa0NBQWtDO0NBQzdELENBQUM7QUFFRixNQUFNLFlBQVksR0FBRyxDQUFDLFNBQWtCLEVBQXFCLEVBQUUsQ0FBQyxzQkFBc0IsQ0FDcEYsU0FBUyxFQUNULHdCQUF3QixDQUN6QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsS0FBSyxFQUN4QyxPQUFlLEVBQ2YsWUFBWSxHQUFHLEtBQUssRUFDUSxFQUFFLENBQUMsNEJBQTRCLENBQzNELE9BQU8sRUFDUCx3QkFBd0IsRUFDeEIsWUFBWSxDQUNiLENBQUM7QUFFRixNQUFNLHdCQUF3QixHQUFHLEtBQUssRUFBRSxPQUFlLEVBQTBDLEVBQUU7SUFDakcsT0FBTywrQkFBK0IsQ0FBQyxPQUFPLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztBQUM1RSxDQUFDLENBQUM7QUFFRixNQUFNLFVBQVUsR0FBRyxDQUFDLFNBQTRCLEVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztBQUVoRyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLFNBQTRCLEVBQVUsRUFBRTtJQUM3RSxNQUFNLGFBQWEsR0FBRyxDQUFDLFlBQWlDLEVBQUUsUUFBZ0IsRUFBVSxFQUFFO1FBQ3BGLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxLQUFLLFlBQVksQ0FBQyxDQUFDO1FBQzVGLElBQUksQ0FBQyxPQUFPO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsUUFBUSxXQUFXLENBQUMsQ0FBQztRQUN2RixNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLE9BQU8sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3ZELE9BQU8sR0FBRyxRQUFRLEtBQUssT0FBTyxDQUFDLEtBQUssR0FBRyxHQUFHLEVBQUUsQ0FBQztJQUMvQyxDQUFDLENBQUM7SUFDRixPQUFPO1FBQ0wsR0FBRyxrQkFBa0IsS0FBSyxTQUFTLENBQUMsY0FBYyxTQUFTLFNBQVMsQ0FBQyxhQUFhLEtBQUssU0FBUyxDQUFDLFdBQVcsR0FBRztRQUMvRyxhQUFhLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQztRQUNyQyxhQUFhLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQztRQUM3QixVQUFVLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFO0tBQzlELENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2YsQ0FBQyxDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQUcsQ0FBQyxTQUE0QixFQUFRLEVBQUU7SUFDekQsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7QUFDakUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxnQkFBZ0IsR0FBRyxDQUN2QixTQUFpQyxFQUNqQyxPQUFnQixFQUNoQixZQUFzQyxFQUFFLEVBQ2xDLEVBQUU7SUFDUixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ1osT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEdBQUcsU0FBUyxFQUFFLEdBQUcsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ3JGLE9BQU87SUFDVCxDQUFDO0lBQ0QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxrQkFBa0IsV0FBVyxTQUFTLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQztJQUM5RSxXQUFXLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlCLElBQUksU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzFCLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsU0FBUyxDQUFDLFdBQVcsSUFBSSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUNELElBQUksU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3hCLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGVBQWUsU0FBUyxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUM7UUFDN0QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsb0dBQW9HLENBQUMsQ0FBQztJQUM3SCxDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDO0FBRTNDLE1BQU0sOEJBQStCLFNBQVEsS0FBSztDQUFHO0FBRXJELE1BQU0sMEJBQTBCLEdBQUcsQ0FBQyxPQUFlLEVBQVUsRUFBRTtJQUM3RCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLEVBQUUsY0FBYyxPQUFPLE1BQU0sQ0FBQyxDQUFDO0FBQ25GLENBQUMsQ0FBQztBQUVGLE1BQU0sbUJBQW1CLEdBQUcsS0FBSyxFQUMvQixjQUFzQixFQUNtQixFQUFFO0lBQzNDLE1BQU0sT0FBTyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUM3QixPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsRUFDcEMsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FDakMsQ0FBQztJQUNGLElBQUksQ0FBQztRQUNILE1BQU0sUUFBUSxHQUFHLE1BQU0sT0FBTyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2pFLElBQUksUUFBUSxDQUFDLE1BQU0sRUFBRSxJQUFJLFFBQVEsQ0FBQyxJQUFJLEdBQUcsc0JBQXNCLEVBQUUsQ0FBQztZQUNoRSxNQUFNLE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsR0FBRyxjQUFjLE1BQU0sQ0FBQyxDQUFDO1FBQzVFLENBQUM7SUFDSCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLElBQUssS0FBK0IsQ0FBQyxJQUFJLEtBQUssUUFBUTtZQUFFLE1BQU0sS0FBSyxDQUFDO0lBQ3RFLENBQUM7SUFDRCw4RUFBOEU7SUFDOUUsa0RBQWtEO0lBQ2xELE1BQU0sTUFBTSxHQUFHLE1BQU0sT0FBTyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUMzQyxjQUFjLEVBQ2QsT0FBTyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUTtVQUMzQixPQUFPLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxRQUFRO1VBQzdCLE9BQU8sQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLE9BQU87VUFDNUIsT0FBTyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUNqQyxLQUFLLENBQ04sQ0FBQztJQUNGLElBQUksQ0FBQztRQUNILE1BQU0sS0FBSyxHQUFHLE1BQU0sTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxjQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQ3RGLENBQUM7UUFDRCxJQUFJLE9BQU8sT0FBTyxDQUFDLE1BQU0sS0FBSyxVQUFVLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUMzRSxNQUFNLElBQUksS0FBSyxDQUFDLDZEQUE2RCxjQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQ2pHLENBQUM7UUFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLGtFQUFrRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQ3RHLENBQUM7SUFDSCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE1BQU0sTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3JCLE1BQU0sS0FBSyxDQUFDO0lBQ2QsQ0FBQztJQUNELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQUVGLE1BQU0sY0FBYyxHQUFHLEtBQUssSUFBcUIsRUFBRTtJQUNqRCxPQUFPLE1BQU0scUJBQXFCLEVBQUUsQ0FBQztBQUN2QyxDQUFDLENBQUM7QUFFRixNQUFNLHFCQUFxQixHQUFHLEtBQUssRUFDakMsVUFBb0QsRUFDWixFQUFFO0lBQzFDLElBQUksT0FBTyxDQUFDLFFBQVEsS0FBSyxPQUFPO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDbkQsTUFBTSxZQUFZLEdBQUcsTUFBTSx1Q0FBdUMsRUFBRSxDQUFDO0lBQ3JFLElBQUksQ0FBQyxZQUFZO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDcEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEUsT0FBTyxNQUFNLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQztRQUN6QyxLQUFLLEVBQUUsa0JBQWtCLEVBQUU7UUFDM0IsT0FBTyxFQUFFLFlBQVksQ0FBQyxPQUFPO1FBQzdCLE9BQU8sRUFBRSxVQUFVO1FBQ25CLFlBQVksRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLCtCQUErQixDQUFDO0tBQzNELENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxZQUF5QyxFQUFZLEVBQUU7SUFDdEYsTUFBTSxJQUFJLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQzdELElBQUksWUFBWSxDQUFDLFlBQVksS0FBSyxTQUFTO1FBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDckcsSUFBSSxZQUFZLENBQUMsSUFBSSxLQUFLLFNBQVM7UUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0UsSUFBSSxZQUFZLENBQUMsa0JBQWtCLEtBQUssU0FBUztRQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQzdHLElBQUksWUFBWSxDQUFDLFlBQVksS0FBSyxTQUFTO1FBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDckcsSUFBSSxZQUFZLENBQUMsWUFBWSxLQUFLLFNBQVM7UUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUM3RyxJQUFJLFlBQVksQ0FBQyxjQUFjLEtBQUssSUFBSTtRQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUMxRSxJQUFJLFlBQVksQ0FBQyxjQUFjLEtBQUssS0FBSztRQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUM5RSxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQztBQUVGLE1BQU0sc0JBQXNCLEdBQUcsS0FBSyxFQUNsQyxRQUEyQyxFQUMzQyxVQUFrQixFQUNsQixPQUFlLEVBQ2YsY0FBc0IsRUFDUCxFQUFFO0lBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRztRQUFFLE9BQU87SUFDMUIsTUFBTSxnQkFBZ0IsR0FBRyxHQUFTLEVBQUU7UUFDbEMsSUFBSSxRQUFRLENBQUMsU0FBUztZQUFFLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM5QyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDbkIsQ0FBQyxDQUFDO0lBQ0YsTUFBTSxlQUFlLEdBQUc7UUFDdEIsR0FBRyxFQUFFLFFBQVEsQ0FBQyxHQUFHO1FBQ2pCLE9BQU8sRUFBRSxVQUFVO1FBQ25CLElBQUksRUFBRSxPQUFPO1FBQ2Isc0JBQXNCLEVBQUUsUUFBUSxDQUFDLEdBQUc7UUFDcEMsbUJBQW1CLEVBQUUsY0FBYztRQUNuQyxPQUFPLEVBQUUsU0FBa0I7S0FDNUIsQ0FBQztJQUNGLElBQUksQ0FBQyxNQUFNLHdCQUF3QixDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7UUFDckQsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuQixPQUFPO0lBQ1QsQ0FBQztJQUNELElBQUksQ0FBQztRQUNILE1BQU0sK0JBQStCLENBQUM7WUFDcEMsR0FBRyxlQUFlO1lBQ2xCLE1BQU0sRUFBRSxTQUFTO1lBQ2pCLGtCQUFrQixFQUFFLElBQUk7U0FDekIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsTUFBTSx3QkFBd0IsQ0FBQyxlQUFlLENBQUM7WUFBRSxPQUFPO1FBQzdELE1BQU0sS0FBSyxDQUFDO0lBQ2QsQ0FBQztZQUFTLENBQUM7UUFDVCw0RUFBNEU7UUFDNUUsMEVBQTBFO1FBQzFFLGdCQUFnQixFQUFFLENBQUM7SUFDckIsQ0FBQztJQUNELElBQUksTUFBTSx5QkFBeUIsQ0FBQyxlQUFlLEVBQUUsTUFBTSxDQUFDO1FBQUUsT0FBTztJQUNyRSxNQUFNLCtCQUErQixDQUFDO1FBQ3BDLEdBQUcsZUFBZTtRQUNsQixNQUFNLEVBQUUsU0FBUztRQUNqQixrQkFBa0IsRUFBRSxJQUFJO0tBQ3pCLENBQUMsQ0FBQztJQUNILElBQUksQ0FBQyxNQUFNLHlCQUF5QixDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQzlELE1BQU0sSUFBSSxLQUFLLENBQ2IsNkdBQTZHLENBQzlHLENBQUM7SUFDSixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxjQUFjLEdBQUcsS0FBSyxFQUMxQixRQUEyQyxFQUMzQyxVQUFpQyxFQUNsQixFQUFFO0lBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUztRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsaURBQWlELENBQUMsQ0FBQztJQUM1RixNQUFNLElBQUksT0FBTyxDQUFPLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQzFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNuRixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sdUJBQXVCLEdBQUcsS0FBSyxFQUNuQyxRQUEyQyxFQUMzQyxZQUFvQixFQUNGLEVBQUU7SUFDcEIsSUFBSSxRQUFRLENBQUMsUUFBUSxLQUFLLElBQUksSUFBSSxRQUFRLENBQUMsVUFBVSxLQUFLLElBQUk7UUFBRSxPQUFPLElBQUksQ0FBQztJQUM1RSxPQUFPLE1BQU0sSUFBSSxPQUFPLENBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRTtRQUM1QyxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDcEIsTUFBTSxNQUFNLEdBQUcsQ0FBQyxTQUFrQixFQUFFLEVBQUU7WUFDcEMsSUFBSSxPQUFPO2dCQUFFLE9BQU87WUFDcEIsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNmLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN0QixRQUFRLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztZQUN4QyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDckIsQ0FBQyxDQUFDO1FBQ0YsTUFBTSxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDOUQsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRixNQUFNLGdCQUFnQixHQUFHLEtBQUssSUFBeUMsRUFBRTtJQUN2RSxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sSUFBSSxLQUFLLENBQUMseURBQXlELENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBQ0QsT0FBTyxNQUFNLElBQUksT0FBTyxDQUE2QixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUN2RSxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDcEIsTUFBTSxNQUFNLEdBQUcsQ0FBQyxRQUFnQixFQUFFLFVBQXVDLEVBQUUsRUFBRTtZQUMzRSxJQUFJLE9BQU87Z0JBQUUsT0FBTztZQUNwQixPQUFPLEdBQUcsSUFBSSxDQUFDO1lBQ2YsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3RCLE9BQU8sQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQzdDLE9BQU8sQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQ25ELElBQUksUUFBUTtnQkFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7O2dCQUMxQixPQUFPLENBQUMsVUFBVyxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDO1FBQ0YsTUFBTSxTQUFTLEdBQUcsQ0FBQyxVQUFtQixFQUFFLEVBQUU7WUFDeEMsTUFBTSxPQUFPLEdBQUcsVUFBNEMsQ0FBQztZQUM3RCxJQUFJLE9BQU8sRUFBRSxJQUFJLEtBQUssT0FBTyxFQUFFLENBQUM7Z0JBQzlCLE1BQU0sQ0FBQyxTQUFTLEVBQUUsT0FBcUMsQ0FBQyxDQUFDO1lBQzNELENBQUM7UUFDSCxDQUFDLENBQUM7UUFDRixNQUFNLFlBQVksR0FBRyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsaURBQWlELENBQUMsQ0FBQyxDQUFDO1FBQ2hHLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDOUIsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLDZEQUE2RCxDQUFDLENBQUMsQ0FBQztRQUNuRixDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDVixPQUFPLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNqQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUMsQ0FBQztJQUMzQyxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sb0JBQW9CLEdBQUcsS0FBSyxFQUNoQyxRQUEyQyxFQUNOLEVBQUU7SUFDdkMsT0FBTyxNQUFNLElBQUksT0FBTyxDQUE2QixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUN2RSxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDcEIsTUFBTSxNQUFNLEdBQUcsQ0FBQyxRQUFnQixFQUFFLFVBQXVDLEVBQUUsRUFBRTtZQUMzRSxJQUFJLE9BQU87Z0JBQUUsT0FBTztZQUNwQixPQUFPLEdBQUcsSUFBSSxDQUFDO1lBQ2YsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3RCLFFBQVEsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQzlDLFFBQVEsQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3hDLElBQUksUUFBUTtnQkFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7O2dCQUMxQixPQUFPLENBQUMsVUFBVyxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDO1FBQ0YsTUFBTSxTQUFTLEdBQUcsQ0FBQyxVQUFtQixFQUFFLEVBQUU7WUFDeEMsTUFBTSxPQUFPLEdBQUcsVUFBNEMsQ0FBQztZQUM3RCxJQUFJLE9BQU8sRUFBRSxJQUFJLEtBQUssY0FBYyxJQUFJLE9BQU8sT0FBTyxDQUFDLE9BQU8sS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDNUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEtBQUssSUFBSTtvQkFDOUIsQ0FBQyxDQUFDLElBQUksOEJBQThCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztvQkFDckQsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxPQUFPO1lBQ1QsQ0FBQztZQUNELElBQ0UsT0FBTyxFQUFFLElBQUksS0FBSyxPQUFPO21CQUN0QixPQUFPLE9BQU8sQ0FBQyxTQUFTLEtBQUssUUFBUTttQkFDckMsT0FBTyxPQUFPLENBQUMsTUFBTSxLQUFLLFFBQVE7bUJBQ2xDLE9BQU8sQ0FBQyxNQUFNLEtBQUssSUFBSTttQkFDdkIsQ0FBQyxPQUFPLENBQUMsU0FBUyxLQUFLLFNBQVMsSUFBSSxPQUFPLE9BQU8sQ0FBQyxTQUFTLEtBQUssUUFBUSxDQUFDLEVBQzdFLENBQUM7Z0JBQ0QsSUFBSSxDQUFDO29CQUNILE1BQU0sQ0FBQyxTQUFTLEVBQUU7d0JBQ2hCLElBQUksRUFBRSxPQUFPO3dCQUNiLFNBQVMsRUFBRSxPQUFPLENBQUMsU0FBUzt3QkFDNUIsTUFBTSxFQUFFLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO3dCQUNwQyxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7cUJBQy9ELENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7b0JBQ2YsTUFBTSxDQUFDLEtBQUssWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDcEUsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDLENBQUM7UUFDRixNQUFNLE9BQU8sR0FBRyxDQUFDLFFBQWUsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RELE1BQU0sTUFBTSxHQUFHLENBQUMsT0FBc0IsRUFBRSxTQUFnQyxFQUFFLEVBQUU7WUFDMUUsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLDhDQUE4QyxTQUFTLElBQUksT0FBTyxJQUFJLFNBQVMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN6RyxDQUFDLENBQUM7UUFDRixNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQzlCLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyw2REFBNkQsQ0FBQyxDQUFDLENBQUM7UUFDbkYsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ1gsUUFBUSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbEMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDaEMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRixNQUFNLDZCQUE2QixHQUFHLEtBQUssRUFBRSxPQUF5QixFQUFpQixFQUFFO0lBQ3ZGLElBQUksT0FBTyxDQUFDLFFBQVEsS0FBSyxPQUFPLEVBQUUsQ0FBQztRQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLDZFQUE2RSxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUNELE1BQU0sU0FBUyxHQUFHLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pELE1BQU0saUJBQWlCLEdBQUcscUJBQXFCLEVBQUUsQ0FBQztJQUNsRCxNQUFNLFFBQVEsR0FBRyxNQUFNLHdCQUF3QixDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUMxRSxNQUFNLElBQUksR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEQsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUNiLElBQUksaUJBQWlCLEtBQUssU0FBUyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDN0MsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxrQkFBa0IsZ0VBQWdFLENBQUMsQ0FBQztRQUM5RyxDQUFDO1FBQ0QsSUFBSSxJQUFJO1lBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDOztZQUN2RCxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0IsT0FBTztJQUNULENBQUM7SUFDRCxNQUFNLE9BQU8sR0FBRyxNQUFNLGNBQWMsRUFBRSxDQUFDO0lBQ3ZDLE1BQU0saUJBQWlCLEdBQUcsTUFBTSw2QkFBNkIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2RSxNQUFNLGVBQWUsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQy9ELFlBQVksQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLGNBQWMsQ0FDL0MsQ0FBQyxDQUFDO0lBQ0gsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUNwQixNQUFNLElBQUksS0FBSyxDQUNiLE1BQU0sa0JBQWtCLGdEQUFnRCxlQUFlLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUN6RyxDQUFDO0lBQ0osQ0FBQztJQUNELE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUNsRSxJQUFJLGlCQUFxQyxDQUFDO0lBQzFDLElBQUksWUFBWSxFQUFFLENBQUM7UUFDakIsaUJBQWlCLEdBQUcsQ0FBQyxNQUFNLG9DQUFvQyxFQUFFLENBQUMsQ0FBQyxVQUFVLENBQUM7SUFDaEYsQ0FBQztJQUNELE1BQU0sV0FBVyxHQUFHLDBCQUEwQixDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN6RSxNQUFNLGFBQWEsR0FBRyxNQUFNLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzdELElBQUksS0FBd0MsQ0FBQztJQUM3QyxJQUFJLENBQUM7UUFDSCxNQUFNLGdCQUFnQixHQUFHLEVBQUUsR0FBRyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDNUMsT0FBTyxnQkFBZ0IsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQ3pELEtBQUssR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FDaEMsT0FBTyxDQUFDLFFBQVEsRUFDaEIsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDM0Q7WUFDRSxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUcsRUFBRTtZQUNsQixRQUFRLEVBQUUsSUFBSTtZQUNkLEdBQUcsRUFBRSxnQkFBZ0I7WUFDckIsS0FBSyxFQUFFLEtBQUs7WUFDWixxRUFBcUU7WUFDckUsdUVBQXVFO1lBQ3ZFLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsYUFBYSxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUM7U0FDckQsQ0FDRixDQUFDO0lBQ0osQ0FBQztZQUFTLENBQUM7UUFDVCxNQUFNLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO0lBQ3JGLElBQUksZUFBZSxHQUF5RCxJQUFJLENBQUM7SUFDakYsSUFBSSxDQUFDO1FBQ0gsS0FBSyxJQUFJLE9BQU8sR0FBRyxDQUFDLEVBQUUsT0FBTyxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDO1lBQzlDLGVBQWUsR0FBRyxNQUFNLHdCQUF3QixDQUFDO2dCQUMvQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUc7Z0JBQ2QsT0FBTztnQkFDUCxJQUFJLEVBQUUsU0FBUyxDQUFDLGNBQWM7Z0JBQzlCLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxHQUFHO2dCQUNqQyxPQUFPLEVBQUUsU0FBUzthQUNuQixDQUFDLENBQUM7WUFDSCxJQUFJLGVBQWU7Z0JBQUUsTUFBTTtZQUMzQixNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUQsQ0FBQztRQUNELElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNyQixNQUFNLElBQUksS0FBSyxDQUFDLGdFQUFnRSxDQUFDLENBQUM7UUFDcEYsQ0FBQztJQUNILENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2Ysc0VBQXNFO1FBQ3RFLDRFQUE0RTtRQUM1RSwrQkFBK0I7UUFDL0IsSUFBSSxLQUFLLENBQUMsUUFBUSxLQUFLLElBQUksSUFBSSxLQUFLLENBQUMsVUFBVSxLQUFLLElBQUk7WUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxNQUFNLHVCQUF1QixDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2pELE1BQU0sSUFBSSxjQUFjLENBQ3RCLENBQUMsS0FBSyxDQUFDLEVBQ1AscUZBQXFGLENBQ3RGLENBQUM7UUFDSixDQUFDO1FBQ0QsTUFBTSxLQUFLLENBQUM7SUFDZCxDQUFDO0lBQ0QsSUFBSSxDQUFDO1FBQ0gsTUFBTSxZQUFZLEdBQUcsb0JBQW9CLENBQ3ZDLEtBQUssQ0FDTixDQUFDO1FBQ0YsSUFBSSxDQUFDO1lBQ0gsTUFBTSxjQUFjLENBQUMsS0FBSyxFQUFFO2dCQUMxQixJQUFJLEVBQUUsT0FBTztnQkFDYixHQUFHLENBQUMsaUJBQWlCLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQzVFLEdBQUcsQ0FBQyxZQUFZLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUM7Z0JBQ3ZELEdBQUcsQ0FBQyxpQkFBaUIsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxpQkFBaUIsRUFBRSxDQUFDO2FBQ2xFLENBQUMsQ0FBQztRQUNMLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsS0FBSyxZQUFZLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3pDLE1BQU0sS0FBSyxDQUFDO1FBQ2QsQ0FBQztRQUNELE1BQU0sWUFBWSxHQUFHLE1BQU0sWUFBWSxDQUFDO1FBQ3hDLE1BQU0sTUFBTSxHQUFHLE1BQU0scUJBQXFCLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3JFLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNuQixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZCxnQkFBZ0IsQ0FBQztZQUNmLE1BQU07WUFDTixTQUFTLEVBQUUsWUFBWSxDQUFDLFNBQVM7WUFDakMsR0FBRyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1NBQ3pFLEVBQUUsSUFBSSxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUMxQixJQUFJLGlCQUFpQixLQUFLLFNBQVMsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN4RSxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxzRUFBc0UsQ0FBQyxDQUFDO1FBQy9GLENBQUM7SUFDSCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLElBQUksS0FBSyxZQUFZLDhCQUE4QixFQUFFLENBQUM7WUFDcEQsSUFBSSxLQUFLLENBQUMsU0FBUztnQkFBRSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDeEMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQztZQUMzQyxPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQztZQUNILE1BQU0sc0JBQXNCLENBQzFCLEtBQUssRUFDTCxPQUFPLEVBQ1AsU0FBUyxDQUFDLGNBQWMsRUFDeEIsZUFBZSxDQUFDLFdBQVcsQ0FDNUIsQ0FBQztRQUNKLENBQUM7UUFBQyxPQUFPLGVBQWUsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sSUFBSSxjQUFjLENBQ3RCLENBQUMsS0FBSyxFQUFFLGVBQWUsQ0FBQyxFQUN4Qix1Q0FBdUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxpQ0FBaUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxZQUFZLFdBQVcsRUFBRSxDQUN0SixDQUFDO1FBQ0osQ0FBQztRQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLFVBQVUsV0FBVyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNyRixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxhQUFhLEdBQUcsS0FBSyxFQUFFLE9BQXlCLEVBQWlCLEVBQUU7SUFDdkUsTUFBTSxLQUFLLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuRCxJQUFJLENBQUM7UUFDSCxNQUFNLDZCQUE2QixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9DLENBQUM7WUFBUyxDQUFDO1FBQ1QsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDekIsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sMEJBQTBCLEdBQUcsS0FBSyxFQUFFLE9BQXlCLEVBQWlCLEVBQUU7SUFDcEYsTUFBTSxLQUFLLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4RCxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUNwRCxJQUFJLENBQUM7UUFDSCxNQUFNLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM3QyxDQUFDO1lBQVMsQ0FBQztRQUNULE1BQU0sS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQ3pCLENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLG9CQUFvQixHQUFHLEtBQUssRUFDaEMsT0FBeUIsRUFDekIsV0FBb0IsRUFDTCxFQUFFO0lBQ2pCLElBQUksV0FBVyxJQUFJLE9BQU8sQ0FBQyxRQUFRLEtBQUssT0FBTyxFQUFFLENBQUM7UUFDaEQsTUFBTSxJQUFJLEtBQUssQ0FBQyw2RUFBNkUsQ0FBQyxDQUFDO0lBQ2pHLENBQUM7SUFDRCxJQUFJLFdBQVcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLCtFQUErRSxDQUFDLENBQUM7SUFDbkcsQ0FBQztJQUNELElBQUksaUJBQXFDLENBQUM7SUFDMUMsSUFBSSxZQUFnQyxDQUFDO0lBQ3JDLElBQUksaUJBQXFDLENBQUM7SUFDMUMsSUFBSSxlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQzVCLElBQUksV0FBVyxFQUFFLENBQUM7UUFDaEIsTUFBTSxXQUFXLEdBQUcsTUFBTSxnQkFBZ0IsRUFBRSxDQUFDO1FBQzdDLDJFQUEyRTtRQUMzRSxJQUFJLFdBQVcsQ0FBQyxTQUFTLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDeEMsaUJBQWlCLEdBQUcsdUJBQXVCLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3JFLENBQUM7UUFDRCxZQUFZLEdBQUcsV0FBVyxDQUFDLFlBQVksQ0FBQztRQUN4QyxpQkFBaUIsR0FBRyxXQUFXLENBQUMsaUJBQWlCLENBQUM7SUFDcEQsQ0FBQztTQUFNLENBQUM7UUFDTixpQkFBaUIsR0FBRyxxQkFBcUIsRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFDRCxNQUFNLFVBQVUsR0FBRyxJQUFJLGtCQUFrQixDQUFDO1FBQ3hDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsWUFBWTtRQUNwRCxnQkFBZ0IsRUFBRSxxQkFBcUIsQ0FBQyxPQUFPLENBQUM7UUFDaEQsR0FBRyxDQUFDLGlCQUFpQixLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzVFLEdBQUcsQ0FBQyxZQUFZLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUM7UUFDdkQsR0FBRyxDQUFDLGlCQUFpQixLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLGlCQUFpQixFQUFFLENBQUM7UUFDakUsR0FBRyxDQUFDLFlBQVksS0FBSyxTQUFTO1lBQzVCLENBQUMsQ0FBQyxFQUFFO1lBQ0osQ0FBQyxDQUFDO2dCQUNFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxRQUFlLEVBQUUsRUFBRTtvQkFDMUMsZUFBZSxHQUFHLElBQUksQ0FBQztvQkFDdkIsSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTO3dCQUFFLE9BQU87b0JBQy9DLE1BQU0sSUFBSSxPQUFPLENBQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRTt3QkFDbEMsT0FBTyxDQUFDLElBQUssQ0FBQzs0QkFDWixJQUFJLEVBQUUsY0FBYzs0QkFDcEIsT0FBTyxFQUFFLEdBQUcsUUFBUSxDQUFDLE9BQU8sNERBQTREOzRCQUN4RixRQUFRLEVBQUUsSUFBSTt5QkFDZixFQUFFLEdBQUcsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7b0JBQ3RCLENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUM7YUFDRixDQUFDO0tBQ1AsQ0FBQyxDQUFDO0lBQ0gsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ2xCLElBQUksUUFBbUMsQ0FBQztJQUN4QyxNQUFNLElBQUksR0FBRyxHQUFrQixFQUFFO1FBQy9CLElBQUksUUFBUTtZQUFFLE9BQU8sUUFBUSxDQUFDO1FBQzlCLElBQUksT0FBc0IsQ0FBQztRQUMzQixPQUFPLEdBQUcsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDcEMsSUFBSSxXQUFXLEVBQUUsQ0FBQztnQkFDaEIsT0FBTyxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQzNDLE9BQU8sQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUM1QyxPQUFPLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUMsQ0FBQztnQkFDbkQsSUFBSSxPQUFPLENBQUMsU0FBUyxJQUFJLE9BQU8sT0FBTyxDQUFDLFVBQVUsS0FBSyxVQUFVO29CQUFFLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMxRixDQUFDO1lBQ0QsT0FBTyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDdkIsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDZCxPQUFPLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztZQUNyQixNQUFNLFFBQVEsQ0FBQztRQUNqQixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxRQUFRLEtBQUssT0FBTztnQkFBRSxRQUFRLEdBQUcsU0FBUyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxDQUFDO1FBQ0gsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUNuQixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDLENBQUM7SUFDRixNQUFNLFFBQVEsR0FBRyxHQUFHLEVBQUU7UUFDcEIsS0FBSyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUM3QixPQUFPLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztZQUNyQixPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLGNBQWMsS0FBSyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDO0lBQ0YsTUFBTSxZQUFZLEdBQUcsR0FBRyxFQUFFO1FBQ3hCLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUMvQixLQUFLLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUM3QixPQUFPLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztnQkFDckIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxjQUFjLEtBQUssY0FBYyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMzRSxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDLENBQUM7SUFDRixPQUFPLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMvQixPQUFPLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNoQyxJQUFJLFdBQVc7UUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUMsQ0FBQztJQUMxRCxJQUFJLENBQUM7UUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN4QyxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQ2hCLElBQUksT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUN0QixNQUFNLElBQUksT0FBTyxDQUFPLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO29CQUMxQyxNQUFNLE9BQU8sR0FBK0I7d0JBQzFDLElBQUksRUFBRSxPQUFPO3dCQUNiLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTt3QkFDckIsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTO3dCQUMzQixHQUFHLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7cUJBQzdELENBQUM7b0JBQ0YsT0FBTyxDQUFDLElBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRixDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7aUJBQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO2dCQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7WUFDOUUsQ0FBQztZQUNELEtBQUssR0FBRyxJQUFJLENBQUM7UUFDZixDQUFDO2FBQU0sQ0FBQztZQUNOLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDYixNQUFNLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDdEQsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQ3JDLElBQUksaUJBQWlCLEtBQUssU0FBUyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUN4RSxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxzRUFBc0UsQ0FBQyxDQUFDO1lBQy9GLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLFVBQVUsR0FBRyxLQUFLLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQzdFLElBQUksUUFBaUIsQ0FBQztRQUN0QixJQUFJLFdBQVcsSUFBSSxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDO2dCQUNILE1BQU0sSUFBSSxPQUFPLENBQU8sQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7b0JBQzFDLE9BQU8sQ0FBQyxJQUFLLENBQUMsRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLE9BQU8sRUFBRSxjQUFjLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FDekYsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUN4QyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1lBQUMsT0FBTyxRQUFRLEVBQUUsQ0FBQztnQkFDbEIsUUFBUSxHQUFHLFFBQVEsQ0FBQztZQUN0QixDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksWUFBcUIsQ0FBQztRQUMxQixJQUFJLENBQUM7WUFDSCxNQUFNLElBQUksRUFBRSxDQUFDO1FBQ2YsQ0FBQztRQUFDLE9BQU8sUUFBUSxFQUFFLENBQUM7WUFDbEIsWUFBWSxHQUFHLFFBQVEsQ0FBQztRQUMxQixDQUFDO1FBQ0QsTUFBTSxNQUFNLEdBQUcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQyxDQUFDO1FBQ2pHLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN0QixNQUFNLElBQUksY0FBYyxDQUN0QixNQUFNLEVBQ04sdUNBQXVDLGNBQWMsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUNwRSxDQUFDO1FBQ0osQ0FBQztRQUNELE1BQU0sVUFBVSxDQUFDO0lBQ25CLENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLFVBQVUsR0FBRyxLQUFLLEVBQUUsT0FBeUIsRUFBaUIsRUFBRTtJQUNwRSxNQUFNLElBQUksR0FBRyxjQUFjLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUscUJBQXFCLENBQUUsQ0FBQztJQUM3RSxNQUFNLE1BQU0sR0FBRyxNQUFNLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUU7UUFDMUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsa0JBQWtCLHdDQUF3QyxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ3RHLENBQUMsQ0FBQyxDQUFDO0lBQ0gsSUFBSSxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO1FBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDOztRQUNuRixXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDM0IsQ0FBQyxDQUFDO0FBRUYsTUFBTSxjQUFjLEdBQUcsS0FBSyxFQUFFLE9BQXlCLEVBQWlCLEVBQUU7SUFDeEUsSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ2xFLE1BQU0sSUFBSSxLQUFLLENBQUMsc0VBQXNFLENBQUMsQ0FBQztJQUMxRixDQUFDO0lBQ0QsTUFBTSxJQUFJLEdBQUcsY0FBYyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLHFCQUFxQixDQUFFLENBQUM7SUFDN0UsTUFBTSxNQUFNLEdBQUcsTUFBTSx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWixPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLGtCQUFrQixvQkFBb0IsQ0FBQyxDQUFDO1FBQ2hFLE9BQU87SUFDVCxDQUFDO0lBQ0QsTUFBTSxPQUFPLEdBQUcsTUFBTSxjQUFjLEVBQUUsQ0FBQztJQUN2QyxNQUFNLHNCQUFzQixDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsa0JBQWtCLGFBQWEsQ0FBQyxDQUFDO0FBQzNELENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHNDQUFzQyxHQUFHLEtBQUssRUFDekQsY0FBa0MsRUFDbEMsVUFPQyxFQUNELEVBQUU7SUFDRixJQUNFLFVBQVUsQ0FBQyxJQUFJLEtBQUssOEJBQThCLENBQUMsV0FBVztXQUMzRCxVQUFVLENBQUMsYUFBYSxLQUFLLDhCQUE4QixDQUFDLE9BQU8sRUFDdEUsQ0FBQztRQUNELE9BQU8sTUFBTSxjQUFjLENBQUMsa0NBQWtDLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUNELE9BQU8sTUFBTSxjQUFjLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDNUQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxpQkFBaUIsR0FBRyxLQUFLLEVBQUUsT0FBeUIsRUFBaUIsRUFBRTtJQUMzRSxJQUFJLE9BQU8sQ0FBQyxRQUFRLEtBQUssT0FBTyxJQUFJLE9BQU8sQ0FBQyxRQUFRLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDbEUsTUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLGNBQWMsMERBQTBELENBQUMsQ0FBQztJQUMvRixDQUFDO0lBQ0QsTUFBTSxJQUFJLEdBQUcsY0FBYyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLHFCQUFxQixDQUFFLENBQUM7SUFDN0UsTUFBTSxhQUFhLEdBQUcsd0JBQXdCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEQsTUFBTSxnQkFBZ0IsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztJQUM3RixNQUFNLFlBQVksR0FBRyxNQUFNLG9DQUFvQyxFQUFFLENBQUM7SUFDbEUsTUFBTSxNQUFNLEdBQUcsTUFBTSx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwRCxJQUFJLENBQUMsTUFBTSxJQUFJLE1BQU0sdUJBQXVCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNuRCxNQUFNLElBQUksS0FBSyxDQUNiLFFBQVEsSUFBSSxxRkFBcUYsQ0FDbEcsQ0FBQztJQUNKLENBQUM7SUFDRCxNQUFNLE9BQU8sR0FBRywwQkFBMEIsQ0FBQztRQUN6QyxJQUFJO1FBQ0osYUFBYTtRQUNiLGdCQUFnQjtRQUNoQixHQUFHLENBQUMsTUFBTTtZQUNSLENBQUMsQ0FBQztnQkFDRSxrQkFBa0IsRUFBRTtvQkFDbEIsR0FBRyxFQUFFLE1BQU0sQ0FBQyxhQUFhO29CQUN6QixjQUFjLEVBQUUsTUFBTSxDQUFDLGNBQWM7b0JBQ3JDLGtCQUFrQixFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7aUJBQzlDO2FBQ0Y7WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDO0tBQ1IsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxXQUFXLEdBQUcsSUFBSSxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEUsTUFBTSxlQUFlLEdBQUcsa0JBQWtCLEVBQUUsQ0FBQztJQUM3QyxNQUFNLGVBQWUsR0FBRyxNQUFNLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQztRQUMzRCxLQUFLLEVBQUUsZUFBZTtRQUN0QixPQUFPLEVBQUUsWUFBWSxDQUFDLE9BQU87UUFDN0IsT0FBTyxFQUFFLFNBQVM7S0FDbkIsQ0FBQyxDQUFDO0lBQ0gsSUFBSSxjQUFjLEdBQUcsS0FBSyxDQUFDO0lBQzNCLElBQUksZUFBd0IsQ0FBQztJQUM3QixJQUFJLENBQUM7UUFDSCxNQUFNLHNDQUFzQyxDQUFDLFdBQVcsRUFBRTtZQUN4RCxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7WUFDcEIsSUFBSTtZQUNKLGFBQWEsRUFBRSxZQUFZLENBQUMsY0FBYztZQUMxQyxvQkFBb0IsRUFBRSxNQUFNLEtBQUssU0FBUztZQUMxQyxnQkFBZ0I7WUFDaEIsYUFBYSxFQUFFLE9BQU8sQ0FBQyxhQUFhO1NBQ3JDLENBQUMsQ0FBQztRQUNILElBQUksTUFBa0QsQ0FBQztRQUN2RCxJQUFJLENBQUM7WUFDSCxJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNYLE1BQU0sV0FBVyxDQUFDLGlCQUFpQixDQUFDO29CQUNsQyxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7b0JBQ3BCLElBQUk7b0JBQ0osV0FBVyxFQUFFLHFCQUFxQjtvQkFDbEMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxPQUFPO29CQUNsQyxPQUFPLEVBQUUsWUFBWSxDQUFDLE9BQU87b0JBQzdCLFVBQVUsRUFBRSxPQUFPLENBQUMsa0JBQW1CO2lCQUN4QyxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDO29CQUNILE1BQU0sR0FBRyxNQUFNLDhCQUE4QixDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3JFLENBQUM7d0JBQVMsQ0FBQztvQkFDVCxNQUFNLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3JELENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sTUFBTSxRQUFRLEdBQUcsTUFBTSwyQkFBMkIsQ0FBQyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO2dCQUM5RSxNQUFNLEdBQUcsRUFBRSxTQUFTLEVBQUUsUUFBUSxDQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUUsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzFFLENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxRQUFRLEVBQUUsQ0FBQztZQUNsQixNQUFNLFdBQVcsR0FBRyxNQUFNLFdBQVcsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JFLElBQUksV0FBVyxDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsQ0FBQztnQkFDcEMsTUFBTSxHQUFHO29CQUNQLFNBQVMsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLEdBQUc7b0JBQ2pDLFdBQVcsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLFdBQVc7aUJBQzVDLENBQUM7WUFDSixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sTUFBTSxXQUFXLENBQUMsaUJBQWlCLENBQ2pDLE9BQU8sQ0FBQyxLQUFLLEVBQ2IsS0FBSyxFQUNMLDJDQUEyQyxFQUMzQyxRQUFRLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQ2hFLENBQUM7Z0JBQ0YsTUFBTSxRQUFRLENBQUM7WUFDakIsQ0FBQztRQUNILENBQUM7UUFDRCxNQUFNLFdBQVcsQ0FBQyxrQkFBa0IsQ0FDbEMsT0FBTyxDQUFDLEtBQUssRUFDYixNQUFNLENBQUMsU0FBUyxFQUNoQixZQUFZLENBQUMsT0FBTyxFQUNwQixNQUFNLENBQUMsV0FBVyxDQUNuQixDQUFDO1FBQ0YsTUFBTSxJQUFJLEdBQUcsaUJBQWlCLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNWLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO2dCQUNuQiwrQkFBK0IsTUFBTSxDQUFDLFNBQVMsSUFBSTtnQkFDbkQsU0FBUyxNQUFNLENBQUMsV0FBVyxFQUFFO2dCQUM3QixNQUFNO29CQUNKLENBQUMsQ0FBQyxzQkFBc0IsSUFBSSwyQ0FBMkM7b0JBQ3ZFLENBQUMsQ0FBQywwREFBMEQ7YUFDL0QsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDdkIsQ0FBQztRQUNELE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxXQUFXLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyx3REFBd0QsQ0FBQyxDQUFDO1FBQzVFLENBQUM7UUFDRCxNQUFNLFdBQVcsQ0FBQywyQkFBMkIsQ0FBQztZQUM1QyxJQUFJLEVBQUUsZUFBZTtZQUNyQixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7WUFDcEIsTUFBTSxFQUFFLG1CQUFtQixDQUFDLE1BQU07U0FDbkMsQ0FBQyxDQUFDO1FBQ0gsY0FBYyxHQUFHLElBQUksQ0FBQztRQUN0QixNQUFNLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkQsSUFBSSxnQkFBNEUsQ0FBQztRQUNqRixJQUFJLFdBQW9CLENBQUM7UUFDekIsSUFBSSxDQUFDO1lBQ0gsZ0JBQWdCLEdBQUcsTUFBTSx3QkFBd0IsQ0FDL0MsV0FBVyxFQUNYLE9BQU8sQ0FBQyxLQUFLLEVBQ2IsTUFBTSxDQUFDLFdBQVcsRUFDbEIsQ0FBQyxJQUFJLEVBQ0wsWUFBWSxDQUNiLENBQUM7UUFDSixDQUFDO1FBQUMsT0FBTyxRQUFRLEVBQUUsQ0FBQztZQUNsQixXQUFXLEdBQUcsUUFBUSxDQUFDO1lBQ3ZCLGdCQUFnQixHQUFHLE1BQU0sV0FBVyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7Z0JBQy9FLE9BQU8sRUFBRSxDQUFVO2dCQUNuQixTQUFTLEVBQUUsRUFBRTtnQkFDYixRQUFRLEVBQUUsQ0FBQztnQkFDWCxJQUFJO2dCQUNKLGFBQWEsRUFBRSxZQUFZLENBQUMsY0FBYztnQkFDMUMsb0JBQW9CLEVBQUUsTUFBTSxLQUFLLFNBQVM7Z0JBQzFDLGdCQUFnQjtnQkFDaEIsYUFBYSxFQUFFLE9BQU8sQ0FBQyxhQUFhO2dCQUNwQyxLQUFLLEVBQUUsUUFBaUI7Z0JBQ3hCLE9BQU8sRUFBRSxRQUFRLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO2dCQUN4RSxTQUFTLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDckIsY0FBYyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQzFCLFNBQVMsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNyQixRQUFRLEVBQUUsRUFBRTtnQkFDWixRQUFRLEVBQUU7b0JBQ1IsT0FBTyxFQUFFLEtBQUs7b0JBQ2QsS0FBSyxFQUFFLFFBQVEsWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7aUJBQ3ZFO2FBQ0YsQ0FBQyxDQUFDLENBQUM7UUFDTixDQUFDO1FBQ0QsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxXQUFXO2dCQUN6RCxDQUFDLENBQUM7b0JBQ0UsU0FBUyxFQUFFLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxHQUFHO29CQUN0QyxXQUFXLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLFdBQVc7aUJBQ2pEO2dCQUNILENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDWCxNQUFNLGNBQWMsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFO2dCQUMzRSxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDakYsSUFBSSxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7b0JBQzFCLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQzswQkFDbkMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3pELENBQUM7Z0JBQ0QsT0FBTyxPQUFPLENBQUM7WUFDakIsQ0FBQyxFQUFFO2dCQUNELEtBQUssRUFBRSxFQUE0QjtnQkFDbkMsUUFBUSxFQUFFLEVBQTRCO2FBQ3ZDLENBQUMsQ0FBQztZQUNILE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7Z0JBQ2xDLFFBQVEsRUFBRSxJQUFJO2dCQUNkLEdBQUcsY0FBYztnQkFDakIsb0JBQW9CLEVBQUUsTUFBTSxLQUFLLFNBQVM7Z0JBQzFDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhO2dCQUMzQyxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsYUFBYTtnQkFDekMsS0FBSyxFQUFFLGdCQUFnQixDQUFDLEtBQUs7Z0JBQzdCLE9BQU8sRUFBRSxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsT0FBTyxLQUFLLElBQUksSUFBSSxXQUFXLEtBQUssU0FBUztnQkFDakYsS0FBSyxFQUFFLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxLQUFLO3VCQUNsQyxDQUFDLFdBQVcsWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFdBQVcsS0FBSyxTQUFTO3dCQUNoRixDQUFDLENBQUMsU0FBUzt3QkFDWCxDQUFDLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUMxQixRQUFRLEVBQUUsY0FBYzthQUN6QixFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUN0QixDQUFDO1FBQ0QsSUFBSSxXQUFXO1lBQUUsTUFBTSxXQUFXLENBQUM7UUFDbkMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUN4QyxNQUFNLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxLQUFLLElBQUksR0FBRyxjQUFjLGtCQUFrQixDQUFDLENBQUM7UUFDM0YsQ0FBQztJQUNILENBQUM7SUFBQyxPQUFPLFFBQVEsRUFBRSxDQUFDO1FBQ2xCLGVBQWUsR0FBRyxRQUFRLENBQUM7SUFDN0IsQ0FBQztJQUNELElBQUksWUFBcUIsQ0FBQztJQUMxQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDO1lBQ0gsTUFBTSxlQUFlLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbEMsQ0FBQztRQUFDLE9BQU8sUUFBUSxFQUFFLENBQUM7WUFDbEIsWUFBWSxHQUFHLFFBQVEsQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUNELElBQUksZUFBZSxLQUFLLFNBQVMsSUFBSSxZQUFZLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDaEUsTUFBTSxJQUFJLGNBQWMsQ0FDdEIsQ0FBQyxlQUFlLEVBQUUsWUFBWSxDQUFDLEVBQy9CLE9BQU8sY0FBYyxxRUFBcUUsQ0FDM0YsQ0FBQztJQUNKLENBQUM7SUFDRCxJQUFJLGVBQWUsS0FBSyxTQUFTO1FBQUUsTUFBTSxlQUFlLENBQUM7SUFDekQsSUFBSSxZQUFZLEtBQUssU0FBUztRQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JELENBQUMsQ0FBQztBQUVGLE1BQU0sc0JBQXNCLEdBQUcsS0FBSyxJQUFtQixFQUFFO0lBQ3ZELElBQUksc0JBQXNCLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxzQkFBc0IsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDL0UsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsY0FBYywyRUFBMkUsQ0FBQyxDQUFDO0lBQzdILENBQUM7SUFDRCxNQUFNLE9BQU8sR0FBRyx5QkFBeUIsQ0FDdkMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLEVBQ3pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsK0JBQStCLENBQUMsQ0FDN0MsQ0FBQztJQUNGLElBQUksc0JBQXNCLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3hDLE1BQU0sZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEMsT0FBTztJQUNULENBQUM7SUFDRCxNQUFNLHNCQUFzQixHQUFHLGdCQUdiLENBQUM7SUFDbkIsTUFBTSxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsRUFBRSxlQUFlLEVBQUUsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ3hGLENBQUMsQ0FBQztBQUVGLE1BQU0sZ0NBQWdDLEdBQUcsS0FBSyxFQUFFLE9BQXlCLEVBQWlCLEVBQUU7SUFDMUYsTUFBTSxJQUFJLEdBQUcsY0FBYyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLHFCQUFxQixDQUFFLENBQUM7SUFDN0UsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDOUQsSUFBSSxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ2xCLElBQUksUUFBUSxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQzNCLE1BQU0sVUFBVSxHQUFHLE9BQU8sUUFBUSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksVUFBVSxJQUFJLENBQUMsSUFBSSxVQUFVLEdBQUcsRUFBRSxFQUFFLENBQUM7WUFDdkUsTUFBTSxJQUFJLEtBQUssQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1FBQzFFLENBQUM7UUFDRCxRQUFRLEdBQUcsVUFBVSxDQUFDO0lBQ3hCLENBQUM7SUFDRCxNQUFNLFNBQVMsR0FBRyxJQUFJLGtCQUFrQixDQUFDLENBQUMsTUFBTSx3QkFBd0IsRUFBRSxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDNUYsSUFBSSxjQUF1QixDQUFDO0lBQzVCLElBQUksQ0FBQztRQUNILE1BQU0sU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sYUFBYSxHQUFHLE1BQU0sU0FBUyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksS0FBSyxDQUNiLCtDQUErQyxJQUFJLHdDQUF3QztrQkFDekYseUZBQXlGO2tCQUN6RixnQ0FBZ0MsQ0FDbkMsQ0FBQztRQUNKLENBQUM7UUFDRCxNQUFNLE1BQU0sR0FBRyxNQUFNLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDekYsTUFBTSxTQUFTLENBQUMsZ0JBQWdCLENBQUM7WUFDL0IsSUFBSSxFQUFFLHFCQUFxQjtZQUMzQixPQUFPLEVBQUUsV0FBVztZQUNwQixZQUFZLEVBQUUsTUFBTSxDQUFDLFlBQVk7U0FDbEMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDbkIsdUJBQXVCLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDeEMsWUFBWSxNQUFNLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQzVDLGNBQWMsYUFBYSxDQUFDLFlBQVksa0NBQWtDO1NBQzNFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFBQyxPQUFPLFFBQVEsRUFBRSxDQUFDO1FBQ2xCLGNBQWMsR0FBRyxRQUFRLENBQUM7UUFDMUIsTUFBTSxRQUFRLENBQUM7SUFDakIsQ0FBQztZQUFTLENBQUM7UUFDVCxJQUFJLENBQUM7WUFDSCxNQUFNLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMxQixDQUFDO1FBQUMsT0FBTyxlQUFlLEVBQUUsQ0FBQztZQUN6QixJQUFJLGNBQWMsS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDakMsTUFBTSxJQUFJLGNBQWMsQ0FDdEIsQ0FBQyxjQUFjLEVBQUUsZUFBZSxDQUFDLEVBQ2pDLDJFQUEyRSxFQUMzRSxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsQ0FDMUIsQ0FBQztZQUNKLENBQUM7WUFDRCxNQUFNLGVBQWUsQ0FBQztRQUN4QixDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxFQUFFLE9BQXlCLEVBQWlCLEVBQUU7SUFDMUUsTUFBTSxLQUFLLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMzRCxJQUFJLENBQUM7UUFDSCxNQUFNLGdDQUFnQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2xELENBQUM7WUFBUyxDQUFDO1FBQ1QsTUFBTSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDekIsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxLQUFLLEVBQUUsV0FBc0IsRUFBaUIsRUFBRTtJQUNwRSxzQkFBc0IsR0FBRyxDQUFDLFdBQVcsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLElBQ0Usc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxXQUFXLEtBQUssUUFBUSxJQUFJLFdBQVcsS0FBSyxJQUFJLENBQUM7V0FDM0YsQ0FDRCxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRO2VBQ25DLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUk7ZUFDbEMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUMxRCxFQUNELENBQUM7UUFDRCxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDdEMsT0FBTztJQUNULENBQUM7SUFDRCxNQUFNLEdBQUcsR0FBRyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkMsSUFBSSxjQUFjLEdBQWtCLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN0RCxJQUFJLGlCQUFpQixHQUFHLEtBQUssQ0FBQztJQUM5QixNQUFNLFFBQVEsR0FBRyxDQUFDLFVBQWtCLEVBQUUsVUFBd0QsRUFBRSxFQUFFO1FBQ2hHLEdBQUcsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBeUIsRUFBRSxFQUFFO1lBQ2pFLGlCQUFpQixHQUFHLElBQUksQ0FBQztZQUN6QixjQUFjLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDO0lBQ0YsUUFBUSxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNqQyxRQUFRLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQy9CLFFBQVEsQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDakMsUUFBUSxDQUFDLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3ZDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsMEJBQTBCLENBQUMsQ0FBQztJQUNuRCxRQUFRLENBQUMsZUFBZSxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDNUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdEUsUUFBUSxDQUFDLGtCQUFrQixFQUFFLHNCQUFzQixDQUFDLENBQUM7SUFDckQsR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ3BDLGlCQUFpQixHQUFHLElBQUksQ0FBQztRQUN6QixPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQyxDQUFDLENBQUM7SUFDSCxHQUFHLENBQUMsZUFBZSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtRQUNuQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFDekIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ3hDLENBQUMsQ0FBQyxDQUFDO0lBQ0gsR0FBRyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM1QixNQUFNLGdCQUFnQixHQUFHLHNCQUFzQixDQUFDO0lBQ2hELE1BQU0sV0FBVyxHQUFHLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxDQUFDO1dBQzFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsV0FBVyxLQUFLLElBQUksSUFBSSxXQUFXLEtBQUssV0FBVyxDQUFDLENBQUM7SUFDbEcsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdkMsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsY0FBYyxrQkFBa0IsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFDRCxNQUFNLGNBQWMsQ0FBQztBQUN2QixDQUFDLENBQUMifQ==
|
|
1140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5jbGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy9jbGFzc2VzLmNsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUNMLHFCQUFxQixFQUNyQix5QkFBeUIsRUFDekIsa0NBQWtDLEdBRW5DLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUNMLHFCQUFxQixHQUN0QixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFDTCx3QkFBd0IsRUFDeEIseUJBQXlCLEdBQzFCLE1BQU0sbUNBQW1DLENBQUM7QUFRM0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDN0QsT0FBTyxFQUNMLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIscUJBQXFCLElBQUksNEJBQTRCLEVBQ3JELDhCQUE4QixFQUM5QixzQkFBc0IsRUFDdEIsd0JBQXdCLElBQUksK0JBQStCLEVBQzNELHlCQUF5QixHQUMxQixNQUFNLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sRUFDTCx3QkFBd0IsRUFDeEIsNkJBQTZCLEVBQzdCLCtCQUErQixHQUNoQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIseUJBQXlCLEVBQ3pCLGtCQUFrQixFQUNsQiw4QkFBOEIsRUFDOUIsOEJBQThCLEdBRS9CLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDcEYsT0FBTyxFQUNMLDBCQUEw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
|
|
@@ -1,19 +1,10 @@
|
|
|
1
|
+
import { type IAGLHomeOptions } from './classes.aglhome.js';
|
|
1
2
|
import type { IControllerDatabaseConfig, IControllerRuntimeConfig, IControllerRuntimeOverrides, TControllerTlsMode } from './interfaces.config.js';
|
|
2
3
|
export declare const defaultControllerPort = 4097;
|
|
3
4
|
export declare const defaultOpenCodePort = 4098;
|
|
4
5
|
export declare const trustedProxySecretEnvironmentVariable = "HARNESS_CONTROLLER_TRUSTED_PROXY_SECRET";
|
|
5
|
-
export interface IControllerDataDirectoryOptions {
|
|
6
|
-
packageRoot?: string;
|
|
7
|
-
homeDirectory?: string;
|
|
8
|
-
environment?: NodeJS.ProcessEnv;
|
|
6
|
+
export interface IControllerDataDirectoryOptions extends IAGLHomeOptions {
|
|
9
7
|
}
|
|
10
|
-
export interface IControllerDataRootPaths {
|
|
11
|
-
legacyRoot: string;
|
|
12
|
-
targetRoot: string;
|
|
13
|
-
migrationRequired: boolean;
|
|
14
|
-
}
|
|
15
|
-
export declare const controllerDataRootPaths: (optionsArg?: IControllerDataDirectoryOptions) => IControllerDataRootPaths;
|
|
16
|
-
/** Retained location for controller and upgrade logs across the A to B transition. */
|
|
17
8
|
export declare const controllerDataDirectory: (optionsArg?: IControllerDataDirectoryOptions) => string;
|
|
18
9
|
/** @deprecated Use controllerDataDirectory(). */
|
|
19
10
|
export declare const controllerStateDirectory: (optionsArg?: IControllerDataDirectoryOptions) => string;
|