arc402-cli 1.4.18 → 1.4.19

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/dist/abis.d.ts CHANGED
@@ -8,7 +8,7 @@ export declare const TRUST_REGISTRY_ABI: readonly ["function getScore(address wa
8
8
  export declare const ERC20_ABI: readonly ["function approve(address spender, uint256 amount) external returns (bool)", "function allowance(address owner, address spender) external view returns (uint256)", "function balanceOf(address owner) external view returns (uint256)", "function decimals() external view returns (uint8)", "function symbol() external view returns (string)"];
9
9
  export declare const WALLET_FACTORY_ABI: readonly ["function deployWallet() external returns (address)", "function deployWallet(address owner) external returns (address)", "function createWallet(address _entryPoint) external returns (address)", "function getWallets(address owner) external view returns (address[] memory)", "function totalWallets() external view returns (uint256)", "event WalletDeployed(address indexed wallet, address indexed owner)", "event WalletCreated(address indexed owner, address indexed walletAddress)"];
10
10
  export declare const POLICY_ENGINE_LIMITS_ABI: readonly ["function categoryLimits(address wallet, string category) external view returns (uint256)", "function dailyCategoryLimit(address wallet, string category) external view returns (uint256)", "function setCategoryLimitFor(address wallet, string category, uint256 limitPerTx) external", "function setDailyLimitFor(address wallet, string category, uint256 limit) external"];
11
- export declare const POLICY_ENGINE_GOVERNANCE_ABI: readonly ["function registerWallet(address wallet, address owner) external", "function enableDefiAccess(address wallet) external", "function walletOwners(address wallet) external view returns (address)", "function defiAccessEnabled(address wallet) external view returns (bool)"];
11
+ export declare const POLICY_ENGINE_GOVERNANCE_ABI: readonly ["function registerWallet(address wallet, address owner) external", "function enableDefiAccess(address wallet) external", "function walletOwners(address wallet) external view returns (address)", "function defiAccessEnabled(address wallet) external view returns (bool)", "function whitelistContract(address wallet, address target) external", "function isContractWhitelisted(address wallet, address target) external view returns (bool)"];
12
12
  export declare const ARC402_WALLET_EXECUTE_ABI: readonly ["function executeContractCall((address target, bytes data, uint256 value, uint256 minReturnValue, uint256 maxApprovalAmount, address approvalToken) params) external returns (bytes memory)"];
13
13
  export declare const ARC402_WALLET_PROTOCOL_ABI: readonly ["function openContext(bytes32 contextId, string calldata taskType) external", "function closeContext() external", "function contextOpen() external view returns (bool)", "function attest(bytes32 attestationId, string calldata action, string calldata reason, address recipient, uint256 amount, address token, uint256 expiresAt) external returns (bytes32)", "function executeSpend(address payable recipient, uint256 amount, string calldata category, bytes32 attestationId) external", "function executeTokenSpend(address recipient, uint256 amount, address token, string calldata category, bytes32 attestationId) external"];
14
14
  export declare const ARC402_WALLET_GUARDIAN_ABI: readonly ["function setGuardian(address _guardian) external", "function freeze() external", "function freezeAndDrain() external", "function freeze(string reason) external", "function unfreeze() external", "function frozen() external view returns (bool)", "function frozenBy() external view returns (address)", "function frozenAt() external view returns (uint256)", "function guardian() external view returns (address)", "function owner() external view returns (address)", "event WalletFrozen(address indexed by, string reason, uint256 timestamp)", "event WalletUnfrozen(address indexed by, uint256 timestamp)", "event GuardianUpdated(address indexed newGuardian)"];
@@ -1 +1 @@
1
- {"version":3,"file":"abis.d.ts","sourceRoot":"","sources":["../src/abis.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,kBAAkB,+pCAkBrB,CAAC;AAEX,eAAO,MAAM,qBAAqB,2zJA4CxB,CAAC;AAEX,eAAO,MAAM,kBAAkB,mWAOrB,CAAC;AAEX,eAAO,MAAM,SAAS,4VAMZ,CAAC;AAEX,eAAO,MAAM,kBAAkB,2eAWrB,CAAC;AAEX,eAAO,MAAM,wBAAwB,2XAO3B,CAAC;AAGX,eAAO,MAAM,4BAA4B,wRAQ/B,CAAC;AAEX,eAAO,MAAM,yBAAyB,yMAE5B,CAAC;AAGX,eAAO,MAAM,0BAA0B,snBAO7B,CAAC;AAEX,eAAO,MAAM,0BAA0B,0pBAoB7B,CAAC;AAEX,eAAO,MAAM,0BAA0B,8VAO7B,CAAC;AAEX,eAAO,MAAM,uBAAuB,ufAW1B,CAAC;AAEX,eAAO,MAAM,6BAA6B,gMAIhC,CAAC;AAEX,eAAO,MAAM,qBAAqB,mxEA2BxB,CAAC;AAEX,eAAO,MAAM,yBAAyB,oZAO5B,CAAC"}
1
+ {"version":3,"file":"abis.d.ts","sourceRoot":"","sources":["../src/abis.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,kBAAkB,+pCAkBrB,CAAC;AAEX,eAAO,MAAM,qBAAqB,2zJA4CxB,CAAC;AAEX,eAAO,MAAM,kBAAkB,mWAOrB,CAAC;AAEX,eAAO,MAAM,SAAS,4VAMZ,CAAC;AAEX,eAAO,MAAM,kBAAkB,2eAWrB,CAAC;AAEX,eAAO,MAAM,wBAAwB,2XAO3B,CAAC;AAGX,eAAO,MAAM,4BAA4B,8bAW/B,CAAC;AAEX,eAAO,MAAM,yBAAyB,yMAE5B,CAAC;AAGX,eAAO,MAAM,0BAA0B,snBAO7B,CAAC;AAEX,eAAO,MAAM,0BAA0B,0pBAoB7B,CAAC;AAEX,eAAO,MAAM,0BAA0B,8VAO7B,CAAC;AAEX,eAAO,MAAM,uBAAuB,ufAW1B,CAAC;AAEX,eAAO,MAAM,6BAA6B,gMAIhC,CAAC;AAEX,eAAO,MAAM,qBAAqB,mxEA2BxB,CAAC;AAEX,eAAO,MAAM,yBAAyB,oZAO5B,CAAC"}
package/dist/abis.js CHANGED
@@ -113,6 +113,9 @@ exports.POLICY_ENGINE_GOVERNANCE_ABI = [
113
113
  // isRegistered check helper
114
114
  "function walletOwners(address wallet) external view returns (address)",
115
115
  "function defiAccessEnabled(address wallet) external view returns (bool)",
116
+ // Whitelist management
117
+ "function whitelistContract(address wallet, address target) external",
118
+ "function isContractWhitelisted(address wallet, address target) external view returns (bool)",
116
119
  ];
117
120
  exports.ARC402_WALLET_EXECUTE_ABI = [
118
121
  "function executeContractCall((address target, bytes data, uint256 value, uint256 minReturnValue, uint256 maxApprovalAmount, address approvalToken) params) external returns (bytes memory)",
package/dist/abis.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"abis.js","sourceRoot":"","sources":["../src/abis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abis.js","sourceRoot":"","sources":["../src/abis.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hire.d.ts","sourceRoot":"","sources":["../../src/commands/hire.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBpC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmO1D"}
1
+ {"version":3,"file":"hire.d.ts","sourceRoot":"","sources":["../../src/commands/hire.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkEpC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+O1D"}
@@ -14,12 +14,55 @@ const spinner_1 = require("../ui/spinner");
14
14
  const tree_1 = require("../ui/tree");
15
15
  const format_1 = require("../ui/format");
16
16
  const DEFAULT_REGISTRY_ADDRESS = "0xD5c2851B00090c92Ba7F4723FB548bb30C9B6865";
17
+ /**
18
+ * Resolve a provider argument to a wallet address.
19
+ * Accepts:
20
+ * - 0x... wallet address (passthrough)
21
+ * - subdomain.arc402.xyz (lookup in AgentRegistry by endpoint)
22
+ * - https://... endpoint URL (lookup in AgentRegistry by endpoint)
23
+ */
24
+ async function resolveProviderAddress(providerArg, registryAddress, provider) {
25
+ if (providerArg.startsWith("0x") && providerArg.length === 42)
26
+ return providerArg;
27
+ // Normalize to https URL
28
+ let endpointUrl = providerArg;
29
+ if (!endpointUrl.startsWith("http")) {
30
+ // bare subdomain like "gigabrain.arc402.xyz"
31
+ endpointUrl = `https://${endpointUrl}`;
32
+ }
33
+ // Query agent health endpoint to get wallet address
34
+ try {
35
+ const res = await fetch(`${endpointUrl}/agent`, { signal: AbortSignal.timeout(5000) });
36
+ if (res.ok) {
37
+ const data = await res.json();
38
+ const addr = data.wallet ?? data.agent;
39
+ if (addr && addr.startsWith("0x"))
40
+ return addr;
41
+ }
42
+ }
43
+ catch { /* fall through to registry lookup */ }
44
+ // Fallback: scan AgentRegistry for matching endpoint (expensive but works)
45
+ const registry = new ethers_1.ethers.Contract(registryAddress, abis_1.AGENT_REGISTRY_ABI, provider);
46
+ try {
47
+ // Try common subdomain → wallet lookup via API
48
+ const subdomain = endpointUrl.replace("https://", "").replace(".arc402.xyz", "").split(".")[0];
49
+ const checkRes = await fetch(`https://api.arc402.xyz/check/${subdomain}`).catch(() => null);
50
+ if (checkRes?.ok) {
51
+ const data = await checkRes.json();
52
+ const addr = data.walletAddress ?? data.owner;
53
+ if (addr && addr.startsWith("0x"))
54
+ return addr;
55
+ }
56
+ }
57
+ catch { /* ignore */ }
58
+ throw new Error(`Could not resolve provider address from "${providerArg}". Pass a wallet address (0x...) directly.`);
59
+ }
17
60
  const sessionManager = new sdk_1.SessionManager();
18
61
  function registerHireCommand(program) {
19
62
  program
20
- .command("hire")
21
- .description("Create the on-chain commitment after off-chain negotiation")
22
- .requiredOption("--agent <address>")
63
+ .command("hire [provider]")
64
+ .description("Hire an agent pass wallet address (0x...) or subdomain (gigabrain.arc402.xyz)")
65
+ .option("--agent <address>", "Provider wallet address or subdomain (alias for positional arg)")
23
66
  .requiredOption("--task <description>")
24
67
  .requiredOption("--service-type <type>")
25
68
  .option("--max <amount>", "Max price in wei (e.g. 1000000000000000) or ETH (e.g. 0.001eth) or USDC (e.g. 1USDC). Required unless --session is provided.")
@@ -29,11 +72,23 @@ function registerHireCommand(program) {
29
72
  .option("--session <sessionId>", "Load agreed price and deadline from a completed negotiation session")
30
73
  .option("--use-eoa", "Sign directly with machine key EOA, bypassing the smart wallet")
31
74
  .option("--json")
32
- .action(async (opts) => {
75
+ .action(async (providerArg, opts) => {
33
76
  const config = (0, config_1.loadConfig)();
34
77
  if (!config.serviceAgreementAddress)
35
78
  throw new Error("serviceAgreementAddress missing in config");
36
79
  const { signer, address } = await (0, client_1.requireSigner)(config);
80
+ // Resolve provider: positional arg OR --agent flag
81
+ const rawProvider = providerArg ?? opts.agent;
82
+ if (!rawProvider)
83
+ throw new Error("Provider required. Pass as positional arg (gigabrain.arc402.xyz) or --agent <address>");
84
+ const rpcProvider = new ethers_1.ethers.JsonRpcProvider(config.rpcUrl);
85
+ const registryAddr = config.agentRegistryAddress ?? DEFAULT_REGISTRY_ADDRESS;
86
+ const resolving = (0, spinner_1.startSpinner)(`Resolving provider: ${rawProvider}`);
87
+ opts.agent = await resolveProviderAddress(rawProvider, registryAddr, rpcProvider).catch(e => {
88
+ resolving.fail(`Could not resolve provider: ${e.message}`);
89
+ process.exit(1);
90
+ });
91
+ resolving.succeed(`Provider: ${opts.agent}`);
37
92
  const client = new sdk_1.ServiceAgreementClient(config.serviceAgreementAddress, signer);
38
93
  let maxAmount;
39
94
  let deadlineArg;
@@ -1 +1 @@
1
- {"version":3,"file":"hire.js","sourceRoot":"","sources":["../../src/commands/hire.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hire.js","sourceRoot":"","sources":["../../src/commands/hire.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiPpC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkjB5D"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiPpC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmlB5D"}
@@ -376,6 +376,38 @@ function registerSetupCommands(program) {
376
376
  process.exit(1);
377
377
  }
378
378
  balSpin.succeed(`Wallet balance: ${ethers_1.ethers.formatEther(walletBalance)} ETH`);
379
+ // ── Phase 2b: Policy & Whitelist ────────────────────────────────────────
380
+ console.log(colors_1.c.white("\nPhase 2b: Policy & Whitelist"));
381
+ // Quick check: if hire category limit is already set, onboarding was done — skip.
382
+ const onboardCheckSpin = (0, spinner_1.startSpinner)("Checking onboarding state…");
383
+ let onboardNeeded = true;
384
+ try {
385
+ const policyAddress = config.policyEngineAddress ?? "0x9449B15268bE7042C0b473F3f711a41A29220866";
386
+ const { provider: onboardProvider } = await (0, client_1.getClient)(config);
387
+ const peContract = new ethers_1.ethers.Contract(policyAddress, ["function categoryLimits(address,string) view returns (uint256)"], onboardProvider);
388
+ const hireLimit = await peContract.categoryLimits(config.walletContractAddress, "hire").catch(() => 0n);
389
+ onboardNeeded = hireLimit === 0n;
390
+ }
391
+ catch { /* assume needed */ }
392
+ if (!onboardNeeded) {
393
+ onboardCheckSpin.succeed("Policy already configured — skipping");
394
+ }
395
+ else {
396
+ onboardCheckSpin.update("Running wallet onboard ceremony…");
397
+ const onboardResult = (0, child_process_1.spawnSync)(process.execPath, [process.argv[1], "wallet", "onboard"], {
398
+ encoding: "utf-8",
399
+ timeout: 300000,
400
+ stdio: "inherit",
401
+ env: { ...process.env },
402
+ });
403
+ if (onboardResult.status === 0) {
404
+ onboardCheckSpin.succeed("Policy & whitelist configured");
405
+ }
406
+ else {
407
+ onboardCheckSpin.fail("wallet onboard did not complete — run manually: arc402 wallet onboard");
408
+ console.error(colors_1.c.dim(" This is non-fatal — continuing setup."));
409
+ }
410
+ }
379
411
  // ── Phase 3: Agent Registration ─────────────────────────────────────────
380
412
  console.log(colors_1.c.white("\nPhase 3: Agent Registration"));
381
413
  const registryAddress = config.agentRegistryV2Address ??
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiPA,sDAkjBC;AAlyBD,yCAA2B;AAC3B,uCAAyB;AACzB,2CAA6B;AAC7B,uCAAyB;AACzB,iDAA2D;AAC3D,kDAA0B;AAC1B,sDAA8B;AAC9B,mCAAgC;AAChC,sCAAoG;AACpG,2CAA6C;AAC7C,yCAAiC;AACjC,kCAA6C;AAC7C,sCAAqD;AACrD,oDAAiE;AACjE,4DAA0D;AAC1D,uDAA0D;AAE1D,MAAM,WAAW,GAAG,IAAI,CAAC;AAEzB,iFAAiF;AAEjF,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAChC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACxB,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACzC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB;IACvB,IAAI,CAAC;QACH,IAAA,wBAAQ,EAAC,aAAa,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,iFAAiF;AAEjF,KAAK,UAAU,UAAU;IACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;IAE7C,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;IAE1C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;QAC9B,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,oCAAoC;QAC7C,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC,CAAC;QAC1E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,+EAA+E;IAC/E,yEAAyE;IACzE,IAAI,OAAO,GAAG,4CAA4C,CAAC;IAC3D,IAAI,CAAC;QACH,IAAI,IAAA,qBAAY,GAAE,EAAE,CAAC;YACnB,MAAM,GAAG,GAAG,IAAA,mBAAU,GAAE,CAAC;YACzB,4EAA4E;YAC5E,OAAO,GAAI,GAA0C,CAAC,OAAiB,IAAI,OAAO,CAAC;QACrF,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,0BAA0B,CAAC,CAAC;IAEtC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,IAAA,qBAAK,EACjB,QAAQ,EACR;QACE,OAAO,EAAE,QAAQ,EAAE,OAAO;QAC1B,SAAS,EAAU,oBAAoB,WAAW,EAAE;QACpD,WAAW,EAAQ,OAAO;QAC1B,iBAAiB,EAAE,MAAM;QACzB,cAAc,EAAK,MAAM;KAC1B,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CACpC,CAAC;IACF,KAAK,CAAC,KAAK,EAAE,CAAC;IAEd,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;IAElB,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;IAChD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,4CAA4C,CAAC,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAC,CAAC;IAChG,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACvD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,SAAS;IACtB,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,+CAA+C,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CACT,mEAAmE;YACnE,gEAAgE;YAChE,sEAAsE;YACtE,uDAAuD;YACvD,iDAAiD,CAClD,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,kBAAkB,WAAW,IAAI,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC,CAAC;QACvF,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kCAAkC,WAAW,GAAG,CAAC,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,gFAAgF,CAAC,CAAC,CAAC;IACzG,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAC;IAEpD,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAClF,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,OAAe;IACjD,IAAI,SAA6B,CAAC;IAElC,mEAAmE;IACnE,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,MAAM,IAAA,iBAAO,EAAC;YAC3B,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,gEAAgE;YACzE,IAAI,EAAE,8CAA8C;YACpD,QAAQ,EAAE,CAAC,CAAS,EAAE,EAAE,CACtB,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kDAAkD;SACrF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,SAAS;YAAE,OAAO,CAAC,iBAAiB;QAEhD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,8BAA8B,MAAM,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC;QAE/F,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,UAAU,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;YACrE,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAEnE,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;gBACtC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;gBAC7B,MAAM;YACR,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAC;gBAC5E,wBAAwB;YAC1B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,qCAAqC,CAAC,CAAC,CAAC;YACjE,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YAC7B,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAAS;QAAE,OAAO;IAEvB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,iBAAiB,SAAS,IAAI,CAAC,CAAC,CAAC;IAEvD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,WAAW,EAAE;YAC7C,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;SACpC,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAsC,CAAC;QAElE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,4BAA4B,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YACnF,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,IAAI,WAAW,SAAS,aAAa,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,sCAAsC,QAAQ,EAAE,CAAC,CAAC;IAChE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACpG,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa;IAC1B,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;QAC5B,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,2BAA2B;QACpC,IAAI,EAAE,kCAAkC;QACxC,QAAQ,EAAE,CAAC,CAAS,EAAE,EAAE,CACtB,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;YACjD,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,qCAAqC;KAC5C,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG;QAAE,OAAO;IAEjB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,KAAK,UAAU,cAAc;IAC3B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;IAC/E,OAAO,CAAC,GAAG,CAAC,gHAAgH,CAAC,CAAC;IAC9H,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,8EAA8E,CAAC,CAAC;IAC5F,OAAO,CAAC,GAAG,CAAC,wDAAwD,WAAW,gBAAgB,CAAC,CAAC;IACjG,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC,CAAC;AAC9F,CAAC;AAED,iFAAiF;AAEjF,SAAgB,qBAAqB,CAAC,OAAgB;IACpD,MAAM,KAAK,GAAG,OAAO;SAClB,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,kDAAkD,CAAC,CAAC;IAEnE,KAAK;SACF,OAAO,CAAC,gCAAgC,CAAC;SACzC,WAAW,CAAC,0EAA0E,CAAC;SACvF,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,EAAE;QAClC,IAAI,MAAM,CAAC;QACX,IAAI,CAAC;YACH,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QACtD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC,CAAC;YAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,wBAAe,EAAC,MAAM,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kBAAkB,SAAS,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC;QAE/E,IAAI,GAAa,CAAC;QAClB,IAAI,CAAC;YACH,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,WAAW,EAAE;gBACvC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;aACtD,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAoE,CAAC;QAEhG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,SAAS,6BAA6B,KAAK,EAAE,CAAC,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEL,6EAA6E;IAC7E,KAAK;SACF,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,kFAAkF,CAAC;SAC/F,cAAc,CAAC,oBAAoB,EAAE,kEAAkE,CAAC;SACxG,MAAM,CAAC,eAAe,EAAE,yBAAyB,EAAE,SAAS,CAAC;SAC7D,MAAM,CAAC,uBAAuB,EAAE,2BAA2B,EAAE,cAAc,CAAC;SAC5E,MAAM,CAAC,KAAK,EAAE,IAA8D,EAAE,EAAE;QAC/E,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,cAAc,GAAG,wBAAwB,CAAC;QAChD,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,8BAAU,EAAE,cAAc,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,8BAAU,EAAE,YAAY,CAAC,CAAC;QAC5D,MAAM,cAAc,GAAG,iBAAiB,CAAC;QACzC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;QAE7C,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,GAAG,CAAC,cAAc,SAAS,eAAe,CAAC,CAAC,CAAC;QAE3D,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;QAE/C,gBAAgB;QAChB,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACpE,IAAI,SAAS,GAAG,EAAE,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,GAAG,CAAC,iCAAiC,OAAO,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YAClG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,YAAY,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAE5E,SAAS;QACT,MAAM,UAAU,GAAG,IAAA,sBAAY,EAAC,kBAAkB,CAAC,CAAC;QACpD,IAAI,CAAC;YACH,IAAA,wBAAQ,EAAC,aAAa,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3C,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,cAAc;QACd,MAAM,MAAM,GAAG,IAAA,sBAAY,EAAC,uBAAuB,CAAC,CAAC;QACrD,IAAI,CAAC;YACH,IAAA,wBAAQ,EAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACjD,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YACzC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;YAC/B,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC,CAAC;YACzE,CAAC;iBAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,GAAG,CAAC,mIAAmI,CAAC,CAAC,CAAC;gBACxJ,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,GAAG,CAAC,4FAA4F,CAAC,CAAC,CAAC;YACnH,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,uBAAuB;QACvB,MAAM,OAAO,GAAG,IAAA,sBAAY,EAAC,iBAAiB,CAAC,CAAC;QAChD,IAAI,CAAC,IAAA,qBAAY,GAAE,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;YAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAEjC,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAE1C,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;YAClC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC,CAAC;YACpF,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,4FAA4F,CAAC,CAAC,CAAC;YACnH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,UAAC,CAAC,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAE1F,MAAM,OAAO,GAAG,IAAA,sBAAY,EAAC,0BAA0B,CAAC,CAAC;QACzD,IAAI,aAAqB,CAAC;QAC1B,IAAI,CAAC;YACH,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,IAAA,kBAAS,EAAC,MAAM,CAAC,CAAC;YAC1D,aAAa,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC7E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACpF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,aAAa,GAAG,eAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,2BAA2B,eAAM,CAAC,WAAW,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;YAClG,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,qBAAqB,oCAAoC,CAAC,CAAC,CAAC;YACjG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,mBAAmB,eAAM,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAE5E,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAEtD,MAAM,eAAe,GACnB,MAAM,CAAC,sBAAsB;YAC5B,yBAAgB,CAAC,MAAM,CAAC,OAAO,CAAmD,EAAE,sBAAsB,CAAC;QAC9G,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC,CAAC;YAC1F,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC,CAAC;YAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,sBAAa,EAAC,MAAM,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,IAAI,eAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,yBAAkB,EAAE,WAAW,CAAC,CAAC;QAEvF,MAAM,YAAY,GAAG,IAAA,sBAAY,EAAC,8BAA8B,CAAC,CAAC;QAClE,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC;YACH,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,YAAY,CAAC,IAAI,CAAC,yBAAyB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YACjB,YAAY,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,MAAM,CAAC,qCAAqC,CAAC,CAAC;YAC3D,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,MAAM,IAAA,6CAA6B,EAC5C,MAAM,CAAC,qBAAsB,EAC7B,MAAM,EACN,eAAe,EACf,yBAAkB,EAClB,UAAU,EACV,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,WAAW,SAAS,aAAa,EAAE,EAAE,CAAC,CACzE,CAAC;gBACF,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;gBAChB,YAAY,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;YAC5D,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,YAAY,CAAC,IAAI,CAAC,wBAAwB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACxF,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,2EAA2E,CAAC,CAAC,CAAC;gBAClG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,kBAAkB;QAClB,MAAM,OAAO,GAAG,IAAA,wBAAe,EAAC,MAAM,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,IAAA,sBAAY,EAAC,YAAY,SAAS,cAAc,CAAC,CAAC;QAClE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,UAAU,SAAS,EAAE,CAAC,CAAC;YAC9D,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YACnE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;gBACzB,OAAO,CAAC,OAAO,CAAC,GAAG,SAAS,6BAA6B,CAAC,CAAC;YAC7D,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,WAAW,EAAE;oBAChD,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC,qBAAqB,EAAE,CAAC;iBACjF,CAAC,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,EAAsC,CAAC;gBACxE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CAAC,kCAAkC,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;oBACrF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBACD,OAAO,CAAC,OAAO,CAAC,yBAAyB,OAAO,CAAC,GAAG,IAAI,WAAW,SAAS,aAAa,EAAE,CAAC,CAAC;YAC/F,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAE1C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,IAAA,sBAAY,EAAC,iCAAiC,CAAC,CAAC;YACjE,MAAM,MAAM,GAAG,IAAI,eAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACpD,MAAM,aAAa,GAAG,MAAM,CAAC,qBAAqB,IAAI,MAAM,CAAC,OAAO,CAAC;YACrE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAChD,MAAM,OAAO,GAAG,oBAAoB,SAAS,IAAI,SAAS,EAAE,CAAC;YAC7D,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAEpD,IAAI,OAAiB,CAAC;YACtB,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,cAAc,mBAAmB,EAAE;oBAC1D,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;iBACzE,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,QAAQ,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;gBACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,EAElC,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACzC,QAAQ,CAAC,IAAI,CAAC,wBAAwB,QAAQ,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC,CAAC;gBAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,QAAQ,CAAC,OAAO,CAAC,mBAAmB,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEzD,EAAE,CAAC,SAAS,CAAC,8BAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9C,EAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC,CAAC;QAC1F,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzE,CAAC;QAED,0BAA0B;QAC1B,MAAM,IAAI,GAAG,WAAW,SAAS,aAAa,CAAC;QAC/C,IAAA,mBAAU,EAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1C,2CAA2C;QAC3C,IAAI,oBAAoB,GAAG,KAAK,CAAC;QACjC,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACnF,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;gBAC7B,oBAAoB,GAAG,IAAI,CAAC;gBAC5B,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,gCAAgC,WAAW,GAAG,CAAC,CAAC,CAAC;YACzF,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;QAC/B,CAAC;QAED,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YACjE,MAAM,WAAW,GAAG,IAAA,sBAAY,EAAC,4CAA4C,CAAC,CAAC;YAE/E,wEAAwE;YACxE,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;YAC/B,IAAI,gBAAgB,GAAG,KAAK,CAAC;YAE7B,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACH,MAAM,eAAe,GAAG,IAAA,wBAAQ,EAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;oBAC3F,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;oBACzE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,uBAAuB,CAAC,CAAC;oBACnE,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC9C,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE;wBAC5B,QAAQ;wBACR,uCAAuC;wBACvC,6BAA6B;wBAC7B,6BAA6B;wBAC7B,EAAE;wBACF,WAAW;wBACX,aAAa;wBACb,aAAa,eAAe,uBAAuB,KAAK,EAAE;wBAC1D,oBAAoB;wBACpB,eAAe;wBACf,EAAE;wBACF,WAAW;wBACX,yBAAyB;qBAC1B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBACd,IAAA,wBAAQ,EAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC9D,IAAA,wBAAQ,EAAC,+CAA+C,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC7E,IAAA,wBAAQ,EAAC,8CAA8C,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC5E,gBAAgB,GAAG,IAAI,CAAC;gBAC1B,CAAC;gBAAC,MAAM,CAAC,CAAC,gCAAgC,CAAC,CAAC;YAC9C,CAAC;iBAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,IAAI,CAAC;oBACH,MAAM,eAAe,GAAG,IAAA,wBAAQ,EAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;oBAC3F,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;oBACpE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAAC;oBACjE,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC5C,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE;wBAC1B,wCAAwC;wBACxC,wGAAwG;wBACxG,6BAA6B;wBAC7B,sDAAsD;wBACtD,+BAA+B;wBAC/B,WAAW;wBACX,eAAe,eAAe,WAAW;wBACzC,yEAAyE;wBACzE,eAAe,KAAK,WAAW;wBAC/B,YAAY;wBACZ,+BAA+B;wBAC/B,+BAA+B;wBAC/B,iBAAiB;qBAClB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBACd,IAAA,wBAAQ,EAAC,sBAAsB,SAAS,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;oBAChE,gBAAgB,GAAG,IAAI,CAAC;gBAC1B,CAAC;gBAAC,MAAM,CAAC,CAAC,gCAAgC,CAAC,CAAC;YAC9C,CAAC;YAED,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClB,WAAW,CAAC,OAAO,CAAC,kFAAkF,CAAC,CAAC;YAC1G,CAAC;iBAAM,CAAC;gBACN,qCAAqC;gBACrC,WAAW,CAAC,MAAM,CAAC,8DAA8D,CAAC,CAAC;gBACnF,MAAM,OAAO,GAAG,IAAA,qBAAK,EAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE;oBACxE,QAAQ,EAAE,IAAI;oBACd,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;gBACH,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChB,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;gBACvD,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClB,IAAI,CAAC;oBACH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAI,EAAE,CAAC,CAAC,CAAC;oBAC9B,WAAW,CAAC,OAAO,CAAC,uBAAuB,OAAO,CAAC,GAAG,+DAA+D,CAAC,CAAC;gBACzH,CAAC;gBAAC,MAAM,CAAC;oBACP,WAAW,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC;oBAC7F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;YACH,CAAC;QACH,CAAC;QAED,uEAAuE;QACvE,MAAM,gBAAgB,GAAG,IAAA,sBAAY,EAAC,YAAY,SAAS,qBAAqB,CAAC,CAAC;QAClF,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,SAAS,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvF,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC;gBACjB,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,SAAS,aAAa,CAAC,CAAC;YACxE,CAAC;iBAAM,CAAC;gBACN,gBAAgB,CAAC,IAAI,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,MAAM,CAAC,yBAAyB,SAAS,CAAC,MAAM,qCAAqC,CAAC,CAAC,CAAC;YAChI,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,gBAAgB,CAAC,IAAI,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,MAAM,CAAC,uEAAuE,CAAC,CAAC,CAAC;QACzH,CAAC;QAED,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAE5C,wBAAwB;QACxB,MAAM,QAAQ,GAAG,IAAA,0BAAM,EAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YAC1E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;gBACzD,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,GAAG,CAAC,oCAAoC,WAAW,aAAa,CAAC,CAAC,CAAC;gBAC3G,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC,CAAC;gBAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,SAAS,GAAG,IAAA,sBAAY,EAAC,iCAAiC,CAAC,CAAC;YAClE,MAAM,WAAW,GAAG,IAAA,yBAAS,EAC3B,QAAQ,EACR,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,CAAC,EACxF,EAAE,KAAK,EAAE,SAAS,EAAE,CACrB,CAAC;YACF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,SAAS,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;gBACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,SAAS,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;QACnE,CAAC;QAED,iCAAiC;QACjC,MAAM,UAAU,GAAG,IAAA,0BAAM,EAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,kBAAkB,EAAE,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC;QACvG,IAAI,UAAU,CAAC,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,qCAAqC;YACrC,MAAM,SAAS,GAAG,IAAA,0BAAM,EAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,kBAAkB,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC;YACrG,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC;gBACjB,IAAA,0BAAM,EAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC;YACrD,CAAC;YAED,MAAM,gBAAgB,GAAG,MAAM,IAAA,+BAAiB,GAAE,CAAC;YACnD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,8BAAU,EAAE,MAAM,CAAC,CAAC;YAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,8BAAU,EAAE,QAAQ,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,8BAAU,EAAE,OAAO,CAAC,CAAC;YAChD,KAAK,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;gBAC/C,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,YAAY,GAAG,IAAA,sBAAY,EAAC,8BAA8B,CAAC,CAAC;YAClE,MAAM,UAAU,GAAG;gBACjB,KAAK,EAAE,IAAI;gBACX,QAAQ,EAAE,kBAAkB;gBAC5B,WAAW,EAAE,gBAAgB;gBAC7B,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,GAAG,8BAAU,uBAAuB;gBAC1C,IAAI,EAAE,GAAG,OAAO,uBAAuB;gBACvC,IAAI,EAAE,GAAG,OAAO,oBAAoB;gBACpC,IAAI,EAAE,GAAG,SAAS,sBAAsB;gBACxC,IAAI,EAAE,GAAG,QAAQ,qBAAqB;gBACtC,IAAI,EAAE,sBAAsB,MAAM,CAAC,UAAU,EAAE;gBAC/C,IAAI,EAAE,sBAAsB,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE,EAAE;gBAClE,IAAI,EAAE,oBAAoB,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,EAAE;gBAC9D,IAAI,EAAE,yBAAyB;gBAC/B,IAAI,EAAE,4BAA4B;gBAClC,GAAG,gBAAgB;gBACnB,IAAI,EAAE,WAAW;gBACjB,cAAc;aACf,CAAC;YAEF,MAAM,WAAW,GAAG,IAAA,yBAAS,EAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;YAC1E,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,YAAY,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;gBACxD,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC,CAAC;gBAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,qCAAqC;YACrC,YAAY,CAAC,MAAM,CAAC,gDAAgD,CAAC,CAAC;YACtE,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClB,IAAI,CAAC;oBACH,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,8BAA8B,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC9F,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;wBAAC,OAAO,GAAG,IAAI,CAAC;wBAAC,MAAM;oBAAC,CAAC;gBACvC,CAAC;gBAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAAC;YACjC,CAAC;YAED,IAAI,OAAO,EAAE,CAAC;gBACZ,YAAY,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,YAAY,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;gBAC3D,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC,CAAC;gBAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAE1C,MAAM,SAAS,GAAG,IAAA,sBAAY,EAAC,aAAa,IAAI,UAAU,CAAC,CAAC;QAC5D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,SAAS,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACvF,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAChB,SAAS,CAAC,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,MAAM,CAAC,yBAAyB,QAAQ,CAAC,MAAM,4BAA4B,CAAC,CAAC,CAAC;YACtH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,CAAC,IAAI,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,MAAM,CAAC,gEAAgE,CAAC,CAAC,CAAC;QAClH,CAAC;QAED,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,UAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,GAAG,IAAI,GAAG,UAAC,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC,CAAC;QACnH,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,UAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,UAAC,CAAC,KAAK,CAAC,MAAM,CAAC,qBAAsB,CAAC,CAAC,CAAC;QAC9F,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,UAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;QACzF,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,UAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACvF,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEL,KAAK;SACF,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CACV,wEAAwE;QACxE,iDAAiD,CAClD;SACA,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;QAErD,4EAA4E;QAC5E,MAAM,UAAU,EAAE,CAAC;QAEnB,gFAAgF;QAChF,IAAI,OAAO,GAAG,wBAAwB,CAAC;QACvC,IAAI,CAAC;YACH,IAAI,IAAA,qBAAY,GAAE,EAAE,CAAC;gBACnB,OAAO,GAAG,IAAA,wBAAe,EAAC,IAAA,mBAAU,GAAE,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,0BAA0B,CAAC,CAAC;QAEtC,4EAA4E;QAC5E,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YAC/B,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,qDAAqD;YAC9D,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,gDAAgD,EAAG,KAAK,EAAE,WAAW,EAAE;gBAChF,EAAE,KAAK,EAAE,4BAA4B,EAAwB,KAAK,EAAE,OAAO,EAAE;gBAC7E,EAAE,KAAK,EAAE,6BAA6B,EAAuB,KAAK,EAAE,QAAQ,EAAE;gBAC9E,EAAE,KAAK,EAAE,8BAA8B,EAAsB,KAAK,EAAE,YAAY,EAAE;gBAClF,EAAE,KAAK,EAAE,iCAAiC,EAAmB,KAAK,EAAE,MAAM,EAAE;aAC7E;YACD,OAAO,EAAE,CAAC;SACX,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,kBAAkB;YAClB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QAED,4EAA4E;QAC5E,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,WAAW;gBACd,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,SAAS,EAAE,CAAC;gBAClB,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,aAAa,EAAE,CAAC;gBACtB,MAAM;YACR,KAAK,YAAY;gBACf,MAAM,cAAc,EAAE,CAAC;gBACvB,MAAM;YACR,KAAK,MAAM;gBACT,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CACnB,4EAA4E,CAC7E,CAAC,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC,CAAC;gBAC7F,MAAM;QACV,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiPA,sDAmlBC;AAn0BD,yCAA2B;AAC3B,uCAAyB;AACzB,2CAA6B;AAC7B,uCAAyB;AACzB,iDAA2D;AAC3D,kDAA0B;AAC1B,sDAA8B;AAC9B,mCAAgC;AAChC,sCAAoG;AACpG,2CAA6C;AAC7C,yCAAiC;AACjC,kCAA6C;AAC7C,sCAAqD;AACrD,oDAAiE;AACjE,4DAA0D;AAC1D,uDAA0D;AAE1D,MAAM,WAAW,GAAG,IAAI,CAAC;AAEzB,iFAAiF;AAEjF,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAChC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACxB,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACzC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB;IACvB,IAAI,CAAC;QACH,IAAA,wBAAQ,EAAC,aAAa,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,iFAAiF;AAEjF,KAAK,UAAU,UAAU;IACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;IAE7C,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;IAE1C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;QAC9B,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,oCAAoC;QAC7C,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC,CAAC;QAC1E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,+EAA+E;IAC/E,yEAAyE;IACzE,IAAI,OAAO,GAAG,4CAA4C,CAAC;IAC3D,IAAI,CAAC;QACH,IAAI,IAAA,qBAAY,GAAE,EAAE,CAAC;YACnB,MAAM,GAAG,GAAG,IAAA,mBAAU,GAAE,CAAC;YACzB,4EAA4E;YAC5E,OAAO,GAAI,GAA0C,CAAC,OAAiB,IAAI,OAAO,CAAC;QACrF,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,0BAA0B,CAAC,CAAC;IAEtC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,IAAA,qBAAK,EACjB,QAAQ,EACR;QACE,OAAO,EAAE,QAAQ,EAAE,OAAO;QAC1B,SAAS,EAAU,oBAAoB,WAAW,EAAE;QACpD,WAAW,EAAQ,OAAO;QAC1B,iBAAiB,EAAE,MAAM;QACzB,cAAc,EAAK,MAAM;KAC1B,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CACpC,CAAC;IACF,KAAK,CAAC,KAAK,EAAE,CAAC;IAEd,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;IAElB,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;IAChD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,4CAA4C,CAAC,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAC,CAAC;IAChG,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACvD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,SAAS;IACtB,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,+CAA+C,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CACT,mEAAmE;YACnE,gEAAgE;YAChE,sEAAsE;YACtE,uDAAuD;YACvD,iDAAiD,CAClD,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,kBAAkB,WAAW,IAAI,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC,CAAC;QACvF,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kCAAkC,WAAW,GAAG,CAAC,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,gFAAgF,CAAC,CAAC,CAAC;IACzG,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAC;IAEpD,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAClF,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,OAAe;IACjD,IAAI,SAA6B,CAAC;IAElC,mEAAmE;IACnE,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,MAAM,IAAA,iBAAO,EAAC;YAC3B,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,gEAAgE;YACzE,IAAI,EAAE,8CAA8C;YACpD,QAAQ,EAAE,CAAC,CAAS,EAAE,EAAE,CACtB,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kDAAkD;SACrF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,SAAS;YAAE,OAAO,CAAC,iBAAiB;QAEhD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,8BAA8B,MAAM,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC;QAE/F,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,UAAU,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;YACrE,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YAEnE,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;gBACtC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;gBAC7B,MAAM;YACR,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAC;gBAC5E,wBAAwB;YAC1B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,qCAAqC,CAAC,CAAC,CAAC;YACjE,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YAC7B,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAAS;QAAE,OAAO;IAEvB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,iBAAiB,SAAS,IAAI,CAAC,CAAC,CAAC;IAEvD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,WAAW,EAAE;YAC7C,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;SACpC,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAsC,CAAC;QAElE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,4BAA4B,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YACnF,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,IAAI,WAAW,SAAS,aAAa,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,sCAAsC,QAAQ,EAAE,CAAC,CAAC;IAChE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACpG,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa;IAC1B,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;QAC5B,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,2BAA2B;QACpC,IAAI,EAAE,kCAAkC;QACxC,QAAQ,EAAE,CAAC,CAAS,EAAE,EAAE,CACtB,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;YACjD,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,qCAAqC;KAC5C,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG;QAAE,OAAO;IAEjB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,KAAK,UAAU,cAAc;IAC3B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;IAC/E,OAAO,CAAC,GAAG,CAAC,gHAAgH,CAAC,CAAC;IAC9H,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,8EAA8E,CAAC,CAAC;IAC5F,OAAO,CAAC,GAAG,CAAC,wDAAwD,WAAW,gBAAgB,CAAC,CAAC;IACjG,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC,CAAC;AAC9F,CAAC;AAED,iFAAiF;AAEjF,SAAgB,qBAAqB,CAAC,OAAgB;IACpD,MAAM,KAAK,GAAG,OAAO;SAClB,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,kDAAkD,CAAC,CAAC;IAEnE,KAAK;SACF,OAAO,CAAC,gCAAgC,CAAC;SACzC,WAAW,CAAC,0EAA0E,CAAC;SACvF,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,EAAE;QAClC,IAAI,MAAM,CAAC;QACX,IAAI,CAAC;YACH,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QACtD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC,CAAC;YAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,wBAAe,EAAC,MAAM,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kBAAkB,SAAS,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC;QAE/E,IAAI,GAAa,CAAC;QAClB,IAAI,CAAC;YACH,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,WAAW,EAAE;gBACvC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;aACtD,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,uBAAuB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAoE,CAAC;QAEhG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,SAAS,6BAA6B,KAAK,EAAE,CAAC,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEL,6EAA6E;IAC7E,KAAK;SACF,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,kFAAkF,CAAC;SAC/F,cAAc,CAAC,oBAAoB,EAAE,kEAAkE,CAAC;SACxG,MAAM,CAAC,eAAe,EAAE,yBAAyB,EAAE,SAAS,CAAC;SAC7D,MAAM,CAAC,uBAAuB,EAAE,2BAA2B,EAAE,cAAc,CAAC;SAC5E,MAAM,CAAC,KAAK,EAAE,IAA8D,EAAE,EAAE;QAC/E,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,cAAc,GAAG,wBAAwB,CAAC;QAChD,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,8BAAU,EAAE,cAAc,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,8BAAU,EAAE,YAAY,CAAC,CAAC;QAC5D,MAAM,cAAc,GAAG,iBAAiB,CAAC;QACzC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;QAE7C,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,GAAG,CAAC,cAAc,SAAS,eAAe,CAAC,CAAC,CAAC;QAE3D,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;QAE/C,gBAAgB;QAChB,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACpE,IAAI,SAAS,GAAG,EAAE,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,GAAG,CAAC,iCAAiC,OAAO,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YAClG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,YAAY,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAE5E,SAAS;QACT,MAAM,UAAU,GAAG,IAAA,sBAAY,EAAC,kBAAkB,CAAC,CAAC;QACpD,IAAI,CAAC;YACH,IAAA,wBAAQ,EAAC,aAAa,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3C,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,cAAc;QACd,MAAM,MAAM,GAAG,IAAA,sBAAY,EAAC,uBAAuB,CAAC,CAAC;QACrD,IAAI,CAAC;YACH,IAAA,wBAAQ,EAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACjD,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YACzC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;YAC/B,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC,CAAC;YACzE,CAAC;iBAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,GAAG,CAAC,mIAAmI,CAAC,CAAC,CAAC;gBACxJ,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,GAAG,CAAC,4FAA4F,CAAC,CAAC,CAAC;YACnH,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,uBAAuB;QACvB,MAAM,OAAO,GAAG,IAAA,sBAAY,EAAC,iBAAiB,CAAC,CAAC;QAChD,IAAI,CAAC,IAAA,qBAAY,GAAE,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;YAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAEjC,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAE1C,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;YAClC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC,CAAC;YACpF,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,4FAA4F,CAAC,CAAC,CAAC;YACnH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,UAAC,CAAC,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAE1F,MAAM,OAAO,GAAG,IAAA,sBAAY,EAAC,0BAA0B,CAAC,CAAC;QACzD,IAAI,aAAqB,CAAC;QAC1B,IAAI,CAAC;YACH,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,IAAA,kBAAS,EAAC,MAAM,CAAC,CAAC;YAC1D,aAAa,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC7E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACpF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,aAAa,GAAG,eAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,2BAA2B,eAAM,CAAC,WAAW,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;YAClG,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,qBAAqB,oCAAoC,CAAC,CAAC,CAAC;YACjG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,mBAAmB,eAAM,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAE5E,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAEvD,kFAAkF;QAClF,MAAM,gBAAgB,GAAG,IAAA,sBAAY,EAAC,4BAA4B,CAAC,CAAC;QACpE,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,CAAC,mBAAmB,IAAI,4CAA4C,CAAC;YACjG,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,MAAM,IAAA,kBAAS,EAAC,MAAM,CAAC,CAAC;YAC9D,MAAM,UAAU,GAAG,IAAI,eAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,gEAAgE,CAAC,EAAE,eAAe,CAAC,CAAC;YAC3I,MAAM,SAAS,GAAW,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAChH,aAAa,GAAG,SAAS,KAAK,EAAE,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAAC;QAE/B,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,gBAAgB,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,gBAAgB,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC;YAC5D,MAAM,aAAa,GAAG,IAAA,yBAAS,EAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE;gBACxF,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,MAAO;gBAChB,KAAK,EAAE,SAAS;gBAChB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;aACxB,CAAC,CAAC;YACH,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/B,gBAAgB,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACN,gBAAgB,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;gBAC/F,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;QAED,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAEtD,MAAM,eAAe,GACnB,MAAM,CAAC,sBAAsB;YAC5B,yBAAgB,CAAC,MAAM,CAAC,OAAO,CAAmD,EAAE,sBAAsB,CAAC;QAC9G,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC,CAAC;YAC1F,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC,CAAC;YAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,sBAAa,EAAC,MAAM,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,IAAI,eAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,yBAAkB,EAAE,WAAW,CAAC,CAAC;QAEvF,MAAM,YAAY,GAAG,IAAA,sBAAY,EAAC,8BAA8B,CAAC,CAAC;QAClE,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC;YACH,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,YAAY,CAAC,IAAI,CAAC,yBAAyB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YACjB,YAAY,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,MAAM,CAAC,qCAAqC,CAAC,CAAC;YAC3D,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,MAAM,IAAA,6CAA6B,EAC5C,MAAM,CAAC,qBAAsB,EAC7B,MAAM,EACN,eAAe,EACf,yBAAkB,EAClB,UAAU,EACV,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,WAAW,SAAS,aAAa,EAAE,EAAE,CAAC,CACzE,CAAC;gBACF,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;gBAChB,YAAY,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;YAC5D,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,YAAY,CAAC,IAAI,CAAC,wBAAwB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACxF,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,2EAA2E,CAAC,CAAC,CAAC;gBAClG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,kBAAkB;QAClB,MAAM,OAAO,GAAG,IAAA,wBAAe,EAAC,MAAM,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,IAAA,sBAAY,EAAC,YAAY,SAAS,cAAc,CAAC,CAAC;QAClE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,UAAU,SAAS,EAAE,CAAC,CAAC;YAC9D,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;YACnE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;gBACzB,OAAO,CAAC,OAAO,CAAC,GAAG,SAAS,6BAA6B,CAAC,CAAC;YAC7D,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,WAAW,EAAE;oBAChD,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC,qBAAqB,EAAE,CAAC;iBACjF,CAAC,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,EAAsC,CAAC;gBACxE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CAAC,kCAAkC,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;oBACrF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBACD,OAAO,CAAC,OAAO,CAAC,yBAAyB,OAAO,CAAC,GAAG,IAAI,WAAW,SAAS,aAAa,EAAE,CAAC,CAAC;YAC/F,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAE1C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,IAAA,sBAAY,EAAC,iCAAiC,CAAC,CAAC;YACjE,MAAM,MAAM,GAAG,IAAI,eAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACpD,MAAM,aAAa,GAAG,MAAM,CAAC,qBAAqB,IAAI,MAAM,CAAC,OAAO,CAAC;YACrE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAChD,MAAM,OAAO,GAAG,oBAAoB,SAAS,IAAI,SAAS,EAAE,CAAC;YAC7D,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAEpD,IAAI,OAAiB,CAAC;YACtB,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,cAAc,mBAAmB,EAAE;oBAC1D,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;iBACzE,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,QAAQ,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;gBACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,EAElC,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACzC,QAAQ,CAAC,IAAI,CAAC,wBAAwB,QAAQ,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC,CAAC;gBAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,QAAQ,CAAC,OAAO,CAAC,mBAAmB,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEzD,EAAE,CAAC,SAAS,CAAC,8BAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9C,EAAE,CAAC,aAAa,CAAC,iBAAiB,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC,CAAC;QAC1F,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzE,CAAC;QAED,0BAA0B;QAC1B,MAAM,IAAI,GAAG,WAAW,SAAS,aAAa,CAAC;QAC/C,IAAA,mBAAU,EAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1C,2CAA2C;QAC3C,IAAI,oBAAoB,GAAG,KAAK,CAAC;QACjC,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACnF,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;gBAC7B,oBAAoB,GAAG,IAAI,CAAC;gBAC5B,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,gCAAgC,WAAW,GAAG,CAAC,CAAC,CAAC;YACzF,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;QAC/B,CAAC;QAED,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YACjE,MAAM,WAAW,GAAG,IAAA,sBAAY,EAAC,4CAA4C,CAAC,CAAC;YAE/E,wEAAwE;YACxE,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;YAC/B,IAAI,gBAAgB,GAAG,KAAK,CAAC;YAE7B,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACH,MAAM,eAAe,GAAG,IAAA,wBAAQ,EAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;oBAC3F,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;oBACzE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,uBAAuB,CAAC,CAAC;oBACnE,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC9C,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE;wBAC5B,QAAQ;wBACR,uCAAuC;wBACvC,6BAA6B;wBAC7B,6BAA6B;wBAC7B,EAAE;wBACF,WAAW;wBACX,aAAa;wBACb,aAAa,eAAe,uBAAuB,KAAK,EAAE;wBAC1D,oBAAoB;wBACpB,eAAe;wBACf,EAAE;wBACF,WAAW;wBACX,yBAAyB;qBAC1B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBACd,IAAA,wBAAQ,EAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC9D,IAAA,wBAAQ,EAAC,+CAA+C,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC7E,IAAA,wBAAQ,EAAC,8CAA8C,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC5E,gBAAgB,GAAG,IAAI,CAAC;gBAC1B,CAAC;gBAAC,MAAM,CAAC,CAAC,gCAAgC,CAAC,CAAC;YAC9C,CAAC;iBAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,IAAI,CAAC;oBACH,MAAM,eAAe,GAAG,IAAA,wBAAQ,EAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;oBAC3F,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;oBACpE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAAC;oBACjE,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC5C,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE;wBAC1B,wCAAwC;wBACxC,wGAAwG;wBACxG,6BAA6B;wBAC7B,sDAAsD;wBACtD,+BAA+B;wBAC/B,WAAW;wBACX,eAAe,eAAe,WAAW;wBACzC,yEAAyE;wBACzE,eAAe,KAAK,WAAW;wBAC/B,YAAY;wBACZ,+BAA+B;wBAC/B,+BAA+B;wBAC/B,iBAAiB;qBAClB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBACd,IAAA,wBAAQ,EAAC,sBAAsB,SAAS,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;oBAChE,gBAAgB,GAAG,IAAI,CAAC;gBAC1B,CAAC;gBAAC,MAAM,CAAC,CAAC,gCAAgC,CAAC,CAAC;YAC9C,CAAC;YAED,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClB,WAAW,CAAC,OAAO,CAAC,kFAAkF,CAAC,CAAC;YAC1G,CAAC;iBAAM,CAAC;gBACN,qCAAqC;gBACrC,WAAW,CAAC,MAAM,CAAC,8DAA8D,CAAC,CAAC;gBACnF,MAAM,OAAO,GAAG,IAAA,qBAAK,EAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE;oBACxE,QAAQ,EAAE,IAAI;oBACd,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;gBACH,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChB,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;gBACvD,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClB,IAAI,CAAC;oBACH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAI,EAAE,CAAC,CAAC,CAAC;oBAC9B,WAAW,CAAC,OAAO,CAAC,uBAAuB,OAAO,CAAC,GAAG,+DAA+D,CAAC,CAAC;gBACzH,CAAC;gBAAC,MAAM,CAAC;oBACP,WAAW,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC;oBAC7F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;YACH,CAAC;QACH,CAAC;QAED,uEAAuE;QACvE,MAAM,gBAAgB,GAAG,IAAA,sBAAY,EAAC,YAAY,SAAS,qBAAqB,CAAC,CAAC;QAClF,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,SAAS,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvF,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC;gBACjB,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,SAAS,aAAa,CAAC,CAAC;YACxE,CAAC;iBAAM,CAAC;gBACN,gBAAgB,CAAC,IAAI,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,MAAM,CAAC,yBAAyB,SAAS,CAAC,MAAM,qCAAqC,CAAC,CAAC,CAAC;YAChI,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,gBAAgB,CAAC,IAAI,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,MAAM,CAAC,uEAAuE,CAAC,CAAC,CAAC;QACzH,CAAC;QAED,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAE5C,wBAAwB;QACxB,MAAM,QAAQ,GAAG,IAAA,0BAAM,EAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YAC1E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;gBACzD,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,GAAG,CAAC,oCAAoC,WAAW,aAAa,CAAC,CAAC,CAAC;gBAC3G,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC,CAAC;gBAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,SAAS,GAAG,IAAA,sBAAY,EAAC,iCAAiC,CAAC,CAAC;YAClE,MAAM,WAAW,GAAG,IAAA,yBAAS,EAC3B,QAAQ,EACR,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,CAAC,EACxF,EAAE,KAAK,EAAE,SAAS,EAAE,CACrB,CAAC;YACF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,SAAS,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;gBACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,SAAS,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;QACnE,CAAC;QAED,iCAAiC;QACjC,MAAM,UAAU,GAAG,IAAA,0BAAM,EAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,kBAAkB,EAAE,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC;QACvG,IAAI,UAAU,CAAC,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,qCAAqC;YACrC,MAAM,SAAS,GAAG,IAAA,0BAAM,EAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,kBAAkB,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC;YACrG,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC;gBACjB,IAAA,0BAAM,EAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC;YACrD,CAAC;YAED,MAAM,gBAAgB,GAAG,MAAM,IAAA,+BAAiB,GAAE,CAAC;YACnD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,8BAAU,EAAE,MAAM,CAAC,CAAC;YAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,8BAAU,EAAE,QAAQ,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,8BAAU,EAAE,OAAO,CAAC,CAAC;YAChD,KAAK,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;gBAC/C,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,YAAY,GAAG,IAAA,sBAAY,EAAC,8BAA8B,CAAC,CAAC;YAClE,MAAM,UAAU,GAAG;gBACjB,KAAK,EAAE,IAAI;gBACX,QAAQ,EAAE,kBAAkB;gBAC5B,WAAW,EAAE,gBAAgB;gBAC7B,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,GAAG,8BAAU,uBAAuB;gBAC1C,IAAI,EAAE,GAAG,OAAO,uBAAuB;gBACvC,IAAI,EAAE,GAAG,OAAO,oBAAoB;gBACpC,IAAI,EAAE,GAAG,SAAS,sBAAsB;gBACxC,IAAI,EAAE,GAAG,QAAQ,qBAAqB;gBACtC,IAAI,EAAE,sBAAsB,MAAM,CAAC,UAAU,EAAE;gBAC/C,IAAI,EAAE,sBAAsB,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE,EAAE;gBAClE,IAAI,EAAE,oBAAoB,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,EAAE;gBAC9D,IAAI,EAAE,yBAAyB;gBAC/B,IAAI,EAAE,4BAA4B;gBAClC,GAAG,gBAAgB;gBACnB,IAAI,EAAE,WAAW;gBACjB,cAAc;aACf,CAAC;YAEF,MAAM,WAAW,GAAG,IAAA,yBAAS,EAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;YAC1E,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,YAAY,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;gBACxD,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC,CAAC;gBAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,qCAAqC;YACrC,YAAY,CAAC,MAAM,CAAC,gDAAgD,CAAC,CAAC;YACtE,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClB,IAAI,CAAC;oBACH,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,8BAA8B,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC9F,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;wBAAC,OAAO,GAAG,IAAI,CAAC;wBAAC,MAAM;oBAAC,CAAC;gBACvC,CAAC;gBAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAAC;YACjC,CAAC;YAED,IAAI,OAAO,EAAE,CAAC;gBACZ,YAAY,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,YAAY,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;gBAC3D,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC,CAAC;gBAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAE1C,MAAM,SAAS,GAAG,IAAA,sBAAY,EAAC,aAAa,IAAI,UAAU,CAAC,CAAC;QAC5D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,SAAS,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACvF,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAChB,SAAS,CAAC,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,MAAM,CAAC,yBAAyB,QAAQ,CAAC,MAAM,4BAA4B,CAAC,CAAC,CAAC;YACtH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,CAAC,IAAI,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAC,CAAC,MAAM,CAAC,gEAAgE,CAAC,CAAC,CAAC;QAClH,CAAC;QAED,2EAA2E;QAE3E,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,UAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,GAAG,IAAI,GAAG,UAAC,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC,CAAC;QACnH,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,UAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,UAAC,CAAC,KAAK,CAAC,MAAM,CAAC,qBAAsB,CAAC,CAAC,CAAC;QAC9F,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,UAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;QACzF,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,UAAC,CAAC,OAAO,GAAG,UAAC,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,UAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACvF,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEL,KAAK;SACF,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CACV,wEAAwE;QACxE,iDAAiD,CAClD;SACA,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;QAErD,4EAA4E;QAC5E,MAAM,UAAU,EAAE,CAAC;QAEnB,gFAAgF;QAChF,IAAI,OAAO,GAAG,wBAAwB,CAAC;QACvC,IAAI,CAAC;YACH,IAAI,IAAA,qBAAY,GAAE,EAAE,CAAC;gBACnB,OAAO,GAAG,IAAA,wBAAe,EAAC,IAAA,mBAAU,GAAE,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,0BAA0B,CAAC,CAAC;QAEtC,4EAA4E;QAC5E,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YAC/B,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,qDAAqD;YAC9D,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,gDAAgD,EAAG,KAAK,EAAE,WAAW,EAAE;gBAChF,EAAE,KAAK,EAAE,4BAA4B,EAAwB,KAAK,EAAE,OAAO,EAAE;gBAC7E,EAAE,KAAK,EAAE,6BAA6B,EAAuB,KAAK,EAAE,QAAQ,EAAE;gBAC9E,EAAE,KAAK,EAAE,8BAA8B,EAAsB,KAAK,EAAE,YAAY,EAAE;gBAClF,EAAE,KAAK,EAAE,iCAAiC,EAAmB,KAAK,EAAE,MAAM,EAAE;aAC7E;YACD,OAAO,EAAE,CAAC;SACX,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,kBAAkB;YAClB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QAED,4EAA4E;QAC5E,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,WAAW;gBACd,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,SAAS,EAAE,CAAC;gBAClB,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,aAAa,EAAE,CAAC;gBACtB,MAAM;YACR,KAAK,YAAY;gBACf,MAAM,cAAc,EAAE,CAAC;gBACvB,MAAM;YACR,KAAK,MAAM;gBACT,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CACnB,4EAA4E,CAC7E,CAAC,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC,CAAC;gBAC7F,MAAM;QACV,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/commands/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAslBpC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA4gG7D"}
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/commands/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAslBpC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+uG7D"}
@@ -1257,6 +1257,216 @@ function registerWalletCommands(program) {
1257
1257
  printOpenShellHint();
1258
1258
  }
1259
1259
  });
1260
+ // ─── onboard ───────────────────────────────────────────────────────────────
1261
+ //
1262
+ // Post-deploy ceremony: register on PolicyEngine, set velocity limit,
1263
+ // 5 category spend limits, and whitelist 4 protocol contracts.
1264
+ // Runs in ONE WalletConnect session. Idempotent — skips steps already done.
1265
+ wallet.command("onboard")
1266
+ .description("Post-deploy onboarding: PolicyEngine registration, velocity limit, category limits, and contract whitelisting in one WalletConnect session")
1267
+ .option("--velocity-limit <eth>", "Velocity limit in ETH (rolling window)", "0.05")
1268
+ .option("--hardware", "Hardware wallet mode: show raw wc: URI only")
1269
+ .action(async (opts) => {
1270
+ const config = (0, config_1.loadConfig)();
1271
+ if (!config.walletContractAddress) {
1272
+ console.error(colors_1.c.failure + " " + colors_1.c.red("No walletContractAddress in config. Run `arc402 wallet deploy` first."));
1273
+ process.exit(1);
1274
+ }
1275
+ if (!config.walletConnectProjectId) {
1276
+ console.error(colors_1.c.failure + " " + colors_1.c.red("WalletConnect not configured. Run `arc402 config set walletConnectProjectId <id>`."));
1277
+ process.exit(1);
1278
+ }
1279
+ const walletAddress = config.walletContractAddress;
1280
+ const policyAddress = config.policyEngineAddress ?? POLICY_ENGINE_DEFAULT;
1281
+ const chainId = config.network === "base-mainnet" ? 8453 : 84532;
1282
+ const provider = new ethers_1.ethers.JsonRpcProvider(config.rpcUrl);
1283
+ // Resolve protocol contracts to whitelist
1284
+ const handshakeAddress = config.handshakeAddress ??
1285
+ config_1.NETWORK_DEFAULTS[config.network]?.handshakeAddress ??
1286
+ "0x4F5A38Bb746d7E5d49d8fd26CA6beD141Ec2DDb3";
1287
+ const protocolContracts = [
1288
+ { address: config.serviceAgreementAddress ?? config_1.NETWORK_DEFAULTS[config.network]?.serviceAgreementAddress ?? "", name: "ServiceAgreement" },
1289
+ { address: config.computeAgreementAddress ?? config_1.NETWORK_DEFAULTS[config.network]?.computeAgreementAddress ?? "", name: "ComputeAgreement" },
1290
+ { address: config.subscriptionAgreementAddress ?? config_1.NETWORK_DEFAULTS[config.network]?.subscriptionAgreementAddress ?? "", name: "SubscriptionAgreement" },
1291
+ { address: handshakeAddress, name: "Handshake" },
1292
+ ].filter(pc => pc.address && pc.address !== "");
1293
+ // Pre-check on-chain state to count pending txs and decide what to skip
1294
+ const checkSpin = (0, spinner_1.startSpinner)("Checking onboarding state…");
1295
+ let needsRegister = true;
1296
+ let needsDefiAccess = true;
1297
+ let needsVelocity = true;
1298
+ const categoryNeeds = {};
1299
+ const whitelistNeeds = {};
1300
+ try {
1301
+ const govContract = new ethers_1.ethers.Contract(policyAddress, abis_1.POLICY_ENGINE_GOVERNANCE_ABI, provider);
1302
+ const limitsContract = new ethers_1.ethers.Contract(policyAddress, abis_1.POLICY_ENGINE_LIMITS_ABI, provider);
1303
+ const ownerContract = new ethers_1.ethers.Contract(walletAddress, abis_1.ARC402_WALLET_OWNER_ABI, provider);
1304
+ try {
1305
+ const registeredOwner = await govContract.walletOwners(walletAddress);
1306
+ needsRegister = registeredOwner === ethers_1.ethers.ZeroAddress;
1307
+ }
1308
+ catch { /* assume needs */ }
1309
+ try {
1310
+ const defiEnabled = await govContract.defiAccessEnabled(walletAddress);
1311
+ needsDefiAccess = !defiEnabled;
1312
+ }
1313
+ catch { /* assume needs */ }
1314
+ try {
1315
+ const velocity = await ownerContract.velocityLimit();
1316
+ needsVelocity = velocity === 0n;
1317
+ }
1318
+ catch { /* assume needs */ }
1319
+ for (const { name } of ONBOARDING_CATEGORIES) {
1320
+ try {
1321
+ const existing = await limitsContract.categoryLimits(walletAddress, name);
1322
+ categoryNeeds[name] = existing === 0n;
1323
+ }
1324
+ catch {
1325
+ categoryNeeds[name] = true;
1326
+ }
1327
+ }
1328
+ for (const pc of protocolContracts) {
1329
+ try {
1330
+ const isWL = await govContract.isContractWhitelisted(walletAddress, pc.address);
1331
+ whitelistNeeds[pc.name] = !isWL;
1332
+ }
1333
+ catch {
1334
+ whitelistNeeds[pc.name] = true;
1335
+ }
1336
+ }
1337
+ checkSpin.succeed("State checked");
1338
+ }
1339
+ catch (e) {
1340
+ checkSpin.fail(`State check failed: ${e instanceof Error ? e.message : String(e)}`);
1341
+ process.exit(1);
1342
+ }
1343
+ // Count pending transactions
1344
+ let pendingTxCount = 0;
1345
+ if (needsRegister)
1346
+ pendingTxCount++;
1347
+ if (needsDefiAccess)
1348
+ pendingTxCount++;
1349
+ if (needsVelocity)
1350
+ pendingTxCount++;
1351
+ for (const { name } of ONBOARDING_CATEGORIES) {
1352
+ if (categoryNeeds[name])
1353
+ pendingTxCount++;
1354
+ }
1355
+ for (const pc of protocolContracts) {
1356
+ if (whitelistNeeds[pc.name])
1357
+ pendingTxCount++;
1358
+ }
1359
+ if (pendingTxCount === 0) {
1360
+ console.log(" " + colors_1.c.success + " Wallet already fully onboarded — nothing to do.");
1361
+ return;
1362
+ }
1363
+ console.log(" " + colors_1.c.dim(`◈ ${pendingTxCount} transaction(s) pending — your phone will need to approve each.`));
1364
+ // Telegram notification before first tx
1365
+ const telegramOpts = config.telegramBotToken && config.telegramChatId
1366
+ ? { botToken: config.telegramBotToken, chatId: config.telegramChatId, threadId: config.telegramThreadId }
1367
+ : undefined;
1368
+ // Connect WalletConnect ONCE — reuse session for all txs
1369
+ const { client, session, account } = await (0, walletconnect_1.connectPhoneWallet)(config.walletConnectProjectId, chainId, config, { telegramOpts, prompt: `Approve ${pendingTxCount} wallet onboarding transaction(s)`, hardware: !!opts.hardware });
1370
+ const networkName = chainId === 8453 ? "Base" : "Base Sepolia";
1371
+ const shortAddr = `${account.slice(0, 6)}...${account.slice(-5)}`;
1372
+ console.log("\n" + colors_1.c.success + colors_1.c.white(` Connected: ${shortAddr} on ${networkName}`));
1373
+ if (telegramOpts) {
1374
+ await (0, telegram_notify_1.sendTelegramMessage)({
1375
+ botToken: telegramOpts.botToken,
1376
+ chatId: telegramOpts.chatId,
1377
+ threadId: telegramOpts.threadId,
1378
+ text: `◈ arc402 wallet onboard: ${pendingTxCount} txs pending for ${shortAddr}`,
1379
+ });
1380
+ }
1381
+ const sendTx = async (call, description) => {
1382
+ const txSpin = (0, spinner_1.startSpinner)(description);
1383
+ const hash = await (0, walletconnect_1.sendTransactionWithSession)(client, session, account, chainId, call);
1384
+ await provider.waitForTransaction(hash, 1);
1385
+ txSpin.succeed(description);
1386
+ return hash;
1387
+ };
1388
+ const executeIface = new ethers_1.ethers.Interface(abis_1.ARC402_WALLET_EXECUTE_ABI);
1389
+ const govIface = new ethers_1.ethers.Interface(abis_1.POLICY_ENGINE_GOVERNANCE_ABI);
1390
+ const limitsIface = new ethers_1.ethers.Interface(abis_1.POLICY_ENGINE_LIMITS_ABI);
1391
+ const ownerIface = new ethers_1.ethers.Interface(abis_1.ARC402_WALLET_OWNER_ABI);
1392
+ console.log("\n" + colors_1.c.dim("── Onboarding ceremony ────────────────────────────────────────"));
1393
+ // 1. registerWallet
1394
+ if (needsRegister) {
1395
+ const registerCalldata = govIface.encodeFunctionData("registerWallet", [walletAddress, account]);
1396
+ await sendTx({
1397
+ to: walletAddress,
1398
+ data: executeIface.encodeFunctionData("executeContractCall", [{
1399
+ target: policyAddress,
1400
+ data: registerCalldata,
1401
+ value: 0n,
1402
+ minReturnValue: 0n,
1403
+ maxApprovalAmount: 0n,
1404
+ approvalToken: ethers_1.ethers.ZeroAddress,
1405
+ }]),
1406
+ value: "0x0",
1407
+ }, "registerWallet on PolicyEngine");
1408
+ }
1409
+ else {
1410
+ console.log(" " + colors_1.c.success + colors_1.c.dim(" registerWallet — already done"));
1411
+ }
1412
+ // 2. enableDefiAccess
1413
+ if (needsDefiAccess) {
1414
+ await sendTx({
1415
+ to: policyAddress,
1416
+ data: govIface.encodeFunctionData("enableDefiAccess", [walletAddress]),
1417
+ value: "0x0",
1418
+ }, "enableDefiAccess on PolicyEngine");
1419
+ }
1420
+ else {
1421
+ console.log(" " + colors_1.c.success + colors_1.c.dim(" enableDefiAccess — already done"));
1422
+ }
1423
+ // 3. setVelocityLimit
1424
+ if (needsVelocity) {
1425
+ const velocityEth = opts.velocityLimit || "0.05";
1426
+ await sendTx({
1427
+ to: walletAddress,
1428
+ data: ownerIface.encodeFunctionData("setVelocityLimit", [ethers_1.ethers.parseEther(velocityEth)]),
1429
+ value: "0x0",
1430
+ }, `setVelocityLimit: ${velocityEth} ETH`);
1431
+ }
1432
+ else {
1433
+ console.log(" " + colors_1.c.success + colors_1.c.dim(" setVelocityLimit — already set"));
1434
+ }
1435
+ // 4–8. Category limits
1436
+ for (const { name, amountEth } of ONBOARDING_CATEGORIES) {
1437
+ if (categoryNeeds[name]) {
1438
+ await sendTx({
1439
+ to: policyAddress,
1440
+ data: limitsIface.encodeFunctionData("setCategoryLimitFor", [walletAddress, name, ethers_1.ethers.parseEther(amountEth)]),
1441
+ value: "0x0",
1442
+ }, `setCategoryLimitFor: ${name} → ${amountEth} ETH`);
1443
+ }
1444
+ else {
1445
+ console.log(" " + colors_1.c.success + colors_1.c.dim(` setCategoryLimitFor(${name}) — already set`));
1446
+ }
1447
+ }
1448
+ // 9+. Whitelist protocol contracts
1449
+ for (const pc of protocolContracts) {
1450
+ if (whitelistNeeds[pc.name]) {
1451
+ await sendTx({
1452
+ to: policyAddress,
1453
+ data: govIface.encodeFunctionData("whitelistContract", [walletAddress, pc.address]),
1454
+ value: "0x0",
1455
+ }, `whitelistContract: ${pc.name}`);
1456
+ }
1457
+ else {
1458
+ console.log(" " + colors_1.c.success + colors_1.c.dim(` whitelistContract(${pc.name}) — already done`));
1459
+ }
1460
+ }
1461
+ console.log(colors_1.c.dim("── Onboarding complete ─────────────────────────────────────────"));
1462
+ console.log("\n " + colors_1.c.success + colors_1.c.white(" Wallet onboarding complete"));
1463
+ (0, tree_1.renderTree)([
1464
+ { label: "Wallet", value: walletAddress },
1465
+ { label: "Owner", value: account },
1466
+ { label: "Velocity Limit", value: (opts.velocityLimit || "0.05") + " ETH" },
1467
+ { label: "Contracts Whitelisted", value: protocolContracts.length.toString(), last: true },
1468
+ ]);
1469
+ });
1260
1470
  // ─── send ──────────────────────────────────────────────────────────────────
1261
1471
  wallet.command("send <address> <amount>")
1262
1472
  .description("Send ETH from configured wallet (amount: '0.001eth' or wei)")