viem 1.18.5 → 1.18.6

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.
Files changed (42) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/_cjs/chains/celo/formatters.js +23 -35
  3. package/_cjs/chains/celo/formatters.js.map +1 -1
  4. package/_cjs/chains/celo/serializers.js +20 -38
  5. package/_cjs/chains/celo/serializers.js.map +1 -1
  6. package/_cjs/chains/celo/utils.js +44 -0
  7. package/_cjs/chains/celo/utils.js.map +1 -0
  8. package/_cjs/chains/zksync/formatters.js +6 -2
  9. package/_cjs/chains/zksync/formatters.js.map +1 -1
  10. package/_cjs/errors/version.js +1 -1
  11. package/_esm/chains/celo/formatters.js +23 -35
  12. package/_esm/chains/celo/formatters.js.map +1 -1
  13. package/_esm/chains/celo/serializers.js +19 -44
  14. package/_esm/chains/celo/serializers.js.map +1 -1
  15. package/_esm/chains/celo/utils.js +39 -0
  16. package/_esm/chains/celo/utils.js.map +1 -0
  17. package/_esm/chains/zksync/formatters.js +6 -2
  18. package/_esm/chains/zksync/formatters.js.map +1 -1
  19. package/_esm/errors/version.js +1 -1
  20. package/_types/chains/celo/formatters.d.ts +6 -6
  21. package/_types/chains/celo/formatters.d.ts.map +1 -1
  22. package/_types/chains/celo/serializers.d.ts +3 -2
  23. package/_types/chains/celo/serializers.d.ts.map +1 -1
  24. package/_types/chains/celo/types.d.ts +12 -7
  25. package/_types/chains/celo/types.d.ts.map +1 -1
  26. package/_types/chains/celo/utils.d.ts +7 -0
  27. package/_types/chains/celo/utils.d.ts.map +1 -0
  28. package/_types/chains/definitions/celo.d.ts +6 -6
  29. package/_types/chains/definitions/celoAlfajores.d.ts +6 -6
  30. package/_types/chains/definitions/celoCannoli.d.ts +6 -6
  31. package/_types/chains/zksync/formatters.d.ts.map +1 -1
  32. package/_types/chains/zksync/types.d.ts +7 -7
  33. package/_types/chains/zksync/types.d.ts.map +1 -1
  34. package/_types/errors/version.d.ts +1 -1
  35. package/chains/celo/formatters.ts +24 -37
  36. package/chains/celo/serializers.ts +23 -59
  37. package/chains/celo/types.ts +29 -19
  38. package/chains/celo/utils.ts +68 -0
  39. package/chains/zksync/formatters.ts +6 -2
  40. package/chains/zksync/types.ts +7 -7
  41. package/errors/version.ts +1 -1
  42. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # viem
2
2
 
