@coti-io/coti-contracts 1.1.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (433) hide show
  1. package/.github/workflows/npm-publish.yml +19 -15
  2. package/README.md +3 -1
  3. package/contracts/disperse/coinByRatio/FixedRatioCoinDisperser.sol +452 -0
  4. package/contracts/disperse/coinByRatio/FixedRatioCoinDisperserLeftoverS1.sol +490 -0
  5. package/contracts/disperse/coinByRatio/FixedRatioCoinDisperserUnlimitedWindow.sol +432 -0
  6. package/contracts/disperse/disperseToken/MintDisperser.sol +120 -0
  7. package/contracts/disperse/disperseToken/TokenDisperser.sol +139 -0
  8. package/contracts/messaging/PrivateMessaging.sol +456 -0
  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 +19 -0
  13. package/contracts/mocks/token/PrivateERC20/EncryptedTokenReceiverMock.sol +18 -0
  14. package/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock.sol +18 -0
  15. package/contracts/mocks/token/PrivateERC20/PrivateERC20AuditorSupplyMock.sol +44 -0
  16. package/contracts/mocks/token/PrivateERC20/PrivateERC20CappedMock.sol +23 -0
  17. package/contracts/mocks/token/PrivateERC20/PrivateERC20GtCallerMock.sol +29 -0
  18. package/contracts/mocks/token/PrivateERC20/PrivateERC20Mock.sol +9 -4
  19. package/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol +39 -0
  20. package/contracts/mocks/token/PrivateERC20/PublicReentrantTokenReceiverMock.sol +29 -0
  21. package/contracts/mocks/token/PrivateERC20/PublicTokenReceiverBoolMock.sol +18 -0
  22. package/contracts/mocks/token/PrivateERC20/PublicTokenReceiverMock.sol +12 -0
  23. package/contracts/mocks/utils/mpc/Arithmetic128TestsContract.sol +123 -0
  24. package/contracts/mocks/utils/mpc/Arithmetic256TestsContract.sol +122 -0
  25. package/contracts/mocks/utils/mpc/Bitwise128TestsContract.sol +65 -0
  26. package/contracts/mocks/utils/mpc/Bitwise256TestsContract.sol +65 -0
  27. package/contracts/mocks/utils/mpc/CheckedArithmetic128WithOverflowBitTestsContract.sol +64 -0
  28. package/contracts/mocks/utils/mpc/CheckedArithmetic256WithOverflowBitTestsContract.sol +64 -0
  29. package/contracts/mocks/utils/mpc/Comparison128TestsContract.sol +98 -0
  30. package/contracts/mocks/utils/mpc/Comparison256TestsContract.sol +98 -0
  31. package/contracts/mocks/utils/mpc/MinMax128TestsContract.sol +44 -0
  32. package/contracts/mocks/utils/mpc/MinMax256TestsContract.sol +44 -0
  33. package/contracts/mocks/utils/mpc/MinimalImplementation.sol +55 -0
  34. package/contracts/mocks/utils/mpc/MinimalProxy.sol +27 -0
  35. package/contracts/mocks/utils/mpc/MpcOperations128TestContract.sol +267 -0
  36. package/contracts/mocks/utils/mpc/MpcOperationsTestContract.sol +334 -0
  37. package/contracts/mocks/utils/mpc/Mux128TestsContract.sol +24 -0
  38. package/contracts/mocks/utils/mpc/Mux256TestsContract.sol +24 -0
  39. package/contracts/mocks/utils/mpc/OnBoard128TestsContract.sol +93 -0
  40. package/contracts/mocks/utils/mpc/OnBoard256TestsContract.sol +116 -0
  41. package/contracts/mocks/utils/mpc/PrivacyImplementationV1.sol +157 -0
  42. package/contracts/mocks/utils/mpc/PrivacyImplementationV2.sol +133 -0
  43. package/contracts/mocks/utils/mpc/PrivacyProxy.sol +137 -0
  44. package/contracts/mocks/utils/mpc/Random128TestsContract.sol +32 -0
  45. package/contracts/mocks/utils/mpc/Random256TestsContract.sol +32 -0
  46. package/contracts/mocks/utils/mpc/Shift128TestsContract.sol +36 -0
  47. package/contracts/mocks/utils/mpc/Shift256TestsContract.sol +36 -0
  48. package/contracts/mocks/utils/mpc/Transfer128TestsContract.sol +29 -0
  49. package/contracts/mocks/utils/mpc/Transfer256TestsContract.sol +29 -0
  50. package/contracts/mocks/utils/mpc/TransferWithAllowance128TestsContract.sol +32 -0
  51. package/contracts/mocks/utils/mpc/TransferWithAllowance256TestsContract.sol +32 -0
  52. package/contracts/mocks/utils/mpc/ValidateCiphertext128TestsContract.sol +59 -0
  53. package/contracts/mocks/utils/mpc/ValidateCiphertext256TestsContract.sol +63 -0
  54. package/contracts/mocks/utils/mpc/ValidateCiphertextTestsContract.sol +99 -0
  55. package/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock.sol +7 -6
  56. package/contracts/node/CotiNodeRewards.sol +199 -0
  57. package/contracts/node/SoulboundNodeNFT.sol +519 -0
  58. package/contracts/oracle/CotiPriceConsumer.sol +103 -0
  59. package/contracts/oracle/ICotiPriceConsumer.sol +15 -0
  60. package/contracts/oracle/IStdReference.sol +26 -0
  61. package/contracts/privacyBridge/PrivacyBridge.sol +600 -0
  62. package/contracts/privacyBridge/PrivacyBridgeCotiNative.sol +316 -0
  63. package/contracts/privacyBridge/PrivacyBridgeERC20.sol +333 -0
  64. package/contracts/privacyBridge/PrivacyBridgeUSDCe.sol +22 -0
  65. package/contracts/privacyBridge/PrivacyBridgeUSDT.sol +23 -0
  66. package/contracts/privacyBridge/PrivacyBridgeWADA.sol +23 -0
  67. package/contracts/privacyBridge/PrivacyBridgeWBTC.sol +23 -0
  68. package/contracts/privacyBridge/PrivacyBridgeWETH.sol +23 -0
  69. package/contracts/privacyBridge/PrivacyBridgegCoti.sol +23 -0
  70. package/contracts/token/PrivateERC20/IPrivateERC20.sol +273 -40
  71. package/contracts/token/PrivateERC20/ITokenReceiver.sol +17 -0
  72. package/contracts/token/PrivateERC20/ITokenReceiverEncrypted.sol +20 -0
  73. package/contracts/token/PrivateERC20/PrivateERC20.sol +861 -152
  74. package/contracts/token/PrivateERC20/tokens/PrivateBridgedUSDC.sol +17 -0
  75. package/contracts/token/PrivateERC20/tokens/PrivateCOTI.sol +13 -0
  76. package/contracts/token/PrivateERC20/tokens/PrivateCOTITreasuryGovernanceToken.sol +17 -0
  77. package/contracts/token/PrivateERC20/tokens/PrivateTetherUSD.sol +17 -0
  78. package/contracts/token/PrivateERC20/tokens/PrivateWrappedADA.sol +17 -0
  79. package/contracts/token/PrivateERC20/tokens/PrivateWrappedBTC.sol +17 -0
  80. package/contracts/token/PrivateERC20/tokens/PrivateWrappedEther.sol +13 -0
  81. package/contracts/utils/mpc/MpcCore.sol +10780 -4962
  82. package/contracts/utils/mpc/MpcInterface.sol +7 -2
  83. package/hardhat/gasPriceBump.ts +60 -0
  84. package/hardhat.config.ts +63 -12
  85. package/package.json +22 -4
  86. package/scripts/add-bridge-operators.cjs +87 -0
  87. package/scripts/deploy-coti-price-consumer-mainnet.cjs +49 -0
  88. package/scripts/deployCotiNodeRewards.ts +51 -0
  89. package/scripts/deploySoulboundNodeNFT.ts +57 -0
  90. package/scripts/redeploy-private-and-bridges.cjs +201 -0
  91. package/scripts/set-bridge-limits-mainnet.cjs +177 -0
  92. package/scripts/verify-mainnet-private-bridges.cjs +289 -0
  93. package/sonar-project.properties +11 -0
  94. package/test/messaging/PrivateMessaging.test.ts +158 -0
  95. package/test/privacyBridge/UnifiedPrivacyBridges.test.cjs +1663 -0
  96. package/test/token/PrivateERC20/PrivacyBridge.fees.test.ts +250 -0
  97. package/test/token/PrivateERC20/PrivateERC20.test.ts +1109 -268
  98. package/test/utils/mpc/Bitwise128.test.ts +92 -0
  99. package/test/utils/mpc/Bitwise256.test.ts +101 -0
  100. package/test/utils/mpc/BuildInputText128.test.ts +398 -0
  101. package/test/utils/mpc/CheckedArithmetic128.test.ts +45 -0
  102. package/test/utils/mpc/CheckedArithmetic256.test.ts +45 -0
  103. package/test/utils/mpc/Comparison128.test.ts +48 -0
  104. package/test/utils/mpc/Comparison256.test.ts +48 -0
  105. package/test/utils/mpc/InvalidCiphertext.test.ts +179 -0
  106. package/test/utils/mpc/InvalidCiphertext128.test.ts +179 -0
  107. package/test/utils/mpc/InvalidCiphertext256.test.ts +201 -0
  108. package/test/utils/mpc/InvalidTransfer128.test.ts +166 -0
  109. package/test/utils/mpc/InvalidTransfer256.test.ts +158 -0
  110. package/test/utils/mpc/MinMax128.test.ts +44 -0
  111. package/test/utils/mpc/MinMax256.test.ts +44 -0
  112. package/test/utils/mpc/MinimalProxyDemo.test.ts +280 -0
  113. package/test/utils/mpc/MpcOperations.test.ts +589 -0
  114. package/test/utils/mpc/MpcOperations128.test.ts +632 -0
  115. package/test/utils/mpc/Mux128.test.ts +41 -0
  116. package/test/utils/mpc/Mux256.test.ts +41 -0
  117. package/test/utils/mpc/NegativeCases.test.ts +478 -0
  118. package/test/utils/mpc/NegativeCases128.test.ts +237 -0
  119. package/test/utils/mpc/NegativeCases256.test.ts +236 -0
  120. package/test/utils/mpc/OnBoard128.test.ts +90 -0
  121. package/test/utils/mpc/OnBoard256.test.ts +114 -0
  122. package/test/utils/mpc/Precompile128.test.ts +51 -0
  123. package/test/utils/mpc/Precompile256.test.ts +115 -0
  124. package/test/utils/mpc/ProxyValidation.test.ts +199 -0
  125. package/test/utils/mpc/Random128.test.ts +47 -0
  126. package/test/utils/mpc/Random256.test.ts +47 -0
  127. package/test/utils/mpc/Shift128.test.ts +41 -0
  128. package/test/utils/mpc/Shift256.test.ts +41 -0
  129. package/test/utils/mpc/Transfer128.test.ts +46 -0
  130. package/test/utils/mpc/Transfer256.test.ts +46 -0
  131. package/test/utils/mpc/TransferWithAllowance128.test.ts +48 -0
  132. package/test/utils/mpc/TransferWithAllowance256.test.ts +48 -0
  133. package/test/utils/mpc/UpgradeablePrivacyProxy.test.ts +307 -0
  134. package/test/utils/mpc/ValidateCiphertext.test.ts +221 -0
  135. package/test/utils/mpc/ValidateCiphertext256.test.ts +161 -0
  136. package/test/utils/mpc/ValidateCiphertext256Decryption.test.ts +383 -0
  137. package/test/utils/mpc/WalletEncryptionFailures.test.ts +494 -0
  138. package/test/utils/privateErc20Helpers.ts +97 -0
  139. package/typechain-types/@openzeppelin/contracts/access/AccessControl.ts +324 -0
  140. package/typechain-types/@openzeppelin/contracts/access/AccessControlEnumerable.ts +361 -0
  141. package/typechain-types/@openzeppelin/contracts/access/IAccessControl.ts +292 -0
  142. package/typechain-types/@openzeppelin/contracts/access/IAccessControlEnumerable.ts +329 -0
  143. package/typechain-types/@openzeppelin/contracts/access/Ownable.ts +153 -0
  144. package/typechain-types/@openzeppelin/contracts/access/index.ts +8 -0
  145. package/typechain-types/@openzeppelin/contracts/index.ts +4 -0
  146. package/typechain-types/@openzeppelin/contracts/security/Pausable.ts +150 -0
  147. package/typechain-types/@openzeppelin/contracts/security/index.ts +4 -0
  148. package/typechain-types/@openzeppelin/contracts/token/ERC20/ERC20.ts +330 -0
  149. package/typechain-types/@openzeppelin/contracts/token/ERC20/IERC20.ts +262 -0
  150. package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts +286 -0
  151. package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.ts +143 -0
  152. package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/index.ts +5 -0
  153. package/typechain-types/@openzeppelin/contracts/token/ERC20/index.ts +7 -0
  154. package/typechain-types/@openzeppelin/contracts/token/ERC721/ERC721.ts +420 -0
  155. package/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.ts +420 -0
  156. package/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/index.ts +4 -0
  157. package/typechain-types/@openzeppelin/contracts/token/ERC721/index.ts +3 -0
  158. package/typechain-types/@openzeppelin/contracts/token/index.ts +2 -0
  159. package/typechain-types/contracts/disperse/coinByRatio/FixedRatioCoinDisperser.ts +679 -0
  160. package/typechain-types/contracts/disperse/coinByRatio/FixedRatioCoinDisperserLeftoverS1.ts +735 -0
  161. package/typechain-types/contracts/disperse/coinByRatio/FixedRatioCoinDisperserUnlimitedWindow.ts +734 -0
  162. package/typechain-types/contracts/disperse/coinByRatio/index.ts +6 -0
  163. package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/IMintableERC20.ts +97 -0
  164. package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/IOwnable.ts +95 -0
  165. package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/MintDisperser.ts +228 -0
  166. package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/index.ts +6 -0
  167. package/typechain-types/contracts/disperse/disperseToken/TokenDisperser.ts +191 -0
  168. package/typechain-types/contracts/disperse/disperseToken/index.ts +6 -0
  169. package/typechain-types/contracts/disperse/index.ts +7 -0
  170. package/typechain-types/contracts/index.ts +10 -0
  171. package/typechain-types/contracts/messaging/PrivateMessaging.ts +871 -0
  172. package/typechain-types/contracts/messaging/index.ts +4 -0
  173. package/typechain-types/contracts/mocks/index.ts +4 -0
  174. package/typechain-types/contracts/mocks/messaging/PrivateMessagingHarness.ts +951 -0
  175. package/typechain-types/contracts/mocks/messaging/index.ts +4 -0
  176. package/typechain-types/contracts/mocks/oracle/CotiPriceConsumerMock.ts +163 -0
  177. package/typechain-types/contracts/mocks/oracle/index.ts +4 -0
  178. package/typechain-types/contracts/mocks/token/ERC20DecimalsMock.ts +349 -0
  179. package/typechain-types/contracts/mocks/token/ERC20Mock.ts +368 -0
  180. package/typechain-types/contracts/mocks/token/PrivateERC20/EncryptedTokenReceiverMock.ts +108 -0
  181. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock.ts +1892 -0
  182. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20AuditorSupplyMock.ts +1296 -0
  183. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20CappedMock.ts +1270 -0
  184. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20GtCallerMock.ts +166 -0
  185. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20Mock.ts +827 -78
  186. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/IPrivateERC20TransferAndCallEncrypted.ts +102 -0
  187. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/PrivateERC20ReentrantReceiverMock.ts +154 -0
  188. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/index.ts +5 -0
  189. package/typechain-types/contracts/mocks/token/PrivateERC20/PublicReentrantTokenReceiverMock.ts +155 -0
  190. package/typechain-types/contracts/mocks/token/PrivateERC20/PublicTokenReceiverBoolMock.ts +107 -0
  191. package/typechain-types/contracts/mocks/token/PrivateERC20/PublicTokenReceiverMock.ts +100 -0
  192. package/typechain-types/contracts/mocks/token/PrivateERC20/index.ts +10 -0
  193. package/typechain-types/contracts/mocks/token/index.ts +2 -0
  194. package/typechain-types/contracts/mocks/utils/mpc/{Arithmetic128BitTestsContract.ts → Arithmetic128TestsContract.ts} +96 -126
  195. package/typechain-types/contracts/mocks/utils/mpc/{Arithmetic256BitTestsContract.ts → Arithmetic256TestsContract.ts} +97 -133
  196. package/typechain-types/contracts/mocks/utils/mpc/{Bitwise128BitTestsContract.ts → Bitwise128TestsContract.ts} +52 -59
  197. package/typechain-types/contracts/mocks/utils/mpc/{Bitwise256BitTestsContract.ts → Bitwise256TestsContract.ts} +52 -59
  198. package/typechain-types/contracts/mocks/utils/mpc/CheckedArithmetic128WithOverflowBitTestsContract.ts +206 -0
  199. package/typechain-types/contracts/mocks/utils/mpc/CheckedArithmetic256WithOverflowBitTestsContract.ts +206 -0
  200. package/typechain-types/contracts/mocks/utils/mpc/{Comparison128BitTestsContract.ts → Comparison128TestsContract.ts} +115 -97
  201. package/typechain-types/contracts/mocks/utils/mpc/{Comparison256BitTestsContract.ts → Comparison256TestsContract.ts} +115 -97
  202. package/typechain-types/contracts/mocks/utils/mpc/MinMax128TestsContract.ts +142 -0
  203. package/typechain-types/contracts/mocks/utils/mpc/MinMax256TestsContract.ts +142 -0
  204. package/typechain-types/contracts/mocks/utils/mpc/MinimalImplementation.ts +259 -0
  205. package/typechain-types/contracts/mocks/utils/mpc/MinimalProxy.ts +90 -0
  206. package/typechain-types/contracts/mocks/utils/mpc/MpcOperations128TestContract.ts +388 -0
  207. package/typechain-types/contracts/mocks/utils/mpc/MpcOperationsTestContract.ts +455 -0
  208. package/typechain-types/contracts/mocks/utils/mpc/Mux128TestsContract.ts +109 -0
  209. package/typechain-types/contracts/mocks/utils/mpc/Mux256TestsContract.ts +109 -0
  210. package/typechain-types/contracts/mocks/utils/mpc/OnBoard128TestsContract.ts +166 -0
  211. package/typechain-types/contracts/mocks/utils/mpc/OnBoard256TestsContract.ts +194 -0
  212. package/typechain-types/contracts/mocks/utils/mpc/PrivacyImplementationV1.ts +385 -0
  213. package/typechain-types/contracts/mocks/utils/mpc/PrivacyImplementationV2.ts +441 -0
  214. package/typechain-types/contracts/mocks/utils/mpc/PrivacyProxy.ts +201 -0
  215. package/typechain-types/contracts/mocks/utils/mpc/Random128TestsContract.ts +131 -0
  216. package/typechain-types/contracts/mocks/utils/mpc/Random256TestsContract.ts +131 -0
  217. package/typechain-types/contracts/mocks/utils/mpc/Shift128TestsContract.ts +142 -0
  218. package/typechain-types/contracts/mocks/utils/mpc/Shift256TestsContract.ts +142 -0
  219. package/typechain-types/contracts/mocks/utils/mpc/Transfer128TestsContract.ts +109 -0
  220. package/typechain-types/contracts/mocks/utils/mpc/Transfer256TestsContract.ts +109 -0
  221. package/typechain-types/contracts/mocks/utils/mpc/TransferWithAllowance128TestsContract.ts +128 -0
  222. package/typechain-types/contracts/mocks/utils/mpc/TransferWithAllowance256TestsContract.ts +128 -0
  223. package/typechain-types/contracts/mocks/utils/mpc/ValidateCiphertext128TestsContract.ts +198 -0
  224. package/typechain-types/contracts/mocks/utils/mpc/ValidateCiphertext256TestsContract.ts +182 -0
  225. package/typechain-types/contracts/mocks/utils/mpc/ValidateCiphertextTestsContract.ts +257 -0
  226. package/typechain-types/contracts/mocks/utils/mpc/index.ts +32 -8
  227. package/typechain-types/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock.ts +6 -6
  228. package/typechain-types/contracts/node/CotiNodeRewards.ts +566 -0
  229. package/typechain-types/contracts/node/SoulboundNodeNFT.sol/IERC5192.ts +123 -0
  230. package/typechain-types/contracts/node/SoulboundNodeNFT.sol/SoulboundNodeNFT.ts +975 -0
  231. package/typechain-types/contracts/node/SoulboundNodeNFT.sol/index.ts +5 -0
  232. package/typechain-types/contracts/node/index.ts +6 -0
  233. package/typechain-types/contracts/oracle/CotiPriceConsumer.ts +256 -0
  234. package/typechain-types/contracts/oracle/ICotiPriceConsumer.ts +119 -0
  235. package/typechain-types/contracts/oracle/IStdReference.ts +136 -0
  236. package/typechain-types/contracts/oracle/index.ts +6 -0
  237. package/typechain-types/contracts/privacyBridge/PrivacyBridge.ts +1628 -0
  238. package/typechain-types/contracts/privacyBridge/PrivacyBridgeCotiNative.ts +1870 -0
  239. package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/IHasDecimals.ts +84 -0
  240. package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/PrivacyBridgeERC20.ts +1892 -0
  241. package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/index.ts +5 -0
  242. package/typechain-types/contracts/privacyBridge/PrivacyBridgeUSDCe.ts +1892 -0
  243. package/typechain-types/contracts/privacyBridge/PrivacyBridgeUSDT.ts +1892 -0
  244. package/typechain-types/contracts/privacyBridge/PrivacyBridgeWADA.ts +1892 -0
  245. package/typechain-types/contracts/privacyBridge/PrivacyBridgeWBTC.ts +1892 -0
  246. package/typechain-types/contracts/privacyBridge/PrivacyBridgeWETH.ts +1892 -0
  247. package/typechain-types/contracts/privacyBridge/PrivacyBridgegCoti.ts +1892 -0
  248. package/typechain-types/contracts/privacyBridge/index.ts +13 -0
  249. package/typechain-types/contracts/token/PrivateERC20/IPrivateERC20.ts +507 -70
  250. package/typechain-types/contracts/token/PrivateERC20/ITokenReceiver.ts +100 -0
  251. package/typechain-types/contracts/token/PrivateERC20/ITokenReceiverEncrypted.ts +99 -0
  252. package/typechain-types/contracts/token/PrivateERC20/PrivateERC20.ts +833 -68
  253. package/typechain-types/contracts/token/PrivateERC20/index.ts +4 -0
  254. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateBridgedUSDC.ts +1270 -0
  255. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateCOTI.ts +1270 -0
  256. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateCOTITreasuryGovernanceToken.ts +1270 -0
  257. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateTetherUSD.ts +1270 -0
  258. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedADA.ts +1270 -0
  259. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedBTC.ts +1270 -0
  260. package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedEther.ts +1270 -0
  261. package/typechain-types/contracts/token/PrivateERC20/tokens/index.ts +10 -0
  262. package/typechain-types/contracts/utils/mpc/MpcInterface.sol/ExtendedOperations.ts +111 -10
  263. package/typechain-types/factories/@openzeppelin/contracts/access/AccessControlEnumerable__factory.ts +276 -0
  264. package/typechain-types/factories/@openzeppelin/contracts/access/AccessControl__factory.ts +229 -0
  265. package/typechain-types/factories/@openzeppelin/contracts/access/IAccessControlEnumerable__factory.ts +244 -0
  266. package/typechain-types/factories/@openzeppelin/contracts/access/IAccessControl__factory.ts +197 -0
  267. package/typechain-types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +74 -0
  268. package/typechain-types/factories/@openzeppelin/contracts/access/index.ts +8 -0
  269. package/typechain-types/factories/@openzeppelin/contracts/index.ts +2 -0
  270. package/typechain-types/factories/@openzeppelin/contracts/security/Pausable__factory.ts +61 -0
  271. package/typechain-types/factories/@openzeppelin/contracts/security/index.ts +4 -0
  272. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts +356 -0
  273. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts +205 -0
  274. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts +247 -0
  275. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit__factory.ts +100 -0
  276. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts +5 -0
  277. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/index.ts +6 -0
  278. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.ts +416 -0
  279. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.ts +355 -0
  280. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.ts +4 -0
  281. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/index.ts +2 -0
  282. package/typechain-types/factories/@openzeppelin/contracts/token/index.ts +1 -0
  283. package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperserLeftoverS1__factory.ts +791 -0
  284. package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperserUnlimitedWindow__factory.ts +711 -0
  285. package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperser__factory.ts +759 -0
  286. package/typechain-types/factories/contracts/disperse/coinByRatio/index.ts +6 -0
  287. package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/IMintableERC20__factory.ts +43 -0
  288. package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/IOwnable__factory.ts +35 -0
  289. package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/MintDisperser__factory.ts +203 -0
  290. package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/index.ts +6 -0
  291. package/typechain-types/factories/contracts/disperse/disperseToken/TokenDisperser__factory.ts +198 -0
  292. package/typechain-types/factories/contracts/disperse/disperseToken/index.ts +5 -0
  293. package/typechain-types/factories/contracts/disperse/index.ts +5 -0
  294. package/typechain-types/factories/contracts/index.ts +5 -0
  295. package/typechain-types/factories/contracts/messaging/PrivateMessaging__factory.ts +1035 -0
  296. package/typechain-types/factories/contracts/messaging/index.ts +4 -0
  297. package/typechain-types/factories/contracts/mocks/access/DataPrivacyFramework/DataPrivacyFrameworkMock__factory.ts +1 -1
  298. package/typechain-types/factories/contracts/mocks/index.ts +2 -0
  299. package/typechain-types/factories/contracts/mocks/messaging/PrivateMessagingHarness__factory.ts +1161 -0
  300. package/typechain-types/factories/contracts/mocks/messaging/index.ts +4 -0
  301. package/typechain-types/factories/contracts/mocks/oracle/CotiPriceConsumerMock__factory.ts +159 -0
  302. package/typechain-types/factories/contracts/mocks/oracle/index.ts +4 -0
  303. package/typechain-types/factories/contracts/mocks/token/ERC20DecimalsMock__factory.ts +394 -0
  304. package/typechain-types/factories/contracts/mocks/token/ERC20Mock__factory.ts +392 -0
  305. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/EncryptedTokenReceiverMock__factory.ts +125 -0
  306. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock__factory.ts +1797 -0
  307. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20AuditorSupplyMock__factory.ts +1514 -0
  308. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20CappedMock__factory.ts +1466 -0
  309. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20GtCallerMock__factory.ts +165 -0
  310. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20Mock__factory.ts +975 -127
  311. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/IPrivateERC20TransferAndCallEncrypted__factory.ts +54 -0
  312. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/PrivateERC20ReentrantReceiverMock__factory.ts +159 -0
  313. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/index.ts +5 -0
  314. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicReentrantTokenReceiverMock__factory.ts +164 -0
  315. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicTokenReceiverBoolMock__factory.ts +130 -0
  316. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicTokenReceiverMock__factory.ts +102 -0
  317. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/index.ts +9 -0
  318. package/typechain-types/factories/contracts/mocks/token/PrivateERC721/PrivateERC721URIStorageMock__factory.ts +1 -1
  319. package/typechain-types/factories/contracts/mocks/token/index.ts +2 -0
  320. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic128TestsContract__factory.ts +330 -0
  321. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic256TestsContract__factory.ts +330 -0
  322. package/typechain-types/factories/contracts/mocks/utils/mpc/ArithmeticTestsContract__factory.ts +1 -1
  323. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise128TestsContract__factory.ts +184 -0
  324. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise256TestsContract__factory.ts +184 -0
  325. package/typechain-types/factories/contracts/mocks/utils/mpc/BitwiseTestsContract__factory.ts +1 -1
  326. package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmetic128WithOverflowBitTestsContract__factory.ts +203 -0
  327. package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmetic256WithOverflowBitTestsContract__factory.ts +203 -0
  328. package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmeticWIthOverflowBitTestsContract.sol/CheckedArithmeticWithOverflowBitTestsContract__factory.ts +1 -1
  329. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison128TestsContract__factory.ts +295 -0
  330. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison1TestsContract__factory.ts +1 -1
  331. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison256TestsContract__factory.ts +295 -0
  332. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison2TestsContract__factory.ts +1 -1
  333. package/typechain-types/factories/contracts/mocks/utils/mpc/MinMax128TestsContract__factory.ts +147 -0
  334. package/typechain-types/factories/contracts/mocks/utils/mpc/MinMax256TestsContract__factory.ts +147 -0
  335. package/typechain-types/factories/contracts/mocks/utils/mpc/MinMaxTestsContract__factory.ts +1 -1
  336. package/typechain-types/factories/contracts/mocks/utils/mpc/MinimalImplementation__factory.ts +263 -0
  337. package/typechain-types/factories/contracts/mocks/utils/mpc/MinimalProxy__factory.ts +104 -0
  338. package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous1TestsContract__factory.ts +1 -1
  339. package/typechain-types/factories/contracts/mocks/utils/mpc/MiscellaneousTestsContract__factory.ts +1 -1
  340. package/typechain-types/factories/contracts/mocks/utils/mpc/MpcOperations128TestContract__factory.ts +723 -0
  341. package/typechain-types/factories/contracts/mocks/utils/mpc/MpcOperationsTestContract__factory.ts +1410 -0
  342. package/typechain-types/factories/contracts/mocks/utils/mpc/Mux128TestsContract__factory.ts +115 -0
  343. package/typechain-types/factories/contracts/mocks/utils/mpc/Mux256TestsContract__factory.ts +115 -0
  344. package/typechain-types/factories/contracts/mocks/utils/mpc/OffboardToUserKeyTestContract__factory.ts +1 -1
  345. package/typechain-types/factories/contracts/mocks/utils/mpc/OnBoard128TestsContract__factory.ts +175 -0
  346. package/typechain-types/factories/contracts/mocks/utils/mpc/OnBoard256TestsContract__factory.ts +205 -0
  347. package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyImplementationV1__factory.ts +521 -0
  348. package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyImplementationV2__factory.ts +648 -0
  349. package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyProxy__factory.ts +179 -0
  350. package/typechain-types/factories/contracts/mocks/utils/mpc/Random128TestsContract__factory.ts +131 -0
  351. package/typechain-types/factories/contracts/mocks/utils/mpc/Random256TestsContract__factory.ts +131 -0
  352. package/typechain-types/factories/contracts/mocks/utils/mpc/Shift128TestsContract__factory.ts +147 -0
  353. package/typechain-types/factories/contracts/mocks/utils/mpc/Shift256TestsContract__factory.ts +147 -0
  354. package/typechain-types/factories/contracts/mocks/utils/mpc/ShiftTestsContract__factory.ts +1 -1
  355. package/typechain-types/factories/contracts/mocks/utils/mpc/StringTestsContract__factory.ts +1 -1
  356. package/typechain-types/factories/contracts/mocks/utils/mpc/Transfer128TestsContract__factory.ts +135 -0
  357. package/typechain-types/factories/contracts/mocks/utils/mpc/Transfer256TestsContract__factory.ts +135 -0
  358. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferScalarTestsContract__factory.ts +1 -1
  359. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferTestsContract__factory.ts +1 -1
  360. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance128TestsContract__factory.ts +154 -0
  361. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance256TestsContract__factory.ts +154 -0
  362. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_16TestsContract__factory.ts +1 -1
  363. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_32TestsContract__factory.ts +1 -1
  364. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_64TestsContract__factory.ts +1 -1
  365. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_8TestsContract__factory.ts +1 -1
  366. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowanceScalarTestsContract__factory.ts +1 -1
  367. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowanceTestsContract__factory.ts +1 -1
  368. package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertext128TestsContract__factory.ts +190 -0
  369. package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertext256TestsContract__factory.ts +210 -0
  370. package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertextTestsContract__factory.ts +260 -0
  371. package/typechain-types/factories/contracts/mocks/utils/mpc/index.ts +32 -8
  372. package/typechain-types/factories/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock__factory.ts +10 -28
  373. package/typechain-types/factories/contracts/node/CotiNodeRewards__factory.ts +549 -0
  374. package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/IERC5192__factory.ts +54 -0
  375. package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/SoulboundNodeNFT__factory.ts +947 -0
  376. package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/index.ts +5 -0
  377. package/typechain-types/factories/contracts/node/index.ts +5 -0
  378. package/typechain-types/factories/contracts/onboard/AccountOnboard__factory.ts +1 -1
  379. package/typechain-types/factories/contracts/oracle/CotiPriceConsumer__factory.ts +295 -0
  380. package/typechain-types/factories/contracts/oracle/ICotiPriceConsumer__factory.ts +73 -0
  381. package/typechain-types/factories/contracts/oracle/IStdReference__factory.ts +107 -0
  382. package/typechain-types/factories/contracts/oracle/index.ts +6 -0
  383. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeCotiNative__factory.ts +1676 -0
  384. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/IHasDecimals__factory.ts +38 -0
  385. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/PrivacyBridgeERC20__factory.ts +1678 -0
  386. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/index.ts +5 -0
  387. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeUSDCe__factory.ts +1782 -0
  388. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeUSDT__factory.ts +1782 -0
  389. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWADA__factory.ts +1782 -0
  390. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWBTC__factory.ts +1782 -0
  391. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWETH__factory.ts +1782 -0
  392. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridge__factory.ts +1367 -0
  393. package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgegCoti__factory.ts +1782 -0
  394. package/typechain-types/factories/contracts/privacyBridge/index.ts +12 -0
  395. package/typechain-types/factories/contracts/token/PrivateERC20/IPrivateERC20__factory.ts +639 -61
  396. package/typechain-types/factories/contracts/token/PrivateERC20/ITokenReceiverEncrypted__factory.ts +53 -0
  397. package/typechain-types/factories/contracts/token/PrivateERC20/ITokenReceiver__factory.ts +54 -0
  398. package/typechain-types/factories/contracts/token/PrivateERC20/PrivateERC20__factory.ts +986 -120
  399. package/typechain-types/factories/contracts/token/PrivateERC20/index.ts +3 -0
  400. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateBridgedUSDC__factory.ts +1445 -0
  401. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateCOTITreasuryGovernanceToken__factory.ts +1451 -0
  402. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateCOTI__factory.ts +1442 -0
  403. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateTetherUSD__factory.ts +1445 -0
  404. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedADA__factory.ts +1445 -0
  405. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedBTC__factory.ts +1445 -0
  406. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedEther__factory.ts +1451 -0
  407. package/typechain-types/factories/contracts/token/PrivateERC20/tokens/index.ts +10 -0
  408. package/typechain-types/factories/contracts/utils/mpc/MpcCore__factory.ts +1 -1
  409. package/typechain-types/factories/contracts/utils/mpc/MpcInterface.sol/ExtendedOperations__factory.ts +126 -0
  410. package/typechain-types/hardhat.d.ts +1772 -278
  411. package/typechain-types/index.ts +182 -16
  412. package/contracts/mocks/utils/mpc/Arithmetic128BitTestsContract.sol +0 -260
  413. package/contracts/mocks/utils/mpc/Arithmetic256BitTestsContract.sol +0 -264
  414. package/contracts/mocks/utils/mpc/Bitwise128BitTestsContract.sol +0 -91
  415. package/contracts/mocks/utils/mpc/Bitwise256BitTestsContract.sol +0 -91
  416. package/contracts/mocks/utils/mpc/Comparison128BitTestsContract.sol +0 -158
  417. package/contracts/mocks/utils/mpc/Comparison256BitTestsContract.sol +0 -158
  418. package/contracts/mocks/utils/mpc/Miscellaneous128BitTestsContract.sol +0 -185
  419. package/contracts/mocks/utils/mpc/Miscellaneous256BitTestsContract.sol +0 -190
  420. package/contracts/mocks/utils/mpc/README.md +0 -486
  421. package/test/utils/mpc/Unsigned128BitIntegers.test.ts +0 -945
  422. package/test/utils/mpc/Unsigned256BitIntegers.test.ts +0 -1124
  423. package/test/utils/mpc/helpers.ts +0 -77
  424. package/typechain-types/contracts/mocks/utils/mpc/Miscellaneous128BitTestsContract.ts +0 -302
  425. package/typechain-types/contracts/mocks/utils/mpc/Miscellaneous256BitTestsContract.ts +0 -322
  426. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic128BitTestsContract__factory.ts +0 -349
  427. package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic256BitTestsContract__factory.ts +0 -364
  428. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise128BitTestsContract__factory.ts +0 -182
  429. package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise256BitTestsContract__factory.ts +0 -182
  430. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison128BitTestsContract__factory.ts +0 -255
  431. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison256BitTestsContract__factory.ts +0 -255
  432. package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous128BitTestsContract__factory.ts +0 -332
  433. package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous256BitTestsContract__factory.ts +0 -380
