@coti-io/coti-contracts 1.2.0 → 1.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.
Files changed (267) hide show
  1. package/.github/workflows/npm-publish.yml +1 -1
  2. package/contracts/messaging/PrivateMessaging.sol +456 -0
  3. package/contracts/mocks/messaging/PrivateMessagingHarness.sol +54 -0
  4. package/contracts/mocks/oracle/CotiPriceConsumerMock.sol +31 -0
  5. package/contracts/mocks/token/ERC20DecimalsMock.sol +21 -0
  6. package/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock.sol +8 -3
  7. package/contracts/node/SoulboundNodeNFT.sol +22 -22
  8. package/contracts/oracle/CotiPriceConsumer.sol +103 -0
  9. package/contracts/oracle/ICotiPriceConsumer.sol +15 -0
  10. package/contracts/oracle/IStdReference.sol +26 -0
  11. package/contracts/privacyBridge/PrivacyBridge.sol +373 -91
  12. package/contracts/privacyBridge/PrivacyBridgeCotiNative.sol +209 -161
  13. package/contracts/privacyBridge/PrivacyBridgeERC20.sol +241 -159
  14. package/contracts/privacyBridge/PrivacyBridgeUSDCe.sol +7 -1
  15. package/contracts/privacyBridge/PrivacyBridgeUSDT.sol +7 -1
  16. package/contracts/privacyBridge/PrivacyBridgeWADA.sol +7 -1
  17. package/contracts/privacyBridge/PrivacyBridgeWBTC.sol +7 -1
  18. package/contracts/privacyBridge/PrivacyBridgeWETH.sol +7 -1
  19. package/contracts/privacyBridge/PrivacyBridgegCoti.sol +7 -1
  20. package/hardhat.config.ts +5 -2
  21. package/package.json +2 -2
  22. package/scripts/add-bridge-operators.cjs +87 -0
  23. package/scripts/deploy-coti-price-consumer-mainnet.cjs +49 -0
  24. package/scripts/deployCotiNodeRewards.ts +51 -0
  25. package/scripts/redeploy-private-and-bridges.cjs +201 -0
  26. package/scripts/set-bridge-limits-mainnet.cjs +177 -0
  27. package/scripts/verify-mainnet-private-bridges.cjs +289 -0
  28. package/sonar-project.properties +11 -0
  29. package/test/messaging/PrivateMessaging.test.ts +158 -0
  30. package/test/privacyBridge/UnifiedPrivacyBridges.test.cjs +1663 -0
  31. package/test/token/PrivateERC20/PrivacyBridge.fees.test.ts +162 -239
  32. package/typechain-types/@openzeppelin/contracts/access/AccessControl.ts +324 -0
  33. package/typechain-types/@openzeppelin/contracts/access/AccessControlEnumerable.ts +361 -0
  34. package/typechain-types/@openzeppelin/contracts/access/IAccessControl.ts +292 -0
  35. package/typechain-types/@openzeppelin/contracts/access/IAccessControlEnumerable.ts +329 -0
  36. package/typechain-types/@openzeppelin/contracts/access/index.ts +4 -0
  37. package/typechain-types/@openzeppelin/contracts/index.ts +2 -0
  38. package/typechain-types/@openzeppelin/contracts/security/Pausable.ts +150 -0
  39. package/typechain-types/@openzeppelin/contracts/security/index.ts +4 -0
  40. package/typechain-types/@openzeppelin/contracts/token/ERC20/ERC20.ts +330 -0
  41. package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts +286 -0
  42. package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/index.ts +1 -0
  43. package/typechain-types/@openzeppelin/contracts/token/ERC20/index.ts +1 -0
  44. package/typechain-types/@openzeppelin/contracts/token/ERC721/ERC721.ts +420 -0
  45. package/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.ts +420 -0
  46. package/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/index.ts +4 -0
  47. package/typechain-types/@openzeppelin/contracts/token/ERC721/index.ts +3 -0
  48. package/typechain-types/contracts/disperse/coinByRatio/FixedRatioCoinDisperserLeftoverS1.ts +735 -0
  49. package/typechain-types/contracts/disperse/coinByRatio/FixedRatioCoinDisperserUnlimitedWindow.ts +734 -0
  50. package/typechain-types/contracts/disperse/coinByRatio/index.ts +2 -0
  51. package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/IOwnable.ts +95 -0
  52. package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/MintDisperser.ts +22 -0
  53. package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/index.ts +1 -0
  54. package/typechain-types/contracts/index.ts +8 -0
  55. package/typechain-types/contracts/messaging/PrivateMessaging.ts +871 -0
  56. package/typechain-types/contracts/messaging/index.ts +4 -0
  57. package/typechain-types/contracts/mocks/index.ts +4 -0
  58. package/typechain-types/contracts/mocks/messaging/PrivateMessagingHarness.ts +951 -0
  59. package/typechain-types/contracts/mocks/messaging/index.ts +4 -0
  60. package/typechain-types/contracts/mocks/oracle/CotiPriceConsumerMock.ts +163 -0
  61. package/typechain-types/contracts/mocks/oracle/index.ts +4 -0
  62. package/typechain-types/contracts/mocks/token/ERC20DecimalsMock.ts +349 -0
  63. package/typechain-types/contracts/mocks/token/ERC20Mock.ts +368 -0
  64. package/typechain-types/contracts/mocks/token/PrivateERC20/EncryptedTokenReceiverMock.ts +108 -0
  65. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock.ts +1892 -0
  66. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20AuditorSupplyMock.ts +1296 -0
  67. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20CappedMock.ts +1270 -0
  68. package/typechain-types/contracts/mocks/{utils/mpc/Bitwise128BitTestsContract.ts → token/PrivateERC20/PrivateERC20GtCallerMock.ts} +47 -67
  69. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20Mock.ts +757 -25
  70. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/IPrivateERC20TransferAndCallEncrypted.ts +102 -0
  71. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/PrivateERC20ReentrantReceiverMock.ts +154 -0
  72. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/index.ts +5 -0
  73. package/typechain-types/contracts/mocks/token/PrivateERC20/PublicReentrantTokenReceiverMock.ts +155 -0
  74. package/typechain-types/contracts/mocks/token/PrivateERC20/PublicTokenReceiverBoolMock.ts +107 -0
  75. package/typechain-types/contracts/mocks/token/PrivateERC20/PublicTokenReceiverMock.ts +100 -0
  76. package/typechain-types/contracts/mocks/token/PrivateERC20/index.ts +10 -0
  77. package/typechain-types/contracts/mocks/token/index.ts +2 -0
  78. package/typechain-types/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock.ts +6 -6
  79. package/typechain-types/contracts/node/CotiNodeRewards.ts +566 -0
  80. package/typechain-types/contracts/node/SoulboundNodeNFT.sol/IERC5192.ts +123 -0
  81. package/typechain-types/contracts/node/SoulboundNodeNFT.sol/SoulboundNodeNFT.ts +975 -0
  82. package/typechain-types/contracts/node/SoulboundNodeNFT.sol/index.ts +5 -0
  83. package/typechain-types/contracts/node/index.ts +6 -0
  84. package/typechain-types/contracts/oracle/CotiPriceConsumer.ts +256 -0
  85. package/typechain-types/contracts/oracle/ICotiPriceConsumer.ts +119 -0
  86. package/typechain-types/contracts/oracle/IStdReference.ts +136 -0
  87. package/typechain-types/contracts/oracle/index.ts +6 -0
  88. package/typechain-types/contracts/privacyBridge/PrivacyBridge.ts +1628 -0
  89. package/typechain-types/contracts/privacyBridge/PrivacyBridgeCotiNative.ts +1870 -0
  90. package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/IHasDecimals.ts +84 -0
  91. package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/PrivacyBridgeERC20.ts +1892 -0
  92. package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/index.ts +5 -0
  93. package/typechain-types/contracts/privacyBridge/PrivacyBridgeUSDCe.ts +1892 -0
  94. package/typechain-types/contracts/privacyBridge/PrivacyBridgeUSDT.ts +1892 -0
  95. package/typechain-types/contracts/privacyBridge/PrivacyBridgeWADA.ts +1892 -0
  96. package/typechain-types/contracts/privacyBridge/PrivacyBridgeWBTC.ts +1892 -0
  97. package/typechain-types/contracts/privacyBridge/PrivacyBridgeWETH.ts +1892 -0
  98. package/typechain-types/contracts/privacyBridge/PrivacyBridgegCoti.ts +1892 -0
  99. package/typechain-types/contracts/privacyBridge/index.ts +13 -0
  100. package/typechain-types/contracts/token/PrivateERC20/IPrivateERC20.ts +439 -19
  101. package/typechain-types/contracts/token/PrivateERC20/ITokenReceiver.ts +100 -0
  102. package/typechain-types/contracts/token/PrivateERC20/ITokenReceiverEncrypted.ts +99 -0
  103. package/typechain-types/contracts/token/PrivateERC20/PrivateERC20.ts +763 -15
  104. package/typechain-types/contracts/token/PrivateERC20/index.ts +4 -0
  105. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateBridgedUSDC.ts +1270 -0
  106. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateCOTI.ts +1270 -0
  107. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateCOTITreasuryGovernanceToken.ts +1270 -0
  108. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateTetherUSD.ts +1270 -0
  109. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedADA.ts +1270 -0
  110. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedBTC.ts +1270 -0
  111. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedEther.ts +1270 -0
  112. package/typechain-types/contracts/token/PrivateERC20/tokens/index.ts +10 -0
  113. package/typechain-types/factories/@openzeppelin/contracts/access/AccessControlEnumerable__factory.ts +276 -0
  114. package/typechain-types/factories/@openzeppelin/contracts/access/AccessControl__factory.ts +229 -0
  115. package/typechain-types/factories/@openzeppelin/contracts/access/IAccessControlEnumerable__factory.ts +244 -0
  116. package/typechain-types/factories/@openzeppelin/contracts/access/IAccessControl__factory.ts +197 -0
  117. package/typechain-types/factories/@openzeppelin/contracts/access/index.ts +4 -0
  118. package/typechain-types/factories/@openzeppelin/contracts/index.ts +1 -0
  119. package/typechain-types/factories/@openzeppelin/contracts/security/Pausable__factory.ts +61 -0
  120. package/typechain-types/factories/@openzeppelin/contracts/security/index.ts +4 -0
  121. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts +356 -0
  122. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts +247 -0
  123. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts +1 -0
  124. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/index.ts +1 -0
  125. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.ts +416 -0
  126. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.ts +355 -0
  127. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.ts +4 -0
  128. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/index.ts +2 -0
  129. package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperserLeftoverS1__factory.ts +791 -0
  130. package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperserUnlimitedWindow__factory.ts +711 -0
  131. package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperser__factory.ts +1 -1
  132. package/typechain-types/factories/contracts/disperse/coinByRatio/index.ts +2 -0
  133. package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/IOwnable__factory.ts +35 -0
  134. package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/MintDisperser__factory.ts +19 -1
  135. package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/index.ts +1 -0
  136. package/typechain-types/factories/contracts/disperse/disperseToken/TokenDisperser__factory.ts +1 -1
  137. package/typechain-types/factories/contracts/index.ts +4 -0
  138. package/typechain-types/factories/contracts/messaging/PrivateMessaging__factory.ts +1035 -0
  139. package/typechain-types/factories/contracts/messaging/index.ts +4 -0
  140. package/typechain-types/factories/contracts/mocks/access/DataPrivacyFramework/DataPrivacyFrameworkMock__factory.ts +1 -1
  141. package/typechain-types/factories/contracts/mocks/index.ts +2 -0
  142. package/typechain-types/factories/contracts/mocks/messaging/PrivateMessagingHarness__factory.ts +1161 -0
  143. package/typechain-types/factories/contracts/mocks/messaging/index.ts +4 -0
  144. package/typechain-types/factories/contracts/mocks/oracle/CotiPriceConsumerMock__factory.ts +159 -0
  145. package/typechain-types/factories/contracts/mocks/oracle/index.ts +4 -0
  146. package/typechain-types/factories/contracts/mocks/token/ERC20DecimalsMock__factory.ts +394 -0
  147. package/typechain-types/factories/contracts/mocks/token/ERC20Mock__factory.ts +392 -0
  148. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/EncryptedTokenReceiverMock__factory.ts +125 -0
  149. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock__factory.ts +1797 -0
  150. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20AuditorSupplyMock__factory.ts +1514 -0
  151. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20CappedMock__factory.ts +1466 -0
  152. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20GtCallerMock__factory.ts +165 -0
  153. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20Mock__factory.ts +771 -55
  154. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/IPrivateERC20TransferAndCallEncrypted__factory.ts +54 -0
  155. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/PrivateERC20ReentrantReceiverMock__factory.ts +159 -0
  156. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/index.ts +5 -0
  157. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicReentrantTokenReceiverMock__factory.ts +164 -0
  158. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicTokenReceiverBoolMock__factory.ts +130 -0
  159. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicTokenReceiverMock__factory.ts +102 -0
  160. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/index.ts +9 -0
  161. package/typechain-types/factories/contracts/mocks/token/PrivateERC721/PrivateERC721URIStorageMock__factory.ts +1 -1
  162. package/typechain-types/factories/contracts/mocks/token/index.ts +2 -0
  163. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic128TestsContract__factory.ts +1 -1
  164. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic256TestsContract__factory.ts +1 -1
  165. package/typechain-types/factories/contracts/mocks/utils/mpc/ArithmeticTestsContract__factory.ts +1 -1
  166. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise128TestsContract__factory.ts +1 -1
  167. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise256TestsContract__factory.ts +1 -1
  168. package/typechain-types/factories/contracts/mocks/utils/mpc/BitwiseTestsContract__factory.ts +1 -1
  169. package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmetic128WithOverflowBitTestsContract__factory.ts +1 -1
  170. package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmetic256WithOverflowBitTestsContract__factory.ts +1 -1
  171. package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmeticWIthOverflowBitTestsContract.sol/CheckedArithmeticWithOverflowBitTestsContract__factory.ts +1 -1
  172. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison128TestsContract__factory.ts +1 -1
  173. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison1TestsContract__factory.ts +1 -1
  174. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison256TestsContract__factory.ts +1 -1
  175. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison2TestsContract__factory.ts +1 -1
  176. package/typechain-types/factories/contracts/mocks/utils/mpc/MinMax128TestsContract__factory.ts +1 -1
  177. package/typechain-types/factories/contracts/mocks/utils/mpc/MinMax256TestsContract__factory.ts +1 -1
  178. package/typechain-types/factories/contracts/mocks/utils/mpc/MinMaxTestsContract__factory.ts +1 -1
  179. package/typechain-types/factories/contracts/mocks/utils/mpc/MinimalImplementation__factory.ts +1 -1
  180. package/typechain-types/factories/contracts/mocks/utils/mpc/MinimalProxy__factory.ts +1 -1
  181. package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous1TestsContract__factory.ts +1 -1
  182. package/typechain-types/factories/contracts/mocks/utils/mpc/MiscellaneousTestsContract__factory.ts +1 -1
  183. package/typechain-types/factories/contracts/mocks/utils/mpc/MpcOperations128TestContract__factory.ts +1 -1
  184. package/typechain-types/factories/contracts/mocks/utils/mpc/MpcOperationsTestContract__factory.ts +1 -1
  185. package/typechain-types/factories/contracts/mocks/utils/mpc/Mux128TestsContract__factory.ts +1 -1
  186. package/typechain-types/factories/contracts/mocks/utils/mpc/Mux256TestsContract__factory.ts +1 -1
  187. package/typechain-types/factories/contracts/mocks/utils/mpc/OffboardToUserKeyTestContract__factory.ts +1 -1
  188. package/typechain-types/factories/contracts/mocks/utils/mpc/OnBoard128TestsContract__factory.ts +1 -1
  189. package/typechain-types/factories/contracts/mocks/utils/mpc/OnBoard256TestsContract__factory.ts +1 -1
  190. package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyImplementationV1__factory.ts +1 -1
  191. package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyImplementationV2__factory.ts +1 -1
  192. package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyProxy__factory.ts +1 -1
  193. package/typechain-types/factories/contracts/mocks/utils/mpc/Random128TestsContract__factory.ts +1 -1
  194. package/typechain-types/factories/contracts/mocks/utils/mpc/Random256TestsContract__factory.ts +1 -1
  195. package/typechain-types/factories/contracts/mocks/utils/mpc/Shift128TestsContract__factory.ts +1 -1
  196. package/typechain-types/factories/contracts/mocks/utils/mpc/Shift256TestsContract__factory.ts +1 -1
  197. package/typechain-types/factories/contracts/mocks/utils/mpc/ShiftTestsContract__factory.ts +1 -1
  198. package/typechain-types/factories/contracts/mocks/utils/mpc/StringTestsContract__factory.ts +1 -1
  199. package/typechain-types/factories/contracts/mocks/utils/mpc/Transfer128TestsContract__factory.ts +1 -1
  200. package/typechain-types/factories/contracts/mocks/utils/mpc/Transfer256TestsContract__factory.ts +1 -1
  201. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferScalarTestsContract__factory.ts +1 -1
  202. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferTestsContract__factory.ts +1 -1
  203. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance128TestsContract__factory.ts +1 -1
  204. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance256TestsContract__factory.ts +1 -1
  205. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_16TestsContract__factory.ts +1 -1
  206. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_32TestsContract__factory.ts +1 -1
  207. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_64TestsContract__factory.ts +1 -1
  208. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_8TestsContract__factory.ts +1 -1
  209. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowanceScalarTestsContract__factory.ts +1 -1
  210. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowanceTestsContract__factory.ts +1 -1
  211. package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertext128TestsContract__factory.ts +1 -1
  212. package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertext256TestsContract__factory.ts +1 -1
  213. package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertextTestsContract__factory.ts +1 -1
  214. package/typechain-types/factories/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock__factory.ts +4 -22
  215. package/typechain-types/factories/contracts/node/CotiNodeRewards__factory.ts +549 -0
  216. package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/IERC5192__factory.ts +54 -0
  217. package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/SoulboundNodeNFT__factory.ts +947 -0
  218. package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/index.ts +5 -0
  219. package/typechain-types/factories/contracts/node/index.ts +5 -0
  220. package/typechain-types/factories/contracts/onboard/AccountOnboard__factory.ts +1 -1
  221. package/typechain-types/factories/contracts/oracle/CotiPriceConsumer__factory.ts +295 -0
  222. package/typechain-types/factories/contracts/oracle/ICotiPriceConsumer__factory.ts +73 -0
  223. package/typechain-types/factories/contracts/oracle/IStdReference__factory.ts +107 -0
  224. package/typechain-types/factories/contracts/oracle/index.ts +6 -0
  225. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeCotiNative__factory.ts +1676 -0
  226. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/IHasDecimals__factory.ts +38 -0
  227. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/PrivacyBridgeERC20__factory.ts +1678 -0
  228. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/index.ts +5 -0
  229. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeUSDCe__factory.ts +1782 -0
  230. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeUSDT__factory.ts +1782 -0
  231. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWADA__factory.ts +1782 -0
  232. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWBTC__factory.ts +1782 -0
  233. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWETH__factory.ts +1782 -0
  234. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridge__factory.ts +1367 -0
  235. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgegCoti__factory.ts +1782 -0
  236. package/typechain-types/factories/contracts/privacyBridge/index.ts +12 -0
  237. package/typechain-types/factories/contracts/token/PrivateERC20/IPrivateERC20__factory.ts +481 -35
  238. package/typechain-types/factories/contracts/token/PrivateERC20/ITokenReceiverEncrypted__factory.ts +53 -0
  239. package/typechain-types/factories/contracts/token/PrivateERC20/ITokenReceiver__factory.ts +54 -0
  240. package/typechain-types/factories/contracts/token/PrivateERC20/PrivateERC20__factory.ts +793 -59
  241. package/typechain-types/factories/contracts/token/PrivateERC20/index.ts +3 -0
  242. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateBridgedUSDC__factory.ts +1445 -0
  243. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateCOTITreasuryGovernanceToken__factory.ts +1451 -0
  244. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateCOTI__factory.ts +1442 -0
  245. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateTetherUSD__factory.ts +1445 -0
  246. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedADA__factory.ts +1445 -0
  247. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedBTC__factory.ts +1445 -0
  248. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedEther__factory.ts +1451 -0
  249. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/index.ts +10 -0
  250. package/typechain-types/factories/contracts/utils/mpc/MpcCore__factory.ts +1 -1
  251. package/typechain-types/hardhat.d.ts +953 -17
  252. package/typechain-types/index.ts +104 -0
  253. package/typechain-types/contracts/mocks/utils/mpc/Arithmetic128BitTestsContract.ts +0 -341
  254. package/typechain-types/contracts/mocks/utils/mpc/Arithmetic256BitTestsContract.ts +0 -347
  255. package/typechain-types/contracts/mocks/utils/mpc/Bitwise256BitTestsContract.ts +0 -186
  256. package/typechain-types/contracts/mocks/utils/mpc/Comparison128BitTestsContract.ts +0 -260
  257. package/typechain-types/contracts/mocks/utils/mpc/Comparison256BitTestsContract.ts +0 -260
  258. package/typechain-types/contracts/mocks/utils/mpc/Miscellaneous128BitTestsContract.ts +0 -302
  259. package/typechain-types/contracts/mocks/utils/mpc/Miscellaneous256BitTestsContract.ts +0 -322
  260. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic128BitTestsContract__factory.ts +0 -349
  261. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic256BitTestsContract__factory.ts +0 -364
  262. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise128BitTestsContract__factory.ts +0 -182
  263. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise256BitTestsContract__factory.ts +0 -182
  264. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison128BitTestsContract__factory.ts +0 -255
  265. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison256BitTestsContract__factory.ts +0 -255
  266. package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous128BitTestsContract__factory.ts +0 -332
  267. package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous256BitTestsContract__factory.ts +0 -380
