@opcat-labs/cat-sdk 3.2.0 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/artifacts/.templates/cat20/cat20Admin.scrypt.tpl +4 -4
- package/artifacts/.templates/cat20/cat20Guard_12_12_2.scrypt.tpl +2 -2
- package/artifacts/.templates/cat20/cat20Guard_12_12_4.scrypt.tpl +2 -2
- package/artifacts/.templates/cat20/cat20Guard_6_6_2.scrypt.tpl +2 -2
- package/artifacts/.templates/cat20/cat20Guard_6_6_4.scrypt.tpl +2 -2
- package/artifacts/.templates/cat20/minters/cat20ClosedMinter.scrypt.tpl +2 -2
- package/artifacts/.templates/cat20/minters/cat20OpenMinter.scrypt.tpl +2 -2
- package/artifacts/.templates/cat721/cat721Guard_12_12_2.scrypt.tpl +2 -2
- package/artifacts/.templates/cat721/cat721Guard_12_12_4.scrypt.tpl +2 -2
- package/artifacts/.templates/cat721/cat721Guard_6_6_2.scrypt.tpl +2 -2
- package/artifacts/.templates/cat721/cat721Guard_6_6_4.scrypt.tpl +2 -2
- package/artifacts/.templates/cat721/minters/cat721ClosedMinter.scrypt.tpl +2 -2
- package/artifacts/.templates/cat721/minters/cat721OpenMinter.scrypt.tpl +2 -2
- package/artifacts/cat20/cat20.json +52 -34
- package/artifacts/cat20/cat20.scrypt +18 -18
- package/artifacts/cat20/cat20Admin.json +54 -36
- package/artifacts/cat20/cat20Admin.scrypt +30 -30
- package/artifacts/cat20/cat20GuardStateLib.json +39 -21
- package/artifacts/cat20/cat20GuardStateLib.scrypt +5 -5
- package/artifacts/cat20/cat20Guard_12_12_2.json +53 -35
- package/artifacts/cat20/cat20Guard_12_12_2.scrypt +29 -29
- package/artifacts/cat20/cat20Guard_12_12_4.json +53 -35
- package/artifacts/cat20/cat20Guard_12_12_4.scrypt +29 -29
- package/artifacts/cat20/cat20Guard_6_6_2.json +53 -35
- package/artifacts/cat20/cat20Guard_6_6_2.scrypt +29 -29
- package/artifacts/cat20/cat20Guard_6_6_4.json +53 -35
- package/artifacts/cat20/cat20Guard_6_6_4.scrypt +29 -29
- package/artifacts/cat20/cat20StateLib.json +40 -22
- package/artifacts/cat20/cat20StateLib.scrypt +5 -5
- package/artifacts/cat20/minters/cat20ClosedMinter.json +52 -34
- package/artifacts/cat20/minters/cat20ClosedMinter.scrypt +22 -22
- package/artifacts/cat20/minters/cat20OpenMinter.json +52 -34
- package/artifacts/cat20/minters/cat20OpenMinter.scrypt +18 -18
- package/artifacts/cat20/types.json +5 -5
- package/artifacts/cat20/types.scrypt +5 -5
- package/artifacts/cat721/cat721.json +52 -34
- package/artifacts/cat721/cat721.scrypt +18 -18
- package/artifacts/cat721/cat721GuardStateLib.json +39 -21
- package/artifacts/cat721/cat721GuardStateLib.scrypt +5 -5
- package/artifacts/cat721/cat721Guard_12_12_2.json +52 -34
- package/artifacts/cat721/cat721Guard_12_12_2.scrypt +26 -26
- package/artifacts/cat721/cat721Guard_12_12_4.json +52 -34
- package/artifacts/cat721/cat721Guard_12_12_4.scrypt +26 -26
- package/artifacts/cat721/cat721Guard_6_6_2.json +52 -34
- package/artifacts/cat721/cat721Guard_6_6_2.scrypt +26 -26
- package/artifacts/cat721/cat721Guard_6_6_4.json +52 -34
- package/artifacts/cat721/cat721Guard_6_6_4.scrypt +26 -26
- package/artifacts/cat721/cat721StateLib.json +40 -22
- package/artifacts/cat721/cat721StateLib.scrypt +5 -5
- package/artifacts/cat721/minters/cat721ClosedMinter.json +52 -34
- package/artifacts/cat721/minters/cat721ClosedMinter.scrypt +18 -18
- package/artifacts/cat721/minters/cat721OpenMintInfo.json +5 -5
- package/artifacts/cat721/minters/cat721OpenMintInfo.scrypt +4 -4
- package/artifacts/cat721/minters/cat721OpenMinter.json +57 -39
- package/artifacts/cat721/minters/cat721OpenMinter.scrypt +22 -22
- package/artifacts/cat721/minters/cat721OpenMinterMerkleTree.json +37 -19
- package/artifacts/cat721/minters/cat721OpenMinterMerkleTree.scrypt +6 -6
- package/artifacts/cat721/types.json +5 -5
- package/artifacts/cat721/types.scrypt +5 -5
- package/artifacts/constants.json +2 -2
- package/artifacts/constants.scrypt +1 -1
- package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/backtrace.scrypt +13 -13
- package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/contextUtils.scrypt +16 -16
- package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/stateUtils.scrypt +1 -1
- package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/stdUtils.scrypt +12 -12
- package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/txHashPreimageUtils.scrypt +7 -7
- package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/txUtils.scrypt +12 -12
- package/artifacts/scrypt-ts-opcat/assets/smart-contract/types/structs.scrypt +15 -9
- package/artifacts/types.json +2 -2
- package/artifacts/types.scrypt +2 -2
- package/artifacts/utils/ownerUtils.json +32 -14
- package/artifacts/utils/ownerUtils.scrypt +3 -3
- package/artifacts/utils/safeMath.json +32 -14
- package/artifacts/utils/safeMath.scrypt +1 -1
- package/dist/artifacts/cat20/cat20.json +52 -34
- package/dist/artifacts/cat20/cat20.scrypt +18 -18
- package/dist/artifacts/cat20/cat20Admin.json +54 -36
- package/dist/artifacts/cat20/cat20Admin.scrypt +30 -30
- package/dist/artifacts/cat20/cat20GuardStateLib.json +39 -21
- package/dist/artifacts/cat20/cat20GuardStateLib.scrypt +5 -5
- package/dist/artifacts/cat20/cat20Guard_12_12_2.json +53 -35
- package/dist/artifacts/cat20/cat20Guard_12_12_2.scrypt +29 -29
- package/dist/artifacts/cat20/cat20Guard_12_12_4.json +53 -35
- package/dist/artifacts/cat20/cat20Guard_12_12_4.scrypt +29 -29
- package/dist/artifacts/cat20/cat20Guard_6_6_2.json +53 -35
- package/dist/artifacts/cat20/cat20Guard_6_6_2.scrypt +29 -29
- package/dist/artifacts/cat20/cat20Guard_6_6_4.json +53 -35
- package/dist/artifacts/cat20/cat20Guard_6_6_4.scrypt +29 -29
- package/dist/artifacts/cat20/cat20StateLib.json +40 -22
- package/dist/artifacts/cat20/cat20StateLib.scrypt +5 -5
- package/dist/artifacts/cat20/minters/cat20ClosedMinter.json +52 -34
- package/dist/artifacts/cat20/minters/cat20ClosedMinter.scrypt +22 -22
- package/dist/artifacts/cat20/minters/cat20OpenMinter.json +52 -34
- package/dist/artifacts/cat20/minters/cat20OpenMinter.scrypt +18 -18
- package/dist/artifacts/cat20/types.json +5 -5
- package/dist/artifacts/cat20/types.scrypt +5 -5
- package/dist/artifacts/cat721/cat721.json +52 -34
- package/dist/artifacts/cat721/cat721.scrypt +18 -18
- package/dist/artifacts/cat721/cat721GuardStateLib.json +39 -21
- package/dist/artifacts/cat721/cat721GuardStateLib.scrypt +5 -5
- package/dist/artifacts/cat721/cat721Guard_12_12_2.json +52 -34
- package/dist/artifacts/cat721/cat721Guard_12_12_2.scrypt +26 -26
- package/dist/artifacts/cat721/cat721Guard_12_12_4.json +52 -34
- package/dist/artifacts/cat721/cat721Guard_12_12_4.scrypt +26 -26
- package/dist/artifacts/cat721/cat721Guard_6_6_2.json +52 -34
- package/dist/artifacts/cat721/cat721Guard_6_6_2.scrypt +26 -26
- package/dist/artifacts/cat721/cat721Guard_6_6_4.json +52 -34
- package/dist/artifacts/cat721/cat721Guard_6_6_4.scrypt +26 -26
- package/dist/artifacts/cat721/cat721StateLib.json +40 -22
- package/dist/artifacts/cat721/cat721StateLib.scrypt +5 -5
- package/dist/artifacts/cat721/minters/cat721ClosedMinter.json +52 -34
- package/dist/artifacts/cat721/minters/cat721ClosedMinter.scrypt +18 -18
- package/dist/artifacts/cat721/minters/cat721OpenMintInfo.json +5 -5
- package/dist/artifacts/cat721/minters/cat721OpenMintInfo.scrypt +4 -4
- package/dist/artifacts/cat721/minters/cat721OpenMinter.json +57 -39
- package/dist/artifacts/cat721/minters/cat721OpenMinter.scrypt +22 -22
- package/dist/artifacts/cat721/minters/cat721OpenMinterMerkleTree.json +37 -19
- package/dist/artifacts/cat721/minters/cat721OpenMinterMerkleTree.scrypt +6 -6
- package/dist/artifacts/cat721/types.json +5 -5
- package/dist/artifacts/cat721/types.scrypt +5 -5
- package/dist/artifacts/constants.json +2 -2
- package/dist/artifacts/constants.scrypt +1 -1
- package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/backtrace.scrypt +13 -13
- package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/contextUtils.scrypt +16 -16
- package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/stateUtils.scrypt +1 -1
- package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/stdUtils.scrypt +12 -12
- package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/txHashPreimageUtils.scrypt +7 -7
- package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/txUtils.scrypt +12 -12
- package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/types/structs.scrypt +15 -9
- package/dist/artifacts/types.json +2 -2
- package/dist/artifacts/types.scrypt +2 -2
- package/dist/artifacts/utils/ownerUtils.json +32 -14
- package/dist/artifacts/utils/ownerUtils.scrypt +3 -3
- package/dist/artifacts/utils/safeMath.json +32 -14
- package/dist/artifacts/utils/safeMath.scrypt +1 -1
- package/package.json +4 -4
- package/scrypt.index.json +13 -13
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 10,
|
|
3
3
|
"compilerVersion": "1.22.0+commit.47800da",
|
|
4
|
-
"contract": "
|
|
4
|
+
"contract": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20StateLib",
|
|
5
5
|
"md5": "d41d8cd98f00b204e9800998ecf8427e",
|
|
6
6
|
"structs": [
|
|
7
7
|
{
|
|
8
|
-
"name": "
|
|
8
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxOut",
|
|
9
9
|
"params": [
|
|
10
10
|
{
|
|
11
11
|
"name": "scriptHash",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"genericTypes": []
|
|
24
24
|
},
|
|
25
25
|
{
|
|
26
|
-
"name": "
|
|
26
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxIn",
|
|
27
27
|
"params": [
|
|
28
28
|
{
|
|
29
29
|
"name": "prevTxHash",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"genericTypes": []
|
|
46
46
|
},
|
|
47
47
|
{
|
|
48
|
-
"name": "
|
|
48
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage",
|
|
49
49
|
"params": [
|
|
50
50
|
{
|
|
51
51
|
"name": "version",
|
|
@@ -67,11 +67,11 @@
|
|
|
67
67
|
"genericTypes": []
|
|
68
68
|
},
|
|
69
69
|
{
|
|
70
|
-
"name": "
|
|
70
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__BacktraceInfo",
|
|
71
71
|
"params": [
|
|
72
72
|
{
|
|
73
73
|
"name": "prevTxInput",
|
|
74
|
-
"type": "
|
|
74
|
+
"type": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxIn"
|
|
75
75
|
},
|
|
76
76
|
{
|
|
77
77
|
"name": "prevTxInputIndex",
|
|
@@ -79,13 +79,13 @@
|
|
|
79
79
|
},
|
|
80
80
|
{
|
|
81
81
|
"name": "prevPrevTxPreimage",
|
|
82
|
-
"type": "
|
|
82
|
+
"type": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage"
|
|
83
83
|
}
|
|
84
84
|
],
|
|
85
85
|
"genericTypes": []
|
|
86
86
|
},
|
|
87
87
|
{
|
|
88
|
-
"name": "
|
|
88
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__SHPreimage",
|
|
89
89
|
"params": [
|
|
90
90
|
{
|
|
91
91
|
"name": "nVersion",
|
|
@@ -147,7 +147,7 @@
|
|
|
147
147
|
"genericTypes": []
|
|
148
148
|
},
|
|
149
149
|
{
|
|
150
|
-
"name": "
|
|
150
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__Outpoint",
|
|
151
151
|
"params": [
|
|
152
152
|
{
|
|
153
153
|
"name": "txHash",
|
|
@@ -161,7 +161,25 @@
|
|
|
161
161
|
"genericTypes": []
|
|
162
162
|
},
|
|
163
163
|
{
|
|
164
|
-
"name": "
|
|
164
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ChangeInfo",
|
|
165
|
+
"params": [
|
|
166
|
+
{
|
|
167
|
+
"name": "pubkeyhash",
|
|
168
|
+
"type": "Ripemd160"
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
"name": "satoshis",
|
|
172
|
+
"type": "int"
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"name": "dataHash",
|
|
176
|
+
"type": "Sha256"
|
|
177
|
+
}
|
|
178
|
+
],
|
|
179
|
+
"genericTypes": []
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20GuardConstState",
|
|
165
183
|
"params": [
|
|
166
184
|
{
|
|
167
185
|
"name": "deployerAddr",
|
|
@@ -187,7 +205,7 @@
|
|
|
187
205
|
"genericTypes": []
|
|
188
206
|
},
|
|
189
207
|
{
|
|
190
|
-
"name": "
|
|
208
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20State",
|
|
191
209
|
"params": [
|
|
192
210
|
{
|
|
193
211
|
"name": "ownerAddr",
|
|
@@ -201,7 +219,7 @@
|
|
|
201
219
|
"genericTypes": []
|
|
202
220
|
},
|
|
203
221
|
{
|
|
204
|
-
"name": "
|
|
222
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinterState",
|
|
205
223
|
"params": [
|
|
206
224
|
{
|
|
207
225
|
"name": "tokenScriptHash",
|
|
@@ -211,7 +229,7 @@
|
|
|
211
229
|
"genericTypes": []
|
|
212
230
|
},
|
|
213
231
|
{
|
|
214
|
-
"name": "
|
|
232
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20OpenMinterState",
|
|
215
233
|
"params": [
|
|
216
234
|
{
|
|
217
235
|
"name": "tokenScriptHash",
|
|
@@ -229,7 +247,7 @@
|
|
|
229
247
|
"genericTypes": []
|
|
230
248
|
},
|
|
231
249
|
{
|
|
232
|
-
"name": "
|
|
250
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20AdminState",
|
|
233
251
|
"params": [
|
|
234
252
|
{
|
|
235
253
|
"name": "tag",
|
|
@@ -243,7 +261,7 @@
|
|
|
243
261
|
"genericTypes": []
|
|
244
262
|
},
|
|
245
263
|
{
|
|
246
|
-
"name": "
|
|
264
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ReadVarintResult",
|
|
247
265
|
"params": [
|
|
248
266
|
{
|
|
249
267
|
"name": "data",
|
|
@@ -259,32 +277,32 @@
|
|
|
259
277
|
],
|
|
260
278
|
"library": [
|
|
261
279
|
{
|
|
262
|
-
"name": "
|
|
280
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20StateLib",
|
|
263
281
|
"params": [],
|
|
264
282
|
"properties": [],
|
|
265
283
|
"genericTypes": [],
|
|
266
|
-
"stateType": "
|
|
284
|
+
"stateType": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20State"
|
|
267
285
|
},
|
|
268
286
|
{
|
|
269
|
-
"name": "
|
|
287
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__OwnerUtils",
|
|
270
288
|
"params": [],
|
|
271
289
|
"properties": [],
|
|
272
290
|
"genericTypes": []
|
|
273
291
|
},
|
|
274
292
|
{
|
|
275
|
-
"name": "
|
|
293
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils",
|
|
276
294
|
"params": [],
|
|
277
295
|
"properties": [],
|
|
278
296
|
"genericTypes": []
|
|
279
297
|
},
|
|
280
298
|
{
|
|
281
|
-
"name": "
|
|
299
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils",
|
|
282
300
|
"params": [],
|
|
283
301
|
"properties": [],
|
|
284
302
|
"genericTypes": []
|
|
285
303
|
},
|
|
286
304
|
{
|
|
287
|
-
"name": "
|
|
305
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils",
|
|
288
306
|
"params": [],
|
|
289
307
|
"properties": [],
|
|
290
308
|
"genericTypes": []
|
|
@@ -298,7 +316,7 @@
|
|
|
298
316
|
}
|
|
299
317
|
],
|
|
300
318
|
"stateProps": [],
|
|
301
|
-
"stateType": "
|
|
319
|
+
"stateType": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20State",
|
|
302
320
|
"buildType": "release",
|
|
303
321
|
"file": "../cat20StateLib.scrypt",
|
|
304
322
|
"hex": ""
|
|
@@ -6,16 +6,16 @@ import "../scrypt-ts-opcat/assets/smart-contract/builtin-libs/contextUtils.scryp
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
library
|
|
10
|
-
static function checkState(
|
|
11
|
-
|
|
9
|
+
library _opcat_labs_cat_sdk_3_3_0__rs__CAT20StateLib {
|
|
10
|
+
static function checkState(_opcat_labs_cat_sdk_3_3_0__rs__CAT20State _state) : bool {
|
|
11
|
+
_opcat_labs_cat_sdk_3_3_0__rs__OwnerUtils.checkOwnerAddr(_state.ownerAddr);
|
|
12
12
|
require(_state.amount > 0);
|
|
13
13
|
return true;
|
|
14
14
|
}
|
|
15
|
-
static function serializeState(
|
|
15
|
+
static function serializeState(_opcat_labs_cat_sdk_3_3_0__rs__CAT20State __scrypt_ts_curState): bytes {
|
|
16
16
|
return num2bin(len(__scrypt_ts_curState.ownerAddr), 2) + __scrypt_ts_curState.ownerAddr + num2bin(len(pack(__scrypt_ts_curState.amount)), 2) + pack(__scrypt_ts_curState.amount) + hash160(hash160(__scrypt_ts_curState.ownerAddr) + hash160(pack(__scrypt_ts_curState.amount)));
|
|
17
17
|
}
|
|
18
|
-
static function stateHash(
|
|
18
|
+
static function stateHash(_opcat_labs_cat_sdk_3_3_0__rs__CAT20State __scrypt_ts_curState): bytes {
|
|
19
19
|
return sha256(num2bin(len(__scrypt_ts_curState.ownerAddr), 2) + __scrypt_ts_curState.ownerAddr + num2bin(len(pack(__scrypt_ts_curState.amount)), 2) + pack(__scrypt_ts_curState.amount) + hash160(hash160(__scrypt_ts_curState.ownerAddr) + hash160(pack(__scrypt_ts_curState.amount))));
|
|
20
20
|
}
|
|
21
21
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 10,
|
|
3
3
|
"compilerVersion": "1.22.0+commit.47800da",
|
|
4
|
-
"contract": "
|
|
5
|
-
"md5": "
|
|
4
|
+
"contract": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinter",
|
|
5
|
+
"md5": "fd3e0943a1d3eb373930ee30059d0c3c",
|
|
6
6
|
"structs": [
|
|
7
7
|
{
|
|
8
|
-
"name": "
|
|
8
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ReadVarintResult",
|
|
9
9
|
"params": [
|
|
10
10
|
{
|
|
11
11
|
"name": "data",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"genericTypes": []
|
|
20
20
|
},
|
|
21
21
|
{
|
|
22
|
-
"name": "
|
|
22
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxOut",
|
|
23
23
|
"params": [
|
|
24
24
|
{
|
|
25
25
|
"name": "scriptHash",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"genericTypes": []
|
|
38
38
|
},
|
|
39
39
|
{
|
|
40
|
-
"name": "
|
|
40
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxIn",
|
|
41
41
|
"params": [
|
|
42
42
|
{
|
|
43
43
|
"name": "prevTxHash",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"genericTypes": []
|
|
60
60
|
},
|
|
61
61
|
{
|
|
62
|
-
"name": "
|
|
62
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage",
|
|
63
63
|
"params": [
|
|
64
64
|
{
|
|
65
65
|
"name": "version",
|
|
@@ -81,11 +81,11 @@
|
|
|
81
81
|
"genericTypes": []
|
|
82
82
|
},
|
|
83
83
|
{
|
|
84
|
-
"name": "
|
|
84
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__BacktraceInfo",
|
|
85
85
|
"params": [
|
|
86
86
|
{
|
|
87
87
|
"name": "prevTxInput",
|
|
88
|
-
"type": "
|
|
88
|
+
"type": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxIn"
|
|
89
89
|
},
|
|
90
90
|
{
|
|
91
91
|
"name": "prevTxInputIndex",
|
|
@@ -93,13 +93,13 @@
|
|
|
93
93
|
},
|
|
94
94
|
{
|
|
95
95
|
"name": "prevPrevTxPreimage",
|
|
96
|
-
"type": "
|
|
96
|
+
"type": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage"
|
|
97
97
|
}
|
|
98
98
|
],
|
|
99
99
|
"genericTypes": []
|
|
100
100
|
},
|
|
101
101
|
{
|
|
102
|
-
"name": "
|
|
102
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__SHPreimage",
|
|
103
103
|
"params": [
|
|
104
104
|
{
|
|
105
105
|
"name": "nVersion",
|
|
@@ -161,7 +161,7 @@
|
|
|
161
161
|
"genericTypes": []
|
|
162
162
|
},
|
|
163
163
|
{
|
|
164
|
-
"name": "
|
|
164
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__Outpoint",
|
|
165
165
|
"params": [
|
|
166
166
|
{
|
|
167
167
|
"name": "txHash",
|
|
@@ -175,7 +175,25 @@
|
|
|
175
175
|
"genericTypes": []
|
|
176
176
|
},
|
|
177
177
|
{
|
|
178
|
-
"name": "
|
|
178
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ChangeInfo",
|
|
179
|
+
"params": [
|
|
180
|
+
{
|
|
181
|
+
"name": "pubkeyhash",
|
|
182
|
+
"type": "Ripemd160"
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
"name": "satoshis",
|
|
186
|
+
"type": "int"
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
"name": "dataHash",
|
|
190
|
+
"type": "Sha256"
|
|
191
|
+
}
|
|
192
|
+
],
|
|
193
|
+
"genericTypes": []
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ChainTxVerifyResponse",
|
|
179
197
|
"params": [
|
|
180
198
|
{
|
|
181
199
|
"name": "prevPrevScript",
|
|
@@ -189,7 +207,7 @@
|
|
|
189
207
|
"genericTypes": []
|
|
190
208
|
},
|
|
191
209
|
{
|
|
192
|
-
"name": "
|
|
210
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20GuardConstState",
|
|
193
211
|
"params": [
|
|
194
212
|
{
|
|
195
213
|
"name": "deployerAddr",
|
|
@@ -215,7 +233,7 @@
|
|
|
215
233
|
"genericTypes": []
|
|
216
234
|
},
|
|
217
235
|
{
|
|
218
|
-
"name": "
|
|
236
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20State",
|
|
219
237
|
"params": [
|
|
220
238
|
{
|
|
221
239
|
"name": "ownerAddr",
|
|
@@ -229,7 +247,7 @@
|
|
|
229
247
|
"genericTypes": []
|
|
230
248
|
},
|
|
231
249
|
{
|
|
232
|
-
"name": "
|
|
250
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinterState",
|
|
233
251
|
"params": [
|
|
234
252
|
{
|
|
235
253
|
"name": "tokenScriptHash",
|
|
@@ -239,7 +257,7 @@
|
|
|
239
257
|
"genericTypes": []
|
|
240
258
|
},
|
|
241
259
|
{
|
|
242
|
-
"name": "
|
|
260
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20OpenMinterState",
|
|
243
261
|
"params": [
|
|
244
262
|
{
|
|
245
263
|
"name": "tokenScriptHash",
|
|
@@ -257,7 +275,7 @@
|
|
|
257
275
|
"genericTypes": []
|
|
258
276
|
},
|
|
259
277
|
{
|
|
260
|
-
"name": "
|
|
278
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20AdminState",
|
|
261
279
|
"params": [
|
|
262
280
|
{
|
|
263
281
|
"name": "tag",
|
|
@@ -273,50 +291,50 @@
|
|
|
273
291
|
],
|
|
274
292
|
"library": [
|
|
275
293
|
{
|
|
276
|
-
"name": "
|
|
294
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimageUtils",
|
|
277
295
|
"params": [],
|
|
278
296
|
"properties": [],
|
|
279
297
|
"genericTypes": []
|
|
280
298
|
},
|
|
281
299
|
{
|
|
282
|
-
"name": "
|
|
300
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20StateLib",
|
|
283
301
|
"params": [],
|
|
284
302
|
"properties": [],
|
|
285
303
|
"genericTypes": [],
|
|
286
|
-
"stateType": "
|
|
304
|
+
"stateType": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20State"
|
|
287
305
|
},
|
|
288
306
|
{
|
|
289
|
-
"name": "
|
|
307
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__StdUtils",
|
|
290
308
|
"params": [],
|
|
291
309
|
"properties": [],
|
|
292
310
|
"genericTypes": []
|
|
293
311
|
},
|
|
294
312
|
{
|
|
295
|
-
"name": "
|
|
313
|
+
"name": "_opcat_labs_cat_sdk_3_3_0__rs__OwnerUtils",
|
|
296
314
|
"params": [],
|
|
297
315
|
"properties": [],
|
|
298
316
|
"genericTypes": []
|
|
299
317
|
},
|
|
300
318
|
{
|
|
301
|
-
"name": "
|
|
319
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils",
|
|
302
320
|
"params": [],
|
|
303
321
|
"properties": [],
|
|
304
322
|
"genericTypes": []
|
|
305
323
|
},
|
|
306
324
|
{
|
|
307
|
-
"name": "
|
|
325
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__Backtrace",
|
|
308
326
|
"params": [],
|
|
309
327
|
"properties": [],
|
|
310
328
|
"genericTypes": []
|
|
311
329
|
},
|
|
312
330
|
{
|
|
313
|
-
"name": "
|
|
331
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__StateUtils",
|
|
314
332
|
"params": [],
|
|
315
333
|
"properties": [],
|
|
316
334
|
"genericTypes": []
|
|
317
335
|
},
|
|
318
336
|
{
|
|
319
|
-
"name": "
|
|
337
|
+
"name": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils",
|
|
320
338
|
"params": [],
|
|
321
339
|
"properties": [],
|
|
322
340
|
"genericTypes": []
|
|
@@ -331,7 +349,7 @@
|
|
|
331
349
|
"params": [
|
|
332
350
|
{
|
|
333
351
|
"name": "tokenMint",
|
|
334
|
-
"type": "
|
|
352
|
+
"type": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20State"
|
|
335
353
|
},
|
|
336
354
|
{
|
|
337
355
|
"name": "issuerPubKey",
|
|
@@ -351,11 +369,11 @@
|
|
|
351
369
|
},
|
|
352
370
|
{
|
|
353
371
|
"name": "backtraceInfo",
|
|
354
|
-
"type": "
|
|
372
|
+
"type": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__BacktraceInfo"
|
|
355
373
|
},
|
|
356
374
|
{
|
|
357
375
|
"name": "__scrypt_ts_shPreimage",
|
|
358
|
-
"type": "
|
|
376
|
+
"type": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__SHPreimage"
|
|
359
377
|
},
|
|
360
378
|
{
|
|
361
379
|
"name": "__scrypt_ts_preimageSig",
|
|
@@ -363,11 +381,11 @@
|
|
|
363
381
|
},
|
|
364
382
|
{
|
|
365
383
|
"name": "__scrypt_ts_changeInfo",
|
|
366
|
-
"type": "
|
|
384
|
+
"type": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ChangeInfo"
|
|
367
385
|
},
|
|
368
386
|
{
|
|
369
387
|
"name": "__scrypt_ts_curState",
|
|
370
|
-
"type": "
|
|
388
|
+
"type": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinterState"
|
|
371
389
|
},
|
|
372
390
|
{
|
|
373
391
|
"name": "__scrypt_ts_prevouts",
|
|
@@ -387,7 +405,7 @@
|
|
|
387
405
|
},
|
|
388
406
|
{
|
|
389
407
|
"name": "__scrypt_ts_prevTxHashPreimage",
|
|
390
|
-
"type": "
|
|
408
|
+
"type": "_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage"
|
|
391
409
|
}
|
|
392
410
|
]
|
|
393
411
|
},
|
|
@@ -406,8 +424,8 @@
|
|
|
406
424
|
}
|
|
407
425
|
],
|
|
408
426
|
"stateProps": [],
|
|
409
|
-
"stateType": "
|
|
427
|
+
"stateType": "_opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinterState",
|
|
410
428
|
"buildType": "release",
|
|
411
429
|
"file": "../cat20ClosedMinter.scrypt",
|
|
412
|
-
"hex": "
|
|
430
|
+
"hex": "0176018801a901ac2102ba79df5f8ae7604a9830f03c7933028186aede0675a16f025dc4f8be8eec038220836c4b45ab7a625549ca7c799b02d3304adf996557929ee809613e602d26c1f80000<ownerAddress><genesisOutpoint>78547a7572537a76537a75777701147901157982778c7f75007f770123790123790123790123790123790123790123790123790123790123790123790123790123790123795d798277549d5c79827701209d5b79827701209d5a79827701209d597900a26958798277549d5779827701209d5679827701209d5579827701209d5479827701209d5379827701209d527900a2697800a26976519c6476529c6751686476539c67516864760281009c67516864760282009c67516864760283009c675168695d795d797e5c797e5b797e5a79767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c7e59797e58797e57797e56797e55797e54797e5379546e8b806e7c7f75007f6b6d6d6c7e5279546e8b806e7c7f75007f6b6d6d6c7e7854807e6b6d6d6d6d6d6d6d6ca85579ba630114795479ac670068695e79011d7978aa7888785878827d77527997009d6e7c966b6d6d6c776079012379011a7970aa5379886e9f69765479012478827d77527997009d6e7c967777779d537952798b0124957f7552790124957f7d7701207f75007f777801247f7501207f77768277549d767601007e817777726d726d7b755f79011f7954795279aa527988765379012078827d77527997009d6e7c967777779d6d756079011e7954795279aa527988765379012078827d77527997009d6e7c967777779d6d75011379011b790115797682775280787e78a9a97ea8770113797653798b0120957f7553790120957f775279886d755f795f795f795f79011779012079557955795579557953798277549d5279014878827d77527997009d6e7c967777775279014878827d77527997009d6e7c96777777557952790000527902fd009f637551675279030000019f6301fd7b757c52776752790500000000019f6301fe7b757c54776701ff7b757c587768686878537952796e8b806e7c7f75007f6b6d6d6c7e7777777e55797e780000527902fd009f637551675279030000019f6301fd7b757c52776752790500000000019f6301fe7b757c54776701ff7b757c587768686878537952796e8b806e7c7f75007f6b6d6d6c7e7777777e54797e53797eaa6b6d6d6d6c76700124950120937f7553790124957f77886d6d6d750124790130790130790130790130790130790130790130790130790130795e79011b790127798b0120957f750127790120957f77011a795b795b795b795b795b795b795b795b795b7959797656798b0148957f7556790148957f775a795a795a795a795379827701209d76827701209d707600a2637605ffffffff00a16700686976546e8b806e7c7f75007f6b6d6d6c777e787e52797600a2637605ffffffff00a16700686976546e8b806e7c7f75007f6b6d6d6c777e6b6d6d6c88597976567956795679567953798277549d5279014878827d77527997009d6e7c967777775279014878827d77527997009d6e7c96777777557952790000527902fd009f637551675279030000019f6301fd7b757c52776752790500000000019f6301fe7b757c54776701ff7b757c587768686878537952796e8b806e7c7f75007f6b6d6d6c7e7777777e55797e780000527902fd009f637551675279030000019f6301fd7b757c52776752790500000000019f6301fe7b757c54776701ff7b757c587768686878537952796e8b806e7c7f75007f6b6d6d6c7e7777777e54797e53797eaa6b6d6d6d6c8853795a7901489558930120937f755a7901489558937f77785b797600a2637605ffffffff00a16700686976546e8b806e7c7f75007f6b6d6d6c777e787c726d726d726d726d726d726d7655798763780116798868765579876478547987675168696d6d6d6d6d6d6d0134795779787676827701219d750376a91478a97e0288ac7e7778886d013379013579ad7876827701209d750001337900a06378013479012779527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6d6c680137790137797876827d7701199c647601209c675168696d51787700a0696d013779013779788277528052797e78827752807e787e5279a95279a97ea97ea8777753790134796f7582777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c775279787e011b7900a063011c7901117960797e01147e787e0111797e5f797e77a8011c79011c79527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c776700687eaa012179876b6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6c"
|
|
413
431
|
}
|
|
@@ -11,53 +11,53 @@ import "../../scrypt-ts-opcat/assets/smart-contract/builtin-libs/stateUtils.scry
|
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
contract
|
|
14
|
+
contract _opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinter {
|
|
15
15
|
bytes issuerAddress;
|
|
16
16
|
bytes genesisOutpoint;
|
|
17
17
|
constructor(bytes ownerAddress, bytes genesisOutpoint) {
|
|
18
18
|
this.issuerAddress = ownerAddress;
|
|
19
19
|
this.genesisOutpoint = genesisOutpoint;
|
|
20
20
|
}
|
|
21
|
-
public function mint(
|
|
22
|
-
require(checkDataSig(Sig(__scrypt_ts_preimageSig[0 : len(__scrypt_ts_preimageSig) - 1]), sha256(
|
|
21
|
+
public function mint(_opcat_labs_cat_sdk_3_3_0__rs__CAT20State tokenMint, PubKey issuerPubKey, Sig issuerSig, int minterSatoshis, int tokenSatoshis, _opcat_labs_scrypt_ts_opcat_3_3_0__rs__BacktraceInfo backtraceInfo, _opcat_labs_scrypt_ts_opcat_3_3_0__rs__SHPreimage __scrypt_ts_shPreimage, Sig __scrypt_ts_preimageSig, _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ChangeInfo __scrypt_ts_changeInfo, _opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinterState __scrypt_ts_curState, bytes __scrypt_ts_prevouts, bytes __scrypt_ts_spentAmounts, bytes __scrypt_ts_spentDataHashes, bytes __scrypt_ts_spentScriptHashes, _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxHashPreimage __scrypt_ts_prevTxHashPreimage) {
|
|
22
|
+
require(checkDataSig(Sig(__scrypt_ts_preimageSig[0 : len(__scrypt_ts_preimageSig) - 1]), sha256(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.serializeSHPreimage(__scrypt_ts_shPreimage)), _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.pubKey) && checkSig(__scrypt_ts_preimageSig, _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.pubKey));
|
|
23
23
|
|
|
24
|
-
int __scrypt_ts_inputCount =
|
|
24
|
+
int __scrypt_ts_inputCount = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.checkSpentAmounts(__scrypt_ts_spentAmounts, __scrypt_ts_shPreimage.hashSpentAmounts);
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
_opcat_labs_scrypt_ts_opcat_3_3_0__rs__Outpoint __scrypt_ts_prevout = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.checkPrevouts(__scrypt_ts_prevouts, __scrypt_ts_shPreimage.hashPrevouts, __scrypt_ts_shPreimage.inputIndex, __scrypt_ts_inputCount);
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.checkSpentScripts(__scrypt_ts_spentScriptHashes, __scrypt_ts_shPreimage.hashSpentScriptHashes, __scrypt_ts_inputCount);
|
|
29
29
|
|
|
30
|
-
|
|
30
|
+
_opcat_labs_scrypt_ts_opcat_3_3_0__rs__ContextUtils.checkSpentDataHashes(__scrypt_ts_spentDataHashes, __scrypt_ts_shPreimage.hashSpentDataHashes, __scrypt_ts_inputCount);
|
|
31
31
|
|
|
32
|
-
|
|
32
|
+
_opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinterState __scrypt_ts_nextState = __scrypt_ts_curState;
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
_opcat_labs_scrypt_ts_opcat_3_3_0__rs__StateUtils.checkInputState(__scrypt_ts_shPreimage.inputIndex, _opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinter.stateHash(__scrypt_ts_curState), __scrypt_ts_spentDataHashes);
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
_opcat_labs_scrypt_ts_opcat_3_3_0__rs__Backtrace.checkPrevTxHashPreimage(__scrypt_ts_prevTxHashPreimage, __scrypt_ts_prevouts, __scrypt_ts_shPreimage.inputIndex);
|
|
37
37
|
|
|
38
38
|
bytes minterScript = __scrypt_ts_shPreimage.spentScriptHash;
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
_opcat_labs_scrypt_ts_opcat_3_3_0__rs__Backtrace.verifyFromOutpoint(backtraceInfo, this.genesisOutpoint, __scrypt_ts_spentScriptHashes[__scrypt_ts_shPreimage.inputIndex * 32 : (__scrypt_ts_shPreimage.inputIndex + 1) * 32], __scrypt_ts_prevTxHashPreimage.inputList);
|
|
40
|
+
_opcat_labs_cat_sdk_3_3_0__rs__OwnerUtils.checkUserOwner(issuerPubKey, this.issuerAddress);
|
|
41
41
|
require(checkSig(issuerSig, issuerPubKey));
|
|
42
|
-
|
|
42
|
+
_opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinter.checkState(__scrypt_ts_nextState);
|
|
43
43
|
bytes minterOutput = b'';
|
|
44
|
-
if(minterSatoshis >
|
|
45
|
-
minterOutput =
|
|
44
|
+
if(minterSatoshis > _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.ZERO_SATS) {
|
|
45
|
+
minterOutput = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.buildDataOutput(minterScript, minterSatoshis, __scrypt_ts_shPreimage.spentDataHash);
|
|
46
46
|
}
|
|
47
|
-
|
|
48
|
-
bytes tokenStateHash =
|
|
49
|
-
bytes tokenOutput =
|
|
47
|
+
_opcat_labs_cat_sdk_3_3_0__rs__CAT20StateLib.checkState(tokenMint);
|
|
48
|
+
bytes tokenStateHash = _opcat_labs_cat_sdk_3_3_0__rs__CAT20StateLib.stateHash(tokenMint);
|
|
49
|
+
bytes tokenOutput = _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.buildDataOutput(__scrypt_ts_nextState.tokenScriptHash, tokenSatoshis, tokenStateHash);
|
|
50
50
|
require(hash256(minterOutput + tokenOutput +
|
|
51
|
-
(__scrypt_ts_changeInfo.satoshis > 0 ?
|
|
51
|
+
(__scrypt_ts_changeInfo.satoshis > 0 ? _opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.buildDataOutput(sha256(_opcat_labs_scrypt_ts_opcat_3_3_0__rs__TxUtils.buildP2PKHScript(__scrypt_ts_changeInfo.pubkeyhash)), __scrypt_ts_changeInfo.satoshis, __scrypt_ts_changeInfo.dataHash) : b'')) == __scrypt_ts_shPreimage.hashOutputs);
|
|
52
52
|
}
|
|
53
|
-
static function checkState(
|
|
53
|
+
static function checkState(_opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinterState _state) : bool {
|
|
54
54
|
require(len(_state.tokenScriptHash) == 32);
|
|
55
55
|
return true;
|
|
56
56
|
}
|
|
57
|
-
static function serializeState(
|
|
57
|
+
static function serializeState(_opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinterState __scrypt_ts_curState): bytes {
|
|
58
58
|
return num2bin(len(__scrypt_ts_curState.tokenScriptHash), 2) + __scrypt_ts_curState.tokenScriptHash + hash160(hash160(__scrypt_ts_curState.tokenScriptHash));
|
|
59
59
|
}
|
|
60
|
-
static function stateHash(
|
|
60
|
+
static function stateHash(_opcat_labs_cat_sdk_3_3_0__rs__CAT20ClosedMinterState __scrypt_ts_curState): bytes {
|
|
61
61
|
return sha256(num2bin(len(__scrypt_ts_curState.tokenScriptHash), 2) + __scrypt_ts_curState.tokenScriptHash + hash160(hash160(__scrypt_ts_curState.tokenScriptHash)));
|
|
62
62
|
}
|
|
63
63
|
}
|