@taquito/michel-codec 11.2.0 → 12.0.1

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 (36) hide show
  1. package/README.md +54 -20
  2. package/dist/lib/base58.js +88 -37
  3. package/dist/lib/base58.js.map +1 -1
  4. package/dist/lib/binary.js +401 -242
  5. package/dist/lib/binary.js.map +1 -1
  6. package/dist/lib/formatters.js +15 -11
  7. package/dist/lib/formatters.js.map +1 -1
  8. package/dist/lib/global-constants.js +4 -1
  9. package/dist/lib/global-constants.js.map +1 -1
  10. package/dist/lib/macros.js +227 -218
  11. package/dist/lib/macros.js.map +1 -1
  12. package/dist/lib/michelson-contract.js +10 -15
  13. package/dist/lib/michelson-contract.js.map +1 -1
  14. package/dist/lib/michelson-typecheck.js +32 -45
  15. package/dist/lib/michelson-typecheck.js.map +1 -1
  16. package/dist/lib/michelson-types.js.map +1 -1
  17. package/dist/lib/michelson-validator.js +233 -121
  18. package/dist/lib/michelson-validator.js.map +1 -1
  19. package/dist/lib/scan.js +20 -20
  20. package/dist/lib/scan.js.map +1 -1
  21. package/dist/lib/utils.js +1 -1
  22. package/dist/lib/version.js +2 -2
  23. package/dist/taquito-michel-codec.es6.js +1036 -807
  24. package/dist/taquito-michel-codec.es6.js.map +1 -1
  25. package/dist/taquito-michel-codec.umd.js +1036 -807
  26. package/dist/taquito-michel-codec.umd.js.map +1 -1
  27. package/dist/types/binary.d.ts +4 -4
  28. package/dist/types/formatters.d.ts +3 -3
  29. package/dist/types/macros.d.ts +2 -2
  30. package/dist/types/michelson-contract.d.ts +4 -4
  31. package/dist/types/michelson-types.d.ts +2 -1
  32. package/dist/types/michelson-validator.d.ts +7 -7
  33. package/dist/types/scan.d.ts +1 -1
  34. package/dist/types/taquito-michel-codec.d.ts +12 -12
  35. package/package.json +2 -2
  36. package/signature.json +7 -27
package/README.md CHANGED
@@ -1,12 +1,12 @@
1
- # Taquito michel-codec package
1
+ # Taquito michel-codec package
2
2
 
3
3
  `@taquito/michel-codec` Converts and validates Michelson expressions between JSON based Michelson and Micheline.
4
4
 
5
5
  This package can:
6
6
 
7
- * Retrieve Michelson in JSON form from the Tezos Node RPC and convert it to plain Michelson.
8
- * Parse plain Michelson (including Macros) and expand/convert it to JSON Michelson suitable for injection into the Tezo Blockchain.
9
- * Validate Michelson to ensure correctness
7
+ - Retrieve Michelson in JSON form from the Tezos Node RPC and convert it to plain Michelson.
8
+ - Parse plain Michelson (including Macros) and expand/convert it to JSON Michelson suitable for injection into the Tezo Blockchain.
9
+ - Validate Michelson to ensure correctness
10
10
 