3
+ ## 1.18.6
4
+
5
+ ### Patch Changes
6
+
7
+ - [#1448](https://github.com/wagmi-dev/viem/pull/1448) [`c2fab4a7`](https://github.com/wagmi-dev/viem/commit/c2fab4a78878d46c6aad403f1ad54677632542eb) Thanks [@jxom](https://github.com/jxom)! - Fixed zkSync formatters.
8
+
9
+ - [#1434](https://github.com/wagmi-dev/viem/pull/1434) [`c0da695a`](https://github.com/wagmi-dev/viem/commit/c0da695a76225c7f24ca263f9109e34d8cd93dba) Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! - Fixed an issue where Celo CIP64 transactions were being recognized as EIP1559 transactions.
10
+
3
11
  ## 1.18.5
4
12
 
5
13
  ### Patch Changes
@@ -7,22 +7,7 @@ const block_js_1 = require("../../utils/formatters/block.js");
7
7
  const transaction_js_1 = require("../../utils/formatters/transaction.js");
8
8
  const transactionReceipt_js_1 = require("../../utils/formatters/transactionReceipt.js");
9
9
  const transactionRequest_js_1 = require("../../utils/formatters/transactionRequest.js");
10
- function isTransactionRequestCIP64(args) {
11
- if (args.type === 'cip64')
12
- return true;
13
- if (args.type)
14
- return false;
15
- return ('feeCurrency' in args &&
16
- args.gatewayFee === undefined &&
17
- args.gatewayFeeRecipient === undefined);
18
- }
19
- function isTransactionRequestCIP42(args) {
20
- if (args.type === 'cip42')
21
- return true;
22
- if (args.type)
23
- return false;
24
- return args.gatewayFee !== undefined || args.gatewayFeeRecipient !== undefined;
25
- }
10
+ const utils_js_1 = require("./utils.js");
26
11
  exports.formattersCelo = {
27
12
  block: (0, block_js_1.defineBlock)({
28
13
  exclude: ['difficulty', 'gasLimit', 'mixHash', 'nonce', 'uncles'],
@@ -51,15 +36,18 @@ exports.formattersCelo = {
51
36
  }),
52
37
  transaction: (0, transaction_js_1.defineTransaction)({
53
38
  format(args) {
39
+ const transaction = { feeCurrency: args.feeCurrency };
54
40
  if (args.type === '0x7b')
55
- return {
56
- feeCurrency: args.feeCurrency,
57
- };
58
- return {
59
- feeCurrency: args.feeCurrency,
60
- gatewayFee: args.gatewayFee ? (0, fromHex_js_1.hexToBigInt)(args.gatewayFee) : null,
61
- gatewayFeeRecipient: args.gatewayFeeRecipient,
62
- };
41
+ transaction.type = 'cip64';
42
+ else {
43
+ if (args.type === '0x7c')
44
+ transaction.type = 'cip42';
45
+ transaction.gatewayFee = args.gatewayFee
46
+ ? (0, fromHex_js_1.hexToBigInt)(args.gatewayFee)
47
+ : null;
48
+ transaction.gatewayFeeRecipient = args.gatewayFeeRecipient;
49
+ }
50
+ return transaction;
63
51
  },
64
52
  }),
65
53
  transactionReceipt: (0, transactionReceipt_js_1.defineTransactionReceipt)({
@@ -73,20 +61,20 @@ exports.formattersCelo = {
73
61
  }),
74
62
  transactionRequest: (0, transactionRequest_js_1.defineTransactionRequest)({
75
63
  format(args) {
76
- if (isTransactionRequestCIP64(args))
77
- return {
78
- type: '0x7b',
79
- feeCurrency: args.feeCurrency,
80
- };
81
64
  const request = {
82
65
  feeCurrency: args.feeCurrency,
83
- gatewayFee: typeof args.gatewayFee !== 'undefined'
84
- ? (0, toHex_js_1.numberToHex)(args.gatewayFee)
85
- : undefined,
86
- gatewayFeeRecipient: args.gatewayFeeRecipient,
87
66
  };
88
- if (isTransactionRequestCIP42(args))
89
- request.type = '0x7c';
67
+ if ((0, utils_js_1.isCIP64)(args))
68
+ request.type = '0x7b';
69
+ else {
70
+ if ((0, utils_js_1.isCIP42)(args))
71
+ request.type = '0x7c';
72
+ request.gatewayFee =
73
+ typeof args.gatewayFee !== 'undefined'
74
+ ? (0, toHex_js_1.numberToHex)(args.gatewayFee)
75
+ : undefined;
76
+ request.gatewayFeeRecipient = args.gatewayFeeRecipient;
77
+ }
90
78
  return request;
91
79
  },
92
80
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../../chains/celo/formatters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../../chains/celo/formatters.ts"],"names":[],"mappings":"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"}
@@ -12,11 +12,12 @@ const toHex_js_1 = require("../../utils/encoding/toHex.js");
12
12
  const toRlp_js_1 = require("../../utils/encoding/toRlp.js");
13
13
  const serializeAccessList_js_1 = require("../../utils/transaction/serializeAccessList.js");
14
14
  const serializeTransaction_js_1 = require("../../utils/transaction/serializeTransaction.js");
15
+ const utils_js_1 = require("./utils.js");
15
16
  const serializeTransactionCelo = (tx, signature) => {
16
- if (isCIP64(tx)) {
17
+ if ((0, utils_js_1.isCIP64)(tx)) {
17
18
  return serializeTransactionCIP64(tx, signature);
18
19
  }
19
- else if (isCIP42(tx)) {
20
+ else if ((0, utils_js_1.isCIP42)(tx)) {
20
21
  return serializeTransactionCIP42(tx, signature);
21
22
  }
22
23
  else {
@@ -65,7 +66,7 @@ function serializeTransactionCIP64(transaction, signature) {
65
66
  value ? (0, toHex_js_1.toHex)(value) : '0x',
66
67
  data ?? '0x',
67
68
  (0, serializeAccessList_js_1.serializeAccessList)(accessList),
68
- feeCurrency ?? '0x',
69
+ feeCurrency,
69
70
  ];
70
71
  if (signature) {
71
72
  serializedTransaction.push(signature.v === 27n ? '0x' : (0, toHex_js_1.toHex)(1), (0, trim_js_1.trim)(signature.r), (0, trim_js_1.trim)(signature.s));
@@ -75,29 +76,7 @@ function serializeTransactionCIP64(transaction, signature) {
75
76
  (0, toRlp_js_1.toRlp)(serializedTransaction),
76
77
  ]);
77
78
  }
78
- function isCIP42(transaction) {
79
- if (transaction.type === 'cip42')
80
- return true;
81
- if (transaction.type)
82
- return false;
83
- return ('maxFeePerGas' in transaction &&
84
- 'maxPriorityFeePerGas' in transaction &&
85
- ('feeCurrency' in transaction ||
86
- 'gatewayFee' in transaction ||
87
- 'gatewayFeeRecipient' in transaction));
88
- }
89
- function isCIP64(transaction) {
90
- if (transaction.type === 'cip64')
91
- return true;
92
- if (transaction.type)
93
- return false;
94
- return ('maxFeePerGas' in transaction &&
95
- 'maxPriorityFeePerGas' in transaction &&
96
- 'feeCurrency' in transaction &&
97
- !('gatewayFee' in transaction) &&
98
- !('gatewayFeeRecipient' in transaction));
99
- }
100
- const MAX_MAX_FEE_PER_GAS = 115792089237316195423570985008687907853269984665640564039457584007913129639935n;
79
+ const MAX_MAX_FEE_PER_GAS = 2n ** 256n - 1n;
101
80
  function assertTransactionCIP42(transaction) {
102
81
  const { chainId, maxPriorityFeePerGas, gasPrice, maxFeePerGas, to, feeCurrency, gatewayFee, gatewayFeeRecipient, } = transaction;
103
82
  if (chainId <= 0)
@@ -106,20 +85,23 @@ function assertTransactionCIP42(transaction) {
106
85
  throw new address_js_1.InvalidAddressError({ address: to });
107
86
  if (gasPrice)
108
87
  throw new base_js_1.BaseError('`gasPrice` is not a valid CIP-42 Transaction attribute.');
109
- if (maxFeePerGas && maxFeePerGas > MAX_MAX_FEE_PER_GAS)
88
+ if ((0, utils_js_1.isPresent)(maxFeePerGas) && maxFeePerGas > MAX_MAX_FEE_PER_GAS)
110
89
  throw new node_js_1.FeeCapTooHighError({ maxFeePerGas });
111
- if (maxPriorityFeePerGas &&
112
- maxFeePerGas &&
90
+ if ((0, utils_js_1.isPresent)(maxPriorityFeePerGas) &&
91
+ (0, utils_js_1.isPresent)(maxFeePerGas) &&
113
92
  maxPriorityFeePerGas > maxFeePerGas)
114
93
  throw new node_js_1.TipAboveFeeCapError({ maxFeePerGas, maxPriorityFeePerGas });
115
- if ((gatewayFee && !gatewayFeeRecipient) ||
116
- (gatewayFeeRecipient && !gatewayFee)) {
94
+ if (((0, utils_js_1.isPresent)(gatewayFee) && (0, utils_js_1.isEmpty)(gatewayFeeRecipient)) ||
95
+ ((0, utils_js_1.isPresent)(gatewayFeeRecipient) && (0, utils_js_1.isEmpty)(gatewayFee))) {
117
96
  throw new base_js_1.BaseError('`gatewayFee` and `gatewayFeeRecipient` must be provided together.');
118
97
  }
119
- if (feeCurrency && !feeCurrency?.startsWith('0x')) {
98
+ if ((0, utils_js_1.isPresent)(feeCurrency) && !(0, isAddress_js_1.isAddress)(feeCurrency)) {
120
99
  throw new base_js_1.BaseError('`feeCurrency` MUST be a token address for CIP-42 transactions.');
121
100
  }
122
- if (!feeCurrency && !gatewayFeeRecipient) {
101
+ if ((0, utils_js_1.isPresent)(gatewayFeeRecipient) && !(0, isAddress_js_1.isAddress)(gatewayFeeRecipient)) {
102
+ throw new address_js_1.InvalidAddressError(gatewayFeeRecipient);
103
+ }
104
+ if ((0, utils_js_1.isEmpty)(feeCurrency) && (0, utils_js_1.isEmpty)(gatewayFeeRecipient)) {
123
105
  throw new base_js_1.BaseError('Either `feeCurrency` or `gatewayFeeRecipient` must be provided for CIP-42 transactions.');
124
106
  }
125
107
  }
@@ -132,16 +114,16 @@ function assertTransactionCIP64(transaction) {
132
114
  throw new address_js_1.InvalidAddressError({ address: to });
133
115
  if (gasPrice)
134
116
  throw new base_js_1.BaseError('`gasPrice` is not a valid CIP-64 Transaction attribute.');
135
- if (maxFeePerGas && maxFeePerGas > MAX_MAX_FEE_PER_GAS)
117
+ if ((0, utils_js_1.isPresent)(maxFeePerGas) && maxFeePerGas > MAX_MAX_FEE_PER_GAS)
136
118
  throw new node_js_1.FeeCapTooHighError({ maxFeePerGas });
137
- if (maxPriorityFeePerGas &&
138
- maxFeePerGas &&
119
+ if ((0, utils_js_1.isPresent)(maxPriorityFeePerGas) &&
120
+ (0, utils_js_1.isPresent)(maxFeePerGas) &&
139
121
  maxPriorityFeePerGas > maxFeePerGas)
140
122
  throw new node_js_1.TipAboveFeeCapError({ maxFeePerGas, maxPriorityFeePerGas });
141
- if (feeCurrency && !feeCurrency?.startsWith('0x')) {
123
+ if ((0, utils_js_1.isPresent)(feeCurrency) && !feeCurrency?.startsWith('0x')) {
142
124
  throw new base_js_1.BaseError('`feeCurrency` MUST be a token address for CIP-64 transactions.');
143
125
  }
144
- if (!feeCurrency) {
126
+ if ((0, utils_js_1.isEmpty)(feeCurrency)) {
145
127
  throw new base_js_1.BaseError('`feeCurrency` must be provided for CIP-64 transactions.');
146
128
  }
147
129
  }
@@ -1 +1 @@
1
- {"version":3,"file":"serializers.js","sourceRoot":"","sources":["../../../chains/celo/serializers.ts"],"names":[],"mappings":";;;AAAA,wDAA6D;AAC7D,kDAAgD;AAChD,oDAA2D;AAC3D,kDAA8E;AAI9E,mEAA4D;AAC5D,0DAAsD;AACtD,sDAA+C;AAC/C,4DAAqD;AACrD,4DAAqD;AACrD,2FAAoF;AACpF,6FAGwD;AASjD,MAAM,wBAAwB,GAEjC,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE;IACpB,IAAI,OAAO,CAAC,EAAE,CAAC,EAAE;QACf,OAAO,yBAAyB,CAC9B,EAAkC,EAClC,SAAS,CACV,CAAA;KACF;SAAM,IAAI,OAAO,CAAC,EAAE,CAAC,EAAE;QACtB,OAAO,yBAAyB,CAC9B,EAAkC,EAClC,SAAS,CACV,CAAA;KACF;SAAM;QACL,OAAO,IAAA,8CAAoB,EAAC,EAA6B,EAAE,SAAS,CAAC,CAAA;KACtE;AACH,CAAC,CAAA;AAhBY,QAAA,wBAAwB,4BAgBpC;AAEY,QAAA,eAAe,GAAG;IAC7B,WAAW,EAAE,gCAAwB;CACF,CAAA;AAWrC,SAAS,yBAAyB,CAChC,WAAyC,EACzC,SAAqB;IAErB,sBAAsB,CAAC,WAAW,CAAC,CAAA;IACnC,MAAM,EACJ,OAAO,EACP,GAAG,EACH,KAAK,EACL,EAAE,EACF,KAAK,EACL,YAAY,EACZ,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,mBAAmB,EACnB,UAAU,EACV,IAAI,GACL,GAAG,WAAW,CAAA;IAEf,MAAM,qBAAqB,GAAG;QAC5B,IAAA,gBAAK,EAAC,OAAO,CAAC;QACd,KAAK,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;QAC3B,oBAAoB,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,IAAI;QACzD,YAAY,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;QACzC,GAAG,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;QACvB,WAAW,IAAI,IAAI;QACnB,mBAAmB,IAAI,IAAI;QAC3B,UAAU,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;QACrC,EAAE,IAAI,IAAI;QACV,KAAK,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;QAC3B,IAAI,IAAI,IAAI;QACZ,IAAA,4CAAmB,EAAC,UAAU,CAAC;KAChC,CAAA;IAED,IAAI,SAAS,EAAE;QACb,qBAAqB,CAAC,IAAI,CACxB,SAAS,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,CAAC,CAAC,EACrC,IAAA,cAAI,EAAC,SAAS,CAAC,CAAC,CAAC,EACjB,IAAA,cAAI,EAAC,SAAS,CAAC,CAAC,CAAC,CAClB,CAAA;KACF;IAED,OAAO,IAAA,qBAAS,EAAC;QACf,MAAM;QACN,IAAA,gBAAK,EAAC,qBAAqB,CAAC;KAC7B,CAAwC,CAAA;AAC3C,CAAC;AAED,SAAS,yBAAyB,CAChC,WAAyC,EACzC,SAAqB;IAErB,sBAAsB,CAAC,WAAW,CAAC,CAAA;IACnC,MAAM,EACJ,OAAO,EACP,GAAG,EACH,KAAK,EACL,EAAE,EACF,KAAK,EACL,YAAY,EACZ,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,IAAI,GACL,GAAG,WAAW,CAAA;IAEf,MAAM,qBAAqB,GAAG;QAC5B,IAAA,gBAAK,EAAC,OAAO,CAAC;QACd,KAAK,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;QAC3B,oBAAoB,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,IAAI;QACzD,YAAY,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;QACzC,GAAG,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;QACvB,EAAE,IAAI,IAAI;QACV,KAAK,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;QAC3B,IAAI,IAAI,IAAI;QACZ,IAAA,4CAAmB,EAAC,UAAU,CAAC;QAC/B,WAAW,IAAI,IAAI;KACpB,CAAA;IAED,IAAI,SAAS,EAAE;QACb,qBAAqB,CAAC,IAAI,CACxB,SAAS,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,gBAAK,EAAC,CAAC,CAAC,EACrC,IAAA,cAAI,EAAC,SAAS,CAAC,CAAC,CAAC,EACjB,IAAA,cAAI,EAAC,SAAS,CAAC,CAAC,CAAC,CAClB,CAAA;KACF;IAED,OAAO,IAAA,qBAAS,EAAC;QACf,MAAM;QACN,IAAA,gBAAK,EAAC,qBAAqB,CAAC;KAC7B,CAAwC,CAAA;AAC3C,CAAC;AAMD,SAAS,OAAO,CAAC,WAAwC;IACvD,IAAI,WAAW,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,IAAI,CAAA;IAE7C,IAAI,WAAW,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IAGlC,OAAO,CACL,cAAc,IAAI,WAAW;QAC7B,sBAAsB,IAAI,WAAW;QACrC,CAAC,aAAa,IAAI,WAAW;YAC3B,YAAY,IAAI,WAAW;YAC3B,qBAAqB,IAAI,WAAW,CAAC,CACxC,CAAA;AACH,CAAC;AAED,SAAS,OAAO,CAAC,WAAwC;IACvD,IAAI,WAAW,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,IAAI,CAAA;IAE7C,IAAI,WAAW,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IAGlC,OAAO,CACL,cAAc,IAAI,WAAW;QAC7B,sBAAsB,IAAI,WAAW;QACrC,aAAa,IAAI,WAAW;QAC5B,CAAC,CAAC,YAAY,IAAI,WAAW,CAAC;QAC9B,CAAC,CAAC,qBAAqB,IAAI,WAAW,CAAC,CACxC,CAAA;AACH,CAAC;AAGD,MAAM,mBAAmB,GACvB,+EAA+E,CAAA;AAEjF,SAAgB,sBAAsB,CACpC,WAAyC;IAEzC,MAAM,EACJ,OAAO,EACP,oBAAoB,EACpB,QAAQ,EACR,YAAY,EACZ,EAAE,EACF,WAAW,EACX,UAAU,EACV,mBAAmB,GACpB,GAAG,WAAW,CAAA;IACf,IAAI,OAAO,IAAI,CAAC;QAAE,MAAM,IAAI,8BAAmB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAC5D,IAAI,EAAE,IAAI,CAAC,IAAA,wBAAS,EAAC,EAAE,CAAC;QAAE,MAAM,IAAI,gCAAmB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAA;IACxE,IAAI,QAAQ;QACV,MAAM,IAAI,mBAAS,CACjB,yDAAyD,CAC1D,CAAA;IAEH,IAAI,YAAY,IAAI,YAAY,GAAG,mBAAmB;QACpD,MAAM,IAAI,4BAAkB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAA;IAEhD,IACE,oBAAoB;QACpB,YAAY;QACZ,oBAAoB,GAAG,YAAY;QAEnC,MAAM,IAAI,6BAAmB,CAAC,EAAE,YAAY,EAAE,oBAAoB,EAAE,CAAC,CAAA;IAEvE,IACE,CAAC,UAAU,IAAI,CAAC,mBAAmB,CAAC;QACpC,CAAC,mBAAmB,IAAI,CAAC,UAAU,CAAC,EACpC;QACA,MAAM,IAAI,mBAAS,CACjB,mEAAmE,CACpE,CAAA;KACF;IAED,IAAI,WAAW,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE;QACjD,MAAM,IAAI,mBAAS,CACjB,gEAAgE,CACjE,CAAA;KACF;IAED,IAAI,CAAC,WAAW,IAAI,CAAC,mBAAmB,EAAE;QACxC,MAAM,IAAI,mBAAS,CACjB,yFAAyF,CAC1F,CAAA;KACF;AACH,CAAC;AAlDD,wDAkDC;AAED,SAAgB,sBAAsB,CACpC,WAAyC;IAEzC,MAAM,EACJ,OAAO,EACP,oBAAoB,EACpB,QAAQ,EACR,YAAY,EACZ,EAAE,EACF,WAAW,GACZ,GAAG,WAAW,CAAA;IAEf,IAAI,OAAO,IAAI,CAAC;QAAE,MAAM,IAAI,8BAAmB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAC5D,IAAI,EAAE,IAAI,CAAC,IAAA,wBAAS,EAAC,EAAE,CAAC;QAAE,MAAM,IAAI,gCAAmB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAA;IAExE,IAAI,QAAQ;QACV,MAAM,IAAI,mBAAS,CACjB,yDAAyD,CAC1D,CAAA;IAEH,IAAI,YAAY,IAAI,YAAY,GAAG,mBAAmB;QACpD,MAAM,IAAI,4BAAkB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAA;IAChD,IACE,oBAAoB;QACpB,YAAY;QACZ,oBAAoB,GAAG,YAAY;QAEnC,MAAM,IAAI,6BAAmB,CAAC,EAAE,YAAY,EAAE,oBAAoB,EAAE,CAAC,CAAA;IAEvE,IAAI,WAAW,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE;QACjD,MAAM,IAAI,mBAAS,CACjB,gEAAgE,CACjE,CAAA;KACF;IAED,IAAI,CAAC,WAAW,EAAE;QAChB,MAAM,IAAI,mBAAS,CACjB,yDAAyD,CAC1D,CAAA;KACF;AACH,CAAC;AAxCD,wDAwCC"}
1
+ {"version":3,"file":"serializers.js","sourceRoot":"","sources":["../../../chains/celo/serializers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isCIP64 = exports.isCIP42 = exports.isEIP1559 = exports.isPresent = exports.isEmpty = void 0;
4
+ const trim_js_1 = require("../../utils/data/trim.js");
5
+ function isEmpty(value) {
6
+ return (value === 0 ||
7
+ value === 0n ||
8
+ value === undefined ||
9
+ value === null ||
10
+ value === '0' ||
11
+ value === '' ||
12
+ (typeof value === 'string' &&
13
+ ((0, trim_js_1.trim)(value).toLowerCase() === '0x' ||
14
+ (0, trim_js_1.trim)(value).toLowerCase() === '0x00')));
15
+ }
16
+ exports.isEmpty = isEmpty;
17
+ function isPresent(value) {
18
+ return !isEmpty(value);
19
+ }
20
+ exports.isPresent = isPresent;
21
+ function isEIP1559(transaction) {
22
+ return (isPresent(transaction.maxFeePerGas) &&
23
+ isPresent(transaction.maxPriorityFeePerGas));
24
+ }
25
+ exports.isEIP1559 = isEIP1559;
26
+ function isCIP42(transaction) {
27
+ if (transaction.type)
28
+ return transaction.type === 'cip42';
29
+ return (isEIP1559(transaction) &&
30
+ (isPresent(transaction.feeCurrency) ||
31
+ isPresent(transaction.gatewayFeeRecipient) ||
32
+ isPresent(transaction.gatewayFee)));
33
+ }
34
+ exports.isCIP42 = isCIP42;
35
+ function isCIP64(transaction) {
36
+ if (transaction.type)
37
+ return transaction.type === 'cip64';
38
+ return (isEIP1559(transaction) &&
39
+ isPresent(transaction.feeCurrency) &&
40
+ isEmpty(transaction.gatewayFee) &&
41
+ isEmpty(transaction.gatewayFeeRecipient));
42
+ }
43
+ exports.isCIP64 = isCIP64;
44
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../chains/celo/utils.ts"],"names":[],"mappings":";;;AACA,sDAA+C;AAQ/C,SAAgB,OAAO,CACrB,KAA2C;IAE3C,OAAO,CACL,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,EAAE;QACZ,KAAK,KAAK,SAAS;QACnB,KAAK,KAAK,IAAI;QACd,KAAK,KAAK,GAAG;QACb,KAAK,KAAK,EAAE;QACZ,CAAC,OAAO,KAAK,KAAK,QAAQ;YACxB,CAAC,IAAA,cAAI,EAAC,KAAgB,CAAC,CAAC,WAAW,EAAE,KAAK,IAAI;gBAC5C,IAAA,cAAI,EAAC,KAAgB,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,CACtD,CAAA;AACH,CAAC;AAdD,0BAcC;AAED,SAAgB,SAAS,CACvB,KAA2C;IAE3C,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC;AAJD,8BAIC;AAED,SAAgB,SAAS,CACvB,WAAiE;IAEjE,OAAO,CACL,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC;QACnC,SAAS,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAC5C,CAAA;AACH,CAAC;AAPD,8BAOC;AAGD,SAAgB,OAAO,CACrB,WAAiE;IAGjE,IAAI,WAAW,CAAC,IAAI;QAAE,OAAO,WAAW,CAAC,IAAI,KAAK,OAAO,CAAA;IAEzD,OAAO,CACL,SAAS,CAAC,WAAW,CAAC;QACtB,CAAC,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC;YACjC,SAAS,CAAC,WAAW,CAAC,mBAAmB,CAAC;YAC1C,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CACrC,CAAA;AACH,CAAC;AAZD,0BAYC;AAED,SAAgB,OAAO,CACrB,WAAiE;IAGjE,IAAI,WAAW,CAAC,IAAI;QAAE,OAAO,WAAW,CAAC,IAAI,KAAK,OAAO,CAAA;IAEzD,OAAO,CACL,SAAS,CAAC,WAAW,CAAC;QACtB,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC;QAClC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC;QAC/B,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,CACzC,CAAA;AACH,CAAC;AAZD,0BAYC"}
@@ -23,8 +23,12 @@ exports.formattersZkSync = {
23
23
  return formatted;
24
24
  });
25
25
  return {
26
- l1BatchNumber: (0, fromHex_js_1.hexToBigInt)(args.l1BatchNumber),
27
- l1BatchTimestamp: (0, fromHex_js_1.hexToBigInt)(args.l1BatchTimestamp),
26
+ l1BatchNumber: args.l1BatchNumber
27
+ ? (0, fromHex_js_1.hexToBigInt)(args.l1BatchNumber)
28
+ : null,
29
+ l1BatchTimestamp: args.l1BatchTimestamp
30
+ ? (0, fromHex_js_1.hexToBigInt)(args.l1BatchTimestamp)
31
+ : null,
28
32
  transactions,
29
33
  };
30
34
  },
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../../chains/zksync/formatters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../../chains/zksync/formatters.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = void 0;
4
- exports.version = '1.18.4';
4
+ exports.version = '1.18.6';
5
5
  //# sourceMappingURL=version.js.map
@@ -5,22 +5,7 @@ import { defineBlock } from '../../utils/formatters/block.js';
5
5
  import { defineTransaction, formatTransaction, } from '../../utils/formatters/transaction.js';
6
6
  import { defineTransactionReceipt } from '../../utils/formatters/transactionReceipt.js';
7
7
  import { defineTransactionRequest } from '../../utils/formatters/transactionRequest.js';
8
- function isTransactionRequestCIP64(args) {
9
- if (args.type === 'cip64')
10
- return true;
11
- if (args.type)
12
- return false;
13
- return ('feeCurrency' in args &&
14
- args.gatewayFee === undefined &&
15
- args.gatewayFeeRecipient === undefined);
16
- }
17
- function isTransactionRequestCIP42(args) {
18
- if (args.type === 'cip42')
19
- return true;
20
- if (args.type)
21
- return false;
22
- return args.gatewayFee !== undefined || args.gatewayFeeRecipient !== undefined;
23
- }
8
+ import { isCIP42, isCIP64 } from './utils.js';
24
9
  export const formattersCelo = {
25
10
  block: /*#__PURE__*/ defineBlock({
26
11
  exclude: ['difficulty', 'gasLimit', 'mixHash', 'nonce', 'uncles'],
@@ -49,15 +34,18 @@ export const formattersCelo = {
49
34
  }),
50
35
  transaction: /*#__PURE__*/ defineTransaction({
51
36
  format(args) {
37
+ const transaction = { feeCurrency: args.feeCurrency };
52
38
  if (args.type === '0x7b')
53
- return {
54
- feeCurrency: args.feeCurrency,
55
- };
56
- return {
57
- feeCurrency: args.feeCurrency,
58
- gatewayFee: args.gatewayFee ? hexToBigInt(args.gatewayFee) : null,
59
- gatewayFeeRecipient: args.gatewayFeeRecipient,
60
- };
39
+ transaction.type = 'cip64';
40
+ else {
41
+ if (args.type === '0x7c')
42
+ transaction.type = 'cip42';
43
+ transaction.gatewayFee = args.gatewayFee
44
+ ? hexToBigInt(args.gatewayFee)
45
+ : null;
46
+ transaction.gatewayFeeRecipient = args.gatewayFeeRecipient;
47
+ }
48
+ return transaction;
61
49
  },
62
50
  }),
63
51
  transactionReceipt: /*#__PURE__*/ defineTransactionReceipt({
@@ -71,20 +59,20 @@ export const formattersCelo = {
71
59
  }),
72
60
  transactionRequest: /*#__PURE__*/ defineTransactionRequest({
73
61
  format(args) {
74
- if (isTransactionRequestCIP64(args))
75
- return {
76
- type: '0x7b',
77
- feeCurrency: args.feeCurrency,
78
- };
79
62
  const request = {
80
63
  feeCurrency: args.feeCurrency,
81
- gatewayFee: typeof args.gatewayFee !== 'undefined'
82
- ? numberToHex(args.gatewayFee)
83
- : undefined,
84
- gatewayFeeRecipient: args.gatewayFeeRecipient,
85
64
  };
86
- if (isTransactionRequestCIP42(args))
87
- request.type = '0x7c';
65
+ if (isCIP64(args))
66
+ request.type = '0x7b';
67
+ else {
68
+ if (isCIP42(args))
69
+ request.type = '0x7c';
70
+ request.gatewayFee =
71
+ typeof args.gatewayFee !== 'undefined'
72
+ ? numberToHex(args.gatewayFee)
73
+ : undefined;
74
+ request.gatewayFeeRecipient = args.gatewayFeeRecipient;
75
+ }
88
76
  return request;
89
77
  },
90
78
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../../chains/celo/formatters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../../chains/celo/formatters.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ import { toHex } from '../../utils/encoding/toHex.js';
9
9
  import { toRlp } from '../../utils/encoding/toRlp.js';
10
10
  import { serializeAccessList } from '../../utils/transaction/serializeAccessList.js';
11
11
  import { serializeTransaction, } from '../../utils/transaction/serializeTransaction.js';
12
+ import { isCIP42, isCIP64, isEmpty, isPresent } from './utils.js';
12
13
  export const serializeTransactionCelo = (tx, signature) => {
13
14
  if (isCIP64(tx)) {
14
15
  return serializeTransactionCIP64(tx, signature);
@@ -65,7 +66,7 @@ function serializeTransactionCIP64(transaction, signature) {
65
66
  value ? toHex(value) : '0x',
66
67
  data ?? '0x',
67
68
  serializeAccessList(accessList),
68
- feeCurrency ?? '0x',
69
+ feeCurrency,
69
70
  ];
70
71
  if (signature) {
71
72
  serializedTransaction.push(signature.v === 27n ? '0x' : toHex(1), // yParity
@@ -76,37 +77,8 @@ function serializeTransactionCIP64(transaction, signature) {
76
77
  toRlp(serializedTransaction),
77
78
  ]);
78
79
  }
79
- //////////////////////////////////////////////////////////////////////////////
80
- // Utilities
81
- // process as CIP42 if any of these fields are present. realistically gatewayfee is not used but is part of spec
82
- function isCIP42(transaction) {
83
- if (transaction.type === 'cip42')
84
- return true;
85
- // if the type is defined as anything else, assume it is *not* cip42
86
- if (transaction.type)
87
- return false;
88
- // if the type is undefined, check if the fields match the expectations for cip42
89
- return ('maxFeePerGas' in transaction &&
90
- 'maxPriorityFeePerGas' in transaction &&
91
- ('feeCurrency' in transaction ||
92
- 'gatewayFee' in transaction ||
93
- 'gatewayFeeRecipient' in transaction));
94
- }
95
- function isCIP64(transaction) {
96
- if (transaction.type === 'cip64')
97
- return true;
98
- // if the type is defined as anything else, assume it is *not* cip64
99
- if (transaction.type)
100
- return false;
101
- // if the type is undefined, check if the fields match the expectations for cip64
102
- return ('maxFeePerGas' in transaction &&
103
- 'maxPriorityFeePerGas' in transaction &&
104
- 'feeCurrency' in transaction &&
105
- !('gatewayFee' in transaction) &&
106
- !('gatewayFeeRecipient' in transaction));
107
- }
108
- // maxFeePerGas must be less than 2^256 - 1: however writing like that caused exceptions to be raised
109
- const MAX_MAX_FEE_PER_GAS = 115792089237316195423570985008687907853269984665640564039457584007913129639935n;
80
+ // maxFeePerGas must be less than 2^256 - 1
81
+ const MAX_MAX_FEE_PER_GAS = 2n ** 256n - 1n;
110
82
  export function assertTransactionCIP42(transaction) {
111
83
  const { chainId, maxPriorityFeePerGas, gasPrice, maxFeePerGas, to, feeCurrency, gatewayFee, gatewayFeeRecipient, } = transaction;
112
84
  if (chainId <= 0)
@@ -115,20 +87,23 @@ export function assertTransactionCIP42(transaction) {
115
87
  throw new InvalidAddressError({ address: to });
116
88
  if (gasPrice)
117
89
  throw new BaseError('`gasPrice` is not a valid CIP-42 Transaction attribute.');
118
- if (maxFeePerGas && maxFeePerGas > MAX_MAX_FEE_PER_GAS)
90
+ if (isPresent(maxFeePerGas) && maxFeePerGas > MAX_MAX_FEE_PER_GAS)
119
91
  throw new FeeCapTooHighError({ maxFeePerGas });
120
- if (maxPriorityFeePerGas &&
121
- maxFeePerGas &&
92
+ if (isPresent(maxPriorityFeePerGas) &&
93
+ isPresent(maxFeePerGas) &&
122
94
  maxPriorityFeePerGas > maxFeePerGas)
123
95
  throw new TipAboveFeeCapError({ maxFeePerGas, maxPriorityFeePerGas });
124
- if ((gatewayFee && !gatewayFeeRecipient) ||
125
- (gatewayFeeRecipient && !gatewayFee)) {
96
+ if ((isPresent(gatewayFee) && isEmpty(gatewayFeeRecipient)) ||
97
+ (isPresent(gatewayFeeRecipient) && isEmpty(gatewayFee))) {
126
98
  throw new BaseError('`gatewayFee` and `gatewayFeeRecipient` must be provided together.');
127
99
  }
128
- if (feeCurrency && !feeCurrency?.startsWith('0x')) {
100
+ if (isPresent(feeCurrency) && !isAddress(feeCurrency)) {
129
101
  throw new BaseError('`feeCurrency` MUST be a token address for CIP-42 transactions.');
130
102
  }
131
- if (!feeCurrency && !gatewayFeeRecipient) {
103
+ if (isPresent(gatewayFeeRecipient) && !isAddress(gatewayFeeRecipient)) {
104
+ throw new InvalidAddressError(gatewayFeeRecipient);
105
+ }
106
+ if (isEmpty(feeCurrency) && isEmpty(gatewayFeeRecipient)) {
132
107
  throw new BaseError('Either `feeCurrency` or `gatewayFeeRecipient` must be provided for CIP-42 transactions.');
133
108
  }
134
109
  }
@@ -140,16 +115,16 @@ export function assertTransactionCIP64(transaction) {
140
115
  throw new InvalidAddressError({ address: to });
141
116
  if (gasPrice)
142
117
  throw new BaseError('`gasPrice` is not a valid CIP-64 Transaction attribute.');
143
- if (maxFeePerGas && maxFeePerGas > MAX_MAX_FEE_PER_GAS)
118
+ if (isPresent(maxFeePerGas) && maxFeePerGas > MAX_MAX_FEE_PER_GAS)
144
119
  throw new FeeCapTooHighError({ maxFeePerGas });
145
- if (maxPriorityFeePerGas &&
146
- maxFeePerGas &&
120
+ if (isPresent(maxPriorityFeePerGas) &&
121
+ isPresent(maxFeePerGas) &&
147
122
  maxPriorityFeePerGas > maxFeePerGas)
148
123
  throw new TipAboveFeeCapError({ maxFeePerGas, maxPriorityFeePerGas });
149
- if (feeCurrency && !feeCurrency?.startsWith('0x')) {
124
+ if (isPresent(feeCurrency) && !feeCurrency?.startsWith('0x')) {
150
125
  throw new BaseError('`feeCurrency` MUST be a token address for CIP-64 transactions.');
151
126
  }
152
- if (!feeCurrency) {
127
+ if (isEmpty(feeCurrency)) {
153
128
  throw new BaseError('`feeCurrency` must be provided for CIP-64 transactions.');
154
129
  }
155
130
  }
@@ -1 +1 @@
1
- {"version":3,"file":"serializers.js","sourceRoot":"","sources":["../../../chains/celo/serializers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serializers.js","sourceRoot":"","sources":["../../../chains/celo/serializers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { trim } from '../../utils/data/trim.js';
2
+ export function isEmpty(value) {
3
+ return (value === 0 ||
4
+ value === 0n ||
5
+ value === undefined ||
6
+ value === null ||
7
+ value === '0' ||
8
+ value === '' ||
9
+ (typeof value === 'string' &&
10
+ (trim(value).toLowerCase() === '0x' ||
11
+ trim(value).toLowerCase() === '0x00')));
12
+ }
13
+ export function isPresent(value) {
14
+ return !isEmpty(value);
15
+ }
16
+ export function isEIP1559(transaction) {
17
+ return (isPresent(transaction.maxFeePerGas) &&
18
+ isPresent(transaction.maxPriorityFeePerGas));
19
+ }
20
+ // process as CIP42 if any of these fields are present. realistically gatewayfee is not used but is part of spec
21
+ export function isCIP42(transaction) {
22
+ // Enable end-user to force the tx to be considered as a cip42
23
+ if (transaction.type)
24
+ return transaction.type === 'cip42';
25
+ return (isEIP1559(transaction) &&
26
+ (isPresent(transaction.feeCurrency) ||
27
+ isPresent(transaction.gatewayFeeRecipient) ||
28
+ isPresent(transaction.gatewayFee)));
29
+ }
30
+ export function isCIP64(transaction) {
31
+ // Enable end-user to force the tx to be considered as a cip64
32
+ if (transaction.type)
33
+ return transaction.type === 'cip64';
34
+ return (isEIP1559(transaction) &&
35
+ isPresent(transaction.feeCurrency) &&
36
+ isEmpty(transaction.gatewayFee) &&
37
+ isEmpty(transaction.gatewayFeeRecipient));
38
+ }
39
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../chains/celo/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAQ/C,MAAM,UAAU,OAAO,CACrB,KAA2C;IAE3C,OAAO,CACL,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,EAAE;QACZ,KAAK,KAAK,SAAS;QACnB,KAAK,KAAK,IAAI;QACd,KAAK,KAAK,GAAG;QACb,KAAK,KAAK,EAAE;QACZ,CAAC,OAAO,KAAK,KAAK,QAAQ;YACxB,CAAC,IAAI,CAAC,KAAgB,CAAC,CAAC,WAAW,EAAE,KAAK,IAAI;gBAC5C,IAAI,CAAC,KAAgB,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,CACtD,CAAA;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CACvB,KAA2C;IAE3C,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,SAAS,CACvB,WAAiE;IAEjE,OAAO,CACL,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC;QACnC,SAAS,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAC5C,CAAA;AACH,CAAC;AAED,gHAAgH;AAChH,MAAM,UAAU,OAAO,CACrB,WAAiE;IAEjE,8DAA8D;IAC9D,IAAI,WAAW,CAAC,IAAI;QAAE,OAAO,WAAW,CAAC,IAAI,KAAK,OAAO,CAAA;IAEzD,OAAO,CACL,SAAS,CAAC,WAAW,CAAC;QACtB,CAAC,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC;YACjC,SAAS,CAAC,WAAW,CAAC,mBAAmB,CAAC;YAC1C,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CACrC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,OAAO,CACrB,WAAiE;IAEjE,8DAA8D;IAC9D,IAAI,WAAW,CAAC,IAAI;QAAE,OAAO,WAAW,CAAC,IAAI,KAAK,OAAO,CAAA;IAEzD,OAAO,CACL,SAAS,CAAC,WAAW,CAAC;QACtB,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC;QAClC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC;QAC/B,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,CACzC,CAAA;AACH,CAAC"}