@opcat-labs/cat-sdk 3.1.0 → 3.2.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.
Files changed (280) hide show
  1. package/artifacts/.templates/cat20/cat20GuardStateLib.scrypt.tpl +2 -2
  2. package/artifacts/.templates/cat20/cat20Guard_12_12_2.scrypt.map +1 -1
  3. package/artifacts/.templates/cat20/cat20Guard_12_12_2.scrypt.tpl +19 -2
  4. package/artifacts/.templates/cat20/cat20Guard_12_12_2.transformer.json +2 -1
  5. package/artifacts/.templates/cat20/cat20Guard_12_12_4.scrypt.map +1 -1
  6. package/artifacts/.templates/cat20/cat20Guard_12_12_4.scrypt.tpl +19 -2
  7. package/artifacts/.templates/cat20/cat20Guard_12_12_4.transformer.json +2 -1
  8. package/artifacts/.templates/cat20/cat20Guard_6_6_2.scrypt.map +1 -1
  9. package/artifacts/.templates/cat20/cat20Guard_6_6_2.scrypt.tpl +19 -2
  10. package/artifacts/.templates/cat20/cat20Guard_6_6_2.transformer.json +2 -1
  11. package/artifacts/.templates/cat20/cat20Guard_6_6_4.scrypt.map +1 -1
  12. package/artifacts/.templates/cat20/cat20Guard_6_6_4.scrypt.tpl +19 -2
  13. package/artifacts/.templates/cat20/cat20Guard_6_6_4.transformer.json +2 -1
  14. package/artifacts/.templates/cat20/types.scrypt.map +1 -1
  15. package/artifacts/.templates/cat20/types.scrypt.tpl +1 -0
  16. package/artifacts/.templates/cat721/cat721GuardStateLib.scrypt.tpl +2 -2
  17. package/artifacts/.templates/cat721/cat721Guard_12_12_2.scrypt.map +1 -1
  18. package/artifacts/.templates/cat721/cat721Guard_12_12_2.scrypt.tpl +19 -2
  19. package/artifacts/.templates/cat721/cat721Guard_12_12_2.transformer.json +2 -1
  20. package/artifacts/.templates/cat721/cat721Guard_12_12_4.scrypt.map +1 -1
  21. package/artifacts/.templates/cat721/cat721Guard_12_12_4.scrypt.tpl +19 -2
  22. package/artifacts/.templates/cat721/cat721Guard_12_12_4.transformer.json +2 -1
  23. package/artifacts/.templates/cat721/cat721Guard_6_6_2.scrypt.map +1 -1
  24. package/artifacts/.templates/cat721/cat721Guard_6_6_2.scrypt.tpl +19 -2
  25. package/artifacts/.templates/cat721/cat721Guard_6_6_2.transformer.json +2 -1
  26. package/artifacts/.templates/cat721/cat721Guard_6_6_4.scrypt.map +1 -1
  27. package/artifacts/.templates/cat721/cat721Guard_6_6_4.scrypt.tpl +19 -2
  28. package/artifacts/.templates/cat721/cat721Guard_6_6_4.transformer.json +2 -1
  29. package/artifacts/.templates/cat721/types.scrypt.map +1 -1
  30. package/artifacts/.templates/cat721/types.scrypt.tpl +1 -0
  31. package/artifacts/cat20/cat20.json +40 -36
  32. package/artifacts/cat20/cat20.scrypt +18 -18
  33. package/artifacts/cat20/cat20Admin.json +38 -34
  34. package/artifacts/cat20/cat20Admin.scrypt +30 -30
  35. package/artifacts/cat20/cat20GuardStateLib.json +25 -21
  36. package/artifacts/cat20/cat20GuardStateLib.scrypt +7 -7
  37. package/artifacts/cat20/cat20Guard_12_12_2.json +75 -32
  38. package/artifacts/cat20/cat20Guard_12_12_2.scrypt +40 -23
  39. package/artifacts/cat20/cat20Guard_12_12_4.json +75 -32
  40. package/artifacts/cat20/cat20Guard_12_12_4.scrypt +40 -23
  41. package/artifacts/cat20/cat20Guard_6_6_2.json +75 -32
  42. package/artifacts/cat20/cat20Guard_6_6_2.scrypt +40 -23
  43. package/artifacts/cat20/cat20Guard_6_6_4.json +75 -32
  44. package/artifacts/cat20/cat20Guard_6_6_4.scrypt +40 -23
  45. package/artifacts/cat20/cat20StateLib.json +26 -22
  46. package/artifacts/cat20/cat20StateLib.scrypt +5 -5
  47. package/artifacts/cat20/minters/cat20ClosedMinter.json +36 -32
  48. package/artifacts/cat20/minters/cat20ClosedMinter.scrypt +22 -22
  49. package/artifacts/cat20/minters/cat20OpenMinter.json +36 -32
  50. package/artifacts/cat20/minters/cat20OpenMinter.scrypt +18 -18
  51. package/artifacts/cat20/types.json +9 -5
  52. package/artifacts/cat20/types.scrypt +6 -5
  53. package/artifacts/cat721/cat721.json +40 -36
  54. package/artifacts/cat721/cat721.scrypt +18 -18
  55. package/artifacts/cat721/cat721GuardStateLib.json +25 -21
  56. package/artifacts/cat721/cat721GuardStateLib.scrypt +7 -7
  57. package/artifacts/cat721/cat721Guard_12_12_2.json +74 -31
  58. package/artifacts/cat721/cat721Guard_12_12_2.scrypt +37 -20
  59. package/artifacts/cat721/cat721Guard_12_12_4.json +74 -31
  60. package/artifacts/cat721/cat721Guard_12_12_4.scrypt +37 -20
  61. package/artifacts/cat721/cat721Guard_6_6_2.json +74 -31
  62. package/artifacts/cat721/cat721Guard_6_6_2.scrypt +37 -20
  63. package/artifacts/cat721/cat721Guard_6_6_4.json +74 -31
  64. package/artifacts/cat721/cat721Guard_6_6_4.scrypt +37 -20
  65. package/artifacts/cat721/cat721StateLib.json +26 -22
  66. package/artifacts/cat721/cat721StateLib.scrypt +5 -5
  67. package/artifacts/cat721/minters/cat721ClosedMinter.json +36 -32
  68. package/artifacts/cat721/minters/cat721ClosedMinter.scrypt +18 -18
  69. package/artifacts/cat721/minters/cat721OpenMintInfo.json +5 -5
  70. package/artifacts/cat721/minters/cat721OpenMintInfo.scrypt +4 -4
  71. package/artifacts/cat721/minters/cat721OpenMinter.json +41 -37
  72. package/artifacts/cat721/minters/cat721OpenMinter.scrypt +22 -22
  73. package/artifacts/cat721/minters/cat721OpenMinterMerkleTree.json +23 -19
  74. package/artifacts/cat721/minters/cat721OpenMinterMerkleTree.scrypt +6 -6
  75. package/artifacts/cat721/types.json +9 -5
  76. package/artifacts/cat721/types.scrypt +6 -5
  77. package/artifacts/constants.json +2 -2
  78. package/artifacts/constants.scrypt +1 -1
  79. package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/backtrace.scrypt +13 -13
  80. package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/contextUtils.scrypt +16 -16
  81. package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/stateUtils.scrypt +1 -1
  82. package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/stdUtils.scrypt +12 -12
  83. package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/txHashPreimageUtils.scrypt +7 -7
  84. package/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/txUtils.scrypt +12 -12
  85. package/artifacts/scrypt-ts-opcat/assets/smart-contract/types/structs.scrypt +8 -8
  86. package/artifacts/types.json +2 -2
  87. package/artifacts/types.scrypt +2 -2
  88. package/artifacts/utils/ownerUtils.json +14 -14
  89. package/artifacts/utils/ownerUtils.scrypt +3 -3
  90. package/artifacts/utils/safeMath.json +14 -14
  91. package/artifacts/utils/safeMath.scrypt +1 -1
  92. package/dist/artifacts/cat20/cat20.json +40 -36
  93. package/dist/artifacts/cat20/cat20.scrypt +18 -18
  94. package/dist/artifacts/cat20/cat20Admin.json +38 -34
  95. package/dist/artifacts/cat20/cat20Admin.scrypt +30 -30
  96. package/dist/artifacts/cat20/cat20GuardStateLib.json +25 -21
  97. package/dist/artifacts/cat20/cat20GuardStateLib.scrypt +7 -7
  98. package/dist/artifacts/cat20/cat20Guard_12_12_2.json +75 -32
  99. package/dist/artifacts/cat20/cat20Guard_12_12_2.scrypt +40 -23
  100. package/dist/artifacts/cat20/cat20Guard_12_12_4.json +75 -32
  101. package/dist/artifacts/cat20/cat20Guard_12_12_4.scrypt +40 -23
  102. package/dist/artifacts/cat20/cat20Guard_6_6_2.json +75 -32
  103. package/dist/artifacts/cat20/cat20Guard_6_6_2.scrypt +40 -23
  104. package/dist/artifacts/cat20/cat20Guard_6_6_4.json +75 -32
  105. package/dist/artifacts/cat20/cat20Guard_6_6_4.scrypt +40 -23
  106. package/dist/artifacts/cat20/cat20StateLib.json +26 -22
  107. package/dist/artifacts/cat20/cat20StateLib.scrypt +5 -5
  108. package/dist/artifacts/cat20/minters/cat20ClosedMinter.json +36 -32
  109. package/dist/artifacts/cat20/minters/cat20ClosedMinter.scrypt +22 -22
  110. package/dist/artifacts/cat20/minters/cat20OpenMinter.json +36 -32
  111. package/dist/artifacts/cat20/minters/cat20OpenMinter.scrypt +18 -18
  112. package/dist/artifacts/cat20/types.json +9 -5
  113. package/dist/artifacts/cat20/types.scrypt +6 -5
  114. package/dist/artifacts/cat721/cat721.json +40 -36
  115. package/dist/artifacts/cat721/cat721.scrypt +18 -18
  116. package/dist/artifacts/cat721/cat721GuardStateLib.json +25 -21
  117. package/dist/artifacts/cat721/cat721GuardStateLib.scrypt +7 -7
  118. package/dist/artifacts/cat721/cat721Guard_12_12_2.json +74 -31
  119. package/dist/artifacts/cat721/cat721Guard_12_12_2.scrypt +37 -20
  120. package/dist/artifacts/cat721/cat721Guard_12_12_4.json +74 -31
  121. package/dist/artifacts/cat721/cat721Guard_12_12_4.scrypt +37 -20
  122. package/dist/artifacts/cat721/cat721Guard_6_6_2.json +74 -31
  123. package/dist/artifacts/cat721/cat721Guard_6_6_2.scrypt +37 -20
  124. package/dist/artifacts/cat721/cat721Guard_6_6_4.json +74 -31
  125. package/dist/artifacts/cat721/cat721Guard_6_6_4.scrypt +37 -20
  126. package/dist/artifacts/cat721/cat721StateLib.json +26 -22
  127. package/dist/artifacts/cat721/cat721StateLib.scrypt +5 -5
  128. package/dist/artifacts/cat721/minters/cat721ClosedMinter.json +36 -32
  129. package/dist/artifacts/cat721/minters/cat721ClosedMinter.scrypt +18 -18
  130. package/dist/artifacts/cat721/minters/cat721OpenMintInfo.json +5 -5
  131. package/dist/artifacts/cat721/minters/cat721OpenMintInfo.scrypt +4 -4
  132. package/dist/artifacts/cat721/minters/cat721OpenMinter.json +41 -37
  133. package/dist/artifacts/cat721/minters/cat721OpenMinter.scrypt +22 -22
  134. package/dist/artifacts/cat721/minters/cat721OpenMinterMerkleTree.json +23 -19
  135. package/dist/artifacts/cat721/minters/cat721OpenMinterMerkleTree.scrypt +6 -6
  136. package/dist/artifacts/cat721/types.json +9 -5
  137. package/dist/artifacts/cat721/types.scrypt +6 -5
  138. package/dist/artifacts/constants.json +2 -2
  139. package/dist/artifacts/constants.scrypt +1 -1
  140. package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/backtrace.scrypt +13 -13
  141. package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/contextUtils.scrypt +16 -16
  142. package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/stateUtils.scrypt +1 -1
  143. package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/stdUtils.scrypt +12 -12
  144. package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/txHashPreimageUtils.scrypt +7 -7
  145. package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/builtin-libs/txUtils.scrypt +12 -12
  146. package/dist/artifacts/scrypt-ts-opcat/assets/smart-contract/types/structs.scrypt +8 -8
  147. package/dist/artifacts/types.json +2 -2
  148. package/dist/artifacts/types.scrypt +2 -2
  149. package/dist/artifacts/utils/ownerUtils.json +14 -14
  150. package/dist/artifacts/utils/ownerUtils.scrypt +3 -3
  151. package/dist/artifacts/utils/safeMath.json +14 -14
  152. package/dist/artifacts/utils/safeMath.scrypt +1 -1
  153. package/dist/cjs/contracts/cat20/cat20GuardStateLib.js +2 -1
  154. package/dist/cjs/contracts/cat20/cat20GuardStateLib.js.map +1 -1
  155. package/dist/cjs/contracts/cat20/cat20Guard_12_12_2.js +19 -0
  156. package/dist/cjs/contracts/cat20/cat20Guard_12_12_2.js.map +1 -1
  157. package/dist/cjs/contracts/cat20/cat20Guard_12_12_4.js +19 -0
  158. package/dist/cjs/contracts/cat20/cat20Guard_12_12_4.js.map +1 -1
  159. package/dist/cjs/contracts/cat20/cat20Guard_6_6_2.js +19 -0
  160. package/dist/cjs/contracts/cat20/cat20Guard_6_6_2.js.map +1 -1
  161. package/dist/cjs/contracts/cat20/cat20Guard_6_6_4.js +19 -0
  162. package/dist/cjs/contracts/cat20/cat20Guard_6_6_4.js.map +1 -1
  163. package/dist/cjs/contracts/cat721/cat721GuardStateLib.js +2 -1
  164. package/dist/cjs/contracts/cat721/cat721GuardStateLib.js.map +1 -1
  165. package/dist/cjs/contracts/cat721/cat721Guard_12_12_2.js +19 -0
  166. package/dist/cjs/contracts/cat721/cat721Guard_12_12_2.js.map +1 -1
  167. package/dist/cjs/contracts/cat721/cat721Guard_12_12_4.js +19 -0
  168. package/dist/cjs/contracts/cat721/cat721Guard_12_12_4.js.map +1 -1
  169. package/dist/cjs/contracts/cat721/cat721Guard_6_6_2.js +19 -0
  170. package/dist/cjs/contracts/cat721/cat721Guard_6_6_2.js.map +1 -1
  171. package/dist/cjs/contracts/cat721/cat721Guard_6_6_4.js +19 -0
  172. package/dist/cjs/contracts/cat721/cat721Guard_6_6_4.js.map +1 -1
  173. package/dist/cjs/contracts/cat721/types.js.map +1 -1
  174. package/dist/cjs/features/cat20/admin/burnByAdmin.js +2 -1
  175. package/dist/cjs/features/cat20/admin/burnByAdmin.js.map +1 -1
  176. package/dist/cjs/features/cat20/burn/burn.js +2 -1
  177. package/dist/cjs/features/cat20/burn/burn.js.map +1 -1
  178. package/dist/cjs/features/cat20/guard/destroyGuard.js +49 -0
  179. package/dist/cjs/features/cat20/guard/destroyGuard.js.map +1 -0
  180. package/dist/cjs/features/cat20/index.js +3 -1
  181. package/dist/cjs/features/cat20/index.js.map +1 -1
  182. package/dist/cjs/features/cat20/send/contractSend.js +2 -1
  183. package/dist/cjs/features/cat20/send/contractSend.js.map +1 -1
  184. package/dist/cjs/features/cat20/send/singleSend.js +4 -3
  185. package/dist/cjs/features/cat20/send/singleSend.js.map +1 -1
  186. package/dist/cjs/features/cat721/burn/burn.js +2 -1
  187. package/dist/cjs/features/cat721/burn/burn.js.map +1 -1
  188. package/dist/cjs/features/cat721/guard/destroyGuard.js +49 -0
  189. package/dist/cjs/features/cat721/guard/destroyGuard.js.map +1 -0
  190. package/dist/cjs/features/cat721/index.js +3 -1
  191. package/dist/cjs/features/cat721/index.js.map +1 -1
  192. package/dist/cjs/features/cat721/send/singleSend.js +4 -3
  193. package/dist/cjs/features/cat721/send/singleSend.js.map +1 -1
  194. package/dist/cjs/utils/contractPeripheral.js +8 -4
  195. package/dist/cjs/utils/contractPeripheral.js.map +1 -1
  196. package/dist/esm/contracts/cat20/cat20GuardStateLib.js +2 -1
  197. package/dist/esm/contracts/cat20/cat20GuardStateLib.js.map +1 -1
  198. package/dist/esm/contracts/cat20/cat20Guard_12_12_2.js +20 -1
  199. package/dist/esm/contracts/cat20/cat20Guard_12_12_2.js.map +1 -1
  200. package/dist/esm/contracts/cat20/cat20Guard_12_12_4.js +20 -1
  201. package/dist/esm/contracts/cat20/cat20Guard_12_12_4.js.map +1 -1
  202. package/dist/esm/contracts/cat20/cat20Guard_6_6_2.js +20 -1
  203. package/dist/esm/contracts/cat20/cat20Guard_6_6_2.js.map +1 -1
  204. package/dist/esm/contracts/cat20/cat20Guard_6_6_4.js +20 -1
  205. package/dist/esm/contracts/cat20/cat20Guard_6_6_4.js.map +1 -1
  206. package/dist/esm/contracts/cat721/cat721GuardStateLib.js +2 -1
  207. package/dist/esm/contracts/cat721/cat721GuardStateLib.js.map +1 -1
  208. package/dist/esm/contracts/cat721/cat721Guard_12_12_2.js +20 -1
  209. package/dist/esm/contracts/cat721/cat721Guard_12_12_2.js.map +1 -1
  210. package/dist/esm/contracts/cat721/cat721Guard_12_12_4.js +20 -1
  211. package/dist/esm/contracts/cat721/cat721Guard_12_12_4.js.map +1 -1
  212. package/dist/esm/contracts/cat721/cat721Guard_6_6_2.js +20 -1
  213. package/dist/esm/contracts/cat721/cat721Guard_6_6_2.js.map +1 -1
  214. package/dist/esm/contracts/cat721/cat721Guard_6_6_4.js +20 -1
  215. package/dist/esm/contracts/cat721/cat721Guard_6_6_4.js.map +1 -1
  216. package/dist/esm/contracts/cat721/types.js.map +1 -1
  217. package/dist/esm/features/cat20/admin/burnByAdmin.js +2 -1
  218. package/dist/esm/features/cat20/admin/burnByAdmin.js.map +1 -1
  219. package/dist/esm/features/cat20/burn/burn.js +3 -2
  220. package/dist/esm/features/cat20/burn/burn.js.map +1 -1
  221. package/dist/esm/features/cat20/guard/destroyGuard.js +46 -0
  222. package/dist/esm/features/cat20/guard/destroyGuard.js.map +1 -0
  223. package/dist/esm/features/cat20/index.js +1 -0
  224. package/dist/esm/features/cat20/index.js.map +1 -1
  225. package/dist/esm/features/cat20/send/contractSend.js +2 -1
  226. package/dist/esm/features/cat20/send/contractSend.js.map +1 -1
  227. package/dist/esm/features/cat20/send/singleSend.js +5 -4
  228. package/dist/esm/features/cat20/send/singleSend.js.map +1 -1
  229. package/dist/esm/features/cat721/burn/burn.js +3 -2
  230. package/dist/esm/features/cat721/burn/burn.js.map +1 -1
  231. package/dist/esm/features/cat721/guard/destroyGuard.js +46 -0
  232. package/dist/esm/features/cat721/guard/destroyGuard.js.map +1 -0
  233. package/dist/esm/features/cat721/index.js +1 -0
  234. package/dist/esm/features/cat721/index.js.map +1 -1
  235. package/dist/esm/features/cat721/send/singleSend.js +5 -4
  236. package/dist/esm/features/cat721/send/singleSend.js.map +1 -1
  237. package/dist/esm/utils/contractPeripheral.js +8 -4
  238. package/dist/esm/utils/contractPeripheral.js.map +1 -1
  239. package/dist/types/contracts/cat20/cat20GuardStateLib.d.ts.map +1 -1
  240. package/dist/types/contracts/cat20/cat20Guard_12_12_2.d.ts +9 -1
  241. package/dist/types/contracts/cat20/cat20Guard_12_12_2.d.ts.map +1 -1
  242. package/dist/types/contracts/cat20/cat20Guard_12_12_4.d.ts +9 -1
  243. package/dist/types/contracts/cat20/cat20Guard_12_12_4.d.ts.map +1 -1
  244. package/dist/types/contracts/cat20/cat20Guard_6_6_2.d.ts +9 -1
  245. package/dist/types/contracts/cat20/cat20Guard_6_6_2.d.ts.map +1 -1
  246. package/dist/types/contracts/cat20/cat20Guard_6_6_4.d.ts +9 -1
  247. package/dist/types/contracts/cat20/cat20Guard_6_6_4.d.ts.map +1 -1
  248. package/dist/types/contracts/cat20/types.d.ts +7 -2
  249. package/dist/types/contracts/cat20/types.d.ts.map +1 -1
  250. package/dist/types/contracts/cat721/cat721GuardStateLib.d.ts.map +1 -1
  251. package/dist/types/contracts/cat721/cat721Guard_12_12_2.d.ts +9 -1
  252. package/dist/types/contracts/cat721/cat721Guard_12_12_2.d.ts.map +1 -1
  253. package/dist/types/contracts/cat721/cat721Guard_12_12_4.d.ts +9 -1
  254. package/dist/types/contracts/cat721/cat721Guard_12_12_4.d.ts.map +1 -1
  255. package/dist/types/contracts/cat721/cat721Guard_6_6_2.d.ts +9 -1
  256. package/dist/types/contracts/cat721/cat721Guard_6_6_2.d.ts.map +1 -1
  257. package/dist/types/contracts/cat721/cat721Guard_6_6_4.d.ts +9 -1
  258. package/dist/types/contracts/cat721/cat721Guard_6_6_4.d.ts.map +1 -1
  259. package/dist/types/contracts/cat721/types.d.ts +6 -0
  260. package/dist/types/contracts/cat721/types.d.ts.map +1 -1
  261. package/dist/types/features/cat20/admin/burnByAdmin.d.ts.map +1 -1
  262. package/dist/types/features/cat20/burn/burn.d.ts.map +1 -1
  263. package/dist/types/features/cat20/guard/destroyGuard.d.ts +21 -0
  264. package/dist/types/features/cat20/guard/destroyGuard.d.ts.map +1 -0
  265. package/dist/types/features/cat20/index.d.ts +1 -0
  266. package/dist/types/features/cat20/index.d.ts.map +1 -1
  267. package/dist/types/features/cat20/send/contractSend.d.ts.map +1 -1
  268. package/dist/types/features/cat20/send/singleSend.d.ts +1 -1
  269. package/dist/types/features/cat20/send/singleSend.d.ts.map +1 -1
  270. package/dist/types/features/cat721/burn/burn.d.ts.map +1 -1
  271. package/dist/types/features/cat721/guard/destroyGuard.d.ts +21 -0
  272. package/dist/types/features/cat721/guard/destroyGuard.d.ts.map +1 -0
  273. package/dist/types/features/cat721/index.d.ts +1 -0
  274. package/dist/types/features/cat721/index.d.ts.map +1 -1
  275. package/dist/types/features/cat721/send/singleSend.d.ts +1 -1
  276. package/dist/types/features/cat721/send/singleSend.d.ts.map +1 -1
  277. package/dist/types/utils/contractPeripheral.d.ts +4 -4
  278. package/dist/types/utils/contractPeripheral.d.ts.map +1 -1
  279. package/package.json +4 -4
  280. package/scrypt.index.json +10 -10