@@ -1,380 +0,0 @@
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
- Miscellaneous256BitTestsContract,
14
- Miscellaneous256BitTestsContractInterface,
15
- } from "../../../../../contracts/mocks/utils/mpc/Miscellaneous256BitTestsContract";
16
-
17
- const _abi = [
18
- {
19
- inputs: [
20
- {
21
- internalType: "uint256",
22
- name: "",
23
- type: "uint256",
24
- },
25
- ],
26
- name: "a2",
27
- outputs: [
28
- {
29
- internalType: "uint256",
30
- name: "",
31
- type: "uint256",
32
- },
33
- ],
34
- stateMutability: "view",
35
- type: "function",
36
- },
37
- {
38
- inputs: [
39
- {
40
- internalType: "uint256",
41
- name: "",
42
- type: "uint256",
43
- },
44
- ],
45
- name: "allowance2",
46
- outputs: [
47
- {
48
- internalType: "uint256",
49
- name: "",
50
- type: "uint256",
51
- },
52
- ],
53
- stateMutability: "view",
54
- type: "function",
55
- },
56
- {
57
- inputs: [
58
- {
59
- internalType: "uint256",
60
- name: "",
61
- type: "uint256",
62
- },
63
- ],
64
- name: "b2",
65
- outputs: [
66
- {
67
- internalType: "uint256",
68
- name: "",
69
- type: "uint256",
70
- },
71
- ],
72
- stateMutability: "view",
73
- type: "function",
74
- },
75
- {
76
- inputs: [
77
- {
78
- internalType: "uint256",
79
- name: "",
80
- type: "uint256",
81
- },
82
- ],
83
- name: "ctNumbers2",
84
- outputs: [
85
- {
86
- components: [
87
- {
88
- internalType: "ctUint64",
89
- name: "high",
90
- type: "uint256",
91
- },
92
- {
93
- internalType: "ctUint64",
94
- name: "low",
95
- type: "uint256",
96
- },
97
- ],
98
- internalType: "struct ctUint128",
99
- name: "high",
100
- type: "tuple",
101
- },
102
- {
103
- components: [
104
- {
105
- internalType: "ctUint64",
106
- name: "high",
107
- type: "uint256",
108
- },
109
- {
110
- internalType: "ctUint64",
111
- name: "low",
112
- type: "uint256",
113
- },
114
- ],
115
- internalType: "struct ctUint128",
116
- name: "low",
117
- type: "tuple",
118
- },
119
- ],
120
- stateMutability: "view",
121
- type: "function",
122
- },
123
- {
124
- inputs: [
125
- {
126
- internalType: "uint256",
127
- name: "",
128
- type: "uint256",
129
- },
130
- ],
131
- name: "numbers2",
132
- outputs: [
133
- {
134
- internalType: "uint256",
135
- name: "",
136
- type: "uint256",
137
- },
138
- ],
139
- stateMutability: "view",
140
- type: "function",
141
- },
142
- {
143
- inputs: [
144
- {
145
- internalType: "uint256[]",
146
- name: "a_",
147
- type: "uint256[]",
148
- },
149
- ],
150
- name: "offBoardToUserTest",
151
- outputs: [],
152
- stateMutability: "nonpayable",
153
- type: "function",
154
- },
155
- {
156
- inputs: [
157
- {
158
- internalType: "uint8[]",
159
- name: "numBits",
160
- type: "uint8[]",
161
- },
162
- ],
163
- name: "randBoundedBitsTest2",
164
- outputs: [],
165
- stateMutability: "nonpayable",
166
- type: "function",
167
- },
168
- {
169
- inputs: [
170
- {
171
- internalType: "uint256",
172
- name: "length",
173
- type: "uint256",
174
- },
175
- ],
176
- name: "randTest2",
177
- outputs: [],
178
- stateMutability: "nonpayable",
179
- type: "function",
180
- },
181
- {
182
- inputs: [
183
- {
184
- internalType: "uint256[]",
185
- name: "a_",
186
- type: "uint256[]",
187
- },
188
- ],
189
- name: "setPublicTest",
190
- outputs: [],
191
- stateMutability: "nonpayable",
192
- type: "function",
193
- },
194
- {
195
- inputs: [
196
- {
197
- internalType: "uint256",
198
- name: "",
199
- type: "uint256",
200
- },
201
- ],
202
- name: "success",
203
- outputs: [
204
- {
205
- internalType: "bool",
206
- name: "",
207
- type: "bool",
208
- },
209
- ],
210
- stateMutability: "view",
211
- type: "function",
212
- },
213
- {
214
- inputs: [
215
- {
216
- internalType: "uint256[]",
217
- name: "a_",
218
- type: "uint256[]",
219
- },
220
- {
221
- internalType: "uint256[]",
222
- name: "b_",
223
- type: "uint256[]",
224
- },
225
- {
226
- internalType: "uint256[]",
227
- name: "amount_",
228
- type: "uint256[]",
229
- },
230
- ],
231
- name: "transferTest",
232
- outputs: [],
233
- stateMutability: "nonpayable",
234
- type: "function",
235
- },
236
- {
237
- inputs: [
238
- {
239
- internalType: "uint256[]",
240
- name: "a_",
241
- type: "uint256[]",
242
- },
243
- {
244
- internalType: "uint256[]",
245
- name: "b_",
246
- type: "uint256[]",
247
- },
248
- {
249
- internalType: "uint256[]",
250
- name: "amount_",
251
- type: "uint256[]",
252
- },
253
- {
254
- internalType: "uint256[]",
255
- name: "allowance_",
256
- type: "uint256[]",
257
- },
258
- ],
259
- name: "transferWithAllowanceTest",
260
- outputs: [],
261
- stateMutability: "nonpayable",
262
- type: "function",
263
- },
264
- {
265
- inputs: [
266
- {
267
- components: [
268
- {
269
- components: [
270
- {
271
- components: [
272
- {
273
- internalType: "ctUint64",
274
- name: "high",
275
- type: "uint256",
276
- },
277
- {
278
- internalType: "ctUint64",
279
- name: "low",
280
- type: "uint256",
281
- },
282
- ],
283
- internalType: "struct ctUint128",
284
- name: "high",
285
- type: "tuple",
286
- },
287
- {
288
- components: [
289
- {
290
- internalType: "ctUint64",
291
- name: "high",
292
- type: "uint256",
293
- },
294
- {
295
- internalType: "ctUint64",
296
- name: "low",
297
- type: "uint256",
298
- },
299
- ],
300
- internalType: "struct ctUint128",
301
- name: "low",
302
- type: "tuple",
303
- },
304
- ],
305
- internalType: "struct ctUint256",
306
- name: "ciphertext",
307
- type: "tuple",
308
- },
309
- {
310
- internalType: "bytes[2][2]",
311
- name: "signature",
312
- type: "bytes[2][2]",
313
- },
314
- ],
315
- internalType: "struct itUint256[]",
316
- name: "a_",
317
- type: "tuple[]",
318
- },
319
- ],
320
- name: "validateCiphertextTest",
321
- outputs: [],
322
- stateMutability: "nonpayable",
323
- type: "function",
324
- },
325
- ] as const;
326
-
327
- const _bytecode =
328
- "0x608060405234801561001057600080fd5b5061249e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100df5760003560e01c80636643b11a1161008c578063c416176c11610066578063c416176c146101b4578063dabade84146101c7578063e2bd9c12146101da578063ede9a42c146101ed57600080fd5b80636643b11a1461016b578063859cc7d61461017e578063888ea2431461019157600080fd5b806335fc629a116100bd57806335fc629a146101325780634a2f9b35146101455780634b5edd171461015857600080fd5b80631944a9ec146100e45780631fcad1b31461010a5780633406fafe1461011f575b600080fd5b6100f76100f2366004611dea565b61020e565b6040519081526020015b60405180910390f35b61011d610118366004611e4f565b61022f565b005b61011d61012d366004611dea565b6102ae565b61011d610140366004611e4f565b610300565b61011d610153366004611e91565b610386565b6100f7610166366004611dea565b610542565b61011d610179366004611e4f565b610552565b6100f761018c366004611dea565b6105e2565b6101a461019f366004611dea565b6105f2565b6040519015158152602001610101565b61011d6101c2366004611f2b565b610626565b6100f76101d5366004611dea565b61082f565b61011d6101e8366004611e4f565b61083f565b6102006101fb366004611dea565b6108a5565b604051610101929190611fef565b6005818154811061021e57600080fd5b600091825260209091200154905081565b610238816108fd565b60005b818110156102a95761027a61027584848481811061025b5761025b612015565b90506020020160208101906102709190612044565b610955565b6109bc565b6000828154811061028d5761028d612015565b6000918252602090912001556102a281612096565b905061023b565b505050565b6102b7816108fd565b60005b818110156102fc576102cd610275610a13565b600082815481106102e0576102e0612015565b6000918252602090912001556102f581612096565b90506102ba565b5050565b610309816108fd565b60005b818110156102a957600061034b84848481811061032b5761032b612015565b905060200281019061033d91906120ce565b610346906121e3565b610a3f565b9050610356816109bc565b6000838154811061036957610369612015565b6000918252602090912001555061037f81612096565b905061030c565b848314801561039457508481145b6103ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f496e707574206c656e677468206d69736d61746368000000000000000000000060448201526064015b60405180910390fd5b61040885610aa6565b61041185610b01565b61041a85610b5c565b6000805b8681101561053857600061044989898481811061043d5761043d612015565b90506020020135610bcf565b9050600061046288888581811061043d5761043d612015565b9050600061047b87878681811061043d5761043d612015565b9050610488838383610bf9565b96509093509150610498836109bc565b600285815481106104ab576104ab612015565b6000918252602090912001556104c0826109bc565b600385815481106104d3576104d3612015565b6000918252602090912001556104e885610c51565b600485815481106104fb576104fb612015565b90600052602060002090602091828204019190066101000a81548160ff0219169083151502179055505050508061053190612096565b905061041e565b5050505050505050565b6002818154811061021e57600080fd5b61055b81610ce2565b60005b818110156102a957600061057d84848481811061043d5761043d612015565b90506105898133610dee565b6001838154811061059c5761059c612015565b6000918252602091829020835180516004909302909101918255820151600182015591810151805160028401550151600390910155506105db81612096565b905061055e565b6000818154811061021e57600080fd5b6004818154811061060257600080fd5b9060005260206000209060209182820401919006915054906101000a900460ff1681565b868514801561063457508683145b801561063f57508681145b6106a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f496e707574206c656e677468206d69736d61746368000000000000000000000060448201526064016103f6565b6106ae87610aa6565b6106b787610b01565b6106c087610b5c565b6106c987610e29565b6000805b888110156108235760006106ec8b8b8481811061043d5761043d612015565b905060006107058a8a8581811061043d5761043d612015565b9050600061071e89898681811061043d5761043d612015565b9050600061073788888781811061043d5761043d612015565b905061074584848484610e84565b90985091955093509050610758846109bc565b6002868154811061076b5761076b612015565b600091825260209091200155610780836109bc565b6003868154811061079357610793612015565b6000918252602090912001556107a886610c51565b600486815481106107bb576107bb612015565b90600052602060002090602091828204019190066101000a81548160ff0219169083151502179055506107ed816109bc565b6005868154811061080057610800612015565b9060005260206000200181905550505050508061081c90612096565b90506106cd565b50505050505050505050565b6003818154811061021e57600080fd5b610848816108fd565b60005b818110156102a957600061086a84848481811061043d5761043d612015565b9050610875816109bc565b6000838154811061088857610888612015565b6000918252602090912001555061089e81612096565b905061084b565b600181815481106108b557600080fd5b60009182526020918290206040805180820182526004909302909101805483526001810154838501528151808301909252600281015482526003015492810192909252915082565b610908600080611cad565b60005b818110156102fc57600080546001810182558180527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e56301558061094d81612096565b91505061090b565b61095d611cce565b610965611cce565b600060808460ff1611610978578361097b565b60805b905061098681610f09565b6020830152608060ff85161161099d5760006109a8565b6109a8608085612393565b90506109b381610f09565b82525092915050565b6000806109cc8360000151610f7f565b905060006109dd8460200151610f7f565b9050806fffffffffffffffffffffffffffffffff166080836fffffffffffffffffffffffffffffffff16901b1792505050919050565b610a1b611cce565b610a23611cce565b610a2b610fd8565b8152610a35610fd8565b6020820152919050565b610a47611cce565b610a4f611cce565b610a57611d12565b83515181526020808501515190820152610a6f611d12565b845160209081015182528086015181015190820152610a8d82611012565b8352610a9881611012565b602084015250909392505050565b610ab260026000611cad565b60005b818110156102fc576002805460018101825560009182527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace015580610af981612096565b915050610ab5565b610b0d60036000611cad565b60005b818110156102fc576003805460018101825560009182527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b015580610b5481612096565b915050610b10565b610b6860046000611d3b565b60005b818110156102fc57600480546001810182556000919091527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b60208204018054601f9092166101000a60ff0219909116905580610bc781612096565b915050610b6b565b610bd7611cce565b610bdf611cce565b82608081901c610bee81611092565b8352610a9882611092565b610c01611cce565b610c09611cce565b600080610c1687866110de565b90506000610c2e8289610c298b8a61112a565b61119b565b90506000610c418389610c298b8b6111de565b9199919850919650945050505050565b6040517f0cfed56100000000000000000000000000000000000000000000000000000000815260006004820181905260248201839052908190606490630cfed561906044016020604051808303816000875af1158015610cb5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cd991906123db565b15159392505050565b610cee60016000611d60565b60005b818110156102fc57604080516080810182526000818301818152606083018290528252825180840190935280835260208084018290528083019384526001805480820182559252915180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf66004909302928301558201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7820155915180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf884015501517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf99091015580610de681612096565b915050610cf1565b610df6611cce565b610dfe611cce565b8351610e0a908461123b565b81526020840151610e1b908461123b565b602082015290505b92915050565b610e3560056000611cad565b60005b818110156102fc576005805460018101825560009182527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0015580610e7c81612096565b915050610e38565b610e8c611cce565b610e94611cce565b6000610e9e611cce565b6000610ebc610ead8a896110de565b610eb78989611280565b6112bf565b90506000610ecf828b610c298d8c61112a565b90506000610ee2838b610c298d8d6111de565b90506000610ef5848a610c298c8e61112a565b929c919b5092995090975095505050505050565b60408051808201909152600080825260208201526040805180820190915260008082526020820152600060408460ff1611610f445783610f47565b60405b9050610f528161137d565b6020830152604060ff851611610f69576000610f74565b610f74604085612393565b90506109b38161137d565b600080610f8f8360000151611425565b90506000610fa08460200151611425565b90508067ffffffffffffffff1660408367ffffffffffffffff166fffffffffffffffffffffffffffffffff16901b1792505050919050565b6040805180820190915260008082526020820152604080518082019091526000808252602082015261100861148c565b8152610a3561148c565b6040805180820182526000808252602080830182905283518085018552828152808201839052845180860186528381526060818401818152885151835288850180515190915287518089019098529487528684019081528751840151875293519092015190925291929091906110878261152f565b8352610a988161152f565b604080518082019091526000808252602082015260408051808201909152600080825260208201528267ffffffffffffffff604082901c166110d381611598565b8352610a9882611598565b6000806110f384600001518460000151611608565b90506111228161110b8660000151866000015161162d565b61111d8760200151876020015161166c565b6116ab565b949350505050565b611132611cce565b61113a611cce565b61114c8460200151846020015161176f565b81602001819052506000611168856020015185602001516117ef565b855185519192506111789161176f565b80835261119190829061118c81600161182e565b6118c5565b8252509392505050565b6111a3611cce565b6111ab611cce565b6111be85856020015185602001516118c5565b6020820152835183516111d29187916118c5565b815290505b9392505050565b6111e6611cce565b6111ee611cce565b61120084602001518460200151611914565b6020808301829052850151600091611217916117ef565b8551855191925061122791611914565b80835261119190829061118c816001611989565b60408051808201909152600080825260208201526040805180820190915260008082526020820152835161126f9084611a11565b81526020840151610e1b9084611a11565b60008061129584600001518460000151611608565b9050611122816112ad866000015186600001516117ef565b61111d87602001518760200151611ab3565b6000606463fe9c73d16112d3838080611af2565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff0000000000000000000000000000000000000000000000000000000000909116600482015260248101869052604481018590526064015b6020604051808303816000875af1158015611359573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111d791906123db565b6040517f072d17fc0000000000000000000000000000000000000000000000000000000081527f0400000000000000000000000000000000000000000000000000000000000000600482015260ff8216602482015260009060649063072d17fc906044015b6020604051808303816000875af1158015611401573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e2391906123db565b6040517f0cfed5610000000000000000000000000000000000000000000000000000000081527f0400000000000000000000000000000000000000000000000000000000000000600482015260248101829052600090606490630cfed561906044016113e2565b6040517f134eb8900000000000000000000000000000000000000000000000000000000081527f0400000000000000000000000000000000000000000000000000000000000000600482015260009060649063134eb890906024016020604051808303816000875af1158015611506573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061152a91906123db565b905090565b805160208201516040517fe4f36e1000000000000000000000000000000000000000000000000000000000815260009260649263e4f36e10926113e2927f04000000000000000000000000000000000000000000000000000000000000009290916004016123f4565b6040517fd9b60b600000000000000000000000000000000000000000000000000000000081527f0400000000000000000000000000000000000000000000000000000000000000600482015267ffffffffffffffff8216602482015260009060649063d9b60b60906044016113e2565b60006111d761161f84602001518460200151611b4f565b84518451610eb79190611b4f565b60008061164284600001518460000151611b4f565b90506111228161165a86600001518660000151611b64565b61111d87602001518760200151611b64565b60008061168184600001518460000151611b4f565b90506111228161169986600001518660000151611b64565b61111d87602001518760200151611b79565b600060646320cc408d6116bf838080611af2565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff000000000000000000000000000000000000000000000000000000000090911660048201526024810187905260448101869052606481018590526084016020604051808303816000875af115801561174b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061112291906123db565b604080518082019091526000808252602082015260408051808201909152600080825260208201526117a984602001518460200151611b8e565b81602001818152505060006117c685602001518560200151611ba3565b855185519192506117d691611b8e565b8083526111919082906117ea816001611bb8565b611c42565b60008061180484600001518460000151611b4f565b90506111228161181c86600001518660000151611ba3565b61111d87602001518760200151611ba3565b60408051808201909152600080825260208201526040805180820190915260008082526020820152600080604085901c67ffffffffffffffff16859150915061187b866020015182611bb8565b8360200181815250506000611894876020015183611c57565b90506118a4876000015184611bb8565b8085526118b89082906117ea816001611bb8565b8452509195945050505050565b604080518082019091526000808252602082015260408051808201909152600080825260208201526119008585602001518560200151611c42565b6020820152835183516111d2918791611c42565b6040805180820190915260008082526020820152604080518082019091526000808252602082015261194e84602001518460200151611c6d565b602080830182905285015160009161196591611ba3565b8551855191925061197591611c6d565b8083526111919082906117ea816001611c82565b60408051808201909152600080825260208201526040805180820190915260008082526020820152600080604085901c67ffffffffffffffff1685915091506119d6866020015182611c82565b60208085018290528701516000916119ed91611ba3565b90506119fd876000015184611c82565b8085526118b89082906117ea816001611c82565b60408051606083901b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001660208201528151601481830301815260348201928390527f3c6f0e6800000000000000000000000000000000000000000000000000000000909252600091606491633c6f0e689161133a917f04000000000000000000000000000000000000000000000000000000000000009188916038016123f4565b600080611ac884600001518460000151611b4f565b905061112281611ae086600001518660000151611ba3565b61111d87602001518760200151611c98565b6000816002811115611b0657611b066123ac565b60ff166008846004811115611b1d57611b1d6123ac565b61ffff16901b61ffff166010866004811115611b3b57611b3b6123ac565b62ffffff16901b171760e81b949350505050565b60006064637c12a1eb6112d360048085611af2565b60006064636d82e45e6112d360048085611af2565b6000606463813b20746112d360048085611af2565b6000606463371d1bf26112d360048085611af2565b6000606463dd1486936112d360048085611af2565b6000606463371d1bf2611bce6004806002611af2565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff000000000000000000000000000000000000000000000000000000000090911660048201526024810186905267ffffffffffffffff8516604482015260640161133a565b600060646320cc408d6116bf60048085611af2565b6000606463dd148693611bce6004806002611af2565b60006064638c5d01506112d360048085611af2565b60006064638c5d0150611bce6004806002611af2565b6000606463145fca2c6112d360048085611af2565b5080546000825590600052602060002090810190611ccb9190611d81565b50565b60408051608081018252600091810182815260608201929092529081908152602001611d0d604051806040016040528060008152602001600081525090565b905290565b604080516080810182526000918101828152606082019290925290815260208101611d0d611d9a565b50805460008255601f016020900490600052602060002090810190611ccb9190611d81565b5080546000825560040290600052602060002090810190611ccb9190611dc1565b5b80821115611d965760008155600101611d82565b5090565b60405180604001604052806002905b6060815260200190600190039081611da95790505090565b5b80821115611d9657600080825560018201819055600282018190556003820155600401611dc2565b600060208284031215611dfc57600080fd5b5035919050565b60008083601f840112611e1557600080fd5b50813567ffffffffffffffff811115611e2d57600080fd5b6020830191508360208260051b8501011115611e4857600080fd5b9250929050565b60008060208385031215611e6257600080fd5b823567ffffffffffffffff811115611e7957600080fd5b611e8585828601611e03565b90969095509350505050565b60008060008060008060608789031215611eaa57600080fd5b863567ffffffffffffffff80821115611ec257600080fd5b611ece8a838b01611e03565b90985096506020890135915080821115611ee757600080fd5b611ef38a838b01611e03565b90965094506040890135915080821115611f0c57600080fd5b50611f1989828a01611e03565b979a9699509497509295939492505050565b6000806000806000806000806080898b031215611f4757600080fd5b883567ffffffffffffffff80821115611f5f57600080fd5b611f6b8c838d01611e03565b909a50985060208b0135915080821115611f8457600080fd5b611f908c838d01611e03565b909850965060408b0135915080821115611fa957600080fd5b611fb58c838d01611e03565b909650945060608b0135915080821115611fce57600080fd5b50611fdb8b828c01611e03565b999c989b5096995094979396929594505050565b8251815260208084015181830152825160408301528201516060820152608081016111d7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006020828403121561205657600080fd5b813560ff811681146111d757600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036120c7576120c7612067565b5060010190565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6183360301811261210257600080fd5b9190910192915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff8111828210171561215e5761215e61210c565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156121ab576121ab61210c565b604052919050565b6000604082840312156121c557600080fd5b6121cd61213b565b9050813581526020820135602082015292915050565b600081360360a08112156121f657600080fd5b6121fe61213b565b608082121561220c57600080fd5b61221461213b565b915061222036856121b3565b82526040612230368287016121b3565b602081818601528484526080870135945067ffffffffffffffff91508185111561225957600080fd5b93860193601f368187011261226d57600080fd5b61227561213b565b808588013681111561228657600080fd5b885b8181101561237e578035878111156122a05760008081fd5b8a0136868201126122b15760008081fd5b6122b961213b565b808a8301368111156122cb5760008081fd5b835b8181101561236d5780358c8111156122e55760008081fd5b8501368b8201126122f65760008081fd5b80358d8111156123085761230861210c565b6123378d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08e84011601612164565b818152368e83850101111561234c5760008081fd5b818e84018f83013760009181018e0191909152855250928a01928a016122cd565b505086525050928501928501612288565b50509286019290925250929695505050505050565b60ff8281168282160390811115610e2357610e23612067565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000602082840312156123ed57600080fd5b5051919050565b7fff000000000000000000000000000000000000000000000000000000000000008416815260006020848184015260606040840152835180606085015260005b8181101561245057858101830151858201608001528201612434565b5060006080828601015260807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505094935050505056fea164736f6c6343000813000a";
329
-
330
- type Miscellaneous256BitTestsContractConstructorParams =
331
- | [signer?: Signer]
332
- | ConstructorParameters<typeof ContractFactory>;
333
-
334
- const isSuperArgs = (
335
- xs: Miscellaneous256BitTestsContractConstructorParams
336
- ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
337
-
338
- export class Miscellaneous256BitTestsContract__factory extends ContractFactory {
339
- constructor(...args: Miscellaneous256BitTestsContractConstructorParams) {
340
- if (isSuperArgs(args)) {
341
- super(...args);
342
- } else {
343
- super(_abi, _bytecode, args[0]);
344
- }
345
- }
346
-
347
- override getDeployTransaction(
348
- overrides?: NonPayableOverrides & { from?: string }
349
- ): Promise<ContractDeployTransaction> {
350
- return super.getDeployTransaction(overrides || {});
351
- }
352
- override deploy(overrides?: NonPayableOverrides & { from?: string }) {
353
- return super.deploy(overrides || {}) as Promise<
354
- Miscellaneous256BitTestsContract & {
355
- deploymentTransaction(): ContractTransactionResponse;
356
- }
357
- >;
358
- }
359
- override connect(
360
- runner: ContractRunner | null
361
- ): Miscellaneous256BitTestsContract__factory {
362
- return super.connect(runner) as Miscellaneous256BitTestsContract__factory;
363
- }
364
-
365
- static readonly bytecode = _bytecode;
366
- static readonly abi = _abi;
367
- static createInterface(): Miscellaneous256BitTestsContractInterface {
368
- return new Interface(_abi) as Miscellaneous256BitTestsContractInterface;
369
- }
370
- static connect(
371
- address: string,
372
- runner?: ContractRunner | null
373
- ): Miscellaneous256BitTestsContract {
374
- return new Contract(
375
- address,
376
- _abi,
377
- runner
378
- ) as unknown as Miscellaneous256BitTestsContract;
379
- }
380
- }