damm-sdk 1.4.20 → 1.4.22

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/index.cjs CHANGED
@@ -41,6 +41,104 @@ var __export = (target, all) => {
41
41
  };
42
42
  var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
43
43
 
44
+ // node_modules/abitype/dist/esm/regex.js
45
+ function execTyped(regex, string) {
46
+ const match = regex.exec(string);
47
+ return match?.groups;
48
+ }
49
+ var init_regex = () => {};
50
+
51
+ // node_modules/abitype/dist/esm/human-readable/formatAbiParameter.js
52
+ function formatAbiParameter(abiParameter) {
53
+ let type = abiParameter.type;
54
+ if (tupleRegex.test(abiParameter.type) && "components" in abiParameter) {
55
+ type = "(";
56
+ const length = abiParameter.components.length;
57
+ for (let i = 0;i < length; i++) {
58
+ const component = abiParameter.components[i];
59
+ type += formatAbiParameter(component);
60
+ if (i < length - 1)
61
+ type += ", ";
62
+ }
63
+ const result = execTyped(tupleRegex, abiParameter.type);
64
+ type += `)${result?.array ?? ""}`;
65
+ return formatAbiParameter({
66
+ ...abiParameter,
67
+ type
68
+ });
69
+ }
70
+ if ("indexed" in abiParameter && abiParameter.indexed)
71
+ type = `${type} indexed`;
72
+ if (abiParameter.name)
73
+ return `${type} ${abiParameter.name}`;
74
+ return type;
75
+ }
76
+ var tupleRegex;
77
+ var init_formatAbiParameter = __esm(() => {
78
+ init_regex();
79
+ tupleRegex = /^tuple(?<array>(\[(\d*)\])*)$/;
80
+ });
81
+
82
+ // node_modules/abitype/dist/esm/human-readable/formatAbiParameters.js
83
+ function formatAbiParameters(abiParameters) {
84
+ let params = "";
85
+ const length = abiParameters.length;
86
+ for (let i = 0;i < length; i++) {
87
+ const abiParameter = abiParameters[i];
88
+ params += formatAbiParameter(abiParameter);
89
+ if (i !== length - 1)
90
+ params += ", ";
91
+ }
92
+ return params;
93
+ }
94
+ var init_formatAbiParameters = __esm(() => {
95
+ init_formatAbiParameter();
96
+ });
97
+
98
+ // node_modules/abitype/dist/esm/human-readable/formatAbiItem.js
99
+ function formatAbiItem(abiItem) {
100
+ if (abiItem.type === "function")
101
+ return `function ${abiItem.name}(${formatAbiParameters(abiItem.inputs)})${abiItem.stateMutability && abiItem.stateMutability !== "nonpayable" ? ` ${abiItem.stateMutability}` : ""}${abiItem.outputs?.length ? ` returns (${formatAbiParameters(abiItem.outputs)})` : ""}`;
102
+ if (abiItem.type === "event")
103
+ return `event ${abiItem.name}(${formatAbiParameters(abiItem.inputs)})`;
104
+ if (abiItem.type === "error")
105
+ return `error ${abiItem.name}(${formatAbiParameters(abiItem.inputs)})`;
106
+ if (abiItem.type === "constructor")
107
+ return `constructor(${formatAbiParameters(abiItem.inputs)})${abiItem.stateMutability === "payable" ? " payable" : ""}`;
108
+ if (abiItem.type === "fallback")
109
+ return `fallback() external${abiItem.stateMutability === "payable" ? " payable" : ""}`;
110
+ return "receive() external payable";
111
+ }
112
+ var init_formatAbiItem = __esm(() => {
113
+ init_formatAbiParameters();
114
+ });
115
+
116
+ // node_modules/abitype/dist/esm/exports/index.js
117
+ var init_exports = __esm(() => {
118
+ init_formatAbiItem();
119
+ });
120
+
121
+ // node_modules/viem/_esm/utils/abi/formatAbiItem.js
122
+ function formatAbiItem2(abiItem, { includeName = false } = {}) {
123
+ if (abiItem.type !== "function" && abiItem.type !== "event" && abiItem.type !== "error")
124
+ throw new InvalidDefinitionTypeError(abiItem.type);
125
+ return `${abiItem.name}(${formatAbiParams(abiItem.inputs, { includeName })})`;
126
+ }
127
+ function formatAbiParams(params, { includeName = false } = {}) {
128
+ if (!params)
129
+ return "";
130
+ return params.map((param) => formatAbiParam(param, { includeName })).join(includeName ? ", " : ",");
131
+ }
132
+ function formatAbiParam(param, { includeName }) {
133
+ if (param.type.startsWith("tuple")) {
134
+ return `(${formatAbiParams(param.components, { includeName })})${param.type.slice("tuple".length)}`;
135
+ }
136
+ return param.type + (includeName && param.name ? ` ${param.name}` : "");
137
+ }
138
+ var init_formatAbiItem2 = __esm(() => {
139
+ init_abi();
140
+ });
141
+
44
142
  // node_modules/viem/_esm/utils/data/isHex.js
45
143
  function isHex(value, { strict = true } = {}) {
46
144
  if (!value)
@@ -149,6 +247,153 @@ var init_base = __esm(() => {
149
247
  };
150
248
  });
151
249
 
250
+ // node_modules/viem/_esm/errors/abi.js
251
+ var AbiDecodingDataSizeTooSmallError, AbiDecodingZeroDataError, AbiEncodingArrayLengthMismatchError, AbiEncodingBytesSizeMismatchError, AbiEncodingLengthMismatchError, AbiFunctionNotFoundError, AbiFunctionSignatureNotFoundError, AbiItemAmbiguityError, InvalidAbiEncodingTypeError, InvalidAbiDecodingTypeError, InvalidArrayError, InvalidDefinitionTypeError;
252
+ var init_abi = __esm(() => {
253
+ init_formatAbiItem2();
254
+ init_size();
255
+ init_base();
256
+ AbiDecodingDataSizeTooSmallError = class AbiDecodingDataSizeTooSmallError extends BaseError {
257
+ constructor({ data, params, size: size2 }) {
258
+ super([`Data size of ${size2} bytes is too small for given parameters.`].join(`
259
+ `), {
260
+ metaMessages: [
261
+ `Params: (${formatAbiParams(params, { includeName: true })})`,
262
+ `Data: ${data} (${size2} bytes)`
263
+ ],
264
+ name: "AbiDecodingDataSizeTooSmallError"
265
+ });
266
+ Object.defineProperty(this, "data", {
267
+ enumerable: true,
268
+ configurable: true,
269
+ writable: true,
270
+ value: undefined
271
+ });
272
+ Object.defineProperty(this, "params", {
273
+ enumerable: true,
274
+ configurable: true,
275
+ writable: true,
276
+ value: undefined
277
+ });
278
+ Object.defineProperty(this, "size", {
279
+ enumerable: true,
280
+ configurable: true,
281
+ writable: true,
282
+ value: undefined
283
+ });
284
+ this.data = data;
285
+ this.params = params;
286
+ this.size = size2;
287
+ }
288
+ };
289
+ AbiDecodingZeroDataError = class AbiDecodingZeroDataError extends BaseError {
290
+ constructor() {
291
+ super('Cannot decode zero data ("0x") with ABI parameters.', {
292
+ name: "AbiDecodingZeroDataError"
293
+ });
294
+ }
295
+ };
296
+ AbiEncodingArrayLengthMismatchError = class AbiEncodingArrayLengthMismatchError extends BaseError {
297
+ constructor({ expectedLength, givenLength, type }) {
298
+ super([
299
+ `ABI encoding array length mismatch for type ${type}.`,
300
+ `Expected length: ${expectedLength}`,
301
+ `Given length: ${givenLength}`
302
+ ].join(`
303
+ `), { name: "AbiEncodingArrayLengthMismatchError" });
304
+ }
305
+ };
306
+ AbiEncodingBytesSizeMismatchError = class AbiEncodingBytesSizeMismatchError extends BaseError {
307
+ constructor({ expectedSize, value }) {
308
+ super(`Size of bytes "${value}" (bytes${size(value)}) does not match expected size (bytes${expectedSize}).`, { name: "AbiEncodingBytesSizeMismatchError" });
309
+ }
310
+ };
311
+ AbiEncodingLengthMismatchError = class AbiEncodingLengthMismatchError extends BaseError {
312
+ constructor({ expectedLength, givenLength }) {
313
+ super([
314
+ "ABI encoding params/values length mismatch.",
315
+ `Expected length (params): ${expectedLength}`,
316
+ `Given length (values): ${givenLength}`
317
+ ].join(`
318
+ `), { name: "AbiEncodingLengthMismatchError" });
319
+ }
320
+ };
321
+ AbiFunctionNotFoundError = class AbiFunctionNotFoundError extends BaseError {
322
+ constructor(functionName, { docsPath } = {}) {
323
+ super([
324
+ `Function ${functionName ? `"${functionName}" ` : ""}not found on ABI.`,
325
+ "Make sure you are using the correct ABI and that the function exists on it."
326
+ ].join(`
327
+ `), {
328
+ docsPath,
329
+ name: "AbiFunctionNotFoundError"
330
+ });
331
+ }
332
+ };
333
+ AbiFunctionSignatureNotFoundError = class AbiFunctionSignatureNotFoundError extends BaseError {
334
+ constructor(signature, { docsPath }) {
335
+ super([
336
+ `Encoded function signature "${signature}" not found on ABI.`,
337
+ "Make sure you are using the correct ABI and that the function exists on it.",
338
+ `You can look up the signature here: https://openchain.xyz/signatures?query=${signature}.`
339
+ ].join(`
340
+ `), {
341
+ docsPath,
342
+ name: "AbiFunctionSignatureNotFoundError"
343
+ });
344
+ }
345
+ };
346
+ AbiItemAmbiguityError = class AbiItemAmbiguityError extends BaseError {
347
+ constructor(x, y) {
348
+ super("Found ambiguous types in overloaded ABI items.", {
349
+ metaMessages: [
350
+ `\`${x.type}\` in \`${formatAbiItem2(x.abiItem)}\`, and`,
351
+ `\`${y.type}\` in \`${formatAbiItem2(y.abiItem)}\``,
352
+ "",
353
+ "These types encode differently and cannot be distinguished at runtime.",
354
+ "Remove one of the ambiguous items in the ABI."
355
+ ],
356
+ name: "AbiItemAmbiguityError"
357
+ });
358
+ }
359
+ };
360
+ InvalidAbiEncodingTypeError = class InvalidAbiEncodingTypeError extends BaseError {
361
+ constructor(type, { docsPath }) {
362
+ super([
363
+ `Type "${type}" is not a valid encoding type.`,
364
+ "Please provide a valid ABI type."
365
+ ].join(`
366
+ `), { docsPath, name: "InvalidAbiEncodingType" });
367
+ }
368
+ };
369
+ InvalidAbiDecodingTypeError = class InvalidAbiDecodingTypeError extends BaseError {
370
+ constructor(type, { docsPath }) {
371
+ super([
372
+ `Type "${type}" is not a valid decoding type.`,
373
+ "Please provide a valid ABI type."
374
+ ].join(`
375
+ `), { docsPath, name: "InvalidAbiDecodingType" });
376
+ }
377
+ };
378
+ InvalidArrayError = class InvalidArrayError extends BaseError {
379
+ constructor(value) {
380
+ super([`Value "${value}" is not a valid array.`].join(`
381
+ `), {
382
+ name: "InvalidArrayError"
383
+ });
384
+ }
385
+ };
386
+ InvalidDefinitionTypeError = class InvalidDefinitionTypeError extends BaseError {
387
+ constructor(type) {
388
+ super([
389
+ `"${type}" is not a valid definition type.`,
390
+ 'Valid types: "function", "event", "error"'
391
+ ].join(`
392
+ `), { name: "InvalidDefinitionTypeError" });
393
+ }
394
+ };
395
+ });
396
+
152
397
  // node_modules/viem/_esm/errors/data.js
153
398
  var SliceOffsetOutOfBoundsError, SizeExceedsPaddingSizeError;
