@easy1staking/cip113-sdk-ts 0.3.1 → 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.
- package/README.md +22 -0
- package/blueprints/standard/v0.3.0/UPSTREAM_PIN.json +30 -0
- package/blueprints/standard/v0.5.0-alpha.2/UPSTREAM_PIN.json +33 -0
- package/blueprints/standard/v0.5.0-alpha.2/plutus.json +1010 -0
- package/blueprints/substandards/dummy/v0.1.0/UPSTREAM_PIN.json +29 -0
- package/blueprints/substandards/dummy/v0.2.0/UPSTREAM_PIN.json +38 -0
- package/blueprints/substandards/dummy/v0.2.0/plutus.json +84 -0
- package/blueprints/substandards/freeze-and-seize/v0.1.0/UPSTREAM_PIN.json +36 -0
- package/dist/core/cip171.d.ts +149 -0
- package/dist/core/cip171.d.ts.map +1 -0
- package/dist/core/cip171.js +284 -0
- package/dist/core/cip171.js.map +1 -0
- package/dist/core/evo-utils.d.ts +134 -17
- package/dist/core/evo-utils.d.ts.map +1 -1
- package/dist/core/evo-utils.js +162 -21
- package/dist/core/evo-utils.js.map +1 -1
- package/dist/core/ledger-order.d.ts +109 -0
- package/dist/core/ledger-order.d.ts.map +1 -0
- package/dist/core/ledger-order.js +185 -0
- package/dist/core/ledger-order.js.map +1 -0
- package/dist/core/registry.d.ts +16 -3
- package/dist/core/registry.d.ts.map +1 -1
- package/dist/core/registry.js +18 -9
- package/dist/core/registry.js.map +1 -1
- package/dist/index.d.ts +26 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +58 -16
- package/dist/index.js.map +1 -1
- package/dist/standard/blueprint.d.ts +48 -1
- package/dist/standard/blueprint.d.ts.map +1 -1
- package/dist/standard/blueprint.js +71 -5
- package/dist/standard/blueprint.js.map +1 -1
- package/dist/standard/scripts.d.ts +124 -22
- package/dist/standard/scripts.d.ts.map +1 -1
- package/dist/standard/scripts.js +182 -55
- package/dist/standard/scripts.js.map +1 -1
- package/dist/substandards/dummy/index.d.ts.map +1 -1
- package/dist/substandards/dummy/index.js +470 -26
- package/dist/substandards/dummy/index.js.map +1 -1
- package/dist/substandards/freeze-and-seize/index.d.ts.map +1 -1
- package/dist/substandards/freeze-and-seize/index.js +314 -41
- package/dist/substandards/freeze-and-seize/index.js.map +1 -1
- package/dist/substandards/freeze-and-seize/scripts.d.ts +2 -1
- package/dist/substandards/freeze-and-seize/scripts.d.ts.map +1 -1
- package/dist/substandards/freeze-and-seize/scripts.js +7 -6
- package/dist/substandards/freeze-and-seize/scripts.js.map +1 -1
- package/dist/substandards/interface.d.ts +111 -1
- package/dist/substandards/interface.d.ts.map +1 -1
- package/dist/types.d.ts +87 -4
- package/dist/types.d.ts.map +1 -1
- package/package.json +4 -1
package/dist/core/evo-utils.d.ts
CHANGED
|
@@ -29,6 +29,15 @@ export declare function scriptAddress(networkId: number, scriptHash: ScriptHash)
|
|
|
29
29
|
/**
|
|
30
30
|
* Build a reward (staking) address from a script hash.
|
|
31
31
|
*/
|
|
32
|
+
/**
|
|
33
|
+
* Build a reward (staking) address from a KEY hash.
|
|
34
|
+
*
|
|
35
|
+
* The script-hash variant below covers protocol credentials; this one covers a
|
|
36
|
+
* wallet's own stake key — the upgrade authority, for instance, whose
|
|
37
|
+
* registration survives across deployments and therefore has to be CHECKED
|
|
38
|
+
* rather than assumed.
|
|
39
|
+
*/
|
|
40
|
+
export declare function rewardAddressFromKeyHash(networkId: number, keyHash: HexString): string;
|
|
32
41
|
export declare function rewardAddress(networkId: number, scriptHash: ScriptHash): string;
|
|
33
42
|
/**
|
|
34
43
|
* Build a base address with script payment credential and user's staking credential.
|
|
@@ -63,31 +72,127 @@ export declare function extractCredentialField(datum: unknown, fieldIndex: numbe
|
|
|
63
72
|
type: "key" | "script";
|
|
64
73
|
hash: string;
|
|
65
74
|
} | undefined;
|
|
75
|
+
export interface Cip113Credential {
|
|
76
|
+
type: "key" | "script";
|
|
77
|
+
hash: ScriptHash;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* A registry node — the per-token record the directory holds.
|
|
81
|
+
*
|
|
82
|
+
* SEVEN fields in 0.5.0-alpha.2, and the order is load-bearing: this is a
|
|
83
|
+
* positional Constr, so an insertion at the wrong index produces a datum that
|
|
84
|
+
* encodes cleanly and means something else entirely.
|
|
85
|
+
*
|
|
86
|
+
* Two fields were inserted, at different times, in the middle:
|
|
87
|
+
* index 2 minting_logic_script (upstream #52)
|
|
88
|
+
* index 5 unfracking_logic_script (unfracking v2)
|
|
89
|
+
*
|
|
90
|
+
* ⚠ Upstream's CONTRACT_SURFACE_CHANGES.md asserts this SDK was "already on the
|
|
91
|
+
* 6-field post-#52 shape (verified: minting_logic_script at index 2)". It was
|
|
92
|
+
* NOT — this builder emitted five fields with no minting_logic_script at all.
|
|
93
|
+
* That document is wrong about this repository's own contents; do not take its
|
|
94
|
+
* word for what is or is not already done here.
|
|
95
|
+
*/
|
|
66
96
|
export interface RegistryNodeData {
|
|
67
97
|
key: HexString;
|
|
68
98
|
next: HexString;
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
hash: ScriptHash;
|
|
76
|
-
};
|
|
99
|
+
/** index 2 — added by #52. */
|
|
100
|
+
mintingLogicScript: Cip113Credential;
|
|
101
|
+
transferLogicScript: Cip113Credential;
|
|
102
|
+
thirdPartyTransferLogicScript: Cip113Credential;
|
|
103
|
+
/** index 5 — added by unfracking v2. */
|
|
104
|
+
unfrackingLogicScript: Cip113Credential;
|
|
77
105
|
globalStateCs: HexString;
|
|
78
106
|
}
|
|
79
|
-
/** Build a RegistryNode datum */
|
|
107
|
+
/** Build a RegistryNode datum. Field order is the on-chain contract. */
|
|
80
108
|
export declare function registryNodeDatum(node: RegistryNodeData): Data.Data;
|
|
81
|
-
/**
|
|
82
|
-
export declare function
|
|
109
|
+
/** Parse a RegistryNode datum. Strict on arity — a short record is not a partial one. */
|
|
110
|
+
export declare function decodeRegistryNode(d: Data.Data): RegistryNodeData;
|
|
83
111
|
/**
|
|
84
|
-
*
|
|
112
|
+
* Minimum lovelace for an output carrying a RegistryNode datum plus its NFT.
|
|
113
|
+
*
|
|
114
|
+
* ⚑ ONE constant, deliberately, because this defect has now been introduced
|
|
115
|
+
* THREE TIMES INDEPENDENTLY — in the bootstrap, in `dummy`, and in
|
|
116
|
+
* `freeze-and-seize` — each time by someone (me) who had already fixed it
|
|
117
|
+
* elsewhere and did not think to check the next site.
|
|
118
|
+
*
|
|
119
|
+
* The cause is always the same: min-UTxO scales with SERIALISED OUTPUT SIZE, so
|
|
120
|
+
* widening a datum raises the floor of every output that carries it. The
|
|
121
|
+
* RegistryNode datum went from FIVE fields to SEVEN in 0.5.x, and the inherited
|
|
122
|
+
* 2,000,000 was sized for the five-field shape. MEASURED requirement for the
|
|
123
|
+
* seven-field shape: 2,038,630.
|
|
124
|
+
*
|
|
125
|
+
* The ledger reports the shortfall as "insufficient Ada" with a number and
|
|
126
|
+
* NEVER as "your datum grew", so it surfaces as an unrelated funding error,
|
|
127
|
+
* often in a different ticket from the change that caused it.
|
|
128
|
+
*
|
|
129
|
+
* A rule written in a document has to be REMEMBERED. A constant has to be
|
|
130
|
+
* CHANGED. Deliberately generous: min-UTxO also moves with protocol parameters.
|
|
85
131
|
*/
|
|
86
|
-
export declare
|
|
132
|
+
export declare const REGISTRY_NODE_MIN_ADA = 3000000n;
|
|
87
133
|
/**
|
|
88
|
-
*
|
|
134
|
+
* `ProgrammableLogicGlobalParams` — the datum on the coordination UTxO.
|
|
135
|
+
*
|
|
136
|
+
* SEVEN fields, ordered by upstream BY READ FREQUENCY (a deliberate cost
|
|
137
|
+
* choice: programmable_logic_base reads 2-4 on every dispatch, and the field
|
|
138
|
+
* is read once per delegate invocation rather than once per input).
|
|
139
|
+
*
|
|
140
|
+
* Fields 2-5 are MUTABLE — an in-place upgrade rewrites them in this datum
|
|
141
|
+
* rather than redeploying programmable_logic_base, whose hash anchors every
|
|
142
|
+
* programmable token address. `coordination_spend` 28-byte-guards each one and
|
|
143
|
+
* freezes fields 0 and 1 permanently.
|
|
144
|
+
*
|
|
145
|
+
* ⚠ It is SEVEN, not six. Upstream's CONTRACT_SURFACE_CHANGES.md says six in
|
|
146
|
+
* three places, and in a fourth phrases it as an instruction — "6-field
|
|
147
|
+
* ProgrammableLogicGlobalParams parser / builder (order above)". Building that
|
|
148
|
+
* shape yields a malformed datum on EVERY programmable_logic_base spend, not
|
|
149
|
+
* merely at deploy, with no type error anywhere. `max_inline_datum_bytes`
|
|
150
|
+
* (index 6) arrives with #115 and is absent from that document.
|
|
89
151
|
*/
|
|
90
|
-
export
|
|
152
|
+
export interface ProtocolParamsData {
|
|
153
|
+
registryNodeCs: HexString;
|
|
154
|
+
progLogicCred: Cip113Credential;
|
|
155
|
+
/** index 2 — mutable. PLG's transfer arm, renamed by #110. */
|
|
156
|
+
transferCred: Cip113Credential;
|
|
157
|
+
/** index 3 — mutable. Seize / clawback. */
|
|
158
|
+
thirdPartyCred: Cip113Credential;
|
|
159
|
+
/** index 4 — mutable. */
|
|
160
|
+
unfrackingCred: Cip113Credential;
|
|
161
|
+
/** index 5 — mutable. The upgrade authority this datum trampolines to. */
|
|
162
|
+
upgradeCred: Cip113Credential;
|
|
163
|
+
/**
|
|
164
|
+
* index 6 — the #106-vector-3 bound. A seizure must reproduce a seized
|
|
165
|
+
* output's inline datum byte-for-byte, so an unbounded datum pushes the
|
|
166
|
+
* seizure past maxTxSize and yields an output nobody can seize.
|
|
167
|
+
*
|
|
168
|
+
* ⚠ This is a SECURITY PARAMETER with no upstream guidance. Upstream's test
|
|
169
|
+
* fixtures use 1024; that is a fixture value, not a recommendation. See
|
|
170
|
+
* PLAN.md D-17 — 1024 is sanctioned for the DEVNET fixture only.
|
|
171
|
+
*/
|
|
172
|
+
maxInlineDatumBytes: bigint;
|
|
173
|
+
}
|
|
174
|
+
/** Build the coordination datum. Field order is the on-chain contract. */
|
|
175
|
+
export declare function protocolParamsDatum(p: ProtocolParamsData): Data.Data;
|
|
176
|
+
/** Parse the coordination datum. */
|
|
177
|
+
export declare function decodeProtocolParams(d: Data.Data): ProtocolParamsData;
|
|
178
|
+
/** Build a BlacklistNode datum */
|
|
179
|
+
export declare function blacklistNodeDatum(key: HexString, next: HexString): Data.Data;
|
|
180
|
+
/**
|
|
181
|
+
* `issuance_mint`'s redeemer — a BARE `MintingRegistryProof`.
|
|
182
|
+
*
|
|
183
|
+
* Upstream #68 REMOVED the `SmartTokenMintingAction { minting_logic_cred,
|
|
184
|
+
* minting_registry_proof }` wrapper these builders used to emit. The redeemer is
|
|
185
|
+
* now the proof itself, and the minting-logic credential is no longer carried in
|
|
186
|
+
* it at all — it comes from the registry node.
|
|
187
|
+
*
|
|
188
|
+
* ctor 0 RefInput { index } — the registry node is a REFERENCE input
|
|
189
|
+
* ctor 1 OutputIndex { index } — the registry node is an OUTPUT of this tx
|
|
190
|
+
* (registration and first mint in one)
|
|
191
|
+
*
|
|
192
|
+
* Verified against the blueprint's own redeemer schema, not upstream's prose.
|
|
193
|
+
*/
|
|
194
|
+
export declare function mintingProofRefInput(registryRefInputIndex: number): Data.Data;
|
|
195
|
+
export declare function mintingProofOutputIndex(registryOutputIndex: number): Data.Data;
|
|
91
196
|
export interface RegistryProof {
|
|
92
197
|
type: "exists" | "not-exists";
|
|
93
198
|
nodeIdx: number;
|
|
@@ -96,8 +201,20 @@ export interface RegistryProof {
|
|
|
96
201
|
export declare function transferActRedeemer(proofs: RegistryProof[]): Data.Data;
|
|
97
202
|
/** Build a ThirdPartyAct redeemer for PLGlobal. */
|
|
98
203
|
export declare function thirdPartyActRedeemer(registryNodeIdx: number, outputsStartIdx: number): Data.Data;
|
|
99
|
-
/**
|
|
100
|
-
|
|
204
|
+
/**
|
|
205
|
+
* `registry_mint`'s redeemer.
|
|
206
|
+
*
|
|
207
|
+
* ctor 0 RegistryInit {} — the origin node
|
|
208
|
+
* ctor 1 RegistryInsert { key, minting_logic_script }
|
|
209
|
+
*
|
|
210
|
+
* ⚠ The second field is a CREDENTIAL, not a bare hash. #52 replaced
|
|
211
|
+
* `hashed_param: ByteArray` with `minting_logic_script: Credential`, and #52's
|
|
212
|
+
* `mode: RegistrationMode` was removed again by re-audit R-06 — so a builder
|
|
213
|
+
* written against either intermediate shape is wrong in a different way. Both
|
|
214
|
+
* encode without complaint.
|
|
215
|
+
*/
|
|
216
|
+
export declare function registryInitRedeemer(): Data.Data;
|
|
217
|
+
export declare function registryInsertRedeemer(key: HexString, mintingLogicScript: Cip113Credential): Data.Data;
|
|
101
218
|
/** Blacklist init (constructor 0) */
|
|
102
219
|
export declare function blacklistInitRedeemer(): Data.Data;
|
|
103
220
|
/** Blacklist add (constructor 1) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evo-utils.d.ts","sourceRoot":"","sources":["../../src/core/evo-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,IAAI,EACJ,KAAK,EACL,UAAU,IAAI,aAAa,EAC3B,MAAM,EACN,IAAI,EACJ,OAAO,IAAI,UAAU,EAKrB,MAAM,EACN,UAAU,EACV,WAAW,EACX,OAAO,EACP,eAAe,EACf,IAAI,IAAI,OAAO,EACf,WAAW,EACZ,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAQhF;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,CAYrE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,SAAS,EACvB,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,GAClB,YAAY,CAKd;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,SAAS,GAAG,UAAU,CAGrE;AAMD;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,MAAM,CAI/E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,MAAM,CAI/E;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAQlG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAIhE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAIhE;AAMD,wDAAwD;AACxD,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC,IAAI,CAKvD;AAED,iDAAiD;AACjD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,IAAI,CAE5D;AAED,wDAAwD;AACxD,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC,IAAI,CAExD;AAED,iCAAiC;AACjC,wBAAgB,QAAQ,IAAI,IAAI,CAAC,IAAI,CAEpC;AAMD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAgB9F;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,MAAM,GACjB;IAAE,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAoBtD;AAMD,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,SAAS,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;IAChB,mBAAmB,EAAE;
|
|
1
|
+
{"version":3,"file":"evo-utils.d.ts","sourceRoot":"","sources":["../../src/core/evo-utils.ts"],"names":[],"mappings":"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"}
|
package/dist/core/evo-utils.js
CHANGED
|
@@ -58,6 +58,19 @@ export function scriptAddress(networkId, scriptHash) {
|
|
|
58
58
|
/**
|
|
59
59
|
* Build a reward (staking) address from a script hash.
|
|
60
60
|
*/
|
|
61
|
+
/**
|
|
62
|
+
* Build a reward (staking) address from a KEY hash.
|
|
63
|
+
*
|
|
64
|
+
* The script-hash variant below covers protocol credentials; this one covers a
|
|
65
|
+
* wallet's own stake key — the upgrade authority, for instance, whose
|
|
66
|
+
* registration survives across deployments and therefore has to be CHECKED
|
|
67
|
+
* rather than assumed.
|
|
68
|
+
*/
|
|
69
|
+
export function rewardAddressFromKeyHash(networkId, keyHash) {
|
|
70
|
+
const cred = new KeyHash.KeyHash({ hash: Bytes.fromHex(keyHash) });
|
|
71
|
+
const addr = new RewardAccount.RewardAccount({ networkId, stakeCredential: cred });
|
|
72
|
+
return AddressEras.toBech32(addr);
|
|
73
|
+
}
|
|
61
74
|
export function rewardAddress(networkId, scriptHash) {
|
|
62
75
|
const cred = new EvoScriptHash.ScriptHash({ hash: Bytes.fromHex(scriptHash) });
|
|
63
76
|
const addr = new RewardAccount.RewardAccount({ networkId, stakeCredential: cred });
|
|
@@ -160,19 +173,131 @@ export function extractCredentialField(datum, fieldIndex) {
|
|
|
160
173
|
}
|
|
161
174
|
return undefined;
|
|
162
175
|
}
|
|
163
|
-
|
|
176
|
+
function credToData(cred) {
|
|
177
|
+
return cred.type === "script" ? scriptCredential(cred.hash) : keyCredential(cred.hash);
|
|
178
|
+
}
|
|
179
|
+
function dataToCred(d, where) {
|
|
180
|
+
if (!(d instanceof Data.Constr) || d.fields.length !== 1) {
|
|
181
|
+
throw new Error(`${where}: expected a Credential (Constr with 1 field)`);
|
|
182
|
+
}
|
|
183
|
+
const h = expectBytes(d.fields[0], `${where}.hash`);
|
|
184
|
+
if (d.index === 0n)
|
|
185
|
+
return { type: "key", hash: h };
|
|
186
|
+
if (d.index === 1n)
|
|
187
|
+
return { type: "script", hash: h };
|
|
188
|
+
throw new Error(`${where}: credential constructor index must be 0 or 1, got ${d.index}`);
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Data.bytearray() yields a Uint8Array, NOT a hex string — so every decode has
|
|
192
|
+
* to convert. Done by hand rather than via Buffer: this SDK runs in browsers on
|
|
193
|
+
* the CIP-30 path, where Buffer does not exist.
|
|
194
|
+
*/
|
|
195
|
+
function bytesToHex(u8) {
|
|
196
|
+
let out = "";
|
|
197
|
+
for (const b of u8)
|
|
198
|
+
out += b.toString(16).padStart(2, "0");
|
|
199
|
+
return out;
|
|
200
|
+
}
|
|
201
|
+
function expectBytes(d, where) {
|
|
202
|
+
if (d instanceof Uint8Array)
|
|
203
|
+
return bytesToHex(d);
|
|
204
|
+
if (typeof d === "string")
|
|
205
|
+
return d;
|
|
206
|
+
throw new Error(`${where}: expected a bytearray, got ${typeof d}`);
|
|
207
|
+
}
|
|
208
|
+
/** Build a RegistryNode datum. Field order is the on-chain contract. */
|
|
164
209
|
export function registryNodeDatum(node) {
|
|
165
|
-
const credToData = (cred) => cred.type === "script"
|
|
166
|
-
? scriptCredential(cred.hash)
|
|
167
|
-
: keyCredential(cred.hash);
|
|
168
210
|
return Data.constr(0n, [
|
|
169
211
|
Data.bytearray(node.key),
|
|
170
212
|
Data.bytearray(node.next),
|
|
213
|
+
credToData(node.mintingLogicScript),
|
|
171
214
|
credToData(node.transferLogicScript),
|
|
172
215
|
credToData(node.thirdPartyTransferLogicScript),
|
|
216
|
+
credToData(node.unfrackingLogicScript),
|
|
173
217
|
Data.bytearray(node.globalStateCs),
|
|
174
218
|
]);
|
|
175
219
|
}
|
|
220
|
+
/** Parse a RegistryNode datum. Strict on arity — a short record is not a partial one. */
|
|
221
|
+
export function decodeRegistryNode(d) {
|
|
222
|
+
if (!(d instanceof Data.Constr) || d.index !== 0n) {
|
|
223
|
+
throw new Error("RegistryNode: expected Constr(0, ...)");
|
|
224
|
+
}
|
|
225
|
+
if (d.fields.length !== 7) {
|
|
226
|
+
throw new Error(`RegistryNode: expected exactly 7 fields, got ${d.fields.length}. ` +
|
|
227
|
+
`The 5-field (pre-#52) and 6-field (pre-unfracking-v2) layouts are NOT ` +
|
|
228
|
+
`forward-compatible: minting_logic_script was inserted at index 2 and ` +
|
|
229
|
+
`unfracking_logic_script at index 5, so every later field shifted.`);
|
|
230
|
+
}
|
|
231
|
+
const f = d.fields;
|
|
232
|
+
return {
|
|
233
|
+
key: expectBytes(f[0], "RegistryNode.key"),
|
|
234
|
+
next: expectBytes(f[1], "RegistryNode.next"),
|
|
235
|
+
mintingLogicScript: dataToCred(f[2], "RegistryNode.mintingLogicScript"),
|
|
236
|
+
transferLogicScript: dataToCred(f[3], "RegistryNode.transferLogicScript"),
|
|
237
|
+
thirdPartyTransferLogicScript: dataToCred(f[4], "RegistryNode.thirdPartyTransferLogicScript"),
|
|
238
|
+
unfrackingLogicScript: dataToCred(f[5], "RegistryNode.unfrackingLogicScript"),
|
|
239
|
+
globalStateCs: expectBytes(f[6], "RegistryNode.globalStateCs"),
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Minimum lovelace for an output carrying a RegistryNode datum plus its NFT.
|
|
244
|
+
*
|
|
245
|
+
* ⚑ ONE constant, deliberately, because this defect has now been introduced
|
|
246
|
+
* THREE TIMES INDEPENDENTLY — in the bootstrap, in `dummy`, and in
|
|
247
|
+
* `freeze-and-seize` — each time by someone (me) who had already fixed it
|
|
248
|
+
* elsewhere and did not think to check the next site.
|
|
249
|
+
*
|
|
250
|
+
* The cause is always the same: min-UTxO scales with SERIALISED OUTPUT SIZE, so
|
|
251
|
+
* widening a datum raises the floor of every output that carries it. The
|
|
252
|
+
* RegistryNode datum went from FIVE fields to SEVEN in 0.5.x, and the inherited
|
|
253
|
+
* 2,000,000 was sized for the five-field shape. MEASURED requirement for the
|
|
254
|
+
* seven-field shape: 2,038,630.
|
|
255
|
+
*
|
|
256
|
+
* The ledger reports the shortfall as "insufficient Ada" with a number and
|
|
257
|
+
* NEVER as "your datum grew", so it surfaces as an unrelated funding error,
|
|
258
|
+
* often in a different ticket from the change that caused it.
|
|
259
|
+
*
|
|
260
|
+
* A rule written in a document has to be REMEMBERED. A constant has to be
|
|
261
|
+
* CHANGED. Deliberately generous: min-UTxO also moves with protocol parameters.
|
|
262
|
+
*/
|
|
263
|
+
export const REGISTRY_NODE_MIN_ADA = 3000000n;
|
|
264
|
+
/** Build the coordination datum. Field order is the on-chain contract. */
|
|
265
|
+
export function protocolParamsDatum(p) {
|
|
266
|
+
return Data.constr(0n, [
|
|
267
|
+
Data.bytearray(p.registryNodeCs),
|
|
268
|
+
credToData(p.progLogicCred),
|
|
269
|
+
credToData(p.transferCred),
|
|
270
|
+
credToData(p.thirdPartyCred),
|
|
271
|
+
credToData(p.unfrackingCred),
|
|
272
|
+
credToData(p.upgradeCred),
|
|
273
|
+
Data.int(p.maxInlineDatumBytes),
|
|
274
|
+
]);
|
|
275
|
+
}
|
|
276
|
+
/** Parse the coordination datum. */
|
|
277
|
+
export function decodeProtocolParams(d) {
|
|
278
|
+
if (!(d instanceof Data.Constr) || d.index !== 0n) {
|
|
279
|
+
throw new Error("ProgrammableLogicGlobalParams: expected Constr(0, ...)");
|
|
280
|
+
}
|
|
281
|
+
if (d.fields.length !== 7) {
|
|
282
|
+
throw new Error(`ProgrammableLogicGlobalParams: expected exactly 7 fields, got ${d.fields.length}. ` +
|
|
283
|
+
`If you read 6 somewhere, that source predates #115 — max_inline_datum_bytes ` +
|
|
284
|
+
`is field 6. A 6-field datum is malformed for every programmable_logic_base spend.`);
|
|
285
|
+
}
|
|
286
|
+
const f = d.fields;
|
|
287
|
+
const n = f[6];
|
|
288
|
+
if (typeof n !== "bigint") {
|
|
289
|
+
throw new Error("ProgrammableLogicGlobalParams.maxInlineDatumBytes: expected an integer");
|
|
290
|
+
}
|
|
291
|
+
return {
|
|
292
|
+
registryNodeCs: expectBytes(f[0], "ProtocolParams.registryNodeCs"),
|
|
293
|
+
progLogicCred: dataToCred(f[1], "ProtocolParams.progLogicCred"),
|
|
294
|
+
transferCred: dataToCred(f[2], "ProtocolParams.transferCred"),
|
|
295
|
+
thirdPartyCred: dataToCred(f[3], "ProtocolParams.thirdPartyCred"),
|
|
296
|
+
unfrackingCred: dataToCred(f[4], "ProtocolParams.unfrackingCred"),
|
|
297
|
+
upgradeCred: dataToCred(f[5], "ProtocolParams.upgradeCred"),
|
|
298
|
+
maxInlineDatumBytes: n,
|
|
299
|
+
};
|
|
300
|
+
}
|
|
176
301
|
/** Build a BlacklistNode datum */
|
|
177
302
|
export function blacklistNodeDatum(key, next) {
|
|
178
303
|
return Data.constr(0n, [Data.bytearray(key), Data.bytearray(next)]);
|
|
@@ -181,22 +306,24 @@ export function blacklistNodeDatum(key, next) {
|
|
|
181
306
|
// Redeemer builders (CIP-113 validators)
|
|
182
307
|
// ---------------------------------------------------------------------------
|
|
183
308
|
/**
|
|
184
|
-
*
|
|
309
|
+
* `issuance_mint`'s redeemer — a BARE `MintingRegistryProof`.
|
|
310
|
+
*
|
|
311
|
+
* Upstream #68 REMOVED the `SmartTokenMintingAction { minting_logic_cred,
|
|
312
|
+
* minting_registry_proof }` wrapper these builders used to emit. The redeemer is
|
|
313
|
+
* now the proof itself, and the minting-logic credential is no longer carried in
|
|
314
|
+
* it at all — it comes from the registry node.
|
|
315
|
+
*
|
|
316
|
+
* ctor 0 RefInput { index } — the registry node is a REFERENCE input
|
|
317
|
+
* ctor 1 OutputIndex { index } — the registry node is an OUTPUT of this tx
|
|
318
|
+
* (registration and first mint in one)
|
|
319
|
+
*
|
|
320
|
+
* Verified against the blueprint's own redeemer schema, not upstream's prose.
|
|
185
321
|
*/
|
|
186
|
-
export function
|
|
187
|
-
return Data.constr(0n, [
|
|
188
|
-
scriptCredential(mintingLogicHash),
|
|
189
|
-
Data.constr(1n, [Data.int(BigInt(registryOutputIndex))]),
|
|
190
|
-
]);
|
|
322
|
+
export function mintingProofRefInput(registryRefInputIndex) {
|
|
323
|
+
return Data.constr(0n, [Data.int(BigInt(registryRefInputIndex))]);
|
|
191
324
|
}
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
*/
|
|
195
|
-
export function issuanceRedeemerRefInput(mintingLogicHash, registryRefInputIndex) {
|
|
196
|
-
return Data.constr(0n, [
|
|
197
|
-
scriptCredential(mintingLogicHash),
|
|
198
|
-
Data.constr(0n, [Data.int(BigInt(registryRefInputIndex))]),
|
|
199
|
-
]);
|
|
325
|
+
export function mintingProofOutputIndex(registryOutputIndex) {
|
|
326
|
+
return Data.constr(1n, [Data.int(BigInt(registryOutputIndex))]);
|
|
200
327
|
}
|
|
201
328
|
/** Build a TransferAct redeemer for PLGlobal. */
|
|
202
329
|
export function transferActRedeemer(proofs) {
|
|
@@ -213,9 +340,23 @@ export function thirdPartyActRedeemer(registryNodeIdx, outputsStartIdx) {
|
|
|
213
340
|
Data.int(BigInt(outputsStartIdx)),
|
|
214
341
|
]);
|
|
215
342
|
}
|
|
216
|
-
/**
|
|
217
|
-
|
|
218
|
-
|
|
343
|
+
/**
|
|
344
|
+
* `registry_mint`'s redeemer.
|
|
345
|
+
*
|
|
346
|
+
* ctor 0 RegistryInit {} — the origin node
|
|
347
|
+
* ctor 1 RegistryInsert { key, minting_logic_script }
|
|
348
|
+
*
|
|
349
|
+
* ⚠ The second field is a CREDENTIAL, not a bare hash. #52 replaced
|
|
350
|
+
* `hashed_param: ByteArray` with `minting_logic_script: Credential`, and #52's
|
|
351
|
+
* `mode: RegistrationMode` was removed again by re-audit R-06 — so a builder
|
|
352
|
+
* written against either intermediate shape is wrong in a different way. Both
|
|
353
|
+
* encode without complaint.
|
|
354
|
+
*/
|
|
355
|
+
export function registryInitRedeemer() {
|
|
356
|
+
return Data.constr(0n, []);
|
|
357
|
+
}
|
|
358
|
+
export function registryInsertRedeemer(key, mintingLogicScript) {
|
|
359
|
+
return Data.constr(1n, [Data.bytearray(key), credToData(mintingLogicScript)]);
|
|
219
360
|
}
|
|
220
361
|
/** Blacklist init (constructor 0) */
|
|
221
362
|
export function blacklistInitRedeemer() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evo-utils.js","sourceRoot":"","sources":["../../src/core/evo-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,IAAI,EACJ,KAAK,EACL,UAAU,IAAI,aAAa,EAC3B,MAAM,EACN,IAAI,EACJ,OAAO,IAAI,UAAU,EACrB,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,MAAM,EACN,UAAU,EACV,WAAW,EACX,OAAO,EACP,eAAe,EAEf,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,gCAAgC,CAAC;AAIxD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAyD,CAAC;AAElG,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,YAAuB;IACpD,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAEtD,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACxC,MAAM,cAAc,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QACrC,MAAM,SAAS,GAAG,cAAc,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtG,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACxC,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,YAAuB,EACvB,MAAmB;IAEnB,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IACnE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;AACjE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,YAAuB;IACvD,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IAC5C,OAAO,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,SAAiB,EAAE,UAAsB;IACrE,MAAM,IAAI,GAAG,IAAI,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/E,MAAM,IAAI,GAAG,IAAI,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7F,OAAO,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,SAAiB,EAAE,UAAsB;IACrE,MAAM,IAAI,GAAG,IAAI,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/E,MAAM,IAAI,GAAG,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;IACnF,OAAO,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,SAAiB,EAAE,UAAsB,EAAE,WAAmB;IACxF,MAAM,WAAW,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,IAAI,WAAW,CAAC,WAAW,CAAC;QACvC,SAAS;QACT,iBAAiB,EAAE,IAAI,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACpF,eAAe,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;KAC3E,CAAC,CAAC;IACH,OAAO,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,OAAO,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,OAAO,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;AAChD,CAAC;AAED,8EAA8E;AAC9E,+CAA+C;AAC/C,8EAA8E;AAE9E,wDAAwD;AACxD,MAAM,UAAU,eAAe,CAAC,GAAY;IAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;QACrB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;KAClC,CAAC,CAAC;AACL,CAAC;AAED,iDAAiD;AACjD,MAAM,UAAU,gBAAgB,CAAC,IAAgB;IAC/C,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,wDAAwD;AACxD,MAAM,UAAU,aAAa,CAAC,IAAe;IAC3C,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,iCAAiC;AACjC,MAAM,UAAU,QAAQ;IACtB,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED,8EAA8E;AAC9E,0DAA0D;AAC1D,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAc,EAAE,UAAkB;IACxE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAE1D,iDAAiD;IACjD,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAkB,CAAC,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,KAAmE,CAAC;QACnF,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,SAAS,CAAC;QAEpC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC,KAAK,CAAC,KAA8B,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAc,EACd,UAAkB;IAElB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAE1D,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAkB,CAAC,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,KAAmE,CAAC;QACnF,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEtD,MAAM,UAAU,GAAG,KAAmE,CAAC;QACvF,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,KAAc,CAAC,CAAC,CAAC,QAAiB,CAAC;QAC1E,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QAEtC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAA8B,CAAC,EAAE,CAAC;QACrE,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAC5B,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAcD,iCAAiC;AACjC,MAAM,UAAU,iBAAiB,CAAC,IAAsB;IACtD,MAAM,UAAU,GAAG,CAAC,IAAkD,EAAE,EAAE,CACxE,IAAI,CAAC,IAAI,KAAK,QAAQ;QACpB,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;QAC7B,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE/B,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;QACrB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;QACzB,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC;QACpC,UAAU,CAAC,IAAI,CAAC,6BAA6B,CAAC;QAC9C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;KACnC,CAAC,CAAC;AACL,CAAC;AAED,kCAAkC;AAClC,MAAM,UAAU,kBAAkB,CAAC,GAAc,EAAE,IAAe;IAChE,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACtE,CAAC;AAED,8EAA8E;AAC9E,yCAAyC;AACzC,8EAA8E;AAE9E;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,gBAA4B,EAC5B,mBAA2B;IAE3B,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;QACrB,gBAAgB,CAAC,gBAAgB,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;KACzD,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CACtC,gBAA4B,EAC5B,qBAA6B;IAE7B,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;QACrB,gBAAgB,CAAC,gBAAgB,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;KAC3D,CAAC,CAAC;AACL,CAAC;AAOD,iDAAiD;AACjD,MAAM,UAAU,mBAAmB,CAAC,MAAuB;IACzD,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;QACrB,IAAI,CAAC,IAAI,CACP,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACf,CAAC,CAAC,IAAI,KAAK,QAAQ;YACjB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAChD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CACnD,CACF;KACF,CAAC,CAAC;AACL,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,qBAAqB,CACnC,eAAuB,EACvB,eAAuB;IAEvB,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;QACrB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;KAClC,CAAC,CAAC;AACL,CAAC;AAED,8BAA8B;AAC9B,MAAM,UAAU,sBAAsB,CAAC,GAAc,EAAE,WAAsB;IAC3E,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,qCAAqC;AACrC,MAAM,UAAU,qBAAqB;IACnC,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED,oCAAoC;AACpC,MAAM,UAAU,oBAAoB,CAAC,UAAqB;IACxD,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,uCAAuC;AACvC,MAAM,UAAU,uBAAuB,CAAC,UAAqB;IAC3D,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,4EAA4E;AAC5E,MAAM,UAAU,iBAAiB,CAAC,QAAgB,EAAE,SAAiB,EAAE,GAAW;IAChF,IAAI,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IAC3D,OAAO,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,iBAAiB,CAAC,OAA4B;IAC5D,IAAI,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IACrC,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;AAED,yDAAyD;AACzD,MAAM,UAAU,YAAY,CAAC,QAAgB,EAAE,QAA8B;IAC3E,IAAI,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC3C,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACnC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACjC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAAkB;IAC/C,MAAM,QAAQ,GAAI,IAAY,CAAC,WAAW,CAAC;IAC3C,IAAI,QAAQ,EAAE,IAAI,KAAK,aAAa,IAAI,QAAQ,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;QAC9D,OAAO,QAAQ,CAAC,IAAiB,CAAC;IACpC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,IAAkB,EAAE,IAAY;IAC1D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAChD,OAAO,GAAG,GAAG,EAAE,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,IAAkB,EAAE,IAAY;IAC1D,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,IAAkB;IAC7C,OAAO,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAkB;IAC3C,OAAO,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,IAAkB;IAChD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,IAAkB;IAC5C,OAAO,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC3C,CAAC;AAED,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,mFAAmF;AACnF,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAExC,oCAAoC;AACpC,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACnD,CAAC;AAQD,4FAA4F;AAC5F,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,YAAuB;IACrE,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC;AAC7C,CAAC;AAED,6GAA6G;AAC7G,MAAM,UAAU,eAAe,CAAC,YAAuB;IACrD,0CAA0C;IAC1C,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,YAAY,IAAI,EAAE,CAAC;IACzE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9C,qEAAqE;QACrE,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1C,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,iDAAiD;IACnD,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,aAAa,CAAC,YAAuB;IACnD,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5D,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAwB;IACxD,MAAM,OAAO,GAAkC,EAAE,CAAC;IAElD,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5F,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5G,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAClG,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3F,CAAC;IACD,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9F,CAAC;IAED,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;QACrB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAQ,UAAU;QAC9B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAQ,2CAA2C;KAChE,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAC9E,6BAA6B;AAC7B,8EAA8E;AAE9E,OAAO,EACL,IAAI,EACJ,KAAK,EACL,MAAM,EACN,UAAU,EACV,WAAW,EACX,OAAO,EACP,UAAU,EACV,aAAa,EACb,eAAe,EACf,WAAW,EACX,IAAI,GACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"evo-utils.js","sourceRoot":"","sources":["../../src/core/evo-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ledger ordering, and the redeemer indices that depend on it.
|
|
3
|
+
*
|
|
4
|
+
* CIP-113 0.5.0-alpha.2 moved several lookups from "scan the transaction" to
|
|
5
|
+
* "the builder tells the validator where to look". That is cheaper on chain and
|
|
6
|
+
* strictly more dangerous off it: an index is a plain integer, so a wrong one
|
|
7
|
+
* typechecks, encodes, builds, and fails ONLY when the ledger runs the script.
|
|
8
|
+
* Nothing in this repository's other guards can see it.
|
|
9
|
+
*
|
|
10
|
+
* Two orderings matter, and they are NOT the same rule.
|
|
11
|
+
*
|
|
12
|
+
* --- Reference inputs -----------------------------------------------------
|
|
13
|
+
*
|
|
14
|
+
* Ordered by (transaction id, output index): bytewise on the id, then numeric
|
|
15
|
+
* on the index. `params_idx` is the protocol-params UTxO's position in that
|
|
16
|
+
* ordering, over the COMPLETE reference-input set.
|
|
17
|
+
*
|
|
18
|
+
* --- Withdrawals ----------------------------------------------------------
|
|
19
|
+
*
|
|
20
|
+
* NOT bytewise on the reward address, and NOT insertion order.
|
|
21
|
+
*
|
|
22
|
+
* EVERY SCRIPT CREDENTIAL SORTS BEFORE EVERY KEY CREDENTIAL, then bytewise by
|
|
23
|
+
* hash within each kind. The reason is a Haskell detail with an on-chain
|
|
24
|
+
* consequence: cardano-ledger's `Credential` is
|
|
25
|
+
*
|
|
26
|
+
* data Credential kr c = ScriptHashObj !(ScriptHash c) | KeyHashObj !(KeyHash kr c)
|
|
27
|
+
*
|
|
28
|
+
* with a derived `Ord`, and a derived `Ord` on a sum type compares constructor
|
|
29
|
+
* position first. `ScriptHashObj` is declared first, so it sorts first. The
|
|
30
|
+
* withdrawals map is keyed by `RewardAccount`, which orders by network then
|
|
31
|
+
* credential, and Plutus hands the script that map in that order.
|
|
32
|
+
*
|
|
33
|
+
* ⚠ THIS IS THE OPPOSITE OF WHAT THE SERIALISED BYTES SUGGEST, which is the
|
|
34
|
+
* trap. A reward account's header byte encodes key-stake as 0xE0|network and
|
|
35
|
+
* script-stake as 0xF0|network, so sorting the ENCODED addresses puts key
|
|
36
|
+
* credentials first — the exact reverse of the order the script sees. Deriving
|
|
37
|
+
* this ordering from the wire format is a natural mistake that produces a
|
|
38
|
+
* `wdrl_idx` that is wrong only when both kinds are present.
|
|
39
|
+
*
|
|
40
|
+
* PROVENANCE: DERIVED from cardano-ledger's constructor order and corroborated
|
|
41
|
+
* by upstream's own integration guide (documentation/09 › Withdrawal indices),
|
|
42
|
+
* which cites the same `Ord` derivation. NOT yet OBSERVED on chain by us — that
|
|
43
|
+
* happens in T-D08, and until then this is reasoned, not booted.
|
|
44
|
+
*/
|
|
45
|
+
import { Data } from "@evolution-sdk/evolution";
|
|
46
|
+
import type { HexString, TxInput } from "../types.js";
|
|
47
|
+
/** Ledger order for transaction inputs: by tx id, then by output index. */
|
|
48
|
+
export declare function compareTxInputs(a: TxInput, b: TxInput): number;
|
|
49
|
+
/**
|
|
50
|
+
* Position of `target` in the ledger-sorted reference inputs.
|
|
51
|
+
*
|
|
52
|
+
* Throws rather than returning -1: a missing reference input is a builder bug,
|
|
53
|
+
* and -1 encodes as a valid integer that fails obscurely on chain.
|
|
54
|
+
*/
|
|
55
|
+
export declare function referenceInputIndexOf(all: readonly TxInput[], target: TxInput): number;
|
|
56
|
+
export interface WithdrawalKey {
|
|
57
|
+
/** 28-byte credential hash, hex. */
|
|
58
|
+
hash: HexString;
|
|
59
|
+
/** true = script credential, false = verification-key credential. */
|
|
60
|
+
isScript: boolean;
|
|
61
|
+
}
|
|
62
|
+
/** Ledger order: every script credential before every key credential. */
|
|
63
|
+
export declare function compareWithdrawalKeys(a: WithdrawalKey, b: WithdrawalKey): number;
|
|
64
|
+
/** Sort withdrawal keys into the order the script sees. Does not mutate. */
|
|
65
|
+
export declare function sortWithdrawalKeys(keys: readonly WithdrawalKey[]): WithdrawalKey[];
|
|
66
|
+
/**
|
|
67
|
+
* Position of `target` in the ledger-ordered withdrawal map.
|
|
68
|
+
*
|
|
69
|
+
* `all` MUST be the complete withdrawal set of the final transaction. Any extra
|
|
70
|
+
* withdrawal — a second substandard script, or a key-hash reward withdrawal a
|
|
71
|
+
* wallet adds during balancing — occupies a slot and shifts every position
|
|
72
|
+
* after it. Compute this last.
|
|
73
|
+
*/
|
|
74
|
+
export declare function withdrawalIndexOf(all: readonly WithdrawalKey[], target: WithdrawalKey): number;
|
|
75
|
+
/**
|
|
76
|
+
* Which delegate programmable_logic_base dispatches to.
|
|
77
|
+
*
|
|
78
|
+
* Constructor indices are the on-chain contract: 0/1/2. Exactly one framework
|
|
79
|
+
* delegate may be invoked per transaction.
|
|
80
|
+
*/
|
|
81
|
+
export declare const BaseSpendVia: {
|
|
82
|
+
readonly TRANSFER: 0n;
|
|
83
|
+
readonly THIRD_PARTY: 1n;
|
|
84
|
+
readonly UNFRACKING: 2n;
|
|
85
|
+
};
|
|
86
|
+
export type BaseSpendVariant = keyof typeof BaseSpendVia;
|
|
87
|
+
/**
|
|
88
|
+
* Build a BaseSpendRedeemer.
|
|
89
|
+
*
|
|
90
|
+
* Replaces the untyped redeemer of 0.3.x and the bare `Int` of #109. Every
|
|
91
|
+
* programmable_logic_base input in the transaction needs one.
|
|
92
|
+
*/
|
|
93
|
+
export declare function baseSpendRedeemer(via: BaseSpendVariant, paramsIdx: number, wdrlIdx: number): Data.Data;
|
|
94
|
+
export interface RegistryProofRef {
|
|
95
|
+
type: "exists" | "not-exists";
|
|
96
|
+
nodeIdx: number;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* `transfer`'s TransferRedeemer { params_idx, proofs }.
|
|
100
|
+
*
|
|
101
|
+
* Single constructor 0, same field order as the old `TransferAct` with
|
|
102
|
+
* `params_idx` prepended — so an old encoder's output is NOT compatible.
|
|
103
|
+
*/
|
|
104
|
+
export declare function transferRedeemer(paramsIdx: number, proofs: readonly RegistryProofRef[]): Data.Data;
|
|
105
|
+
/** `third_party`'s ThirdPartyRedeemer { params_idx, registry_node_idx, outputs_start_idx }. */
|
|
106
|
+
export declare function thirdPartyRedeemer(paramsIdx: number, registryNodeIdx: number, outputsStartIdx: number): Data.Data;
|
|
107
|
+
/** `unfracking`'s UnfrackingRedeemer { params_idx, registry_node_idx, outputs_start_idx }. */
|
|
108
|
+
export declare function unfrackingRedeemer(paramsIdx: number, registryNodeIdx: number, outputsStartIdx: number): Data.Data;
|
|
109
|
+
//# sourceMappingURL=ledger-order.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ledger-order.d.ts","sourceRoot":"","sources":["../../src/core/ledger-order.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAc,OAAO,EAAE,MAAM,aAAa,CAAC;AAiClE,2EAA2E;AAC3E,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,CAG9D;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,SAAS,OAAO,EAAE,EACvB,MAAM,EAAE,OAAO,GACd,MAAM,CAYR;AAMD,MAAM,WAAW,aAAa;IAC5B,oCAAoC;IACpC,IAAI,EAAE,SAAS,CAAC;IAChB,qEAAqE;IACrE,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,CAGhF;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,aAAa,EAAE,GAAG,aAAa,EAAE,CAElF;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,SAAS,aAAa,EAAE,EAC7B,MAAM,EAAE,aAAa,GACpB,MAAM,CAaR;AAMD;;;;;GAKG;AACH,eAAO,MAAM,YAAY;;;;CAIf,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,YAAY,CAAC;AAEzD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,gBAAgB,EACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,IAAI,CAAC,IAAI,CAWX;AAMD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,SAAS,gBAAgB,EAAE,GAClC,IAAI,CAAC,IAAI,CASX;AAED,+FAA+F;AAC/F,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,MAAM,GACtB,IAAI,CAAC,IAAI,CAMX;AAED,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,MAAM,GACtB,IAAI,CAAC,IAAI,CAMX"}
|