@coti-io/coti-contracts 1.2.0 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (481) hide show
  1. package/.github/workflows/npm-publish.yml +1 -1
  2. package/contracts/access/DataPrivacyFramework/DataPrivacyFramework.sol +1 -1
  3. package/contracts/access/DataPrivacyFramework/extensions/DataPrivacyFrameworkMpc.sol +1 -1
  4. package/contracts/disperse/coinByRatio/FixedRatioCoinDisperserUnlimitedWindow.sol +2 -4
  5. package/contracts/disperse/disperseToken/MintDisperser.sol +1 -3
  6. package/contracts/disperse/disperseToken/TokenDisperser.sol +1 -1
  7. package/contracts/messaging/PrivateMessaging.sol +456 -0
  8. package/contracts/mocks/access/DataPrivacyFramework/DataPrivacyFrameworkMock.sol +1 -1
  9. package/contracts/mocks/messaging/PrivateMessagingHarness.sol +54 -0
  10. package/contracts/mocks/oracle/CotiPriceConsumerMock.sol +31 -0
  11. package/contracts/mocks/token/ERC20DecimalsMock.sol +21 -0
  12. package/contracts/mocks/token/ERC20Mock.sol +1 -1
  13. package/contracts/mocks/token/PrivateERC20/EncryptedTokenReceiverMock.sol +1 -1
  14. package/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock.sol +9 -4
  15. package/contracts/mocks/token/PrivateERC20/PrivateERC20AuditorSupplyMock.sol +1 -1
  16. package/contracts/mocks/token/PrivateERC20/PrivateERC20CappedMock.sol +1 -1
  17. package/contracts/mocks/token/PrivateERC20/PrivateERC20GtCallerMock.sol +1 -1
  18. package/contracts/mocks/token/PrivateERC20/PrivateERC20Mock.sol +1 -1
  19. package/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol +1 -1
  20. package/contracts/mocks/token/PrivateERC20/PublicReentrantTokenReceiverMock.sol +1 -1
  21. package/contracts/mocks/token/PrivateERC20/PublicTokenReceiverBoolMock.sol +1 -1
  22. package/contracts/mocks/token/PrivateERC20/PublicTokenReceiverMock.sol +1 -1
  23. package/contracts/mocks/token/PrivateERC721/PrivateERC721URIStorageMock.sol +1 -1
  24. package/contracts/mocks/utils/mpc/Arithmetic128TestsContract.sol +1 -1
  25. package/contracts/mocks/utils/mpc/Arithmetic256TestsContract.sol +1 -1
  26. package/contracts/mocks/utils/mpc/ArithmeticAddTestsContract.sol +196 -0
  27. package/contracts/mocks/utils/mpc/ArithmeticMulTestsContract.sol +194 -0
  28. package/contracts/mocks/utils/mpc/ArithmeticSigned128TestsContract.sol +63 -0
  29. package/contracts/mocks/utils/mpc/ArithmeticSigned256TestsContract.sol +107 -0
  30. package/contracts/mocks/utils/mpc/ArithmeticSignedNarrowTestsContract.sol +123 -0
  31. package/contracts/mocks/utils/mpc/ArithmeticSubTestsContract.sol +196 -0
  32. package/contracts/mocks/utils/mpc/Bitwise128TestsContract.sol +1 -1
  33. package/contracts/mocks/utils/mpc/Bitwise256TestsContract.sol +1 -1
  34. package/contracts/mocks/utils/mpc/BitwiseTestsContract.sol +1 -1
  35. package/contracts/mocks/utils/mpc/CheckedArithmetic128WithOverflowBitTestsContract.sol +1 -1
  36. package/contracts/mocks/utils/mpc/CheckedArithmetic256WithOverflowBitTestsContract.sol +1 -1
  37. package/contracts/mocks/utils/mpc/CheckedArithmeticWIthOverflowBitTestsContract.sol +1 -1
  38. package/contracts/mocks/utils/mpc/Comparison128TestsContract.sol +1 -1
  39. package/contracts/mocks/utils/mpc/Comparison1TestsContract.sol +1 -1
  40. package/contracts/mocks/utils/mpc/Comparison256TestsContract.sol +1 -1
  41. package/contracts/mocks/utils/mpc/Comparison2TestsContract.sol +1 -1
  42. package/contracts/mocks/utils/mpc/MinMax128TestsContract.sol +1 -1
  43. package/contracts/mocks/utils/mpc/MinMax256TestsContract.sol +1 -1
  44. package/contracts/mocks/utils/mpc/MinMaxTestsContract.sol +1 -1
  45. package/contracts/mocks/utils/mpc/MinimalImplementation.sol +1 -1
  46. package/contracts/mocks/utils/mpc/MinimalProxy.sol +1 -1
  47. package/contracts/mocks/utils/mpc/Miscellaneous1TestsContract.sol +1 -1
  48. package/contracts/mocks/utils/mpc/MiscellaneousTestsContract.sol +1 -1
  49. package/contracts/mocks/utils/mpc/MpcOperations128TestContract.sol +1 -1
  50. package/contracts/mocks/utils/mpc/MpcOperationsTestContract.sol +4 -4
  51. package/contracts/mocks/utils/mpc/Mux128TestsContract.sol +1 -1
  52. package/contracts/mocks/utils/mpc/Mux256TestsContract.sol +1 -1
  53. package/contracts/mocks/utils/mpc/OffboardToUserKeyTestContract.sol +1 -1
  54. package/contracts/mocks/utils/mpc/OnBoard128TestsContract.sol +1 -1
  55. package/contracts/mocks/utils/mpc/OnBoard256TestsContract.sol +1 -1
  56. package/contracts/mocks/utils/mpc/PrivacyImplementationV1.sol +1 -1
  57. package/contracts/mocks/utils/mpc/PrivacyImplementationV2.sol +1 -1
  58. package/contracts/mocks/utils/mpc/PrivacyProxy.sol +1 -1
  59. package/contracts/mocks/utils/mpc/Random128TestsContract.sol +1 -1
  60. package/contracts/mocks/utils/mpc/Random256TestsContract.sol +1 -1
  61. package/contracts/mocks/utils/mpc/Shift128TestsContract.sol +1 -1
  62. package/contracts/mocks/utils/mpc/Shift256TestsContract.sol +1 -1
  63. package/contracts/mocks/utils/mpc/ShiftTestsContract.sol +1 -1
  64. package/contracts/mocks/utils/mpc/StringTestsContract.sol +1 -1
  65. package/contracts/mocks/utils/mpc/Transfer128TestsContract.sol +1 -1
  66. package/contracts/mocks/utils/mpc/Transfer256TestsContract.sol +1 -1
  67. package/contracts/mocks/utils/mpc/TransferScalarTestsContract.sol +1 -1
  68. package/contracts/mocks/utils/mpc/TransferTestsContract.sol +1 -1
  69. package/contracts/mocks/utils/mpc/TransferWithAllowance128TestsContract.sol +1 -1
  70. package/contracts/mocks/utils/mpc/TransferWithAllowance256TestsContract.sol +1 -1
  71. package/contracts/mocks/utils/mpc/TransferWithAllowance64_16TestsContract.sol +1 -1
  72. package/contracts/mocks/utils/mpc/TransferWithAllowance64_32TestsContract.sol +1 -1
  73. package/contracts/mocks/utils/mpc/TransferWithAllowance64_64TestsContract.sol +1 -1
  74. package/contracts/mocks/utils/mpc/TransferWithAllowance64_8TestsContract.sol +1 -1
  75. package/contracts/mocks/utils/mpc/TransferWithAllowanceScalarTestsContract.sol +1 -1
  76. package/contracts/mocks/utils/mpc/TransferWithAllowanceTestsContract.sol +1 -1
  77. package/contracts/mocks/utils/mpc/ValidateCiphertext128TestsContract.sol +1 -1
  78. package/contracts/mocks/utils/mpc/ValidateCiphertext256TestsContract.sol +2 -2
  79. package/contracts/mocks/utils/mpc/ValidateCiphertextTestsContract.sol +1 -1
  80. package/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock.sol +1 -1
  81. package/contracts/node/CotiNodeRewards.sol +3 -3
  82. package/contracts/node/SoulboundNodeNFT.sol +23 -24
  83. package/contracts/onboard/AccountOnboard.sol +1 -1
  84. package/contracts/oracle/CotiPriceConsumer.sol +103 -0
  85. package/contracts/oracle/ICotiPriceConsumer.sol +15 -0
  86. package/contracts/oracle/IStdReference.sol +26 -0
  87. package/contracts/pod/IInbox.sol +231 -0
  88. package/contracts/pod/IInboxMiner.sol +53 -0
  89. package/contracts/pod/InboxUser.sol +29 -0
  90. package/contracts/pod/InboxUserCotiTestnet.sol +13 -0
  91. package/contracts/pod/PodNetworkConstants.sol +30 -0
  92. package/contracts/pod/examples/MpcAdder.sol +57 -0
  93. package/contracts/pod/examples/MpcAdderPausable.sol +25 -0
  94. package/contracts/pod/examples/MpcAdderPausable.sol.bak +25 -0
  95. package/contracts/pod/examples/it128/PodAdder128.sol +48 -0
  96. package/contracts/pod/examples/it256/PodAdder256.sol +48 -0
  97. package/contracts/pod/fee/IInboxFeeManager.sol +40 -0
  98. package/contracts/pod/manifest.json +52 -0
  99. package/contracts/pod/mpc/PodLib.sol +10 -0
  100. package/contracts/pod/mpc/PodLib128.sol +361 -0
  101. package/contracts/pod/mpc/PodLib256.sol +361 -0
  102. package/contracts/pod/mpc/PodLib64.sol +385 -0
  103. package/contracts/pod/mpc/PodLibBase.sol +72 -0
  104. package/contracts/pod/mpc/PodUser.sol +58 -0
  105. package/contracts/pod/mpc/PodUserFuji.sol +14 -0
  106. package/contracts/pod/mpc/PodUserSepolia.sol +13 -0
  107. package/contracts/pod/mpc/coti-side/IPodExecutorOps.sol +99 -0
  108. package/contracts/pod/mpccodec/MpcAbiCodec.sol +482 -0
  109. package/contracts/pod/privacy/IPodPriceOracle.sol +20 -0
  110. package/contracts/pod/privacy/IPrivacyPortal.sol +248 -0
  111. package/contracts/pod/privacy/IPrivacyPortalFactory.sol +88 -0
  112. package/contracts/pod/privacy/PortalFeeOracle.sol +51 -0
  113. package/contracts/pod/privacy/PrivacyPortal.sol +871 -0
  114. package/contracts/pod/privacy/PrivacyPortalFactory.sol +492 -0
  115. package/contracts/pod/privacy/PrivacyPortalFeeLib.sol +98 -0
  116. package/contracts/pod/privacy/mocks/CloneHelper.sol +14 -0
  117. package/contracts/pod/privacy/mocks/MockERC20.sol +26 -0
  118. package/contracts/pod/privacy/mocks/MockPodERC20ForPortal.sol +160 -0
  119. package/contracts/pod/privacy/mocks/MockPrivacyPortalFactory.sol +125 -0
  120. package/contracts/pod/privacy/mocks/MockWrappedNative.sol +24 -0
  121. package/contracts/pod/token/erc7984/Erc7984Constants.sol +9 -0
  122. package/contracts/pod/token/erc7984/Erc7984Pointers.sol +29 -0
  123. package/contracts/pod/token/erc7984/IERC7984.sol +69 -0
  124. package/contracts/pod/token/erc7984/IERC7984PortalWrapper.sol +31 -0
  125. package/contracts/pod/token/erc7984/PodErc7984Mixin.sol +125 -0
  126. package/contracts/pod/token/erc7984/README.md +60 -0
  127. package/contracts/pod/token/perc20/IPodERC20.sol +298 -0
  128. package/contracts/pod/token/perc20/PodERC20.sol +1021 -0
  129. package/contracts/pod/token/perc20/PodErc20Mintable.sol +88 -0
  130. package/contracts/pod/token/perc20/PodErc20MintableInitializable.sol +42 -0
  131. package/contracts/pod/token/perc20/cotiside/IPodErc20CotiSide.sol +88 -0
  132. package/contracts/pod/token/perc20/cotiside/PodErc20CotiMother.sol +529 -0
  133. package/contracts/pod/utils/IWrappedNative.sol +11 -0
  134. package/contracts/privacyBridge/PrivacyBridge.sol +376 -94
  135. package/contracts/privacyBridge/PrivacyBridgeCotiNative.sol +210 -162
  136. package/contracts/privacyBridge/PrivacyBridgeERC20.sol +242 -160
  137. package/contracts/privacyBridge/PrivacyBridgeUSDCe.sol +8 -2
  138. package/contracts/privacyBridge/PrivacyBridgeUSDT.sol +8 -2
  139. package/contracts/privacyBridge/PrivacyBridgeWADA.sol +8 -2
  140. package/contracts/privacyBridge/PrivacyBridgeWBTC.sol +8 -2
  141. package/contracts/privacyBridge/PrivacyBridgeWETH.sol +8 -2
  142. package/contracts/privacyBridge/PrivacyBridgegCoti.sol +8 -2
  143. package/contracts/token/PrivateERC20/IPrivateERC20.sol +1 -1
  144. package/contracts/token/PrivateERC20/ITokenReceiver.sol +1 -1
  145. package/contracts/token/PrivateERC20/ITokenReceiverEncrypted.sol +1 -1
  146. package/contracts/token/PrivateERC20/PrivateERC20.sol +5 -5
  147. package/contracts/token/PrivateERC20/tokens/PrivateBridgedUSDC.sol +1 -1
  148. package/contracts/token/PrivateERC20/tokens/PrivateCOTI.sol +1 -1
  149. package/contracts/token/PrivateERC20/tokens/PrivateCOTITreasuryGovernanceToken.sol +1 -1
  150. package/contracts/token/PrivateERC20/tokens/PrivateTetherUSD.sol +1 -1
  151. package/contracts/token/PrivateERC20/tokens/PrivateWrappedADA.sol +1 -1
  152. package/contracts/token/PrivateERC20/tokens/PrivateWrappedBTC.sol +1 -1
  153. package/contracts/token/PrivateERC20/tokens/PrivateWrappedEther.sol +1 -1
  154. package/contracts/token/PrivateERC721/IERC721Errors.sol +1 -1
  155. package/contracts/token/PrivateERC721/PrivateERC721.sol +1 -1
  156. package/contracts/token/PrivateERC721/extensions/IPrivateERC721URIStorage.sol +1 -1
  157. package/contracts/token/PrivateERC721/extensions/PrivateERC721URIStorage.sol +1 -1
  158. package/contracts/token/points/CotiTokenPoints004.sol +43 -0
  159. package/contracts/utils/mpc/MpcCore.sol +610 -1
  160. package/contracts/utils/mpc/MpcInterface.sol +1 -1
  161. package/hardhat.config.ts +9 -15
  162. package/package.json +4 -4
  163. package/scripts/add-bridge-operators.cjs +87 -0
  164. package/scripts/deploy-coti-price-consumer-mainnet.cjs +49 -0
  165. package/scripts/deployCotiNodeRewards.ts +51 -0
  166. package/scripts/deployCotiTokenPoints004.ts +61 -0
  167. package/scripts/deployFixedRatioCoinDisperserUnlimitedWindow.ts +68 -0
  168. package/scripts/redeploy-private-and-bridges.cjs +201 -0
  169. package/scripts/set-bridge-limits-mainnet.cjs +177 -0
  170. package/scripts/verify-mainnet-private-bridges.cjs +289 -0
  171. package/scripts/verifyCotiTokenPoints004.ts +123 -0
  172. package/scripts/verifyFixedRatioCoinDisperserUnlimitedWindow.ts +112 -0
  173. package/sonar-project.properties +11 -0
  174. package/test/messaging/PrivateMessaging.test.ts +158 -0
  175. package/test/pod/privacy/PrivacyPortal.access.test.ts +756 -0
  176. package/test/pod/privacy/PrivacyPortal.recovery.test.ts +263 -0
  177. package/test/privacyBridge/UnifiedPrivacyBridges.test.cjs +1665 -0
  178. package/test/token/PrivateERC20/PrivacyBridge.fees.test.ts +162 -239
  179. package/test/utils/mpc/CheckedSignedArithmetic256.test.ts +163 -0
  180. package/test/utils/mpc/NegativeCases.test.ts +3 -3
  181. package/test/utils/mpc/Precompile.test.ts +6 -6
  182. package/typechain-types/@openzeppelin/contracts/access/AccessControl.ts +324 -0
  183. package/typechain-types/@openzeppelin/contracts/access/AccessControlEnumerable.ts +361 -0
  184. package/typechain-types/@openzeppelin/contracts/access/IAccessControl.ts +292 -0
  185. package/typechain-types/@openzeppelin/contracts/access/IAccessControlEnumerable.ts +329 -0
  186. package/typechain-types/@openzeppelin/contracts/access/extensions/AccessControlEnumerable.ts +375 -0
  187. package/typechain-types/@openzeppelin/contracts/access/extensions/IAccessControlEnumerable.ts +329 -0
  188. package/typechain-types/@openzeppelin/contracts/access/extensions/index.ts +5 -0
  189. package/typechain-types/@openzeppelin/contracts/access/index.ts +6 -0
  190. package/typechain-types/@openzeppelin/contracts/index.ts +2 -0
  191. package/typechain-types/@openzeppelin/contracts/interfaces/IERC1363.ts +412 -0
  192. package/typechain-types/@openzeppelin/contracts/interfaces/IERC5267.ts +151 -0
  193. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors.ts +69 -0
  194. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors.ts +69 -0
  195. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors.ts +69 -0
  196. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/index.ts +6 -0
  197. package/typechain-types/@openzeppelin/contracts/interfaces/index.ts +4 -0
  198. package/typechain-types/@openzeppelin/contracts/security/Pausable.ts +150 -0
  199. package/typechain-types/@openzeppelin/contracts/security/index.ts +4 -0
  200. package/typechain-types/@openzeppelin/contracts/token/ERC20/ERC20.ts +286 -0
  201. package/typechain-types/@openzeppelin/contracts/token/ERC20/IERC20.ts +6 -6
  202. package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.ts +313 -0
  203. package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/ERC20Pausable.ts +356 -0
  204. package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/ERC20Permit.ts +423 -0
  205. package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts +286 -0
  206. package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/index.ts +4 -0
  207. package/typechain-types/@openzeppelin/contracts/token/ERC20/index.ts +3 -0
  208. package/typechain-types/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.ts +69 -0
  209. package/typechain-types/@openzeppelin/contracts/token/ERC20/utils/index.ts +4 -0
  210. package/typechain-types/@openzeppelin/contracts/token/ERC721/ERC721.ts +420 -0
  211. package/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.ts +420 -0
  212. package/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/index.ts +4 -0
  213. package/typechain-types/@openzeppelin/contracts/token/ERC721/index.ts +3 -0
  214. package/typechain-types/@openzeppelin/contracts/utils/Nonces.ts +85 -0
  215. package/typechain-types/@openzeppelin/contracts/utils/Pausable.ts +150 -0
  216. package/typechain-types/@openzeppelin/contracts/utils/ReentrancyGuard.ts +69 -0
  217. package/typechain-types/@openzeppelin/contracts/utils/ShortStrings.ts +69 -0
  218. package/typechain-types/@openzeppelin/contracts/utils/Strings.ts +69 -0
  219. package/typechain-types/@openzeppelin/contracts/utils/cryptography/ECDSA.ts +69 -0
  220. package/typechain-types/@openzeppelin/contracts/utils/cryptography/EIP712.ts +151 -0
  221. package/typechain-types/@openzeppelin/contracts/utils/cryptography/index.ts +5 -0
  222. package/typechain-types/@openzeppelin/contracts/utils/index.ts +9 -0
  223. package/typechain-types/@openzeppelin/contracts/utils/math/SafeCast.ts +69 -0
  224. package/typechain-types/@openzeppelin/contracts/utils/math/index.ts +4 -0
  225. package/typechain-types/contracts/disperse/coinByRatio/FixedRatioCoinDisperserLeftoverS1.ts +735 -0
  226. package/typechain-types/contracts/disperse/coinByRatio/FixedRatioCoinDisperserUnlimitedWindow.ts +734 -0
  227. package/typechain-types/contracts/disperse/coinByRatio/index.ts +2 -0
  228. package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/IOwnable.ts +95 -0
  229. package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/MintDisperser.ts +22 -0
  230. package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/index.ts +1 -0
  231. package/typechain-types/contracts/index.ts +8 -0
  232. package/typechain-types/contracts/messaging/PrivateMessaging.ts +871 -0
  233. package/typechain-types/contracts/messaging/index.ts +4 -0
  234. package/typechain-types/contracts/mocks/index.ts +4 -0
  235. package/typechain-types/contracts/mocks/messaging/PrivateMessagingHarness.ts +951 -0
  236. package/typechain-types/contracts/mocks/messaging/index.ts +4 -0
  237. package/typechain-types/contracts/mocks/oracle/CotiPriceConsumerMock.ts +163 -0
  238. package/typechain-types/contracts/mocks/oracle/index.ts +4 -0
  239. package/typechain-types/contracts/mocks/token/ERC20DecimalsMock.ts +305 -0
  240. package/typechain-types/contracts/mocks/token/ERC20Mock.ts +324 -0
  241. package/typechain-types/contracts/mocks/token/PrivateERC20/EncryptedTokenReceiverMock.ts +108 -0
  242. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock.ts +1906 -0
  243. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20AuditorSupplyMock.ts +1296 -0
  244. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20CappedMock.ts +1270 -0
  245. package/typechain-types/contracts/mocks/{utils/mpc/Bitwise128BitTestsContract.ts → token/PrivateERC20/PrivateERC20GtCallerMock.ts} +47 -67
  246. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20Mock.ts +757 -25
  247. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/IPrivateERC20TransferAndCallEncrypted.ts +102 -0
  248. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/PrivateERC20ReentrantReceiverMock.ts +154 -0
  249. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/index.ts +5 -0
  250. package/typechain-types/contracts/mocks/token/PrivateERC20/PublicReentrantTokenReceiverMock.ts +155 -0
  251. package/typechain-types/contracts/mocks/token/PrivateERC20/PublicTokenReceiverBoolMock.ts +107 -0
  252. package/typechain-types/contracts/mocks/token/PrivateERC20/PublicTokenReceiverMock.ts +100 -0
  253. package/typechain-types/contracts/mocks/token/PrivateERC20/index.ts +10 -0
  254. package/typechain-types/contracts/mocks/token/index.ts +2 -0
  255. package/typechain-types/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock.ts +6 -6
  256. package/typechain-types/contracts/node/CotiNodeRewards.ts +566 -0
  257. package/typechain-types/contracts/node/SoulboundNodeNFT.sol/IERC5192.ts +123 -0
  258. package/typechain-types/contracts/node/SoulboundNodeNFT.sol/SoulboundNodeNFT.ts +975 -0
  259. package/typechain-types/contracts/node/SoulboundNodeNFT.sol/index.ts +5 -0
  260. package/typechain-types/contracts/node/index.ts +6 -0
  261. package/typechain-types/contracts/oracle/CotiPriceConsumer.ts +256 -0
  262. package/typechain-types/contracts/oracle/ICotiPriceConsumer.ts +119 -0
  263. package/typechain-types/contracts/oracle/IStdReference.ts +136 -0
  264. package/typechain-types/contracts/oracle/index.ts +6 -0
  265. package/typechain-types/contracts/privacyBridge/PrivacyBridge.ts +1642 -0
  266. package/typechain-types/contracts/privacyBridge/PrivacyBridgeCotiNative.ts +1884 -0
  267. package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/IHasDecimals.ts +84 -0
  268. package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/PrivacyBridgeERC20.ts +1906 -0
  269. package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/index.ts +5 -0
  270. package/typechain-types/contracts/privacyBridge/PrivacyBridgeUSDCe.ts +1906 -0
  271. package/typechain-types/contracts/privacyBridge/PrivacyBridgeUSDT.ts +1906 -0
  272. package/typechain-types/contracts/privacyBridge/PrivacyBridgeWADA.ts +1906 -0
  273. package/typechain-types/contracts/privacyBridge/PrivacyBridgeWBTC.ts +1906 -0
  274. package/typechain-types/contracts/privacyBridge/PrivacyBridgeWETH.ts +1906 -0
  275. package/typechain-types/contracts/privacyBridge/PrivacyBridgegCoti.ts +1906 -0
  276. package/typechain-types/contracts/privacyBridge/index.ts +13 -0
  277. package/typechain-types/contracts/token/PrivateERC20/IPrivateERC20.ts +439 -19
  278. package/typechain-types/contracts/token/PrivateERC20/ITokenReceiver.ts +100 -0
  279. package/typechain-types/contracts/token/PrivateERC20/ITokenReceiverEncrypted.ts +99 -0
  280. package/typechain-types/contracts/token/PrivateERC20/PrivateERC20.ts +763 -15
  281. package/typechain-types/contracts/token/PrivateERC20/index.ts +4 -0
  282. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateBridgedUSDC.ts +1270 -0
  283. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateCOTI.ts +1270 -0
  284. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateCOTITreasuryGovernanceToken.ts +1270 -0
  285. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateTetherUSD.ts +1270 -0
  286. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedADA.ts +1270 -0
  287. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedBTC.ts +1270 -0
  288. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedEther.ts +1270 -0
  289. package/typechain-types/contracts/token/PrivateERC20/tokens/index.ts +10 -0
  290. package/typechain-types/contracts/token/index.ts +2 -0
  291. package/typechain-types/contracts/token/points/CotiTokenPoints004.sol/COTITokenPoints004.ts +826 -0
  292. package/typechain-types/contracts/token/points/CotiTokenPoints004.ts +826 -0
  293. package/typechain-types/contracts/token/points/index.ts +4 -0
  294. package/typechain-types/factories/@openzeppelin/contracts/access/AccessControlEnumerable__factory.ts +276 -0
  295. package/typechain-types/factories/@openzeppelin/contracts/access/AccessControl__factory.ts +250 -0
  296. package/typechain-types/factories/@openzeppelin/contracts/access/IAccessControlEnumerable__factory.ts +244 -0
  297. package/typechain-types/factories/@openzeppelin/contracts/access/IAccessControl__factory.ts +218 -0
  298. package/typechain-types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +22 -0
  299. package/typechain-types/factories/@openzeppelin/contracts/access/extensions/AccessControlEnumerable__factory.ts +316 -0
  300. package/typechain-types/factories/@openzeppelin/contracts/access/extensions/IAccessControlEnumerable__factory.ts +265 -0
  301. package/typechain-types/factories/@openzeppelin/contracts/access/extensions/index.ts +5 -0
  302. package/typechain-types/factories/@openzeppelin/contracts/access/index.ts +5 -0
  303. package/typechain-types/factories/@openzeppelin/contracts/index.ts +1 -0
  304. package/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1363__factory.ts +393 -0
  305. package/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC5267__factory.ts +71 -0
  306. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors__factory.ts +127 -0
  307. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors__factory.ts +111 -0
  308. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors__factory.ts +128 -0
  309. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/index.ts +6 -0
  310. package/typechain-types/factories/@openzeppelin/contracts/interfaces/index.ts +3 -0
  311. package/typechain-types/factories/@openzeppelin/contracts/security/Pausable__factory.ts +61 -0
  312. package/typechain-types/factories/@openzeppelin/contracts/security/index.ts +4 -0
  313. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts +330 -0
  314. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts +3 -3
  315. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable__factory.ts +364 -0
  316. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/ERC20Pausable__factory.ts +382 -0
  317. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/ERC20Permit__factory.ts +540 -0
  318. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts +247 -0
  319. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts +4 -0
  320. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/index.ts +2 -0
  321. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.ts +96 -0
  322. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/index.ts +4 -0
  323. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.ts +455 -0
  324. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.ts +355 -0
  325. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.ts +4 -0
  326. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/index.ts +2 -0
  327. package/typechain-types/factories/@openzeppelin/contracts/utils/Nonces__factory.ts +57 -0
  328. package/typechain-types/factories/@openzeppelin/contracts/utils/Pausable__factory.ts +71 -0
  329. package/typechain-types/factories/@openzeppelin/contracts/utils/ReentrancyGuard__factory.ts +30 -0
  330. package/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.ts +83 -0
  331. package/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.ts +90 -0
  332. package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.ts +91 -0
  333. package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/EIP712__factory.ts +87 -0
  334. package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/index.ts +5 -0
  335. package/typechain-types/factories/@openzeppelin/contracts/utils/index.ts +7 -0
  336. package/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.ts +118 -0
  337. package/typechain-types/factories/@openzeppelin/contracts/utils/math/index.ts +4 -0
  338. package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperserLeftoverS1__factory.ts +802 -0
  339. package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperserUnlimitedWindow__factory.ts +749 -0
  340. package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperser__factory.ts +12 -1
  341. package/typechain-types/factories/contracts/disperse/coinByRatio/index.ts +2 -0
  342. package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/IOwnable__factory.ts +35 -0
  343. package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/MintDisperser__factory.ts +41 -1
  344. package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/index.ts +1 -0
  345. package/typechain-types/factories/contracts/disperse/disperseToken/TokenDisperser__factory.ts +12 -1
  346. package/typechain-types/factories/contracts/index.ts +4 -0
  347. package/typechain-types/factories/contracts/messaging/PrivateMessaging__factory.ts +1035 -0
  348. package/typechain-types/factories/contracts/messaging/index.ts +4 -0
  349. package/typechain-types/factories/contracts/mocks/access/DataPrivacyFramework/DataPrivacyFrameworkMock__factory.ts +1 -1
  350. package/typechain-types/factories/contracts/mocks/index.ts +2 -0
  351. package/typechain-types/factories/contracts/mocks/messaging/PrivateMessagingHarness__factory.ts +1161 -0
  352. package/typechain-types/factories/contracts/mocks/messaging/index.ts +4 -0
  353. package/typechain-types/factories/contracts/mocks/oracle/CotiPriceConsumerMock__factory.ts +159 -0
  354. package/typechain-types/factories/contracts/mocks/oracle/index.ts +4 -0
  355. package/typechain-types/factories/contracts/mocks/token/ERC20DecimalsMock__factory.ts +432 -0
  356. package/typechain-types/factories/contracts/mocks/token/ERC20Mock__factory.ts +430 -0
  357. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/EncryptedTokenReceiverMock__factory.ts +125 -0
  358. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock__factory.ts +1885 -0
  359. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20AuditorSupplyMock__factory.ts +1540 -0
  360. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20CappedMock__factory.ts +1492 -0
  361. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20GtCallerMock__factory.ts +165 -0
  362. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20Mock__factory.ts +794 -52
  363. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/IPrivateERC20TransferAndCallEncrypted__factory.ts +54 -0
  364. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/PrivateERC20ReentrantReceiverMock__factory.ts +159 -0
  365. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/index.ts +5 -0
  366. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicReentrantTokenReceiverMock__factory.ts +164 -0
  367. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicTokenReceiverBoolMock__factory.ts +130 -0
  368. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicTokenReceiverMock__factory.ts +102 -0
  369. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/index.ts +9 -0
  370. package/typechain-types/factories/contracts/mocks/token/PrivateERC721/PrivateERC721URIStorageMock__factory.ts +1 -1
  371. package/typechain-types/factories/contracts/mocks/token/index.ts +2 -0
  372. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic128TestsContract__factory.ts +1 -1
  373. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic256TestsContract__factory.ts +1 -1
  374. package/typechain-types/factories/contracts/mocks/utils/mpc/ArithmeticTestsContract__factory.ts +1 -1
  375. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise128TestsContract__factory.ts +1 -1
  376. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise256TestsContract__factory.ts +1 -1
  377. package/typechain-types/factories/contracts/mocks/utils/mpc/BitwiseTestsContract__factory.ts +1 -1
  378. package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmetic128WithOverflowBitTestsContract__factory.ts +1 -1
  379. package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmetic256WithOverflowBitTestsContract__factory.ts +1 -1
  380. package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmeticWIthOverflowBitTestsContract.sol/CheckedArithmeticWithOverflowBitTestsContract__factory.ts +1 -1
  381. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison128TestsContract__factory.ts +1 -1
  382. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison1TestsContract__factory.ts +1 -1
  383. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison256TestsContract__factory.ts +1 -1
  384. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison2TestsContract__factory.ts +1 -1
  385. package/typechain-types/factories/contracts/mocks/utils/mpc/MinMax128TestsContract__factory.ts +1 -1
  386. package/typechain-types/factories/contracts/mocks/utils/mpc/MinMax256TestsContract__factory.ts +1 -1
  387. package/typechain-types/factories/contracts/mocks/utils/mpc/MinMaxTestsContract__factory.ts +1 -1
  388. package/typechain-types/factories/contracts/mocks/utils/mpc/MinimalImplementation__factory.ts +1 -1
  389. package/typechain-types/factories/contracts/mocks/utils/mpc/MinimalProxy__factory.ts +1 -1
  390. package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous1TestsContract__factory.ts +1 -1
  391. package/typechain-types/factories/contracts/mocks/utils/mpc/MiscellaneousTestsContract__factory.ts +1 -1
  392. package/typechain-types/factories/contracts/mocks/utils/mpc/MpcOperations128TestContract__factory.ts +1 -1
  393. package/typechain-types/factories/contracts/mocks/utils/mpc/MpcOperationsTestContract__factory.ts +1 -1
  394. package/typechain-types/factories/contracts/mocks/utils/mpc/Mux128TestsContract__factory.ts +1 -1
  395. package/typechain-types/factories/contracts/mocks/utils/mpc/Mux256TestsContract__factory.ts +1 -1
  396. package/typechain-types/factories/contracts/mocks/utils/mpc/OffboardToUserKeyTestContract__factory.ts +1 -1
  397. package/typechain-types/factories/contracts/mocks/utils/mpc/OnBoard128TestsContract__factory.ts +1 -1
  398. package/typechain-types/factories/contracts/mocks/utils/mpc/OnBoard256TestsContract__factory.ts +1 -1
  399. package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyImplementationV1__factory.ts +1 -1
  400. package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyImplementationV2__factory.ts +1 -1
  401. package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyProxy__factory.ts +1 -1
  402. package/typechain-types/factories/contracts/mocks/utils/mpc/Random128TestsContract__factory.ts +1 -1
  403. package/typechain-types/factories/contracts/mocks/utils/mpc/Random256TestsContract__factory.ts +1 -1
  404. package/typechain-types/factories/contracts/mocks/utils/mpc/Shift128TestsContract__factory.ts +1 -1
  405. package/typechain-types/factories/contracts/mocks/utils/mpc/Shift256TestsContract__factory.ts +1 -1
  406. package/typechain-types/factories/contracts/mocks/utils/mpc/ShiftTestsContract__factory.ts +1 -1
  407. package/typechain-types/factories/contracts/mocks/utils/mpc/StringTestsContract__factory.ts +1 -1
  408. package/typechain-types/factories/contracts/mocks/utils/mpc/Transfer128TestsContract__factory.ts +1 -1
  409. package/typechain-types/factories/contracts/mocks/utils/mpc/Transfer256TestsContract__factory.ts +1 -1
  410. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferScalarTestsContract__factory.ts +1 -1
  411. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferTestsContract__factory.ts +1 -1
  412. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance128TestsContract__factory.ts +1 -1
  413. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance256TestsContract__factory.ts +1 -1
  414. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_16TestsContract__factory.ts +1 -1
  415. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_32TestsContract__factory.ts +1 -1
  416. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_64TestsContract__factory.ts +1 -1
  417. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_8TestsContract__factory.ts +1 -1
  418. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowanceScalarTestsContract__factory.ts +1 -1
  419. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowanceTestsContract__factory.ts +1 -1
  420. package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertext128TestsContract__factory.ts +1 -1
  421. package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertext256TestsContract__factory.ts +1 -1
  422. package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertextTestsContract__factory.ts +1 -1
  423. package/typechain-types/factories/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock__factory.ts +4 -22
  424. package/typechain-types/factories/contracts/node/CotiNodeRewards__factory.ts +576 -0
  425. package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/IERC5192__factory.ts +54 -0
  426. package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/SoulboundNodeNFT__factory.ts +1072 -0
  427. package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/index.ts +5 -0
  428. package/typechain-types/factories/contracts/node/index.ts +5 -0
  429. package/typechain-types/factories/contracts/onboard/AccountOnboard__factory.ts +1 -1
  430. package/typechain-types/factories/contracts/oracle/CotiPriceConsumer__factory.ts +295 -0
  431. package/typechain-types/factories/contracts/oracle/ICotiPriceConsumer__factory.ts +73 -0
  432. package/typechain-types/factories/contracts/oracle/IStdReference__factory.ts +107 -0
  433. package/typechain-types/factories/contracts/oracle/index.ts +6 -0
  434. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeCotiNative__factory.ts +1753 -0
  435. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/IHasDecimals__factory.ts +38 -0
  436. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/PrivacyBridgeERC20__factory.ts +1766 -0
  437. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/index.ts +5 -0
  438. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeUSDCe__factory.ts +1870 -0
  439. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeUSDT__factory.ts +1870 -0
  440. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWADA__factory.ts +1870 -0
  441. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWBTC__factory.ts +1870 -0
  442. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWETH__factory.ts +1870 -0
  443. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridge__factory.ts +1444 -0
  444. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgegCoti__factory.ts +1870 -0
  445. package/typechain-types/factories/contracts/privacyBridge/index.ts +12 -0
  446. package/typechain-types/factories/contracts/token/PrivateERC20/IPrivateERC20__factory.ts +481 -35
  447. package/typechain-types/factories/contracts/token/PrivateERC20/ITokenReceiverEncrypted__factory.ts +53 -0
  448. package/typechain-types/factories/contracts/token/PrivateERC20/ITokenReceiver__factory.ts +54 -0
  449. package/typechain-types/factories/contracts/token/PrivateERC20/PrivateERC20__factory.ts +812 -52
  450. package/typechain-types/factories/contracts/token/PrivateERC20/index.ts +3 -0
  451. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateBridgedUSDC__factory.ts +1471 -0
  452. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateCOTITreasuryGovernanceToken__factory.ts +1477 -0
  453. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateCOTI__factory.ts +1468 -0
  454. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateTetherUSD__factory.ts +1471 -0
  455. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedADA__factory.ts +1471 -0
  456. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedBTC__factory.ts +1471 -0
  457. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedEther__factory.ts +1477 -0
  458. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/index.ts +10 -0
  459. package/typechain-types/factories/contracts/token/index.ts +1 -0
  460. package/typechain-types/factories/contracts/token/points/CotiTokenPoints004.sol/COTITokenPoints004__factory.ts +992 -0
  461. package/typechain-types/factories/contracts/token/points/CotiTokenPoints004__factory.ts +992 -0
  462. package/typechain-types/factories/contracts/token/points/index.ts +4 -0
  463. package/typechain-types/factories/contracts/utils/mpc/MpcCore__factory.ts +1 -1
  464. package/typechain-types/hardhat.d.ts +1414 -118
  465. package/typechain-types/index.ts +138 -2
  466. package/contracts/mocks/utils/mpc/ArithmeticTestsContract.sol +0 -408
  467. package/typechain-types/contracts/mocks/utils/mpc/Arithmetic128BitTestsContract.ts +0 -341
  468. package/typechain-types/contracts/mocks/utils/mpc/Arithmetic256BitTestsContract.ts +0 -347
  469. package/typechain-types/contracts/mocks/utils/mpc/Bitwise256BitTestsContract.ts +0 -186
  470. package/typechain-types/contracts/mocks/utils/mpc/Comparison128BitTestsContract.ts +0 -260
  471. package/typechain-types/contracts/mocks/utils/mpc/Comparison256BitTestsContract.ts +0 -260
  472. package/typechain-types/contracts/mocks/utils/mpc/Miscellaneous128BitTestsContract.ts +0 -302
  473. package/typechain-types/contracts/mocks/utils/mpc/Miscellaneous256BitTestsContract.ts +0 -322
  474. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic128BitTestsContract__factory.ts +0 -349
  475. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic256BitTestsContract__factory.ts +0 -364
  476. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise128BitTestsContract__factory.ts +0 -182
  477. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise256BitTestsContract__factory.ts +0 -182
  478. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison128BitTestsContract__factory.ts +0 -255
  479. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison256BitTestsContract__factory.ts +0 -255
  480. package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous128BitTestsContract__factory.ts +0 -332
  481. package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous256BitTestsContract__factory.ts +0 -380