@@ -1,12 +1,16 @@
1
1
  {
2
2
  "version": 10,
3
3
  "compilerVersion": "1.22.0+commit.47800da",
4
- "contract": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721Guard_6_6_2",
5
- "md5": "2f697220810af5c5cd8b46ca3483d728",
4
+ "contract": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721Guard_6_6_2",
5
+ "md5": "d3f6b7377b658d7ee4b5cfe5e74d39d1",
6
6
  "structs": [
7
7
  {
8
- "name": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721GuardConstState",
8
+ "name": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardConstState",
9
9
  "params": [
10
+ {
11
+ "name": "deployerAddr",
12
+ "type": "bytes"
13
+ },
10
14
  {
11
15
  "name": "nftScriptHashes",
12
16
  "type": "bytes[4]"
@@ -23,7 +27,7 @@
23
27
  "genericTypes": []
24
28
  },
25
29
  {
26
- "name": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721State",
30
+ "name": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721State",
27
31
  "params": [
28
32
  {
29
33
  "name": "ownerAddr",
@@ -37,7 +41,7 @@
37
41
  "genericTypes": []
38
42
  },
39
43
  {
40
- "name": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721ClosedMinterState",
44
+ "name": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721ClosedMinterState",
41
45
  "params": [
42
46
  {
43
47
  "name": "nftScriptHash",
@@ -55,7 +59,7 @@
55
59
  "genericTypes": []
56
60
  },
57
61
  {
58
- "name": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721MerkleLeaf",
62
+ "name": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721MerkleLeaf",
59
63
  "params": [
60
64
  {
61
65
  "name": "contentDataHash",
@@ -73,7 +77,7 @@
73
77
  "genericTypes": []
74
78
  },
75
79
  {
76
- "name": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721OpenMinterState",
80
+ "name": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721OpenMinterState",
77
81
  "params": [
78
82
  {
79
83
  "name": "nftScriptHash",
@@ -91,7 +95,7 @@
91
95
  "genericTypes": []
92
96
  },
93
97
  {
94
- "name": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__TxOut",
98
+ "name": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxOut",
95
99
  "params": [
96
100
  {
97
101
  "name": "scriptHash",
@@ -109,7 +113,7 @@
109
113
  "genericTypes": []
110
114
  },
111
115
  {
112
- "name": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__TxIn",
116
+ "name": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxIn",
113
117
  "params": [
114
118
  {
115
119
  "name": "prevTxHash",
@@ -131,7 +135,7 @@
131
135
  "genericTypes": []
132
136
  },
133
137
  {
134
- "name": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__TxHashPreimage",
138
+ "name": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxHashPreimage",
135
139
  "params": [
136
140
  {
137
141
  "name": "version",
@@ -153,11 +157,11 @@
153
157
  "genericTypes": []
154
158
  },
155
159
  {
156
- "name": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__BacktraceInfo",
160
+ "name": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__BacktraceInfo",
157
161
  "params": [
158
162
  {
159
163
  "name": "prevTxInput",
160
- "type": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__TxIn"
164
+ "type": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxIn"
161
165
  },
162
166
  {
163
167
  "name": "prevTxInputIndex",
@@ -165,13 +169,13 @@
165
169
  },
166
170
  {
167
171
  "name": "prevPrevTxPreimage",
168
- "type": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__TxHashPreimage"
172
+ "type": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxHashPreimage"
169
173
  }
170
174
  ],
171
175
  "genericTypes": []
172
176
  },
173
177
  {
174
- "name": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__SHPreimage",
178
+ "name": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__SHPreimage",
175
179
  "params": [
176
180
  {
177
181
  "name": "nVersion",
@@ -233,7 +237,7 @@
233
237
  "genericTypes": []
234
238
  },
235
239
  {
236
- "name": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__Outpoint",
240
+ "name": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__Outpoint",
237
241
  "params": [
238
242
  {
239
243
  "name": "txHash",
@@ -247,7 +251,7 @@
247
251
  "genericTypes": []
248
252
  },
249
253
  {
250
- "name": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__ReadVarintResult",
254
+ "name": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__ReadVarintResult",
251
255
  "params": [
252
256
  {
253
257
  "name": "data",
@@ -263,51 +267,51 @@
263
267
  ],
264
268
  "library": [
265
269
  {
266
- "name": "_opcat_labs_cat_sdk_3_1_0__rs__OwnerUtils",
270
+ "name": "_opcat_labs_cat_sdk_3_2_0__rs__OwnerUtils",
267
271
  "params": [],
268
272
  "properties": [],
269
273
  "genericTypes": []
270
274
  },
271
275
  {
272
- "name": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__TxUtils",
276
+ "name": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils",
273
277
  "params": [],
274
278
  "properties": [],
275
279
  "genericTypes": []
276
280
  },
277
281
  {
278
- "name": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__StateUtils",
282
+ "name": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__StateUtils",
279
283
  "params": [],
280
284
  "properties": [],
281
285
  "genericTypes": []
282
286
  },
283
287
  {
284
- "name": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721StateLib",
288
+ "name": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721StateLib",
285
289
  "params": [],
286
290
  "properties": [],
287
291
  "genericTypes": [],
288
- "stateType": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721State"
292
+ "stateType": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721State"
289
293
  },
290
294
  {
291
- "name": "_opcat_labs_cat_sdk_3_1_0__rs__ConstantsLib",
295
+ "name": "_opcat_labs_cat_sdk_3_2_0__rs__ConstantsLib",
292
296
  "params": [],
293
297
  "properties": [],
294
298
  "genericTypes": []
295
299
  },
296
300
  {
297
- "name": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__ContextUtils",
301
+ "name": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils",
298
302
  "params": [],
299
303
  "properties": [],
300
304
  "genericTypes": []
301
305
  },
302
306
  {
303
- "name": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721GuardStateLib",
307
+ "name": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardStateLib",
304
308
  "params": [],
305
309
  "properties": [],
306
310
  "genericTypes": [],
307
- "stateType": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721GuardConstState"
311
+ "stateType": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardConstState"
308
312
  },
309
313
  {
310
- "name": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__StdUtils",
314
+ "name": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__StdUtils",
311
315
  "params": [],
312
316
  "properties": [],
313
317
  "genericTypes": []
@@ -342,7 +346,7 @@
342
346
  },
343
347
  {
344
348
  "name": "cat721States",
345
- "type": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721State[6]"
349
+ "type": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721State[6]"
346
350
  },
347
351
  {
348
352
  "name": "outputCount",
@@ -350,7 +354,7 @@
350
354
  },
351
355
  {
352
356
  "name": "__scrypt_ts_shPreimage",
353
- "type": "_opcat_labs_scrypt_ts_opcat_3_1_0__rs__SHPreimage"
357
+ "type": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__SHPreimage"
354
358
  },
355
359
  {
356
360
  "name": "__scrypt_ts_preimageSig",
@@ -358,7 +362,7 @@
358
362
  },
359
363
  {
360
364
  "name": "__scrypt_ts_curState",
361
- "type": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721GuardConstState"
365
+ "type": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardConstState"
362
366
  },
363
367
  {
364
368
  "name": "__scrypt_ts_spentAmounts",
@@ -374,14 +378,53 @@
374
378
  }
375
379
  ]
376
380
  },
381
+ {
382
+ "type": "function",
383
+ "name": "destroy",
384
+ "index": 1,
385
+ "params": [
386
+ {
387
+ "name": "userSig",
388
+ "type": "Sig"
389
+ },
390
+ {
391
+ "name": "userPubKey",
392
+ "type": "PubKey"
393
+ },
394
+ {
395
+ "name": "__scrypt_ts_shPreimage",
396
+ "type": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__SHPreimage"
397
+ },
398
+ {
399
+ "name": "__scrypt_ts_preimageSig",
400
+ "type": "Sig"
401
+ },
402
+ {
403
+ "name": "__scrypt_ts_changeInfo",
404
+ "type": "_opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxOut"
405
+ },
406
+ {
407
+ "name": "__scrypt_ts_curState",
408
+ "type": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardConstState"
409
+ },
410
+ {
411
+ "name": "__scrypt_ts_spentAmounts",
412
+ "type": "bytes"
413
+ },
414
+ {
415
+ "name": "__scrypt_ts_spentDataHashes",
416
+ "type": "bytes"
417
+ }
418
+ ]
419
+ },
377
420
  {
378
421
  "type": "constructor",
379
422
  "params": []
380
423
  }
381
424
  ],
382
425
  "stateProps": [],
383
- "stateType": "_opcat_labs_cat_sdk_3_1_0__rs__CAT721GuardConstState",
426
+ "stateType": "_opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardConstState",
384
427
  "buildType": "release",
385
428
  "file": "../cat721Guard_6_6_2.scrypt",
386
- "hex": "2102ba79df5f8ae7604a9830f03c7933028186aede0675a16f025dc4f8be8eec03822000000000000000000000000000000000000000000000000000000000000000ff2000000000000000000000000000000000000000000000000000000000000000fe2000000000000000000000000000000000000000000000000000000000000000fd2000000000000000000000000000000000000000000000000000000000000000fc5e795f7982778c7f75007f77011d79011d79011d79011d79011d79011d79011d79011d79011d79011d79011d79011d79011d79011d795d798277549d5c79827701209d5b79827701209d5a79827701209d597900a26958798277549d5779827701209d5679827701209d5579827701209d5479827701209d5379827701209d527900a2697800a26976519c6476529c6751686476539c67516864760281009c67516864760282009c67516864760283009c675168695d795d797e5c797e5b797e5a79767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c7e59797e58797e57797e56797e55797e54797e5379546e8b806e7c7f75007f6b6d6d6c7e5279546e8b806e7c7f75007f6b6d6d6c7e7854807e6b6d6d6d6d6d6d6d6ca85679ba635e795579ac67006869577901177978aa7888785878827d77527997009d6e7c966b6d6d6c7756790117796f75aa527988765379012078827d77527997009d6e7c967777779d6d7557790116796f75aa527988765379012078827d77527997009d6e7c967777779d6d755e795e795e795e795e795e79011879011579011579011579011579011579011579557955795579557953766b796c756b6d6d6c82775280567956795679567953766b796c756b6d6d6c7e567956795679567952766b796c756b6d6d6c827752807e567956795679567952766b796c756b6d6d6c7e567956795679567951766b796c756b6d6d6c827752807e567956795679567951766b796c756b6d6d6c7e567956795679567900766b796c756b6d6d6c827752807e567956795679567900766b796c756b6d6d6c7e5279827752807e52797e78827752807e787e567956795679567953766b796c756b6d6d6ca9577957795779577952766b796c756b6d6d6ca97e577957795779577951766b796c756b6d6d6ca97e577957795779577900766b796c756b6d6d6ca97e5379a97e5279a97ea97ea86b6d6d6d6c5f797653798b0120957f7553790120957f775279886d7555795579557955795579557956567956795679567953766b796c7553766b796c7587916953766b796c7552766b796c7587916953766b796c7551766b796c7587916952766b796c7552766b796c7587916952766b796c7551766b796c7587916951766b796c7551766b796c758791696d6d567956795679567953766b796c756b6d6d6c827d7701209d75567956795679567952766b796c756b6d6d6c827d7701209d75567956795679567951766b796c756b6d6d6c827d7701209d75567956795679567900766b796c756b6d6d6c827d7701209d75788277569d78517f75007f7781764fa26376549f670068697578527f75517f7781764fa26376549f670068697578537f75527f7781764fa26376549f670068697578547f75537f7781764fa26376549f670068697578557f75547f7781764fa26376549f670068697578567f75557f7781764fa26376549f670068696d6d6d6d005b795b795b795b790052a2635a795a795a795a7953766b796c756b6d6d6c54766b796c7588685152a2635a795a795a795a7952766b796c756b6d6d6c53766b796c7588685252a2635a795a795a795a7951766b796c756b6d6d6c52766b796c7588685352a2635a795a795a795a7900766b796c756b6d6d6c51766b796c7588685a795a795a795a7953766b796c756b6d6d6c54766b796c7587645479768b567a757171557a75685a795a795a795a7952766b796c756b6d6d6c53766b796c7587645479768b567a757171557a75680055799f635a795a795a795a7953766b796c756b6d6d6c54766b796c758791695a795a795a795a7953766b796c756b6d6d6c827701209d675a795a795a795a7953766b796c756b6d6d6c54766b796c7588685155799f635a795a795a795a7952766b796c756b6d6d6c53766b796c758791695a795a795a795a7952766b796c756b6d6d6c827701209d675a795a795a795a7952766b796c756b6d6d6c53766b796c758868547900a0694f000000000000000113795e79517f75007f77816079517f75007f77518763516700680053799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76011e79006e8b0120957f75780120957f777777880141766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d011e79006e8b0120957f75780120957f7777770142766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a7864760142766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d5e79527f75517f77816079527f75517f77518763516700685153799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76011e79516e8b0120957f75780120957f77777788013f766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d011e79516e8b0120957f75780120957f7777770140766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a7864760140766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d5e79537f75527f77816079537f75527f77518763516700685253799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76011e79526e8b0120957f75780120957f77777788013d766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d011e79526e8b0120957f75780120957f777777013e766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a786476013e766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d5e79547f75537f77816079547f75537f77518763516700685353799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76011e79536e8b0120957f75780120957f77777788013b766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d011e79536e8b0120957f75780120957f777777013c766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a786476013c766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d5e79557f75547f77816079557f75547f77518763516700685453799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76011e79546e8b0120957f75780120957f777777880139766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d011e79546e8b0120957f75780120957f777777013a766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a786476013a766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d5e79567f75557f77816079567f75557f77518763516700685553799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76011e79556e8b0120957f75780120957f777777880137766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d011e79556e8b0120957f75780120957f7777770138766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a7864760138766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d587900a26358795e798c9c6700686901327900a26301327956a1670068690000000135799f630158766b796c7877827700a069014d766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015555797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea877770163766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c014d766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f75014a766b796c750163766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d670158766b796c758277009d014c766b796c754f9d0152766b796c754f9d015e766b796c7500880146766b796c75009d68510135799f630157766b796c7877827700a069014c766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015555797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea877770162766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c014c766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f750149766b796c750162766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d670157766b796c758277009d014b766b796c754f9d0151766b796c754f9d015d766b796c7500880145766b796c75009d68520135799f630156766b796c7877827700a069014b766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015555797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea877770161766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c014b766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f750148766b796c750161766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d670156766b796c758277009d014a766b796c754f9d0150766b796c754f9d015c766b796c7500880144766b796c75009d68530135799f630155766b796c7877827700a069014a766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015555797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea877770160766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c014a766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f750147766b796c750160766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d670155766b796c758277009d0149766b796c754f9d014f766b796c754f9d015b766b796c7500880143766b796c75009d68540135799f630154766b796c7877827700a0690149766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015555797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea87777015f766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c0149766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f750146766b796c75015f766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d670154766b796c758277009d0148766b796c754f9d014e766b796c754f9d015a766b796c7500880142766b796c75009d68550135799f630153766b796c7877827700a0690148766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015555797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea87777015e766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c0148766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f750145766b796c75015e766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d670153766b796c758277009d0147766b796c754f9d014d766b796c754f9d0159766b796c7500880141766b796c75009d68005279a2630152766b796c754f9d68515279a2630151766b796c754f9d68525279a2630150766b796c754f9d68535279a263014f766b796c754f9d68545279a263014e766b796c754f9d68555279a263014d766b796c754f9d68537952799d76aa012a79876b6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6c77"
429
+ "hex": "2102ba79df5f8ae7604a9830f03c7933028186aede0675a16f025dc4f8be8eec03822000000000000000000000000000000000000000000000000000000000000000ff2000000000000000000000000000000000000000000000000000000000000000fe2000000000000000000000000000000000000000000000000000000000000000fd2000000000000000000000000000000000000000000000000000000000000000fc5579008763607901117982778c7f75007f77011f79011f79011f79011f79011f79011f79011f79011f79011f79011f79011f79011f79011f79011f795d798277549d5c79827701209d5b79827701209d5a79827701209d597900a26958798277549d5779827701209d5679827701209d5579827701209d5479827701209d5379827701209d527900a2697800a26976519c6476529c6751686476539c67516864760281009c67516864760282009c67516864760283009c675168695d795d797e5c797e5b797e5a79767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c7e59797e58797e57797e56797e55797e54797e5379546e8b806e7c7f75007f6b6d6d6c7e5279546e8b806e7c7f75007f6b6d6d6c7e7854807e6b6d6d6d6d6d6d6d6ca85679ba6360795579ac67006869587901197978aa7888785878827d77527997009d6e7c966b6d6d6c7757790119796f75aa527988765379012078827d77527997009d6e7c967777779d6d7558790118796f75aa527988765379012078827d77527997009d6e7c967777779d6d756079607960796079607960796079011b7901187901187901187901187901187901187901187956798277528057797e567956795679567953766b796c756b6d6d6c827752807e567956795679567953766b796c756b6d6d6c7e567956795679567952766b796c756b6d6d6c827752807e567956795679567952766b796c756b6d6d6c7e567956795679567951766b796c756b6d6d6c827752807e567956795679567951766b796c756b6d6d6c7e567956795679567900766b796c756b6d6d6c827752807e567956795679567900766b796c756b6d6d6c7e5279827752807e52797e78827752807e787e5779a9577957795779577953766b796c756b6d6d6ca97e577957795779577952766b796c756b6d6d6ca97e577957795779577951766b796c756b6d6d6ca97e577957795779577900766b796c756b6d6d6ca97e5379a97e5279a97ea97ea86b6d6d6d6c770111797653798b0120957f7553790120957f775279886d75567956795679567956795679567956567956795679567953766b796c7553766b796c7587916953766b796c7552766b796c7587916953766b796c7551766b796c7587916952766b796c7552766b796c7587916952766b796c7551766b796c7587916951766b796c7551766b796c758791696d6d567956795679567953766b796c756b6d6d6c827d7701209d75567956795679567952766b796c756b6d6d6c827d7701209d75567956795679567951766b796c756b6d6d6c827d7701209d75567956795679567900766b796c756b6d6d6c827d7701209d75788277569d78517f75007f7781764fa26376549f670068697578527f75517f7781764fa26376549f670068697578537f75527f7781764fa26376549f670068697578547f75537f7781764fa26376549f670068697578557f75547f7781764fa26376549f670068697578567f75557f7781764fa26376549f670068696d6d6d6d75005c795c795c795c790052a2635a795a795a795a7953766b796c756b6d6d6c54766b796c7588685152a2635a795a795a795a7952766b796c756b6d6d6c53766b796c7588685252a2635a795a795a795a7951766b796c756b6d6d6c52766b796c7588685352a2635a795a795a795a7900766b796c756b6d6d6c51766b796c7588685a795a795a795a7953766b796c756b6d6d6c54766b796c7587645479768b567a757171557a75685a795a795a795a7952766b796c756b6d6d6c53766b796c7587645479768b567a757171557a75680055799f635a795a795a795a7953766b796c756b6d6d6c54766b796c758791695a795a795a795a7953766b796c756b6d6d6c827701209d675a795a795a795a7953766b796c756b6d6d6c54766b796c7588685155799f635a795a795a795a7952766b796c756b6d6d6c53766b796c758791695a795a795a795a7952766b796c756b6d6d6c827701209d675a795a795a795a7952766b796c756b6d6d6c53766b796c758868547900a0694f000000000000000114795e79517f75007f77816079517f75007f77518763516700680053799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76012079006e8b0120957f75780120957f777777880144766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d012079006e8b0120957f75780120957f7777770145766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a7864760145766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d5e79527f75517f77816079527f75517f77518763516700685153799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76012079516e8b0120957f75780120957f777777880142766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d012079516e8b0120957f75780120957f7777770143766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a7864760143766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d5e79537f75527f77816079537f75527f77518763516700685253799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76012079526e8b0120957f75780120957f777777880140766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d012079526e8b0120957f75780120957f7777770141766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a7864760141766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d5e79547f75537f77816079547f75537f77518763516700685353799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76012079536e8b0120957f75780120957f77777788013e766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d012079536e8b0120957f75780120957f777777013f766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a786476013f766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d5e79557f75547f77816079557f75547f77518763516700685453799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76012079546e8b0120957f75780120957f77777788013c766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d012079546e8b0120957f75780120957f777777013d766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a786476013d766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d5e79567f75557f77816079567f75557f77518763516700685553799f637860799f69784f9e630115790115790115790115795456797600a26976549f69948c766b796c756b6d6d6c76012079556e8b0120957f75780120957f77777788013a766b796c766b796c757876827d7701199c647601209c675168696d51787700a2696d012079556e8b0120957f75780120957f777777013b766b796c766b796c75788277528052797e78827752807e787e5279a95279a97ea97ea877778852795c79a0635279675b79685c7a755b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a5b7a786476013b766b796c766b796c786d77a97e55797600a26976569f695c7a780087637578685c7a5279518763755279685c7a5379528763755379685c7a5479538763755479685c7a5579548763755579685c7a567955876375567968567a755b7a5b7a5b7a5b7a5b7a5b7a755479768b567a757171557a756875677691696867784f9d686d587900a26358795e798c9c6700686901357900a26301357956a1670068690000000138799f63015b766b796c7877827700a0690150766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015855797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea877770166766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c0150766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f75014d766b796c750166766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d67015b766b796c758277009d014f766b796c754f9d0155766b796c754f9d0161766b796c7500880149766b796c75009d68510138799f63015a766b796c7877827700a069014f766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015855797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea877770165766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c014f766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f75014c766b796c750165766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d67015a766b796c758277009d014e766b796c754f9d0154766b796c754f9d0160766b796c7500880148766b796c75009d68520138799f630159766b796c7877827700a069014e766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015855797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea877770164766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c014e766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f75014b766b796c750164766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d670159766b796c758277009d014d766b796c754f9d0153766b796c754f9d015f766b796c7500880147766b796c75009d68530138799f630158766b796c7877827700a069014d766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015855797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea877770163766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c014d766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f75014a766b796c750163766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d670158766b796c758277009d014c766b796c754f9d0152766b796c754f9d015e766b796c7500880146766b796c75009d68540138799f630157766b796c7877827700a069014c766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015855797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea877770162766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c014c766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f750149766b796c750162766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d670157766b796c758277009d014b766b796c754f9d0151766b796c754f9d015d766b796c7500880145766b796c75009d68550138799f630156766b796c7877827700a069014b766b796c78770112799f69764f9e630117790117790117790117795455797600a26976549f69948c766b796c756b6d6d6c015855797600a26976569f6994766b796c787700a2695d56797600a26976569f6994766b796c756f75a97e8855798b567a757171557a53796e8277528052797e78827752807e787e5279a95279a97ea97ea877770161766b796c7578885579011b79011b79011b79011b795459797600a26976549f69948c766b796c756b6d6d6c014b766b796c755379527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e567a757171557a55796d6d677801187901187901187901187953766b796c756b6d6d6c8791697801187901187901187901187952766b796c756b6d6d6c8791696f750148766b796c750161766b796c75527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6c777e537a757b7b527975686d670156766b796c758277009d014a766b796c754f9d0150766b796c754f9d015c766b796c7500880144766b796c75009d68005279a2630155766b796c754f9d68515279a2630154766b796c754f9d68525279a2630153766b796c754f9d68535279a2630152766b796c754f9d68545279a2630151766b796c754f9d68555279a2630150766b796c754f9d68537952799d76aa012d79876b6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6c67557951876301127901137982778c7f75007f770121790121790121790121790121790121790121790121790121790121790121790121790121790121795d798277549d5c79827701209d5b79827701209d5a79827701209d597900a26958798277549d5779827701209d5679827701209d5579827701209d5479827701209d5379827701209d527900a2697800a26976519c6476529c6751686476539c67516864760281009c67516864760282009c67516864760283009c675168695d795d797e5c797e5b797e5a79767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c7e59797e58797e57797e56797e55797e54797e5379546e8b806e7c7f75007f6b6d6d6c7e5279546e8b806e7c7f75007f6b6d6d6c7e7854807e6b6d6d6d6d6d6d6d6ca85679ba630112795579ac670068695779011b7978aa7888785878827d77527997009d6e7c966b6d6d6c775779011a796f75aa527988765379012078827d77527997009d6e7c967777779d6d755f795f795f795f795f795f795f79011d7901177901177901177901177901177901177901177956798277528057797e567956795679567953766b796c756b6d6d6c827752807e567956795679567953766b796c756b6d6d6c7e567956795679567952766b796c756b6d6d6c827752807e567956795679567952766b796c756b6d6d6c7e567956795679567951766b796c756b6d6d6c827752807e567956795679567951766b796c756b6d6d6c7e567956795679567900766b796c756b6d6d6c827752807e567956795679567900766b796c756b6d6d6c7e5279827752807e52797e78827752807e787e5779a9577957795779577953766b796c756b6d6d6ca97e577957795779577952766b796c756b6d6d6ca97e577957795779577951766b796c756b6d6d6ca97e577957795779577900766b796c756b6d6d6ca97e5379a97e5279a97ea97ea86b6d6d6d6c7760797653798b0120957f7553790120957f775279886d750129795779787676827701219d750376a91478a97e0288ac7e7778886d012a79012a79ad01177900a0630119790118796e00a8527982777882777801209d7601209d537900a2695379767600a2637609ffffffffffffffff00a16700686976586e8b806e7c7f75007f6b6d6d6d6c55797e53797e6b6d6d6d6c77670068aa011f79876b6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6c7767006868"
387
430
  }
@@ -4,6 +4,7 @@ import "../constants.scrypt";
4
4
  import "../scrypt-ts-opcat/assets/smart-contract/builtin-libs/contextUtils.scrypt";
5
5
  import "cat721StateLib.scrypt";
6
6
  import "../scrypt-ts-opcat/assets/smart-contract/builtin-libs/txUtils.scrypt";
7
+ import "../utils/ownerUtils.scrypt";
7
8
  import "../scrypt-ts-opcat/assets/smart-contract/builtin-libs/stdUtils.scrypt";
8
9
  import "../scrypt-ts-opcat/assets/smart-contract/types/structs.scrypt";
9
10
  import "../scrypt-ts-opcat/assets/smart-contract/builtin-libs/stateUtils.scrypt";
@@ -11,24 +12,24 @@ import "../scrypt-ts-opcat/assets/smart-contract/builtin-libs/stateUtils.scrypt"
11
12
 
12
13
 
13
14
 
14
- contract _opcat_labs_cat_sdk_3_1_0__rs__CAT721Guard_6_6_2 {
15
+ contract _opcat_labs_cat_sdk_3_2_0__rs__CAT721Guard_6_6_2 {
15
16
  constructor(){}
16
- public function unlock(bytes[6] nextStateHashes, bytes[6] ownerAddrOrScriptHashes, int[6] outputLocalIds, int[6] nftScriptHashIndexes, int[6] outputSatoshis, _opcat_labs_cat_sdk_3_1_0__rs__CAT721State[6] cat721States, int outputCount, _opcat_labs_scrypt_ts_opcat_3_1_0__rs__SHPreimage __scrypt_ts_shPreimage, Sig __scrypt_ts_preimageSig, _opcat_labs_cat_sdk_3_1_0__rs__CAT721GuardConstState __scrypt_ts_curState, bytes __scrypt_ts_spentAmounts, bytes __scrypt_ts_spentDataHashes, bytes __scrypt_ts_spentScriptHashes) {
17
- require(checkDataSig(Sig(__scrypt_ts_preimageSig[0 : len(__scrypt_ts_preimageSig) - 1]), sha256(_opcat_labs_scrypt_ts_opcat_3_1_0__rs__ContextUtils.serializeSHPreimage(__scrypt_ts_shPreimage)), _opcat_labs_scrypt_ts_opcat_3_1_0__rs__ContextUtils.pubKey) && checkSig(__scrypt_ts_preimageSig, _opcat_labs_scrypt_ts_opcat_3_1_0__rs__ContextUtils.pubKey));
17
+ public function unlock(bytes[6] nextStateHashes, bytes[6] ownerAddrOrScriptHashes, int[6] outputLocalIds, int[6] nftScriptHashIndexes, int[6] outputSatoshis, _opcat_labs_cat_sdk_3_2_0__rs__CAT721State[6] cat721States, int outputCount, _opcat_labs_scrypt_ts_opcat_3_2_0__rs__SHPreimage __scrypt_ts_shPreimage, Sig __scrypt_ts_preimageSig, _opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardConstState __scrypt_ts_curState, bytes __scrypt_ts_spentAmounts, bytes __scrypt_ts_spentDataHashes, bytes __scrypt_ts_spentScriptHashes) {
18
+ require(checkDataSig(Sig(__scrypt_ts_preimageSig[0 : len(__scrypt_ts_preimageSig) - 1]), sha256(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.serializeSHPreimage(__scrypt_ts_shPreimage)), _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.pubKey) && checkSig(__scrypt_ts_preimageSig, _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.pubKey));
18
19
 
19
- int __scrypt_ts_inputCount = _opcat_labs_scrypt_ts_opcat_3_1_0__rs__ContextUtils.checkSpentAmounts(__scrypt_ts_spentAmounts, __scrypt_ts_shPreimage.hashSpentAmounts);
20
+ int __scrypt_ts_inputCount = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.checkSpentAmounts(__scrypt_ts_spentAmounts, __scrypt_ts_shPreimage.hashSpentAmounts);
20
21
 
21
- _opcat_labs_scrypt_ts_opcat_3_1_0__rs__ContextUtils.checkSpentScripts(__scrypt_ts_spentScriptHashes, __scrypt_ts_shPreimage.hashSpentScriptHashes, __scrypt_ts_inputCount);
22
+ _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.checkSpentScripts(__scrypt_ts_spentScriptHashes, __scrypt_ts_shPreimage.hashSpentScriptHashes, __scrypt_ts_inputCount);
22
23
 
23
- _opcat_labs_scrypt_ts_opcat_3_1_0__rs__ContextUtils.checkSpentDataHashes(__scrypt_ts_spentDataHashes, __scrypt_ts_shPreimage.hashSpentDataHashes, __scrypt_ts_inputCount);
24
+ _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.checkSpentDataHashes(__scrypt_ts_spentDataHashes, __scrypt_ts_shPreimage.hashSpentDataHashes, __scrypt_ts_inputCount);
24
25
 
25
- _opcat_labs_cat_sdk_3_1_0__rs__CAT721GuardConstState __scrypt_ts_nextState = __scrypt_ts_curState;
26
+ _opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardConstState __scrypt_ts_nextState = __scrypt_ts_curState;
26
27
 
27
- _opcat_labs_scrypt_ts_opcat_3_1_0__rs__StateUtils.checkInputState(__scrypt_ts_shPreimage.inputIndex, _opcat_labs_cat_sdk_3_1_0__rs__CAT721Guard_6_6_2.stateHash(__scrypt_ts_curState), __scrypt_ts_spentDataHashes);
28
+ _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StateUtils.checkInputState(__scrypt_ts_shPreimage.inputIndex, _opcat_labs_cat_sdk_3_2_0__rs__CAT721Guard_6_6_2.stateHash(__scrypt_ts_curState), __scrypt_ts_spentDataHashes);
28
29
 
29
- _opcat_labs_cat_sdk_3_1_0__rs__CAT721GuardStateLib.formalCheckState(__scrypt_ts_nextState, 6);
30
+ _opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardStateLib.formalCheckState(__scrypt_ts_nextState, 6);
30
31
  int inputNftTypes = 0;
31
- bytes[4] nftScriptPlaceholders = [_opcat_labs_cat_sdk_3_1_0__rs__ConstantsLib.TOKEN_SCRIPT_HASH_PLACEHOLDER_FF, _opcat_labs_cat_sdk_3_1_0__rs__ConstantsLib.TOKEN_SCRIPT_HASH_PLACEHOLDER_FE, _opcat_labs_cat_sdk_3_1_0__rs__ConstantsLib.TOKEN_SCRIPT_HASH_PLACEHOLDER_FD, _opcat_labs_cat_sdk_3_1_0__rs__ConstantsLib.TOKEN_SCRIPT_HASH_PLACEHOLDER_FC];
32
+ bytes[4] nftScriptPlaceholders = [_opcat_labs_cat_sdk_3_2_0__rs__ConstantsLib.TOKEN_SCRIPT_HASH_PLACEHOLDER_FF, _opcat_labs_cat_sdk_3_2_0__rs__ConstantsLib.TOKEN_SCRIPT_HASH_PLACEHOLDER_FE, _opcat_labs_cat_sdk_3_2_0__rs__ConstantsLib.TOKEN_SCRIPT_HASH_PLACEHOLDER_FD, _opcat_labs_cat_sdk_3_2_0__rs__ConstantsLib.TOKEN_SCRIPT_HASH_PLACEHOLDER_FC];
32
33
  loop (4) : i {
33
34
  if(i >= 2) {
34
35
  require(__scrypt_ts_nextState.nftScriptHashes[(i)] == nftScriptPlaceholders[(i)]);
@@ -59,9 +60,9 @@ contract _opcat_labs_cat_sdk_3_1_0__rs__CAT721Guard_6_6_2 {
59
60
  require(nftScriptIndex < inputNftTypes);
60
61
  if(nftScriptIndex != -1) {
61
62
  bytes nftScriptHash = __scrypt_ts_nextState.nftScriptHashes[(nftScriptIndex)];
62
- require(nftScriptHash == _opcat_labs_scrypt_ts_opcat_3_1_0__rs__ContextUtils.getSpentScriptHash(__scrypt_ts_spentScriptHashes, (i)));
63
- _opcat_labs_cat_sdk_3_1_0__rs__CAT721StateLib.checkState(cat721States[(i)]);
64
- require(_opcat_labs_scrypt_ts_opcat_3_1_0__rs__ContextUtils.getSpentDataHash(__scrypt_ts_spentDataHashes, (i)) == _opcat_labs_cat_sdk_3_1_0__rs__CAT721StateLib.stateHash(cat721States[(i)]));
63
+ require(nftScriptHash == _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.getSpentScriptHash(__scrypt_ts_spentScriptHashes, (i)));
64
+ _opcat_labs_cat_sdk_3_2_0__rs__CAT721StateLib.checkState(cat721States[(i)]);
65
+ require(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.getSpentDataHash(__scrypt_ts_spentDataHashes, (i)) == _opcat_labs_cat_sdk_3_2_0__rs__CAT721StateLib.stateHash(cat721States[(i)]));
65
66
  nftScriptIndexMax = nftScriptIndex > nftScriptIndexMax ? nftScriptIndex : nftScriptIndexMax;
66
67
  if(!burnMask) {
67
68
  nextNfts[(nextNftCount)] = nftScriptHash + hash160(pack(cat721States[(i)].localId));
@@ -90,14 +91,14 @@ contract _opcat_labs_cat_sdk_3_1_0__rs__CAT721Guard_6_6_2 {
90
91
  require(localId >= 0);
91
92
  require(nextNfts[(outputNftCount)] == nftScriptHash + hash160(pack(localId)));
92
93
  outputNftCount = outputNftCount + 1;
93
- bytes nftStateHash = _opcat_labs_cat_sdk_3_1_0__rs__CAT721StateLib.stateHash({ownerAddrOrScriptHash, localId});
94
+ bytes nftStateHash = _opcat_labs_cat_sdk_3_2_0__rs__CAT721StateLib.stateHash({ownerAddrOrScriptHash, localId});
94
95
  require(nextStateHashes[(i)] == nftStateHash);
95
- outputs += _opcat_labs_scrypt_ts_opcat_3_1_0__rs__TxUtils.buildDataOutput(__scrypt_ts_nextState.nftScriptHashes[(nftScriptIndex)], outputSatoshis[(i)], nftStateHash);
96
+ outputs += _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.buildDataOutput(__scrypt_ts_nextState.nftScriptHashes[(nftScriptIndex)], outputSatoshis[(i)], nftStateHash);
96
97
  } else {
97
98
  loop (2) : j {
98
99
  require(ownerAddrOrScriptHash != __scrypt_ts_nextState.nftScriptHashes[j]);
99
100
  }
100
- outputs += _opcat_labs_scrypt_ts_opcat_3_1_0__rs__TxUtils.buildDataOutput(ownerAddrOrScriptHash, outputSatoshis[(i)], nextStateHashes[(i)]);
101
+ outputs += _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.buildDataOutput(ownerAddrOrScriptHash, outputSatoshis[(i)], nextStateHashes[(i)]);
101
102
  }
102
103
  } else {
103
104
  require(len(ownerAddrOrScriptHashes[(i)]) == 0);
@@ -115,10 +116,26 @@ contract _opcat_labs_cat_sdk_3_1_0__rs__CAT721Guard_6_6_2 {
115
116
  require(nextNftCount == outputNftCount);
116
117
  require(hash256(outputs) == __scrypt_ts_shPreimage.hashOutputs);
117
118
  }
118
- static function serializeState(_opcat_labs_cat_sdk_3_1_0__rs__CAT721GuardConstState __scrypt_ts_curState): bytes {
119
- return num2bin(len(__scrypt_ts_curState.nftScriptHashes[0]), 2) + __scrypt_ts_curState.nftScriptHashes[0] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[1]), 2) + __scrypt_ts_curState.nftScriptHashes[1] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[2]), 2) + __scrypt_ts_curState.nftScriptHashes[2] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[3]), 2) + __scrypt_ts_curState.nftScriptHashes[3] + num2bin(len(__scrypt_ts_curState.nftBurnMasks), 2) + __scrypt_ts_curState.nftBurnMasks + num2bin(len(__scrypt_ts_curState.nftScriptIndexes), 2) + __scrypt_ts_curState.nftScriptIndexes + hash160(hash160(__scrypt_ts_curState.nftScriptHashes[0]) + hash160(__scrypt_ts_curState.nftScriptHashes[1]) + hash160(__scrypt_ts_curState.nftScriptHashes[2]) + hash160(__scrypt_ts_curState.nftScriptHashes[3]) + hash160(__scrypt_ts_curState.nftBurnMasks) + hash160(__scrypt_ts_curState.nftScriptIndexes));
119
+ public function destroy(Sig userSig, PubKey userPubKey, _opcat_labs_scrypt_ts_opcat_3_2_0__rs__SHPreimage __scrypt_ts_shPreimage, Sig __scrypt_ts_preimageSig, _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxOut __scrypt_ts_changeInfo, _opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardConstState __scrypt_ts_curState, bytes __scrypt_ts_spentAmounts, bytes __scrypt_ts_spentDataHashes) {
120
+ require(checkDataSig(Sig(__scrypt_ts_preimageSig[0 : len(__scrypt_ts_preimageSig) - 1]), sha256(_opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.serializeSHPreimage(__scrypt_ts_shPreimage)), _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.pubKey) && checkSig(__scrypt_ts_preimageSig, _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.pubKey));
121
+
122
+ int __scrypt_ts_inputCount = _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.checkSpentAmounts(__scrypt_ts_spentAmounts, __scrypt_ts_shPreimage.hashSpentAmounts);
123
+
124
+ _opcat_labs_scrypt_ts_opcat_3_2_0__rs__ContextUtils.checkSpentDataHashes(__scrypt_ts_spentDataHashes, __scrypt_ts_shPreimage.hashSpentDataHashes, __scrypt_ts_inputCount);
125
+
126
+ _opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardConstState __scrypt_ts_nextState = __scrypt_ts_curState;
127
+
128
+ _opcat_labs_scrypt_ts_opcat_3_2_0__rs__StateUtils.checkInputState(__scrypt_ts_shPreimage.inputIndex, _opcat_labs_cat_sdk_3_2_0__rs__CAT721Guard_6_6_2.stateHash(__scrypt_ts_curState), __scrypt_ts_spentDataHashes);
129
+
130
+ _opcat_labs_cat_sdk_3_2_0__rs__OwnerUtils.checkUserOwner(userPubKey, __scrypt_ts_nextState.deployerAddr);
131
+ require(checkSig(userSig, userPubKey));
132
+ require(hash256(
133
+ (__scrypt_ts_changeInfo.satoshis > 0 ? _opcat_labs_scrypt_ts_opcat_3_2_0__rs__TxUtils.buildOutput(__scrypt_ts_changeInfo.scriptHash, __scrypt_ts_changeInfo.satoshis) : b'')) == __scrypt_ts_shPreimage.hashOutputs);
134
+ }
135
+ static function serializeState(_opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardConstState __scrypt_ts_curState): bytes {
136
+ return num2bin(len(__scrypt_ts_curState.deployerAddr), 2) + __scrypt_ts_curState.deployerAddr + num2bin(len(__scrypt_ts_curState.nftScriptHashes[0]), 2) + __scrypt_ts_curState.nftScriptHashes[0] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[1]), 2) + __scrypt_ts_curState.nftScriptHashes[1] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[2]), 2) + __scrypt_ts_curState.nftScriptHashes[2] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[3]), 2) + __scrypt_ts_curState.nftScriptHashes[3] + num2bin(len(__scrypt_ts_curState.nftBurnMasks), 2) + __scrypt_ts_curState.nftBurnMasks + num2bin(len(__scrypt_ts_curState.nftScriptIndexes), 2) + __scrypt_ts_curState.nftScriptIndexes + hash160(hash160(__scrypt_ts_curState.deployerAddr) + hash160(__scrypt_ts_curState.nftScriptHashes[0]) + hash160(__scrypt_ts_curState.nftScriptHashes[1]) + hash160(__scrypt_ts_curState.nftScriptHashes[2]) + hash160(__scrypt_ts_curState.nftScriptHashes[3]) + hash160(__scrypt_ts_curState.nftBurnMasks) + hash160(__scrypt_ts_curState.nftScriptIndexes));
120
137
  }
121
- static function stateHash(_opcat_labs_cat_sdk_3_1_0__rs__CAT721GuardConstState __scrypt_ts_curState): bytes {
122
- return sha256(num2bin(len(__scrypt_ts_curState.nftScriptHashes[0]), 2) + __scrypt_ts_curState.nftScriptHashes[0] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[1]), 2) + __scrypt_ts_curState.nftScriptHashes[1] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[2]), 2) + __scrypt_ts_curState.nftScriptHashes[2] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[3]), 2) + __scrypt_ts_curState.nftScriptHashes[3] + num2bin(len(__scrypt_ts_curState.nftBurnMasks), 2) + __scrypt_ts_curState.nftBurnMasks + num2bin(len(__scrypt_ts_curState.nftScriptIndexes), 2) + __scrypt_ts_curState.nftScriptIndexes + hash160(hash160(__scrypt_ts_curState.nftScriptHashes[0]) + hash160(__scrypt_ts_curState.nftScriptHashes[1]) + hash160(__scrypt_ts_curState.nftScriptHashes[2]) + hash160(__scrypt_ts_curState.nftScriptHashes[3]) + hash160(__scrypt_ts_curState.nftBurnMasks) + hash160(__scrypt_ts_curState.nftScriptIndexes)));
138
+ static function stateHash(_opcat_labs_cat_sdk_3_2_0__rs__CAT721GuardConstState __scrypt_ts_curState): bytes {
139
+ return sha256(num2bin(len(__scrypt_ts_curState.deployerAddr), 2) + __scrypt_ts_curState.deployerAddr + num2bin(len(__scrypt_ts_curState.nftScriptHashes[0]), 2) + __scrypt_ts_curState.nftScriptHashes[0] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[1]), 2) + __scrypt_ts_curState.nftScriptHashes[1] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[2]), 2) + __scrypt_ts_curState.nftScriptHashes[2] + num2bin(len(__scrypt_ts_curState.nftScriptHashes[3]), 2) + __scrypt_ts_curState.nftScriptHashes[3] + num2bin(len(__scrypt_ts_curState.nftBurnMasks), 2) + __scrypt_ts_curState.nftBurnMasks + num2bin(len(__scrypt_ts_curState.nftScriptIndexes), 2) + __scrypt_ts_curState.nftScriptIndexes + hash160(hash160(__scrypt_ts_curState.deployerAddr) + hash160(__scrypt_ts_curState.nftScriptHashes[0]) + hash160(__scrypt_ts_curState.nftScriptHashes[1]) + hash160(__scrypt_ts_curState.nftScriptHashes[2]) + hash160(__scrypt_ts_curState.nftScriptHashes[3]) + hash160(__scrypt_ts_curState.nftBurnMasks) + hash160(__scrypt_ts_curState.nftScriptIndexes)));
123
140
  }
124
141
  }