11
11
  See the top-level project [https://github.com/ecadlabs/taquito](https://github.com/ecadlabs/taquito) for details on reporting issues, contributing and versioning.
12
12
 
@@ -15,25 +15,57 @@ See the top-level project [https://github.com/ecadlabs/taquito](https://github.c
15
15
  ### Michelson expression to JSON
16
16
 
17
17
  ```js
18
- const code = `(Pair
18
+ const code = `(Pair
19
19
  (Pair { Elt 1 (Pair (Pair "tz1gjaF81ZRRvdzjobyfVNsAeSC6PScjfQwN" "tz1KqTpEZ7Yob7QbPE4Hy4Wo8fHG8LhKxZSx") 0x0501000000026869)}
20
20
  10000000)
21
21
  (Pair 2 333)
22
22
  )`;
23
23
 
24
- const p = new Parser()
24
+ const p = new Parser();
25
25
 
26
- const result = p.parseMichelineExpression(code)
27
- console.log(JSON.stringify(result))
26
+ const result = p.parseMichelineExpression(code);
27
+ console.log(JSON.stringify(result));
28
28
  ```
29
29
 
30
30
  Output:
31
31
 
32
32
  ```json
33
- {"prim":"Pair","args":[{"prim":"Pair","args":[[{"prim":"Elt","args":[{"int":"1"},{"prim":"Pair","args":[{"prim":"Pair","args":[{"string":"tz1gjaF81ZRRvdzjobyfVNsAeSC6PScjfQwN"},{"string":"tz1KqTpEZ7Yob7QbPE4Hy4Wo8fHG8LhKxZSx"}]},{"bytes":"0501000000026869"}]}]}],{"int":"10000000"}]},{"prim":"Pair","args":[{"int":"2"},{"int":"333"}]}]}
33
+ {
34
+ "prim": "Pair",
35
+ "args": [
36
+ {
37
+ "prim": "Pair",
38
+ "args": [
39
+ [
40
+ {
41
+ "prim": "Elt",
42
+ "args": [
43
+ { "int": "1" },
44
+ {
45
+ "prim": "Pair",
46
+ "args": [
47
+ {
48
+ "prim": "Pair",
49
+ "args": [
50
+ { "string": "tz1gjaF81ZRRvdzjobyfVNsAeSC6PScjfQwN" },
51
+ { "string": "tz1KqTpEZ7Yob7QbPE4Hy4Wo8fHG8LhKxZSx" }
52
+ ]
53
+ },
54
+ { "bytes": "0501000000026869" }
55
+ ]
56
+ }
57
+ ]
58
+ }
59
+ ],
60
+ { "int": "10000000" }
61
+ ]
62
+ },
63
+ { "prim": "Pair", "args": [{ "int": "2" }, { "int": "333" }] }
64
+ ]
65
+ }
34
66
  ```
35
67
 
36
- ### Pretty Print a Michelson contract
68
+ ### Pretty Print a Michelson contract
37
69
 
38
70
  ```js
39
71
  const contract = await Tezos.contract.at('KT1EctCuorV2NfVb1XTQgvzJ88MQtWP8cMMv')
@@ -51,11 +83,11 @@ Type definition allows some types like `timestamp` and `address` and other base5
51
83
 
52
84
  ```js
53
85
  const data: MichelsonData = {
54
- string: "KT1RvkwF4F7pz1gCoxkyZrG1RkrxQy3gmFTv%foo"
86
+ string: 'KT1RvkwF4F7pz1gCoxkyZrG1RkrxQy3gmFTv%foo',
55
87
  };
56
88
 
57
89
  const typ: MichelsonType = {
58
- prim: "address"
90
+ prim: 'address',
59
91
  };
60
92
 
61
93
  const packed = packData(data, typ);
@@ -67,9 +99,10 @@ const packedBytes = packDataBytes(data, typ);
67
99
  ```
68
100
 
69
101
  Without a type definition the base58 encoded address will be treated as a string
102
+
70
103
  ```js
71
104
  const data: MichelsonData = {
72
- string: "KT1RvkwF4F7pz1gCoxkyZrG1RkrxQy3gmFTv%foo"
105
+ string: 'KT1RvkwF4F7pz1gCoxkyZrG1RkrxQy3gmFTv%foo',
73
106
  };
74
107
 
75
108
  const packed = packData(data);
@@ -78,7 +111,7 @@ const packed = packData(data);
78
111
  // alternatively
79
112
  const packedBytes = packDataBytes(data);
80
113
  // {
81
- // bytes: "0501000000284b543152766b7746344637707a3167436f786b795a724731526b7278517933676d46547625666f6f"
114
+ // bytes: "0501000000284b543152766b7746344637707a3167436f786b795a724731526b7278517933676d46547625666f6f"
82
115
  // }
83
116
  ```
84
117
 
@@ -92,7 +125,7 @@ Type definition allows some types like `timestamp` and `address` and other types
92
125
  const src = [0x05, 0x00, 0xa7, 0xe8, 0xe4, 0xd8, 0x0b];
93
126
 
94
127
  const typ: MichelsonType = {
95
- prim: "timestamp"
128
+ prim: 'timestamp',
96
129
  };
97
130
 
98
131
  const data = unpackData(src, typ);
@@ -100,11 +133,12 @@ const data = unpackData(src, typ);
100
133
  ```
101
134
 
102
135
  Alternatively
136
+
103
137
  ```js
104
- const src = { bytes: "0500a7e8e4d80b" };
138
+ const src = { bytes: '0500a7e8e4d80b' };
105
139
 
106
140
  const typ: MichelsonType = {
107
- prim: "timestamp"
141
+ prim: 'timestamp',
108
142
  };
109
143
 
110
144
  const data = unpackDataBytes(src, typ);
@@ -112,6 +146,7 @@ const data = unpackDataBytes(src, typ);
112
146
  ```
113
147
 
114
148
  Same binary data without a type definition
149
+
115
150
  ```js
116
151
  const src = [0x05, 0x00, 0xa7, 0xe8, 0xe4, 0xd8, 0x0b];
117
152
 
@@ -120,8 +155,9 @@ const data = unpackData(src);
120
155
  ```
121
156
 
122
157
  Alternatively
158
+
123
159
  ```js
124
- const src = { bytes: "0500a7e8e4d80b" };
160
+ const src = { bytes: '0500a7e8e4d80b' };
125
161
 
126
162
  const data = unpackDataBytes(src);
127
163
  // { int: "1569495591" }
@@ -134,5 +170,3 @@ TypeDoc style documentation is available on-line [here](https://tezostaquito.io/
134
170
  ## Disclaimer
135
171
 
136
172
  THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
137
-
138
-
@@ -9,17 +9,73 @@ const H = [
9
9
  0x510e527f | 0,
10
10
  0x9b05688c | 0,
11
11
  0x1f83d9ab | 0,
12
- 0x5be0cd19 | 0
12
+ 0x5be0cd19 | 0,
13
13
  ];
14
14
  const K = [
15
- 0x428a2f98 | 0, 0x71374491 | 0, 0xb5c0fbcf | 0, 0xe9b5dba5 | 0, 0x3956c25b | 0, 0x59f111f1 | 0, 0x923f82a4 | 0, 0xab1c5ed5 | 0,
16
- 0xd807aa98 | 0, 0x12835b01 | 0, 0x243185be | 0, 0x550c7dc3 | 0, 0x72be5d74 | 0, 0x80deb1fe | 0, 0x9bdc06a7 | 0, 0xc19bf174 | 0,
17
- 0xe49b69c1 | 0, 0xefbe4786 | 0, 0x0fc19dc6 | 0, 0x240ca1cc | 0, 0x2de92c6f | 0, 0x4a7484aa | 0, 0x5cb0a9dc | 0, 0x76f988da | 0,
18
- 0x983e5152 | 0, 0xa831c66d | 0, 0xb00327c8 | 0, 0xbf597fc7 | 0, 0xc6e00bf3 | 0, 0xd5a79147 | 0, 0x06ca6351 | 0, 0x14292967 | 0,
19
- 0x27b70a85 | 0, 0x2e1b2138 | 0, 0x4d2c6dfc | 0, 0x53380d13 | 0, 0x650a7354 | 0, 0x766a0abb | 0, 0x81c2c92e | 0, 0x92722c85 | 0,
20
- 0xa2bfe8a1 | 0, 0xa81a664b | 0, 0xc24b8b70 | 0, 0xc76c51a3 | 0, 0xd192e819 | 0, 0xd6990624 | 0, 0xf40e3585 | 0, 0x106aa070 | 0,
21
- 0x19a4c116 | 0, 0x1e376c08 | 0, 0x2748774c | 0, 0x34b0bcb5 | 0, 0x391c0cb3 | 0, 0x4ed8aa4a | 0, 0x5b9cca4f | 0, 0x682e6ff3 | 0,
22
- 0x748f82ee | 0, 0x78a5636f | 0, 0x84c87814 | 0, 0x8cc70208 | 0, 0x90befffa | 0, 0xa4506ceb | 0, 0xbef9a3f7 | 0, 0xc67178f2 | 0
15
+ 0x428a2f98 | 0,
16
+ 0x71374491 | 0,
17
+ 0xb5c0fbcf | 0,
18
+ 0xe9b5dba5 | 0,
19
+ 0x3956c25b | 0,
20
+ 0x59f111f1 | 0,
21
+ 0x923f82a4 | 0,
22
+ 0xab1c5ed5 | 0,
23
+ 0xd807aa98 | 0,
24
+ 0x12835b01 | 0,
25
+ 0x243185be | 0,
26
+ 0x550c7dc3 | 0,
27
+ 0x72be5d74 | 0,
28
+ 0x80deb1fe | 0,
29
+ 0x9bdc06a7 | 0,
30
+ 0xc19bf174 | 0,
31
+ 0xe49b69c1 | 0,
32
+ 0xefbe4786 | 0,
33
+ 0x0fc19dc6 | 0,
34
+ 0x240ca1cc | 0,
35
+ 0x2de92c6f | 0,
36
+ 0x4a7484aa | 0,
37
+ 0x5cb0a9dc | 0,
38
+ 0x76f988da | 0,
39
+ 0x983e5152 | 0,
40
+ 0xa831c66d | 0,
41
+ 0xb00327c8 | 0,
42
+ 0xbf597fc7 | 0,
43
+ 0xc6e00bf3 | 0,
44
+ 0xd5a79147 | 0,
45
+ 0x06ca6351 | 0,
46
+ 0x14292967 | 0,
47
+ 0x27b70a85 | 0,
48
+ 0x2e1b2138 | 0,
49
+ 0x4d2c6dfc | 0,
50
+ 0x53380d13 | 0,
51
+ 0x650a7354 | 0,
52
+ 0x766a0abb | 0,
53
+ 0x81c2c92e | 0,
54
+ 0x92722c85 | 0,
55
+ 0xa2bfe8a1 | 0,
56
+ 0xa81a664b | 0,
57
+ 0xc24b8b70 | 0,
58
+ 0xc76c51a3 | 0,
59
+ 0xd192e819 | 0,
60
+ 0xd6990624 | 0,
61
+ 0xf40e3585 | 0,
62
+ 0x106aa070 | 0,
63
+ 0x19a4c116 | 0,
64
+ 0x1e376c08 | 0,
65
+ 0x2748774c | 0,
66
+ 0x34b0bcb5 | 0,
67
+ 0x391c0cb3 | 0,
68
+ 0x4ed8aa4a | 0,
69
+ 0x5b9cca4f | 0,
70
+ 0x682e6ff3 | 0,
71
+ 0x748f82ee | 0,
72
+ 0x78a5636f | 0,
73
+ 0x84c87814 | 0,
74
+ 0x8cc70208 | 0,
75
+ 0x90befffa | 0,
76
+ 0xa4506ceb | 0,
77
+ 0xbef9a3f7 | 0,
78
+ 0xc67178f2 | 0,
23
79
  ];
24
80
  // https://tools.ietf.org/html/rfc6234
25
81
  function sha256(msg) {
@@ -33,8 +89,15 @@ function sha256(msg) {
33
89
  const buffer = [
34
90
  ...msg,
35
91
  0x80,
36
- ...(new Array(pad).fill(0)),
37
- 0, 0, 0, 0, (l >> 24) & 0xff, (l >> 16) & 0xff, (l >> 8) & 0xff, l & 0xff,
92
+ ...new Array(pad).fill(0),
93
+ 0,
94
+ 0,
95
+ 0,
96
+ 0,
97
+ (l >> 24) & 0xff,
98
+ (l >> 16) & 0xff,
99
+ (l >> 8) & 0xff,
100
+ l & 0xff,
38
101
  ];
39
102
  function ror(x, n) {
40
103
  return (x >>> n) | (x << (32 - n));
@@ -62,8 +125,8 @@ function sha256(msg) {
62
125
  for (let i = 0; i < 64; i++) {
63
126
  const b0 = ror(v[0], 2) ^ ror(v[0], 13) ^ ror(v[0], 22);
64
127
  const b1 = ror(v[4], 6) ^ ror(v[4], 11) ^ ror(v[4], 25);
65
- const t1 = (v[7] + b1 + ((v[4] & v[5]) ^ ((~v[4]) & v[6])) + K[i] + w[i]) | 0;
66
- const t2 = (b0 + (((v[0] & v[1]) ^ (v[0] & v[2]) ^ (v[1] & v[2])))) | 0;
128
+ const t1 = (v[7] + b1 + ((v[4] & v[5]) ^ (~v[4] & v[6])) + K[i] + w[i]) | 0;
129
+ const t2 = (b0 + ((v[0] & v[1]) ^ (v[0] & v[2]) ^ (v[1] & v[2]))) | 0;
67
130
  v[7] = v[6];
68
131
  v[6] = v[5];
69
132
  v[5] = v[4];
@@ -87,26 +150,14 @@ function sha256(msg) {
87
150
  return digest;
88
151
  }
89
152
  const base58alphabetFwd = [
90
- 0, 1, 2, 3, 4, 5, 6,
91
- 7, 8, -1, -1, -1, -1, -1, -1,
92
- -1, 9, 10, 11, 12, 13, 14, 15,
93
- 16, -1, 17, 18, 19, 20, 21, -1,
94
- 22, 23, 24, 25, 26, 27, 28, 29,
95
- 30, 31, 32, -1, -1, -1, -1, -1,
96
- -1, 33, 34, 35, 36, 37, 38, 39,
97
- 40, 41, 42, 43, -1, 44, 45, 46,
98
- 47, 48, 49, 50, 51, 52, 53, 54,
99
- 55, 56, 57
153
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, -1, -1, -1, -1, -1, -1, -1, 9, 10, 11, 12, 13, 14, 15, 16, -1, 17, 18,
154
+ 19, 20, 21, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1, -1, -1, -1, -1, 33, 34, 35,
155
+ 36, 37, 38, 39, 40, 41, 42, 43, -1, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
100
156
  ];
101
157
  const base58alphabetBwd = [
102
- 0, 1, 2, 3, 4, 5, 6, 7,
103
- 8, 16, 17, 18, 19, 20, 21, 22,
104
- 23, 25, 26, 27, 28, 29, 31, 32,
105
- 33, 34, 35, 36, 37, 38, 39, 40,
106
- 41, 48, 49, 50, 51, 52, 53, 54,
107
- 55, 56, 57, 58, 60, 61, 62, 63,
108
- 64, 65, 66, 67, 68, 69, 70, 71,
109
- 72, 73
158
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 16, 17, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29, 31, 32, 33, 34, 35,
159
+ 36, 37, 38, 39, 40, 41, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 60, 61, 62, 63, 64, 65, 66,
160
+ 67, 68, 69, 70, 71, 72, 73,
110
161
  ];
111
162
  function byteAt(src, i) {
112
163
  const c = src.charCodeAt(i) - 49;
@@ -126,10 +177,10 @@ function decodeBase58(src) {
126
177
  while (i < src.length) {
127
178
  let carry = byteAt(src, i++);
128
179
  /*
129
- for every symbol x
130
- acc = acc * 58 + x
131
- where acc is a little endian arbitrary length integer
132
- */
180
+ for every symbol x
181
+ acc = acc * 58 + x
182
+ where acc is a little endian arbitrary length integer
183
+ */
133
184
  let ii = 0;
134
185
  while (carry !== 0 || ii < acc.length) {
135
186
  const m = (acc[ii] || 0) * 58 + carry;
@@ -164,7 +215,7 @@ function encodeBase58(src) {
164
215
  acc.push(0);
165
216
  }
166
217
  acc.reverse();
167
- return String.fromCharCode(...acc.map(v => base58alphabetBwd[v] + 49));
218
+ return String.fromCharCode(...acc.map((v) => base58alphabetBwd[v] + 49));
168
219
  }
169
220
  exports.encodeBase58 = encodeBase58;
170
221
  function decodeBase58Check(src) {
@@ -179,7 +230,7 @@ function decodeBase58Check(src) {
179
230
  sum[1] !== computed[1] ||
180
231
  sum[2] !== computed[2] ||
181
232
  sum[3] !== computed[3]) {
182
- throw new Error("Base58Check decoding error: invalid checksum");
233
+ throw new Error('Base58Check decoding error: invalid checksum');
183
234
  }
184
235
  return data;
185
236
  }
@@ -1 +1 @@
1
- {"version":3,"file":"base58.js","sourceRoot":"","sources":["../../src/base58.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base58.js","sourceRoot":"","sources":["../../src/base58.ts"],"names":[],"mappings":";;;AAAA,MAAM,CAAC,GAAG;IACR,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;CACf,CAAC;AAEF,MAAM,CAAC,GAAG;IACR,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UA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"}