@gol/sdk 0.3.0 → 0.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.
@@ -1,20 +1,21 @@
1
1
  import { concatHex, encodeAbiParameters, encodeFunctionData, keccak256, parseAbi, stringToHex, } from "viem";
2
2
  import { ownerSigningHash, ownerSafetySigningHash, packOwnerSignature, } from "./account-dialects.js";
3
3
  import { contractProjectId } from "./project-id.js";
4
+ import { CHARGEABLE_OUTCOMES, CORE_DOMAIN_NAME, CORE_DOMAIN_VERSION, GAS_FORMULA_INLINE, NATIVE_FEE_ASSET, } from "./v3.js";
4
5
  const DOMAIN_TYPEHASH = keccak256(stringToHex("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"));
5
6
  const MANDATE_TYPEHASH = keccak256(stringToHex("MandateTerms(bytes32 parentId,address account,address agent,bytes32 accountProfileId,uint64 installEpoch,bytes32 projectId,uint8 mode,uint8 policyVersion,bytes32 policyHash,uint48 validFrom,uint48 expiresAt,uint32 maxDepth,uint32 maxActiveDescendants,uint48 approvalExpiresAt,bytes32 salt)"));
6
- const GAS_POLICY_TYPEHASH = keccak256(stringToHex("GasPolicy(bytes32 mandateId,address account,bytes32 projectId,bytes32 accountProfileId,uint64 installEpoch,address feeAsset,address recipient,address attester,uint128 maxPerAction,uint128 maxTotal,uint48 expiresAt,uint8 chargeableOutcomes,uint8 formulaVersion,uint256 nonce)"));
7
+ const GAS_POLICY_TYPEHASH = keccak256(stringToHex("GasPolicy(bytes32 mandateId,address account,bytes32 projectId,bytes32 accountProfileId,uint64 installEpoch,address feeAsset,address submitter,address recipient,address attester,uint128 maxPerAction,uint128 maxTotal,uint48 expiresAt,uint8 chargeableOutcomes,uint8 formulaVersion,uint256 nonce)"));
7
8
  const COMBINED_TYPEHASH = keccak256(stringToHex("CombinedGasApproval(bytes32 mandateId,bytes32 gasPolicyId)"));
8
9
  const REVOCATION_TYPEHASH = keccak256(stringToHex("GasRevocation(bytes32 gasPolicyId,uint256 nonce,uint48 deadline)"));
9
10
  const approvalAbi = parseAbi([
10
- "function createMandateWithGas((bytes32 parentId,address account,address agent,bytes32 accountProfileId,uint64 installEpoch,bytes32 projectId,uint8 mode,uint8 policyVersion,bytes32 policyHash,uint48 validFrom,uint48 expiresAt,uint32 maxDepth,uint32 maxActiveDescendants,uint48 approvalExpiresAt,bytes32 salt) terms,bytes policy,(bytes32 mandateId,address account,bytes32 projectId,bytes32 accountProfileId,uint64 installEpoch,address feeAsset,address recipient,address attester,uint128 maxPerAction,uint128 maxTotal,uint48 expiresAt,uint8 chargeableOutcomes,uint8 formulaVersion,uint256 nonce) gasPolicy,bytes ownerSignature) returns (bytes32 mandateId,bytes32 gasPolicyId)",
11
+ "function createMandateWithGas((bytes32 parentId,address account,address agent,bytes32 accountProfileId,uint64 installEpoch,bytes32 projectId,uint8 mode,uint8 policyVersion,bytes32 policyHash,uint48 validFrom,uint48 expiresAt,uint32 maxDepth,uint32 maxActiveDescendants,uint48 approvalExpiresAt,bytes32 salt) terms,bytes policy,(bytes32 mandateId,address account,bytes32 projectId,bytes32 accountProfileId,uint64 installEpoch,address feeAsset,address submitter,address recipient,address attester,uint128 maxPerAction,uint128 maxTotal,uint48 expiresAt,uint8 chargeableOutcomes,uint8 formulaVersion,uint256 nonce) gasPolicy,bytes ownerSignature) returns (bytes32 mandateId,bytes32 gasPolicyId)",
11
12
  ]);
12
13
  const nonceAbi = parseAbi([
13
14
  "function gasPolicyNonce(address account) view returns (uint256)",
14
15
  "function accountEpoch(address account) view returns (uint64)",
15
16
  ]);