154
399
  var init_data = __esm(() => {
@@ -204,7 +449,7 @@ var init_pad = __esm(() => {
204
449
  });
205
450
 
206
451
  // node_modules/viem/_esm/errors/encoding.js
207
- var IntegerOutOfRangeError, SizeOverflowError;
452
+ var IntegerOutOfRangeError, InvalidBytesBooleanError, SizeOverflowError;
208
453
  var init_encoding = __esm(() => {
209
454
  init_base();
210
455
  IntegerOutOfRangeError = class IntegerOutOfRangeError extends BaseError {
@@ -212,6 +457,13 @@ var init_encoding = __esm(() => {
212
457
  super(`Number "${value}" is not in safe ${size2 ? `${size2 * 8}-bit ${signed ? "signed" : "unsigned"} ` : ""}integer range ${max ? `(${min} to ${max})` : `(above ${min})`}`, { name: "IntegerOutOfRangeError" });
213
458
  }
214
459
  };
460
+ InvalidBytesBooleanError = class InvalidBytesBooleanError extends BaseError {
461
+ constructor(bytes) {
462
+ super(`Bytes value "${bytes}" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`, {
463
+ name: "InvalidBytesBooleanError"
464
+ });
465
+ }
466
+ };
215
467
  SizeOverflowError = class SizeOverflowError extends BaseError {
216
468
  constructor({ givenSize, maxSize }) {
217
469
  super(`Size cannot exceed ${maxSize} bytes. Given size: ${givenSize} bytes.`, { name: "SizeOverflowError" });
@@ -708,6 +960,93 @@ var init_keccak256 = __esm(() => {
708
960
  init_toHex();
709
961
  });
710
962
 
963
+ // node_modules/viem/_esm/utils/hash/hashSignature.js
964
+ function hashSignature(sig) {
965
+ return hash(sig);
966
+ }
967
+ var hash = (value) => keccak256(toBytes(value));
968
+ var init_hashSignature = __esm(() => {
969
+ init_toBytes();
970
+ init_keccak256();
971
+ });
972
+
973
+ // node_modules/viem/_esm/utils/hash/normalizeSignature.js
974
+ function normalizeSignature(signature) {
975
+ let active = true;
976
+ let current = "";
977
+ let level = 0;
978
+ let result = "";
979
+ let valid = false;
980
+ for (let i = 0;i < signature.length; i++) {
981
+ const char = signature[i];
982
+ if (["(", ")", ","].includes(char))
983
+ active = true;
984
+ if (char === "(")
985
+ level++;
986
+ if (char === ")")
987
+ level--;
988
+ if (!active)
989
+ continue;
990
+ if (level === 0) {
991
+ if (char === " " && ["event", "function", ""].includes(result))
992
+ result = "";
993
+ else {
994
+ result += char;
995
+ if (char === ")") {
996
+ valid = true;
997
+ break;
998
+ }
999
+ }
1000
+ continue;
1001
+ }
1002
+ if (char === " ") {
1003
+ if (signature[i - 1] !== "," && current !== "," && current !== ",(") {
1004
+ current = "";
1005
+ active = false;
1006
+ }
1007
+ continue;
1008
+ }
1009
+ result += char;
1010
+ current += char;
1011
+ }
1012
+ if (!valid)
1013
+ throw new BaseError("Unable to normalize signature.");
1014
+ return result;
1015
+ }
1016
+ var init_normalizeSignature = __esm(() => {
1017
+ init_base();
1018
+ });
1019
+
1020
+ // node_modules/viem/_esm/utils/hash/toSignature.js
1021
+ var toSignature = (def) => {
1022
+ const def_ = (() => {
1023
+ if (typeof def === "string")
1024
+ return def;
1025
+ return formatAbiItem(def);
1026
+ })();
1027
+ return normalizeSignature(def_);
1028
+ };
1029
+ var init_toSignature = __esm(() => {
1030
+ init_exports();
1031
+ init_normalizeSignature();
1032
+ });
1033
+
1034
+ // node_modules/viem/_esm/utils/hash/toSignatureHash.js
1035
+ function toSignatureHash(fn) {
1036
+ return hashSignature(toSignature(fn));
1037
+ }
1038
+ var init_toSignatureHash = __esm(() => {
1039
+ init_hashSignature();
1040
+ init_toSignature();
1041
+ });
1042
+
1043
+ // node_modules/viem/_esm/utils/hash/toEventSelector.js
1044
+ var toEventSelector;
1045
+ var init_toEventSelector = __esm(() => {
1046
+ init_toSignatureHash();
1047
+ toEventSelector = toSignatureHash;
1048
+ });
1049
+
711
1050
  // node_modules/viem/_esm/errors/address.js
712
1051
  var InvalidAddressError;
713
1052
  var init_address = __esm(() => {
@@ -764,13 +1103,13 @@ function checksumAddress(address_, chainId) {
764
1103
  if (checksumAddressCache.has(`${address_}.${chainId}`))
765
1104
  return checksumAddressCache.get(`${address_}.${chainId}`);
766
1105
  const hexAddress = chainId ? `${chainId}${address_.toLowerCase()}` : address_.substring(2).toLowerCase();
767
- const hash = keccak256(stringToBytes(hexAddress), "bytes");
1106
+ const hash2 = keccak256(stringToBytes(hexAddress), "bytes");
768
1107
  const address = (chainId ? hexAddress.substring(`${chainId}0x`.length) : hexAddress).split("");
769
1108
  for (let i = 0;i < 40; i += 2) {
770
- if (hash[i >> 1] >> 4 >= 8 && address[i]) {
1109
+ if (hash2[i >> 1] >> 4 >= 8 && address[i]) {
771
1110
  address[i] = address[i].toUpperCase();
772
1111
  }
773
- if ((hash[i >> 1] & 15) >= 8 && address[i + 1]) {
1112
+ if ((hash2[i >> 1] & 15) >= 8 && address[i + 1]) {
774
1113
  address[i + 1] = address[i + 1].toUpperCase();
775
1114
  }
776
1115
  }
@@ -820,11 +1159,38 @@ var init_isAddress = __esm(() => {
820
1159
  });
821
1160
 
822
1161
  // node_modules/viem/_esm/utils/data/concat.js
1162
+ function concat(values) {
1163
+ if (typeof values[0] === "string")
1164
+ return concatHex(values);
1165
+ return concatBytes(values);
1166
+ }
1167
+ function concatBytes(values) {
1168
+ let length = 0;
1169
+ for (const arr of values) {
1170
+ length += arr.length;
1171
+ }
1172
+ const result = new Uint8Array(length);
1173
+ let offset = 0;
1174
+ for (const arr of values) {
1175
+ result.set(arr, offset);
1176
+ offset += arr.length;
1177
+ }
1178
+ return result;
1179
+ }
823
1180
  function concatHex(values) {
824
1181
  return `0x${values.reduce((acc, x) => acc + x.replace("0x", ""), "")}`;
825
1182
  }
826
1183
 
827
1184
  // node_modules/viem/_esm/utils/data/slice.js
1185
+ function slice(value, start, end, { strict } = {}) {
1186
+ if (isHex(value, { strict: false }))
1187
+ return sliceHex(value, start, end, {
1188
+ strict
1189
+ });
1190
+ return sliceBytes(value, start, end, {
1191
+ strict
1192
+ });
1193
+ }
828
1194
  function assertStartOffset(value, start) {
829
1195
  if (typeof start === "number" && start > 0 && start > size(value) - 1)
830
1196
  throw new SliceOffsetOutOfBoundsError({
@@ -842,6 +1208,13 @@ function assertEndOffset(value, start, end) {
842
1208
  });
843
1209
  }
844
1210
  }
1211
+ function sliceBytes(value_, start, end, { strict } = {}) {
1212
+ assertStartOffset(value_, start);
1213
+ const value = value_.slice(start, end);
1214
+ if (strict)
1215
+ assertEndOffset(value, start, end);
1216
+ return value;
1217
+ }
845
1218
  function sliceHex(value_, start, end, { strict } = {}) {
846
1219
  assertStartOffset(value_, start);
847
1220
  const value = `0x${value_.replace("0x", "").slice((start ?? 0) * 2, (end ?? value_.length) * 2)}`;
@@ -854,6 +1227,602 @@ var init_slice = __esm(() => {
854
1227
  init_size();
855
1228
  });
856
1229
 
1230
+ // node_modules/viem/_esm/utils/regex.js
1231
+ var integerRegex;
1232
+ var init_regex2 = __esm(() => {
1233
+ integerRegex = /^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;
1234
+ });
1235
+
1236
+ // node_modules/viem/_esm/utils/abi/encodeAbiParameters.js
1237
+ function encodeAbiParameters(params, values) {
1238
+ if (params.length !== values.length)
1239
+ throw new AbiEncodingLengthMismatchError({
1240
+ expectedLength: params.length,
1241
+ givenLength: values.length
1242
+ });
1243
+ const preparedParams = prepareParams({
1244
+ params,
1245
+ values
1246
+ });
1247
+ const data = encodeParams(preparedParams);
1248
+ if (data.length === 0)
1249
+ return "0x";
1250
+ return data;
1251
+ }
1252
+ function prepareParams({ params, values }) {
1253
+ const preparedParams = [];
1254
+ for (let i = 0;i < params.length; i++) {
1255
+ preparedParams.push(prepareParam({ param: params[i], value: values[i] }));
1256
+ }
1257
+ return preparedParams;
1258
+ }
1259
+ function prepareParam({ param, value }) {
1260
+ const arrayComponents = getArrayComponents(param.type);
1261
+ if (arrayComponents) {
1262
+ const [length, type] = arrayComponents;
1263
+ return encodeArray(value, { length, param: { ...param, type } });
1264
+ }
1265
+ if (param.type === "tuple") {
1266
+ return encodeTuple(value, {
1267
+ param
1268
+ });
1269
+ }
1270
+ if (param.type === "address") {
1271
+ return encodeAddress(value);
1272
+ }
1273
+ if (param.type === "bool") {
1274
+ return encodeBool(value);
1275
+ }
1276
+ if (param.type.startsWith("uint") || param.type.startsWith("int")) {
1277
+ const signed = param.type.startsWith("int");
1278
+ const [, , size2 = "256"] = integerRegex.exec(param.type) ?? [];
1279
+ return encodeNumber(value, {
1280
+ signed,
1281
+ size: Number(size2)
1282
+ });
1283
+ }
1284
+ if (param.type.startsWith("bytes")) {
1285
+ return encodeBytes(value, { param });
1286
+ }
1287
+ if (param.type === "string") {
1288
+ return encodeString(value);
1289
+ }
1290
+ throw new InvalidAbiEncodingTypeError(param.type, {
1291
+ docsPath: "/docs/contract/encodeAbiParameters"
1292
+ });
1293
+ }
1294
+ function encodeParams(preparedParams) {
1295
+ let staticSize = 0;
1296
+ for (let i = 0;i < preparedParams.length; i++) {
1297
+ const { dynamic, encoded } = preparedParams[i];
1298
+ if (dynamic)
1299
+ staticSize += 32;
1300
+ else
1301
+ staticSize += size(encoded);
1302
+ }
1303
+ const staticParams = [];
1304
+ const dynamicParams = [];
1305
+ let dynamicSize = 0;
1306
+ for (let i = 0;i < preparedParams.length; i++) {
1307
+ const { dynamic, encoded } = preparedParams[i];
1308
+ if (dynamic) {
1309
+ staticParams.push(numberToHex(staticSize + dynamicSize, { size: 32 }));
1310
+ dynamicParams.push(encoded);
1311
+ dynamicSize += size(encoded);
1312
+ } else {
1313
+ staticParams.push(encoded);
1314
+ }
1315
+ }
1316
+ return concat([...staticParams, ...dynamicParams]);
1317
+ }
1318
+ function encodeAddress(value) {
1319
+ if (!isAddress(value))
1320
+ throw new InvalidAddressError({ address: value });
1321
+ return { dynamic: false, encoded: padHex(value.toLowerCase()) };
1322
+ }
1323
+ function encodeArray(value, { length, param }) {
1324
+ const dynamic = length === null;
1325
+ if (!Array.isArray(value))
1326
+ throw new InvalidArrayError(value);
1327
+ if (!dynamic && value.length !== length)
1328
+ throw new AbiEncodingArrayLengthMismatchError({
1329
+ expectedLength: length,
1330
+ givenLength: value.length,
1331
+ type: `${param.type}[${length}]`
1332
+ });
1333
+ let dynamicChild = false;
1334
+ const preparedParams = [];
1335
+ for (let i = 0;i < value.length; i++) {
1336
+ const preparedParam = prepareParam({ param, value: value[i] });
1337
+ if (preparedParam.dynamic)
1338
+ dynamicChild = true;
1339
+ preparedParams.push(preparedParam);
1340
+ }
1341
+ if (dynamic || dynamicChild) {
1342
+ const data = encodeParams(preparedParams);
1343
+ if (dynamic) {
1344
+ const length2 = numberToHex(preparedParams.length, { size: 32 });
1345
+ return {
1346
+ dynamic: true,
1347
+ encoded: preparedParams.length > 0 ? concat([length2, data]) : length2
1348
+ };
1349
+ }
1350
+ if (dynamicChild)
1351
+ return { dynamic: true, encoded: data };
1352
+ }
1353
+ return {
1354
+ dynamic: false,
1355
+ encoded: concat(preparedParams.map(({ encoded }) => encoded))
1356
+ };
1357
+ }
1358
+ function encodeBytes(value, { param }) {
1359
+ const [, paramSize] = param.type.split("bytes");
1360
+ const bytesSize = size(value);
1361
+ if (!paramSize) {
1362
+ let value_ = value;
1363
+ if (bytesSize % 32 !== 0)
1364
+ value_ = padHex(value_, {
1365
+ dir: "right",
1366
+ size: Math.ceil((value.length - 2) / 2 / 32) * 32
1367
+ });
1368
+ return {
1369
+ dynamic: true,
1370
+ encoded: concat([padHex(numberToHex(bytesSize, { size: 32 })), value_])
1371
+ };
1372
+ }
1373
+ if (bytesSize !== Number.parseInt(paramSize))
1374
+ throw new AbiEncodingBytesSizeMismatchError({
1375
+ expectedSize: Number.parseInt(paramSize),
1376
+ value
1377
+ });
1378
+ return { dynamic: false, encoded: padHex(value, { dir: "right" }) };
1379
+ }
1380
+ function encodeBool(value) {
1381
+ if (typeof value !== "boolean")
1382
+ throw new BaseError(`Invalid boolean value: "${value}" (type: ${typeof value}). Expected: \`true\` or \`false\`.`);
1383
+ return { dynamic: false, encoded: padHex(boolToHex(value)) };
1384
+ }
1385
+ function encodeNumber(value, { signed, size: size2 = 256 }) {
1386
+ if (typeof size2 === "number") {
1387
+ const max = 2n ** (BigInt(size2) - (signed ? 1n : 0n)) - 1n;
1388
+ const min = signed ? -max - 1n : 0n;
1389
+ if (value > max || value < min)
1390
+ throw new IntegerOutOfRangeError({
1391
+ max: max.toString(),
1392
+ min: min.toString(),
1393
+ signed,
1394
+ size: size2 / 8,
1395
+ value: value.toString()
1396
+ });
1397
+ }
1398
+ return {
1399
+ dynamic: false,
1400
+ encoded: numberToHex(value, {
1401
+ size: 32,
1402
+ signed
1403
+ })
1404
+ };
1405
+ }
1406
+ function encodeString(value) {
1407
+ const hexValue = stringToHex(value);
1408
+ const partsLength = Math.ceil(size(hexValue) / 32);
1409
+ const parts = [];
1410
+ for (let i = 0;i < partsLength; i++) {
1411
+ parts.push(padHex(slice(hexValue, i * 32, (i + 1) * 32), {
1412
+ dir: "right"
1413
+ }));
1414
+ }
1415
+ return {
1416
+ dynamic: true,
1417
+ encoded: concat([
1418
+ padHex(numberToHex(size(hexValue), { size: 32 })),
1419
+ ...parts
1420
+ ])
1421
+ };
1422
+ }
1423
+ function encodeTuple(value, { param }) {
1424
+ let dynamic = false;
1425
+ const preparedParams = [];
1426
+ for (let i = 0;i < param.components.length; i++) {
1427
+ const param_ = param.components[i];
1428
+ const index = Array.isArray(value) ? i : param_.name;
1429
+ const preparedParam = prepareParam({
1430
+ param: param_,
1431
+ value: value[index]
1432
+ });
1433
+ preparedParams.push(preparedParam);
1434
+ if (preparedParam.dynamic)
1435
+ dynamic = true;
1436
+ }
1437
+ return {
1438
+ dynamic,
1439
+ encoded: dynamic ? encodeParams(preparedParams) : concat(preparedParams.map(({ encoded }) => encoded))
1440
+ };
1441
+ }
1442
+ function getArrayComponents(type) {
1443
+ const matches = type.match(/^(.*)\[(\d+)?\]$/);
1444
+ return matches ? [matches[2] ? Number(matches[2]) : null, matches[1]] : undefined;
1445
+ }
1446
+ var init_encodeAbiParameters = __esm(() => {
1447
+ init_abi();
1448
+ init_address();
1449
+ init_base();
1450
+ init_encoding();
1451
+ init_isAddress();
1452
+ init_pad();
1453
+ init_size();
1454
+ init_slice();
1455
+ init_toHex();
1456
+ init_regex2();
1457
+ });
1458
+
1459
+ // node_modules/viem/_esm/utils/hash/toFunctionSelector.js
1460
+ var toFunctionSelector = (fn) => slice(toSignatureHash(fn), 0, 4);
1461
+ var init_toFunctionSelector = __esm(() => {
1462
+ init_slice();
1463
+ init_toSignatureHash();
1464
+ });
1465
+
1466
+ // node_modules/viem/_esm/utils/abi/getAbiItem.js
1467
+ function getAbiItem(parameters) {
1468
+ const { abi, args = [], name } = parameters;
1469
+ const isSelector = isHex(name, { strict: false });
1470
+ const abiItems = abi.filter((abiItem) => {
1471
+ if (isSelector) {
1472
+ if (abiItem.type === "function")
1473
+ return toFunctionSelector(abiItem) === name;
1474
+ if (abiItem.type === "event")
1475
+ return toEventSelector(abiItem) === name;
1476
+ return false;
1477
+ }
1478
+ return "name" in abiItem && abiItem.name === name;
1479
+ });
1480
+ if (abiItems.length === 0)
1481
+ return;
1482
+ if (abiItems.length === 1)
1483
+ return abiItems[0];
1484
+ let matchedAbiItem = undefined;
1485
+ for (const abiItem of abiItems) {
1486
+ if (!("inputs" in abiItem))
1487
+ continue;
1488
+ if (!args || args.length === 0) {
1489
+ if (!abiItem.inputs || abiItem.inputs.length === 0)
1490
+ return abiItem;
1491
+ continue;
1492
+ }
1493
+ if (!abiItem.inputs)
1494
+ continue;
1495
+ if (abiItem.inputs.length === 0)
1496
+ continue;
1497
+ if (abiItem.inputs.length !== args.length)
1498
+ continue;
1499
+ const matched = args.every((arg, index) => {
1500
+ const abiParameter = "inputs" in abiItem && abiItem.inputs[index];
1501
+ if (!abiParameter)
1502
+ return false;
1503
+ return isArgOfType(arg, abiParameter);
1504
+ });
1505
+ if (matched) {
1506
+ if (matchedAbiItem && "inputs" in matchedAbiItem && matchedAbiItem.inputs) {
1507
+ const ambiguousTypes = getAmbiguousTypes(abiItem.inputs, matchedAbiItem.inputs, args);
1508
+ if (ambiguousTypes)
1509
+ throw new AbiItemAmbiguityError({
1510
+ abiItem,
1511
+ type: ambiguousTypes[0]
1512
+ }, {
1513
+ abiItem: matchedAbiItem,
1514
+ type: ambiguousTypes[1]
1515
+ });
1516
+ }
1517
+ matchedAbiItem = abiItem;
1518
+ }
1519
+ }
1520
+ if (matchedAbiItem)
1521
+ return matchedAbiItem;
1522
+ return abiItems[0];
1523
+ }
1524
+ function isArgOfType(arg, abiParameter) {
1525
+ const argType = typeof arg;
1526
+ const abiParameterType = abiParameter.type;
1527
+ switch (abiParameterType) {
1528
+ case "address":
1529
+ return isAddress(arg, { strict: false });
1530
+ case "bool":
1531
+ return argType === "boolean";
1532
+ case "function":
1533
+ return argType === "string";
1534
+ case "string":
1535
+ return argType === "string";
1536
+ default: {
1537
+ if (abiParameterType === "tuple" && "components" in abiParameter)
1538
+ return Object.values(abiParameter.components).every((component, index) => {
1539
+ return isArgOfType(Object.values(arg)[index], component);
1540
+ });
1541
+ if (/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(abiParameterType))
1542
+ return argType === "number" || argType === "bigint";
1543
+ if (/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(abiParameterType))
1544
+ return argType === "string" || arg instanceof Uint8Array;
1545
+ if (/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(abiParameterType)) {
1546
+ return Array.isArray(arg) && arg.every((x) => isArgOfType(x, {
1547
+ ...abiParameter,
1548
+ type: abiParameterType.replace(/(\[[0-9]{0,}\])$/, "")
1549
+ }));
1550
+ }
1551
+ return false;
1552
+ }
1553
+ }
1554
+ }
1555
+ function getAmbiguousTypes(sourceParameters, targetParameters, args) {
1556
+ for (const parameterIndex in sourceParameters) {
1557
+ const sourceParameter = sourceParameters[parameterIndex];
1558
+ const targetParameter = targetParameters[parameterIndex];
1559
+ if (sourceParameter.type === "tuple" && targetParameter.type === "tuple" && "components" in sourceParameter && "components" in targetParameter)
1560
+ return getAmbiguousTypes(sourceParameter.components, targetParameter.components, args[parameterIndex]);
1561
+ const types = [sourceParameter.type, targetParameter.type];
1562
+ const ambiguous = (() => {
1563
+ if (types.includes("address") && types.includes("bytes20"))
1564
+ return true;
1565
+ if (types.includes("address") && types.includes("string"))
1566
+ return isAddress(args[parameterIndex], { strict: false });
1567
+ if (types.includes("address") && types.includes("bytes"))
1568
+ return isAddress(args[parameterIndex], { strict: false });
1569
+ return false;
1570
+ })();
1571
+ if (ambiguous)
1572
+ return types;
1573
+ }
1574
+ return;
1575
+ }
1576
+ var init_getAbiItem = __esm(() => {
1577
+ init_abi();
1578
+ init_isAddress();
1579
+ init_toEventSelector();
1580
+ init_toFunctionSelector();
1581
+ });
1582
+
1583
+ // node_modules/viem/_esm/utils/abi/prepareEncodeFunctionData.js
1584
+ function prepareEncodeFunctionData(parameters) {
1585
+ const { abi, args, functionName } = parameters;
1586
+ let abiItem = abi[0];
1587
+ if (functionName) {
1588
+ const item = getAbiItem({
1589
+ abi,
1590
+ args,
1591
+ name: functionName
1592
+ });
1593
+ if (!item)
1594
+ throw new AbiFunctionNotFoundError(functionName, { docsPath });
1595
+ abiItem = item;
1596
+ }
1597
+ if (abiItem.type !== "function")
1598
+ throw new AbiFunctionNotFoundError(undefined, { docsPath });
1599
+ return {
1600
+ abi: [abiItem],
1601
+ functionName: toFunctionSelector(formatAbiItem2(abiItem))
1602
+ };
1603
+ }
1604
+ var docsPath = "/docs/contract/encodeFunctionData";
1605
+ var init_prepareEncodeFunctionData = __esm(() => {
1606
+ init_abi();
1607
+ init_toFunctionSelector();
1608
+ init_formatAbiItem2();
1609
+ init_getAbiItem();
1610
+ });
1611
+
1612
+ // node_modules/viem/_esm/utils/abi/encodeFunctionData.js
1613
+ function encodeFunctionData(parameters) {
1614
+ const { args } = parameters;
1615
+ const { abi, functionName } = (() => {
1616
+ if (parameters.abi.length === 1 && parameters.functionName?.startsWith("0x"))
1617
+ return parameters;
1618
+ return prepareEncodeFunctionData(parameters);
1619
+ })();
1620
+ const abiItem = abi[0];
1621
+ const signature = functionName;
1622
+ const data = "inputs" in abiItem && abiItem.inputs ? encodeAbiParameters(abiItem.inputs, args ?? []) : undefined;
1623
+ return concatHex([signature, data ?? "0x"]);
1624
+ }
1625
+ var init_encodeFunctionData = __esm(() => {
1626
+ init_encodeAbiParameters();
1627
+ init_prepareEncodeFunctionData();
1628
+ });
1629
+
1630
+ // node_modules/viem/_esm/errors/cursor.js
1631
+ var NegativeOffsetError, PositionOutOfBoundsError, RecursiveReadLimitExceededError;
1632
+ var init_cursor = __esm(() => {
1633
+ init_base();
1634
+ NegativeOffsetError = class NegativeOffsetError extends BaseError {
1635
+ constructor({ offset }) {
1636
+ super(`Offset \`${offset}\` cannot be negative.`, {
1637
+ name: "NegativeOffsetError"
1638
+ });
1639
+ }
1640
+ };
1641
+ PositionOutOfBoundsError = class PositionOutOfBoundsError extends BaseError {
1642
+ constructor({ length, position }) {
1643
+ super(`Position \`${position}\` is out of bounds (\`0 < position < ${length}\`).`, { name: "PositionOutOfBoundsError" });
1644
+ }
1645
+ };
1646
+ RecursiveReadLimitExceededError = class RecursiveReadLimitExceededError extends BaseError {
1647
+ constructor({ count, limit }) {
1648
+ super(`Recursive read limit of \`${limit}\` exceeded (recursive read count: \`${count}\`).`, { name: "RecursiveReadLimitExceededError" });
1649
+ }
1650
+ };
1651
+ });
1652
+
1653
+ // node_modules/viem/_esm/utils/cursor.js
1654
+ function createCursor(bytes, { recursiveReadLimit = 8192 } = {}) {
1655
+ const cursor = Object.create(staticCursor);
1656
+ cursor.bytes = bytes;
1657
+ cursor.dataView = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
1658
+ cursor.positionReadCount = new Map;
1659
+ cursor.recursiveReadLimit = recursiveReadLimit;
1660
+ return cursor;
1661
+ }
1662
+ var staticCursor;
1663
+ var init_cursor2 = __esm(() => {
1664
+ init_cursor();
1665
+ staticCursor = {
1666
+ bytes: new Uint8Array,
1667
+ dataView: new DataView(new ArrayBuffer(0)),
1668
+ position: 0,
1669
+ positionReadCount: new Map,
1670
+ recursiveReadCount: 0,
1671
+ recursiveReadLimit: Number.POSITIVE_INFINITY,
1672
+ assertReadLimit() {
1673
+ if (this.recursiveReadCount >= this.recursiveReadLimit)
1674
+ throw new RecursiveReadLimitExceededError({
1675
+ count: this.recursiveReadCount + 1,
1676
+ limit: this.recursiveReadLimit
1677
+ });
1678
+ },
1679
+ assertPosition(position) {
1680
+ if (position < 0 || position > this.bytes.length - 1)
1681
+ throw new PositionOutOfBoundsError({
1682
+ length: this.bytes.length,
1683
+ position
1684
+ });
1685
+ },
1686
+ decrementPosition(offset) {
1687
+ if (offset < 0)
1688
+ throw new NegativeOffsetError({ offset });
1689
+ const position = this.position - offset;
1690
+ this.assertPosition(position);
1691
+ this.position = position;
1692
+ },
1693
+ getReadCount(position) {
1694
+ return this.positionReadCount.get(position || this.position) || 0;
1695
+ },
1696
+ incrementPosition(offset) {
1697
+ if (offset < 0)
1698
+ throw new NegativeOffsetError({ offset });
1699
+ const position = this.position + offset;
1700
+ this.assertPosition(position);
1701
+ this.position = position;
1702
+ },
1703
+ inspectByte(position_) {
1704
+ const position = position_ ?? this.position;
1705
+ this.assertPosition(position);
1706
+ return this.bytes[position];
1707
+ },
1708
+ inspectBytes(length, position_) {
1709
+ const position = position_ ?? this.position;
1710
+ this.assertPosition(position + length - 1);
1711
+ return this.bytes.subarray(position, position + length);
1712
+ },
1713
+ inspectUint8(position_) {
1714
+ const position = position_ ?? this.position;
1715
+ this.assertPosition(position);
1716
+ return this.bytes[position];
1717
+ },
1718
+ inspectUint16(position_) {
1719
+ const position = position_ ?? this.position;
1720
+ this.assertPosition(position + 1);
1721
+ return this.dataView.getUint16(position);
1722
+ },
1723
+ inspectUint24(position_) {
1724
+ const position = position_ ?? this.position;
1725
+ this.assertPosition(position + 2);
1726
+ return (this.dataView.getUint16(position) << 8) + this.dataView.getUint8(position + 2);
1727
+ },
1728
+ inspectUint32(position_) {
1729
+ const position = position_ ?? this.position;
1730
+ this.assertPosition(position + 3);
1731
+ return this.dataView.getUint32(position);
1732
+ },
1733
+ pushByte(byte) {
1734
+ this.assertPosition(this.position);
1735
+ this.bytes[this.position] = byte;
1736
+ this.position++;
1737
+ },
1738
+ pushBytes(bytes) {
1739
+ this.assertPosition(this.position + bytes.length - 1);
1740
+ this.bytes.set(bytes, this.position);
1741
+ this.position += bytes.length;
1742
+ },
1743
+ pushUint8(value) {
1744
+ this.assertPosition(this.position);
1745
+ this.bytes[this.position] = value;
1746
+ this.position++;
1747
+ },
1748
+ pushUint16(value) {
1749
+ this.assertPosition(this.position + 1);
1750
+ this.dataView.setUint16(this.position, value);
1751
+ this.position += 2;
1752
+ },
1753
+ pushUint24(value) {
1754
+ this.assertPosition(this.position + 2);
1755
+ this.dataView.setUint16(this.position, value >> 8);
1756
+ this.dataView.setUint8(this.position + 2, value & ~4294967040);
1757
+ this.position += 3;
1758
+ },
1759
+ pushUint32(value) {
1760
+ this.assertPosition(this.position + 3);
1761
+ this.dataView.setUint32(this.position, value);
1762
+ this.position += 4;
1763
+ },
1764
+ readByte() {
1765
+ this.assertReadLimit();
1766
+ this._touch();
1767
+ const value = this.inspectByte();
1768
+ this.position++;
1769
+ return value;
1770
+ },
1771
+ readBytes(length, size2) {
1772
+ this.assertReadLimit();
1773
+ this._touch();
1774
+ const value = this.inspectBytes(length);
1775
+ this.position += size2 ?? length;
1776
+ return value;
1777
+ },
1778
+ readUint8() {
1779
+ this.assertReadLimit();
1780
+ this._touch();
1781
+ const value = this.inspectUint8();
1782
+ this.position += 1;
1783
+ return value;
1784
+ },
1785
+ readUint16() {
1786
+ this.assertReadLimit();
1787
+ this._touch();
1788
+ const value = this.inspectUint16();
1789
+ this.position += 2;
1790
+ return value;
1791
+ },
1792
+ readUint24() {
1793
+ this.assertReadLimit();
1794
+ this._touch();
1795
+ const value = this.inspectUint24();
1796
+ this.position += 3;
1797
+ return value;
1798
+ },
1799
+ readUint32() {
1800
+ this.assertReadLimit();
1801
+ this._touch();
1802
+ const value = this.inspectUint32();
1803
+ this.position += 4;
1804
+ return value;
1805
+ },
1806
+ get remaining() {
1807
+ return this.bytes.length - this.position;
1808
+ },
1809
+ setPosition(position) {
1810
+ const oldPosition = this.position;
1811
+ this.assertPosition(position);
1812
+ this.position = position;
1813
+ return () => this.position = oldPosition;
1814
+ },
1815
+ _touch() {
1816
+ if (this.recursiveReadLimit === Number.POSITIVE_INFINITY)
1817
+ return;
1818
+ const count = this.getReadCount();
1819
+ this.positionReadCount.set(this.position, count + 1);
1820
+ if (count > 0)
1821
+ this.recursiveReadCount++;
1822
+ }
1823
+ };
1824
+ });
1825
+
857
1826
  // node_modules/viem/_esm/utils/encoding/fromBytes.js
858
1827
  function bytesToBigInt(bytes, opts = {}) {
859
1828
  if (typeof opts.size !== "undefined")
@@ -861,6 +1830,16 @@ function bytesToBigInt(bytes, opts = {}) {
861
1830
  const hex = bytesToHex(bytes, opts);
862
1831
  return hexToBigInt(hex, opts);
863
1832
  }
1833
+ function bytesToBool(bytes_, opts = {}) {
1834
+ let bytes = bytes_;
1835
+ if (typeof opts.size !== "undefined") {
1836
+ assertSize(bytes, { size: opts.size });
1837
+ bytes = trim(bytes);
1838
+ }
1839
+ if (bytes.length > 1 || bytes[0] > 1)
1840
+ throw new InvalidBytesBooleanError(bytes);
1841
+ return Boolean(bytes[0]);
1842
+ }
864
1843
  function bytesToNumber(bytes, opts = {}) {
865
1844
  if (typeof opts.size !== "undefined")
866
1845
  assertSize(bytes, { size: opts.size });
@@ -876,10 +1855,208 @@ function bytesToString(bytes_, opts = {}) {
876
1855
  return new TextDecoder().decode(bytes);
877
1856
  }
878
1857
  var init_fromBytes = __esm(() => {
1858
+ init_encoding();
879
1859
  init_fromHex();
880
1860
  init_toHex();
881
1861
  });
882
1862
 
1863
+ // node_modules/viem/_esm/utils/abi/decodeAbiParameters.js
1864
+ function decodeAbiParameters(params, data) {
1865
+ const bytes = typeof data === "string" ? hexToBytes(data) : data;
1866
+ const cursor = createCursor(bytes);
1867
+ if (size(bytes) === 0 && params.length > 0)
1868
+ throw new AbiDecodingZeroDataError;
1869
+ if (size(data) && size(data) < 32)
1870
+ throw new AbiDecodingDataSizeTooSmallError({
1871
+ data: typeof data === "string" ? data : bytesToHex(data),
1872
+ params,
1873
+ size: size(data)
1874
+ });
1875
+ let consumed = 0;
1876
+ const values = [];
1877
+ for (let i = 0;i < params.length; ++i) {
1878
+ const param = params[i];
1879
+ cursor.setPosition(consumed);
1880
+ const [data2, consumed_] = decodeParameter(cursor, param, {
1881
+ staticPosition: 0
1882
+ });
1883
+ consumed += consumed_;
1884
+ values.push(data2);
1885
+ }
1886
+ return values;
1887
+ }
1888
+ function decodeParameter(cursor, param, { staticPosition }) {
1889
+ const arrayComponents = getArrayComponents(param.type);
1890
+ if (arrayComponents) {
1891
+ const [length, type] = arrayComponents;
1892
+ return decodeArray(cursor, { ...param, type }, { length, staticPosition });
1893
+ }
1894
+ if (param.type === "tuple")
1895
+ return decodeTuple(cursor, param, { staticPosition });
1896
+ if (param.type === "address")
1897
+ return decodeAddress(cursor);
1898
+ if (param.type === "bool")
1899
+ return decodeBool(cursor);
1900
+ if (param.type.startsWith("bytes"))
1901
+ return decodeBytes(cursor, param, { staticPosition });
1902
+ if (param.type.startsWith("uint") || param.type.startsWith("int"))
1903
+ return decodeNumber(cursor, param);
1904
+ if (param.type === "string")
1905
+ return decodeString(cursor, { staticPosition });
1906
+ throw new InvalidAbiDecodingTypeError(param.type, {
1907
+ docsPath: "/docs/contract/decodeAbiParameters"
1908
+ });
1909
+ }
1910
+ function decodeAddress(cursor) {
1911
+ const value = cursor.readBytes(32);
1912
+ return [checksumAddress(bytesToHex(sliceBytes(value, -20))), 32];
1913
+ }
1914
+ function decodeArray(cursor, param, { length, staticPosition }) {
1915
+ if (!length) {
1916
+ const offset = bytesToNumber(cursor.readBytes(sizeOfOffset));
1917
+ const start = staticPosition + offset;
1918
+ const startOfData = start + sizeOfLength;
1919
+ cursor.setPosition(start);
1920
+ const length2 = bytesToNumber(cursor.readBytes(sizeOfLength));
1921
+ const dynamicChild = hasDynamicChild(param);
1922
+ let consumed2 = 0;
1923
+ const value2 = [];
1924
+ for (let i = 0;i < length2; ++i) {
1925
+ cursor.setPosition(startOfData + (dynamicChild ? i * 32 : consumed2));
1926
+ const [data, consumed_] = decodeParameter(cursor, param, {
1927
+ staticPosition: startOfData
1928
+ });
1929
+ consumed2 += consumed_;
1930
+ value2.push(data);
1931
+ }
1932
+ cursor.setPosition(staticPosition + 32);
1933
+ return [value2, 32];
1934
+ }
1935
+ if (hasDynamicChild(param)) {
1936
+ const offset = bytesToNumber(cursor.readBytes(sizeOfOffset));
1937
+ const start = staticPosition + offset;
1938
+ const value2 = [];
1939
+ for (let i = 0;i < length; ++i) {
1940
+ cursor.setPosition(start + i * 32);
1941
+ const [data] = decodeParameter(cursor, param, {
1942
+ staticPosition: start
1943
+ });
1944
+ value2.push(data);
1945
+ }
1946
+ cursor.setPosition(staticPosition + 32);
1947
+ return [value2, 32];
1948
+ }
1949
+ let consumed = 0;
1950
+ const value = [];
1951
+ for (let i = 0;i < length; ++i) {
1952
+ const [data, consumed_] = decodeParameter(cursor, param, {
1953
+ staticPosition: staticPosition + consumed
1954
+ });
1955
+ consumed += consumed_;
1956
+ value.push(data);
1957
+ }
1958
+ return [value, consumed];
1959
+ }
1960
+ function decodeBool(cursor) {
1961
+ return [bytesToBool(cursor.readBytes(32), { size: 32 }), 32];
1962
+ }
1963
+ function decodeBytes(cursor, param, { staticPosition }) {
1964
+ const [_, size2] = param.type.split("bytes");
1965
+ if (!size2) {
1966
+ const offset = bytesToNumber(cursor.readBytes(32));
1967
+ cursor.setPosition(staticPosition + offset);
1968
+ const length = bytesToNumber(cursor.readBytes(32));
1969
+ if (length === 0) {
1970
+ cursor.setPosition(staticPosition + 32);
1971
+ return ["0x", 32];
1972
+ }
1973
+ const data = cursor.readBytes(length);
1974
+ cursor.setPosition(staticPosition + 32);
1975
+ return [bytesToHex(data), 32];
1976
+ }
1977
+ const value = bytesToHex(cursor.readBytes(Number.parseInt(size2), 32));
1978
+ return [value, 32];
1979
+ }
1980
+ function decodeNumber(cursor, param) {
1981
+ const signed = param.type.startsWith("int");
1982
+ const size2 = Number.parseInt(param.type.split("int")[1] || "256");
1983
+ const value = cursor.readBytes(32);
1984
+ return [
1985
+ size2 > 48 ? bytesToBigInt(value, { signed }) : bytesToNumber(value, { signed }),
1986
+ 32
1987
+ ];
1988
+ }
1989
+ function decodeTuple(cursor, param, { staticPosition }) {
1990
+ const hasUnnamedChild = param.components.length === 0 || param.components.some(({ name }) => !name);
1991
+ const value = hasUnnamedChild ? [] : {};
1992
+ let consumed = 0;
1993
+ if (hasDynamicChild(param)) {
1994
+ const offset = bytesToNumber(cursor.readBytes(sizeOfOffset));
1995
+ const start = staticPosition + offset;
1996
+ for (let i = 0;i < param.components.length; ++i) {
1997
+ const component = param.components[i];
1998
+ cursor.setPosition(start + consumed);
1999
+ const [data, consumed_] = decodeParameter(cursor, component, {
2000
+ staticPosition: start
2001
+ });
2002
+ consumed += consumed_;
2003
+ value[hasUnnamedChild ? i : component?.name] = data;
2004
+ }
2005
+ cursor.setPosition(staticPosition + 32);
2006
+ return [value, 32];
2007
+ }
2008
+ for (let i = 0;i < param.components.length; ++i) {
2009
+ const component = param.components[i];
2010
+ const [data, consumed_] = decodeParameter(cursor, component, {
2011
+ staticPosition
2012
+ });
2013
+ value[hasUnnamedChild ? i : component?.name] = data;
2014
+ consumed += consumed_;
2015
+ }
2016
+ return [value, consumed];
2017
+ }
2018
+ function decodeString(cursor, { staticPosition }) {
2019
+ const offset = bytesToNumber(cursor.readBytes(32));
2020
+ const start = staticPosition + offset;
2021
+ cursor.setPosition(start);
2022
+ const length = bytesToNumber(cursor.readBytes(32));
2023
+ if (length === 0) {
2024
+ cursor.setPosition(staticPosition + 32);
2025
+ return ["", 32];
2026
+ }
2027
+ const data = cursor.readBytes(length, 32);
2028
+ const value = bytesToString(trim(data));
2029
+ cursor.setPosition(staticPosition + 32);
2030
+ return [value, 32];
2031
+ }
2032
+ function hasDynamicChild(param) {
2033
+ const { type } = param;
2034
+ if (type === "string")
2035
+ return true;
2036
+ if (type === "bytes")
2037
+ return true;
2038
+ if (type.endsWith("[]"))
2039
+ return true;
2040
+ if (type === "tuple")
2041
+ return param.components?.some(hasDynamicChild);
2042
+ const arrayComponents = getArrayComponents(param.type);
2043
+ if (arrayComponents && hasDynamicChild({ ...param, type: arrayComponents[1] }))
2044
+ return true;
2045
+ return false;
2046
+ }
2047
+ var sizeOfLength = 32, sizeOfOffset = 32;
2048
+ var init_decodeAbiParameters = __esm(() => {
2049
+ init_abi();
2050
+ init_getAddress();
2051
+ init_cursor2();
2052
+ init_size();
2053
+ init_slice();
2054
+ init_fromBytes();
2055
+ init_toBytes();
2056
+ init_toHex();
2057
+ init_encodeAbiParameters();
2058
+ });
2059
+
883
2060
  // node_modules/viem/_esm/constants/number.js
884
2061
  var maxInt8, maxInt16, maxInt24, maxInt32, maxInt40, maxInt48, maxInt56, maxInt64, maxInt72, maxInt80, maxInt88, maxInt96, maxInt104, maxInt112, maxInt120, maxInt128, maxInt136, maxInt144, maxInt152, maxInt160, maxInt168, maxInt176, maxInt184, maxInt192, maxInt200, maxInt208, maxInt216, maxInt224, maxInt232, maxInt240, maxInt248, maxInt256, minInt8, minInt16, minInt24, minInt32, minInt40, minInt48, minInt56, minInt64, minInt72, minInt80, minInt88, minInt96, minInt104, minInt112, minInt120, minInt128, minInt136, minInt144, minInt152, minInt160, minInt168, minInt176, minInt184, minInt192, minInt200, minInt208, minInt216, minInt224, minInt232, minInt240, minInt248, minInt256, maxUint8, maxUint16, maxUint24, maxUint32, maxUint40, maxUint48, maxUint56, maxUint64, maxUint72, maxUint80, maxUint88, maxUint96, maxUint104, maxUint112, maxUint120, maxUint128, maxUint136, maxUint144, maxUint152, maxUint160, maxUint168, maxUint176, maxUint184, maxUint192, maxUint200, maxUint208, maxUint216, maxUint224, maxUint232, maxUint240, maxUint248, maxUint256;
885
2062
  var init_number = __esm(() => {
@@ -981,6 +2158,28 @@ var init_number = __esm(() => {
981
2158
  maxUint256 = 2n ** 256n - 1n;
982
2159
  });
983
2160
 
2161
+ // node_modules/viem/_esm/utils/abi/decodeFunctionData.js
2162
+ function decodeFunctionData(parameters) {
2163
+ const { abi, data } = parameters;
2164
+ const signature = slice(data, 0, 4);
2165
+ const description = abi.find((x) => x.type === "function" && signature === toFunctionSelector(formatAbiItem2(x)));
2166
+ if (!description)
2167
+ throw new AbiFunctionSignatureNotFoundError(signature, {
2168
+ docsPath: "/docs/contract/decodeFunctionData"
2169
+ });
2170
+ return {
2171
+ functionName: description.name,
2172
+ args: "inputs" in description && description.inputs && description.inputs.length > 0 ? decodeAbiParameters(description.inputs, slice(data, 4)) : undefined
2173
+ };
2174
+ }
2175
+ var init_decodeFunctionData = __esm(() => {
2176
+ init_abi();
2177
+ init_slice();
2178
+ init_toFunctionSelector();
2179
+ init_decodeAbiParameters();
2180
+ init_formatAbiItem2();
2181
+ });
2182
+
984
2183
  // node:buffer
985
2184
  var exports_buffer2 = {};
986
2185
  __export(exports_buffer2, {
@@ -15271,10 +16470,10 @@ function stylizeNoColor(str, styleType) {
15271
16470
  return str;
15272
16471
  }
15273
16472
  function arrayToHash(array) {
15274
- var hash = {};
16473
+ var hash2 = {};
15275
16474
  return array.forEach(function(val, idx) {
15276
- hash[val] = true;
15277
- }), hash;
16475
+ hash2[val] = true;
16476
+ }), hash2;
15278
16477
  }
15279
16478
  function formatValue(ctx, value, recurseTimes) {
15280
16479
  if (ctx.customInspect && value && isFunction(value.inspect) && value.inspect !== inspect2 && !(value.constructor && value.constructor.prototype === value)) {
@@ -23271,10 +24470,10 @@ var init_crypto = __esm(() => {
23271
24470
  });
23272
24471
  require_hmac = __commonJS2((exports2, module2) => {
23273
24472
  var utils = require_utils32(), assert = require_minimalistic_assert2();
23274
- function Hmac(hash, key, enc) {
24473
+ function Hmac(hash2, key, enc) {
23275
24474
  if (!(this instanceof Hmac))
23276
- return new Hmac(hash, key, enc);
23277
- this.Hash = hash, this.blockSize = hash.blockSize / 8, this.outSize = hash.outSize / 8, this.inner = null, this.outer = null, this._init(utils.toArray(key, enc));
24475
+ return new Hmac(hash2, key, enc);
24476
+ this.Hash = hash2, this.blockSize = hash2.blockSize / 8, this.outSize = hash2.outSize / 8, this.inner = null, this.outer = null, this._init(utils.toArray(key, enc));
23278
24477
  }
23279
24478
  module2.exports = Hmac;
23280
24479
  Hmac.prototype._init = function init(key) {
@@ -23298,24 +24497,24 @@ var init_crypto = __esm(() => {
23298
24497
  };
23299
24498
  });
23300
24499
  require_hash = __commonJS2((exports2) => {
23301
- var hash = exports2;
23302
- hash.utils = require_utils32();
23303
- hash.common = require_common();
23304
- hash.sha = require_sha();
23305
- hash.ripemd = require_ripemd();
23306
- hash.hmac = require_hmac();
23307
- hash.sha1 = hash.sha.sha1;
23308
- hash.sha256 = hash.sha.sha256;
23309
- hash.sha224 = hash.sha.sha224;
23310
- hash.sha384 = hash.sha.sha384;
23311
- hash.sha512 = hash.sha.sha512;
23312
- hash.ripemd160 = hash.ripemd.ripemd160;
24500
+ var hash2 = exports2;
24501
+ hash2.utils = require_utils32();
24502
+ hash2.common = require_common();
24503
+ hash2.sha = require_sha();
24504
+ hash2.ripemd = require_ripemd();
24505
+ hash2.hmac = require_hmac();
24506
+ hash2.sha1 = hash2.sha.sha1;
24507
+ hash2.sha256 = hash2.sha.sha256;
24508
+ hash2.sha224 = hash2.sha.sha224;
24509
+ hash2.sha384 = hash2.sha.sha384;
24510
+ hash2.sha512 = hash2.sha.sha512;
24511
+ hash2.ripemd160 = hash2.ripemd.ripemd160;
23313
24512
  });
23314
24513
  require_secp256k1 = __commonJS2((exports2, module2) => {
23315
24514
  module2.exports = { doubles: { step: 4, points: [["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a", "f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"], ["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508", "11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"], ["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739", "d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"], ["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640", "4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"], ["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c", "4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"], ["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda", "96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"], ["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa", "5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"], ["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0", "cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"], ["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d", "9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"], ["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d", "e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"], ["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1", "9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"], ["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0", "5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"], ["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047", "10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"], ["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862", "283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"], ["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7", "7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"], ["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd", "56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"], ["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83", "7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"], ["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a", "53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"], ["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8", "bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"], ["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d", "4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"], ["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725", "7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"], ["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754", "4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"], ["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c", "17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"], ["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6", "6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"], ["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39", "c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"], ["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891", "893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"], ["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b", "febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"], ["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03", "2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"], ["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d", "eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"], ["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070", "7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"], ["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4", "e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"], ["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da", "662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"], ["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11", "1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"], ["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e", "efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"], ["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41", "2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"], ["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef", "67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"], ["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8", "db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"], ["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d", "648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"], ["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96", "35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"], ["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd", "ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"], ["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5", "9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"], ["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266", "40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"], ["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71", "34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"], ["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac", "c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"], ["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751", "1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"], ["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e", "493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"], ["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241", "c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"], ["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3", "be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"], ["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f", "4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"], ["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19", "aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"], ["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be", "b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"], ["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9", "6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"], ["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2", "8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"], ["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13", "7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"], ["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c", "ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"], ["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba", "2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"], ["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151", "e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"], ["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073", "d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"], ["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458", "38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"], ["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b", "69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"], ["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366", "d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"], ["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa", "40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"], ["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0", "620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"], ["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787", "7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"], ["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e", "ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]] }, naf: { wnd: 7, points: [["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9", "388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"], ["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4", "d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"], ["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc", "6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"], ["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe", "cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"], ["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb", "d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"], ["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8", "ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"], ["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e", "581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"], ["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34", "4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"], ["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c", "85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"], ["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5", "321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"], ["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f", "2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"], ["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714", "73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"], ["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729", "a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"], ["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db", "2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"], ["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4", "e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"], ["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5", "b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"], ["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479", "2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"], ["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d", "80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"], ["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f", "1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"], ["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb", "d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"], ["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9", "eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"], ["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963", "758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"], ["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74", "958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"], ["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530", "e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"], ["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b", "5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"], ["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247", "cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"], ["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1", "cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"], ["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120", "4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"], ["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435", "91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"], ["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18", "673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"], ["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8", "59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"], ["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb", "3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"], ["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f", "55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"], ["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143", "efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"], ["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba", "e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"], ["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45", "f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"], ["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a", "744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"], ["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e", "c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"], ["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8", "e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"], ["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c", "30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"], ["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519", "e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"], ["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab", "100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"], ["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca", "ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"], ["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf", "8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"], ["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610", "68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"], ["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4", "f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"], ["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c", "d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"], ["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940", "edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"], ["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980", "a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"], ["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3", "66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"], ["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf", "9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"], ["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63", "4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"], ["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448", "fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"], ["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf", "5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"], ["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5", "8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"], ["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6", "8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"], ["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5", "5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"], ["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99", "f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"], ["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51", "f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"], ["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5", "42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"], ["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5", "204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"], ["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997", "4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"], ["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881", "73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"], ["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5", "39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"], ["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66", "d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"], ["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726", "ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"], ["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede", "6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"], ["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94", "60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"], ["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31", "3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"], ["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51", "b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"], ["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252", "ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"], ["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5", "cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"], ["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b", "6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"], ["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4", "322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"], ["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f", "6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"], ["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889", "2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"], ["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246", "b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"], ["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984", "998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"], ["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a", "b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"], ["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030", "bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"], ["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197", "6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"], ["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593", "c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"], ["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef", "21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"], ["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38", "60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"], ["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a", "49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"], ["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111", "5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"], ["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502", "7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"], ["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea", "be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"], ["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26", "8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"], ["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986", "39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"], ["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e", "62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"], ["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4", "25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"], ["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda", "ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"], ["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859", "cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"], ["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f", "f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"], ["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c", "6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"], ["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942", "fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"], ["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a", "1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"], ["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80", "5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"], ["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d", "438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"], ["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1", "cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"], ["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63", "c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"], ["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352", "6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"], ["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193", "ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"], ["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00", "9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"], ["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58", "ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"], ["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7", "d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"], ["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8", "c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"], ["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e", "67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"], ["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d", "cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"], ["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b", "299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"], ["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f", "f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"], ["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6", "462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"], ["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297", "62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"], ["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a", "7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"], ["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c", "ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"], ["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52", "4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"], ["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb", "bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"], ["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065", "bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"], ["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917", "603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"], ["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9", "cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"], ["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3", "553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"], ["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57", "712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"], ["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66", "ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"], ["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8", "9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"], ["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721", "9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"], ["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180", "4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]] } };
23316
24515
  });
23317
24516
  require_curves = __commonJS2((exports2) => {
23318
- var curves = exports2, hash = require_hash(), curve = require_curve(), utils = require_utils22(), assert = utils.assert;
24517
+ var curves = exports2, hash2 = require_hash(), curve = require_curve(), utils = require_utils22(), assert = utils.assert;
23319
24518
  function PresetCurve(options) {
23320
24519
  if (options.type === "short")
23321
24520
  this.curve = new curve.short(options);
@@ -23332,23 +24531,23 @@ var init_crypto = __esm(() => {
23332
24531
  return Object.defineProperty(curves, name, { configurable: true, enumerable: true, value: curve2 }), curve2;
23333
24532
  } });
23334
24533
  }
23335
- defineCurve("p192", { type: "short", prime: "p192", p: "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff", a: "ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc", b: "64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1", n: "ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831", hash: hash.sha256, gRed: false, g: ["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012", "07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"] });
23336
- defineCurve("p224", { type: "short", prime: "p224", p: "ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001", a: "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe", b: "b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4", n: "ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d", hash: hash.sha256, gRed: false, g: ["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21", "bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"] });
23337
- defineCurve("p256", { type: "short", prime: null, p: "ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff", a: "ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc", b: "5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b", n: "ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551", hash: hash.sha256, gRed: false, g: ["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296", "4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"] });
23338
- defineCurve("p384", { type: "short", prime: null, p: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff", a: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc", b: "b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef", n: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973", hash: hash.sha384, gRed: false, g: ["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7", "3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"] });
23339
- defineCurve("p521", { type: "short", prime: null, p: "000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff", a: "000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc", b: "00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00", n: "000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409", hash: hash.sha512, gRed: false, g: ["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66", "00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"] });
23340
- defineCurve("curve25519", { type: "mont", prime: "p25519", p: "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed", a: "76d06", b: "1", n: "1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed", hash: hash.sha256, gRed: false, g: ["9"] });
23341
- defineCurve("ed25519", { type: "edwards", prime: "p25519", p: "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed", a: "-1", c: "1", d: "52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3", n: "1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed", hash: hash.sha256, gRed: false, g: ["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a", "6666666666666666666666666666666666666666666666666666666666666658"] });
24534
+ defineCurve("p192", { type: "short", prime: "p192", p: "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff", a: "ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc", b: "64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1", n: "ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831", hash: hash2.sha256, gRed: false, g: ["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012", "07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"] });
24535
+ defineCurve("p224", { type: "short", prime: "p224", p: "ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001", a: "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe", b: "b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4", n: "ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d", hash: hash2.sha256, gRed: false, g: ["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21", "bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"] });
24536
+ defineCurve("p256", { type: "short", prime: null, p: "ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff", a: "ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc", b: "5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b", n: "ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551", hash: hash2.sha256, gRed: false, g: ["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296", "4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"] });
24537
+ defineCurve("p384", { type: "short", prime: null, p: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff", a: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc", b: "b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef", n: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973", hash: hash2.sha384, gRed: false, g: ["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7", "3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"] });
24538
+ defineCurve("p521", { type: "short", prime: null, p: "000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff", a: "000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc", b: "00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00", n: "000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409", hash: hash2.sha512, gRed: false, g: ["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66", "00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"] });
24539
+ defineCurve("curve25519", { type: "mont", prime: "p25519", p: "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed", a: "76d06", b: "1", n: "1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed", hash: hash2.sha256, gRed: false, g: ["9"] });
24540
+ defineCurve("ed25519", { type: "edwards", prime: "p25519", p: "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed", a: "-1", c: "1", d: "52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3", n: "1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed", hash: hash2.sha256, gRed: false, g: ["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a", "6666666666666666666666666666666666666666666666666666666666666658"] });
23342
24541
  var pre;
23343
24542
  try {
23344
24543
  pre = require_secp256k1();
23345
24544
  } catch (e) {
23346
24545
  pre = undefined;
23347
24546
  }
23348
- defineCurve("secp256k1", { type: "short", prime: "k256", p: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f", a: "0", b: "7", n: "ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141", h: "1", hash: hash.sha256, beta: "7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee", lambda: "5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72", basis: [{ a: "3086d221a7d46bcde86c90e49284eb15", b: "-e4437ed6010e88286f547fa90abfe4c3" }, { a: "114ca50f7a8e2f3f657c1108d9d44cfd8", b: "3086d221a7d46bcde86c90e49284eb15" }], gRed: false, g: ["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798", "483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8", pre] });
24547
+ defineCurve("secp256k1", { type: "short", prime: "k256", p: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f", a: "0", b: "7", n: "ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141", h: "1", hash: hash2.sha256, beta: "7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee", lambda: "5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72", basis: [{ a: "3086d221a7d46bcde86c90e49284eb15", b: "-e4437ed6010e88286f547fa90abfe4c3" }, { a: "114ca50f7a8e2f3f657c1108d9d44cfd8", b: "3086d221a7d46bcde86c90e49284eb15" }], gRed: false, g: ["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798", "483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8", pre] });
23349
24548
  });
23350
24549
  require_hmac_drbg = __commonJS2((exports2, module2) => {
23351
- var hash = require_hash(), utils = require_utils3(), assert = require_minimalistic_assert2();
24550
+ var hash2 = require_hash(), utils = require_utils3(), assert = require_minimalistic_assert2();
23352
24551
  function HmacDRBG(options) {
23353
24552
  if (!(this instanceof HmacDRBG))
23354
24553
  return new HmacDRBG(options);
@@ -23365,7 +24564,7 @@ var init_crypto = __esm(() => {
23365
24564
  this._update(seed), this._reseed = 1, this.reseedInterval = 281474976710656;
23366
24565
  };
23367
24566
  HmacDRBG.prototype._hmac = function hmac() {
23368
- return new hash.hmac(this.hash, this.K);
24567
+ return new hash2.hmac(this.hash, this.K);
23369
24568
  };
23370
24569
  HmacDRBG.prototype._update = function update(seed) {
23371
24570
  var kmac = this._hmac().update(this.V).update([0]);
@@ -23735,7 +24934,7 @@ var init_crypto = __esm(() => {
23735
24934
  return this.eddsa.g.mul(this.priv());
23736
24935
  });
23737
24936
  cachedProperty(KeyPair, "privBytes", function privBytes() {
23738
- var eddsa = this.eddsa, hash = this.hash(), lastIx = eddsa.encodingLength - 1, a = hash.slice(0, eddsa.encodingLength);
24937
+ var eddsa = this.eddsa, hash2 = this.hash(), lastIx = eddsa.encodingLength - 1, a = hash2.slice(0, eddsa.encodingLength);
23739
24938
  return a[0] &= 248, a[lastIx] &= 127, a[lastIx] |= 64, a;
23740
24939
  });
23741
24940
  cachedProperty(KeyPair, "priv", function priv() {
@@ -23795,11 +24994,11 @@ var init_crypto = __esm(() => {
23795
24994
  module2.exports = Signature;
23796
24995
  });
23797
24996
  require_eddsa = __commonJS2((exports2, module2) => {
23798
- var hash = require_hash(), curves = require_curves(), utils = require_utils22(), assert = utils.assert, parseBytes = utils.parseBytes, KeyPair = require_key2(), Signature = require_signature2();
24997
+ var hash2 = require_hash(), curves = require_curves(), utils = require_utils22(), assert = utils.assert, parseBytes = utils.parseBytes, KeyPair = require_key2(), Signature = require_signature2();
23799
24998
  function EDDSA(curve) {
23800
24999
  if (assert(curve === "ed25519", "only tested with ed25519 so far"), !(this instanceof EDDSA))
23801
25000
  return new EDDSA(curve);
23802
- curve = curves[curve].curve, this.curve = curve, this.g = curve.g, this.g.precompute(curve.n.bitLength() + 1), this.pointClass = curve.point().constructor, this.encodingLength = Math.ceil(curve.n.bitLength() / 8), this.hash = hash.sha512;
25001
+ curve = curves[curve].curve, this.curve = curve, this.g = curve.g, this.g.precompute(curve.n.bitLength() + 1), this.pointClass = curve.point().constructor, this.encodingLength = Math.ceil(curve.n.bitLength() / 8), this.hash = hash2.sha512;
23803
25002
  }
23804
25003
  module2.exports = EDDSA;
23805
25004
  EDDSA.prototype.sign = function sign(message, secret) {
@@ -23814,10 +25013,10 @@ var init_crypto = __esm(() => {
23814
25013
  return RplusAh.eq(SG);
23815
25014
  };
23816
25015
  EDDSA.prototype.hashInt = function hashInt() {
23817
- var hash2 = this.hash();
25016
+ var hash22 = this.hash();
23818
25017
  for (var i2 = 0;i2 < arguments.length; i2++)
23819
- hash2.update(arguments[i2]);
23820
- return utils.intFromLE(hash2.digest()).umod(this.curve.n);
25018
+ hash22.update(arguments[i2]);
25019
+ return utils.intFromLE(hash22.digest()).umod(this.curve.n);
23821
25020
  };
23822
25021
  EDDSA.prototype.keyFromPublic = function keyFromPublic(pub) {
23823
25022
  return KeyPair.fromPublic(this, pub);
@@ -27944,10 +29143,10 @@ var init_crypto = __esm(() => {
27944
29143
  }
27945
29144
  var keyLen = keyBits / 8, key = Buffer22.alloc(keyLen), iv = Buffer22.alloc(ivLen || 0), tmp = Buffer22.alloc(0);
27946
29145
  while (keyLen > 0 || ivLen > 0) {
27947
- var hash = new MD5;
27948
- if (hash.update(tmp), hash.update(password), salt)
27949
- hash.update(salt);
27950
- tmp = hash.digest();
29146
+ var hash2 = new MD5;
29147
+ if (hash2.update(tmp), hash2.update(password), salt)
29148
+ hash2.update(salt);
29149
+ tmp = hash2.digest();
27951
29150
  var used = 0;
27952
29151
  if (keyLen > 0) {
27953
29152
  var keyStart = key.length - keyLen;
@@ -34245,12 +35444,12 @@ var require_ripemd2 = __commonJS((exports2) => {
34245
35444
  var require_hmac2 = __commonJS((exports2, module2) => {
34246
35445
  var utils = require_utils4();
34247
35446
  var assert = require_minimalistic_assert();
34248
- function Hmac(hash, key, enc) {
35447
+ function Hmac(hash2, key, enc) {
34249
35448
  if (!(this instanceof Hmac))
34250
- return new Hmac(hash, key, enc);
34251
- this.Hash = hash;
34252
- this.blockSize = hash.blockSize / 8;
34253
- this.outSize = hash.outSize / 8;
35449
+ return new Hmac(hash2, key, enc);
35450
+ this.Hash = hash2;
35451
+ this.blockSize = hash2.blockSize / 8;
35452
+ this.outSize = hash2.outSize / 8;
34254
35453
  this.inner = null;
34255
35454
  this.outer = null;
34256
35455
  this._init(utils.toArray(key, enc));
@@ -34281,18 +35480,18 @@ var require_hmac2 = __commonJS((exports2, module2) => {
34281
35480
 
34282
35481
  // node_modules/hash.js/lib/hash.js
34283
35482
  var require_hash2 = __commonJS((exports2) => {
34284
- var hash = exports2;
34285
- hash.utils = require_utils4();
34286
- hash.common = require_common3();
34287
- hash.sha = require_sha2();
34288
- hash.ripemd = require_ripemd2();
34289
- hash.hmac = require_hmac2();
34290
- hash.sha1 = hash.sha.sha1;
34291
- hash.sha256 = hash.sha.sha256;
34292
- hash.sha224 = hash.sha.sha224;
34293
- hash.sha384 = hash.sha.sha384;
34294
- hash.sha512 = hash.sha.sha512;
34295
- hash.ripemd160 = hash.ripemd.ripemd160;
35483
+ var hash2 = exports2;
35484
+ hash2.utils = require_utils4();
35485
+ hash2.common = require_common3();
35486
+ hash2.sha = require_sha2();
35487
+ hash2.ripemd = require_ripemd2();
35488
+ hash2.hmac = require_hmac2();
35489
+ hash2.sha1 = hash2.sha.sha1;
35490
+ hash2.sha256 = hash2.sha.sha256;
35491
+ hash2.sha224 = hash2.sha.sha224;
35492
+ hash2.sha384 = hash2.sha.sha384;
35493
+ hash2.sha512 = hash2.sha.sha512;
35494
+ hash2.ripemd160 = hash2.ripemd.ripemd160;
34296
35495
  });
34297
35496
 
34298
35497
  // node_modules/elliptic/lib/elliptic/precomputed/secp256k1.js
@@ -35082,7 +36281,7 @@ var require_secp256k12 = __commonJS((exports2, module2) => {
35082
36281
  // node_modules/elliptic/lib/elliptic/curves.js
35083
36282
  var require_curves2 = __commonJS((exports2) => {
35084
36283
  var curves = exports2;
35085
- var hash = require_hash2();
36284
+ var hash2 = require_hash2();
35086
36285
  var curve = require_curve2();
35087
36286
  var utils = require_utils2();
35088
36287
  var assert = utils.assert;
@@ -35122,7 +36321,7 @@ var require_curves2 = __commonJS((exports2) => {
35122
36321
  a: "ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",
35123
36322
  b: "64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",
35124
36323
  n: "ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",
35125
- hash: hash.sha256,
36324
+ hash: hash2.sha256,
35126
36325
  gRed: false,
35127
36326
  g: [
35128
36327
  "188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012",
@@ -35136,7 +36335,7 @@ var require_curves2 = __commonJS((exports2) => {
35136
36335
  a: "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",
35137
36336
  b: "b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",
35138
36337
  n: "ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",
35139
- hash: hash.sha256,
36338
+ hash: hash2.sha256,
35140
36339
  gRed: false,
35141
36340
  g: [
35142
36341
  "b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21",
@@ -35150,7 +36349,7 @@ var require_curves2 = __commonJS((exports2) => {
35150
36349
  a: "ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",
35151
36350
  b: "5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",
35152
36351
  n: "ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",
35153
- hash: hash.sha256,
36352
+ hash: hash2.sha256,
35154
36353
  gRed: false,
35155
36354
  g: [
35156
36355
  "6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296",
@@ -35164,7 +36363,7 @@ var require_curves2 = __commonJS((exports2) => {
35164
36363
  a: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff " + "fffffffe ffffffff 00000000 00000000 fffffffc",
35165
36364
  b: "b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f " + "5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",
35166
36365
  n: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 " + "f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",
35167
- hash: hash.sha384,
36366
+ hash: hash2.sha384,
35168
36367
  gRed: false,
35169
36368
  g: [
35170
36369
  "aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 " + "5502f25d bf55296c 3a545e38 72760ab7",
@@ -35178,7 +36377,7 @@ var require_curves2 = __commonJS((exports2) => {
35178
36377
  a: "000001ff ffffffff ffffffff ffffffff ffffffff ffffffff " + "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff " + "ffffffff ffffffff ffffffff ffffffff fffffffc",
35179
36378
  b: "00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b " + "99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd " + "3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",
35180
36379
  n: "000001ff ffffffff ffffffff ffffffff ffffffff ffffffff " + "ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 " + "f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",
35181
- hash: hash.sha512,
36380
+ hash: hash2.sha512,
35182
36381
  gRed: false,
35183
36382
  g: [
35184
36383
  "000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 " + "053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 " + "a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66",
@@ -35192,7 +36391,7 @@ var require_curves2 = __commonJS((exports2) => {
35192
36391
  a: "76d06",
35193
36392
  b: "1",
35194
36393
  n: "1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",
35195
- hash: hash.sha256,
36394
+ hash: hash2.sha256,
35196
36395
  gRed: false,
35197
36396
  g: [
35198
36397
  "9"
@@ -35206,7 +36405,7 @@ var require_curves2 = __commonJS((exports2) => {
35206
36405
  c: "1",
35207
36406
  d: "52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",
35208
36407
  n: "1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",
35209
- hash: hash.sha256,
36408
+ hash: hash2.sha256,
35210
36409
  gRed: false,
35211
36410
  g: [
35212
36411
  "216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a",
@@ -35227,7 +36426,7 @@ var require_curves2 = __commonJS((exports2) => {
35227
36426
  b: "7",
35228
36427
  n: "ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",
35229
36428
  h: "1",
35230
- hash: hash.sha256,
36429
+ hash: hash2.sha256,
35231
36430
  beta: "7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",
35232
36431
  lambda: "5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",
35233
36432
  basis: [
@@ -35251,7 +36450,7 @@ var require_curves2 = __commonJS((exports2) => {
35251
36450
 
35252
36451
  // node_modules/hmac-drbg/lib/hmac-drbg.js
35253
36452
  var require_hmac_drbg2 = __commonJS((exports2, module2) => {
35254
- var hash = require_hash2();
36453
+ var hash2 = require_hash2();
35255
36454
  var utils = require_utils();
35256
36455
  var assert = require_minimalistic_assert();
35257
36456
  function HmacDRBG(options) {
@@ -35285,7 +36484,7 @@ var require_hmac_drbg2 = __commonJS((exports2, module2) => {
35285
36484
  this.reseedInterval = 281474976710656;
35286
36485
  };
35287
36486
  HmacDRBG.prototype._hmac = function hmac() {
35288
- return new hash.hmac(this.hash, this.K);
36487
+ return new hash2.hmac(this.hash, this.K);
35289
36488
  };
35290
36489
  HmacDRBG.prototype._update = function update(seed) {
35291
36490
  var kmac = this._hmac().update(this.V).update([0]);
@@ -35779,9 +36978,9 @@ var require_key5 = __commonJS((exports2, module2) => {
35779
36978
  });
35780
36979
  cachedProperty(KeyPair, "privBytes", function privBytes() {
35781
36980
  var eddsa = this.eddsa;
35782
- var hash = this.hash();
36981
+ var hash2 = this.hash();
35783
36982
  var lastIx = eddsa.encodingLength - 1;
35784
- var a = hash.slice(0, eddsa.encodingLength);
36983
+ var a = hash2.slice(0, eddsa.encodingLength);
35785
36984
  a[0] &= 248;
35786
36985
  a[lastIx] &= 127;
35787
36986
  a[lastIx] |= 64;
@@ -35861,7 +37060,7 @@ var require_signature5 = __commonJS((exports2, module2) => {
35861
37060
 
35862
37061
  // node_modules/elliptic/lib/elliptic/eddsa/index.js
35863
37062
  var require_eddsa2 = __commonJS((exports2, module2) => {
35864
- var hash = require_hash2();
37063
+ var hash2 = require_hash2();
35865
37064
  var curves = require_curves2();
35866
37065
  var utils = require_utils2();
35867
37066
  var assert = utils.assert;
@@ -35878,7 +37077,7 @@ var require_eddsa2 = __commonJS((exports2, module2) => {
35878
37077
  this.g.precompute(curve.n.bitLength() + 1);
35879
37078
  this.pointClass = curve.point().constructor;
35880
37079
  this.encodingLength = Math.ceil(curve.n.bitLength() / 8);
35881
- this.hash = hash.sha512;
37080
+ this.hash = hash2.sha512;
35882
37081
  }
35883
37082
  module2.exports = EDDSA;
35884
37083
  EDDSA.prototype.sign = function sign(message, secret) {
@@ -35901,10 +37100,10 @@ var require_eddsa2 = __commonJS((exports2, module2) => {
35901
37100
  return RplusAh.eq(SG);
35902
37101
  };
35903
37102
  EDDSA.prototype.hashInt = function hashInt() {
35904
- var hash2 = this.hash();
37103
+ var hash3 = this.hash();
35905
37104
  for (var i2 = 0;i2 < arguments.length; i2++)
35906
- hash2.update(arguments[i2]);
35907
- return utils.intFromLE(hash2.digest()).umod(this.curve.n);
37105
+ hash3.update(arguments[i2]);
37106
+ return utils.intFromLE(hash3.digest()).umod(this.curve.n);
35908
37107
  };
35909
37108
  EDDSA.prototype.keyFromPublic = function keyFromPublic(pub) {
35910
37109
  return KeyPair.fromPublic(this, pub);
@@ -43623,16 +44822,16 @@ var require_lib26 = __commonJS((exports2) => {
43623
44822
  exports2.BlockForkEvent = BlockForkEvent;
43624
44823
  var TransactionForkEvent = function(_super) {
43625
44824
  __extends(TransactionForkEvent2, _super);
43626
- function TransactionForkEvent2(hash, expiry) {
44825
+ function TransactionForkEvent2(hash2, expiry) {
43627
44826
  var _this = this;
43628
- if (!(0, bytes_1.isHexString)(hash, 32)) {
43629
- logger25.throwArgumentError("invalid transaction hash", "hash", hash);
44827
+ if (!(0, bytes_1.isHexString)(hash2, 32)) {
44828
+ logger25.throwArgumentError("invalid transaction hash", "hash", hash2);
43630
44829
  }
43631
44830
  _this = _super.call(this, {
43632
44831
  _isForkEvent: true,
43633
44832
  _isTransactionForkEvent: true,
43634
44833
  expiry: expiry || 0,
43635
- hash
44834
+ hash: hash2
43636
44835
  }) || this;
43637
44836
  return _this;
43638
44837
  }
@@ -44959,6 +46158,7 @@ __export(exports_src, {
44959
46158
  sendOFTTrx: () => sendOFTTrx,
44960
46159
  safeTransferFromWithDataErc721Trx: () => safeTransferFromWithDataErc721Trx,
44961
46160
  safeTransferFromErc721Trx: () => safeTransferFromErc721Trx,
46161
+ rewrapRouteSingleAsSafeRouteSingle: () => rewrapRouteSingleAsSafeRouteSingle,
44962
46162
  revokeFromVaultWhitelistTrx: () => revokeFromVaultWhitelistTrx,
44963
46163
  requestRedeemSyrupVaultTrx: () => requestRedeemSyrupVaultTrx,
44964
46164
  requestRedeemOriginArmTrx: () => requestRedeemOriginArmTrx,
@@ -44992,12 +46192,14 @@ __export(exports_src, {
44992
46192
  getWormholeChainId: () => getWormholeChainId,
44993
46193
  getGnosisTrxSimulationResult: () => getGnosisTrxSimulationResult,
44994
46194
  getExecutorApiUrl: () => getExecutorApiUrl,
46195
+ getCCIPChainSelector: () => getCCIPChainSelector,
44995
46196
  getAxelarGmpApiUrl: () => getAxelarGmpApiUrl,
44996
46197
  getAddressOrThrow: () => getAddressOrThrow,
44997
46198
  getAddressNameOrThrow: () => getAddressNameOrThrow,
44998
46199
  fetchWormholeVAA: () => fetchWormholeVAA,
44999
46200
  fetchExecutorTxStatus: () => fetchExecutorTxStatus,
45000
46201
  fetchExecutorQuote: () => fetchExecutorQuote,
46202
+ fetchEnsoRoute: () => fetchEnsoRoute,
45001
46203
  fetchAxelarGmpStatus: () => fetchAxelarGmpStatus,
45002
46204
  executeTrx: () => executeTrx,
45003
46205
  executeNextTx: () => executeNextTx,
@@ -45006,7 +46208,10 @@ __export(exports_src, {
45006
46208
  execWithRoleReturnDataTrx: () => execWithRoleReturnDataTrx,
45007
46209
  execTransactionWithDelay: () => execTransactionWithDelay,
45008
46210
  execTransactionFromModuleTrx: () => execTransactionFromModuleTrx,
46211
+ ensoSafeRouteSingleTrx: () => ensoSafeRouteSingleTrx,
46212
+ ensoRouterAbi: () => enso_router_abi_default,
45009
46213
  encodeTransceiverInstructions: () => encodeTransceiverInstructions,
46214
+ encodeEnsoToken: () => encodeEnsoToken,
45010
46215
  depositToLendleTrx: () => depositToLendleTrx,
45011
46216
  depositSyrupVaultTrx: () => depositSyrupVaultTrx,
45012
46217
  depositOriginArmWethTrx: () => depositOriginArmWethTrx,
@@ -45025,11 +46230,13 @@ __export(exports_src, {
45025
46230
  closeVaultTrx: () => closeVaultTrx,
45026
46231
  claimRedeemOriginArmTrx: () => claimRedeemOriginArmTrx,
45027
46232
  claimFundingFeesTrx: () => claimFundingFeesTrx,
46233
+ ccipSendTrx: () => ccipSendTrx,
45028
46234
  cancelOrderTrx: () => cancelOrderTrx,
45029
46235
  calculateDeterministicVaultAddress: () => calculateDeterministicVaultAddress,
45030
46236
  buildWormholeTransferArgsFromAvatar: () => buildWormholeTransferArgsFromAvatar,
45031
46237
  buildRelayInstructions: () => buildRelayInstructions,
45032
46238
  buildMonadDefaultTransceiverInstructions: () => buildMonadDefaultTransceiverInstructions,
46239
+ buildCCIPMessage: () => buildCCIPMessage,
45033
46240
  borrowMorphoBlueTrx: () => borrowMorphoBlueTrx,
45034
46241
  borrowFromLendleTrx: () => borrowFromLendleTrx,
45035
46242
  borrowFromAaveV3Trx: () => borrowFromAaveV3Trx,
@@ -45088,6 +46295,7 @@ __export(exports_src, {
45088
46295
  UniswapV3DecreaseLiquidityCalldata: () => UniswapV3DecreaseLiquidityCalldata,
45089
46296
  UniswapV3CollectFeesCalldata: () => UniswapV3CollectFeesCalldata,
45090
46297
  UniswapV3BurnPositionCalldata: () => UniswapV3BurnPositionCalldata,
46298
+ UnexpectedEnsoSelectorError: () => UnexpectedEnsoSelectorError,
45091
46299
  USDT_ARB: () => USDT_ARB,
45092
46300
  USDCe_ARB: () => USDCe_ARB,
45093
46301
  USDC_ARB: () => USDC_ARB,
@@ -45155,7 +46363,11 @@ __export(exports_src, {
45155
46363
  FluidLiteAbi: () => fluid_lite_abi_default,
45156
46364
  Erc721Abi: () => erc721_abi_default2,
45157
46365
  Erc20Abi: () => erc20_abi_default,
46366
+ EnsoUnexpectedRouterError: () => EnsoUnexpectedRouterError,
46367
+ EnsoTokenType: () => EnsoTokenType,
46368
+ EnsoRouteApiError: () => EnsoRouteApiError,
45158
46369
  ERC721: () => erc721_abi_default,
46370
+ ENSO_API_BASE: () => ENSO_API_BASE,
45159
46371
  DepositToLendleCalldata: () => DepositToLendleCalldata,
45160
46372
  DepositSyrupVaultCalldata: () => DepositSyrupVaultCalldata,
45161
46373
  DepositOriginArmWethCalldata: () => DepositOriginArmWethCalldata,
@@ -45180,6 +46392,11 @@ __export(exports_src, {
45180
46392
  CctpTokenMessengerV2Abi: () => token_messenger_v2_abi_default,
45181
46393
  CctpMessageTransmitterV2Abi: () => message_transmitter_v2_abi_default,
45182
46394
  CancelOrderCalldata: () => CancelOrderCalldata,
46395
+ CCIP_CHAIN_SELECTORS: () => CCIP_CHAIN_SELECTORS,
46396
+ CCIPSendCalldata: () => CCIPSendCalldata,
46397
+ CCIPRouterAbi: () => ccip_router_abi_default,
46398
+ CCIPGetFeeTrx: () => CCIPGetFeeTrx,
46399
+ CCIPGetFeeCalldata: () => CCIPGetFeeCalldata,
45183
46400
  CALL_OP_CODE: () => CALL_OP_CODE,
45184
46401
  BorrowMorphoBlueCalldata: () => BorrowMorphoBlueCalldata,
45185
46402
  BorrowFromLendleCalldata: () => BorrowFromLendleCalldata,
@@ -45588,6 +46805,9 @@ var erc721_abi_default = [
45588
46805
  var zeroAddress = "0x0000000000000000000000000000000000000000";
45589
46806
  // node_modules/viem/_esm/index.js
45590
46807
  init_number();
46808
+ init_decodeFunctionData();
46809
+ init_encodeAbiParameters();
46810
+ init_encodeFunctionData();
45591
46811
  init_toBytes();
45592
46812
  init_toHex();
45593
46813
  init_fromBytes();
@@ -45633,7 +46853,7 @@ __export(exports_ethers, {
45633
46853
  });
45634
46854
 
45635
46855
  // node_modules/@ethersproject/contracts/lib.esm/index.js
45636
- var import_abi = __toESM(require_lib13());
46856
+ var import_abi7 = __toESM(require_lib13());
45637
46857
 
45638
46858
  // node_modules/@ethersproject/bignumber/lib.esm/bignumber.js
45639
46859
  var import_bn = __toESM(require_bn());
@@ -46890,7 +48110,7 @@ class VoidSigner extends Signer {
46890
48110
  }
46891
48111
 
46892
48112
  // node_modules/@ethersproject/contracts/lib.esm/index.js
46893
- var import_address3 = __toESM(require_lib7());
48113
+ var import_address4 = __toESM(require_lib7());
46894
48114
  var import_bytes3 = __toESM(require_lib2());
46895
48115
  var import_properties3 = __toESM(require_lib4());
46896
48116
  var import_transactions = __toESM(require_lib15());
@@ -46950,7 +48170,7 @@ function resolveName(resolver, nameOrPromise) {
46950
48170
  logger5.throwArgumentError("invalid address or ENS name", "name", name);
46951
48171
  }
46952
48172
  try {
46953
- return import_address3.getAddress(name);
48173
+ return import_address4.getAddress(name);
46954
48174
  } catch (error) {}
46955
48175
  if (!resolver) {
46956
48176
  logger5.throwError("a provider or signer is needed to resolve ENS names", Logger.errors.UNSUPPORTED_OPERATION, {
@@ -47002,7 +48222,7 @@ function populateTransaction(contract, fragment, args) {
47002
48222
  override: resolveName(contract.signer, overrides.from),
47003
48223
  signer: contract.signer.getAddress()
47004
48224
  }).then((check) => __awaiter3(this, undefined, undefined, function* () {
47005
- if (import_address3.getAddress(check.signer) !== check.override) {
48225
+ if (import_address4.getAddress(check.signer) !== check.override) {
47006
48226
  logger5.throwError("Contract with a Signer cannot override from", Logger.errors.UNSUPPORTED_OPERATION, {
47007
48227
  operation: "overrides.from"
47008
48228
  });
@@ -47309,7 +48529,7 @@ class FragmentRunningEvent extends RunningEvent {
47309
48529
  }
47310
48530
  }
47311
48531
  getEmit(event) {
47312
- const errors = import_abi.checkResultErrors(event.args);
48532
+ const errors = import_abi7.checkResultErrors(event.args);
47313
48533
  if (errors.length) {
47314
48534
  throw errors[0].error;
47315
48535
  }
@@ -47393,7 +48613,7 @@ class BaseContract {
47393
48613
  import_properties3.defineReadOnly(this, "resolvedAddress", resolveName(this.provider, addressOrName));
47394
48614
  } else {
47395
48615
  try {
47396
- import_properties3.defineReadOnly(this, "resolvedAddress", Promise.resolve(import_address3.getAddress(addressOrName)));
48616
+ import_properties3.defineReadOnly(this, "resolvedAddress", Promise.resolve(import_address4.getAddress(addressOrName)));
47397
48617
  } catch (error) {
47398
48618
  logger5.throwError("provider is required to use ENS name as contract address", Logger.errors.UNSUPPORTED_OPERATION, {
47399
48619
  operation: "new Contract"
@@ -47460,13 +48680,13 @@ class BaseContract {
47460
48680
  });
47461
48681
  }
47462
48682
  static getContractAddress(transaction) {
47463
- return import_address3.getContractAddress(transaction);
48683
+ return import_address4.getContractAddress(transaction);
47464
48684
  }
47465
48685
  static getInterface(contractInterface) {
47466
- if (import_abi.Interface.isInterface(contractInterface)) {
48686
+ if (import_abi7.Interface.isInterface(contractInterface)) {
47467
48687
  return contractInterface;
47468
48688
  }
47469
- return new import_abi.Interface(contractInterface);
48689
+ return new import_abi7.Interface(contractInterface);
47470
48690
  }
47471
48691
  deployed() {
47472
48692
  return this._deployed();
@@ -47521,7 +48741,7 @@ class BaseContract {
47521
48741
  return new this.constructor(addressOrName, this.interface, this.signer || this.provider);
47522
48742
  }
47523
48743
  static isIndexed(value) {
47524
- return import_abi.Indexed.isIndexed(value);
48744
+ return import_abi7.Indexed.isIndexed(value);
47525
48745
  }
47526
48746
  _normalizeRunningEvent(runningEvent) {
47527
48747
  if (this._runningEvents[runningEvent.tag]) {
@@ -47815,7 +49035,7 @@ class ContractFactory {
47815
49035
  return Contract.getInterface(contractInterface);
47816
49036
  }
47817
49037
  static getContractAddress(tx) {
47818
- return import_address3.getContractAddress(tx);
49038
+ return import_address4.getContractAddress(tx);
47819
49039
  }
47820
49040
  static getContract(address, contractInterface, signer) {
47821
49041
  return new Contract(address, contractInterface, signer);
@@ -47823,11 +49043,11 @@ class ContractFactory {
47823
49043
  }
47824
49044
 
47825
49045
  // node_modules/@ethersproject/wallet/lib.esm/index.js
47826
- var import_address4 = __toESM(require_lib7());
49046
+ var import_address5 = __toESM(require_lib7());
47827
49047
  var import_bytes4 = __toESM(require_lib2());
47828
49048
  var import_hash = __toESM(require_lib12());
47829
49049
  var import_hdnode = __toESM(require_lib20());
47830
- var import_keccak2562 = __toESM(require_lib5());
49050
+ var import_keccak2563 = __toESM(require_lib5());
47831
49051
  var import_properties4 = __toESM(require_lib4());
47832
49052
  var import_random = __toESM(require_lib21());
47833
49053
  var import_signing_key = __toESM(require_lib14());
@@ -47881,7 +49101,7 @@ class Wallet extends Signer {
47881
49101
  const signingKey = new import_signing_key.SigningKey(privateKey.privateKey);
47882
49102
  import_properties4.defineReadOnly(this, "_signingKey", () => signingKey);
47883
49103
  import_properties4.defineReadOnly(this, "address", import_transactions2.computeAddress(this.publicKey));
47884
- if (this.address !== import_address4.getAddress(privateKey.address)) {
49104
+ if (this.address !== import_address5.getAddress(privateKey.address)) {
47885
49105
  logger6.throwArgumentError("privateKey/address mismatch", "privateKey", "[REDACTED]");
47886
49106
  }
47887
49107
  if (hasMnemonic(privateKey)) {
@@ -47940,12 +49160,12 @@ class Wallet extends Signer {
47940
49160
  signTransaction(transaction) {
47941
49161
  return import_properties4.resolveProperties(transaction).then((tx) => {
47942
49162
  if (tx.from != null) {
47943
- if (import_address4.getAddress(tx.from) !== this.address) {
49163
+ if (import_address5.getAddress(tx.from) !== this.address) {
47944
49164
  logger6.throwArgumentError("transaction from address mismatch", "transaction.from", transaction.from);
47945
49165
  }
47946
49166
  delete tx.from;
47947
49167
  }
47948
- const signature = this._signingKey().signDigest(import_keccak2562.keccak256(import_transactions2.serialize(tx)));
49168
+ const signature = this._signingKey().signDigest(import_keccak2563.keccak256(import_transactions2.serialize(tx)));
47949
49169
  return import_transactions2.serialize(tx, signature);
47950
49170
  });
47951
49171
  }
@@ -47987,7 +49207,7 @@ class Wallet extends Signer {
47987
49207
  options = {};
47988
49208
  }
47989
49209
  if (options.extraEntropy) {
47990
- entropy = import_bytes4.arrayify(import_bytes4.hexDataSlice(import_keccak2562.keccak256(import_bytes4.concat([entropy, options.extraEntropy])), 0, 16));
49210
+ entropy = import_bytes4.arrayify(import_bytes4.hexDataSlice(import_keccak2563.keccak256(import_bytes4.concat([entropy, options.extraEntropy])), 0, 16));
47991
49211
  }
47992
49212
  const mnemonic = import_hdnode.entropyToMnemonic(entropy, options.locale);
47993
49213
  return Wallet.fromMnemonic(mnemonic, options.path, options.locale);
@@ -48314,7 +49534,7 @@ var import_bech32 = __toESM(require_bech32());
48314
49534
  var version10 = "providers/5.7.2";
48315
49535
 
48316
49536
  // node_modules/@ethersproject/providers/lib.esm/formatter.js
48317
- var import_address5 = __toESM(require_lib7());
49537
+ var import_address6 = __toESM(require_lib7());
48318
49538
  var import_bytes5 = __toESM(require_lib2());
48319
49539
  var import_properties5 = __toESM(require_lib4());
48320
49540
  var import_transactions3 = __toESM(require_lib15());
@@ -48330,7 +49550,7 @@ class Formatter {
48330
49550
  const bigNumber = this.bigNumber.bind(this);
48331
49551
  const blockTag = this.blockTag.bind(this);
48332
49552
  const data = this.data.bind(this);
48333
- const hash = this.hash.bind(this);
49553
+ const hash2 = this.hash.bind(this);
48334
49554
  const hex = this.hex.bind(this);
48335
49555
  const number = this.number.bind(this);
48336
49556
  const type = this.type.bind(this);
@@ -48338,10 +49558,10 @@ class Formatter {
48338
49558
  return this.data(v, true);
48339
49559
  };
48340
49560
  formats.transaction = {
48341
- hash,
49561
+ hash: hash2,
48342
49562
  type,
48343
49563
  accessList: Formatter.allowNull(this.accessList.bind(this), null),
48344
- blockHash: Formatter.allowNull(hash, null),
49564
+ blockHash: Formatter.allowNull(hash2, null),
48345
49565
  blockNumber: Formatter.allowNull(number, null),
48346
49566
  transactionIndex: Formatter.allowNull(number, null),
48347
49567
  confirmations: Formatter.allowNull(number, null),
@@ -48376,12 +49596,12 @@ class Formatter {
48376
49596
  formats.receiptLog = {
48377
49597
  transactionIndex: number,
48378
49598
  blockNumber: number,
48379
- transactionHash: hash,
49599
+ transactionHash: hash2,
48380
49600
  address,
48381
- topics: Formatter.arrayOf(hash),
49601
+ topics: Formatter.arrayOf(hash2),
48382
49602
  data,
48383
49603
  logIndex: number,
48384
- blockHash: hash
49604
+ blockHash: hash2
48385
49605
  };
48386
49606
  formats.receipt = {
48387
49607
  to: Formatter.allowNull(this.address, null),
@@ -48391,8 +49611,8 @@ class Formatter {
48391
49611
  root: Formatter.allowNull(hex),
48392
49612
  gasUsed: bigNumber,
48393
49613
  logsBloom: Formatter.allowNull(data),
48394
- blockHash: hash,
48395
- transactionHash: hash,
49614
+ blockHash: hash2,
49615
+ transactionHash: hash2,
48396
49616
  logs: Formatter.arrayOf(this.receiptLog.bind(this)),
48397
49617
  blockNumber: number,
48398
49618
  confirmations: Formatter.allowNull(number, null),
@@ -48402,8 +49622,8 @@ class Formatter {
48402
49622
  type
48403
49623
  };
48404
49624
  formats.block = {
48405
- hash: Formatter.allowNull(hash),
48406
- parentHash: hash,
49625
+ hash: Formatter.allowNull(hash2),
49626
+ parentHash: hash2,
48407
49627
  number,
48408
49628
  timestamp: number,
48409
49629
  nonce: Formatter.allowNull(hex),
@@ -48412,7 +49632,7 @@ class Formatter {
48412
49632
  gasUsed: bigNumber,
48413
49633
  miner: Formatter.allowNull(address),
48414
49634
  extraData: data,
48415
- transactions: Formatter.allowNull(Formatter.arrayOf(hash)),
49635
+ transactions: Formatter.allowNull(Formatter.arrayOf(hash2)),
48416
49636
  baseFeePerGas: Formatter.allowNull(bigNumber)
48417
49637
  };
48418
49638
  formats.blockWithTransactions = import_properties5.shallowCopy(formats.block);
@@ -48420,19 +49640,19 @@ class Formatter {
48420
49640
  formats.filter = {
48421
49641
  fromBlock: Formatter.allowNull(blockTag, undefined),
48422
49642
  toBlock: Formatter.allowNull(blockTag, undefined),
48423
- blockHash: Formatter.allowNull(hash, undefined),
49643
+ blockHash: Formatter.allowNull(hash2, undefined),
48424
49644
  address: Formatter.allowNull(address, undefined),
48425
49645
  topics: Formatter.allowNull(this.topics.bind(this), undefined)
48426
49646
  };
48427
49647
  formats.filterLog = {
48428
49648
  blockNumber: Formatter.allowNull(number),
48429
- blockHash: Formatter.allowNull(hash),
49649
+ blockHash: Formatter.allowNull(hash2),
48430
49650
  transactionIndex: number,
48431
49651
  removed: Formatter.allowNull(this.boolean.bind(this)),
48432
49652
  address,
48433
49653
  data: Formatter.allowFalsish(data, "0x"),
48434
- topics: Formatter.arrayOf(hash),
48435
- transactionHash: hash,
49654
+ topics: Formatter.arrayOf(hash2),
49655
+ transactionHash: hash2,
48436
49656
  logIndex: number
48437
49657
  };
48438
49658
  return formats;
@@ -48489,17 +49709,17 @@ class Formatter {
48489
49709
  return result;
48490
49710
  }
48491
49711
  address(value) {
48492
- return import_address5.getAddress(value);
49712
+ return import_address6.getAddress(value);
48493
49713
  }
48494
49714
  callAddress(value) {
48495
49715
  if (!import_bytes5.isHexString(value, 32)) {
48496
49716
  return null;
48497
49717
  }
48498
- const address = import_address5.getAddress(import_bytes5.hexDataSlice(value, 12));
49718
+ const address = import_address6.getAddress(import_bytes5.hexDataSlice(value, 12));
48499
49719
  return address === AddressZero ? null : address;
48500
49720
  }
48501
49721
  contractAddress(value) {
48502
- return import_address5.getContractAddress(value);
49722
+ return import_address6.getContractAddress(value);
48503
49723
  }
48504
49724
  blockTag(blockTag) {
48505
49725
  if (blockTag == null) {
@@ -48935,7 +50155,7 @@ function bytesPad(value) {
48935
50155
  result.set(value);
48936
50156
  return result;
48937
50157
  }
48938
- function encodeBytes(datas) {
50158
+ function encodeBytes2(datas) {
48939
50159
  const result = [];
48940
50160
  let byteCount = 0;
48941
50161
  for (let i2 = 0;i2 < datas.length; i2++) {
@@ -48986,7 +50206,7 @@ class Resolver {
48986
50206
  let parseBytes = false;
48987
50207
  if (yield this.supportsWildcard()) {
48988
50208
  parseBytes = true;
48989
- tx.data = import_bytes6.hexConcat(["0x9061b923", encodeBytes([import_hash2.dnsEncode(this.name), tx.data])]);
50209
+ tx.data = import_bytes6.hexConcat(["0x9061b923", encodeBytes2([import_hash2.dnsEncode(this.name), tx.data])]);
48990
50210
  }
48991
50211
  try {
48992
50212
  let result = yield this.provider.call(tx);
@@ -49225,8 +50445,8 @@ class Resolver {
49225
50445
  if (skynet) {
49226
50446
  if (skynet[1].length === 34 * 2) {
49227
50447
  const urlSafe = { "=": "", "+": "-", "/": "_" };
49228
- const hash = import_base64.encode("0x" + skynet[1]).replace(/[=+\/]/g, (a) => urlSafe[a]);
49229
- return "sia://" + hash;
50448
+ const hash2 = import_base64.encode("0x" + skynet[1]).replace(/[=+\/]/g, (a) => urlSafe[a]);
50449
+ return "sia://" + hash2;
49230
50450
  }
49231
50451
  }
49232
50452
  return logger9.throwError(`invalid or unsupported content hash data`, Logger.errors.UNSUPPORTED_OPERATION, {
@@ -49464,13 +50684,13 @@ class BaseProvider extends Provider {
49464
50684
  this._events.forEach((event) => {
49465
50685
  switch (event.type) {
49466
50686
  case "tx": {
49467
- const hash = event.hash;
49468
- let runner = this.getTransactionReceipt(hash).then((receipt) => {
50687
+ const hash2 = event.hash;
50688
+ let runner = this.getTransactionReceipt(hash2).then((receipt) => {
49469
50689
  if (!receipt || receipt.blockNumber == null) {
49470
50690
  return null;
49471
50691
  }
49472
- this._emitted["t:" + hash] = receipt.blockNumber;
49473
- this.emit(hash, receipt);
50692
+ this._emitted["t:" + hash2] = receipt.blockNumber;
50693
+ this.emit(hash2, receipt);
49474
50694
  return null;
49475
50695
  }).catch((error) => {
49476
50696
  this.emit("error", error);
@@ -49877,13 +51097,13 @@ class BaseProvider extends Provider {
49877
51097
  }
49878
51098
  });
49879
51099
  }
49880
- _wrapTransaction(tx, hash, startBlock) {
49881
- if (hash != null && import_bytes6.hexDataLength(hash) !== 32) {
51100
+ _wrapTransaction(tx, hash2, startBlock) {
51101
+ if (hash2 != null && import_bytes6.hexDataLength(hash2) !== 32) {
49882
51102
  throw new Error("invalid response - sendTransaction");
49883
51103
  }
49884
51104
  const result = tx;
49885
- if (hash != null && tx.hash !== hash) {
49886
- logger9.throwError("Transaction hash mismatch from Provider.sendTransaction.", Logger.errors.UNKNOWN_ERROR, { expectedHash: tx.hash, returnedHash: hash });
51105
+ if (hash2 != null && tx.hash !== hash2) {
51106
+ logger9.throwError("Transaction hash mismatch from Provider.sendTransaction.", Logger.errors.UNKNOWN_ERROR, { expectedHash: tx.hash, returnedHash: hash2 });
49887
51107
  }
49888
51108
  result.wait = (confirms, timeout) => __awaiter5(this, undefined, undefined, function* () {
49889
51109
  if (confirms == null) {
@@ -49929,8 +51149,8 @@ class BaseProvider extends Provider {
49929
51149
  }
49930
51150
  const blockNumber = yield this._getInternalBlockNumber(100 + 2 * this.pollingInterval);
49931
51151
  try {
49932
- const hash = yield this.perform("sendTransaction", { signedTransaction: hexTx });
49933
- return this._wrapTransaction(tx, hash, blockNumber);
51152
+ const hash2 = yield this.perform("sendTransaction", { signedTransaction: hexTx });
51153
+ return this._wrapTransaction(tx, hash2, blockNumber);
49934
51154
  } catch (error) {
49935
51155
  error.transaction = tx;
49936
51156
  error.transactionHash = tx.hash;
@@ -50054,7 +51274,7 @@ class BaseProvider extends Provider {
50054
51274
  }
50055
51275
  const tx = {
50056
51276
  to: txSender,
50057
- data: import_bytes6.hexConcat([callbackSelector, encodeBytes([ccipResult, extraData])])
51277
+ data: import_bytes6.hexConcat([callbackSelector, encodeBytes2([ccipResult, extraData])])
50058
51278
  };
50059
51279
  return this._call(tx, blockTag, attempt + 1);
50060
51280
  } catch (error) {
@@ -50754,8 +51974,8 @@ class JsonRpcSigner extends Signer {
50754
51974
  tx.from = sender;
50755
51975
  }
50756
51976
  const hexTx = this.provider.constructor.hexlifyTransaction(tx, { from: true });
50757
- return this.provider.send("eth_sendTransaction", [hexTx]).then((hash) => {
50758
- return hash;
51977
+ return this.provider.send("eth_sendTransaction", [hexTx]).then((hash2) => {
51978
+ return hash2;
50759
51979
  }, (error) => {
50760
51980
  if (typeof error.message === "string" && error.message.match(/user denied/i)) {
50761
51981
  logger10.throwError("user rejected transaction", Logger.errors.ACTION_REJECTED, {
@@ -50775,17 +51995,17 @@ class JsonRpcSigner extends Signer {
50775
51995
  sendTransaction(transaction) {
50776
51996
  return __awaiter6(this, undefined, undefined, function* () {
50777
51997
  const blockNumber = yield this.provider._getInternalBlockNumber(100 + 2 * this.provider.pollingInterval);
50778
- const hash = yield this.sendUncheckedTransaction(transaction);
51998
+ const hash2 = yield this.sendUncheckedTransaction(transaction);
50779
51999
  try {
50780
52000
  return yield import_web2.poll(() => __awaiter6(this, undefined, undefined, function* () {
50781
- const tx = yield this.provider.getTransaction(hash);
52001
+ const tx = yield this.provider.getTransaction(hash2);
50782
52002
  if (tx === null) {
50783
52003
  return;
50784
52004
  }
50785
- return this.provider._wrapTransaction(tx, hash, blockNumber);
52005
+ return this.provider._wrapTransaction(tx, hash2, blockNumber);
50786
52006
  }), { oncePoll: this.provider });
50787
52007
  } catch (error) {
50788
- error.transactionHash = hash;
52008
+ error.transactionHash = hash2;
50789
52009
  throw error;
50790
52010
  }
50791
52011
  });
@@ -50860,9 +52080,9 @@ class JsonRpcSigner extends Signer {
50860
52080
 
50861
52081
  class UncheckedJsonRpcSigner extends JsonRpcSigner {
50862
52082
  sendTransaction(transaction) {
50863
- return this.sendUncheckedTransaction(transaction).then((hash) => {
52083
+ return this.sendUncheckedTransaction(transaction).then((hash2) => {
50864
52084
  return {
50865
- hash,
52085
+ hash: hash2,
50866
52086
  nonce: null,
50867
52087
  gasLimit: null,
50868
52088
  gasPrice: null,
@@ -50872,7 +52092,7 @@ class UncheckedJsonRpcSigner extends JsonRpcSigner {
50872
52092
  confirmations: 0,
50873
52093
  from: null,
50874
52094
  wait: (confirmations) => {
50875
- return this.provider.waitForTransaction(hash, confirmations);
52095
+ return this.provider.waitForTransaction(hash2, confirmations);
50876
52096
  }
50877
52097
  };
50878
52098
  });
@@ -51108,10 +52328,10 @@ class JsonRpcProvider extends BaseProvider {
51108
52328
  return null;
51109
52329
  }
51110
52330
  let seq = Promise.resolve();
51111
- hashes.forEach(function(hash) {
51112
- self2._emitted["t:" + hash.toLowerCase()] = "pending";
52331
+ hashes.forEach(function(hash2) {
52332
+ self2._emitted["t:" + hash2.toLowerCase()] = "pending";
51113
52333
  seq = seq.then(function() {
51114
- return self2.getTransaction(hash).then(function(tx) {
52334
+ return self2.getTransaction(hash2).then(function(tx) {
51115
52335
  self2.emit("pending", tx);
51116
52336
  return null;
51117
52337
  });
@@ -51397,12 +52617,12 @@ class WebSocketProvider extends JsonRpcProvider {
51397
52617
  break;
51398
52618
  case "tx": {
51399
52619
  const emitReceipt = (event2) => {
51400
- const hash = event2.hash;
51401
- this.getTransactionReceipt(hash).then((receipt) => {
52620
+ const hash2 = event2.hash;
52621
+ this.getTransactionReceipt(hash2).then((receipt) => {
51402
52622
  if (!receipt) {
51403
52623
  return;
51404
52624
  }
51405
- this.emit(hash, receipt);
52625
+ this.emit(hash2, receipt);
51406
52626
  });
51407
52627
  };
51408
52628
  emitReceipt(event);
@@ -53264,14 +54484,14 @@ __export(exports_utils, {
53264
54484
  namehash: () => import_hash5.namehash,
53265
54485
  mnemonicToSeed: () => import_hdnode2.mnemonicToSeed,
53266
54486
  mnemonicToEntropy: () => import_hdnode2.mnemonicToEntropy,
53267
- keccak256: () => import_keccak2563.keccak256,
54487
+ keccak256: () => import_keccak2564.keccak256,
53268
54488
  joinSignature: () => import_bytes10.joinSignature,
53269
54489
  isValidName: () => import_hash5.isValidName,
53270
54490
  isValidMnemonic: () => import_hdnode2.isValidMnemonic,
53271
54491
  isHexString: () => import_bytes10.isHexString,
53272
54492
  isBytesLike: () => import_bytes10.isBytesLike,
53273
54493
  isBytes: () => import_bytes10.isBytes,
53274
- isAddress: () => import_address6.isAddress,
54494
+ isAddress: () => import_address7.isAddress,
53275
54495
  id: () => import_hash5.id,
53276
54496
  hexlify: () => import_bytes10.hexlify,
53277
54497
  hexZeroPad: () => import_bytes10.hexZeroPad,
@@ -53283,10 +54503,10 @@ __export(exports_utils, {
53283
54503
  hashMessage: () => import_hash5.hashMessage,
53284
54504
  getStatic: () => import_properties17.getStatic,
53285
54505
  getJsonWalletAddress: () => import_json_wallets2.getJsonWalletAddress,
53286
- getIcapAddress: () => import_address6.getIcapAddress,
53287
- getCreate2Address: () => import_address6.getCreate2Address,
53288
- getContractAddress: () => import_address6.getContractAddress,
53289
- getAddress: () => import_address6.getAddress,
54506
+ getIcapAddress: () => import_address7.getIcapAddress,
54507
+ getCreate2Address: () => import_address7.getCreate2Address,
54508
+ getContractAddress: () => import_address7.getContractAddress,
54509
+ getAddress: () => import_address7.getAddress,
53290
54510
  getAccountPath: () => import_hdnode2.getAccountPath,
53291
54511
  formatUnits: () => import_units.formatUnits,
53292
54512
  formatEther: () => import_units.formatEther,
@@ -53296,14 +54516,14 @@ __export(exports_utils, {
53296
54516
  dnsEncode: () => import_hash5.dnsEncode,
53297
54517
  defineReadOnly: () => import_properties17.defineReadOnly,
53298
54518
  defaultPath: () => import_hdnode2.defaultPath,
53299
- defaultAbiCoder: () => import_abi2.defaultAbiCoder,
54519
+ defaultAbiCoder: () => import_abi8.defaultAbiCoder,
53300
54520
  deepCopy: () => import_properties17.deepCopy,
53301
54521
  concat: () => import_bytes10.concat,
53302
54522
  computePublicKey: () => import_signing_key2.computePublicKey,
53303
54523
  computeHmac: () => import_sha22.computeHmac,
53304
54524
  computeAddress: () => import_transactions6.computeAddress,
53305
54525
  commify: () => import_units.commify,
53306
- checkResultErrors: () => import_abi2.checkResultErrors,
54526
+ checkResultErrors: () => import_abi8.checkResultErrors,
53307
54527
  checkProperties: () => import_properties17.checkProperties,
53308
54528
  base64: () => base64,
53309
54529
  base58: () => import_basex2.Base58,
@@ -53316,33 +54536,33 @@ __export(exports_utils, {
53316
54536
  Utf8ErrorFuncs: () => import_strings4.Utf8ErrorFuncs,
53317
54537
  UnicodeNormalizationForm: () => import_strings5.UnicodeNormalizationForm,
53318
54538
  TransactionTypes: () => import_transactions6.TransactionTypes,
53319
- TransactionDescription: () => import_abi2.TransactionDescription,
54539
+ TransactionDescription: () => import_abi8.TransactionDescription,
53320
54540
  SupportedAlgorithm: () => import_sha23.SupportedAlgorithm,
53321
54541
  SigningKey: () => import_signing_key2.SigningKey,
53322
54542
  RLP: () => RLP,
53323
- ParamType: () => import_abi2.ParamType,
54543
+ ParamType: () => import_abi8.ParamType,
53324
54544
  Logger: () => Logger,
53325
- LogDescription: () => import_abi2.LogDescription,
53326
- Interface: () => import_abi2.Interface,
53327
- Indexed: () => import_abi2.Indexed,
54545
+ LogDescription: () => import_abi8.LogDescription,
54546
+ Interface: () => import_abi8.Interface,
54547
+ Indexed: () => import_abi8.Indexed,
53328
54548
  HDNode: () => import_hdnode2.HDNode,
53329
- FunctionFragment: () => import_abi2.FunctionFragment,
53330
- Fragment: () => import_abi2.Fragment,
53331
- FormatTypes: () => import_abi2.FormatTypes,
53332
- EventFragment: () => import_abi2.EventFragment,
53333
- ErrorFragment: () => import_abi2.ErrorFragment,
53334
- ConstructorFragment: () => import_abi2.ConstructorFragment,
53335
- AbiCoder: () => import_abi2.AbiCoder
54549
+ FunctionFragment: () => import_abi8.FunctionFragment,
54550
+ Fragment: () => import_abi8.Fragment,
54551
+ FormatTypes: () => import_abi8.FormatTypes,
54552
+ EventFragment: () => import_abi8.EventFragment,
54553
+ ErrorFragment: () => import_abi8.ErrorFragment,
54554
+ ConstructorFragment: () => import_abi8.ConstructorFragment,
54555
+ AbiCoder: () => import_abi8.AbiCoder
53336
54556
  });
53337
- var import_abi2 = __toESM(require_lib13());
53338
- var import_address6 = __toESM(require_lib7());
54557
+ var import_abi8 = __toESM(require_lib13());
54558
+ var import_address7 = __toESM(require_lib7());
53339
54559
  var base64 = __toESM(require_lib10());
53340
54560
  var import_basex2 = __toESM(require_lib16());
53341
54561
  var import_bytes10 = __toESM(require_lib2());
53342
54562
  var import_hash5 = __toESM(require_lib12());
53343
54563
  var import_hdnode2 = __toESM(require_lib20());
53344
54564
  var import_json_wallets2 = __toESM(require_lib22());
53345
- var import_keccak2563 = __toESM(require_lib5());
54565
+ var import_keccak2564 = __toESM(require_lib5());
53346
54566
  var import_sha22 = __toESM(require_lib17());
53347
54567
  var import_solidity = __toESM(require_lib24());
53348
54568
  var import_random3 = __toESM(require_lib21());
@@ -53853,7 +55073,7 @@ var executeGnosisTrx = async ({
53853
55073
  sender
53854
55074
  }) => {
53855
55075
  const _sender = sender instanceof Wallet ? sender.address : sender;
53856
- const hash = await client.writeContract({
55076
+ const hash2 = await client.writeContract({
53857
55077
  address: safeAddress,
53858
55078
  abi: safe_abi_default,
53859
55079
  functionName: "execTransaction",
@@ -53871,7 +55091,7 @@ var executeGnosisTrx = async ({
53871
55091
  ],
53872
55092
  account: _sender
53873
55093
  });
53874
- return hash;
55094
+ return hash2;
53875
55095
  };
53876
55096
  var getGnosisTrxSimulationResult = async ({
53877
55097
  safeAddress,
@@ -59316,7 +60536,7 @@ function invariant(condition, message) {
59316
60536
  var import_decimal = __toESM(require_decimal());
59317
60537
  var import_big = __toESM(require_big());
59318
60538
  var import_toformat = __toESM(require_toFormat());
59319
- var import_address7 = __toESM(require_lib7());
60539
+ var import_address8 = __toESM(require_lib7());
59320
60540
  function _defineProperties(target, props) {
59321
60541
  for (var i2 = 0;i2 < props.length; i2++) {
59322
60542
  var descriptor = props[i2];
@@ -59876,7 +61096,7 @@ var NativeCurrency = /* @__PURE__ */ function(_BaseCurrency) {
59876
61096
  }(BaseCurrency);
59877
61097
  function validateAndParseAddress(address) {
59878
61098
  try {
59879
- return import_address7.getAddress(address);
61099
+ return import_address8.getAddress(address);
59880
61100
  } catch (error) {
59881
61101
  throw new Error(address + " is not a valid address.");
59882
61102
  }
@@ -59975,8 +61195,8 @@ function sqrt(value) {
59975
61195
 
59976
61196
  // node_modules/@uniswap/v3-sdk/dist/v3-sdk.esm.js
59977
61197
  var import_jsbi2 = __toESM(require_jsbi_umd());
59978
- var import_abi3 = __toESM(require_lib13());
59979
- var import_address8 = __toESM(require_lib7());
61198
+ var import_abi9 = __toESM(require_lib13());
61199
+ var import_address9 = __toESM(require_lib7());
59980
61200
  var import_solidity2 = __toESM(require_lib24());
59981
61201
  // node_modules/@uniswap/v3-periphery/artifacts/contracts/interfaces/IMulticall.sol/IMulticall.json
59982
61202
  var IMulticall_default = {
@@ -63912,7 +65132,7 @@ var Q192 = /* @__PURE__ */ import_jsbi2.default.exponentiate(Q96, /* @__PURE__ *
63912
65132
  function computePoolAddress(_ref) {
63913
65133
  var { factoryAddress, tokenA, tokenB, fee, initCodeHashManualOverride } = _ref;
63914
65134
  var _ref2 = tokenA.sortsBefore(tokenB) ? [tokenA, tokenB] : [tokenB, tokenA], token0 = _ref2[0], token1 = _ref2[1];
63915
- return import_address8.getCreate2Address(factoryAddress, import_solidity2.keccak256(["bytes"], [import_abi3.defaultAbiCoder.encode(["address", "address", "uint24"], [token0.address, token1.address, fee])]), initCodeHashManualOverride != null ? initCodeHashManualOverride : POOL_INIT_CODE_HASH);
65135
+ return import_address9.getCreate2Address(factoryAddress, import_solidity2.keccak256(["bytes"], [import_abi9.defaultAbiCoder.encode(["address", "address", "uint24"], [token0.address, token1.address, fee])]), initCodeHashManualOverride != null ? initCodeHashManualOverride : POOL_INIT_CODE_HASH);
63916
65136
  }
63917
65137
  var LiquidityMath = /* @__PURE__ */ function() {
63918
65138
  function LiquidityMath2() {}
@@ -64844,7 +66064,7 @@ var Multicall = /* @__PURE__ */ function() {
64844
66064
  };
64845
66065
  return Multicall2;
64846
66066
  }();
64847
- Multicall.INTERFACE = /* @__PURE__ */ new import_abi3.Interface(IMulticall_default.abi);
66067
+ Multicall.INTERFACE = /* @__PURE__ */ new import_abi9.Interface(IMulticall_default.abi);
64848
66068
  function isAllowedPermit(permitOptions) {
64849
66069
  return "nonce" in permitOptions;
64850
66070
  }
@@ -64855,7 +66075,7 @@ var SelfPermit = /* @__PURE__ */ function() {
64855
66075
  };
64856
66076
  return SelfPermit2;
64857
66077
  }();
64858
- SelfPermit.INTERFACE = /* @__PURE__ */ new import_abi3.Interface(ISelfPermit_default.abi);
66078
+ SelfPermit.INTERFACE = /* @__PURE__ */ new import_abi9.Interface(ISelfPermit_default.abi);
64859
66079
  var Payments = /* @__PURE__ */ function() {
64860
66080
  function Payments2() {}
64861
66081
  Payments2.encodeFeeBips = function encodeFeeBips(fee) {
@@ -64886,7 +66106,7 @@ var Payments = /* @__PURE__ */ function() {
64886
66106
  };
64887
66107
  return Payments2;
64888
66108
  }();
64889
- Payments.INTERFACE = /* @__PURE__ */ new import_abi3.Interface(IPeripheryPaymentsWithFee_default.abi);
66109
+ Payments.INTERFACE = /* @__PURE__ */ new import_abi9.Interface(IPeripheryPaymentsWithFee_default.abi);
64890
66110
  var MaxUint128 = /* @__PURE__ */ toHex3(/* @__PURE__ */ import_jsbi2.default.subtract(/* @__PURE__ */ import_jsbi2.default.exponentiate(/* @__PURE__ */ import_jsbi2.default.BigInt(2), /* @__PURE__ */ import_jsbi2.default.BigInt(128)), /* @__PURE__ */ import_jsbi2.default.BigInt(1)));
64891
66111
  function isMint(options) {
64892
66112
  return Object.keys(options).some(function(k) {
@@ -65044,7 +66264,7 @@ var NonfungiblePositionManager = /* @__PURE__ */ function() {
65044
66264
  };
65045
66265
  return NonfungiblePositionManager2;
65046
66266
  }();
65047
- NonfungiblePositionManager.INTERFACE = /* @__PURE__ */ new import_abi3.Interface(NonfungiblePositionManager_default.abi);
66267
+ NonfungiblePositionManager.INTERFACE = /* @__PURE__ */ new import_abi9.Interface(NonfungiblePositionManager_default.abi);
65048
66268
  var SwapQuoter = /* @__PURE__ */ function() {
65049
66269
  function SwapQuoter2() {}
65050
66270
  SwapQuoter2.quoteCallParameters = function quoteCallParameters(route, amount, tradeType, options) {
@@ -65085,8 +66305,8 @@ var SwapQuoter = /* @__PURE__ */ function() {
65085
66305
  };
65086
66306
  return SwapQuoter2;
65087
66307
  }();
65088
- SwapQuoter.V1INTERFACE = /* @__PURE__ */ new import_abi3.Interface(Quoter_default.abi);
65089
- SwapQuoter.V2INTERFACE = /* @__PURE__ */ new import_abi3.Interface(QuoterV2_default.abi);
66308
+ SwapQuoter.V1INTERFACE = /* @__PURE__ */ new import_abi9.Interface(Quoter_default.abi);
66309
+ SwapQuoter.V2INTERFACE = /* @__PURE__ */ new import_abi9.Interface(QuoterV2_default.abi);
65090
66310
  var Staker = /* @__PURE__ */ function() {
65091
66311
  function Staker2() {}
65092
66312
  Staker2.encodeClaim = function encodeClaim(incentiveKey, options) {
@@ -65139,9 +66359,9 @@ var Staker = /* @__PURE__ */ function() {
65139
66359
  var incentiveKey = incentiveKeys[i2];
65140
66360
  keys.push(this._encodeIncentiveKey(incentiveKey));
65141
66361
  }
65142
- data = import_abi3.defaultAbiCoder.encode([Staker2.INCENTIVE_KEY_ABI + "[]"], [keys]);
66362
+ data = import_abi9.defaultAbiCoder.encode([Staker2.INCENTIVE_KEY_ABI + "[]"], [keys]);
65143
66363
  } else {
65144
- data = import_abi3.defaultAbiCoder.encode([Staker2.INCENTIVE_KEY_ABI], [this._encodeIncentiveKey(incentiveKeys[0])]);
66364
+ data = import_abi9.defaultAbiCoder.encode([Staker2.INCENTIVE_KEY_ABI], [this._encodeIncentiveKey(incentiveKeys[0])]);
65145
66365
  }
65146
66366
  return data;
65147
66367
  };
@@ -65158,7 +66378,7 @@ var Staker = /* @__PURE__ */ function() {
65158
66378
  };
65159
66379
  return Staker2;
65160
66380
  }();
65161
- Staker.INTERFACE = /* @__PURE__ */ new import_abi3.Interface(UniswapV3Staker_default.abi);
66381
+ Staker.INTERFACE = /* @__PURE__ */ new import_abi9.Interface(UniswapV3Staker_default.abi);
65162
66382
  Staker.INCENTIVE_KEY_ABI = "tuple(address rewardToken, address pool, uint256 startTime, uint256 endTime, address refundee)";
65163
66383
  var SwapRouter = /* @__PURE__ */ function() {
65164
66384
  function SwapRouter2() {}
@@ -65275,7 +66495,7 @@ var SwapRouter = /* @__PURE__ */ function() {
65275
66495
  };
65276
66496
  return SwapRouter2;
65277
66497
  }();
65278
- SwapRouter.INTERFACE = /* @__PURE__ */ new import_abi3.Interface(SwapRouter_default.abi);
66498
+ SwapRouter.INTERFACE = /* @__PURE__ */ new import_abi9.Interface(SwapRouter_default.abi);
65279
66499
 
65280
66500
  // node_modules/@uniswap/v4-sdk/dist/v4-sdk.esm.js
65281
66501
  var import_solidity4 = __toESM(require_lib24());
@@ -65285,9 +66505,9 @@ var import_jsbi3 = __toESM(require_jsbi_umd());
65285
66505
  var import_decimal2 = __toESM(require_decimal());
65286
66506
  var import_big2 = __toESM(require_big());
65287
66507
  var import_toformat2 = __toESM(require_toFormat());
65288
- var import_address9 = __toESM(require_lib7());
66508
+ var import_address10 = __toESM(require_lib7());
65289
66509
  var import_bytes11 = __toESM(require_lib2());
65290
- var import_keccak2564 = __toESM(require_lib5());
66510
+ var import_keccak2565 = __toESM(require_lib5());
65291
66511
  var import_strings6 = __toESM(require_lib9());
65292
66512
  function _defineProperties3(e, r) {
65293
66513
  for (var t = 0;t < r.length; t++) {
@@ -65992,7 +67212,7 @@ var NativeCurrency2 = /* @__PURE__ */ function(_BaseCurrency) {
65992
67212
  }(BaseCurrency3);
65993
67213
  function validateAndParseAddress2(address) {
65994
67214
  try {
65995
- return import_address9.getAddress(address);
67215
+ return import_address10.getAddress(address);
65996
67216
  } catch (error) {
65997
67217
  throw new Error(address + " is not a valid address.");
65998
67218
  }
@@ -66096,10 +67316,10 @@ function computeZksyncCreate2Address(sender, bytecodeHash, salt, input) {
66096
67316
  if (input === undefined) {
66097
67317
  input = "0x";
66098
67318
  }
66099
- var prefix2 = import_keccak2564.keccak256(import_strings6.toUtf8Bytes("zksyncCreate2"));
66100
- var inputHash = import_keccak2564.keccak256(input);
66101
- var addressBytes = import_keccak2564.keccak256(import_bytes11.concat([prefix2, import_bytes11.hexZeroPad(sender, 32), salt, bytecodeHash, inputHash])).slice(26);
66102
- return import_address9.getAddress(addressBytes);
67319
+ var prefix2 = import_keccak2565.keccak256(import_strings6.toUtf8Bytes("zksyncCreate2"));
67320
+ var inputHash = import_keccak2565.keccak256(input);
67321
+ var addressBytes = import_keccak2565.keccak256(import_bytes11.concat([prefix2, import_bytes11.hexZeroPad(sender, 32), salt, bytecodeHash, inputHash])).slice(26);
67322
+ return import_address10.getAddress(addressBytes);
66103
67323
  }
66104
67324
  var MAX_SAFE_INTEGER2 = /* @__PURE__ */ import_jsbi3.default.BigInt(Number.MAX_SAFE_INTEGER);
66105
67325
  var ZERO3 = /* @__PURE__ */ import_jsbi3.default.BigInt(0);
@@ -66123,8 +67343,8 @@ function sqrt2(value) {
66123
67343
 
66124
67344
  // node_modules/@uniswap/v4-sdk/node_modules/@uniswap/v3-sdk/dist/v3-sdk.esm.js
66125
67345
  var import_jsbi4 = __toESM(require_jsbi_umd());
66126
- var import_abi4 = __toESM(require_lib13());
66127
- var import_address10 = __toESM(require_lib7());
67346
+ var import_abi10 = __toESM(require_lib13());
67347
+ var import_address11 = __toESM(require_lib7());
66128
67348
  var import_solidity3 = __toESM(require_lib24());
66129
67349
  function _arrayLikeToArray2(r, a) {
66130
67350
  (a == null || a > r.length) && (a = r.length);
@@ -66570,13 +67790,13 @@ var Q1922 = /* @__PURE__ */ import_jsbi4.default.exponentiate(Q962, /* @__PURE__
66570
67790
  function computePoolAddress2(_ref) {
66571
67791
  var { factoryAddress, tokenA, tokenB, fee, initCodeHashManualOverride, chainId } = _ref;
66572
67792
  var _ref2 = tokenA.sortsBefore(tokenB) ? [tokenA, tokenB] : [tokenB, tokenA], token0 = _ref2[0], token1 = _ref2[1];
66573
- var salt = import_solidity3.keccak256(["bytes"], [import_abi4.defaultAbiCoder.encode(["address", "address", "uint24"], [token0.address, token1.address, fee])]);
67793
+ var salt = import_solidity3.keccak256(["bytes"], [import_abi10.defaultAbiCoder.encode(["address", "address", "uint24"], [token0.address, token1.address, fee])]);
66574
67794
  var initCodeHash = initCodeHashManualOverride != null ? initCodeHashManualOverride : poolInitCodeHash(chainId);
66575
67795
  switch (chainId) {
66576
67796
  case ChainId2.ZKSYNC:
66577
67797
  return computeZksyncCreate2Address(factoryAddress, initCodeHash, salt);
66578
67798
  default:
66579
- return import_address10.getCreate2Address(factoryAddress, salt, initCodeHash);
67799
+ return import_address11.getCreate2Address(factoryAddress, salt, initCodeHash);
66580
67800
  }
66581
67801
  }
66582
67802
  var FullMath2 = /* @__PURE__ */ function() {
@@ -67522,7 +68742,7 @@ var Multicall2 = /* @__PURE__ */ function() {
67522
68742
  };
67523
68743
  return Multicall3;
67524
68744
  }();
67525
- Multicall2.INTERFACE = /* @__PURE__ */ new import_abi4.Interface(IMulticall_default.abi);
68745
+ Multicall2.INTERFACE = /* @__PURE__ */ new import_abi10.Interface(IMulticall_default.abi);
67526
68746
  function isAllowedPermit2(permitOptions) {
67527
68747
  return "nonce" in permitOptions;
67528
68748
  }
@@ -67533,7 +68753,7 @@ var SelfPermit2 = /* @__PURE__ */ function() {
67533
68753
  };
67534
68754
  return SelfPermit3;
67535
68755
  }();
67536
- SelfPermit2.INTERFACE = /* @__PURE__ */ new import_abi4.Interface(ISelfPermit_default.abi);
68756
+ SelfPermit2.INTERFACE = /* @__PURE__ */ new import_abi10.Interface(ISelfPermit_default.abi);
67537
68757
  var Payments2 = /* @__PURE__ */ function() {
67538
68758
  function Payments3() {}
67539
68759
  Payments3.encodeFeeBips = function encodeFeeBips(fee) {
@@ -67564,7 +68784,7 @@ var Payments2 = /* @__PURE__ */ function() {
67564
68784
  };
67565
68785
  return Payments3;
67566
68786
  }();
67567
- Payments2.INTERFACE = /* @__PURE__ */ new import_abi4.Interface(IPeripheryPaymentsWithFee_default.abi);
68787
+ Payments2.INTERFACE = /* @__PURE__ */ new import_abi10.Interface(IPeripheryPaymentsWithFee_default.abi);
67568
68788
  var _excluded = ["expectedCurrencyOwed0", "expectedCurrencyOwed1"];
67569
68789
  var MaxUint1282 = /* @__PURE__ */ toHex4(/* @__PURE__ */ import_jsbi4.default.subtract(/* @__PURE__ */ import_jsbi4.default.exponentiate(/* @__PURE__ */ import_jsbi4.default.BigInt(2), /* @__PURE__ */ import_jsbi4.default.BigInt(128)), /* @__PURE__ */ import_jsbi4.default.BigInt(1)));
67570
68790
  function isMint2(options) {
@@ -67750,7 +68970,7 @@ var NonfungiblePositionManager2 = /* @__PURE__ */ function() {
67750
68970
  };
67751
68971
  return NonfungiblePositionManager3;
67752
68972
  }();
67753
- NonfungiblePositionManager2.INTERFACE = /* @__PURE__ */ new import_abi4.Interface(NonfungiblePositionManager_default.abi);
68973
+ NonfungiblePositionManager2.INTERFACE = /* @__PURE__ */ new import_abi10.Interface(NonfungiblePositionManager_default.abi);
67754
68974
  var SwapQuoter2 = /* @__PURE__ */ function() {
67755
68975
  function SwapQuoter3() {}
67756
68976
  SwapQuoter3.quoteCallParameters = function quoteCallParameters(route, amount, tradeType, options) {
@@ -67791,8 +69011,8 @@ var SwapQuoter2 = /* @__PURE__ */ function() {
67791
69011
  };
67792
69012
  return SwapQuoter3;
67793
69013
  }();
67794
- SwapQuoter2.V1INTERFACE = /* @__PURE__ */ new import_abi4.Interface(Quoter_default.abi);
67795
- SwapQuoter2.V2INTERFACE = /* @__PURE__ */ new import_abi4.Interface(QuoterV2_default.abi);
69014
+ SwapQuoter2.V1INTERFACE = /* @__PURE__ */ new import_abi10.Interface(Quoter_default.abi);
69015
+ SwapQuoter2.V2INTERFACE = /* @__PURE__ */ new import_abi10.Interface(QuoterV2_default.abi);
67796
69016
  var Staker2 = /* @__PURE__ */ function() {
67797
69017
  function Staker3() {}
67798
69018
  Staker3.encodeClaim = function encodeClaim(incentiveKey, options) {
@@ -67845,9 +69065,9 @@ var Staker2 = /* @__PURE__ */ function() {
67845
69065
  var incentiveKey = incentiveKeys[i2];
67846
69066
  keys.push(this._encodeIncentiveKey(incentiveKey));
67847
69067
  }
67848
- data = import_abi4.defaultAbiCoder.encode([Staker3.INCENTIVE_KEY_ABI + "[]"], [keys]);
69068
+ data = import_abi10.defaultAbiCoder.encode([Staker3.INCENTIVE_KEY_ABI + "[]"], [keys]);
67849
69069
  } else {
67850
- data = import_abi4.defaultAbiCoder.encode([Staker3.INCENTIVE_KEY_ABI], [this._encodeIncentiveKey(incentiveKeys[0])]);
69070
+ data = import_abi10.defaultAbiCoder.encode([Staker3.INCENTIVE_KEY_ABI], [this._encodeIncentiveKey(incentiveKeys[0])]);
67851
69071
  }
67852
69072
  return data;
67853
69073
  };
@@ -67864,7 +69084,7 @@ var Staker2 = /* @__PURE__ */ function() {
67864
69084
  };
67865
69085
  return Staker3;
67866
69086
  }();
67867
- Staker2.INTERFACE = /* @__PURE__ */ new import_abi4.Interface(UniswapV3Staker_default.abi);
69087
+ Staker2.INTERFACE = /* @__PURE__ */ new import_abi10.Interface(UniswapV3Staker_default.abi);
67868
69088
  Staker2.INCENTIVE_KEY_ABI = "tuple(address rewardToken, address pool, uint256 startTime, uint256 endTime, address refundee)";
67869
69089
  var SwapRouter2 = /* @__PURE__ */ function() {
67870
69090
  function SwapRouter3() {}
@@ -67981,12 +69201,12 @@ var SwapRouter2 = /* @__PURE__ */ function() {
67981
69201
  };
67982
69202
  return SwapRouter3;
67983
69203
  }();
67984
- SwapRouter2.INTERFACE = /* @__PURE__ */ new import_abi4.Interface(SwapRouter_default.abi);
69204
+ SwapRouter2.INTERFACE = /* @__PURE__ */ new import_abi10.Interface(SwapRouter_default.abi);
67985
69205
 
67986
69206
  // node_modules/@uniswap/v4-sdk/dist/v4-sdk.esm.js
67987
69207
  var import_utils2 = __toESM(require_utils6());
67988
69208
  var import_jsbi5 = __toESM(require_jsbi_umd());
67989
- var import_abi5 = __toESM(require_lib13());
69209
+ var import_abi11 = __toESM(require_lib13());
67990
69210
  function _arrayLikeToArray3(r, a) {
67991
69211
  (a == null || a > r.length) && (a = r.length);
67992
69212
  for (var e = 0, n = Array(a);e < a; e++)
@@ -69216,7 +70436,7 @@ var Multicall3 = /* @__PURE__ */ function() {
69216
70436
  };
69217
70437
  return Multicall4;
69218
70438
  }();
69219
- Multicall3.INTERFACE = /* @__PURE__ */ new import_abi5.Interface(IMulticall_default.abi);
70439
+ Multicall3.INTERFACE = /* @__PURE__ */ new import_abi11.Interface(IMulticall_default.abi);
69220
70440
  var positionManagerAbi = [{
69221
70441
  type: "constructor",
69222
70442
  inputs: [{
@@ -70373,7 +71593,7 @@ var V4PositionManager = /* @__PURE__ */ function() {
70373
71593
  };
70374
71594
  return V4PositionManager2;
70375
71595
  }();
70376
- V4PositionManager.INTERFACE = /* @__PURE__ */ new import_abi5.Interface(positionManagerAbi);
71596
+ V4PositionManager.INTERFACE = /* @__PURE__ */ new import_abi11.Interface(positionManagerAbi);
70377
71597
 
70378
71598
  // src/integrations/uniswapV4/uniswap.v4.ts
70379
71599
  var import_jsbi6 = __toESM(require_jsbi_umd());
@@ -86356,6 +87576,147 @@ var sendOFTTrx = ({
86356
87576
  value: args.nativeFee
86357
87577
  });
86358
87578
  };
87579
+ // src/integrations/ccip/ccip.router.abi.ts
87580
+ var ccip_router_abi_default = [
87581
+ {
87582
+ inputs: [
87583
+ { name: "destinationChainSelector", type: "uint64" },
87584
+ {
87585
+ name: "message",
87586
+ type: "tuple",
87587
+ components: [
87588
+ { name: "receiver", type: "bytes" },
87589
+ { name: "data", type: "bytes" },
87590
+ {
87591
+ name: "tokenAmounts",
87592
+ type: "tuple[]",
87593
+ components: [
87594
+ { name: "token", type: "address" },
87595
+ { name: "amount", type: "uint256" }
87596
+ ]
87597
+ },
87598
+ { name: "feeToken", type: "address" },
87599
+ { name: "extraArgs", type: "bytes" }
87600
+ ]
87601
+ }
87602
+ ],
87603
+ name: "ccipSend",
87604
+ outputs: [{ name: "messageId", type: "bytes32" }],
87605
+ stateMutability: "payable",
87606
+ type: "function"
87607
+ },
87608
+ {
87609
+ inputs: [
87610
+ { name: "destinationChainSelector", type: "uint64" },
87611
+ {
87612
+ name: "message",
87613
+ type: "tuple",
87614
+ components: [
87615
+ { name: "receiver", type: "bytes" },
87616
+ { name: "data", type: "bytes" },
87617
+ {
87618
+ name: "tokenAmounts",
87619
+ type: "tuple[]",
87620
+ components: [
87621
+ { name: "token", type: "address" },
87622
+ { name: "amount", type: "uint256" }
87623
+ ]
87624
+ },
87625
+ { name: "feeToken", type: "address" },
87626
+ { name: "extraArgs", type: "bytes" }
87627
+ ]
87628
+ }
87629
+ ],
87630
+ name: "getFee",
87631
+ outputs: [{ name: "fee", type: "uint256" }],
87632
+ stateMutability: "view",
87633
+ type: "function"
87634
+ }
87635
+ ];
87636
+ // src/integrations/ccip/ccip.router.ts
87637
+ var ccipRouterInterface = new exports_ethers.utils.Interface(ccip_router_abi_default);
87638
+ var CCIP_CHAIN_SELECTORS = Object.freeze({
87639
+ 1: "5009297550715157269",
87640
+ 42161: "4949039107694359620",
87641
+ 8453: "15971525489660198786",
87642
+ 10: "3734403246176062136",
87643
+ 137: "4051577828743386545",
87644
+ 56: "11344663589394136015",
87645
+ 143: "8481857512324358265"
87646
+ });
87647
+ var getCCIPChainSelector = (chainId) => {
87648
+ const selector = CCIP_CHAIN_SELECTORS[chainId];
87649
+ if (!selector) {
87650
+ throw new Error(`CCIP: No chain selector for chainId ${chainId}`);
87651
+ }
87652
+ return selector;
87653
+ };
87654
+ var CCIPGetFeeCalldata = (args) => {
87655
+ return ccipRouterInterface.encodeFunctionData("getFee", [
87656
+ args.destinationChainSelector,
87657
+ {
87658
+ receiver: args.message.receiver,
87659
+ data: args.message.data,
87660
+ tokenAmounts: args.message.tokenAmounts.map((t) => ({
87661
+ token: t.token,
87662
+ amount: t.amount
87663
+ })),
87664
+ feeToken: args.message.feeToken,
87665
+ extraArgs: args.message.extraArgs
87666
+ }
87667
+ ]);
87668
+ };
87669
+ var CCIPGetFeeTrx = ({
87670
+ routerAddress,
87671
+ args
87672
+ }) => {
87673
+ return createCall({
87674
+ operation: 0,
87675
+ to: routerAddress,
87676
+ data: CCIPGetFeeCalldata(args),
87677
+ value: 0n
87678
+ });
87679
+ };
87680
+ var CCIPSendCalldata = (args) => {
87681
+ return ccipRouterInterface.encodeFunctionData("ccipSend", [
87682
+ args.destinationChainSelector,
87683
+ {
87684
+ receiver: args.message.receiver,
87685
+ data: args.message.data,
87686
+ tokenAmounts: args.message.tokenAmounts.map((t) => ({
87687
+ token: t.token,
87688
+ amount: t.amount
87689
+ })),
87690
+ feeToken: args.message.feeToken,
87691
+ extraArgs: args.message.extraArgs
87692
+ }
87693
+ ]);
87694
+ };
87695
+ var ccipSendTrx = ({
87696
+ routerAddress,
87697
+ args
87698
+ }) => {
87699
+ return createCall({
87700
+ operation: 0,
87701
+ to: routerAddress,
87702
+ data: CCIPSendCalldata(args),
87703
+ value: args.nativeFee
87704
+ });
87705
+ };
87706
+ var buildCCIPMessage = ({
87707
+ receiver,
87708
+ token,
87709
+ amount
87710
+ }) => {
87711
+ const receiverEncoded = "0x" + receiver.slice(2).padStart(64, "0");
87712
+ return Object.freeze({
87713
+ receiver: receiverEncoded,
87714
+ data: "0x",
87715
+ tokenAmounts: Object.freeze([Object.freeze({ token, amount })]),
87716
+ feeToken: "0x0000000000000000000000000000000000000000",
87717
+ extraArgs: "0x"
87718
+ });
87719
+ };
86359
87720
  // src/integrations/cctp/token.messenger.v2.abi.ts
86360
87721
  var token_messenger_v2_abi_default = [
86361
87722
  {
@@ -88335,6 +89696,181 @@ var fetchExecutorTxStatus = async ({
88335
89696
  }
88336
89697
  return await response.json();
88337
89698
  };
89699
+ // src/integrations/enso/enso.router.abi.ts
89700
+ var tokenTuple = {
89701
+ name: "token",
89702
+ type: "tuple",
89703
+ components: [
89704
+ { name: "tokenType", type: "uint8" },
89705
+ { name: "data", type: "bytes" }
89706
+ ]
89707
+ };
89708
+ var enso_router_abi_default = [
89709
+ {
89710
+ name: "routeSingle",
89711
+ type: "function",
89712
+ stateMutability: "payable",
89713
+ inputs: [
89714
+ { ...tokenTuple, name: "tokenOut" },
89715
+ { name: "data", type: "bytes" }
89716
+ ],
89717
+ outputs: []
89718
+ },
89719
+ {
89720
+ name: "safeRouteSingle",
89721
+ type: "function",
89722
+ stateMutability: "payable",
89723
+ inputs: [
89724
+ { ...tokenTuple, name: "tokenIn" },
89725
+ { ...tokenTuple, name: "tokenOut" },
89726
+ { name: "receiver", type: "address" },
89727
+ { name: "data", type: "bytes" }
89728
+ ],
89729
+ outputs: []
89730
+ }
89731
+ ];
89732
+ // src/integrations/enso/enso.route.api.ts
89733
+ var ENSO_API_BASE = "https://api.enso.finance";
89734
+
89735
+ class EnsoRouteApiError extends Error {
89736
+ status;
89737
+ statusText;
89738
+ tokenIn;
89739
+ tokenOut;
89740
+ constructor({
89741
+ status,
89742
+ statusText,
89743
+ tokenIn,
89744
+ tokenOut
89745
+ }) {
89746
+ super(`Enso route API request failed with status ${status} (${statusText}) for swap ${tokenIn} -> ${tokenOut}`);
89747
+ this.name = "EnsoRouteApiError";
89748
+ this.status = status;
89749
+ this.statusText = statusText;
89750
+ this.tokenIn = tokenIn;
89751
+ this.tokenOut = tokenOut;
89752
+ }
89753
+ }
89754
+ var fetchEnsoRoute = async (args) => {
89755
+ const {
89756
+ chainId,
89757
+ fromAddress,
89758
+ receiver,
89759
+ tokenIn,
89760
+ tokenOut,
89761
+ amountIn,
89762
+ slippageBips,
89763
+ apiKey,
89764
+ apiBase = ENSO_API_BASE
89765
+ } = args;
89766
+ const params = new URLSearchParams({
89767
+ chainId: String(chainId),
89768
+ fromAddress,
89769
+ receiver,
89770
+ tokenIn,
89771
+ tokenOut,
89772
+ amountIn,
89773
+ slippage: String(slippageBips)
89774
+ });
89775
+ const headers = { Accept: "application/json" };
89776
+ if (apiKey) {
89777
+ headers["Authorization"] = `Bearer ${apiKey}`;
89778
+ }
89779
+ const response = await fetch(`${apiBase}/api/v1/shortcuts/route?${params.toString()}`, {
89780
+ headers
89781
+ });
89782
+ if (!response.ok) {
89783
+ throw new EnsoRouteApiError({
89784
+ status: response.status,
89785
+ statusText: response.statusText,
89786
+ tokenIn,
89787
+ tokenOut
89788
+ });
89789
+ }
89790
+ return await response.json();
89791
+ };
89792
+
89793
+ // src/integrations/enso/enso.ts
89794
+ var EnsoTokenType;
89795
+ ((EnsoTokenType2) => {
89796
+ EnsoTokenType2[EnsoTokenType2["Native"] = 0] = "Native";
89797
+ EnsoTokenType2[EnsoTokenType2["ERC20"] = 1] = "ERC20";
89798
+ })(EnsoTokenType ||= {});
89799
+ var ZERO_ADDRESS2 = "0x0000000000000000000000000000000000000000";
89800
+ var isNativeToken = (token) => token.toLowerCase() === ZERO_ADDRESS2;
89801
+ var encodeEnsoToken = (token, amount) => {
89802
+ if (isNativeToken(token)) {
89803
+ return {
89804
+ tokenType: 0 /* Native */,
89805
+ data: encodeAbiParameters([{ type: "uint256" }], [amount])
89806
+ };
89807
+ }
89808
+ return {
89809
+ tokenType: 1 /* ERC20 */,
89810
+ data: encodeAbiParameters([{ type: "address" }, { type: "uint256" }], [token, amount])
89811
+ };
89812
+ };
89813
+ var ROUTE_SINGLE_SELECTOR = "0xb94c3609";
89814
+
89815
+ class UnexpectedEnsoSelectorError extends Error {
89816
+ selector;
89817
+ constructor(selector) {
89818
+ super(`Expected routeSingle selector ${ROUTE_SINGLE_SELECTOR}, got ${selector}. ` + `The Enso API may have changed its output format.`);
89819
+ this.name = "UnexpectedEnsoSelectorError";
89820
+ this.selector = selector;
89821
+ }
89822
+ }
89823
+ var rewrapRouteSingleAsSafeRouteSingle = (args) => {
89824
+ const { routeSingleCalldata, tokenIn, amountIn, receiver } = args;
89825
+ const selector = routeSingleCalldata.slice(0, 10).toLowerCase();
89826
+ if (selector !== ROUTE_SINGLE_SELECTOR) {
89827
+ throw new UnexpectedEnsoSelectorError(selector);
89828
+ }
89829
+ const decoded = decodeFunctionData({
89830
+ abi: enso_router_abi_default,
89831
+ data: routeSingleCalldata
89832
+ });
89833
+ if (decoded.functionName !== "routeSingle") {
89834
+ throw new UnexpectedEnsoSelectorError(selector);
89835
+ }
89836
+ const [tokenOutStruct, bundle] = decoded.args;
89837
+ const tokenInStruct = encodeEnsoToken(tokenIn, amountIn);
89838
+ return encodeFunctionData({
89839
+ abi: enso_router_abi_default,
89840
+ functionName: "safeRouteSingle",
89841
+ args: [tokenInStruct, tokenOutStruct, receiver, bundle]
89842
+ });
89843
+ };
89844
+
89845
+ class EnsoUnexpectedRouterError extends Error {
89846
+ got;
89847
+ expected;
89848
+ constructor(got, expected) {
89849
+ super(`Enso API routed to ${got} but we expected RouterV2 ${expected}. ` + `Unsupported routing (e.g. EnsoWallet / ShortcutsDelegate) — aborting.`);
89850
+ this.name = "EnsoUnexpectedRouterError";
89851
+ this.got = got;
89852
+ this.expected = expected;
89853
+ }
89854
+ }
89855
+ var ensoSafeRouteSingleTrx = async (args) => {
89856
+ const { routerAddress, tokenIn, amountIn, receiver } = args;
89857
+ const route = await fetchEnsoRoute(args);
89858
+ if (route.tx.to.toLowerCase() !== routerAddress.toLowerCase()) {
89859
+ throw new EnsoUnexpectedRouterError(route.tx.to, routerAddress);
89860
+ }
89861
+ const safeRouteSingleCalldata = rewrapRouteSingleAsSafeRouteSingle({
89862
+ routeSingleCalldata: route.tx.data,
89863
+ tokenIn,
89864
+ amountIn: BigInt(amountIn),
89865
+ receiver
89866
+ });
89867
+ return createCall({
89868
+ to: routerAddress,
89869
+ data: safeRouteSingleCalldata,
89870
+ operation: 0,
89871
+ value: BigInt(route.tx.value || "0")
89872
+ });
89873
+ };
88338
89874
  // src/lib/utils.ts
88339
89875
  var executeTrx = ({
88340
89876
  client,
@@ -88429,4 +89965,4 @@ var simulateOrThrow = async (env2) => {
88429
89965
  };
88430
89966
  };
88431
89967
 
88432
- //# debugId=A4ABDA36EAFD3E7D64756E2164756E21
89968
+ //# debugId=AF938392ECFE167764756E2164756E21