@toon-protocol/connector 2.2.0 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +118 -46
- package/dist/btp/btp-client-manager.d.ts +3 -0
- package/dist/btp/btp-client-manager.d.ts.map +1 -1
- package/dist/btp/btp-client-manager.js +19 -4
- package/dist/btp/btp-client-manager.js.map +1 -1
- package/dist/btp/btp-client.d.ts +4 -1
- package/dist/btp/btp-client.d.ts.map +1 -1
- package/dist/btp/btp-client.js +24 -10
- package/dist/btp/btp-client.js.map +1 -1
- package/dist/config/config-loader.d.ts +4 -0
- package/dist/config/config-loader.d.ts.map +1 -1
- package/dist/config/config-loader.js +165 -1
- package/dist/config/config-loader.js.map +1 -1
- package/dist/config/index.d.ts +1 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/types.d.ts +18 -15
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +2 -5
- package/dist/config/types.js.map +1 -1
- package/dist/core/connector-node.d.ts +12 -1
- package/dist/core/connector-node.d.ts.map +1 -1
- package/dist/core/connector-node.js +237 -21
- package/dist/core/connector-node.js.map +1 -1
- package/dist/http/types.d.ts +4 -0
- package/dist/http/types.d.ts.map +1 -1
- package/dist/lib.d.ts +1 -1
- package/dist/lib.d.ts.map +1 -1
- package/dist/settlement/account-manager.d.ts.map +1 -1
- package/dist/settlement/account-manager.js +1 -1
- package/dist/settlement/account-manager.js.map +1 -1
- package/dist/settlement/claim-receiver.d.ts +1 -0
- package/dist/settlement/claim-receiver.d.ts.map +1 -1
- package/dist/settlement/claim-receiver.js +23 -0
- package/dist/settlement/claim-receiver.js.map +1 -1
- package/dist/settlement/provider/payment-channel-provider.d.ts +9 -0
- package/dist/settlement/provider/payment-channel-provider.d.ts.map +1 -1
- package/dist/settlement/settlement-executor.d.ts +3 -0
- package/dist/settlement/settlement-executor.d.ts.map +1 -1
- package/dist/settlement/settlement-executor.js +10 -1
- package/dist/settlement/settlement-executor.js.map +1 -1
- package/dist/transport/direct-transport-provider.d.ts +12 -0
- package/dist/transport/direct-transport-provider.d.ts.map +1 -0
- package/dist/transport/direct-transport-provider.js +27 -0
- package/dist/transport/direct-transport-provider.js.map +1 -0
- package/dist/transport/index.d.ts +7 -0
- package/dist/transport/index.d.ts.map +1 -0
- package/dist/transport/index.js +16 -0
- package/dist/transport/index.js.map +1 -0
- package/dist/transport/managed-anon-client.d.ts +47 -0
- package/dist/transport/managed-anon-client.d.ts.map +1 -0
- package/dist/transport/managed-anon-client.js +265 -0
- package/dist/transport/managed-anon-client.js.map +1 -0
- package/dist/transport/probe-tcp-port.d.ts +3 -0
- package/dist/transport/probe-tcp-port.d.ts.map +1 -0
- package/dist/transport/probe-tcp-port.js +59 -0
- package/dist/transport/probe-tcp-port.js.map +1 -0
- package/dist/transport/socks-transport-provider.d.ts +29 -0
- package/dist/transport/socks-transport-provider.d.ts.map +1 -0
- package/dist/transport/socks-transport-provider.js +136 -0
- package/dist/transport/socks-transport-provider.js.map +1 -0
- package/dist/transport/socks-url.d.ts +6 -0
- package/dist/transport/socks-url.d.ts.map +1 -0
- package/dist/transport/socks-url.js +29 -0
- package/dist/transport/socks-url.js.map +1 -0
- package/dist/transport/transport-provider.d.ts +9 -0
- package/dist/transport/transport-provider.d.ts.map +1 -0
- package/dist/transport/transport-provider.js +3 -0
- package/dist/transport/transport-provider.js.map +1 -0
- package/dist/utils/redact.d.ts +3 -0
- package/dist/utils/redact.d.ts.map +1 -0
- package/dist/utils/redact.js +21 -0
- package/dist/utils/redact.js.map +1 -0
- package/package.json +9 -2
|
@@ -2,12 +2,15 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ConnectorNode = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
+
const fs_1 = require("fs");
|
|
6
|
+
const nodePath = tslib_1.__importStar(require("path"));
|
|
5
7
|
const routing_table_1 = require("../routing/routing-table");
|
|
6
8
|
const btp_client_manager_1 = require("../btp/btp-client-manager");
|
|
7
9
|
const btp_server_1 = require("../btp/btp-server");
|
|
8
10
|
const packet_handler_1 = require("./packet-handler");
|
|
9
11
|
const shared_1 = require("@toon-protocol/shared");
|
|
10
12
|
const types_1 = require("../config/types");
|
|
13
|
+
const transport_1 = require("../transport");
|
|
11
14
|
const payment_handler_1 = require("./payment-handler");
|
|
12
15
|
const types_2 = require("../settlement/types");
|
|
13
16
|
const admin_api_1 = require("../http/admin-api");
|
|
@@ -56,10 +59,17 @@ class ConnectorNode {
|
|
|
56
59
|
_startTime = new Date();
|
|
57
60
|
_btpServerStarted = false;
|
|
58
61
|
_defaultSettlementTokenId = 'M2M';
|
|
62
|
+
_transportProvider = null;
|
|
63
|
+
_transportProviderReady = false;
|
|
64
|
+
_transportType = null;
|
|
65
|
+
_lastTransportHealthy = true;
|
|
66
|
+
_transportHealthInterval = null;
|
|
67
|
+
_transportHealthIntervalMs;
|
|
59
68
|
get defaultSettlementTokenId() {
|
|
60
69
|
return this._defaultSettlementTokenId;
|
|
61
70
|
}
|
|
62
|
-
constructor(config, logger) {
|
|
71
|
+
constructor(config, logger, opts) {
|
|
72
|
+
this._transportHealthIntervalMs = opts?.transportHealthIntervalMs ?? 30000;
|
|
63
73
|
let resolvedConfig;
|
|
64
74
|
try {
|
|
65
75
|
if (typeof config === 'string') {
|
|
@@ -92,6 +102,7 @@ class ConnectorNode {
|
|
|
92
102
|
}));
|
|
93
103
|
this._routingTable = new routing_table_1.RoutingTable(routingTableEntries, logger.child({ component: 'RoutingTable' }));
|
|
94
104
|
this._btpClientManager = new btp_client_manager_1.BTPClientManager(resolvedConfig.nodeId, logger.child({ component: 'BTPClientManager' }));
|
|
105
|
+
this._btpClientManager.setAgentFactory((peerUrl) => this._transportProvider?.createAgent(peerUrl));
|
|
95
106
|
this._packetHandler = new packet_handler_1.PacketHandler(this._routingTable, this._btpClientManager, resolvedConfig.nodeId, logger.child({ component: 'PacketHandler' }));
|
|
96
107
|
this._btpServer = new btp_server_1.BTPServer(logger.child({ component: 'BTPServer' }), this._packetHandler);
|
|
97
108
|
this._packetHandler.setBTPServer(this._btpServer);
|
|
@@ -197,12 +208,56 @@ class ConnectorNode {
|
|
|
197
208
|
}, 'Starting connector node');
|
|
198
209
|
try {
|
|
199
210
|
(0, types_1.validateChainProviders)(this._config, this._logger);
|
|
200
|
-
const
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
211
|
+
const createdProvider = this._createTransportProvider(this._config.transport);
|
|
212
|
+
this._transportProvider = createdProvider;
|
|
213
|
+
this._transportType =
|
|
214
|
+
this._config.transport === undefined ? 'direct' : this._config.transport.type;
|
|
215
|
+
try {
|
|
216
|
+
await createdProvider.start();
|
|
217
|
+
}
|
|
218
|
+
catch (err) {
|
|
219
|
+
this._transportProvider = null;
|
|
220
|
+
this._transportType = null;
|
|
221
|
+
this._transportProviderReady = false;
|
|
222
|
+
throw err;
|
|
223
|
+
}
|
|
224
|
+
this._transportProviderReady = true;
|
|
225
|
+
this._lastTransportHealthy = true;
|
|
226
|
+
this._transportHealthInterval = setInterval(() => {
|
|
227
|
+
const provider = this._transportProvider;
|
|
228
|
+
if (!provider || !this._transportProviderReady)
|
|
229
|
+
return;
|
|
230
|
+
provider
|
|
231
|
+
.healthCheck()
|
|
232
|
+
.then((healthy) => {
|
|
233
|
+
if (this._transportProviderReady && this._transportProvider === provider) {
|
|
234
|
+
this._lastTransportHealthy = healthy;
|
|
235
|
+
}
|
|
236
|
+
})
|
|
237
|
+
.catch(() => {
|
|
238
|
+
if (this._transportProviderReady && this._transportProvider === provider) {
|
|
239
|
+
this._lastTransportHealthy = false;
|
|
240
|
+
}
|
|
241
|
+
});
|
|
242
|
+
}, this._transportHealthIntervalMs);
|
|
243
|
+
this._transportHealthInterval.unref?.();
|
|
244
|
+
const evmProviderConfig = this._config.chainProviders?.find((p) => p.chainType === 'evm');
|
|
245
|
+
const legacySettlementVars = [
|
|
246
|
+
'BASE_L2_RPC_URL',
|
|
247
|
+
'SETTLEMENT_ENABLED',
|
|
248
|
+
'TOKEN_NETWORK_REGISTRY',
|
|
249
|
+
'M2M_TOKEN_ADDRESS',
|
|
250
|
+
'TREASURY_EVM_PRIVATE_KEY',
|
|
251
|
+
];
|
|
252
|
+
const detectedLegacyVars = legacySettlementVars.filter((v) => process.env[v]);
|
|
253
|
+
if (detectedLegacyVars.length > 0) {
|
|
254
|
+
this._logger.warn({ event: 'legacy_env_vars_detected', vars: detectedLegacyVars }, 'Detected legacy settlement env vars -- these are no longer used. Configure chainProviders with an EVM entry instead.');
|
|
255
|
+
}
|
|
256
|
+
const baseRpcUrl = evmProviderConfig?.rpcUrl;
|
|
257
|
+
const registryAddress = evmProviderConfig?.registryAddress;
|
|
258
|
+
const m2mTokenAddress = evmProviderConfig?.tokenAddress;
|
|
259
|
+
const treasuryPrivateKey = evmProviderConfig?.keyId;
|
|
260
|
+
if (evmProviderConfig &&
|
|
206
261
|
baseRpcUrl &&
|
|
207
262
|
registryAddress &&
|
|
208
263
|
m2mTokenAddress &&
|
|
@@ -287,9 +342,8 @@ class ConnectorNode {
|
|
|
287
342
|
const tokenAddressMap = new Map();
|
|
288
343
|
tokenAddressMap.set(this._defaultSettlementTokenId, m2mTokenAddress);
|
|
289
344
|
tokenAddressMap.set(m2mTokenAddress, m2mTokenAddress);
|
|
290
|
-
const defaultSettlementTimeout =
|
|
291
|
-
const initialDepositMultiplier =
|
|
292
|
-
parseInt(process.env.INITIAL_DEPOSIT_MULTIPLIER ?? '1', 10);
|
|
345
|
+
const defaultSettlementTimeout = evmProviderConfig.settlementOptions?.settlementTimeoutSecs ?? 86400;
|
|
346
|
+
const initialDepositMultiplier = evmProviderConfig.settlementOptions?.initialDepositMultiplier ?? 1;
|
|
293
347
|
let accountManager;
|
|
294
348
|
const tigerBeetleClusterId = process.env.TIGERBEETLE_CLUSTER_ID;
|
|
295
349
|
const tigerBeetleReplicas = process.env.TIGERBEETLE_REPLICAS;
|
|
@@ -348,7 +402,7 @@ class ConnectorNode {
|
|
|
348
402
|
this._accountManager = accountManager;
|
|
349
403
|
}
|
|
350
404
|
const peerIds = Array.from(peerIdToAddressMap.keys());
|
|
351
|
-
const settlementThreshold = BigInt(
|
|
405
|
+
const settlementThreshold = BigInt(evmProviderConfig.settlementOptions?.threshold ?? '1000000');
|
|
352
406
|
this._logger.info({
|
|
353
407
|
event: 'settlement_monitor_config',
|
|
354
408
|
peerIds,
|
|
@@ -477,6 +531,7 @@ class ConnectorNode {
|
|
|
477
531
|
this._settlementMonitor.stop();
|
|
478
532
|
this._settlementMonitor.start();
|
|
479
533
|
}
|
|
534
|
+
this._settlementExecutor?.setClaimReceiver(claimReceiver);
|
|
480
535
|
this._logger.info({ event: 'claim_receiver_enabled' }, 'ClaimReceiver wired to BTP server and SettlementMonitor');
|
|
481
536
|
}
|
|
482
537
|
catch (error) {
|
|
@@ -487,7 +542,7 @@ class ConnectorNode {
|
|
|
487
542
|
if (accountManager) {
|
|
488
543
|
const settlementConfig = {
|
|
489
544
|
connectorFeePercentage: this._config.settlement?.connectorFeePercentage ?? 0.1,
|
|
490
|
-
enableSettlement:
|
|
545
|
+
enableSettlement: true,
|
|
491
546
|
tigerBeetleClusterId: tigerBeetleClusterId ? parseInt(tigerBeetleClusterId, 10) : 0,
|
|
492
547
|
tigerBeetleReplicas: tigerBeetleReplicas
|
|
493
548
|
? tigerBeetleReplicas.split(',').map((s) => s.trim())
|
|
@@ -613,6 +668,24 @@ class ConnectorNode {
|
|
|
613
668
|
nodeId: this._config.nodeId,
|
|
614
669
|
error: errorMessage,
|
|
615
670
|
}, 'Failed to start connector node');
|
|
671
|
+
if (this._transportHealthInterval) {
|
|
672
|
+
clearInterval(this._transportHealthInterval);
|
|
673
|
+
this._transportHealthInterval = null;
|
|
674
|
+
}
|
|
675
|
+
if (this._transportProvider) {
|
|
676
|
+
this._transportProviderReady = false;
|
|
677
|
+
try {
|
|
678
|
+
await this._transportProvider.stop();
|
|
679
|
+
}
|
|
680
|
+
catch (stopErr) {
|
|
681
|
+
const stopMsg = stopErr instanceof Error ? stopErr.message : String(stopErr);
|
|
682
|
+
this._logger.warn({ event: 'transport_rollback_stop_failed', error: stopMsg }, 'Transport provider stop() failed during start() rollback; continuing');
|
|
683
|
+
}
|
|
684
|
+
finally {
|
|
685
|
+
this._transportProvider = null;
|
|
686
|
+
this._transportType = null;
|
|
687
|
+
}
|
|
688
|
+
}
|
|
616
689
|
this._healthStatus = 'unhealthy';
|
|
617
690
|
throw error;
|
|
618
691
|
}
|
|
@@ -673,6 +746,20 @@ class ConnectorNode {
|
|
|
673
746
|
}
|
|
674
747
|
await this._healthServer.stop();
|
|
675
748
|
await this._btpServer.stop();
|
|
749
|
+
if (this._transportHealthInterval) {
|
|
750
|
+
clearInterval(this._transportHealthInterval);
|
|
751
|
+
this._transportHealthInterval = null;
|
|
752
|
+
}
|
|
753
|
+
if (this._transportProvider) {
|
|
754
|
+
this._transportProviderReady = false;
|
|
755
|
+
try {
|
|
756
|
+
await this._transportProvider.stop();
|
|
757
|
+
}
|
|
758
|
+
finally {
|
|
759
|
+
this._transportProvider = null;
|
|
760
|
+
this._transportType = null;
|
|
761
|
+
}
|
|
762
|
+
}
|
|
676
763
|
this._logger.info({
|
|
677
764
|
event: 'connector_stopped',
|
|
678
765
|
nodeId: this._config.nodeId,
|
|
@@ -704,6 +791,12 @@ class ConnectorNode {
|
|
|
704
791
|
nodeId: this._config.nodeId,
|
|
705
792
|
version: package_json_1.default.version,
|
|
706
793
|
};
|
|
794
|
+
if (this._transportProviderReady && this._transportProvider && this._transportType) {
|
|
795
|
+
healthStatus.transport = {
|
|
796
|
+
type: this._transportType,
|
|
797
|
+
healthy: this._transportType === 'direct' ? true : this._lastTransportHealthy,
|
|
798
|
+
};
|
|
799
|
+
}
|
|
707
800
|
return healthStatus;
|
|
708
801
|
}
|
|
709
802
|
get routingTable() {
|
|
@@ -712,6 +805,129 @@ class ConnectorNode {
|
|
|
712
805
|
get btpClientManager() {
|
|
713
806
|
return this._btpClientManager;
|
|
714
807
|
}
|
|
808
|
+
get transportProvider() {
|
|
809
|
+
return this._transportProviderReady ? this._transportProvider : null;
|
|
810
|
+
}
|
|
811
|
+
_createTransportProvider(cfg) {
|
|
812
|
+
if (cfg === undefined || cfg.type === 'direct') {
|
|
813
|
+
const externalUrl = `ws://localhost:${this._config.btpServerPort}`;
|
|
814
|
+
this._logger.debug({ event: 'direct_transport_external_url_synthesized', externalUrl }, 'DirectTransportProvider externalUrl synthesized from btpServerPort (local placeholder)');
|
|
815
|
+
return new transport_1.DirectTransportProvider(externalUrl);
|
|
816
|
+
}
|
|
817
|
+
if (cfg.type === 'socks5') {
|
|
818
|
+
let managedClient;
|
|
819
|
+
let externalUrl = cfg.externalUrl;
|
|
820
|
+
if (cfg.managed === true) {
|
|
821
|
+
let cachedFactory;
|
|
822
|
+
let prewarmError;
|
|
823
|
+
const prewarmPromise = (0, transport_1.createDefaultAnonFactory)().then((f) => {
|
|
824
|
+
cachedFactory = f;
|
|
825
|
+
}, (err) => {
|
|
826
|
+
prewarmError = err;
|
|
827
|
+
});
|
|
828
|
+
const anonFactory = (opts) => {
|
|
829
|
+
if (cachedFactory) {
|
|
830
|
+
return cachedFactory(opts);
|
|
831
|
+
}
|
|
832
|
+
if (prewarmError) {
|
|
833
|
+
if (prewarmError.code === 'MODULE_NOT_FOUND') {
|
|
834
|
+
throw prewarmError;
|
|
835
|
+
}
|
|
836
|
+
throw new Error(`Failed to load optional dependency "@anyone-protocol/anyone-client": ` +
|
|
837
|
+
`${prewarmError.message ?? String(prewarmError)}`, { cause: prewarmError });
|
|
838
|
+
}
|
|
839
|
+
try {
|
|
840
|
+
const pkg = '@anyone-protocol/anyone-client';
|
|
841
|
+
const mod = require(pkg);
|
|
842
|
+
const AnonCtor = mod?.Anon ?? mod?.default?.Anon ?? mod?.default;
|
|
843
|
+
if (typeof AnonCtor !== 'function') {
|
|
844
|
+
throw new Error('@anyone-protocol/anyone-client did not export an `Anon` constructor');
|
|
845
|
+
}
|
|
846
|
+
cachedFactory = (o) => new AnonCtor(o);
|
|
847
|
+
return cachedFactory(opts);
|
|
848
|
+
}
|
|
849
|
+
catch (err) {
|
|
850
|
+
const cause = err;
|
|
851
|
+
if (cause?.code === 'MODULE_NOT_FOUND') {
|
|
852
|
+
throw cause;
|
|
853
|
+
}
|
|
854
|
+
if (cause?.code === 'ERR_REQUIRE_ESM') {
|
|
855
|
+
throw new Error(`@anyone-protocol/anyone-client is an ESM-only package; ` +
|
|
856
|
+
`the async lazy-import pre-warm had not completed when the factory ` +
|
|
857
|
+
`was invoked. This is a timing bug — please file an issue.`, { cause });
|
|
858
|
+
}
|
|
859
|
+
throw new Error(`Failed to load optional dependency "@anyone-protocol/anyone-client": ` +
|
|
860
|
+
`${cause?.message ?? String(err)}`, { cause });
|
|
861
|
+
}
|
|
862
|
+
};
|
|
863
|
+
void prewarmPromise;
|
|
864
|
+
managedClient = new transport_1.ManagedAnonClient({
|
|
865
|
+
socksProxy: cfg.socksProxy,
|
|
866
|
+
hiddenServiceDir: cfg.managedOptions?.hiddenServiceDir,
|
|
867
|
+
hiddenServicePort: cfg.managedOptions?.hiddenServicePort,
|
|
868
|
+
binaryPath: cfg.managedOptions?.binaryPath,
|
|
869
|
+
startupTimeoutMs: cfg.managedOptions?.startupTimeoutMs,
|
|
870
|
+
stopTimeoutMs: cfg.managedOptions?.stopTimeoutMs,
|
|
871
|
+
logger: this._logger,
|
|
872
|
+
anonFactory,
|
|
873
|
+
});
|
|
874
|
+
if (externalUrl === 'auto') {
|
|
875
|
+
externalUrl = 'wss://pending.invalid/btp';
|
|
876
|
+
}
|
|
877
|
+
}
|
|
878
|
+
else if (externalUrl === 'auto') {
|
|
879
|
+
throw new Error('_createTransportProvider: transport.externalUrl "auto" requires managed: true');
|
|
880
|
+
}
|
|
881
|
+
let resolveExternalUrlOnStart;
|
|
882
|
+
if (cfg.externalUrl === 'auto') {
|
|
883
|
+
const hsDir = cfg.managedOptions?.hiddenServiceDir;
|
|
884
|
+
if (!hsDir) {
|
|
885
|
+
throw new Error('_createTransportProvider: transport.externalUrl "auto" requires managedOptions.hiddenServiceDir');
|
|
886
|
+
}
|
|
887
|
+
const hostnameReadDeadlineMs = cfg.managedOptions?.startupTimeoutMs ?? 30_000;
|
|
888
|
+
const HIDDEN_SERVICE_HOSTNAME_RE = /^[a-z2-7]{16}(?:[a-z2-7]{40})?\.(?:anon|onion)$/;
|
|
889
|
+
resolveExternalUrlOnStart = async () => {
|
|
890
|
+
const hostnameFile = nodePath.join(hsDir, 'hostname');
|
|
891
|
+
const deadline = Date.now() + hostnameReadDeadlineMs;
|
|
892
|
+
let lastErr;
|
|
893
|
+
while (Date.now() < deadline) {
|
|
894
|
+
try {
|
|
895
|
+
const raw = await fs_1.promises.readFile(hostnameFile, 'utf8');
|
|
896
|
+
const firstLine = raw.split(/\r?\n/, 1)[0]?.trim() ?? '';
|
|
897
|
+
const hostname = firstLine;
|
|
898
|
+
if (!hostname) {
|
|
899
|
+
lastErr = new Error('hostname file is empty');
|
|
900
|
+
}
|
|
901
|
+
else if (!HIDDEN_SERVICE_HOSTNAME_RE.test(hostname)) {
|
|
902
|
+
lastErr = new Error(`hostname file contents did not match the expected hidden service format ` +
|
|
903
|
+
`(length=${hostname.length}); ignoring and retrying`);
|
|
904
|
+
}
|
|
905
|
+
else {
|
|
906
|
+
return `wss://${hostname}/btp`;
|
|
907
|
+
}
|
|
908
|
+
}
|
|
909
|
+
catch (err) {
|
|
910
|
+
lastErr = err;
|
|
911
|
+
}
|
|
912
|
+
await new Promise((r) => setTimeout(r, 250));
|
|
913
|
+
}
|
|
914
|
+
const reason = lastErr instanceof Error ? lastErr.message : String(lastErr ?? 'unknown');
|
|
915
|
+
throw new Error(`hidden service hostname file "${hostnameFile}" did not become readable ` +
|
|
916
|
+
`within ${hostnameReadDeadlineMs}ms (last error: ${reason})`);
|
|
917
|
+
};
|
|
918
|
+
}
|
|
919
|
+
return new transport_1.SocksTransportProvider({
|
|
920
|
+
socksProxy: cfg.socksProxy,
|
|
921
|
+
externalUrl,
|
|
922
|
+
logger: this._logger,
|
|
923
|
+
managedClient,
|
|
924
|
+
resolveExternalUrlOnStart,
|
|
925
|
+
});
|
|
926
|
+
}
|
|
927
|
+
const _exhaustive = cfg;
|
|
928
|
+
throw new Error(`Unsupported transport type: ${JSON.stringify(_exhaustive)} ` +
|
|
929
|
+
'(Story 35.4 _createTransportProvider exhaustiveness guard)');
|
|
930
|
+
}
|
|
715
931
|
get paymentChannelSDK() {
|
|
716
932
|
return this._paymentChannelSDK;
|
|
717
933
|
}
|
|
@@ -725,11 +941,9 @@ class ConnectorNode {
|
|
|
725
941
|
return this._chainSDKs.get(chainId) ?? null;
|
|
726
942
|
}
|
|
727
943
|
async _createInMemoryAccountManager() {
|
|
728
|
-
const
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
const persistIntervalMs = this._config.settlementInfra?.ledgerPersistIntervalMs ??
|
|
732
|
-
parseInt(process.env.LEDGER_PERSIST_INTERVAL_MS || '30000', 10);
|
|
944
|
+
const evmProvider = this._config.chainProviders?.find((p) => p.chainType === 'evm');
|
|
945
|
+
const snapshotPath = evmProvider?.settlementOptions?.ledgerSnapshotPath ?? './data/ledger-snapshot.json';
|
|
946
|
+
const persistIntervalMs = evmProvider?.settlementOptions?.ledgerPersistIntervalMs ?? 30000;
|
|
733
947
|
let inMemoryClient;
|
|
734
948
|
try {
|
|
735
949
|
inMemoryClient = new in_memory_ledger_client_1.InMemoryLedgerClient({
|
|
@@ -833,8 +1047,10 @@ class ConnectorNode {
|
|
|
833
1047
|
typeof config.authToken !== 'string') {
|
|
834
1048
|
throw new Error('authToken must be a string (can be empty for no auth)');
|
|
835
1049
|
}
|
|
836
|
-
|
|
837
|
-
|
|
1050
|
+
const PLAIN_WS_PREFIX = 'ws' + '://';
|
|
1051
|
+
const SECURE_WS_PREFIX = 'wss' + '://';
|
|
1052
|
+
if (!config.url.startsWith(PLAIN_WS_PREFIX) && !config.url.startsWith(SECURE_WS_PREFIX)) {
|
|
1053
|
+
throw new Error(`URL must start with ${PLAIN_WS_PREFIX} or ${SECURE_WS_PREFIX}`);
|
|
838
1054
|
}
|
|
839
1055
|
if (config.routes) {
|
|
840
1056
|
for (const route of config.routes) {
|
|
@@ -1000,7 +1216,7 @@ class ConnectorNode {
|
|
|
1000
1216
|
throw new config_loader_1.ConnectorNotStartedError('Connector is not started. Call start() before openChannel().');
|
|
1001
1217
|
}
|
|
1002
1218
|
if (!this._channelManager) {
|
|
1003
|
-
throw new Error('
|
|
1219
|
+
throw new Error('No EVM chain provider configured -- openChannel requires a chainProviders entry with chainType: "evm"');
|
|
1004
1220
|
}
|
|
1005
1221
|
const existingPeers = this._btpClientManager.getPeerIds();
|
|
1006
1222
|
if (!existingPeers.includes(params.peerId)) {
|
|
@@ -1031,7 +1247,7 @@ class ConnectorNode {
|
|
|
1031
1247
|
throw new config_loader_1.ConnectorNotStartedError('Connector is not started. Call start() before getChannelState().');
|
|
1032
1248
|
}
|
|
1033
1249
|
if (!this._channelManager) {
|
|
1034
|
-
throw new Error('
|
|
1250
|
+
throw new Error('No EVM chain provider configured -- openChannel requires a chainProviders entry with chainType: "evm"');
|
|
1035
1251
|
}
|
|
1036
1252
|
const metadata = this._channelManager.getChannelById(channelId);
|
|
1037
1253
|
if (!metadata) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connector-node.js","sourceRoot":"","sources":["../../src/core/connector-node.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"connector-node.js","sourceRoot":"","sources":["../../src/core/connector-node.ts"],"names":[],"mappings":";;;;AAKA,2BAA4C;AAC5C,uDAAiC;AAEjC,4DAAwD;AACxD,kEAA6D;AAC7D,kDAA8C;AAC9C,qDAAiD;AAEjD,kDAS+B;AAC/B,2CAayB;AACzB,4CAQsB;AACtB,uDAAgF;AAChF,+CAI6B;AAC7B,iDAA6D;AAC7D,2DAIiC;AACjC,yDAAqD;AACrD,uDAAmD;AAEnD,2EAAsE;AACtE,mEAA+D;AAC/D,2EAAuE;AACvE,mEAA+D;AAC/D,yEAAqE;AACrE,iEAA6D;AAC7D,qFAAuF;AACvF,yDAAqD;AACrD,gEAA4D;AAC5D,yEAAqE;AACrE,mFAA6E;AAC7E,qFAA+E;AAC/E,4FAAuF;AACvF,sGAAgG;AAEhG,iFAG8C;AAC9C,4EAAuE;AACvE,mFAA8E;AAC9E,+CAAiD;AACjD,6BAAsC;AAEtC,8EAA6C;AAO7C,MAAa,aAAa;IACP,OAAO,CAAkB;IACzB,OAAO,CAAS;IAChB,aAAa,CAAe;IAC5B,iBAAiB,CAAmB;IACpC,cAAc,CAAgB;IAC9B,UAAU,CAAY;IACtB,aAAa,CAAe;IACrC,YAAY,GAAuB,IAAI,CAAC;IACxC,kBAAkB,GAA6B,IAAI,CAAC;IACpD,UAAU,GAAmC,IAAI,GAAG,EAAE,CAAC;IACvD,eAAe,GAA0B,IAAI,CAAC;IAC9C,eAAe,GAA0B,IAAI,CAAC;IAC9C,kBAAkB,GAA6B,IAAI,CAAC;IACpD,mBAAmB,GAA8B,IAAI,CAAC;IACtD,kBAAkB,GAA6B,IAAI,CAAC;IACpD,qBAAqB,GAAgC,IAAI,CAAC;IACjD,gBAAgB,GAAsC,IAAI,GAAG,EAAE,CAAC;IACzE,aAAa,GAAyC,UAAU,CAAC;IACxD,UAAU,GAAS,IAAI,IAAI,EAAE,CAAC;IACvC,iBAAiB,GAAY,KAAK,CAAC;IACnC,yBAAyB,GAAW,KAAK,CAAC;IAE1C,kBAAkB,GAA6B,IAAI,CAAC;IAOpD,uBAAuB,GAAY,KAAK,CAAC;IACzC,cAAc,GAA+B,IAAI,CAAC;IAClD,qBAAqB,GAAY,IAAI,CAAC;IACtC,wBAAwB,GAA0B,IAAI,CAAC;IAM9C,0BAA0B,CAAS;IAMpD,IAAI,wBAAwB;QAC1B,OAAO,IAAI,CAAC,yBAAyB,CAAC;IACxC,CAAC;IAQD,YACE,MAAgC,EAChC,MAAc,EACd,IAA6C;QAK7C,IAAI,CAAC,0BAA0B,GAAG,IAAI,EAAE,yBAAyB,IAAI,KAAK,CAAC;QAE3E,IAAI,cAA+B,CAAC;QACpC,IAAI,CAAC;YACH,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,cAAc,GAAG,4BAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACN,cAAc,GAAG,4BAAY,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,kCAAkB,EAAE,CAAC;gBACxC,MAAM,UAAU,GACd,OAAO,MAAM,KAAK,QAAQ;oBACxB,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE;oBACzE,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC9E,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,8BAA8B,CAAC,CAAC;gBACzD,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC;QAE3F,MAAM,gBAAgB,GACpB,OAAO,MAAM,KAAK,QAAQ;YACxB,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE;YAC7E,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC;QAClF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,mCAAmC,CAAC,CAAC;QAGzE,MAAM,mBAAmB,GAAwB,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACrF,MAAM,EAAE,KAAK,CAAC,MAAoB;YAClC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,CAAC,CAAC;QAGJ,IAAI,CAAC,aAAa,GAAG,IAAI,4BAAY,CACnC,mBAAmB,EACnB,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAC5C,CAAC;QAGF,IAAI,CAAC,iBAAiB,GAAG,IAAI,qCAAgB,CAC3C,cAAc,CAAC,MAAM,EACrB,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,CAChD,CAAC;QAMF,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE,EAAE,CACjD,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,OAAO,CAAC,CAC9C,CAAC;QAGF,IAAI,CAAC,cAAc,GAAG,IAAI,8BAAa,CACrC,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,iBAAiB,EACtB,cAAc,CAAC,MAAM,EACrB,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAC7C,CAAC;QAGF,IAAI,CAAC,UAAU,GAAG,IAAI,sBAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAG/F,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAGlD,MAAM,oBAAoB,GACxB,cAAc,CAAC,aAAa,EAAE,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,MAAM,CAAC;QACzF,IAAI,oBAAoB,EAAE,CAAC;YACzB,MAAM,mBAAmB,GAAG;gBAC1B,OAAO,EAAE,IAAI;gBACb,UAAU,EACR,cAAc,CAAC,aAAa,EAAE,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE;gBAClF,OAAO,EACL,cAAc,CAAC,aAAa,EAAE,OAAO;oBACrC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,OAAO,EAAE,EAAE,CAAC;gBAC7D,SAAS,EAAE,cAAc,CAAC,aAAa,EAAE,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB;gBAC3F,kBAAkB,EAChB,cAAc,CAAC,aAAa,EAAE,kBAAkB;oBAChD,OAAO,CAAC,GAAG,CAAC,mCAAmC,KAAK,MAAM;aAC7D,CAAC;YACF,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAC5D,CAAC;QAGD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAG7D,IAAI,CAAC,aAAa,GAAG,IAAI,4BAAY,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QAEzF,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;YACE,KAAK,EAAE,uBAAuB;YAC9B,MAAM,EAAE,cAAc,CAAC,MAAM;YAC7B,UAAU,EAAE,cAAc,CAAC,KAAK,CAAC,MAAM;YACvC,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,MAAM;SAC1C,EACD,4BAA4B,CAC7B,CAAC;IACJ,CAAC;IASD,uBAAuB,CAAC,OAAoC;QAC1D,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,4BAA4B,EAAE,UAAU,EAAE,OAAO,KAAK,IAAI,EAAE,EACrE,OAAO;YACL,CAAC,CAAC,4CAA4C;YAC9C,CAAC,CAAC,yCAAyC,CAC9C,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAaD,gBAAgB,CAAC,OAA8B;QAC7C,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,oBAAoB,EAAE,UAAU,EAAE,OAAO,KAAK,IAAI,EAAE,EAC7D,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,wBAAwB,CACjE,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,IAAA,6CAA2B,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACnE,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAqCD,iBAAiB;QAEf,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QACrC,CAAC;QAGD,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,KAAK,IAAI,CAAC;QACtE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;QAG5D,IAAI,gBAAgB,IAAI,WAAW,EAAE,CAAC;YACpC,OAAO,YAAY,CAAC;QACtB,CAAC;QAGD,IAAI,CAAC,gBAAgB,IAAI,CAAC,WAAW,EAAE,CAAC;YACtC,OAAO,UAAU,CAAC;QACpB,CAAC;QAID,OAAO,UAAU,CAAC;IACpB,CAAC;IAuBD,UAAU;QACR,OAAO,IAAI,CAAC,iBAAiB,EAAE,KAAK,UAAU,CAAC;IACjD,CAAC;IAsBD,YAAY;QACV,OAAO,IAAI,CAAC,iBAAiB,EAAE,KAAK,YAAY,CAAC;IACnD,CAAC;IAUD,KAAK,CAAC,UAAU,CAAC,MAAwB;QACvC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,IAAI,wCAAwB,EAAE,CAAC;QACvC,CAAC;QAED,MAAM,MAAM,GAAqB;YAC/B,IAAI,EAAE,mBAAU,CAAC,OAAO;YACxB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;SACrC,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;YACE,KAAK,EAAE,aAAa;YACpB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;YAChC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE;SAC1C,EACD,+BAA+B,CAChC,CAAC;QAEF,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACpF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB;gBACE,KAAK,EAAE,mBAAmB;gBAC1B,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,EACD,iCAAiC,CAClC,CAAC;YACF,OAAO;gBACL,IAAI,EAAE,mBAAU,CAAC,MAAM;gBACvB,IAAI,EAAE,qBAAY,CAAC,kBAAkB;gBACrC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAChC,OAAO,EAAE,0BAA0B;gBACnC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;aACH,CAAC;QACvB,CAAC;IACH,CAAC;IAMD,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;YACE,KAAK,EAAE,oBAAoB;YAC3B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;YAC3B,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM;YACrC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM;SACxC,EACD,yBAAyB,CAC1B,CAAC;QAEF,IAAI,CAAC;YAGH,IAAA,8BAAsB,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAgBnD,MAAM,eAAe,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC9E,IAAI,CAAC,kBAAkB,GAAG,eAAe,CAAC;YAC1C,IAAI,CAAC,cAAc;gBACjB,IAAI,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;YAChF,IAAI,CAAC;gBACH,MAAM,eAAe,CAAC,KAAK,EAAE,CAAC;YAChC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBAGb,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAC/B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC3B,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;gBACrC,MAAM,GAAG,CAAC;YACZ,CAAC;YAGD,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;YAEpC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;YAQlC,IAAI,CAAC,wBAAwB,GAAG,WAAW,CAAC,GAAG,EAAE;gBAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC;gBACzC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,uBAAuB;oBAAE,OAAO;gBACvD,QAAQ;qBACL,WAAW,EAAE;qBACb,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;oBAChB,IAAI,IAAI,CAAC,uBAAuB,IAAI,IAAI,CAAC,kBAAkB,KAAK,QAAQ,EAAE,CAAC;wBACzE,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC;oBACvC,CAAC;gBACH,CAAC,CAAC;qBACD,KAAK,CAAC,GAAG,EAAE;oBACV,IAAI,IAAI,CAAC,uBAAuB,IAAI,IAAI,CAAC,kBAAkB,KAAK,QAAQ,EAAE,CAAC;wBACzE,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;oBACrC,CAAC;gBACH,CAAC,CAAC,CAAC;YACP,CAAC,EAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC;YAEpC,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,EAAE,CAAC;YAGxC,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,KAAK,CAE3E,CAAC;YAGd,MAAM,oBAAoB,GAAG;gBAC3B,iBAAiB;gBACjB,oBAAoB;gBACpB,wBAAwB;gBACxB,mBAAmB;gBACnB,0BAA0B;aAC3B,CAAC;YACF,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9E,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,0BAA0B,EAAE,IAAI,EAAE,kBAAkB,EAAE,EAC/D,sHAAsH,CACvH,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG,iBAAiB,EAAE,MAAM,CAAC;YAC7C,MAAM,eAAe,GAAG,iBAAiB,EAAE,eAAe,CAAC;YAC3D,MAAM,eAAe,GAAG,iBAAiB,EAAE,YAAY,CAAC;YACxD,MAAM,kBAAkB,GAAG,iBAAiB,EAAE,KAAK,CAAC;YAEpD,IACE,iBAAiB;gBACjB,UAAU;gBACV,eAAe;gBACf,eAAe;gBACf,kBAAkB,EAClB,CAAC;gBACD,IAAI,CAAC;oBAGH,MAAM,UAAU,GAAG,IAAI,wBAAU,CAC/B;wBACE,OAAO,EAAE,KAAK;wBACd,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;wBAC3B,aAAa,EAAE,kBAAkB;qBAClC,EACD,IAAI,CAAC,OAAO,CACb,CAAC;oBAGF,MAAM,QAAQ,GAAG,KAAK,CAAC;oBAGvB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,kCAAe,EACtC,QAAQ,EACR,gBAAgB,CACjB,CAAC;oBACF,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;oBACxD,IAAI,CAAC,kBAAkB,GAAG,IAAI,uCAAiB,CAC7C,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,eAAe,EACf,IAAI,CAAC,OAAO,CACb,CAAC;oBAGF,IAAI,CAAC;wBACH,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;wBACrF,IAAI,cAAc,EAAE,CAAC;4BACnB,IAAI,CAAC,yBAAyB,GAAG,cAAc,CAAC;4BAChD,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gCACE,KAAK,EAAE,uBAAuB;gCAC9B,MAAM,EAAE,cAAc;gCACtB,YAAY,EAAE,eAAe;6BAC9B,EACD,mCAAmC,cAAc,EAAE,CACpD,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,eAAe,EAAE,EAC9D,4DAA4D,CAC7D,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAAC,OAAO,WAAW,EAAE,CAAC;wBACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;4BACE,KAAK,EAAE,gCAAgC;4BACvC,YAAY,EAAE,eAAe;4BAC7B,KAAK,EAAE,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;yBAChF,EACD,8DAA8D,CAC/D,CAAC;oBACJ,CAAC;oBAGD,MAAM,cAAc,GAClB,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC;oBACvF,IAAI,cAAc,EAAE,CAAC;wBACnB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;oBAC/D,CAAC;oBAGD,MAAM,aAAa,GAGd,EAAE,CAAC;oBACR,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;wBAC3E,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC7E,CAAC;oBACD,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;wBACnF,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACrF,CAAC;oBAED,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;wBAElC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;4BAC9C,SAAS;wBACX,CAAC;wBAED,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;wBACxC,MAAM,oBAAoB,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,IAAI,eAAe,CAAC;wBAC7E,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,IAAI,kBAAkB,CAAC;wBAGtE,MAAM,eAAe,GACnB,eAAe,KAAK,kBAAkB;4BACpC,CAAC,CAAC,IAAI,wBAAU,CACZ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,EAC/E,IAAI,CAAC,OAAO,CACb;4BACH,CAAC,CAAC,UAAU,CAAC;wBAEjB,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;wBAC9D,MAAM,QAAQ,GAAG,IAAI,uCAAiB,CACpC,aAAa,EACb,eAAe,EACf,QAAQ,EACR,oBAAoB,EACpB,IAAI,CAAC,OAAO,CACb,CAAC;wBACF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;wBAEpD,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;4BACE,KAAK,EAAE,uBAAuB;4BAC9B,KAAK,EAAE,KAAK,CAAC,IAAI;4BACjB,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO;4BAC7B,MAAM,EAAE,WAAW;yBACpB,EACD,qCAAqC,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,CACrF,CAAC;oBACJ,CAAC;oBAGD,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAkB,CAAC;oBACrD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;wBACtC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;4BACpB,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;4BACjD,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,EAC7C,qCAAqC,CACtC,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAID,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;wBACxD,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;wBAC1B,IAAI,WAAW,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;4BACnD,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;4BAC5C,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,EAChC,iDAAiD,CAClD,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAGD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;oBAClD,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,yBAAyB,EAAE,eAAe,CAAC,CAAC;oBACrE,eAAe,CAAC,GAAG,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;oBAGtD,MAAM,wBAAwB,GAC5B,iBAAiB,CAAC,iBAAiB,EAAE,qBAAqB,IAAI,KAAK,CAAC;oBACtE,MAAM,wBAAwB,GAC5B,iBAAiB,CAAC,iBAAiB,EAAE,wBAAwB,IAAI,CAAC,CAAC;oBAIrE,IAAI,cAA8B,CAAC;oBACnC,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;oBAChE,MAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;oBAE7D,IAAI,oBAAoB,IAAI,mBAAmB,EAAE,CAAC;wBAChD,IAAI,CAAC;4BAEH,MAAM,YAAY,GAAG,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;4BACzE,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,GAAG,CACzC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gCAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gCAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;gCAClC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;gCAEhC,IAAI,sCAAsC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;oCAC1D,OAAO,IAAI,CAAC;gCACd,CAAC;gCAED,IAAI,CAAC;oCACH,MAAM,MAAM,GAAG,MAAM,cAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oCAC1C,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,CAAC,OAAO,EAAE,EAC1C,qCAAqC,CACtC,CAAC;oCACF,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;gCACrC,CAAC;gCAAC,OAAO,QAAQ,EAAE,CAAC;oCAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EACvC,qDAAqD,CACtD,CAAC;oCACF,OAAO,IAAI,CAAC;gCACd,CAAC;4BACH,CAAC,CAAC,CACH,CAAC;4BAGF,MAAM,kBAAkB,GAAG,QAAQ,CACjC,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,OAAO,EACpD,EAAE,CACH,CAAC;4BACF,MAAM,iBAAiB,GAAG,IAAI,sCAAiB,CAC7C;gCACE,SAAS,EAAE,QAAQ,CAAC,oBAAoB,EAAE,EAAE,CAAC;gCAC7C,gBAAgB,EAAE,iBAAiB;gCACnC,iBAAiB,EAAE,IAAI;gCACvB,gBAAgB,EAAE,kBAAkB;6BACrC,EACD,IAAI,CAAC,OAAO,CACb,CAAC;4BAGF,MAAM,iBAAiB,CAAC,UAAU,EAAE,CAAC;4BACrC,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;4BAG5C,cAAc,GAAG,IAAI,gCAAc,CACjC,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAC/B,iBAAiB,EACjB,IAAI,CAAC,OAAO,CACb,CAAC;4BAEF,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;4BAEtC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gCACE,KAAK,EAAE,yCAAyC;gCAChD,SAAS,EAAE,oBAAoB;gCAC/B,QAAQ,EAAE,mBAAmB;6BAC9B,EACD,6CAA6C,oBAAoB,eAAe,mBAAmB,GAAG,CACvG,CAAC;wBACJ,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BAEf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;4BAC5E,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gCACE,KAAK,EAAE,yBAAyB;gCAChC,KAAK,EAAE,YAAY;gCACnB,SAAS,EAAE,oBAAoB;gCAC/B,QAAQ,EAAE,mBAAmB;6BAC9B,EACD,2DAA2D,CAC5D,CAAC;4BAEF,cAAc,GAAG,MAAM,IAAI,CAAC,6BAA6B,EAAE,CAAC;4BAC5D,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;wBACxC,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,4BAA4B,EAAE,EACvC,6GAA6G,CAC9G,CAAC;wBAEF,cAAc,GAAG,MAAM,IAAI,CAAC,6BAA6B,EAAE,CAAC;wBAC5D,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;oBACxC,CAAC;oBAID,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC;oBAEtD,MAAM,mBAAmB,GAAG,MAAM,CAChC,iBAAiB,CAAC,iBAAiB,EAAE,SAAS,IAAI,SAAS,CAC5D,CAAC;oBAEF,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;wBACE,KAAK,EAAE,2BAA2B;wBAClC,OAAO;wBACP,SAAS,EAAE,mBAAmB,CAAC,QAAQ,EAAE;qBAC1C,EACD,6DAA6D,CAC9D,CAAC;oBAEF,MAAM,iBAAiB,GAAG,IAAI,sCAAiB,CAC7C;wBACE,UAAU,EAAE;4BACV,gBAAgB,EAAE,mBAAmB;yBACtC;wBACD,KAAK,EAAE,OAAO;wBACd,QAAQ,EAAE,CAAC,IAAI,CAAC,yBAAyB,CAAC;qBAC3C,EACD,IAAI,CAAC,OAAO,CACb,CAAC;oBACF,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;oBAM5C,MAAM,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAC5D,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,KAAK,KAAK,CAC/B,EAAE,OAAO,CAAC;oBACX,MAAM,iBAAiB,GAAG,cAAc;wBACtC,CAAC,CAAC,OAAO,cAAc,EAAE;wBACzB,CAAC,CAAC,CAAC,oBAAoB,IAAI,aAAa,CAAC,CAAC;oBAC5C,MAAM,aAAa,GAAG,IAAI,+CAAqB,EAAE,CAAC;oBAClD,MAAM,WAAW,GAAG,IAAI,wDAAyB,CAC/C,IAAI,CAAC,kBAAkB,EACvB,iBAAiB,EACjB,eAAe,EACf,IAAI,CAAC,OAAO,CACb,CAAC;oBACF,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;oBAIpC,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;oBACnD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;wBACtC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;4BAEf,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;wBAC5C,CAAC;6BAAM,IAAI,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;4BAE3C,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;wBACnD,CAAC;oBACH,CAAC;oBAED,KAAK,MAAM,MAAM,IAAI,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC;wBAC/C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;4BAClC,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;wBAClD,CAAC;oBACH,CAAC;oBAGD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,KAAK,CAAC;oBAC1D,MAAM,YAAY,GAAG,IAAI,uCAAiB,CAAC;wBACzC,YAAY;wBACZ,MAAM,EAAE,IAAI,CAAC,OAAO;qBACrB,CAAC,CAAC;oBACH,MAAM,oBAAoB,GAAG,kBAAkB;wBAC7C,CAAC,CAAC,IAAA,kBAAU,EAAC,kBAAkB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;wBACnD,CAAC,CAAC,SAAS,CAAC;oBACd,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAsB,CAAC;oBAC1D,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;wBACtC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;4BACxB,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAA,kBAAU,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;wBACpE,CAAC;oBACH,CAAC;oBACD,IAAI,YAAY,EAAE,CAAC;wBACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,mBAAmB,CAAC,IAAI,EAAE,EAC/D,qDAAqD,CACtD,CAAC;oBACJ,CAAC;oBAED,IAAI,CAAC,mBAAmB,GAAG,IAAI,wCAAkB,CAC/C;wBACE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;wBAC3B,wBAAwB;wBACxB,wBAAwB;wBACxB,mBAAmB,EAAE,GAAG;wBACxB,UAAU,EAAE,CAAC;wBACb,YAAY,EAAE,IAAI;wBAClB,eAAe;wBACf,kBAAkB;wBAClB,gBAAgB;qBACjB,EACD,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,IAAI,CAAC,OAAO,CACb,CAAC;oBAGF,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;oBACjC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,6BAA6B,EAAE,EACxC,wCAAwC,CACzC,CAAC;oBAIF,iBAAiB,CAAC,KAAK,EAAE,CAAC;oBAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;wBACE,KAAK,EAAE,4BAA4B;wBACnC,SAAS,EAAE,mBAAmB,CAAC,QAAQ,EAAE;wBACzC,SAAS,EAAE,OAAO,CAAC,MAAM;qBAC1B,EACD,4CAA4C,CAC7C,CAAC;oBAEF,IAAI,CAAC,eAAe,GAAG,IAAI,gCAAc,CACvC;wBACE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;wBAC3B,wBAAwB;wBACxB,wBAAwB;wBACxB,oBAAoB,EAAE,KAAK;wBAC3B,mBAAmB,EAAE,GAAG;wBACxB,iBAAiB,EAAE,IAAI;wBACvB,eAAe;wBACf,kBAAkB;wBAClB,eAAe;wBACf,MAAM,EAAE,UAAU;wBAClB,UAAU,EAAE,kBAAkB;qBAC/B,EACD,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,OAAO,CACb,CAAC;oBAGF,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oBAEjE,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;wBACE,KAAK,EAAE,iCAAiC;wBACxC,eAAe;wBACf,YAAY,EAAE,eAAe;wBAC7B,SAAS,EAAE,kBAAkB,CAAC,IAAI;qBACnC,EACD,4CAA4C,CAC7C,CAAC;oBAGF,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;wBACpD,IAAI,CAAC;4BACH,MAAM,mBAAmB,GAAG,MAAM,IAAA,kCAAe,EAE9C,gBAAgB,EAAE,+BAA+B,CAAC,CAAC;4BACtD,MAAM,aAAa,GAAG,mBAAmB,CAAC,OAAO,CAAC;4BAElD,MAAM,WAAW,GAAG,iBAAiB,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;4BAC9D,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC;4BAC/C,OAAO,CAAC,IAAI,CAAC,iDAAwB,CAAC,CAAC;4BACvC,KAAK,MAAM,QAAQ,IAAI,4CAAmB,EAAE,CAAC;gCAC3C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;4BACzB,CAAC;4BAGD,MAAM,qBAAqB,GAAG,IAAI,gDAAqB,CACrD,aAAa,EACb,IAAI,CAAC,eAAe,EACpB,OAAO,EACP,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,CAAC,MAAM,EACnB,gBAAgB,EAChB,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,CACpB,CAAC;4BACF,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;4BACpE,IAAI,CAAC,mBAAmB,EAAE,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;4BAE1E,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,2BAA2B,EAAE,EACtC,wEAAwE,CACzE,CAAC;wBACJ,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;4BAC5E,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,EAAE,KAAK,EAAE,+BAA+B,EAAE,KAAK,EAAE,YAAY,EAAE,EAC/D,+CAA+C,CAChD,CAAC;4BACF,MAAM,KAAK,CAAC;wBACd,CAAC;oBACH,CAAC;oBAKD,MAAM,qBAAqB,GAAG,IAAI,+CAAqB,CACrD,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,OAAO,CAAC,MAAM,EACnB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,eAAe,IAAI,SAAS,EACjC,YAAY,EACZ,oBAAoB,CACrB,CAAC;oBACF,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,CAC3E,qBAAqB,CAAC,QAAQ,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,CAChE,CAAC;oBACF,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,iCAAiC,EAAE,EAC5C,6CAA6C,CAC9C,CAAC;oBAKF,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;wBAC5B,IAAI,CAAC;4BACH,MAAM,mBAAmB,GAAG,MAAM,IAAA,kCAAe,EAE9C,gBAAgB,EAAE,4BAA4B,CAAC,CAAC;4BACnD,MAAM,aAAa,GAAG,mBAAmB,CAAC,OAAO,CAAC;4BAElD,MAAM,mBAAmB,GAAG,0BAA0B,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;4BAC/E,MAAM,eAAe,GAAG,IAAI,aAAa,CAAC,mBAAmB,CAAC,CAAC;4BAC/D,IAAA,wDAA6B,EAAC,eAAe,CAAC,CAAC;4BAE/C,MAAM,aAAa,GAAG,IAAI,8BAAa,CACrC,eAAe,EACf,aAAa,EACb,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,eAAe,IAAI,SAAS,EACjC,kBAAkB,EAClB,YAAY,EACZ,oBAAoB,CACrB,CAAC;4BAGF,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;4BAGrD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gCAC5B,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;gCAExD,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;gCAC/B,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;4BAClC,CAAC;4BAMD,IAAI,CAAC,mBAAmB,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;4BAE1D,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,wBAAwB,EAAE,EACnC,yDAAyD,CAC1D,CAAC;wBACJ,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;4BAC5E,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,YAAY,EAAE,EAC5D,oCAAoC,CACrC,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAGD,IAAI,cAAc,EAAE,CAAC;wBACnB,MAAM,gBAAgB,GAAqB;4BACzC,sBAAsB,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,sBAAsB,IAAI,GAAG;4BAC9E,gBAAgB,EAAE,IAAI;4BACtB,oBAAoB,EAAE,oBAAoB,CAAC,CAAC,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;4BACnF,mBAAmB,EAAE,mBAAmB;gCACtC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gCACrD,CAAC,CAAC,EAAE;yBACP,CAAC;wBAEF,IAAI,CAAC,cAAc,CAAC,aAAa,CAC/B,cAAc,EACd,gBAAgB,EAChB,IAAI,CAAC,yBAAyB,CAC/B,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAEf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC5E,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,EAAE,KAAK,EAAE,6BAA6B,EAAE,KAAK,EAAE,YAAY,EAAE,EAC7D,4FAA4F,CAC7F,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,2BAA2B,EAAE,EACtC,iEAAiE,CAClE,CAAC;YACJ,CAAC;YAGD,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACxD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,KAAK,EAAE,oBAAoB;gBAC3B,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa;aACjC,EACD,oBAAoB,CACrB,CAAC;YAGF,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC;YAC7D,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAChD,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,KAAK,EAAE,uBAAuB;gBAC9B,IAAI,EAAE,eAAe;aACtB,EACD,uBAAuB,CACxB,CAAC;YAGF,MAAM,eAAe,GACnB,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,MAAM,CAAC;YAC7E,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,WAAW,GAAG;oBAClB,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,MAAM,EAAE,EAAE,CAAC;oBACvF,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,SAAS;oBAC5E,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa;iBACnE,CAAC;gBAEF,IAAI,CAAC,YAAY,GAAG,IAAI,0BAAW,CAAC;oBAClC,YAAY,EAAE,IAAI,CAAC,aAAa;oBAChC,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;oBACxC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;oBAC3B,MAAM,EAAE,WAAW;oBACnB,MAAM,EAAE,IAAI,CAAC,OAAO;oBACpB,eAAe,EAAE,IAAI,CAAC,gBAAgB;oBACtC,cAAc,EAAE,IAAI,CAAC,eAAe,IAAI,SAAS;oBACjD,iBAAiB,EAAE,IAAI,CAAC,kBAAkB,IAAI,SAAS;oBACvD,cAAc,EAAE,IAAI,CAAC,eAAe,IAAI,SAAS;oBACjD,iBAAiB,EAAE,IAAI,CAAC,kBAAkB,IAAI,SAAS;oBACvD,wBAAwB,EAAE,IAAI,CAAC,yBAAyB;oBACxD,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;oBACjD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB;iBACtC,CAAC,CAAC;gBAEH,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;gBAChC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;oBACE,KAAK,EAAE,sBAAsB;oBAC7B,IAAI,EAAE,WAAW,CAAC,IAAI;oBACtB,IAAI,EAAE,WAAW,CAAC,IAAI;oBACtB,gBAAgB,EAAE,CAAC,CAAC,WAAW,CAAC,MAAM;iBACvC,EACD,0BAA0B,CAC3B,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAC/B,oFAAoF,CACrF,CAAC;YACJ,CAAC;YAID,MAAM,eAAe,GAAoB,EAAE,CAAC;YAC5C,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAC5C,MAAM,IAAI,GAAS;oBACjB,EAAE,EAAE,UAAU,CAAC,EAAE;oBACjB,GAAG,EAAE,UAAU,CAAC,GAAG;oBACnB,SAAS,EAAE,UAAU,CAAC,SAAS;oBAC/B,SAAS,EAAE,KAAK;oBAChB,QAAQ,EAAE,IAAI,IAAI,EAAE;iBACrB,CAAC;gBACF,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7D,CAAC;YAID,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;YAC9D,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;YACvE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;oBACE,KAAK,EAAE,0BAA0B;oBACjC,WAAW,EAAE,WAAW,CAAC,MAAM;oBAC/B,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM;iBACtC,EACD,wEAAwE,CACzE,CAAC;YACJ,CAAC;YAED,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;YAC9D,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;YAGlF,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACpD,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,2BAA2B,EAAE,cAAc,EAAE,EACtD,+CAA+C,CAChD,CAAC;gBAEF,MAAM,uBAAuB,GAAoB,EAAE,CAAC;gBACpD,KAAK,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC3D,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,SAAS;oBACX,CAAC;oBAGD,MAAM,cAAc,GAAG,CAAC,KAAK,IAAI,EAAE;wBACjC,IAAI,CAAC;4BACH,MAAM,OAAO,GAAG,IAAI,CAAC,yBAAyB,CAAC;4BAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;4BACnE,MAAM,SAAS,GAAG,UAAU,EAAE,KAAK,CAAC;4BACpC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAgB,CAAC,mBAAmB,CAC/D,MAAM,EACN,OAAO,EACP,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAC7C,CAAC;4BACF,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,uBAAuB,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,EACvE,gCAAgC,CACjC,CAAC;wBACJ,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BAEf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;4BAC5E,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,iCAAiC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,EACzE,kEAAkE,CACnE,CAAC;wBACJ,CAAC;oBACH,CAAC,CAAC,EAAE,CAAC;oBAEL,uBAAuB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAC/C,CAAC;gBAGD,MAAM,OAAO,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;gBAClD,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,8BAA8B,EAAE,EACzC,oCAAoC,CACrC,CAAC;YACJ,CAAC;YAGD,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAE3B,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,KAAK,EAAE,iBAAiB;gBACxB,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAC3B,cAAc,EAAE,cAAc;gBAC9B,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM;gBACrC,YAAY,EAAE,IAAI,CAAC,aAAa;aACjC,EACD,sBAAsB,CACvB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB;gBACE,KAAK,EAAE,wBAAwB;gBAC/B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAC3B,KAAK,EAAE,YAAY;aACpB,EACD,gCAAgC,CACjC,CAAC;YAMF,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAClC,aAAa,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBAC7C,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;YACvC,CAAC;YACD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAG5B,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;gBACrC,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;gBACvC,CAAC;gBAAC,OAAO,OAAO,EAAE,CAAC;oBACjB,MAAM,OAAO,GAAG,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC7E,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,gCAAgC,EAAE,KAAK,EAAE,OAAO,EAAE,EAC3D,sEAAsE,CACvE,CAAC;gBACJ,CAAC;wBAAS,CAAC;oBACT,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;oBAC/B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC7B,CAAC;YACH,CAAC;YACD,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC;YACjC,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAMD,KAAK,CAAC,IAAI;QAER,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAClD,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,EAAE,KAAK,EAAE,2BAA2B,EAAE,EACtC,qCAAqC,CACtC,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;YACE,KAAK,EAAE,oBAAoB;YAC3B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;SAC5B,EACD,yBAAyB,CAC1B,CAAC;QAEF,IAAI,CAAC;YAGH,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC5B,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;gBACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,4BAA4B,EAAE,EAAE,4BAA4B,CAAC,CAAC;gBACzF,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YACjC,CAAC;YAID,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;gBACtC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,6BAA6B,EAAE,EAAE,6BAA6B,CAAC,CAAC;gBAC3F,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YAClC,CAAC;YAGD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;gBAC5B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,yBAAyB,CAAC,CAAC;gBACnF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC9B,CAAC;YAGD,KAAK,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;gBACvD,GAAG,CAAC,kBAAkB,EAAE,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,EAAE,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,EACvC,+BAA+B,OAAO,GAAG,CAC1C,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YAGxB,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAE5B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,6BAA6B,EAAE,EAAE,6BAA6B,CAAC,CAAC;gBAC3F,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YACjC,CAAC;YAGD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC5B,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;gBACtC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,2BAA2B,EAAE,EAAE,2BAA2B,CAAC,CAAC;gBACvF,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YACjC,CAAC;YAGD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC/B,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;gBACzC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,gCAAgC,CAAC,CAAC;gBAC1F,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;YACpC,CAAC;YAED,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAG5B,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;YACpD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAClD,CAAC;YAGD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;gBAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,0BAA0B,CAAC,CAAC;gBACjF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YAC3B,CAAC;YAGD,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAGhC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YAM7B,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAClC,aAAa,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBAC7C,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;YACvC,CAAC;YACD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAG5B,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;gBACrC,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;gBACvC,CAAC;wBAAS,CAAC;oBACT,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;oBAC/B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC7B,CAAC;YACH,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,KAAK,EAAE,mBAAmB;gBAC1B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;aAC5B,EACD,wBAAwB,CACzB,CAAC;YAEF,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;YAChC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB;gBACE,KAAK,EAAE,uBAAuB;gBAC9B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAC3B,KAAK,EAAE,YAAY;aACpB,EACD,0CAA0C,CAC3C,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAMD,eAAe;QACb,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;QAC1D,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;QAC9E,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QAE3E,MAAM,YAAY,GAAiB;YACjC,MAAM,EAAE,IAAI,CAAC,aAAa;YAC1B,MAAM;YACN,cAAc;YACd,UAAU;YACV,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;YAC3B,OAAO,EAAE,sBAAW,CAAC,OAAO;SAC7B,CAAC;QAMF,IAAI,IAAI,CAAC,uBAAuB,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACnF,YAAY,CAAC,SAAS,GAAG;gBACvB,IAAI,EAAE,IAAI,CAAC,cAAc;gBACzB,OAAO,EAAE,IAAI,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB;aAC9E,CAAC;QACJ,CAAC;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAYD,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAMD,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAYD,IAAI,iBAAiB;QAInB,OAAO,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC;IACvE,CAAC;IAoBO,wBAAwB,CAAC,GAAgC;QAC/D,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC/C,MAAM,WAAW,GAAG,kBAAkB,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YACnE,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB,EAAE,KAAK,EAAE,2CAA2C,EAAE,WAAW,EAAE,EACnE,wFAAwF,CACzF,CAAC;YACF,OAAO,IAAI,mCAAuB,CAAC,WAAW,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAI1B,IAAI,aAA4C,CAAC;YACjD,IAAI,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;YAClC,IAAI,GAAG,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBAKzB,IAAI,aAAwE,CAAC;gBAQ7E,IAAI,YAA+C,CAAC;gBACpD,MAAM,cAAc,GAAG,IAAA,oCAAwB,GAAE,CAAC,IAAI,CACpD,CAAC,CAAC,EAAE,EAAE;oBACJ,aAAa,GAAG,CAAC,CAAC;gBACpB,CAAC,EACD,CAAC,GAAY,EAAE,EAAE;oBACf,YAAY,GAAG,GAA4B,CAAC;gBAC9C,CAAC,CACF,CAAC;gBACF,MAAM,WAAW,GAAG,CAAC,IAAwB,EAAiB,EAAE;oBAC9D,IAAI,aAAa,EAAE,CAAC;wBAClB,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;oBAC7B,CAAC;oBACD,IAAI,YAAY,EAAE,CAAC;wBACjB,IAAI,YAAY,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;4BAC7C,MAAM,YAAY,CAAC;wBACrB,CAAC;wBACD,MAAM,IAAI,KAAK,CACb,uEAAuE;4BACrE,GAAG,YAAY,CAAC,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,EAAE,EACnD,EAAE,KAAK,EAAE,YAAY,EAAE,CACxB,CAAC;oBACJ,CAAC;oBAMD,IAAI,CAAC;wBACH,MAAM,GAAG,GAAG,gCAAgC,CAAC;wBAE7C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;wBAEzB,MAAM,QAAQ,GACX,GAAW,EAAE,IAAI,IAAK,GAAW,EAAE,OAAO,EAAE,IAAI,IAAK,GAAW,EAAE,OAAO,CAAC;wBAE7E,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;4BACnC,MAAM,IAAI,KAAK,CACb,qEAAqE,CACtE,CAAC;wBACJ,CAAC;wBACD,aAAa,GAAG,CAAC,CAAqB,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAkB,CAAC;wBAC5E,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;oBAC7B,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,KAAK,GAAG,GAA4B,CAAC;wBAI3C,IAAI,KAAK,EAAE,IAAI,KAAK,kBAAkB,EAAE,CAAC;4BACvC,MAAM,KAAK,CAAC;wBACd,CAAC;wBAMD,IAAI,KAAK,EAAE,IAAI,KAAK,iBAAiB,EAAE,CAAC;4BACtC,MAAM,IAAI,KAAK,CACb,yDAAyD;gCACvD,oEAAoE;gCACpE,2DAA2D,EAC7D,EAAE,KAAK,EAAE,CACV,CAAC;wBACJ,CAAC;wBACD,MAAM,IAAI,KAAK,CACb,uEAAuE;4BACrE,GAAG,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,EACpC,EAAE,KAAK,EAAE,CACV,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC;gBAIF,KAAK,cAAc,CAAC;gBACpB,aAAa,GAAG,IAAI,6BAAiB,CAAC;oBACpC,UAAU,EAAE,GAAG,CAAC,UAAU;oBAC1B,gBAAgB,EAAE,GAAG,CAAC,cAAc,EAAE,gBAAgB;oBACtD,iBAAiB,EAAE,GAAG,CAAC,cAAc,EAAE,iBAAiB;oBACxD,UAAU,EAAE,GAAG,CAAC,cAAc,EAAE,UAAU;oBAC1C,gBAAgB,EAAE,GAAG,CAAC,cAAc,EAAE,gBAAgB;oBACtD,aAAa,EAAE,GAAG,CAAC,cAAc,EAAE,aAAa;oBAChD,MAAM,EAAE,IAAI,CAAC,OAAO;oBACpB,WAAW;iBACZ,CAAC,CAAC;gBAYH,IAAI,WAAW,KAAK,MAAM,EAAE,CAAC;oBAC3B,WAAW,GAAG,2BAA2B,CAAC;gBAC5C,CAAC;YACH,CAAC;iBAAM,IAAI,WAAW,KAAK,MAAM,EAAE,CAAC;gBAElC,MAAM,IAAI,KAAK,CACb,+EAA+E,CAChF,CAAC;YACJ,CAAC;YAMD,IAAI,yBAA8D,CAAC;YACnE,IAAI,GAAG,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;gBAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC;gBACnD,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,IAAI,KAAK,CACb,iGAAiG,CAClG,CAAC;gBACJ,CAAC;gBAOD,MAAM,sBAAsB,GAAG,GAAG,CAAC,cAAc,EAAE,gBAAgB,IAAI,MAAM,CAAC;gBAU9E,MAAM,0BAA0B,GAAG,iDAAiD,CAAC;gBACrF,yBAAyB,GAAG,KAAK,IAAqB,EAAE;oBAStD,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;oBACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,sBAAsB,CAAC;oBACrD,IAAI,OAAgB,CAAC;oBACrB,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;wBAC7B,IAAI,CAAC;4BACH,MAAM,GAAG,GAAG,MAAM,aAAU,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;4BAI5D,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;4BACzD,MAAM,QAAQ,GAAG,SAAS,CAAC;4BAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;gCACd,OAAO,GAAG,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;4BAChD,CAAC;iCAAM,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gCAItD,OAAO,GAAG,IAAI,KAAK,CACjB,0EAA0E;oCACxE,WAAW,QAAQ,CAAC,MAAM,0BAA0B,CACvD,CAAC;4BACJ,CAAC;iCAAM,CAAC;gCACN,OAAO,SAAS,QAAQ,MAAM,CAAC;4BACjC,CAAC;wBACH,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,OAAO,GAAG,GAAG,CAAC;wBAChB,CAAC;wBACD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC/C,CAAC;oBACD,MAAM,MAAM,GAAG,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;oBACzF,MAAM,IAAI,KAAK,CACb,iCAAiC,YAAY,4BAA4B;wBACvE,UAAU,sBAAsB,mBAAmB,MAAM,GAAG,CAC/D,CAAC;gBACJ,CAAC,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,kCAAsB,CAAC;gBAChC,UAAU,EAAE,GAAG,CAAC,UAAU;gBAC1B,WAAW;gBACX,MAAM,EAAE,IAAI,CAAC,OAAO;gBACpB,aAAa;gBACb,yBAAyB;aAC1B,CAAC,CAAC;QACL,CAAC;QAGD,MAAM,WAAW,GAAU,GAAG,CAAC;QAC/B,MAAM,IAAI,KAAK,CACb,+BAA+B,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG;YAC3D,4DAA4D,CAC/D,CAAC;IACJ,CAAC;IAMD,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAMD,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAMD,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IASD,4BAA4B,CAAC,OAAe;QAC1C,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;IAC9C,CAAC;IAQO,KAAK,CAAC,6BAA6B;QACzC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,KAAK,CAErE,CAAC;QACd,MAAM,YAAY,GAChB,WAAW,EAAE,iBAAiB,EAAE,kBAAkB,IAAI,6BAA6B,CAAC;QACtF,MAAM,iBAAiB,GAAG,WAAW,EAAE,iBAAiB,EAAE,uBAAuB,IAAI,KAAK,CAAC;QAE3F,IAAI,cAAoC,CAAC;QAEzC,IAAI,CAAC;YAEH,cAAc,GAAG,IAAI,8CAAoB,CACvC;gBACE,YAAY;gBACZ,iBAAiB;aAClB,EACD,IAAI,CAAC,OAAO,CACb,CAAC;YAGF,MAAM,cAAc,CAAC,UAAU,EAAE,CAAC;YAElC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,KAAK,EAAE,8BAA8B;gBACrC,YAAY;gBACZ,iBAAiB;aAClB,EACD,mDAAmD,YAAY,GAAG,CACnE,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAGf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,KAAK,EAAE,0CAA0C;gBACjD,KAAK,EAAE,YAAY;gBACnB,YAAY;aACb,EACD,uEAAuE,CACxE,CAAC;YAEF,IAAI,CAAC;gBAEH,cAAc,GAAG,IAAI,8CAAoB,CACvC;oBACE,YAAY,EAAE,GAAG,YAAY,UAAU,IAAI,CAAC,GAAG,EAAE,EAAE;oBACnD,iBAAiB;iBAClB,EACD,IAAI,CAAC,OAAO,CACb,CAAC;gBAEF,MAAM,cAAc,CAAC,UAAU,EAAE,CAAC;gBAElC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;oBACE,KAAK,EAAE,8BAA8B;oBACrC,YAAY;iBACb,EACD,2CAA2C,CAC5C,CAAC;YACJ,CAAC;YAAC,OAAO,cAAc,EAAE,CAAC;gBAGxB,MAAM,iBAAiB,GACrB,cAAc,YAAY,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBACpF,IAAI,CAAC,OAAO,CAAC,KAAK,CAChB;oBACE,KAAK,EAAE,oCAAoC;oBAC3C,KAAK,EAAE,iBAAiB;iBACzB,EACD,wDAAwD,CACzD,CAAC;gBACF,MAAM,cAAc,CAAC;YACvB,CAAC;QACH,CAAC;QAGD,IAAI,CAAC,qBAAqB,GAAG,cAAc,CAAC;QAE5C,MAAM,cAAc,GAAG,IAAI,gCAAc,CACvC,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAC/B,cAAc,EACd,IAAI,CAAC,OAAO,CACb,CAAC;QAEF,OAAO,cAAc,CAAC;IACxB,CAAC;IAEO,mBAAmB;QAEzB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;gBACtC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;oBACE,KAAK,EAAE,uBAAuB;oBAC9B,SAAS,EAAE,IAAI,CAAC,aAAa;oBAC7B,SAAS,EAAE,UAAU;oBACrB,MAAM,EAAE,wBAAwB;iBACjC,EACD,uBAAuB,CACxB,CAAC;gBACF,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;YAClC,CAAC;YACD,OAAO;QACT,CAAC;QAGD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QAC7C,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;gBACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;oBACE,KAAK,EAAE,uBAAuB;oBAC9B,SAAS,EAAE,IAAI,CAAC,aAAa;oBAC7B,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,uCAAuC;iBAChD,EACD,uBAAuB,CACxB,CAAC;gBACF,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;YACjC,CAAC;YACD,OAAO;QACT,CAAC;QAGD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;QAC1D,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;QAC9E,MAAM,oBAAoB,GAAG,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,GAAG,CAAC;QAGjE,IAAI,SAA+C,CAAC;QACpD,IAAI,MAAc,CAAC;QAEnB,IAAI,oBAAoB,GAAG,EAAE,EAAE,CAAC;YAC9B,SAAS,GAAG,WAAW,CAAC;YACxB,MAAM,GAAG,QAAQ,cAAc,IAAI,UAAU,yBAAyB,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,SAAS,CAAC;YACtB,MAAM,GAAG,GAAG,cAAc,IAAI,UAAU,yBAAyB,CAAC;QACpE,CAAC;QAGD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,uBAAuB,EAAE,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,EACpF,uBAAuB,CACxB,CAAC;YACF,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QACjC,CAAC;IACH,CAAC;IAqBD,KAAK,CAAC,YAAY,CAAC,MAA+B;QAChD,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,IAAI,wCAAwB,CAChC,+DAA+D,CAChE,CAAC;QACJ,CAAC;QAGD,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QACD,IACE,MAAM,CAAC,SAAS,KAAK,SAAS;YAC9B,MAAM,CAAC,SAAS,KAAK,IAAI;YACzB,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,EACpC,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QAQD,MAAM,eAAe,GAAG,IAAI,GAAG,KAAK,CAAC;QACrC,MAAM,gBAAgB,GAAG,KAAK,GAAG,KAAK,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACxF,MAAM,IAAI,KAAK,CAAC,uBAAuB,eAAe,OAAO,gBAAgB,EAAE,CAAC,CAAC;QACnF,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACtD,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBACnD,CAAC;gBACD,IAAI,CAAC,IAAA,0BAAiB,EAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;oBACrC,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;QACH,CAAC;QAGD,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,MAAM,eAAe,GAAG,IAAA,oCAAwB,EAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACpE,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QAGD,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;QAC1D,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAGnD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,GAAS;gBACjB,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,IAAI,IAAI,EAAE;aACrB,CAAC;YACF,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,EAChE,oBAAoB,MAAM,CAAC,EAAE,EAAE,CAChC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,EACjD,wBAAwB,MAAM,CAAC,EAAE,EAAE,CACpC,CAAC;QACJ,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAoB,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;gBACxF,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,EAClE,gBAAgB,KAAK,CAAC,MAAM,OAAO,MAAM,CAAC,EAAE,EAAE,CAC/C,CAAC;YACJ,CAAC;QACH,CAAC;QAGD,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACrF,CAAC;QAGD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACjD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC;QACjE,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEhE,MAAM,QAAQ,GAAa;YACzB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,SAAS;YACT,YAAY,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;YAC7C,UAAU,EAAE,UAAU,CAAC,MAAM;SAC9B,CAAC;QAEF,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACxD,IAAI,UAAU,EAAE,CAAC;YACf,QAAQ,CAAC,UAAU,GAAG;gBACpB,UAAU,EAAE,UAAU,CAAC,oBAAoB;gBAC3C,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,OAAO,EAAE,UAAU,CAAC,OAAO;aAC5B,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAYD,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,eAAwB,IAAI;QAC3D,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,IAAI,wCAAwB,CAChC,6DAA6D,CAC9D,CAAC;QACJ,CAAC;QAGD,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;QAC1D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;QAC/C,CAAC;QAGD,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,iBAAiB,MAAM,EAAE,CAAC,CAAC;QAGhF,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,2BAA2B,EAAE,MAAM,EAAE,EAC9C,uCAAuC,MAAM,EAAE,CAChD,CAAC;QACJ,CAAC;QAGD,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;YACjD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;oBAC7B,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC7C,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBACjC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAChD,kBAAkB,KAAK,CAAC,MAAM,EAAE,CACjC,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;IACnC,CAAC;IAQD,SAAS;QACP,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QAEjD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC5B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;YAC9D,MAAM,QAAQ,GAAa;gBACzB,EAAE,EAAE,MAAM;gBACV,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK;gBAC1C,YAAY,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC7C,UAAU,EAAE,UAAU,CAAC,MAAM;aAC9B,CAAC;YAEF,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACrD,IAAI,UAAU,EAAE,CAAC;gBACf,QAAQ,CAAC,UAAU,GAAG;oBACpB,UAAU,EAAE,UAAU,CAAC,oBAAoB;oBAC3C,UAAU,EAAE,UAAU,CAAC,UAAU;oBACjC,YAAY,EAAE,UAAU,CAAC,YAAY;oBACrC,OAAO,EAAE,UAAU,CAAC,OAAO;iBAC5B,CAAC;YACJ,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAWD,KAAK,CAAC,UAAU,CACd,MAAc,EACd,UAAkB,IAAI,CAAC,yBAAyB;QAEhD,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9E,OAAO;YACL,MAAM;YACN,QAAQ,EAAE;gBACR;oBACE,OAAO;oBACP,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE;oBAC7C,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE;oBAC/C,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE;iBAC1C;aACF;SACF,CAAC;IACJ,CAAC;IAQD,UAAU;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACjD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACxB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,CAAC;SAC1B,CAAC,CAAC,CAAC;IACN,CAAC;IAUD,QAAQ,CAAC,KAAgB;QAEvB,IAAI,CAAC,IAAA,0BAAiB,EAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,CAAC;QAGD,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;QAGD,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;QAC1D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,uBAAuB,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAChF,2CAA2C,KAAK,CAAC,OAAO,EAAE,CAC3D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAoB,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;QAE5F,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EACtE,gBAAgB,KAAK,CAAC,MAAM,OAAO,KAAK,CAAC,OAAO,EAAE,CACnD,CAAC;IACJ,CAAC;IASD,WAAW,CAAC,MAAc;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,EAAE,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,MAAoB,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,kBAAkB,MAAM,EAAE,CAAC,CAAC;IACpF,CAAC;IAiBD,KAAK,CAAC,WAAW,CAAC,MAQjB;QACC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,IAAI,wCAAwB,CAChC,8DAA8D,CAC/D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,uGAAuG,CACxG,CAAC;QACJ,CAAC;QAGD,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;QAC1D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,SAAS,MAAM,CAAC,MAAM,8CAA8C,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC;QAGxC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;QAC/F,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;QACtF,CAAC;QAGD,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChF,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CACb,mCAAmC,MAAM,CAAC,MAAM,eAAe,OAAO,aAAa,MAAM,CAAC,KAAK,EAAE,CAClG,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE;YACvF,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,IAAI,GAAG,CAAC;YACpD,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;YAC3C,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,WAAW;SACZ,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,8BAAsB,EAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE5F,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,EAClF,+BAA+B,CAChC,CAAC;QAEF,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAC/B,CAAC;IAYD,KAAK,CAAC,eAAe,CAAC,SAAiB;QAKrC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,IAAI,wCAAwB,CAChC,kEAAkE,CACnE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,uGAAuG,CACxG,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,OAAO;YACL,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,MAAM,EAAE,IAAA,8BAAsB,EAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAI/C;YACb,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC;IACJ,CAAC;IAOO,sBAAsB,CAC5B,MAAc,EACd,CAAwB,EACxB,MAAgE,EAChE,QAAiB;QAEjB,MAAM,UAAU,GAAG,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAGxE,MAAM,gBAAgB,GAAa,EAAE,CAAC;QACtC,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;YACnB,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,CAAC,UAAU;gBAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,SAAS,GAAyB;YACtC,MAAM;YACN,OAAO,EAAE,UAAU;YACnB,oBAAoB,EAAE,CAAC,CAAC,UAAU;YAClC,gBAAgB;YAChB,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,YAAY,EAAE,CAAC,CAAC,YAAY;YAC5B,mBAAmB,EAAE,CAAC,CAAC,mBAAmB;YAC1C,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,cAAc,EAAE,CAAC,CAAC,cAAc;SACjC,CAAC;QAEF,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzD,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,YAAY,GAAyB,EAAE,GAAG,cAAc,EAAE,CAAC;gBACjE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;oBACrD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;wBACvB,YAAmD,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;oBACpE,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YAC/C,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,0BAA0B,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,EACvE,sCAAsC,MAAM,EAAE,CAC/C,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YAC7C,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,EAAE,KAAK,EAAE,yBAAyB,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,EACtE,qCAAqC,MAAM,EAAE,CAC9C,CAAC;QACJ,CAAC;IACH,CAAC;IAMD,eAAe;QACb,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;IAC3C,CAAC;CACF;AA52ED,sCA42EC"}
|
package/dist/http/types.d.ts
CHANGED
package/dist/http/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/http/types.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,YAAY;IAO3B,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;IAM7C,MAAM,EAAE,MAAM,CAAC;IAMf,cAAc,EAAE,MAAM,CAAC;IAMvB,UAAU,EAAE,MAAM,CAAC;IAMnB,SAAS,EAAE,MAAM,CAAC;IAMlB,MAAM,CAAC,EAAE,MAAM,CAAC;IAMhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAMjB,QAAQ,CAAC,EAAE;QAET,OAAO,EAAE,OAAO,CAAC;QAEjB,IAAI,EAAE,MAAM,CAAC;QAEb,UAAU,EAAE,MAAM,CAAC;QAEnB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAkBD,MAAM,WAAW,oBAAoB;IAKnC,eAAe,IAAI,YAAY,CAAC;CACjC;AAMD,MAAM,WAAW,sBAAsB;IAErC,MAAM,EAAE,IAAI,GAAG,MAAM,CAAC;IAEtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAMD,MAAM,WAAW,kBAAkB;IAEjC,iBAAiB,EAAE,MAAM,CAAC;IAE1B,qBAAqB,EAAE,MAAM,CAAC;IAE9B,YAAY,EAAE,MAAM,CAAC;CACtB;AAOD,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC;IAQxE,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;IAM1D,YAAY,EAAE;QACZ,WAAW,EAAE,sBAAsB,CAAC;QACpC,GAAG,CAAC,EAAE,sBAAsB,CAAC;KAC9B,CAAC;IAMF,GAAG,EAAE,kBAAkB,CAAC;CACzB;AAMD,MAAM,WAAW,4BAA6B,SAAQ,oBAAoB;IAKxE,uBAAuB,IAAI,oBAAoB,CAAC;CACjD"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/http/types.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,YAAY;IAO3B,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;IAM7C,MAAM,EAAE,MAAM,CAAC;IAMf,cAAc,EAAE,MAAM,CAAC;IAMvB,UAAU,EAAE,MAAM,CAAC;IAMnB,SAAS,EAAE,MAAM,CAAC;IAMlB,MAAM,CAAC,EAAE,MAAM,CAAC;IAMhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAMjB,QAAQ,CAAC,EAAE;QAET,OAAO,EAAE,OAAO,CAAC;QAEjB,IAAI,EAAE,MAAM,CAAC;QAEb,UAAU,EAAE,MAAM,CAAC;QAEnB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IAgBF,SAAS,CAAC,EAAE;QAEV,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAE1B,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CACH;AAkBD,MAAM,WAAW,oBAAoB;IAKnC,eAAe,IAAI,YAAY,CAAC;CACjC;AAMD,MAAM,WAAW,sBAAsB;IAErC,MAAM,EAAE,IAAI,GAAG,MAAM,CAAC;IAEtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAMD,MAAM,WAAW,kBAAkB;IAEjC,iBAAiB,EAAE,MAAM,CAAC;IAE1B,qBAAqB,EAAE,MAAM,CAAC;IAE9B,YAAY,EAAE,MAAM,CAAC;CACtB;AAOD,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC;IAQxE,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;IAM1D,YAAY,EAAE;QACZ,WAAW,EAAE,sBAAsB,CAAC;QACpC,GAAG,CAAC,EAAE,sBAAsB,CAAC;KAC9B,CAAC;IAMF,GAAG,EAAE,kBAAkB,CAAC;CACzB;AAMD,MAAM,WAAW,4BAA6B,SAAQ,oBAAoB;IAKxE,uBAAuB,IAAI,oBAAoB,CAAC;CACjD"}
|
package/dist/lib.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ import { UnifiedSettlementExecutor } from './settlement/unified-settlement-execu
|
|
|
13
13
|
import { createPaymentHandlerAdapter, REJECT_CODE_MAP, generatePaymentId, mapRejectCode, validateResponseData } from './core/payment-handler';
|
|
14
14
|
import { IlpSendHandler, validateIlpSendRequest } from './http/ilp-send-handler';
|
|
15
15
|
export { ConnectorNode, ConfigLoader, ConfigurationError, ConnectorNotStartedError, RoutingTable, PacketHandler, BTPServer, BTPClient, BTPClientManager, AdminServer, AccountManager, SettlementMonitor, UnifiedSettlementExecutor, createLogger, createPaymentHandlerAdapter, REJECT_CODE_MAP, generatePaymentId, mapRejectCode, validateResponseData, IlpSendHandler, validateIlpSendRequest, };
|
|
16
|
-
export type { ConnectorConfig, PeerConfig, RouteConfig, SettlementConfig, LocalDeliveryConfig, LocalDeliveryHandler, LocalDeliveryRequest, LocalDeliveryResponse, SendPacketParams,
|
|
16
|
+
export type { ConnectorConfig, PeerConfig, RouteConfig, SettlementConfig, LocalDeliveryConfig, LocalDeliveryHandler, LocalDeliveryRequest, LocalDeliveryResponse, SendPacketParams, PeerRegistrationRequest, PeerInfo, PeerAccountBalance, RouteInfo, RemovePeerResult, IlpSendRequest, IlpSendResponse, TransportConfig, } from './config/types';
|
|
17
17
|
export type { AdminSettlementConfig } from './settlement/types';
|
|
18
18
|
export type { ChannelOpenOptions, ChannelMetadata } from './settlement/channel-manager';
|
|
19
19
|
export type { PaymentRequest, PaymentResponse, PaymentHandler } from './core/payment-handler';
|