16
17
  const revocationAbi = parseAbi([
17
- "function gasPolicyOf(bytes32) view returns ((bytes32 mandateId,address account,bytes32 projectId,bytes32 accountProfileId,uint64 installEpoch,address feeAsset,address recipient,address attester,uint128 maxPerAction,uint128 maxTotal,uint48 expiresAt,uint8 chargeableOutcomes,uint8 formulaVersion,uint256 nonce))",
18
+ "function gasPolicyOf(bytes32) view returns ((bytes32 mandateId,address account,bytes32 projectId,bytes32 accountProfileId,uint64 installEpoch,address feeAsset,address submitter,address recipient,address attester,uint128 maxPerAction,uint128 maxTotal,uint48 expiresAt,uint8 chargeableOutcomes,uint8 formulaVersion,uint256 nonce))",
18
19
  "function gasPolicyRevoked(bytes32) view returns (bool)",
19
20
  "function gasRevocationNonce(address) view returns (uint256)",
20
21
  "function revokeGasPolicy(bytes32 policyId,uint48 deadline,bytes signature)",
@@ -27,8 +28,8 @@ const domain = (chainId, core) => keccak256(encodeAbiParameters([
27
28
  { type: "address" },
28
29
  ], [
29
30
  DOMAIN_TYPEHASH,
30
- keccak256(stringToHex("GOL Mandate")),
31
- keccak256(stringToHex("2")),
31
+ keccak256(stringToHex(CORE_DOMAIN_NAME)),
32
+ keccak256(stringToHex(CORE_DOMAIN_VERSION)),
32
33
  BigInt(chainId),
33
34
  core,
34
35
  ]));
@@ -82,6 +83,7 @@ export function hashOwnerGasPolicy(policy, chainId, core) {
82
83
  { type: "address" },
83
84
  { type: "address" },
84
85
  { type: "address" },
86
+ { type: "address" },
85
87
  { type: "uint128" },
86
88
  { type: "uint128" },
87
89
  { type: "uint48" },
@@ -96,6 +98,7 @@ export function hashOwnerGasPolicy(policy, chainId, core) {
96
98
  policy.accountProfileId,
97
99
  policy.installEpoch,
98
100
  policy.feeAsset,
101
+ policy.submitter,
99
102
  policy.recipient,
100
103
  policy.attester,
101
104
  policy.maxPerAction,
@@ -107,11 +110,11 @@ export function hashOwnerGasPolicy(policy, chainId, core) {
107
110
  ]));
108
111
  return typed(domain(chainId, core), structHash);
109
112
  }
110
- /** Internal parity point for the existing v2 combined owner commitment. */
113
+ /** The combined owner commitment under the version 3 domain. */
111
114
  export function hashCombinedGasApproval(mandateId, gasPolicyId, chainId, core) {
112
115
  return typed(domain(chainId, core), keccak256(encodeAbiParameters([{ type: "bytes32" }, { type: "bytes32" }, { type: "bytes32" }], [COMBINED_TYPEHASH, mandateId, gasPolicyId])));
113
116
  }
114
- /** Internal parity point for the existing v2 owner safety commitment. */
117
+ /** The owner's gas-policy revocation under the version 3 domain. */
115
118
  export function hashGasRevocation(gasPolicyId, nonce, deadline, chainId, core) {
116
119
  return typed(domain(chainId, core), keccak256(encodeAbiParameters([
117
120
  { type: "bytes32" },
@@ -134,8 +137,12 @@ export async function prepareCombinedGasApproval(client, family, chainId, core,
134
137
  gasPolicy.projectId !== terms.projectId ||
135
138
  gasPolicy.accountProfileId !== terms.accountProfileId ||
136
139
  gasPolicy.installEpoch !== terms.installEpoch ||
137
- gasPolicy.feeAsset !== "0x0000000000000000000000000000000000000000" ||
138
- gasPolicy.formulaVersion !== 1 ||
140
+ gasPolicy.feeAsset !== NATIVE_FEE_ASSET ||
141
+ gasPolicy.submitter === NATIVE_FEE_ASSET ||
142
+ gasPolicy.recipient === NATIVE_FEE_ASSET ||
143
+ ((gasPolicy.chargeableOutcomes & CHARGEABLE_OUTCOMES.revert) !== 0 &&
144
+ gasPolicy.attester === NATIVE_FEE_ASSET) ||
145
+ gasPolicy.formulaVersion !== GAS_FORMULA_INLINE ||
139
146
  gasPolicy.maxPerAction <= 0n ||
140
147
  gasPolicy.maxPerAction > gasPolicy.maxTotal ||
141
148
  gasPolicy.chargeableOutcomes < 1 ||
@@ -171,6 +178,7 @@ export async function prepareCombinedGasApproval(client, family, chainId, core,
171
178
  core,
172
179
  projectId: terms.projectId,
173
180
  agent: terms.agent,
181
+ submitter: gasPolicy.submitter,
174
182
  recipient: gasPolicy.recipient,
175
183
  attester: gasPolicy.attester,
176
184
  feeAsset: gasPolicy.feeAsset,
@@ -1 +1 @@
1
- {"version":3,"file":"gas-approval.js","sourceRoot":"","sources":["../src/gas-approval.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gas-approval.js","sourceRoot":"","sources":["../src/gas-approval.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,EACT,QAAQ,EACR,WAAW,GAIZ,MAAM,MAAM,CAAC;AAEd,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,GAEnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAEjB,MAAM,eAAe,GAAG,SAAS,CAC/B,WAAW,CACT,oFAAoF,CACrF,CACF,CAAC;AACF,MAAM,gBAAgB,GAAG,SAAS,CAChC,WAAW,CACT,mSAAmS,CACpS,CACF,CAAC;AACF,MAAM,mBAAmB,GAAG,SAAS,CACnC,WAAW,CACT,sSAAsS,CACvS,CACF,CAAC;AACF,MAAM,iBAAiB,GAAG,SAAS,CACjC,WAAW,CAAC,4DAA4D,CAAC,CAC1E,CAAC;AACF,MAAM,mBAAmB,GAAG,SAAS,CACnC,WAAW,CACT,kEAAkE,CACnE,CACF,CAAC;AA4EF,MAAM,WAAW,GAAG,QAAQ,CAAC;IAC3B,orBAAorB;CACrrB,CAAC,CAAC;AACH,MAAM,QAAQ,GAAG,QAAQ,CAAC;IACxB,iEAAiE;IACjE,8DAA8D;CAC/D,CAAC,CAAC;AACH,MAAM,aAAa,GAAG,QAAQ,CAAC;IAC7B,0UAA0U;IAC1U,wDAAwD;IACxD,6DAA6D;IAC7D,4EAA4E;CAC7E,CAAC,CAAC;AAEH,MAAM,MAAM,GAAG,CAAC,OAAe,EAAE,IAAa,EAAO,EAAE,CACrD,SAAS,CACP,mBAAmB,CACjB;IACE,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;CACpB,EACD;IACE,eAAe;IACf,SAAS,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IACxC,SAAS,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;IAC3C,MAAM,CAAC,OAAO,CAAC;IACf,IAAI;CACL,CACF,CACF,CAAC;AAEJ,MAAM,KAAK,GAAG,CAAC,UAAe,EAAE,UAAe,EAAO,EAAE,CACtD,SAAS,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;AAE3D,MAAM,UAAU,cAAc,CAC5B,KAAsB,EACtB,OAAe,EACf,IAAa;IAEb,MAAM,UAAU,GAAG,SAAS,CAC1B,mBAAmB,CACjB;QACE,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,OAAO,EAAE;QACjB,EAAE,IAAI,EAAE,OAAO,EAAE;QACjB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClB,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClB,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClB,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClB,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClB,EAAE,IAAI,EAAE,SAAS,EAAE;KACpB,EACD;QACE,gBAAgB;QAChB,KAAK,CAAC,QAAQ;QACd,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,KAAK;QACX,KAAK,CAAC,gBAAgB;QACtB,KAAK,CAAC,YAAY;QAClB,KAAK,CAAC,SAAS;QACf,KAAK,CAAC,IAAI;QACV,KAAK,CAAC,aAAa;QACnB,KAAK,CAAC,UAAU;QAChB,KAAK,CAAC,SAAS;QACf,KAAK,CAAC,SAAS;QACf,KAAK,CAAC,QAAQ;QACd,KAAK,CAAC,oBAAoB;QAC1B,KAAK,CAAC,iBAAiB;QACvB,KAAK,CAAC,IAAI;KACX,CACF,CACF,CAAC;IACF,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,MAAsB,EACtB,OAAe,EACf,IAAa;IAEb,MAAM,UAAU,GAAG,SAAS,CAC1B,mBAAmB,CACjB;QACE,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,QAAQ,EAAE;QAClB,EAAE,IAAI,EAAE,OAAO,EAAE;QACjB,EAAE,IAAI,EAAE,OAAO,EAAE;QACjB,EAAE,IAAI,EAAE,SAAS,EAAE;KACpB,EACD;QACE,mBAAmB;QACnB,MAAM,CAAC,SAAS;QAChB,MAAM,CAAC,OAAO;QACd,MAAM,CAAC,SAAS;QAChB,MAAM,CAAC,gBAAgB;QACvB,MAAM,CAAC,YAAY;QACnB,MAAM,CAAC,QAAQ;QACf,MAAM,CAAC,SAAS;QAChB,MAAM,CAAC,SAAS;QAChB,MAAM,CAAC,QAAQ;QACf,MAAM,CAAC,YAAY;QACnB,MAAM,CAAC,QAAQ;QACf,MAAM,CAAC,SAAS;QAChB,MAAM,CAAC,kBAAkB;QACzB,MAAM,CAAC,cAAc;QACrB,MAAM,CAAC,KAAK;KACb,CACF,CACF,CAAC;IACF,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;AAClD,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,uBAAuB,CACrC,SAAc,EACd,WAAgB,EAChB,OAAe,EACf,IAAa;IAEb,OAAO,KAAK,CACV,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EACrB,SAAS,CACP,mBAAmB,CACjB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAC/D,CAAC,iBAAiB,EAAE,SAAS,EAAE,WAAW,CAAC,CAC5C,CACF,CACF,CAAC;AACJ,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,iBAAiB,CAC/B,WAAgB,EAChB,KAAa,EACb,QAAgB,EAChB,OAAe,EACf,IAAa;IAEb,OAAO,KAAK,CACV,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EACrB,SAAS,CACP,mBAAmB,CACjB;QACE,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,SAAS,EAAE;QACnB,EAAE,IAAI,EAAE,QAAQ,EAAE;KACnB,EACD,CAAC,mBAAmB,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,CAAC,CACpD,CACF,CACF,CAAC;AACJ,CAAC;AAED,oFAAoF;AACpF,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,MAGC,EACD,MAAqB,EACrB,OAAe,EACf,IAAa,EACb,KAAsB,EACtB,aAAkB,EAClB,SAAyB;IAEzB,IAAI,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,KAAK,OAAO,IAAI,OAAO,KAAK,KAAK;QAC9D,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;IACjC,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;QAC3C,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC/C,IAAI,SAAS,CAAC,aAAa,CAAC,KAAK,KAAK,CAAC,UAAU;QAC/C,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACvD,IACE,SAAS,CAAC,SAAS,KAAK,SAAS;QACjC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE;QAC/D,SAAS,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;QACvC,SAAS,CAAC,gBAAgB,KAAK,KAAK,CAAC,gBAAgB;QACrD,SAAS,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY;QAC7C,SAAS,CAAC,QAAQ,KAAK,gBAAgB;QACvC,SAAS,CAAC,SAAS,KAAK,gBAAgB;QACxC,SAAS,CAAC,SAAS,KAAK,gBAAgB;QACxC,CAAC,CAAC,SAAS,CAAC,kBAAkB,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC;YAChE,SAAS,CAAC,QAAQ,KAAK,gBAAgB,CAAC;QAC1C,SAAS,CAAC,cAAc,KAAK,kBAAkB;QAC/C,SAAS,CAAC,YAAY,IAAI,EAAE;QAC5B,SAAS,CAAC,YAAY,GAAG,SAAS,CAAC,QAAQ;QAC3C,SAAS,CAAC,kBAAkB,GAAG,CAAC;QAChC,SAAS,CAAC,kBAAkB,GAAG,CAAC;QAEhC,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACvC,MAAM,CAAC,YAAY,CAAC;YAClB,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,QAAQ;YACb,YAAY,EAAE,gBAAgB;YAC9B,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;SACtB,CAAC;QACF,MAAM,CAAC,YAAY,CAAC;YAClB,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,QAAQ;YACb,YAAY,EAAE,cAAc;YAC5B,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;SACtB,CAAC;KACH,CAAC,CAAC;IACH,IAAI,SAAS,CAAC,KAAK,KAAK,KAAK,IAAI,KAAK,CAAC,YAAY,KAAK,KAAK;QAC3D,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,kBAAkB,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9E,MAAM,WAAW,GAAG,MAAM,gBAAgB,CACxC,MAAM,EACN,MAAM,EACN,KAAK,CAAC,OAAO,EACb,MAAM,CACP,CAAC;IACF,OAAO;QACL,SAAS;QACT,WAAW;QACX,MAAM;QACN,gBAAgB,EAAE,WAAW;QAC7B,OAAO,EAAE;YACP,OAAO;YACP,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,IAAI;YACJ,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,eAAe,EAAE,SAAS,CAAC,YAAY;YACvC,WAAW,EAAE,SAAS,CAAC,QAAQ;YAC/B,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;YAChD,SAAS,EAAE,SAAS,CAAC,SAAS;SAC/B;QACD,gBAAgB,CAAC,oBAAoB;YACnC,OAAO,kBAAkB,CAAC;gBACxB,GAAG,EAAE,WAAW;gBAChB,YAAY,EAAE,sBAAsB;gBACpC,IAAI,EAAE;oBACJ,KAAK;oBACL,aAAa;oBACb,SAAS;oBACT,kBAAkB,CAAC,MAAM,EAAE,oBAAoB,CAAC;iBACjD;aACF,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,8BAA8B,CAC5C,MAAwD,EACxD,MAAqB,EACrB,OAAe,EACf,IAAa,EACb,WAAmB,EACnB,KAAsB,EACtB,aAAkB,EAClB,SAAyB;IAEzB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAChD,IACE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,QAAQ;QAC1C,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,QAAQ;QAE9C,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,OAAO,0BAA0B,CAC/B,MAAM,EACN,MAAM,EACN,OAAO,EACP,IAAI,EACJ,KAAK,EACL,aAAa,EACb,SAAS,CACV,CAAC;AACJ,CAAC;AAED,wFAAwF;AACxF,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAGC,EACD,MAAqB,EACrB,OAAe,EACf,IAAa,EACb,OAAgB,EAChB,QAAa,EACb,QAAgB;IAEhB,IAAI,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,KAAK,OAAO,IAAI,OAAO,KAAK,KAAK;QAC9D,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;IACjC,IACE,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC;QACrC,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;QAC/B,QAAQ,IAAI,CAAC;QACb,QAAQ,IAAI,CAAC,IAAI,EAAE;QAEnB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACjD,MAAM,CAAC,YAAY,CAAC;YAClB,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,aAAa;YAClB,YAAY,EAAE,aAAa;YAC3B,IAAI,EAAE,CAAC,QAAQ,CAAC;SACjB,CAAC;QACF,MAAM,CAAC,YAAY,CAAC;YAClB,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,aAAa;YAClB,YAAY,EAAE,kBAAkB;YAChC,IAAI,EAAE,CAAC,QAAQ,CAAC;SACjB,CAAC;QACF,MAAM,CAAC,YAAY,CAAC;YAClB,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,aAAa;YAClB,YAAY,EAAE,oBAAoB;YAClC,IAAI,EAAE,CAAC,OAAO,CAAC;SAChB,CAAC;KACH,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,IAAI,OAAO;QACnE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAC9C,MAAM,EACN,MAAM,EACN,OAAO,EACP,MAAM,CACP,CAAC;IACF,OAAO;QACL,OAAO;QACP,QAAQ;QACR,KAAK;QACL,QAAQ;QACR,MAAM;QACN,gBAAgB,EAAE,WAAW;QAC7B,gBAAgB,CAAC,oBAAoB;YACnC,OAAO,kBAAkB,CAAC;gBACxB,GAAG,EAAE,aAAa;gBAClB,YAAY,EAAE,iBAAiB;gBAC/B,IAAI,EAAE;oBACJ,QAAQ;oBACR,QAAQ;oBACR,kBAAkB,CAAC,MAAM,EAAE,oBAAoB,CAAC;iBACjD;aACF,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}