@@ -0,0 +1,947 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ Contract,
6
+ ContractFactory,
7
+ ContractTransactionResponse,
8
+ Interface,
9
+ } from "ethers";
10
+ import type {
11
+ Signer,
12
+ AddressLike,
13
+ ContractDeployTransaction,
14
+ ContractRunner,
15
+ } from "ethers";
16
+ import type { NonPayableOverrides } from "../../../../common";
17
+ import type {
18
+ SoulboundNodeNFT,
19
+ SoulboundNodeNFTInterface,
20
+ } from "../../../../contracts/node/SoulboundNodeNFT.sol/SoulboundNodeNFT";
21
+
22
+ const _abi = [
23
+ {
24
+ inputs: [
25
+ {
26
+ internalType: "string",
27
+ name: "name_",
28
+ type: "string",
29
+ },
30
+ {
31
+ internalType: "string",
32
+ name: "symbol_",
33
+ type: "string",
34
+ },
35
+ {
36
+ internalType: "address",
37
+ name: "initialOwner",
38
+ type: "address",
39
+ },
40
+ ],
41
+ stateMutability: "nonpayable",
42
+ type: "constructor",
43
+ },
44
+ {
45
+ inputs: [],
46
+ name: "AlreadyOwnsNodeNFT",
47
+ type: "error",
48
+ },
49
+ {
50
+ inputs: [],
51
+ name: "InvalidRecipient",
52
+ type: "error",
53
+ },
54
+ {
55
+ inputs: [],
56
+ name: "MintPaused",
57
+ type: "error",
58
+ },
59
+ {
60
+ inputs: [],
61
+ name: "NodeNameRequired",
62
+ type: "error",
63
+ },
64
+ {
65
+ inputs: [],
66
+ name: "NodeNameTooLong",
67
+ type: "error",
68
+ },
69
+ {
70
+ inputs: [],
71
+ name: "NonexistentToken",
72
+ type: "error",
73
+ },
74
+ {
75
+ inputs: [],
76
+ name: "NotAuthorized",
77
+ type: "error",
78
+ },
79
+ {
80
+ inputs: [],
81
+ name: "SocialURLTooLong",
82
+ type: "error",
83
+ },
84
+ {
85
+ inputs: [],
86
+ name: "SoulboundOperation",
87
+ type: "error",
88
+ },
89
+ {
90
+ anonymous: false,
91
+ inputs: [
92
+ {
93
+ indexed: true,
94
+ internalType: "address",
95
+ name: "owner",
96
+ type: "address",
97
+ },
98
+ {
99
+ indexed: true,
100
+ internalType: "address",
101
+ name: "approved",
102
+ type: "address",
103
+ },
104
+ {
105
+ indexed: true,
106
+ internalType: "uint256",
107
+ name: "tokenId",
108
+ type: "uint256",
109
+ },
110
+ ],
111
+ name: "Approval",
112
+ type: "event",
113
+ },
114
+ {
115
+ anonymous: false,
116
+ inputs: [
117
+ {
118
+ indexed: true,
119
+ internalType: "address",
120
+ name: "owner",
121
+ type: "address",
122
+ },
123
+ {
124
+ indexed: true,
125
+ internalType: "address",
126
+ name: "operator",
127
+ type: "address",
128
+ },
129
+ {
130
+ indexed: false,
131
+ internalType: "bool",
132
+ name: "approved",
133
+ type: "bool",
134
+ },
135
+ ],
136
+ name: "ApprovalForAll",
137
+ type: "event",
138
+ },
139
+ {
140
+ anonymous: false,
141
+ inputs: [
142
+ {
143
+ indexed: true,
144
+ internalType: "uint256",
145
+ name: "tokenId",
146
+ type: "uint256",
147
+ },
148
+ {
149
+ indexed: false,
150
+ internalType: "string",
151
+ name: "newImageURI",
152
+ type: "string",
153
+ },
154
+ ],
155
+ name: "ImageURIUpdated",
156
+ type: "event",
157
+ },
158
+ {
159
+ anonymous: false,
160
+ inputs: [
161
+ {
162
+ indexed: false,
163
+ internalType: "uint256",
164
+ name: "tokenId",
165
+ type: "uint256",
166
+ },
167
+ ],
168
+ name: "Locked",
169
+ type: "event",
170
+ },
171
+ {
172
+ anonymous: false,
173
+ inputs: [
174
+ {
175
+ indexed: false,
176
+ internalType: "bool",
177
+ name: "paused",
178
+ type: "bool",
179
+ },
180
+ ],
181
+ name: "MintPausedSet",
182
+ type: "event",
183
+ },
184
+ {
185
+ anonymous: false,
186
+ inputs: [
187
+ {
188
+ indexed: true,
189
+ internalType: "uint256",
190
+ name: "tokenId",
191
+ type: "uint256",
192
+ },
193
+ {
194
+ indexed: false,
195
+ internalType: "bool",
196
+ name: "isHot",
197
+ type: "bool",
198
+ },
199
+ ],
200
+ name: "NodeHotStatusUpdated",
201
+ type: "event",
202
+ },
203
+ {
204
+ anonymous: false,
205
+ inputs: [
206
+ {
207
+ indexed: true,
208
+ internalType: "address",
209
+ name: "to",
210
+ type: "address",
211
+ },
212
+ {
213
+ indexed: true,
214
+ internalType: "uint256",
215
+ name: "tokenId",
216
+ type: "uint256",
217
+ },
218
+ {
219
+ indexed: false,
220
+ internalType: "string",
221
+ name: "name",
222
+ type: "string",
223
+ },
224
+ {
225
+ indexed: false,
226
+ internalType: "string",
227
+ name: "image",
228
+ type: "string",
229
+ },
230
+ {
231
+ indexed: false,
232
+ internalType: "string",
233
+ name: "socialURL",
234
+ type: "string",
235
+ },
236
+ ],
237
+ name: "NodeMinted",
238
+ type: "event",
239
+ },
240
+ {
241
+ anonymous: false,
242
+ inputs: [
243
+ {
244
+ indexed: true,
245
+ internalType: "uint256",
246
+ name: "tokenId",
247
+ type: "uint256",
248
+ },
249
+ {
250
+ indexed: false,
251
+ internalType: "string",
252
+ name: "newNodeName",
253
+ type: "string",
254
+ },
255
+ ],
256
+ name: "NodeNameUpdated",
257
+ type: "event",
258
+ },
259
+ {
260
+ anonymous: false,
261
+ inputs: [
262
+ {
263
+ indexed: true,
264
+ internalType: "address",
265
+ name: "previousOwner",
266
+ type: "address",
267
+ },
268
+ {
269
+ indexed: true,
270
+ internalType: "address",
271
+ name: "newOwner",
272
+ type: "address",
273
+ },
274
+ ],
275
+ name: "OwnershipTransferred",
276
+ type: "event",
277
+ },
278
+ {
279
+ anonymous: false,
280
+ inputs: [
281
+ {
282
+ indexed: true,
283
+ internalType: "uint256",
284
+ name: "tokenId",
285
+ type: "uint256",
286
+ },
287
+ {
288
+ indexed: false,
289
+ internalType: "string",
290
+ name: "newSocialURL",
291
+ type: "string",
292
+ },
293
+ ],
294
+ name: "SocialURLUpdated",
295
+ type: "event",
296
+ },
297
+ {
298
+ anonymous: false,
299
+ inputs: [
300
+ {
301
+ indexed: true,
302
+ internalType: "address",
303
+ name: "from",
304
+ type: "address",
305
+ },
306
+ {
307
+ indexed: true,
308
+ internalType: "address",
309
+ name: "to",
310
+ type: "address",
311
+ },
312
+ {
313
+ indexed: true,
314
+ internalType: "uint256",
315
+ name: "tokenId",
316
+ type: "uint256",
317
+ },
318
+ ],
319
+ name: "Transfer",
320
+ type: "event",
321
+ },
322
+ {
323
+ inputs: [],
324
+ name: "MAX_TEXT_BYTES",
325
+ outputs: [
326
+ {
327
+ internalType: "uint256",
328
+ name: "",
329
+ type: "uint256",
330
+ },
331
+ ],
332
+ stateMutability: "view",
333
+ type: "function",
334
+ },
335
+ {
336
+ inputs: [
337
+ {
338
+ internalType: "address",
339
+ name: "",
340
+ type: "address",
341
+ },
342
+ {
343
+ internalType: "uint256",
344
+ name: "",
345
+ type: "uint256",
346
+ },
347
+ ],
348
+ name: "approve",
349
+ outputs: [],
350
+ stateMutability: "pure",
351
+ type: "function",
352
+ },
353
+ {
354
+ inputs: [
355
+ {
356
+ internalType: "address",
357
+ name: "owner",
358
+ type: "address",
359
+ },
360
+ ],
361
+ name: "balanceOf",
362
+ outputs: [
363
+ {
364
+ internalType: "uint256",
365
+ name: "",
366
+ type: "uint256",
367
+ },
368
+ ],
369
+ stateMutability: "view",
370
+ type: "function",
371
+ },
372
+ {
373
+ inputs: [
374
+ {
375
+ internalType: "uint256",
376
+ name: "tokenId",
377
+ type: "uint256",
378
+ },
379
+ ],
380
+ name: "burn",
381
+ outputs: [],
382
+ stateMutability: "nonpayable",
383
+ type: "function",
384
+ },
385
+ {
386
+ inputs: [
387
+ {
388
+ internalType: "uint256",
389
+ name: "tokenId",
390
+ type: "uint256",
391
+ },
392
+ ],
393
+ name: "getApproved",
394
+ outputs: [
395
+ {
396
+ internalType: "address",
397
+ name: "",
398
+ type: "address",
399
+ },
400
+ ],
401
+ stateMutability: "view",
402
+ type: "function",
403
+ },
404
+ {
405
+ inputs: [
406
+ {
407
+ internalType: "address",
408
+ name: "owner",
409
+ type: "address",
410
+ },
411
+ {
412
+ internalType: "address",
413
+ name: "operator",
414
+ type: "address",
415
+ },
416
+ ],
417
+ name: "isApprovedForAll",
418
+ outputs: [
419
+ {
420
+ internalType: "bool",
421
+ name: "",
422
+ type: "bool",
423
+ },
424
+ ],
425
+ stateMutability: "view",
426
+ type: "function",
427
+ },
428
+ {
429
+ inputs: [
430
+ {
431
+ internalType: "uint256",
432
+ name: "tokenId",
433
+ type: "uint256",
434
+ },
435
+ ],
436
+ name: "isHotNode",
437
+ outputs: [
438
+ {
439
+ internalType: "bool",
440
+ name: "isHot",
441
+ type: "bool",
442
+ },
443
+ ],
444
+ stateMutability: "view",
445
+ type: "function",
446
+ },
447
+ {
448
+ inputs: [
449
+ {
450
+ internalType: "uint256",
451
+ name: "tokenId",
452
+ type: "uint256",
453
+ },
454
+ ],
455
+ name: "locked",
456
+ outputs: [
457
+ {
458
+ internalType: "bool",
459
+ name: "",
460
+ type: "bool",
461
+ },
462
+ ],
463
+ stateMutability: "view",
464
+ type: "function",
465
+ },
466
+ {
467
+ inputs: [
468
+ {
469
+ internalType: "address",
470
+ name: "to",
471
+ type: "address",
472
+ },
473
+ {
474
+ internalType: "string",
475
+ name: "name",
476
+ type: "string",
477
+ },
478
+ {
479
+ internalType: "string",
480
+ name: "image",
481
+ type: "string",
482
+ },
483
+ {
484
+ internalType: "string",
485
+ name: "socialURL",
486
+ type: "string",
487
+ },
488
+ ],
489
+ name: "mintNode",
490
+ outputs: [
491
+ {
492
+ internalType: "uint256",
493
+ name: "tokenId",
494
+ type: "uint256",
495
+ },
496
+ ],
497
+ stateMutability: "nonpayable",
498
+ type: "function",
499
+ },
500
+ {
501
+ inputs: [],
502
+ name: "mintPaused",
503
+ outputs: [
504
+ {
505
+ internalType: "bool",
506
+ name: "",
507
+ type: "bool",
508
+ },
509
+ ],
510
+ stateMutability: "view",
511
+ type: "function",
512
+ },
513
+ {
514
+ inputs: [],
515
+ name: "name",
516
+ outputs: [
517
+ {
518
+ internalType: "string",
519
+ name: "",
520
+ type: "string",
521
+ },
522
+ ],
523
+ stateMutability: "view",
524
+ type: "function",
525
+ },
526
+ {
527
+ inputs: [],
528
+ name: "nextTokenId",
529
+ outputs: [
530
+ {
531
+ internalType: "uint256",
532
+ name: "",
533
+ type: "uint256",
534
+ },
535
+ ],
536
+ stateMutability: "view",
537
+ type: "function",
538
+ },
539
+ {
540
+ inputs: [
541
+ {
542
+ internalType: "uint256",
543
+ name: "tokenId",
544
+ type: "uint256",
545
+ },
546
+ ],
547
+ name: "nodeData",
548
+ outputs: [
549
+ {
550
+ components: [
551
+ {
552
+ internalType: "string",
553
+ name: "name",
554
+ type: "string",
555
+ },
556
+ {
557
+ internalType: "string",
558
+ name: "image",
559
+ type: "string",
560
+ },
561
+ {
562
+ internalType: "string",
563
+ name: "socialURL",
564
+ type: "string",
565
+ },
566
+ {
567
+ internalType: "bool",
568
+ name: "isHot",
569
+ type: "bool",
570
+ },
571
+ ],
572
+ internalType: "struct SoulboundNodeNFT.NodeData",
573
+ name: "",
574
+ type: "tuple",
575
+ },
576
+ ],
577
+ stateMutability: "view",
578
+ type: "function",
579
+ },
580
+ {
581
+ inputs: [],
582
+ name: "owner",
583
+ outputs: [
584
+ {
585
+ internalType: "address",
586
+ name: "",
587
+ type: "address",
588
+ },
589
+ ],
590
+ stateMutability: "view",
591
+ type: "function",
592
+ },
593
+ {
594
+ inputs: [
595
+ {
596
+ internalType: "uint256",
597
+ name: "tokenId",
598
+ type: "uint256",
599
+ },
600
+ ],
601
+ name: "ownerOf",
602
+ outputs: [
603
+ {
604
+ internalType: "address",
605
+ name: "",
606
+ type: "address",
607
+ },
608
+ ],
609
+ stateMutability: "view",
610
+ type: "function",
611
+ },
612
+ {
613
+ inputs: [],
614
+ name: "pauseMint",
615
+ outputs: [],
616
+ stateMutability: "nonpayable",
617
+ type: "function",
618
+ },
619
+ {
620
+ inputs: [],
621
+ name: "renounceOwnership",
622
+ outputs: [],
623
+ stateMutability: "nonpayable",
624
+ type: "function",
625
+ },
626
+ {
627
+ inputs: [
628
+ {
629
+ internalType: "address",
630
+ name: "from",
631
+ type: "address",
632
+ },
633
+ {
634
+ internalType: "address",
635
+ name: "to",
636
+ type: "address",
637
+ },
638
+ {
639
+ internalType: "uint256",
640
+ name: "tokenId",
641
+ type: "uint256",
642
+ },
643
+ ],
644
+ name: "safeTransferFrom",
645
+ outputs: [],
646
+ stateMutability: "nonpayable",
647
+ type: "function",
648
+ },
649
+ {
650
+ inputs: [
651
+ {
652
+ internalType: "address",
653
+ name: "from",
654
+ type: "address",
655
+ },
656
+ {
657
+ internalType: "address",
658
+ name: "to",
659
+ type: "address",
660
+ },
661
+ {
662
+ internalType: "uint256",
663
+ name: "tokenId",
664
+ type: "uint256",
665
+ },
666
+ {
667
+ internalType: "bytes",
668
+ name: "data",
669
+ type: "bytes",
670
+ },
671
+ ],
672
+ name: "safeTransferFrom",
673
+ outputs: [],
674
+ stateMutability: "nonpayable",
675
+ type: "function",
676
+ },
677
+ {
678
+ inputs: [
679
+ {
680
+ internalType: "address",
681
+ name: "",
682
+ type: "address",
683
+ },
684
+ {
685
+ internalType: "bool",
686
+ name: "",
687
+ type: "bool",
688
+ },
689
+ ],
690
+ name: "setApprovalForAll",
691
+ outputs: [],
692
+ stateMutability: "pure",
693
+ type: "function",
694
+ },
695
+ {
696
+ inputs: [
697
+ {
698
+ internalType: "uint256",
699
+ name: "tokenId",
700
+ type: "uint256",
701
+ },
702
+ {
703
+ internalType: "string",
704
+ name: "newImageURI",
705
+ type: "string",
706
+ },
707
+ ],
708
+ name: "setImageURI",
709
+ outputs: [],
710
+ stateMutability: "nonpayable",
711
+ type: "function",
712
+ },
713
+ {
714
+ inputs: [
715
+ {
716
+ internalType: "uint256",
717
+ name: "tokenId",
718
+ type: "uint256",
719
+ },
720
+ {
721
+ internalType: "bool",
722
+ name: "isHot",
723
+ type: "bool",
724
+ },
725
+ ],
726
+ name: "setNodeHotStatus",
727
+ outputs: [],
728
+ stateMutability: "nonpayable",
729
+ type: "function",
730
+ },
731
+ {
732
+ inputs: [
733
+ {
734
+ internalType: "uint256",
735
+ name: "tokenId",
736
+ type: "uint256",
737
+ },
738
+ {
739
+ internalType: "string",
740
+ name: "newNodeName",
741
+ type: "string",
742
+ },
743
+ ],
744
+ name: "setNodeName",
745
+ outputs: [],
746
+ stateMutability: "nonpayable",
747
+ type: "function",
748
+ },
749
+ {
750
+ inputs: [
751
+ {
752
+ internalType: "uint256",
753
+ name: "tokenId",
754
+ type: "uint256",
755
+ },
756
+ {
757
+ internalType: "string",
758
+ name: "newSocialURL",
759
+ type: "string",
760
+ },
761
+ ],
762
+ name: "setSocialURL",
763
+ outputs: [],
764
+ stateMutability: "nonpayable",
765
+ type: "function",
766
+ },
767
+ {
768
+ inputs: [
769
+ {
770
+ internalType: "bytes4",
771
+ name: "interfaceId",
772
+ type: "bytes4",
773
+ },
774
+ ],
775
+ name: "supportsInterface",
776
+ outputs: [
777
+ {
778
+ internalType: "bool",
779
+ name: "",
780
+ type: "bool",
781
+ },
782
+ ],
783
+ stateMutability: "view",
784
+ type: "function",
785
+ },
786
+ {
787
+ inputs: [],
788
+ name: "symbol",
789
+ outputs: [
790
+ {
791
+ internalType: "string",
792
+ name: "",
793
+ type: "string",
794
+ },
795
+ ],
796
+ stateMutability: "view",
797
+ type: "function",
798
+ },
799
+ {
800
+ inputs: [
801
+ {
802
+ internalType: "address",
803
+ name: "owner",
804
+ type: "address",
805
+ },
806
+ ],
807
+ name: "tokenOfOwner",
808
+ outputs: [
809
+ {
810
+ internalType: "uint256",
811
+ name: "",
812
+ type: "uint256",
813
+ },
814
+ ],
815
+ stateMutability: "view",
816
+ type: "function",
817
+ },
818
+ {
819
+ inputs: [
820
+ {
821
+ internalType: "uint256",
822
+ name: "tokenId",
823
+ type: "uint256",
824
+ },
825
+ ],
826
+ name: "tokenURI",
827
+ outputs: [
828
+ {
829
+ internalType: "string",
830
+ name: "",
831
+ type: "string",
832
+ },
833
+ ],
834
+ stateMutability: "view",
835
+ type: "function",
836
+ },
837
+ {
838
+ inputs: [
839
+ {
840
+ internalType: "address",
841
+ name: "",
842
+ type: "address",
843
+ },
844
+ {
845
+ internalType: "address",
846
+ name: "",
847
+ type: "address",
848
+ },
849
+ {
850
+ internalType: "uint256",
851
+ name: "",
852
+ type: "uint256",
853
+ },
854
+ ],
855
+ name: "transferFrom",
856
+ outputs: [],
857
+ stateMutability: "pure",
858
+ type: "function",
859
+ },
860
+ {
861
+ inputs: [
862
+ {
863
+ internalType: "address",
864
+ name: "newOwner",
865
+ type: "address",
866
+ },
867
+ ],
868
+ name: "transferOwnership",
869
+ outputs: [],
870
+ stateMutability: "nonpayable",
871
+ type: "function",
872
+ },
873
+ {
874
+ inputs: [],
875
+ name: "unpauseMint",
876
+ outputs: [],
877
+ stateMutability: "nonpayable",
878
+ type: "function",
879
+ },
880
+ ] as const;
881
+
882
+ const _bytecode =
883
+ "0x608060405234620003585762003276803803806200001d816200035d565b928339810190606081830312620003585780516001600160401b03908181116200035857836200004f91840162000383565b906020938484015182811162000358576040916200006f91860162000383565b930151926001600160a01b0384168403620003585782519082821162000342576000958654926001958685811c9516801562000337575b8386101462000323578190601f95868111620002d0575b5083908683116001146200026c578a9262000260575b5050600019600383901b1c191690861b1787555b81519384116200024c5784548581811c9116801562000241575b828210146200022d57838111620001e5575b50809284116001146200017a575062000154959190836200016e575b5050600019600383901b1c191690821b1790555b6200014e33620003f5565b620003f5565b60ff1960085416600855604051612e3790816200043f8239f35b0151905038806200012f565b8487528087209396601f198816915b828210620001cd575050918493918762000154989410620001b3575b505050811b01905562000143565b015160001960f88460031b161c19169055388080620001a5565b80878697829497870151815501960194019062000189565b8588528188208480870160051c82019284881062000223575b0160051c019086905b8281106200021757505062000113565b89815501869062000207565b92508192620001fe565b634e487b7160e01b88526022600452602488fd5b90607f169062000101565b634e487b7160e01b87526041600452602487fd5b015190503880620000d3565b8a8052848b208994509190601f1984168c5b87828210620002b957505084116200029f575b505050811b018755620000e7565b015160001960f88460031b161c1916905538808062000291565b8385015186558c979095019493840193016200027e565b909150898052838a208680850160051c82019286861062000319575b918a91869594930160051c01915b8281106200030a575050620000bd565b8c81558594508a9101620002fa565b92508192620002ec565b634e487b7160e01b89526022600452602489fd5b94607f1694620000a6565b634e487b7160e01b600052604160045260246000fd5b600080fd5b6040519190601f01601f191682016001600160401b038111838210176200034257604052565b919080601f84011215620003585782516001600160401b0381116200034257602090620003b9601f8201601f191683016200035d565b92818452828287010111620003585760005b818110620003e157508260009394955001015290565b8581018301518482018401528201620003cb565b600680546001600160a01b039283166001600160a01b0319821681179092559091167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a356fe608080604052600436101561001357600080fd5b60003560e01c90816301ffc9a714611ccc57508063029624e014611b4657806306fdde0314611aa3578063081812fc14611a85578063095ea7b314611a6c5780630c705a71146119595780630effdd261461193d5780631a8bd2da146118ed57806323b872dd146118b2578063294cdf0d1461188f57806342842e0e1461186757806342966c681461174e5780636352211e1461171257806370a08231146116e7578063715018a61461166757806375794a3c146116495780637befb46a146115eb5780637e4831d3146115c85780638ac2285114610f3c5780638da5cb5b14610f0857806395d89b4114610e29578063a22cb46514610ddc578063b45a3c0e14610d94578063b88d4fde14610d32578063c87b56dd146107ea578063c90c2b6a14610630578063cd85cdb5146105dd578063d4115c6214610537578063e10f716e146102f4578063e985e9c5146102905763f2fde38b1461017457600080fd5b3461028b57602060031936011261028b5761018d611e78565b610195611fbd565b73ffffffffffffffffffffffffffffffffffffffff80911690811561020757600654827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600655167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3005b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152fd5b600080fd5b3461028b57604060031936011261028b576102a9611e78565b6102b1611e9b565b9073ffffffffffffffffffffffffffffffffffffffff809116600052600560205260406000209116600052602052602060ff604060002054166040519015158152f35b3461028b5761030236611dfc565b90826000526020906002825273ffffffffffffffffffffffffffffffffffffffff8060406000205416801561050d5733141590816104fe575b506104d457609683116104aa578360005260098252600260406000200167ffffffffffffffff841161047b5761037b846103758354612184565b83612926565b6000601f85116001146103ef57916103df91857f24efcfc6c05c04ced67b029d02f47ae9ef84572739f378645eb0f0d937ee40099695946000916103e4575b508560011b906000198760031b1c19161790555b60405193838594855284019161296b565b0390a2005b9050820135886103ba565b601f1985169082600052846000209160005b8181106104645750916103df9391877f24efcfc6c05c04ced67b029d02f47ae9ef84572739f378645eb0f0d937ee4009989796941061044a575b5050600185811b0190556103ce565b60001960f88860031b161c1990840135169055878061043b565b919286600181928689013581550194019201610401565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60046040517f2200b950000000000000000000000000000000000000000000000000000000008152fd5b60046040517fea8e4eb5000000000000000000000000000000000000000000000000000000008152fd5b9050600654163314158561033b565b60046040517fb1d04f08000000000000000000000000000000000000000000000000000000008152fd5b3461028b57604060031936011261028b57600435610553611f00565b81600052600260205273ffffffffffffffffffffffffffffffffffffffff80604060002054161561050d576006541633036104d45760207f109da4569850cb53ed86002a21b218dd5ffa112f38ad97e67df3ae1b561415899183600052600982526105d28160036040600020019060ff60ff1983541691151516179055565b6040519015158152a2005b3461028b57600060031936011261028b576105f6611fbd565b600160ff1960085416176008557f0fb79081612032f5ce63340f421121d9f8b8ea04158f08b2dfafacb3393caf98602060405160018152a1005b3461028b5761063e36611dfc565b90826000526020906002825273ffffffffffffffffffffffffffffffffffffffff8060406000205416801561050d5733141590816107db575b506104d45782156107b15760968311610787578360005260098252604060002067ffffffffffffffff841161047b576106b4846103758354612184565b6000601f851160011461071657916103df91857f7635dbd31a3067e2114f6ca6858e552111ede58d778770c80b3b62db5f855fc49695946000916103e457508560011b906000198760031b1c191617905560405193838594855284019161296b565b601f1985169082600052846000209160005b8181106107705750916103df9391877f7635dbd31a3067e2114f6ca6858e552111ede58d778770c80b3b62db5f855fc4989796941061044a575050600185811b0190556103ce565b919286600181928689013581550194019201610728565b60046040517fc8aa0325000000000000000000000000000000000000000000000000000000008152fd5b60046040517f1f32e847000000000000000000000000000000000000000000000000000000008152fd5b90506006541633141585610677565b3461028b5760208060031936011261028b57600435806000526002825273ffffffffffffffffffffffffffffffffffffffff604060002054161561050d57806000526009825260406000206040519061084282611f0f565b61084b816121d7565b82526001916108976108906108618585016121d7565b9287810193845260ff6003610878600288016121d7565b96604084019788520154161515606082015251612cbe565b9251612cbe565b906109be606e6040518094898201967f5b7b2274726169745f74797065223a224e6f6465206e616d65222c2276616c7588527f65223a22000000000000000000000000000000000000000000000000000000006040840152610902815180928d604487019101611e30565b82017f227d00000000000000000000000000000000000000000000000000000000000060448201527f2c7b2274726169745f74797065223a22536f6369616c2055524c222c2276616c60468201527f7565223a220000000000000000000000000000000000000000000000000000006066820152610989825180938d606b85019101611e30565b017f227d5d0000000000000000000000000000000000000000000000000000000000606b82015203604e810185520183611f47565b518051610cab57506040516109d281611f2b565b60008152925b8485916000967a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000009081811015610c9d575b5050876d04ee2d6d415b85acef810000000080851015610c8f575b5050662386f26fc1000080841015610c80575b506305f5e10080841015610c71575b5061271080841015610c62575b506064831015610c52575b600a80931015610c49575b90816021610a73828a01612ab2565b98890101905b610c06575b88610b9c610b4e610b9760628c8c8c8c6040519687947f7b226e616d65223a224e6f6465202300000000000000000000000000000000008b870152610acc815180928d602f8a019101611e30565b8501917f222c226465736372697074696f6e223a22536f756c626f756e64204e6f646520602f8401527f4e4654222c000000000000000000000000000000000000000000000000000000604f8401527f2261747472696275746573223a0000000000000000000000000000000000000060548401525180936061840190611e30565b01610b62825180938a606185019101611e30565b017f7d000000000000000000000000000000000000000000000000000000000000006061820152036042810184520182611f47565b612ae3565b90610bee603d60405180947f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c00000085830152610bde81518092878686019101611e30565b810103601d810185520183611f47565b610c02604051928284938452830190611e53565b0390f35b600019849101917f30313233343536373839616263646566000000000000000000000000000000008282061a835304918215610c4457919082610a79565b610a7e565b80960195610a64565b9591606460029104920195610a59565b60049197930492019588610a4e565b60089197930492019588610a41565b60109197930492019588610a32565b970196909204918789610a1f565b604098500492508880610a04565b610cb490612cbe565b610d2c602b60405180937f2c22696d616765223a22000000000000000000000000000000000000000000008a830152610cf6815180928c602a86019101611e30565b81017f2200000000000000000000000000000000000000000000000000000000000000602a82015203600b810184520182611f47565b926109d8565b3461028b57608060031936011261028b57610d4b611e78565b610d53611e9b565b6064359167ffffffffffffffff831161028b573660238401121561028b57610d88610d92933690602481600401359101611f86565b91604435916122da565b005b3461028b57602060031936011261028b57600435600052600260205273ffffffffffffffffffffffffffffffffffffffff604060002054161561050d57602060405160018152f35b3461028b57604060031936011261028b57610df5611e78565b50610dfe611f00565b5060046040517f88664580000000000000000000000000000000000000000000000000000000008152fd5b3461028b57600060031936011261028b5760405160006001805490610e4d82612184565b80855291818116908115610ee15750600114610e88575b610c0284610e7481860382611f47565b604051918291602083526020830190611e53565b600081815292507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b828410610ec9575050508101602001610e7482610e64565b80546020858701810191909152909301928101610eb1565b60ff191660208087019190915292151560051b85019092019250610e749150839050610e64565b3461028b57600060031936011261028b57602073ffffffffffffffffffffffffffffffffffffffff60065416604051908152f35b3461028b57608060031936011261028b57610f55611e78565b60243567ffffffffffffffff811161028b57610f75903690600401611dce565b60449291923567ffffffffffffffff811161028b57610f98903690600401611dce565b92909360643567ffffffffffffffff811161028b57610fbb903690600401611dce565b939092610fc6611fbd565b60ff6008541661159e5773ffffffffffffffffffffffffffffffffffffffff81161561157457610ff58161203c565b61154a5781156107b1576096821161078757609685116104aa5761101a6007546128d1565b948560075561115c61115760405161103181611f2b565b6000815261106b6110658a600052600260205273ffffffffffffffffffffffffffffffffffffffff60406000205416151590565b1561298c565b61109b6110658a600052600260205273ffffffffffffffffffffffffffffffffffffffff60406000205416151590565b73ffffffffffffffffffffffffffffffffffffffff85166000526003602052604060002060018154019055886000526002602052604060002073ffffffffffffffffffffffffffffffffffffffff86167fffffffffffffffffffffffff00000000000000000000000000000000000000008254161790558873ffffffffffffffffffffffffffffffffffffffff861660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a48885612643565b61252c565b6040519761116989611f0f565b611174368587611f86565b8952611181368983611f86565b60208a0152611191368388611f86565b60408a0152600160608a0152866000526009602052604060002097895180519067ffffffffffffffff821161047b5781906111d7828d6111d18154612184565b90612926565b602090601f83116001146114de576000926114d3575b50506000198260011b9260031b1c19161789555b60208a015180519067ffffffffffffffff821161047b578190611234828d600161122d81830154612184565b9101612926565b602090601f831160011461146157600092611456575b50506000198260011b9260031b1c19161760018a01555b60408a01519889519a67ffffffffffffffff8c1161047b578b61129660209d61128d6002860154612184565b60028601612926565b8c601f821160011461139d579361132973ffffffffffffffffffffffffffffffffffffffff9460038e9f61137796867fae4dc58d8c9eac6586264077d4364d4c70cd9fac52f5fe1762b8836c7de9e1b49f9e9d9b976113879d9b606094600092611392575b50506000198260011b92861b1c19161760028501555b0151151591019060ff60ff1983541691151516179055565b7f032bc66be43dbccb7487781d168eb7bda224628a3b2c3388bdf69b532a3a16118e8d604051908152a161136a604051998a9960608b5260608b019161296b565b918883038f8a015261296b565b928584036040870152169661296b565b0390a3604051908152f35b0151905038806112fb565b600284016000528d6000209c60005b601f198416811061143f575073ffffffffffffffffffffffffffffffffffffffff9460038e9f6113779660017fae4dc58d8c9eac6586264077d4364d4c70cd9fac52f5fe1762b8836c7de9e1b49f9e9d9b976060936113879e9c986113299883601f19811610611427575b505050811b016002850155611311565b015160001960f884891b161c19169055388080611417565b828201518f556001909e019d918f01918f016113ac565b015190508c8061124a565b925060018c016000526020600020906000935b601f19841685106114b8576001945083601f1981161061149f575b505050811b0160018a0155611261565b015160001960f88460031b161c191690558c808061148f565b81810151835560209485019460019093019290910190611474565b015190508c806111ed565b92508b6000526020600020906000935b601f198416851061152f576001945083601f19811610611516575b505050811b018955611201565b015160001960f88460031b161c191690558c8080611509565b818101518355602094850194600190930192909101906114ee565b60046040517f17d9104b000000000000000000000000000000000000000000000000000000008152fd5b60046040517f9c8d2cd2000000000000000000000000000000000000000000000000000000008152fd5b60046040517fd7d248ba000000000000000000000000000000000000000000000000000000008152fd5b3461028b57600060031936011261028b57602060ff600854166040519015158152f35b3461028b57602060031936011261028b5760043580600052600260205273ffffffffffffffffffffffffffffffffffffffff604060002054161561050d576000526009602052602060ff600360406000200154166040519015158152f35b3461028b57600060031936011261028b576020600754604051908152f35b3461028b57600060031936011261028b57611680611fbd565b600073ffffffffffffffffffffffffffffffffffffffff6006547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600655167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b3461028b57602060031936011261028b57602061170a611705611e78565b61203c565b604051908152f35b3461028b57602060031936011261028b576020611730600435612152565b73ffffffffffffffffffffffffffffffffffffffff60405191168152f35b3461028b57602060031936011261028b5760043573ffffffffffffffffffffffffffffffffffffffff8061178183612152565b1633141580611859575b6104d45760009061179b83612152565b506117a583612152565b90838352600460205260408320917fffffffffffffffffffffffff000000000000000000000000000000000000000092838154169055169081835260036020526040832060001981540190558383526002602052604083209081541690557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8280a46009602052600060036040822061183d81612a69565b61184960018201612a69565b61185560028201612a69565b0155005b50806006541633141561178b565b3461028b57610d9261187836611ebe565b906040519261188684611f2b565b600084526122da565b3461028b57602060031936011261028b57602061170a6118ad611e78565b6129f1565b3461028b576118c036611ebe565b50505060046040517f88664580000000000000000000000000000000000000000000000000000000008152fd5b3461028b57600060031936011261028b57611906611fbd565b60ff19600854166008557f0fb79081612032f5ce63340f421121d9f8b8ea04158f08b2dfafacb3393caf98602060405160008152a1005b3461028b57600060031936011261028b57602060405160968152f35b3461028b5760208060031936011261028b576040516004359161197b82611f0f565b60006060838180955281848201528160408201520152826000526002815273ffffffffffffffffffffffffffffffffffffffff604060002054161561050d5760809260005260098152611a5f6040600020604051936119d985611f0f565b6119e2826121d7565b85526119f0600183016121d7565b90848601918252611a4f611a3960ff6003611a0d600288016121d7565b9660408b01978852015416968389019715158852604051998a99828b5251918a015260a0890190611e53565b925192601f1993848983030160408a0152611e53565b9251918684030190860152611e53565b9051151560808301520390f35b3461028b57604060031936011261028b57610dfe611e78565b3461028b57602060031936011261028b57602061173060043561227e565b3461028b57600060031936011261028b5760405160008054611ac481612184565b80845290600190818116908115610ee15750600114611aed57610c0284610e7481860382611f47565b600080805292507f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b828410611b2e575050508101602001610e7482610e64565b80546020858701810191909152909301928101611b16565b3461028b57611b5436611dfc565b90826000526020906002825273ffffffffffffffffffffffffffffffffffffffff8060406000205416801561050d573314159081611cbd575b506104d45783600052600982526001806040600020019067ffffffffffffffff851161047b57611bc785611bc18454612184565b84612926565b6000601f8611600114611c34579185807fc44d776786146efd7a19fd31681be2d271fa4a60fae7eb121f724808ba3d7021979695936103df95600093611c29575b501b906000198760031b1c191617905560405193838594855284019161296b565b85013592508a611c08565b601f1986169083600052856000209160005b818110611ca857509187969593917fc44d776786146efd7a19fd31681be2d271fa4a60fae7eb121f724808ba3d7021986103df969410611c8e575b505085811b0190556103ce565b60001960f88960031b161c19908501351690558880611c81565b86830135845592840192918701918701611c46565b90506006541633141585611b8d565b3461028b57602060031936011261028b57600435907fffffffff00000000000000000000000000000000000000000000000000000000821680920361028b57817fb45a3c0e0000000000000000000000000000000000000000000000000000000060209314908115611d40575b5015158152f35b7f80ac58cd00000000000000000000000000000000000000000000000000000000811491508115611da4575b8115611d7a575b5083611d39565b7f01ffc9a70000000000000000000000000000000000000000000000000000000091501483611d73565b7f5b5e139f0000000000000000000000000000000000000000000000000000000081149150611d6c565b9181601f8401121561028b5782359167ffffffffffffffff831161028b576020838186019501011161028b57565b90604060031983011261028b57600435916024359067ffffffffffffffff821161028b57611e2c91600401611dce565b9091565b60005b838110611e435750506000910152565b8181015183820152602001611e33565b90601f19601f602093611e7181518092818752878088019101611e30565b0116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361028b57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361028b57565b600319606091011261028b5773ffffffffffffffffffffffffffffffffffffffff90600435828116810361028b5791602435908116810361028b579060443590565b60243590811515820361028b57565b6080810190811067ffffffffffffffff82111761047b57604052565b6020810190811067ffffffffffffffff82111761047b57604052565b90601f601f19910116810190811067ffffffffffffffff82111761047b57604052565b67ffffffffffffffff811161047b57601f01601f191660200190565b929192611f9282611f6a565b91611fa06040519384611f47565b82948184528183011161028b578281602093846000960137010152565b73ffffffffffffffffffffffffffffffffffffffff600654163303611fde57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b73ffffffffffffffffffffffffffffffffffffffff16801561206957600052600360205260406000205490565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f74206120766160448201527f6c6964206f776e657200000000000000000000000000000000000000000000006064820152fd5b156120f457565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e20494400000000000000006044820152fd5b600052600260205273ffffffffffffffffffffffffffffffffffffffff604060002054166121818115156120ed565b90565b90600182811c921680156121cd575b602083101461219e57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b91607f1691612193565b90604051918260008254926121eb84612184565b90818452600194858116908160001461225a5750600114612217575b505061221592500383611f47565b565b9093915060005260209081600020936000915b81831061224257505061221593508201013880612207565b8554888401850152948501948794509183019161222a565b905061221595506020935060ff1991501682840152151560051b8201013880612207565b6122b36122ae82600052600260205273ffffffffffffffffffffffffffffffffffffffff60406000205416151590565b6120ed565b600052600460205273ffffffffffffffffffffffffffffffffffffffff6040600020541690565b9192909273ffffffffffffffffffffffffffffffffffffffff93846122fe83612152565b16803314908115612507575b5080156124f4575b1561247057849361233161232584612152565b828716961686146125b8565b8582169586156123ed57612215968661235961115798879461235286612152565b16146125b8565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60008481526004602052604081207fffffffffffffffffffffffff00000000000000000000000000000000000000009081815416905583825260036020526040822060001981540190558482526040822060018154019055858252600260205284604083209182541617905580a4612823565b60846040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201527f72206f7220617070726f766564000000000000000000000000000000000000006064820152fd5b5033856125008461227e565b1614612312565b9050600052600560205260406000203360005260205260ff604060002054163861230a565b1561253357565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e74657200000000000000000000000000006064820152608490fd5b156125bf57565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201527f6f776e65720000000000000000000000000000000000000000000000000000006064820152fd5b91929091803b1561281a576126be9360405190817f150b7a020000000000000000000000000000000000000000000000000000000093848252336004830152600096876024840152604483015260806064830152818773ffffffffffffffffffffffffffffffffffffffff8260209b8c976084830190611e53565b0393165af18491816127be575b50612795575050503d60001461278d573d6126e581611f6a565b906126f36040519283611f47565b81528091833d92013e5b8051918261278a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e74657200000000000000000000000000006064820152608490fd5b01fd5b5060606126fd565b7fffffffff00000000000000000000000000000000000000000000000000000000161492509050565b9091508581813d8311612813575b6127d68183611f47565b8101031261280f57517fffffffff000000000000000000000000000000000000000000000000000000008116810361280f5790386126cb565b8480fd5b503d6127cc565b50915050600190565b92939190803b156128c75761289c9460405180927f150b7a02000000000000000000000000000000000000000000000000000000009485835233600484015273ffffffffffffffffffffffffffffffffffffffff809816602484015260448301526080606483015281806020998a956084830190611e53565b03916000988991165af18491816127be5750612795575050503d60001461278d573d6126e581611f6a565b5050915050600190565b60001981146128e05760010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81811061291a575050565b6000815560010161290f565b9190601f811161293557505050565b612215926000526020600020906020601f840160051c83019310612961575b601f0160051c019061290f565b9091508190612954565b601f8260209493601f19938186528686013760008582860101520116010190565b1561299357565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152fd5b73ffffffffffffffffffffffffffffffffffffffff9081811690811561157457612a1a9061203c565b15612a62576007549160015b83811115612a375750505050600090565b828260406000848152600260205220541614612a5b57612a56906128d1565b612a26565b9250505090565b5050600090565b612a738154612184565b9081612a7d575050565b81601f60009311600114612a8f575055565b908083918252612aae601f60208420940160051c84016001850161290f565b5555565b90612abc82611f6a565b612ac96040519182611f47565b828152601f19612ad98294611f6a565b0190602036910137565b805115612c6a57604051906060820182811067ffffffffffffffff82111761047b57604052604082527f4142434445464748494a4b4c4d4e4f505152535455565758595a61626364656660208301527f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f604083015280516002918282018092116128e05760038092047f3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811681036128e057612ba2908495941b612ab2565b936020850193829183518401906020820192835194600085525b838110612c19575050505052510680600114612be857600214612bdd575090565b600019603d91015390565b507ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe81603d60001981940153015390565b87600491999293949901918251600190603f9082828260121c16880101518453828282600c1c16880101518385015382828260061c1688010151888501531685010151898201530197929190612bbc565b50604051612c7781611f2b565b6000815290565b908151811015612c8f570160200190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9081519160019280841b90808204600214901517156128e057612ce090612ab2565b9260009182825b612d53575b505050612cf881612ab2565b9060005b818110612d0a575090925050565b807fff00000000000000000000000000000000000000000000000000000000000000612d39612d4e9388612c7e565b511660001a612d488286612c7e565b536128d1565b612cfc565b8151811015612e2557807fff00000000000000000000000000000000000000000000000000000000000000612d8b612dea9385612c7e565b5116947f220000000000000000000000000000000000000000000000000000000000000086148015612dfc575b15612df057605c612dd2612dcb836128d1565b928a612c7e565b53612d48612ddf826128d1565b9660001a9189612c7e565b82612ce7565b612d48612ddf826128d1565b507f5c000000000000000000000000000000000000000000000000000000000000008614612db8565b612cec56fea164736f6c6343000814000a";
884
+
885
+ type SoulboundNodeNFTConstructorParams =
886
+ | [signer?: Signer]
887
+ | ConstructorParameters<typeof ContractFactory>;
888
+
889
+ const isSuperArgs = (
890
+ xs: SoulboundNodeNFTConstructorParams
891
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
892
+
893
+ export class SoulboundNodeNFT__factory extends ContractFactory {
894
+ constructor(...args: SoulboundNodeNFTConstructorParams) {
895
+ if (isSuperArgs(args)) {
896
+ super(...args);
897
+ } else {
898
+ super(_abi, _bytecode, args[0]);
899
+ }
900
+ }
901
+
902
+ override getDeployTransaction(
903
+ name_: string,
904
+ symbol_: string,
905
+ initialOwner: AddressLike,
906
+ overrides?: NonPayableOverrides & { from?: string }
907
+ ): Promise<ContractDeployTransaction> {
908
+ return super.getDeployTransaction(
909
+ name_,
910
+ symbol_,
911
+ initialOwner,
912
+ overrides || {}
913
+ );
914
+ }
915
+ override deploy(
916
+ name_: string,
917
+ symbol_: string,
918
+ initialOwner: AddressLike,
919
+ overrides?: NonPayableOverrides & { from?: string }
920
+ ) {
921
+ return super.deploy(
922
+ name_,
923
+ symbol_,
924
+ initialOwner,
925
+ overrides || {}
926
+ ) as Promise<
927
+ SoulboundNodeNFT & {
928
+ deploymentTransaction(): ContractTransactionResponse;
929
+ }
930
+ >;
931
+ }
932
+ override connect(runner: ContractRunner | null): SoulboundNodeNFT__factory {
933
+ return super.connect(runner) as SoulboundNodeNFT__factory;
934
+ }
935
+
936
+ static readonly bytecode = _bytecode;
937
+ static readonly abi = _abi;
938
+ static createInterface(): SoulboundNodeNFTInterface {
939
+ return new Interface(_abi) as SoulboundNodeNFTInterface;
940
+ }
941
+ static connect(
942
+ address: string,
943
+ runner?: ContractRunner | null
944
+ ): SoulboundNodeNFT {
945
+ return new Contract(address, _abi, runner) as unknown as SoulboundNodeNFT;
946
+ }
947
+ }