@@ -0,0 +1,1471 @@
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 { Signer, ContractDeployTransaction, ContractRunner } from "ethers";
11
+ import type { NonPayableOverrides } from "../../../../../common";
12
+ import type {
13
+ PrivateTetherUSD,
14
+ PrivateTetherUSDInterface,
15
+ } from "../../../../../contracts/token/PrivateERC20/tokens/PrivateTetherUSD";
16
+
17
+ const _abi = [
18
+ {
19
+ inputs: [],
20
+ stateMutability: "nonpayable",
21
+ type: "constructor",
22
+ },
23
+ {
24
+ inputs: [],
25
+ name: "AccessControlBadConfirmation",
26
+ type: "error",
27
+ },
28
+ {
29
+ inputs: [
30
+ {
31
+ internalType: "address",
32
+ name: "account",
33
+ type: "address",
34
+ },
35
+ {
36
+ internalType: "bytes32",
37
+ name: "neededRole",
38
+ type: "bytes32",
39
+ },
40
+ ],
41
+ name: "AccessControlUnauthorizedAccount",
42
+ type: "error",
43
+ },
44
+ {
45
+ inputs: [
46
+ {
47
+ internalType: "address",
48
+ name: "approver",
49
+ type: "address",
50
+ },
51
+ ],
52
+ name: "ERC20InvalidApprover",
53
+ type: "error",
54
+ },
55
+ {
56
+ inputs: [],
57
+ name: "ERC20InvalidMetadata",
58
+ type: "error",
59
+ },
60
+ {
61
+ inputs: [
62
+ {
63
+ internalType: "address",
64
+ name: "receiver",
65
+ type: "address",
66
+ },
67
+ ],
68
+ name: "ERC20InvalidReceiver",
69
+ type: "error",
70
+ },
71
+ {
72
+ inputs: [
73
+ {
74
+ internalType: "address",
75
+ name: "sender",
76
+ type: "address",
77
+ },
78
+ ],
79
+ name: "ERC20InvalidSender",
80
+ type: "error",
81
+ },
82
+ {
83
+ inputs: [
84
+ {
85
+ internalType: "address",
86
+ name: "spender",
87
+ type: "address",
88
+ },
89
+ ],
90
+ name: "ERC20InvalidSpender",
91
+ type: "error",
92
+ },
93
+ {
94
+ inputs: [
95
+ {
96
+ internalType: "address",
97
+ name: "account",
98
+ type: "address",
99
+ },
100
+ ],
101
+ name: "ERC20SelfTransferNotAllowed",
102
+ type: "error",
103
+ },
104
+ {
105
+ inputs: [],
106
+ name: "ERC20UnsafeApprove",
107
+ type: "error",
108
+ },
109
+ {
110
+ inputs: [],
111
+ name: "PublicAmountsDisabled",
112
+ type: "error",
113
+ },
114
+ {
115
+ inputs: [],
116
+ name: "ReentrancyGuardReentrantCall",
117
+ type: "error",
118
+ },
119
+ {
120
+ inputs: [
121
+ {
122
+ internalType: "address",
123
+ name: "to",
124
+ type: "address",
125
+ },
126
+ ],
127
+ name: "TransferAndCallRequiresContract",
128
+ type: "error",
129
+ },
130
+ {
131
+ anonymous: false,
132
+ inputs: [
133
+ {
134
+ indexed: true,
135
+ internalType: "address",
136
+ name: "account",
137
+ type: "address",
138
+ },
139
+ {
140
+ indexed: true,
141
+ internalType: "address",
142
+ name: "newAddress",
143
+ type: "address",
144
+ },
145
+ ],
146
+ name: "AccountEncryptionAddressSet",
147
+ type: "event",
148
+ },
149
+ {
150
+ anonymous: false,
151
+ inputs: [
152
+ {
153
+ indexed: true,
154
+ internalType: "address",
155
+ name: "owner",
156
+ type: "address",
157
+ },
158
+ {
159
+ indexed: true,
160
+ internalType: "address",
161
+ name: "spender",
162
+ type: "address",
163
+ },
164
+ {
165
+ indexed: false,
166
+ internalType: "bool",
167
+ name: "isSpender",
168
+ type: "bool",
169
+ },
170
+ ],
171
+ name: "AllowanceReencrypted",
172
+ type: "event",
173
+ },
174
+ {
175
+ anonymous: false,
176
+ inputs: [
177
+ {
178
+ indexed: true,
179
+ internalType: "address",
180
+ name: "owner",
181
+ type: "address",
182
+ },
183
+ {
184
+ indexed: true,
185
+ internalType: "address",
186
+ name: "spender",
187
+ type: "address",
188
+ },
189
+ {
190
+ components: [
191
+ {
192
+ internalType: "ctUint128",
193
+ name: "ciphertextHigh",
194
+ type: "uint256",
195
+ },
196
+ {
197
+ internalType: "ctUint128",
198
+ name: "ciphertextLow",
199
+ type: "uint256",
200
+ },
201
+ ],
202
+ indexed: false,
203
+ internalType: "struct ctUint256",
204
+ name: "ownerValue",
205
+ type: "tuple",
206
+ },
207
+ {
208
+ components: [
209
+ {
210
+ internalType: "ctUint128",
211
+ name: "ciphertextHigh",
212
+ type: "uint256",
213
+ },
214
+ {
215
+ internalType: "ctUint128",
216
+ name: "ciphertextLow",
217
+ type: "uint256",
218
+ },
219
+ ],
220
+ indexed: false,
221
+ internalType: "struct ctUint256",
222
+ name: "spenderValue",
223
+ type: "tuple",
224
+ },
225
+ ],
226
+ name: "Approval",
227
+ type: "event",
228
+ },
229
+ {
230
+ anonymous: false,
231
+ inputs: [
232
+ {
233
+ indexed: false,
234
+ internalType: "bool",
235
+ name: "enabled",
236
+ type: "bool",
237
+ },
238
+ ],
239
+ name: "PublicAmountsEnabledSet",
240
+ type: "event",
241
+ },
242
+ {
243
+ anonymous: false,
244
+ inputs: [
245
+ {
246
+ indexed: true,
247
+ internalType: "bytes32",
248
+ name: "role",
249
+ type: "bytes32",
250
+ },
251
+ {
252
+ indexed: true,
253
+ internalType: "bytes32",
254
+ name: "previousAdminRole",
255
+ type: "bytes32",
256
+ },
257
+ {
258
+ indexed: true,
259
+ internalType: "bytes32",
260
+ name: "newAdminRole",
261
+ type: "bytes32",
262
+ },
263
+ ],
264
+ name: "RoleAdminChanged",
265
+ type: "event",
266
+ },
267
+ {
268
+ anonymous: false,
269
+ inputs: [
270
+ {
271
+ indexed: true,
272
+ internalType: "bytes32",
273
+ name: "role",
274
+ type: "bytes32",
275
+ },
276
+ {
277
+ indexed: true,
278
+ internalType: "address",
279
+ name: "account",
280
+ type: "address",
281
+ },
282
+ {
283
+ indexed: true,
284
+ internalType: "address",
285
+ name: "sender",
286
+ type: "address",
287
+ },
288
+ ],
289
+ name: "RoleGranted",
290
+ type: "event",
291
+ },
292
+ {
293
+ anonymous: false,
294
+ inputs: [
295
+ {
296
+ indexed: true,
297
+ internalType: "bytes32",
298
+ name: "role",
299
+ type: "bytes32",
300
+ },
301
+ {
302
+ indexed: true,
303
+ internalType: "address",
304
+ name: "account",
305
+ type: "address",
306
+ },
307
+ {
308
+ indexed: true,
309
+ internalType: "address",
310
+ name: "sender",
311
+ type: "address",
312
+ },
313
+ ],
314
+ name: "RoleRevoked",
315
+ type: "event",
316
+ },
317
+ {
318
+ anonymous: false,
319
+ inputs: [
320
+ {
321
+ indexed: true,
322
+ internalType: "address",
323
+ name: "from",
324
+ type: "address",
325
+ },
326
+ {
327
+ indexed: true,
328
+ internalType: "address",
329
+ name: "to",
330
+ type: "address",
331
+ },
332
+ {
333
+ components: [
334
+ {
335
+ internalType: "ctUint128",
336
+ name: "ciphertextHigh",
337
+ type: "uint256",
338
+ },
339
+ {
340
+ internalType: "ctUint128",
341
+ name: "ciphertextLow",
342
+ type: "uint256",
343
+ },
344
+ ],
345
+ indexed: false,
346
+ internalType: "struct ctUint256",
347
+ name: "senderValue",
348
+ type: "tuple",
349
+ },
350
+ {
351
+ components: [
352
+ {
353
+ internalType: "ctUint128",
354
+ name: "ciphertextHigh",
355
+ type: "uint256",
356
+ },
357
+ {
358
+ internalType: "ctUint128",
359
+ name: "ciphertextLow",
360
+ type: "uint256",
361
+ },
362
+ ],
363
+ indexed: false,
364
+ internalType: "struct ctUint256",
365
+ name: "receiverValue",
366
+ type: "tuple",
367
+ },
368
+ ],
369
+ name: "Transfer",
370
+ type: "event",
371
+ },
372
+ {
373
+ inputs: [],
374
+ name: "DEFAULT_ADMIN_ROLE",
375
+ outputs: [
376
+ {
377
+ internalType: "bytes32",
378
+ name: "",
379
+ type: "bytes32",
380
+ },
381
+ ],
382
+ stateMutability: "view",
383
+ type: "function",
384
+ },
385
+ {
386
+ inputs: [],
387
+ name: "MINTER_ROLE",
388
+ outputs: [
389
+ {
390
+ internalType: "bytes32",
391
+ name: "",
392
+ type: "bytes32",
393
+ },
394
+ ],
395
+ stateMutability: "view",
396
+ type: "function",
397
+ },
398
+ {
399
+ inputs: [
400
+ {
401
+ internalType: "address",
402
+ name: "account",
403
+ type: "address",
404
+ },
405
+ ],
406
+ name: "accountEncryptionAddress",
407
+ outputs: [
408
+ {
409
+ internalType: "address",
410
+ name: "",
411
+ type: "address",
412
+ },
413
+ ],
414
+ stateMutability: "view",
415
+ type: "function",
416
+ },
417
+ {
418
+ inputs: [
419
+ {
420
+ internalType: "address",
421
+ name: "account",
422
+ type: "address",
423
+ },
424
+ {
425
+ internalType: "bool",
426
+ name: "isSpender",
427
+ type: "bool",
428
+ },
429
+ ],
430
+ name: "allowance",
431
+ outputs: [
432
+ {
433
+ internalType: "gtUint256",
434
+ name: "",
435
+ type: "uint256",
436
+ },
437
+ ],
438
+ stateMutability: "nonpayable",
439
+ type: "function",
440
+ },
441
+ {
442
+ inputs: [
443
+ {
444
+ internalType: "address",
445
+ name: "owner",
446
+ type: "address",
447
+ },
448
+ {
449
+ internalType: "address",
450
+ name: "spender",
451
+ type: "address",
452
+ },
453
+ ],
454
+ name: "allowance",
455
+ outputs: [
456
+ {
457
+ components: [
458
+ {
459
+ components: [
460
+ {
461
+ internalType: "ctUint128",
462
+ name: "ciphertextHigh",
463
+ type: "uint256",
464
+ },
465
+ {
466
+ internalType: "ctUint128",
467
+ name: "ciphertextLow",
468
+ type: "uint256",
469
+ },
470
+ ],
471
+ internalType: "struct ctUint256",
472
+ name: "ciphertext",
473
+ type: "tuple",
474
+ },
475
+ {
476
+ components: [
477
+ {
478
+ internalType: "ctUint128",
479
+ name: "ciphertextHigh",
480
+ type: "uint256",
481
+ },
482
+ {
483
+ internalType: "ctUint128",
484
+ name: "ciphertextLow",
485
+ type: "uint256",
486
+ },
487
+ ],
488
+ internalType: "struct ctUint256",
489
+ name: "ownerCiphertext",
490
+ type: "tuple",
491
+ },
492
+ {
493
+ components: [
494
+ {
495
+ internalType: "ctUint128",
496
+ name: "ciphertextHigh",
497
+ type: "uint256",
498
+ },
499
+ {
500
+ internalType: "ctUint128",
501
+ name: "ciphertextLow",
502
+ type: "uint256",
503
+ },
504
+ ],
505
+ internalType: "struct ctUint256",
506
+ name: "spenderCiphertext",
507
+ type: "tuple",
508
+ },
509
+ ],
510
+ internalType: "struct IPrivateERC20.Allowance",
511
+ name: "",
512
+ type: "tuple",
513
+ },
514
+ ],
515
+ stateMutability: "view",
516
+ type: "function",
517
+ },
518
+ {
519
+ inputs: [
520
+ {
521
+ internalType: "address",
522
+ name: "spender",
523
+ type: "address",
524
+ },
525
+ {
526
+ internalType: "uint256",
527
+ name: "value",
528
+ type: "uint256",
529
+ },
530
+ ],
531
+ name: "approve",
532
+ outputs: [],
533
+ stateMutability: "nonpayable",
534
+ type: "function",
535
+ },
536
+ {
537
+ inputs: [
538
+ {
539
+ internalType: "address",
540
+ name: "spender",
541
+ type: "address",
542
+ },
543
+ {
544
+ components: [
545
+ {
546
+ components: [
547
+ {
548
+ internalType: "ctUint128",
549
+ name: "ciphertextHigh",
550
+ type: "uint256",
551
+ },
552
+ {
553
+ internalType: "ctUint128",
554
+ name: "ciphertextLow",
555
+ type: "uint256",
556
+ },
557
+ ],
558
+ internalType: "struct ctUint256",
559
+ name: "ciphertext",
560
+ type: "tuple",
561
+ },
562
+ {
563
+ internalType: "bytes",
564
+ name: "signature",
565
+ type: "bytes",
566
+ },
567
+ ],
568
+ internalType: "struct itUint256",
569
+ name: "value",
570
+ type: "tuple",
571
+ },
572
+ ],
573
+ name: "approve",
574
+ outputs: [],
575
+ stateMutability: "nonpayable",
576
+ type: "function",
577
+ },
578
+ {
579
+ inputs: [
580
+ {
581
+ internalType: "address",
582
+ name: "spender",
583
+ type: "address",
584
+ },
585
+ {
586
+ internalType: "gtUint256",
587
+ name: "value",
588
+ type: "uint256",
589
+ },
590
+ ],
591
+ name: "approveGT",
592
+ outputs: [],
593
+ stateMutability: "nonpayable",
594
+ type: "function",
595
+ },
596
+ {
597
+ inputs: [
598
+ {
599
+ internalType: "address",
600
+ name: "account",
601
+ type: "address",
602
+ },
603
+ ],
604
+ name: "balanceOf",
605
+ outputs: [
606
+ {
607
+ components: [
608
+ {
609
+ internalType: "ctUint128",
610
+ name: "ciphertextHigh",
611
+ type: "uint256",
612
+ },
613
+ {
614
+ internalType: "ctUint128",
615
+ name: "ciphertextLow",
616
+ type: "uint256",
617
+ },
618
+ ],
619
+ internalType: "struct ctUint256",
620
+ name: "",
621
+ type: "tuple",
622
+ },
623
+ ],
624
+ stateMutability: "view",
625
+ type: "function",
626
+ },
627
+ {
628
+ inputs: [],
629
+ name: "balanceOf",
630
+ outputs: [
631
+ {
632
+ internalType: "gtUint256",
633
+ name: "",
634
+ type: "uint256",
635
+ },
636
+ ],
637
+ stateMutability: "nonpayable",
638
+ type: "function",
639
+ },
640
+ {
641
+ inputs: [
642
+ {
643
+ internalType: "uint256",
644
+ name: "amount",
645
+ type: "uint256",
646
+ },
647
+ ],
648
+ name: "burn",
649
+ outputs: [],
650
+ stateMutability: "nonpayable",
651
+ type: "function",
652
+ },
653
+ {
654
+ inputs: [
655
+ {
656
+ components: [
657
+ {
658
+ components: [
659
+ {
660
+ internalType: "ctUint128",
661
+ name: "ciphertextHigh",
662
+ type: "uint256",
663
+ },
664
+ {
665
+ internalType: "ctUint128",
666
+ name: "ciphertextLow",
667
+ type: "uint256",
668
+ },
669
+ ],
670
+ internalType: "struct ctUint256",
671
+ name: "ciphertext",
672
+ type: "tuple",
673
+ },
674
+ {
675
+ internalType: "bytes",
676
+ name: "signature",
677
+ type: "bytes",
678
+ },
679
+ ],
680
+ internalType: "struct itUint256",
681
+ name: "amount",
682
+ type: "tuple",
683
+ },
684
+ ],
685
+ name: "burn",
686
+ outputs: [],
687
+ stateMutability: "nonpayable",
688
+ type: "function",
689
+ },
690
+ {
691
+ inputs: [
692
+ {
693
+ internalType: "gtUint256",
694
+ name: "gtAmount",
695
+ type: "uint256",
696
+ },
697
+ ],
698
+ name: "burnGt",
699
+ outputs: [],
700
+ stateMutability: "nonpayable",
701
+ type: "function",
702
+ },
703
+ {
704
+ inputs: [],
705
+ name: "decimals",
706
+ outputs: [
707
+ {
708
+ internalType: "uint8",
709
+ name: "",
710
+ type: "uint8",
711
+ },
712
+ ],
713
+ stateMutability: "view",
714
+ type: "function",
715
+ },
716
+ {
717
+ inputs: [
718
+ {
719
+ internalType: "address",
720
+ name: "spender",
721
+ type: "address",
722
+ },
723
+ {
724
+ internalType: "uint256",
725
+ name: "subtractedValue",
726
+ type: "uint256",
727
+ },
728
+ ],
729
+ name: "decreaseAllowance",
730
+ outputs: [],
731
+ stateMutability: "nonpayable",
732
+ type: "function",
733
+ },
734
+ {
735
+ inputs: [
736
+ {
737
+ internalType: "address",
738
+ name: "spender",
739
+ type: "address",
740
+ },
741
+ {
742
+ components: [
743
+ {
744
+ components: [
745
+ {
746
+ internalType: "ctUint128",
747
+ name: "ciphertextHigh",
748
+ type: "uint256",
749
+ },
750
+ {
751
+ internalType: "ctUint128",
752
+ name: "ciphertextLow",
753
+ type: "uint256",
754
+ },
755
+ ],
756
+ internalType: "struct ctUint256",
757
+ name: "ciphertext",
758
+ type: "tuple",
759
+ },
760
+ {
761
+ internalType: "bytes",
762
+ name: "signature",
763
+ type: "bytes",
764
+ },
765
+ ],
766
+ internalType: "struct itUint256",
767
+ name: "subtractedValue",
768
+ type: "tuple",
769
+ },
770
+ ],
771
+ name: "decreaseAllowance",
772
+ outputs: [],
773
+ stateMutability: "nonpayable",
774
+ type: "function",
775
+ },
776
+ {
777
+ inputs: [
778
+ {
779
+ internalType: "address",
780
+ name: "spender",
781
+ type: "address",
782
+ },
783
+ {
784
+ internalType: "gtUint256",
785
+ name: "subtractedValue",
786
+ type: "uint256",
787
+ },
788
+ ],
789
+ name: "decreaseAllowanceGT",
790
+ outputs: [],
791
+ stateMutability: "nonpayable",
792
+ type: "function",
793
+ },
794
+ {
795
+ inputs: [
796
+ {
797
+ internalType: "bytes32",
798
+ name: "role",
799
+ type: "bytes32",
800
+ },
801
+ ],
802
+ name: "getRoleAdmin",
803
+ outputs: [
804
+ {
805
+ internalType: "bytes32",
806
+ name: "",
807
+ type: "bytes32",
808
+ },
809
+ ],
810
+ stateMutability: "view",
811
+ type: "function",
812
+ },
813
+ {
814
+ inputs: [
815
+ {
816
+ internalType: "bytes32",
817
+ name: "role",
818
+ type: "bytes32",
819
+ },
820
+ {
821
+ internalType: "address",
822
+ name: "account",
823
+ type: "address",
824
+ },
825
+ ],
826
+ name: "grantRole",
827
+ outputs: [],
828
+ stateMutability: "nonpayable",
829
+ type: "function",
830
+ },
831
+ {
832
+ inputs: [
833
+ {
834
+ internalType: "bytes32",
835
+ name: "role",
836
+ type: "bytes32",
837
+ },
838
+ {
839
+ internalType: "address",
840
+ name: "account",
841
+ type: "address",
842
+ },
843
+ ],
844
+ name: "hasRole",
845
+ outputs: [
846
+ {
847
+ internalType: "bool",
848
+ name: "",
849
+ type: "bool",
850
+ },
851
+ ],
852
+ stateMutability: "view",
853
+ type: "function",
854
+ },
855
+ {
856
+ inputs: [
857
+ {
858
+ internalType: "address",
859
+ name: "spender",
860
+ type: "address",
861
+ },
862
+ {
863
+ internalType: "uint256",
864
+ name: "addedValue",
865
+ type: "uint256",
866
+ },
867
+ ],
868
+ name: "increaseAllowance",
869
+ outputs: [],
870
+ stateMutability: "nonpayable",
871
+ type: "function",
872
+ },
873
+ {
874
+ inputs: [
875
+ {
876
+ internalType: "address",
877
+ name: "spender",
878
+ type: "address",
879
+ },
880
+ {
881
+ components: [
882
+ {
883
+ components: [
884
+ {
885
+ internalType: "ctUint128",
886
+ name: "ciphertextHigh",
887
+ type: "uint256",
888
+ },
889
+ {
890
+ internalType: "ctUint128",
891
+ name: "ciphertextLow",
892
+ type: "uint256",
893
+ },
894
+ ],
895
+ internalType: "struct ctUint256",
896
+ name: "ciphertext",
897
+ type: "tuple",
898
+ },
899
+ {
900
+ internalType: "bytes",
901
+ name: "signature",
902
+ type: "bytes",
903
+ },
904
+ ],
905
+ internalType: "struct itUint256",
906
+ name: "addedValue",
907
+ type: "tuple",
908
+ },
909
+ ],
910
+ name: "increaseAllowance",
911
+ outputs: [],
912
+ stateMutability: "nonpayable",
913
+ type: "function",
914
+ },
915
+ {
916
+ inputs: [
917
+ {
918
+ internalType: "address",
919
+ name: "spender",
920
+ type: "address",
921
+ },
922
+ {
923
+ internalType: "gtUint256",
924
+ name: "addedValue",
925
+ type: "uint256",
926
+ },
927
+ ],
928
+ name: "increaseAllowanceGT",
929
+ outputs: [],
930
+ stateMutability: "nonpayable",
931
+ type: "function",
932
+ },
933
+ {
934
+ inputs: [
935
+ {
936
+ internalType: "address",
937
+ name: "to",
938
+ type: "address",
939
+ },
940
+ {
941
+ internalType: "uint256",
942
+ name: "amount",
943
+ type: "uint256",
944
+ },
945
+ ],
946
+ name: "mint",
947
+ outputs: [],
948
+ stateMutability: "nonpayable",
949
+ type: "function",
950
+ },
951
+ {
952
+ inputs: [
953
+ {
954
+ internalType: "address",
955
+ name: "to",
956
+ type: "address",
957
+ },
958
+ {
959
+ components: [
960
+ {
961
+ components: [
962
+ {
963
+ internalType: "ctUint128",
964
+ name: "ciphertextHigh",
965
+ type: "uint256",
966
+ },
967
+ {
968
+ internalType: "ctUint128",
969
+ name: "ciphertextLow",
970
+ type: "uint256",
971
+ },
972
+ ],
973
+ internalType: "struct ctUint256",
974
+ name: "ciphertext",
975
+ type: "tuple",
976
+ },
977
+ {
978
+ internalType: "bytes",
979
+ name: "signature",
980
+ type: "bytes",
981
+ },
982
+ ],
983
+ internalType: "struct itUint256",
984
+ name: "amount",
985
+ type: "tuple",
986
+ },
987
+ ],
988
+ name: "mint",
989
+ outputs: [],
990
+ stateMutability: "nonpayable",
991
+ type: "function",
992
+ },
993
+ {
994
+ inputs: [
995
+ {
996
+ internalType: "address",
997
+ name: "to",
998
+ type: "address",
999
+ },
1000
+ {
1001
+ internalType: "gtUint256",
1002
+ name: "gtAmount",
1003
+ type: "uint256",
1004
+ },
1005
+ ],
1006
+ name: "mintGt",
1007
+ outputs: [],
1008
+ stateMutability: "nonpayable",
1009
+ type: "function",
1010
+ },
1011
+ {
1012
+ inputs: [],
1013
+ name: "name",
1014
+ outputs: [
1015
+ {
1016
+ internalType: "string",
1017
+ name: "",
1018
+ type: "string",
1019
+ },
1020
+ ],
1021
+ stateMutability: "view",
1022
+ type: "function",
1023
+ },
1024
+ {
1025
+ inputs: [],
1026
+ name: "publicAmountsEnabled",
1027
+ outputs: [
1028
+ {
1029
+ internalType: "bool",
1030
+ name: "",
1031
+ type: "bool",
1032
+ },
1033
+ ],
1034
+ stateMutability: "view",
1035
+ type: "function",
1036
+ },
1037
+ {
1038
+ inputs: [
1039
+ {
1040
+ internalType: "address",
1041
+ name: "account",
1042
+ type: "address",
1043
+ },
1044
+ {
1045
+ internalType: "bool",
1046
+ name: "isSpender",
1047
+ type: "bool",
1048
+ },
1049
+ ],
1050
+ name: "reencryptAllowance",
1051
+ outputs: [],
1052
+ stateMutability: "nonpayable",
1053
+ type: "function",
1054
+ },
1055
+ {
1056
+ inputs: [
1057
+ {
1058
+ internalType: "bytes32",
1059
+ name: "role",
1060
+ type: "bytes32",
1061
+ },
1062
+ {
1063
+ internalType: "address",
1064
+ name: "callerConfirmation",
1065
+ type: "address",
1066
+ },
1067
+ ],
1068
+ name: "renounceRole",
1069
+ outputs: [],
1070
+ stateMutability: "nonpayable",
1071
+ type: "function",
1072
+ },
1073
+ {
1074
+ inputs: [
1075
+ {
1076
+ internalType: "bytes32",
1077
+ name: "role",
1078
+ type: "bytes32",
1079
+ },
1080
+ {
1081
+ internalType: "address",
1082
+ name: "account",
1083
+ type: "address",
1084
+ },
1085
+ ],
1086
+ name: "revokeRole",
1087
+ outputs: [],
1088
+ stateMutability: "nonpayable",
1089
+ type: "function",
1090
+ },
1091
+ {
1092
+ inputs: [
1093
+ {
1094
+ internalType: "address",
1095
+ name: "offBoardAddress",
1096
+ type: "address",
1097
+ },
1098
+ ],
1099
+ name: "setAccountEncryptionAddress",
1100
+ outputs: [
1101
+ {
1102
+ internalType: "bool",
1103
+ name: "",
1104
+ type: "bool",
1105
+ },
1106
+ ],
1107
+ stateMutability: "nonpayable",
1108
+ type: "function",
1109
+ },
1110
+ {
1111
+ inputs: [
1112
+ {
1113
+ internalType: "bool",
1114
+ name: "enabled",
1115
+ type: "bool",
1116
+ },
1117
+ ],
1118
+ name: "setPublicAmountsEnabled",
1119
+ outputs: [],
1120
+ stateMutability: "nonpayable",
1121
+ type: "function",
1122
+ },
1123
+ {
1124
+ inputs: [],
1125
+ name: "supplyCap",
1126
+ outputs: [
1127
+ {
1128
+ internalType: "uint256",
1129
+ name: "",
1130
+ type: "uint256",
1131
+ },
1132
+ ],
1133
+ stateMutability: "view",
1134
+ type: "function",
1135
+ },
1136
+ {
1137
+ inputs: [
1138
+ {
1139
+ internalType: "bytes4",
1140
+ name: "interfaceId",
1141
+ type: "bytes4",
1142
+ },
1143
+ ],
1144
+ name: "supportsInterface",
1145
+ outputs: [
1146
+ {
1147
+ internalType: "bool",
1148
+ name: "",
1149
+ type: "bool",
1150
+ },
1151
+ ],
1152
+ stateMutability: "view",
1153
+ type: "function",
1154
+ },
1155
+ {
1156
+ inputs: [],
1157
+ name: "symbol",
1158
+ outputs: [
1159
+ {
1160
+ internalType: "string",
1161
+ name: "",
1162
+ type: "string",
1163
+ },
1164
+ ],
1165
+ stateMutability: "view",
1166
+ type: "function",
1167
+ },
1168
+ {
1169
+ inputs: [],
1170
+ name: "totalSupply",
1171
+ outputs: [
1172
+ {
1173
+ internalType: "uint256",
1174
+ name: "",
1175
+ type: "uint256",
1176
+ },
1177
+ ],
1178
+ stateMutability: "view",
1179
+ type: "function",
1180
+ },
1181
+ {
1182
+ inputs: [
1183
+ {
1184
+ internalType: "address",
1185
+ name: "to",
1186
+ type: "address",
1187
+ },
1188
+ {
1189
+ components: [
1190
+ {
1191
+ components: [
1192
+ {
1193
+ internalType: "ctUint128",
1194
+ name: "ciphertextHigh",
1195
+ type: "uint256",
1196
+ },
1197
+ {
1198
+ internalType: "ctUint128",
1199
+ name: "ciphertextLow",
1200
+ type: "uint256",
1201
+ },
1202
+ ],
1203
+ internalType: "struct ctUint256",
1204
+ name: "ciphertext",
1205
+ type: "tuple",
1206
+ },
1207
+ {
1208
+ internalType: "bytes",
1209
+ name: "signature",
1210
+ type: "bytes",
1211
+ },
1212
+ ],
1213
+ internalType: "struct itUint256",
1214
+ name: "value",
1215
+ type: "tuple",
1216
+ },
1217
+ ],
1218
+ name: "transfer",
1219
+ outputs: [],
1220
+ stateMutability: "nonpayable",
1221
+ type: "function",
1222
+ },
1223
+ {
1224
+ inputs: [
1225
+ {
1226
+ internalType: "address",
1227
+ name: "to",
1228
+ type: "address",
1229
+ },
1230
+ {
1231
+ internalType: "uint256",
1232
+ name: "value",
1233
+ type: "uint256",
1234
+ },
1235
+ ],
1236
+ name: "transfer",
1237
+ outputs: [],
1238
+ stateMutability: "nonpayable",
1239
+ type: "function",
1240
+ },
1241
+ {
1242
+ inputs: [
1243
+ {
1244
+ internalType: "address",
1245
+ name: "to",
1246
+ type: "address",
1247
+ },
1248
+ {
1249
+ components: [
1250
+ {
1251
+ components: [
1252
+ {
1253
+ internalType: "ctUint128",
1254
+ name: "ciphertextHigh",
1255
+ type: "uint256",
1256
+ },
1257
+ {
1258
+ internalType: "ctUint128",
1259
+ name: "ciphertextLow",
1260
+ type: "uint256",
1261
+ },
1262
+ ],
1263
+ internalType: "struct ctUint256",
1264
+ name: "ciphertext",
1265
+ type: "tuple",
1266
+ },
1267
+ {
1268
+ internalType: "bytes",
1269
+ name: "signature",
1270
+ type: "bytes",
1271
+ },
1272
+ ],
1273
+ internalType: "struct itUint256",
1274
+ name: "amount",
1275
+ type: "tuple",
1276
+ },
1277
+ {
1278
+ internalType: "bytes",
1279
+ name: "data",
1280
+ type: "bytes",
1281
+ },
1282
+ ],
1283
+ name: "transferAndCall",
1284
+ outputs: [],
1285
+ stateMutability: "nonpayable",
1286
+ type: "function",
1287
+ },
1288
+ {
1289
+ inputs: [
1290
+ {
1291
+ internalType: "address",
1292
+ name: "to",
1293
+ type: "address",
1294
+ },
1295
+ {
1296
+ internalType: "uint256",
1297
+ name: "amount",
1298
+ type: "uint256",
1299
+ },
1300
+ {
1301
+ internalType: "bytes",
1302
+ name: "data",
1303
+ type: "bytes",
1304
+ },
1305
+ ],
1306
+ name: "transferAndCall",
1307
+ outputs: [],
1308
+ stateMutability: "nonpayable",
1309
+ type: "function",
1310
+ },
1311
+ {
1312
+ inputs: [
1313
+ {
1314
+ internalType: "address",
1315
+ name: "from",
1316
+ type: "address",
1317
+ },
1318
+ {
1319
+ internalType: "address",
1320
+ name: "to",
1321
+ type: "address",
1322
+ },
1323
+ {
1324
+ internalType: "uint256",
1325
+ name: "value",
1326
+ type: "uint256",
1327
+ },
1328
+ ],
1329
+ name: "transferFrom",
1330
+ outputs: [],
1331
+ stateMutability: "nonpayable",
1332
+ type: "function",
1333
+ },
1334
+ {
1335
+ inputs: [
1336
+ {
1337
+ internalType: "address",
1338
+ name: "from",
1339
+ type: "address",
1340
+ },
1341
+ {
1342
+ internalType: "address",
1343
+ name: "to",
1344
+ type: "address",
1345
+ },
1346
+ {
1347
+ components: [
1348
+ {
1349
+ components: [
1350
+ {
1351
+ internalType: "ctUint128",
1352
+ name: "ciphertextHigh",
1353
+ type: "uint256",
1354
+ },
1355
+ {
1356
+ internalType: "ctUint128",
1357
+ name: "ciphertextLow",
1358
+ type: "uint256",
1359
+ },
1360
+ ],
1361
+ internalType: "struct ctUint256",
1362
+ name: "ciphertext",
1363
+ type: "tuple",
1364
+ },
1365
+ {
1366
+ internalType: "bytes",
1367
+ name: "signature",
1368
+ type: "bytes",
1369
+ },
1370
+ ],
1371
+ internalType: "struct itUint256",
1372
+ name: "value",
1373
+ type: "tuple",
1374
+ },
1375
+ ],
1376
+ name: "transferFrom",
1377
+ outputs: [],
1378
+ stateMutability: "nonpayable",
1379
+ type: "function",
1380
+ },
1381
+ {
1382
+ inputs: [
1383
+ {
1384
+ internalType: "address",
1385
+ name: "from",
1386
+ type: "address",
1387
+ },
1388
+ {
1389
+ internalType: "address",
1390
+ name: "to",
1391
+ type: "address",
1392
+ },
1393
+ {
1394
+ internalType: "gtUint256",
1395
+ name: "value",
1396
+ type: "uint256",
1397
+ },
1398
+ ],
1399
+ name: "transferFromGT",
1400
+ outputs: [],
1401
+ stateMutability: "nonpayable",
1402
+ type: "function",
1403
+ },
1404
+ {
1405
+ inputs: [
1406
+ {
1407
+ internalType: "address",
1408
+ name: "to",
1409
+ type: "address",
1410
+ },
1411
+ {
1412
+ internalType: "gtUint256",
1413
+ name: "value",
1414
+ type: "uint256",
1415
+ },
1416
+ ],
1417
+ name: "transferGT",
1418
+ outputs: [],
1419
+ stateMutability: "nonpayable",
1420
+ type: "function",
1421
+ },
1422
+ ] as const;
1423
+
1424
+ const _bytecode =
1425
+ "0x608034620003435760406001600160401b0382820181811184821017620002445782526012835260209071141c9a5d985d194815195d1a195c881554d160721b82850152825193838501858110838211176200024457845260068552651c0b9554d11560d21b838601526001928380558151156200033257855115620003325781518381116200024457600854928584811c9416801562000327575b8385101462000223578190601f94858111620002d0575b50839085831160011462000266576000926200025a575b5050600019600383901b1c191690851b176008555b855192831162000244576009548481811c9116801562000239575b828210146200022357828111620001d7575b50809183116001146200016c57508192939460009262000160575b5050600019600383901b1c191690821b176009555b620001463362000348565b5060ff196002541617600255516137b79081620003da8239f35b01519050388062000126565b90601f19831695600960005282600020926000905b888210620001bf5750508385969710620001a5575b505050811b016009556200013b565b015160001960f88460031b161c1916905538808062000196565b80878596829496860151815501950193019062000181565b6009600052816000208380860160051c82019284871062000219575b0160051c019085905b8281106200020c5750506200010b565b60008155018590620001fc565b92508192620001f3565b634e487b7160e01b600052602260045260246000fd5b90607f1690620000f9565b634e487b7160e01b600052604160045260246000fd5b015190503880620000c9565b90879350601f198316916008600052856000209260005b87828210620002b957505084116200029f575b505050811b01600855620000de565b015160001960f88460031b161c1916905538808062000290565b8385015186558b979095019493840193016200027d565b9091506008600052836000208580850160051c8201928686106200031d575b918991869594930160051c01915b8281106200030d575050620000b2565b60008155859450899101620002fd565b92508192620002ef565b93607f16936200009b565b8451631251828960e31b8152600490fd5b600080fd5b6001600160a01b031660008181527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604081205490919060ff16620003d557818052816020526040822081835260205260408220600160ff1982541617905533917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b509056fe6040608081526004908136101561001557600080fd5b600091823560e01c80620a77ed146119ee57806301ffc9a714611918578063043d2085146118b15780630564c4cf1461182e57806306fdde0314611761578063095ea7b31461164657806318160ddd146107db57806323b872dd14611560578063248a9ca31461153757806326a9b3f1146113d05780632f2ff15d146113a7578063313ce5671461138b57806336568abe1461131e5780633826c580146111f257806338e071bc146111a6578063395093511461114d5780633c96e77c146110895780634000aea014610eef57806340c10f1914610e8e57806342966c6814610e5a5780634faa7ebf14610e365780635d484ff814610cf957806368c7a25d14610ca557806370a0823114610c1e578063722713f714610bf75780638269bcc314610b0157806383ae57f414610ab957806384813e9314610a665780638e532c4414610a0c5780638f770ad0146109d157806391d148541461098057806395d89b411461082b57806396b2db38146107f6578063a217fddf146107db578063a457c2d714610782578063a9059cbb146106fc578063b485441d146106ad578063b935980914610632578063c183b7fc146105d0578063d184683614610500578063d5391393146104c1578063d547741f14610483578063dd62ed3e14610308578063e4f75ce71461028a5763fb2205ca1461020f57600080fd5b346102865761021d36611afa565b919092610228611b4d565b610230611df9565b73ffffffffffffffffffffffffffffffffffffffff84161561027057846102698561026361025e3688611e34565b6131c8565b90612532565b6001805580f35b9084602492519163ec442f0560e01b8352820152fd5b8280fd5b50346102865761029936611afa565b9190926102a4611df9565b73ffffffffffffffffffffffffffffffffffffffff8416156102d95784610269856102d261025e3688611e34565b9033612b3f565b908460249251917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b509034610286578060031936011261028657610322611a14565b9061032b611a3c565b81519261033784611d51565b82519361034385611d9c565b86855260209487868201528152835161035b81611d9c565b8781528786820152858201528380519161037483611d9c565b8883528887840152015273ffffffffffffffffffffffffffffffffffffffff809116918215610454571690811561042557858492849260c0985260058452828220908252835220916103ef8151956103cb87611d51565b6103d485611fb2565b87526103e260028601611fb2565b9484880195865201611fb2565b928186019384528282519651805188520151838701525190815190860152015160608401525180516080840152015160a0820152f35b602485878551917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b602486888651917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b5090346102865780600319360112610286576104bd91356104b860016104a7611a3c565b938387528660205286200154611be0565b611cb0565b5080f35b5050346104fc57816003193601126104fc57602090517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b5080fd5b509034610286576020600319360112610286578135918215158093036105cc578380528360205281842033855260205260ff82852054161561059757507fd42670144ecdb96470ba224c43350a54c3f4a1890e72b2a470a689962b9f3c4f916020917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff006002541660ff83161760025551908152a180f35b8360449251917fe2517d3f00000000000000000000000000000000000000000000000000000000835233908301526024820152fd5b8380fd5b50346102865781600319360112610286576105e9611a14565b916105f2611df9565b73ffffffffffffffffffffffffffffffffffffffff83161561061c578361026960243585336120bb565b9083602492519163ec442f0560e01b8352820152fd5b503461028657816003193601126102865761064b611a14565b91610654611df9565b73ffffffffffffffffffffffffffffffffffffffff83161561067e57836102696024358533612c70565b908360249251917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b5034610286576106bc36611afa565b9190926106c7611df9565b73ffffffffffffffffffffffffffffffffffffffff8416156102d95784610269856106f561025e3688611e34565b9033612c70565b5034610286578160031936011261028657610715611a14565b9161071e611df9565b73ffffffffffffffffffffffffffffffffffffffff83161561061c5760ff600254161561075c5783610269846107556024356134c0565b90336120bb565b517fa25be20b000000000000000000000000000000000000000000000000000000008152fd5b503461028657816003193601126102865761079b611a14565b916107a4611df9565b73ffffffffffffffffffffffffffffffffffffffff83161561067e5760ff600254161561075c5783610269846106f56024356134c0565b5050346104fc57816003193601126104fc5751908152602090f35b5050346104fc57806003193601126104fc57602090610824610816611a14565b61081e611abd565b90611fd0565b9051908152f35b50913461097d578060031936011261097d578151918160095492600184811c91818616958615610973575b6020968785108114610947578899509688969785829a5291826000146109025750506001146108a6575b5050506108a29291610893910385611db8565b51928284938452830190611a5f565b0390f35b9190869350600983527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af5b8284106108ea57505050820101816108936108a2610880565b8054848a0186015288955087949093019281016108d1565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168782015293151560051b8601909301935084925061089391506108a29050610880565b60248360228c7f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b92607f1692610856565b80fd5b50346102865781600319360112610286578160209360ff926109a0611a3c565b9035825281865273ffffffffffffffffffffffffffffffffffffffff83832091168252855220541690519015158152f35b5050346104fc57816003193601126104fc57602090517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8152f35b503461028657610a1b36611afa565b919092610a26611df9565b73ffffffffffffffffffffffffffffffffffffffff8416156102d9578461026985610a5461025e3688611e34565b90610a608282336129f4565b33612da6565b5034610286578160031936011261028657610a7f611a14565b91610a88611b4d565b610a90611df9565b73ffffffffffffffffffffffffffffffffffffffff83161561061c578361026960243585612532565b503461028657610ac836611afa565b919092610ad3611df9565b73ffffffffffffffffffffffffffffffffffffffff84161561027057846102698561075561025e3688611e34565b508290346104fc576020928360031936011261028657610b1f611a14565b91610b28611df9565b73ffffffffffffffffffffffffffffffffffffffff8316928315610be157610b6890338652828752610b63610b5e858820611fb2565b612f48565b61336e565b9033855260038652828520847fffffffffffffffffffffffff000000000000000000000000000000000000000082541617905585526003858386209280516002850155015191015551917f60662088d92b75bf198cd91648eaec81fc2278e7a02f3cf02643637be4728c24339180a36001805560018152f35b5083602492519163ec442f0560e01b8352820152fd5b5034610286578260031936011261028657610b5e8260209461082493338252865220611fb2565b508290346104fc5760206003193601126104fc5773ffffffffffffffffffffffffffffffffffffffff610c4f611a14565b8360208651610c5d81611d9c565b8281520152168015610c8f578252602052819020610c7d90600201611fb2565b60208251918051835201516020820152f35b5090602492519163ec442f0560e01b8352820152fd5b8382346104fc57600319906020823601126102865780359167ffffffffffffffff83116105cc5760609083360301126102865761025e610cf39161026993610ceb611df9565b369101611e34565b33612799565b508290346104fc576003199060608236011261028657610d17611a14565b610d1f611a3c565b916044359367ffffffffffffffff8511610e32576060908536030112610e2e57610d47611df9565b73ffffffffffffffffffffffffffffffffffffffff93848316948515610dff57841615610de957610b5e6102699697610d8c61025e610de495610da495369101611e34565b9689526005602052808920338a526020528820611fb2565b610ddb610db082613715565b610dd1610dd6610dd1610dcb610dc68b88613635565b61315d565b8461307f565b6130c9565b612056565b90853385612f2d565b6120bb565b6024828789519163ec442f0560e01b8352820152fd5b602483888a51917f96c6fd1e000000000000000000000000000000000000000000000000000000008352820152fd5b8480fd5b8580fd5b5050346104fc57816003193601126104fc5760209060ff6002541690519015158152f35b50903461028657602060031936011261028657610e75611df9565b60ff600254161561075c5750610cf361026991356134c0565b5034610286578160031936011261028657610ea7611a14565b91610eb0611b4d565b610eb8611df9565b73ffffffffffffffffffffffffffffffffffffffff83161561061c5760ff600254161561075c5783610269846102636024356134c0565b503461028657606060031936011261028657610f09611a14565b6024359060443567ffffffffffffffff8111610e3257610f2c9036908501611acc565b929093610f37611df9565b73ffffffffffffffffffffffffffffffffffffffff831692831561107357803b156110445760ff600254161561101c578291610f7b899261075560209897966134c0565b610fc58851978896879586947fbed2554200000000000000000000000000000000000000000000000000000000865233908601526024850152606060448501526064840191611f0e565b03925af19081156110105761026992508391610fe2575b50611f4d565b611003915060203d8111611009575b610ffb8183611db8565b810190611ef6565b38610fdc565b503d610ff1565b505051903d90823e3d90fd5b5085517fa25be20b000000000000000000000000000000000000000000000000000000008152fd5b602482858951917f7ca756dc000000000000000000000000000000000000000000000000000000008352820152fd5b6024828989519163ec442f0560e01b8352820152fd5b508290346104fc5760606003193601126104fc576110a5611a14565b6110ad611a3c565b90604435926110ba611df9565b73ffffffffffffffffffffffffffffffffffffffff9081831691821561111e578416156111085750610da4610b5e8697610de49361026998526005602052808920338a526020528820611fb2565b6024908688519163ec442f0560e01b8352820152fd5b602482888a51917f96c6fd1e000000000000000000000000000000000000000000000000000000008352820152fd5b5034610286578160031936011261028657611166611a14565b9161116f611df9565b73ffffffffffffffffffffffffffffffffffffffff83161561067e5760ff600254161561075c5783610269846102d26024356134c0565b50346102865781600319360112610286576111bf611a14565b916111c8611df9565b73ffffffffffffffffffffffffffffffffffffffff83161561067e57836102696024358533612b3f565b5034610286576003196060813601126105cc5761120d611a14565b916024359167ffffffffffffffff9081841161131a576060908436030112610e3257604435908111610e32576112469036908301611acc565b919093611251611df9565b73ffffffffffffffffffffffffffffffffffffffff811693841561130457813b156112d55760209492611294610fc597959361075561025e8c9536908601611e34565b8751968795869485937f2ac65e4e00000000000000000000000000000000000000000000000000000000855233908501528a60248501526044840191611f0e565b602483868951917f7ca756dc000000000000000000000000000000000000000000000000000000008352820152fd5b6024838989519163ec442f0560e01b8352820152fd5b8680fd5b509190346104fc57806003193601126104fc57611339611a3c565b903373ffffffffffffffffffffffffffffffffffffffff83160361136357506104bd919235611cb0565b8390517f6697b232000000000000000000000000000000000000000000000000000000008152fd5b5050346104fc57816003193601126104fc576020905160068152f35b5090346102865780600319360112610286576104bd91356113cb60016104a7611a3c565b611c06565b508290346104fc57826003193601126104fc576113eb611a14565b926113f4611abd565b916113fd611df9565b73ffffffffffffffffffffffffffffffffffffffff9182861691821561152257611426336123e0565b908482161561150c578697866000146114a8579285939260056020809794611489857fb4f3d65fffdf9e90f369eef21114568cc4ebe6bc1853767f497f0c6efbfd0e169b989d3398815285855281812089825285522094610b63610b5e87611fb2565b9081519085015501519101555b51951515865216941692a36001805580f35b9650509260209281927fb4f3d65fffdf9e90f369eef21114568cc4ebe6bc1853767f497f0c6efbfd0e1695339892898b5260058752828b20908b5286526003866114fb848d2093610b63610b5e86611fb2565b805160028501550151910155611496565b6024908784519163ec442f0560e01b8352820152fd5b85602492519163ec442f0560e01b8352820152fd5b503461028657602060031936011261028657816020936001923581528085522001549051908152f35b508290346104fc5760606003193601126104fc5761157c611a14565b611584611a3c565b9061158d611df9565b60ff600254161561161e5773ffffffffffffffffffffffffffffffffffffffff928382169384156115ef578316156115d95750610de4610da4610b5e6102699697610d8c6044356134c0565b6024908587519163ec442f0560e01b8352820152fd5b602482878951917f96c6fd1e000000000000000000000000000000000000000000000000000000008352820152fd5b8285517fa25be20b000000000000000000000000000000000000000000000000000000008152fd5b509034610286578060031936011261028657611660611a14565b916024359161166d611df9565b73ffffffffffffffffffffffffffffffffffffffff841680156117325760ff600254161561170b57836116b0575b85610269866116a9876134c0565b9033612da6565b33865260056020528186209086526020526116da610dd16116d5610b5e848920611fb2565b61369e565b156116e5578061169b565b517f288ade40000000000000000000000000000000000000000000000000000000008152fd5b50517fa25be20b000000000000000000000000000000000000000000000000000000008152fd5b602483878451917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b50913461097d578060031936011261097d578151918160085492600184811c91818616958615611824575b6020968785108114610947578899509688969785829a5291826000146109025750506001146117c8575050506108a29291610893910385611db8565b9190869350600883527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee35b82841061180c57505050820101816108936108a2610880565b8054848a0186015288955087949093019281016117f3565b92607f169261178c565b508290346104fc57826003193601126104fc57611849611a14565b60243591611855611df9565b73ffffffffffffffffffffffffffffffffffffffff82161561188257509081610a608261026994336129f4565b602490848651917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b50823461097d57602060031936011261097d5773ffffffffffffffffffffffffffffffffffffffff91826118e3611a14565b1690811561190257602085858186868152600385522054169051908152f35b6024908386519163ec442f0560e01b8352820152fd5b50346102865760206003193601126102865735907fffffffff00000000000000000000000000000000000000000000000000000000821680920361028657602092507f479eaff400000000000000000000000000000000000000000000000000000000821491821561198e575b50519015158152f35b9091507f7965db0b0000000000000000000000000000000000000000000000000000000081149081156119c4575b509038611985565b7f01ffc9a700000000000000000000000000000000000000000000000000000000915014386119bc565b8382346104fc5760206003193601126104fc5761026990611a0d611df9565b3533612799565b6004359073ffffffffffffffffffffffffffffffffffffffff82168203611a3757565b600080fd5b6024359073ffffffffffffffffffffffffffffffffffffffff82168203611a3757565b919082519283825260005b848110611aa95750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006020809697860101520116010190565b602081830181015184830182015201611a6a565b602435908115158203611a3757565b9181601f84011215611a375782359167ffffffffffffffff8311611a375760208381860195010111611a3757565b90600319604081840112611a375760043573ffffffffffffffffffffffffffffffffffffffff81168103611a3757926024359167ffffffffffffffff8311611a375782606092030112611a375760040190565b3360009081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c60205260409020547f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a69060ff1615611ba95750565b604490604051907fe2517d3f0000000000000000000000000000000000000000000000000000000082523360048301526024820152fd5b80600052600060205260406000203360005260205260ff6040600020541615611ba95750565b906000918083528260205273ffffffffffffffffffffffffffffffffffffffff6040842092169182845260205260ff60408420541615600014611cab5780835282602052604083208284526020526040832060017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b906000918083528260205273ffffffffffffffffffffffffffffffffffffffff6040842092169182845260205260ff604084205416600014611cab578083528260205260408320828452602052604083207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b6060810190811067ffffffffffffffff821117611d6d57604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040810190811067ffffffffffffffff821117611d6d57604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117611d6d57604052565b600260015414611e0a576002600155565b60046040517f3ee5aeb5000000000000000000000000000000000000000000000000000000008152fd5b91908281039260608412611a3757604051611e4e81611d9c565b6040819512611a375760405191611e6483611d9c565b8035835260209283820135848201528252604081013567ffffffffffffffff91828211611a37570184601f82011215611a37578035918211611d6d5760405194611ed5857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8601160187611db8565b828652848383010111611a3757816000928580930183880137850101520152565b90816020910312611a3757518015158103611a375790565b601f82602094937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0938186528686013760008582860101520116010190565b15611f5457565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f43616c6c6261636b206661696c656400000000000000000000000000000000006044820152fd5b90604051611fbf81611d9c565b602060018294805484520154910152565b73ffffffffffffffffffffffffffffffffffffffff1690811561203e5715612019576000526005602052604060002033600052602052612016610b5e6040600020611fb2565b90565b336000526005602052604060002090600052602052612016610b5e6040600020611fb2565b602460405163ec442f0560e01b815260006004820152fd5b1561205d57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152fd5b929173ffffffffffffffffffffffffffffffffffffffff9081851680156123af5782841690811561203e5781811461237e5782966000958287526020966004885260409661210d610b5e898420611fb2565b9a86835260048a52612123610b5e8a8520611fb2565b978860448b519e8f907f56c72d280000000000000000000000000000000000000000000000000000000082527f060606000000000000000000000000000000000000000000000000000000000060048301526024820152015260648d015260608c6084818660645af19788156123745783908490859a612334575b6121ca9b9c9d9e506121af8b6130c9565b928361230b575b505050612230575b505050505050506130c9565b156121d3575050565b6064925051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152601460248201527f45524332303a20757064617465206661696c65640000000000000000000000006044820152fd5b61226c7f51d0ad1c942bf69951ef3f74b4b135c487a07fcefe7c0247e1940b708654c5a395848d8d5161226281611d9c565b82815201526123e0565b808316156122ee57612281612290918361336e565b945b848d8d5161226281611d9c565b918216156122d3576122a2925061336e565b905b87518151815260209182015182820152825160408201529101516060820152608090a3388080808080806121be565b50508751906122e182611d9c565b80825289820152906122a4565b506122908a516122fd81611d9c565b848152848d82015294612283565b61232c9294509061231f612325928a612431565b846135cc565b9286612431565b3880806121b6565b9950505060608c3d821161236c575b8161235060609383611db8565b81010312610286578b518a8d01519c8a01519b9c8d9c9961219e565b3d9150612343565b89513d85823e3d90fd5b602490604051907fa26ce2e10000000000000000000000000000000000000000000000000000000082526004820152fd5b60246040517f96c6fd1e00000000000000000000000000000000000000000000000000000000815260006004820152fd5b73ffffffffffffffffffffffffffffffffffffffff808216801561242957600052600360205260406000205416908115612418575090565b8091503b6124235790565b50600090565b505050600090565b9060039061243e836123e0565b73ffffffffffffffffffffffffffffffffffffffff91908281166124b35750612466906132a9565b92166000928184526004602052600160206040862092805184550151910155604080519361249385611d9c565b808552602085019281845281526004602052209251600284015551910155565b9160408051956124c287611d9c565b8151926124ce84611d9c565b60009182855261250c60209786858a809901528b52868b019786516124f281611d9c565b86815286898201528952612505816132a9565b8c5261336e565b865216815260048352209451805186550151600185015551805160028501550151910155565b91909173ffffffffffffffffffffffffffffffffffffffff90818116801561203e576125859060008181526020946004865260409461257e89612579610b5e898720611fb2565b613530565b959061315d565b986125b36125ac826125798a5161259b81611d9c565b60065481526007548d820152612f48565b919061315d565b8851907f145fca2c0000000000000000000000000000000000000000000000000000000082527f060602000000000000000000000000000000000000000000000000000000000060048301528260248301527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60448301528a826064818a825af191821561278f57879261275e575b508a9b9c6126596121ca9b9c949361265f9361301f565b9061301f565b97612669896130c9565b928361273a575b505050612682575b50505050506130c9565b7f51d0ad1c942bf69951ef3f74b4b135c487a07fcefe7c0247e1940b708654c5a392848a8a516126b181611d9c565b82815201526126da8951936126c585611d9c565b868552868c860152868c8c5161226281611d9c565b9081161561271f576126eb9161336e565b905b8751815181526020918201518282015282516040820152910151606082015280608081015b0390a33880808080612678565b5050865161272c81611d9c565b8381528389820152906126ed565b612746612756936132a9565b8051600655015160075584612431565b38808b612670565b9091508a81813d8311612788575b6127768183611db8565b8101031261131a5751906121ca612642565b503d61276c565b8a513d89823e3d90fd5b919073ffffffffffffffffffffffffffffffffffffffff908184169081156123af578091600090808252602094600486526040946127db610b5e878620611fb2565b986127e461344e565b9587519a7f56c72d28000000000000000000000000000000000000000000000000000000008c527f060606000000000000000000000000000000000000000000000000000000000060048d015260248c01528660448c015260648b015260608a6084818860645af19586156129ea5785908687986129a9575b6121ca999a9b9c5061286e896130c9565b9283612955575b5050506128865750505050506130c9565b61289790858a8a5161226281611d9c565b9182161561291a577f51d0ad1c942bf69951ef3f74b4b135c487a07fcefe7c0247e1940b708654c5a3916128ca9161336e565b838888516128d781611d9c565b82815201528651906128e882611d9c565b848252888201859052875181518152602091820151828201528251604082015291015160608201528060808101612712565b50507f51d0ad1c942bf69951ef3f74b4b135c487a07fcefe7c0247e1940b708654c5a3855161294881611d9c565b83815283888201526128ca565b61296a9395506129659085612431565b6135cc565b9189612997612992856129658d5161298181611d9c565b600654815260075486820152612f48565b6132a9565b80516006550151600755388080612875565b5096505060608a3d82116129e2575b816129c560609383611db8565b81010312610e2e578951888b01519a880151999a8b9a979061285d565b3d91506129b8565b87513d87823e3d90fd5b9190612a6891612a0261344e565b6040517f7c12a1eb0000000000000000000000000000000000000000000000000000000081527f06060000000000000000000000000000000000000000000000000000000000006004820152602481019290925260448201529160209083906064820190565b03928181600095818760645af18015612b34578490612b05575b612a8c91506130c9565b612aff576040610dd1936116d593610b5e93612ace9773ffffffffffffffffffffffffffffffffffffffff809116845260058252848420921683525220611fb2565b15612ad557565b60046040517f288ade40000000000000000000000000000000000000000000000000000000008152fd5b50505050565b508181813d8311612b2d575b612b1b8183611db8565b810103126105cc57612a8c9051612a82565b503d612b11565b6040513d86823e3d90fd5b919073ffffffffffffffffffffffffffffffffffffffff808416908115612c3f578216908115612c0e57610dd193612ba092612b99926000526005602052604060002090600052602052612579610b5e6040600020611fb2565b939061315d565b15612bb057612bae92612da6565b565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f45524332303a20616c6c6f77616e6365206f766572666c6f77000000000000006044820152fd5b60246040517f94280d6200000000000000000000000000000000000000000000000000000000815260006004820152fd5b60246040517fe602df0500000000000000000000000000000000000000000000000000000000815260006004820152fd5b9092919273ffffffffffffffffffffffffffffffffffffffff91828116928315612c3f578216928315612c0e57612d2d93600091825260056020526040968791828420908452602052612cc7610b5e838520611fb2565b825196879283927fce8c713d000000000000000000000000000000000000000000000000000000008452600484016040909392919360608101947f0606000000000000000000000000000000000000000000000000000000000000825260208201520152565b03818460645af1938415612d9a57612bae95968295612d5d575b5050610dd6610dd1612d589261315d565b612da6565b610dd19550612d589250610dd69181612d8a92903d10612d93575b612d828183611db8565b810190613293565b95909250612d47565b503d612d78565b508551903d90823e3d90fd5b9173ffffffffffffffffffffffffffffffffffffffff808416928315612c3f57818116948515612c0e5783612ef3916005612e0a612e047f836b0bdb95065391d1c4c568d3e48559e54d5969d06d7ea87f85869e1ef69dc8986132a9565b926123e0565b95600093612e44604095865199612e208b611d9c565b818b5260209a8b0182905280851615612f1357612e3e91508361336e565b976123e0565b90600092838a8851612e5581611d9c565b8281520152821615612ef857612e6b925061336e565b955b835192612e7984611d51565b835280830186815281858501918983528b600052848252866000208d6000528252818760002096518051885501516001870155518051600287015501516003850155518051600485015501519101555192839283909291602060609181608085019680518652015182850152805160408501520151910152565b0390a3565b5050835190612f0682611d9c565b8082528782015295612e6d565b50865190612f2082611d9c565b8082528a820152976123e0565b92909193612aff57612bae93612f42916135cc565b91612da6565b80511580613013575b61300a5760208151910151604051917f2d5831350000000000000000000000000000000000000000000000000000000083527f06000000000000000000000000000000000000000000000000000000000000006004840152602483015260448201526020816064816000825af1908115612ffe57600091612fd0575090565b906020823d8211612ff6575b81612fe960209383611db8565b8101031261097d57505190565b3d9150612fdc565b6040513d6000823e3d90fd5b5061201661344e565b50602081015115612f51565b6040517ffe9c73d1000000000000000000000000000000000000000000000000000000008152600060048201526024810191909152604481019190915260208180606481015b0381600060645af1908115612ffe57600091612fd0575090565b6040517ffb7da35f00000000000000000000000000000000000000000000000000000000815260006004820152602481019190915260448101919091526020818060648101613065565b6040517f0cfed56100000000000000000000000000000000000000000000000000000000815260009182600483015260248201526020816044818560645af191821561315157809261311d575b5050151590565b9091506020823d8211613149575b8161313860209383611db8565b8101031261097d5750513880613116565b3d915061312b565b604051903d90823e3d90fd5b6040517f1d79e49a00000000000000000000000000000000000000000000000000000000815260009182600483015260248201526020816044818560645af19182156131515780926131ae57505090565b9091506020823d8211612ff65781612fe960209383611db8565b8051908151916020918280809301519101519361324a60405195869384937f0135e4660000000000000000000000000000000000000000000000000000000085527f0600000000000000000000000000000000000000000000000000000000000000600486015260248501526044840152608060648401526084830190611a5f565b0381600060645af1908115612ffe57600091613267575b50905090565b82813d831161328c575b61327b8183611db8565b8101031261097d5750518038613261565b503d613271565b9190826040910312611a37576020825192015190565b602090604080516132b981611d9c565b600093818580935201528051917f1f4491de0000000000000000000000000000000000000000000000000000000083527f06000000000000000000000000000000000000000000000000000000000000006004840152602483015280826044818660645af1918215613364578392613342575b50519161333883611d9c565b8252602082015290565b9080935061335c92503d8411612d9357612d828183611db8565b90913861332c565b81513d85823e3d90fd5b6040805160209361342e93839261338481611d9c565b600096818880935201527fffffffffffffffffffffffffffffffffffffffff00000000000000000000000083519260601b166020830152601482526133c882611d9c565b825194859283927fe5c833130000000000000000000000000000000000000000000000000000000084527f060000000000000000000000000000000000000000000000000000000000000060048501526024840152606060448401526064830190611a5f565b03818660645af19182156133645783926133425750519161333883611d9c565b6040517fd9b60b600000000000000000000000000000000000000000000000000000000081527f060000000000000000000000000000000000000000000000000000000000000060048201526000908160248201526020816044818560645af19182156131515780926131ae57505090565b604051907fd9b60b600000000000000000000000000000000000000000000000000000000082527f060000000000000000000000000000000000000000000000000000000000000060048301526024820152602081604481600060645af1908115612ffe57600091612fd0575090565b604080517ff581fa200000000000000000000000000000000000000000000000000000000081527f06060000000000000000000000000000000000000000000000000000000000006004820152602481019290925260448201929092529190826064816000825af1918215612ffe5760009081936135ad57509190565b90506135c891925060403d8111612d9357612d828183611db8565b9091565b6040517f371d1bf20000000000000000000000000000000000000000000000000000000081527f06060000000000000000000000000000000000000000000000000000000000006004820152602481019190915260448101919091526020818060648101613065565b6040517fdd1486930000000000000000000000000000000000000000000000000000000081527f06060000000000000000000000000000000000000000000000000000000000006004820152602481019190915260448101919091526020818060648101613065565b604051907f7c12a1eb0000000000000000000000000000000000000000000000000000000082527f06060200000000000000000000000000000000000000000000000000000000006004830152602482015260009081604482015260208160648185825af19182156131515780926131ae57505090565b604051907f7c12a1eb0000000000000000000000000000000000000000000000000000000082527f0606020000000000000000000000000000000000000000000000000000000000600483015260248201527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60448201526020816064816000825af1908115612ffe57600091612fd057509056fea164736f6c6343000814000a";
1426
+
1427
+ type PrivateTetherUSDConstructorParams =
1428
+ | [signer?: Signer]
1429
+ | ConstructorParameters<typeof ContractFactory>;
1430
+
1431
+ const isSuperArgs = (
1432
+ xs: PrivateTetherUSDConstructorParams
1433
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
1434
+
1435
+ export class PrivateTetherUSD__factory extends ContractFactory {
1436
+ constructor(...args: PrivateTetherUSDConstructorParams) {
1437
+ if (isSuperArgs(args)) {
1438
+ super(...args);
1439
+ } else {
1440
+ super(_abi, _bytecode, args[0]);
1441
+ }
1442
+ }
1443
+
1444
+ override getDeployTransaction(
1445
+ overrides?: NonPayableOverrides & { from?: string }
1446
+ ): Promise<ContractDeployTransaction> {
1447
+ return super.getDeployTransaction(overrides || {});
1448
+ }
1449
+ override deploy(overrides?: NonPayableOverrides & { from?: string }) {
1450
+ return super.deploy(overrides || {}) as Promise<
1451
+ PrivateTetherUSD & {
1452
+ deploymentTransaction(): ContractTransactionResponse;
1453
+ }
1454
+ >;
1455
+ }
1456
+ override connect(runner: ContractRunner | null): PrivateTetherUSD__factory {
1457
+ return super.connect(runner) as PrivateTetherUSD__factory;
1458
+ }
1459
+
1460
+ static readonly bytecode = _bytecode;
1461
+ static readonly abi = _abi;
1462
+ static createInterface(): PrivateTetherUSDInterface {
1463
+ return new Interface(_abi) as PrivateTetherUSDInterface;
1464
+ }
1465
+ static connect(
1466
+ address: string,
1467
+ runner?: ContractRunner | null
1468
+ ): PrivateTetherUSD {
1469
+ return new Contract(address, _abi, runner) as unknown as PrivateTetherUSD;
1470
+ }
1471
+ }