@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.
- package/.github/workflows/npm-publish.yml +19 -15
- package/README.md +3 -1
- package/contracts/disperse/coinByRatio/FixedRatioCoinDisperser.sol +452 -0
- package/contracts/disperse/coinByRatio/FixedRatioCoinDisperserLeftoverS1.sol +490 -0
- package/contracts/disperse/coinByRatio/FixedRatioCoinDisperserUnlimitedWindow.sol +432 -0
- package/contracts/disperse/disperseToken/MintDisperser.sol +120 -0
- package/contracts/disperse/disperseToken/TokenDisperser.sol +139 -0
- package/contracts/messaging/PrivateMessaging.sol +456 -0
- package/contracts/mocks/messaging/PrivateMessagingHarness.sol +54 -0
- package/contracts/mocks/oracle/CotiPriceConsumerMock.sol +31 -0
- package/contracts/mocks/token/ERC20DecimalsMock.sol +21 -0
- package/contracts/mocks/token/ERC20Mock.sol +19 -0
- package/contracts/mocks/token/PrivateERC20/EncryptedTokenReceiverMock.sol +18 -0
- package/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock.sol +18 -0
- package/contracts/mocks/token/PrivateERC20/PrivateERC20AuditorSupplyMock.sol +44 -0
- package/contracts/mocks/token/PrivateERC20/PrivateERC20CappedMock.sol +23 -0
- package/contracts/mocks/token/PrivateERC20/PrivateERC20GtCallerMock.sol +29 -0
- package/contracts/mocks/token/PrivateERC20/PrivateERC20Mock.sol +9 -4
- package/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol +39 -0
- package/contracts/mocks/token/PrivateERC20/PublicReentrantTokenReceiverMock.sol +29 -0
- package/contracts/mocks/token/PrivateERC20/PublicTokenReceiverBoolMock.sol +18 -0
- package/contracts/mocks/token/PrivateERC20/PublicTokenReceiverMock.sol +12 -0
- package/contracts/mocks/utils/mpc/Arithmetic128TestsContract.sol +123 -0
- package/contracts/mocks/utils/mpc/Arithmetic256TestsContract.sol +122 -0
- package/contracts/mocks/utils/mpc/Bitwise128TestsContract.sol +65 -0
- package/contracts/mocks/utils/mpc/Bitwise256TestsContract.sol +65 -0
- package/contracts/mocks/utils/mpc/CheckedArithmetic128WithOverflowBitTestsContract.sol +64 -0
- package/contracts/mocks/utils/mpc/CheckedArithmetic256WithOverflowBitTestsContract.sol +64 -0
- package/contracts/mocks/utils/mpc/Comparison128TestsContract.sol +98 -0
- package/contracts/mocks/utils/mpc/Comparison256TestsContract.sol +98 -0
- package/contracts/mocks/utils/mpc/MinMax128TestsContract.sol +44 -0
- package/contracts/mocks/utils/mpc/MinMax256TestsContract.sol +44 -0
- package/contracts/mocks/utils/mpc/MinimalImplementation.sol +55 -0
- package/contracts/mocks/utils/mpc/MinimalProxy.sol +27 -0
- package/contracts/mocks/utils/mpc/MpcOperations128TestContract.sol +267 -0
- package/contracts/mocks/utils/mpc/MpcOperationsTestContract.sol +334 -0
- package/contracts/mocks/utils/mpc/Mux128TestsContract.sol +24 -0
- package/contracts/mocks/utils/mpc/Mux256TestsContract.sol +24 -0
- package/contracts/mocks/utils/mpc/OnBoard128TestsContract.sol +93 -0
- package/contracts/mocks/utils/mpc/OnBoard256TestsContract.sol +116 -0
- package/contracts/mocks/utils/mpc/PrivacyImplementationV1.sol +157 -0
- package/contracts/mocks/utils/mpc/PrivacyImplementationV2.sol +133 -0
- package/contracts/mocks/utils/mpc/PrivacyProxy.sol +137 -0
- package/contracts/mocks/utils/mpc/Random128TestsContract.sol +32 -0
- package/contracts/mocks/utils/mpc/Random256TestsContract.sol +32 -0
- package/contracts/mocks/utils/mpc/Shift128TestsContract.sol +36 -0
- package/contracts/mocks/utils/mpc/Shift256TestsContract.sol +36 -0
- package/contracts/mocks/utils/mpc/Transfer128TestsContract.sol +29 -0
- package/contracts/mocks/utils/mpc/Transfer256TestsContract.sol +29 -0
- package/contracts/mocks/utils/mpc/TransferWithAllowance128TestsContract.sol +32 -0
- package/contracts/mocks/utils/mpc/TransferWithAllowance256TestsContract.sol +32 -0
- package/contracts/mocks/utils/mpc/ValidateCiphertext128TestsContract.sol +59 -0
- package/contracts/mocks/utils/mpc/ValidateCiphertext256TestsContract.sol +63 -0
- package/contracts/mocks/utils/mpc/ValidateCiphertextTestsContract.sol +99 -0
- package/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock.sol +7 -6
- package/contracts/node/CotiNodeRewards.sol +199 -0
- package/contracts/node/SoulboundNodeNFT.sol +519 -0
- package/contracts/oracle/CotiPriceConsumer.sol +103 -0
- package/contracts/oracle/ICotiPriceConsumer.sol +15 -0
- package/contracts/oracle/IStdReference.sol +26 -0
- package/contracts/privacyBridge/PrivacyBridge.sol +600 -0
- package/contracts/privacyBridge/PrivacyBridgeCotiNative.sol +316 -0
- package/contracts/privacyBridge/PrivacyBridgeERC20.sol +333 -0
- package/contracts/privacyBridge/PrivacyBridgeUSDCe.sol +22 -0
- package/contracts/privacyBridge/PrivacyBridgeUSDT.sol +23 -0
- package/contracts/privacyBridge/PrivacyBridgeWADA.sol +23 -0
- package/contracts/privacyBridge/PrivacyBridgeWBTC.sol +23 -0
- package/contracts/privacyBridge/PrivacyBridgeWETH.sol +23 -0
- package/contracts/privacyBridge/PrivacyBridgegCoti.sol +23 -0
- package/contracts/token/PrivateERC20/IPrivateERC20.sol +273 -40
- package/contracts/token/PrivateERC20/ITokenReceiver.sol +17 -0
- package/contracts/token/PrivateERC20/ITokenReceiverEncrypted.sol +20 -0
- package/contracts/token/PrivateERC20/PrivateERC20.sol +861 -152
- package/contracts/token/PrivateERC20/tokens/PrivateBridgedUSDC.sol +17 -0
- package/contracts/token/PrivateERC20/tokens/PrivateCOTI.sol +13 -0
- package/contracts/token/PrivateERC20/tokens/PrivateCOTITreasuryGovernanceToken.sol +17 -0
- package/contracts/token/PrivateERC20/tokens/PrivateTetherUSD.sol +17 -0
- package/contracts/token/PrivateERC20/tokens/PrivateWrappedADA.sol +17 -0
- package/contracts/token/PrivateERC20/tokens/PrivateWrappedBTC.sol +17 -0
- package/contracts/token/PrivateERC20/tokens/PrivateWrappedEther.sol +13 -0
- package/contracts/utils/mpc/MpcCore.sol +10780 -4962
- package/contracts/utils/mpc/MpcInterface.sol +7 -2
- package/hardhat/gasPriceBump.ts +60 -0
- package/hardhat.config.ts +63 -12
- package/package.json +22 -4
- package/scripts/add-bridge-operators.cjs +87 -0
- package/scripts/deploy-coti-price-consumer-mainnet.cjs +49 -0
- package/scripts/deployCotiNodeRewards.ts +51 -0
- package/scripts/deploySoulboundNodeNFT.ts +57 -0
- package/scripts/redeploy-private-and-bridges.cjs +201 -0
- package/scripts/set-bridge-limits-mainnet.cjs +177 -0
- package/scripts/verify-mainnet-private-bridges.cjs +289 -0
- package/sonar-project.properties +11 -0
- package/test/messaging/PrivateMessaging.test.ts +158 -0
- package/test/privacyBridge/UnifiedPrivacyBridges.test.cjs +1663 -0
- package/test/token/PrivateERC20/PrivacyBridge.fees.test.ts +250 -0
- package/test/token/PrivateERC20/PrivateERC20.test.ts +1109 -268
- package/test/utils/mpc/Bitwise128.test.ts +92 -0
- package/test/utils/mpc/Bitwise256.test.ts +101 -0
- package/test/utils/mpc/BuildInputText128.test.ts +398 -0
- package/test/utils/mpc/CheckedArithmetic128.test.ts +45 -0
- package/test/utils/mpc/CheckedArithmetic256.test.ts +45 -0
- package/test/utils/mpc/Comparison128.test.ts +48 -0
- package/test/utils/mpc/Comparison256.test.ts +48 -0
- package/test/utils/mpc/InvalidCiphertext.test.ts +179 -0
- package/test/utils/mpc/InvalidCiphertext128.test.ts +179 -0
- package/test/utils/mpc/InvalidCiphertext256.test.ts +201 -0
- package/test/utils/mpc/InvalidTransfer128.test.ts +166 -0
- package/test/utils/mpc/InvalidTransfer256.test.ts +158 -0
- package/test/utils/mpc/MinMax128.test.ts +44 -0
- package/test/utils/mpc/MinMax256.test.ts +44 -0
- package/test/utils/mpc/MinimalProxyDemo.test.ts +280 -0
- package/test/utils/mpc/MpcOperations.test.ts +589 -0
- package/test/utils/mpc/MpcOperations128.test.ts +632 -0
- package/test/utils/mpc/Mux128.test.ts +41 -0
- package/test/utils/mpc/Mux256.test.ts +41 -0
- package/test/utils/mpc/NegativeCases.test.ts +478 -0
- package/test/utils/mpc/NegativeCases128.test.ts +237 -0
- package/test/utils/mpc/NegativeCases256.test.ts +236 -0
- package/test/utils/mpc/OnBoard128.test.ts +90 -0
- package/test/utils/mpc/OnBoard256.test.ts +114 -0
- package/test/utils/mpc/Precompile128.test.ts +51 -0
- package/test/utils/mpc/Precompile256.test.ts +115 -0
- package/test/utils/mpc/ProxyValidation.test.ts +199 -0
- package/test/utils/mpc/Random128.test.ts +47 -0
- package/test/utils/mpc/Random256.test.ts +47 -0
- package/test/utils/mpc/Shift128.test.ts +41 -0
- package/test/utils/mpc/Shift256.test.ts +41 -0
- package/test/utils/mpc/Transfer128.test.ts +46 -0
- package/test/utils/mpc/Transfer256.test.ts +46 -0
- package/test/utils/mpc/TransferWithAllowance128.test.ts +48 -0
- package/test/utils/mpc/TransferWithAllowance256.test.ts +48 -0
- package/test/utils/mpc/UpgradeablePrivacyProxy.test.ts +307 -0
- package/test/utils/mpc/ValidateCiphertext.test.ts +221 -0
- package/test/utils/mpc/ValidateCiphertext256.test.ts +161 -0
- package/test/utils/mpc/ValidateCiphertext256Decryption.test.ts +383 -0
- package/test/utils/mpc/WalletEncryptionFailures.test.ts +494 -0
- package/test/utils/privateErc20Helpers.ts +97 -0
- package/typechain-types/@openzeppelin/contracts/access/AccessControl.ts +324 -0
- package/typechain-types/@openzeppelin/contracts/access/AccessControlEnumerable.ts +361 -0
- package/typechain-types/@openzeppelin/contracts/access/IAccessControl.ts +292 -0
- package/typechain-types/@openzeppelin/contracts/access/IAccessControlEnumerable.ts +329 -0
- package/typechain-types/@openzeppelin/contracts/access/Ownable.ts +153 -0
- package/typechain-types/@openzeppelin/contracts/access/index.ts +8 -0
- package/typechain-types/@openzeppelin/contracts/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts/security/Pausable.ts +150 -0
- package/typechain-types/@openzeppelin/contracts/security/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts/token/ERC20/ERC20.ts +330 -0
- package/typechain-types/@openzeppelin/contracts/token/ERC20/IERC20.ts +262 -0
- package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts +286 -0
- package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.ts +143 -0
- package/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/index.ts +5 -0
- package/typechain-types/@openzeppelin/contracts/token/ERC20/index.ts +7 -0
- package/typechain-types/@openzeppelin/contracts/token/ERC721/ERC721.ts +420 -0
- package/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.ts +420 -0
- package/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/index.ts +4 -0
- package/typechain-types/@openzeppelin/contracts/token/ERC721/index.ts +3 -0
- package/typechain-types/@openzeppelin/contracts/token/index.ts +2 -0
- package/typechain-types/contracts/disperse/coinByRatio/FixedRatioCoinDisperser.ts +679 -0
- package/typechain-types/contracts/disperse/coinByRatio/FixedRatioCoinDisperserLeftoverS1.ts +735 -0
- package/typechain-types/contracts/disperse/coinByRatio/FixedRatioCoinDisperserUnlimitedWindow.ts +734 -0
- package/typechain-types/contracts/disperse/coinByRatio/index.ts +6 -0
- package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/IMintableERC20.ts +97 -0
- package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/IOwnable.ts +95 -0
- package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/MintDisperser.ts +228 -0
- package/typechain-types/contracts/disperse/disperseToken/MintDisperser.sol/index.ts +6 -0
- package/typechain-types/contracts/disperse/disperseToken/TokenDisperser.ts +191 -0
- package/typechain-types/contracts/disperse/disperseToken/index.ts +6 -0
- package/typechain-types/contracts/disperse/index.ts +7 -0
- package/typechain-types/contracts/index.ts +10 -0
- package/typechain-types/contracts/messaging/PrivateMessaging.ts +871 -0
- package/typechain-types/contracts/messaging/index.ts +4 -0
- package/typechain-types/contracts/mocks/index.ts +4 -0
- package/typechain-types/contracts/mocks/messaging/PrivateMessagingHarness.ts +951 -0
- package/typechain-types/contracts/mocks/messaging/index.ts +4 -0
- package/typechain-types/contracts/mocks/oracle/CotiPriceConsumerMock.ts +163 -0
- package/typechain-types/contracts/mocks/oracle/index.ts +4 -0
- package/typechain-types/contracts/mocks/token/ERC20DecimalsMock.ts +349 -0
- package/typechain-types/contracts/mocks/token/ERC20Mock.ts +368 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/EncryptedTokenReceiverMock.ts +108 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock.ts +1892 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20AuditorSupplyMock.ts +1296 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20CappedMock.ts +1270 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20GtCallerMock.ts +166 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20Mock.ts +827 -78
- package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/IPrivateERC20TransferAndCallEncrypted.ts +102 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/PrivateERC20ReentrantReceiverMock.ts +154 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/index.ts +5 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/PublicReentrantTokenReceiverMock.ts +155 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/PublicTokenReceiverBoolMock.ts +107 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/PublicTokenReceiverMock.ts +100 -0
- package/typechain-types/contracts/mocks/token/PrivateERC20/index.ts +10 -0
- package/typechain-types/contracts/mocks/token/index.ts +2 -0
- package/typechain-types/contracts/mocks/utils/mpc/{Arithmetic128BitTestsContract.ts → Arithmetic128TestsContract.ts} +96 -126
- package/typechain-types/contracts/mocks/utils/mpc/{Arithmetic256BitTestsContract.ts → Arithmetic256TestsContract.ts} +97 -133
- package/typechain-types/contracts/mocks/utils/mpc/{Bitwise128BitTestsContract.ts → Bitwise128TestsContract.ts} +52 -59
- package/typechain-types/contracts/mocks/utils/mpc/{Bitwise256BitTestsContract.ts → Bitwise256TestsContract.ts} +52 -59
- package/typechain-types/contracts/mocks/utils/mpc/CheckedArithmetic128WithOverflowBitTestsContract.ts +206 -0
- package/typechain-types/contracts/mocks/utils/mpc/CheckedArithmetic256WithOverflowBitTestsContract.ts +206 -0
- package/typechain-types/contracts/mocks/utils/mpc/{Comparison128BitTestsContract.ts → Comparison128TestsContract.ts} +115 -97
- package/typechain-types/contracts/mocks/utils/mpc/{Comparison256BitTestsContract.ts → Comparison256TestsContract.ts} +115 -97
- package/typechain-types/contracts/mocks/utils/mpc/MinMax128TestsContract.ts +142 -0
- package/typechain-types/contracts/mocks/utils/mpc/MinMax256TestsContract.ts +142 -0
- package/typechain-types/contracts/mocks/utils/mpc/MinimalImplementation.ts +259 -0
- package/typechain-types/contracts/mocks/utils/mpc/MinimalProxy.ts +90 -0
- package/typechain-types/contracts/mocks/utils/mpc/MpcOperations128TestContract.ts +388 -0
- package/typechain-types/contracts/mocks/utils/mpc/MpcOperationsTestContract.ts +455 -0
- package/typechain-types/contracts/mocks/utils/mpc/Mux128TestsContract.ts +109 -0
- package/typechain-types/contracts/mocks/utils/mpc/Mux256TestsContract.ts +109 -0
- package/typechain-types/contracts/mocks/utils/mpc/OnBoard128TestsContract.ts +166 -0
- package/typechain-types/contracts/mocks/utils/mpc/OnBoard256TestsContract.ts +194 -0
- package/typechain-types/contracts/mocks/utils/mpc/PrivacyImplementationV1.ts +385 -0
- package/typechain-types/contracts/mocks/utils/mpc/PrivacyImplementationV2.ts +441 -0
- package/typechain-types/contracts/mocks/utils/mpc/PrivacyProxy.ts +201 -0
- package/typechain-types/contracts/mocks/utils/mpc/Random128TestsContract.ts +131 -0
- package/typechain-types/contracts/mocks/utils/mpc/Random256TestsContract.ts +131 -0
- package/typechain-types/contracts/mocks/utils/mpc/Shift128TestsContract.ts +142 -0
- package/typechain-types/contracts/mocks/utils/mpc/Shift256TestsContract.ts +142 -0
- package/typechain-types/contracts/mocks/utils/mpc/Transfer128TestsContract.ts +109 -0
- package/typechain-types/contracts/mocks/utils/mpc/Transfer256TestsContract.ts +109 -0
- package/typechain-types/contracts/mocks/utils/mpc/TransferWithAllowance128TestsContract.ts +128 -0
- package/typechain-types/contracts/mocks/utils/mpc/TransferWithAllowance256TestsContract.ts +128 -0
- package/typechain-types/contracts/mocks/utils/mpc/ValidateCiphertext128TestsContract.ts +198 -0
- package/typechain-types/contracts/mocks/utils/mpc/ValidateCiphertext256TestsContract.ts +182 -0
- package/typechain-types/contracts/mocks/utils/mpc/ValidateCiphertextTestsContract.ts +257 -0
- package/typechain-types/contracts/mocks/utils/mpc/index.ts +32 -8
- package/typechain-types/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock.ts +6 -6
- package/typechain-types/contracts/node/CotiNodeRewards.ts +566 -0
- package/typechain-types/contracts/node/SoulboundNodeNFT.sol/IERC5192.ts +123 -0
- package/typechain-types/contracts/node/SoulboundNodeNFT.sol/SoulboundNodeNFT.ts +975 -0
- package/typechain-types/contracts/node/SoulboundNodeNFT.sol/index.ts +5 -0
- package/typechain-types/contracts/node/index.ts +6 -0
- package/typechain-types/contracts/oracle/CotiPriceConsumer.ts +256 -0
- package/typechain-types/contracts/oracle/ICotiPriceConsumer.ts +119 -0
- package/typechain-types/contracts/oracle/IStdReference.ts +136 -0
- package/typechain-types/contracts/oracle/index.ts +6 -0
- package/typechain-types/contracts/privacyBridge/PrivacyBridge.ts +1628 -0
- package/typechain-types/contracts/privacyBridge/PrivacyBridgeCotiNative.ts +1870 -0
- package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/IHasDecimals.ts +84 -0
- package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/PrivacyBridgeERC20.ts +1892 -0
- package/typechain-types/contracts/privacyBridge/PrivacyBridgeERC20.sol/index.ts +5 -0
- package/typechain-types/contracts/privacyBridge/PrivacyBridgeUSDCe.ts +1892 -0
- package/typechain-types/contracts/privacyBridge/PrivacyBridgeUSDT.ts +1892 -0
- package/typechain-types/contracts/privacyBridge/PrivacyBridgeWADA.ts +1892 -0
- package/typechain-types/contracts/privacyBridge/PrivacyBridgeWBTC.ts +1892 -0
- package/typechain-types/contracts/privacyBridge/PrivacyBridgeWETH.ts +1892 -0
- package/typechain-types/contracts/privacyBridge/PrivacyBridgegCoti.ts +1892 -0
- package/typechain-types/contracts/privacyBridge/index.ts +13 -0
- package/typechain-types/contracts/token/PrivateERC20/IPrivateERC20.ts +507 -70
- package/typechain-types/contracts/token/PrivateERC20/ITokenReceiver.ts +100 -0
- package/typechain-types/contracts/token/PrivateERC20/ITokenReceiverEncrypted.ts +99 -0
- package/typechain-types/contracts/token/PrivateERC20/PrivateERC20.ts +833 -68
- package/typechain-types/contracts/token/PrivateERC20/index.ts +4 -0
- package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateBridgedUSDC.ts +1270 -0
- package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateCOTI.ts +1270 -0
- package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateCOTITreasuryGovernanceToken.ts +1270 -0
- package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateTetherUSD.ts +1270 -0
- package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedADA.ts +1270 -0
- package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedBTC.ts +1270 -0
- package/typechain-types/contracts/token/PrivateERC20/tokens/PrivateWrappedEther.ts +1270 -0
- package/typechain-types/contracts/token/PrivateERC20/tokens/index.ts +10 -0
- package/typechain-types/contracts/utils/mpc/MpcInterface.sol/ExtendedOperations.ts +111 -10
- package/typechain-types/factories/@openzeppelin/contracts/access/AccessControlEnumerable__factory.ts +276 -0
- package/typechain-types/factories/@openzeppelin/contracts/access/AccessControl__factory.ts +229 -0
- package/typechain-types/factories/@openzeppelin/contracts/access/IAccessControlEnumerable__factory.ts +244 -0
- package/typechain-types/factories/@openzeppelin/contracts/access/IAccessControl__factory.ts +197 -0
- package/typechain-types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +74 -0
- package/typechain-types/factories/@openzeppelin/contracts/access/index.ts +8 -0
- package/typechain-types/factories/@openzeppelin/contracts/index.ts +2 -0
- package/typechain-types/factories/@openzeppelin/contracts/security/Pausable__factory.ts +61 -0
- package/typechain-types/factories/@openzeppelin/contracts/security/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts +356 -0
- package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts +205 -0
- package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts +247 -0
- package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit__factory.ts +100 -0
- package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts +5 -0
- package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/index.ts +6 -0
- package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.ts +416 -0
- package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.ts +355 -0
- package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.ts +4 -0
- package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/index.ts +2 -0
- package/typechain-types/factories/@openzeppelin/contracts/token/index.ts +1 -0
- package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperserLeftoverS1__factory.ts +791 -0
- package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperserUnlimitedWindow__factory.ts +711 -0
- package/typechain-types/factories/contracts/disperse/coinByRatio/FixedRatioCoinDisperser__factory.ts +759 -0
- package/typechain-types/factories/contracts/disperse/coinByRatio/index.ts +6 -0
- package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/IMintableERC20__factory.ts +43 -0
- package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/IOwnable__factory.ts +35 -0
- package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/MintDisperser__factory.ts +203 -0
- package/typechain-types/factories/contracts/disperse/disperseToken/MintDisperser.sol/index.ts +6 -0
- package/typechain-types/factories/contracts/disperse/disperseToken/TokenDisperser__factory.ts +198 -0
- package/typechain-types/factories/contracts/disperse/disperseToken/index.ts +5 -0
- package/typechain-types/factories/contracts/disperse/index.ts +5 -0
- package/typechain-types/factories/contracts/index.ts +5 -0
- package/typechain-types/factories/contracts/messaging/PrivateMessaging__factory.ts +1035 -0
- package/typechain-types/factories/contracts/messaging/index.ts +4 -0
- package/typechain-types/factories/contracts/mocks/access/DataPrivacyFramework/DataPrivacyFrameworkMock__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/index.ts +2 -0
- package/typechain-types/factories/contracts/mocks/messaging/PrivateMessagingHarness__factory.ts +1161 -0
- package/typechain-types/factories/contracts/mocks/messaging/index.ts +4 -0
- package/typechain-types/factories/contracts/mocks/oracle/CotiPriceConsumerMock__factory.ts +159 -0
- package/typechain-types/factories/contracts/mocks/oracle/index.ts +4 -0
- package/typechain-types/factories/contracts/mocks/token/ERC20DecimalsMock__factory.ts +394 -0
- package/typechain-types/factories/contracts/mocks/token/ERC20Mock__factory.ts +392 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/EncryptedTokenReceiverMock__factory.ts +125 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivacyBridgeERC20Mock__factory.ts +1797 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20AuditorSupplyMock__factory.ts +1514 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20CappedMock__factory.ts +1466 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20GtCallerMock__factory.ts +165 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20Mock__factory.ts +975 -127
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/IPrivateERC20TransferAndCallEncrypted__factory.ts +54 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/PrivateERC20ReentrantReceiverMock__factory.ts +159 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20ReentrantReceiverMock.sol/index.ts +5 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicReentrantTokenReceiverMock__factory.ts +164 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicTokenReceiverBoolMock__factory.ts +130 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PublicTokenReceiverMock__factory.ts +102 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC20/index.ts +9 -0
- package/typechain-types/factories/contracts/mocks/token/PrivateERC721/PrivateERC721URIStorageMock__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/token/index.ts +2 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic128TestsContract__factory.ts +330 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic256TestsContract__factory.ts +330 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/ArithmeticTestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise128TestsContract__factory.ts +184 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise256TestsContract__factory.ts +184 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/BitwiseTestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmetic128WithOverflowBitTestsContract__factory.ts +203 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmetic256WithOverflowBitTestsContract__factory.ts +203 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/CheckedArithmeticWIthOverflowBitTestsContract.sol/CheckedArithmeticWithOverflowBitTestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison128TestsContract__factory.ts +295 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison1TestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison256TestsContract__factory.ts +295 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison2TestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/MinMax128TestsContract__factory.ts +147 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/MinMax256TestsContract__factory.ts +147 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/MinMaxTestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/MinimalImplementation__factory.ts +263 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/MinimalProxy__factory.ts +104 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous1TestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/MiscellaneousTestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/MpcOperations128TestContract__factory.ts +723 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/MpcOperationsTestContract__factory.ts +1410 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Mux128TestsContract__factory.ts +115 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Mux256TestsContract__factory.ts +115 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/OffboardToUserKeyTestContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/OnBoard128TestsContract__factory.ts +175 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/OnBoard256TestsContract__factory.ts +205 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyImplementationV1__factory.ts +521 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyImplementationV2__factory.ts +648 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/PrivacyProxy__factory.ts +179 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Random128TestsContract__factory.ts +131 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Random256TestsContract__factory.ts +131 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Shift128TestsContract__factory.ts +147 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Shift256TestsContract__factory.ts +147 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/ShiftTestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/StringTestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/Transfer128TestsContract__factory.ts +135 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/Transfer256TestsContract__factory.ts +135 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/TransferScalarTestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/TransferTestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance128TestsContract__factory.ts +154 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance256TestsContract__factory.ts +154 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_16TestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_32TestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_64TestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowance64_8TestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowanceScalarTestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/TransferWithAllowanceTestsContract__factory.ts +1 -1
- package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertext128TestsContract__factory.ts +190 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertext256TestsContract__factory.ts +210 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/ValidateCiphertextTestsContract__factory.ts +260 -0
- package/typechain-types/factories/contracts/mocks/utils/mpc/index.ts +32 -8
- package/typechain-types/factories/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock__factory.ts +10 -28
- package/typechain-types/factories/contracts/node/CotiNodeRewards__factory.ts +549 -0
- package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/IERC5192__factory.ts +54 -0
- package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/SoulboundNodeNFT__factory.ts +947 -0
- package/typechain-types/factories/contracts/node/SoulboundNodeNFT.sol/index.ts +5 -0
- package/typechain-types/factories/contracts/node/index.ts +5 -0
- package/typechain-types/factories/contracts/onboard/AccountOnboard__factory.ts +1 -1
- package/typechain-types/factories/contracts/oracle/CotiPriceConsumer__factory.ts +295 -0
- package/typechain-types/factories/contracts/oracle/ICotiPriceConsumer__factory.ts +73 -0
- package/typechain-types/factories/contracts/oracle/IStdReference__factory.ts +107 -0
- package/typechain-types/factories/contracts/oracle/index.ts +6 -0
- package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeCotiNative__factory.ts +1676 -0
- package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/IHasDecimals__factory.ts +38 -0
- package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/PrivacyBridgeERC20__factory.ts +1678 -0
- package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeERC20.sol/index.ts +5 -0
- package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeUSDCe__factory.ts +1782 -0
- package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeUSDT__factory.ts +1782 -0
- package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWADA__factory.ts +1782 -0
- package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWBTC__factory.ts +1782 -0
- package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgeWETH__factory.ts +1782 -0
- package/typechain-types/factories/contracts/privacyBridge/PrivacyBridge__factory.ts +1367 -0
- package/typechain-types/factories/contracts/privacyBridge/PrivacyBridgegCoti__factory.ts +1782 -0
- package/typechain-types/factories/contracts/privacyBridge/index.ts +12 -0
- package/typechain-types/factories/contracts/token/PrivateERC20/IPrivateERC20__factory.ts +639 -61
- package/typechain-types/factories/contracts/token/PrivateERC20/ITokenReceiverEncrypted__factory.ts +53 -0
- package/typechain-types/factories/contracts/token/PrivateERC20/ITokenReceiver__factory.ts +54 -0
- package/typechain-types/factories/contracts/token/PrivateERC20/PrivateERC20__factory.ts +986 -120
- package/typechain-types/factories/contracts/token/PrivateERC20/index.ts +3 -0
- package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateBridgedUSDC__factory.ts +1445 -0
- package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateCOTITreasuryGovernanceToken__factory.ts +1451 -0
- package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateCOTI__factory.ts +1442 -0
- package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateTetherUSD__factory.ts +1445 -0
- package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedADA__factory.ts +1445 -0
- package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedBTC__factory.ts +1445 -0
- package/typechain-types/factories/contracts/token/PrivateERC20/tokens/PrivateWrappedEther__factory.ts +1451 -0
- package/typechain-types/factories/contracts/token/PrivateERC20/tokens/index.ts +10 -0
- package/typechain-types/factories/contracts/utils/mpc/MpcCore__factory.ts +1 -1
- package/typechain-types/factories/contracts/utils/mpc/MpcInterface.sol/ExtendedOperations__factory.ts +126 -0
- package/typechain-types/hardhat.d.ts +1772 -278
- package/typechain-types/index.ts +182 -16
- package/contracts/mocks/utils/mpc/Arithmetic128BitTestsContract.sol +0 -260
- package/contracts/mocks/utils/mpc/Arithmetic256BitTestsContract.sol +0 -264
- package/contracts/mocks/utils/mpc/Bitwise128BitTestsContract.sol +0 -91
- package/contracts/mocks/utils/mpc/Bitwise256BitTestsContract.sol +0 -91
- package/contracts/mocks/utils/mpc/Comparison128BitTestsContract.sol +0 -158
- package/contracts/mocks/utils/mpc/Comparison256BitTestsContract.sol +0 -158
- package/contracts/mocks/utils/mpc/Miscellaneous128BitTestsContract.sol +0 -185
- package/contracts/mocks/utils/mpc/Miscellaneous256BitTestsContract.sol +0 -190
- package/contracts/mocks/utils/mpc/README.md +0 -486
- package/test/utils/mpc/Unsigned128BitIntegers.test.ts +0 -945
- package/test/utils/mpc/Unsigned256BitIntegers.test.ts +0 -1124
- package/test/utils/mpc/helpers.ts +0 -77
- package/typechain-types/contracts/mocks/utils/mpc/Miscellaneous128BitTestsContract.ts +0 -302
- package/typechain-types/contracts/mocks/utils/mpc/Miscellaneous256BitTestsContract.ts +0 -322
- package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic128BitTestsContract__factory.ts +0 -349
- package/typechain-types/factories/contracts/mocks/utils/mpc/Arithmetic256BitTestsContract__factory.ts +0 -364
- package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise128BitTestsContract__factory.ts +0 -182
- package/typechain-types/factories/contracts/mocks/utils/mpc/Bitwise256BitTestsContract__factory.ts +0 -182
- package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison128BitTestsContract__factory.ts +0 -255
- package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison256BitTestsContract__factory.ts +0 -255
- package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous128BitTestsContract__factory.ts +0 -332
- package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous256BitTestsContract__factory.ts +0 -380
package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison128TestsContract__factory.ts
ADDED
|
@@ -0,0 +1,295 @@
|
|
|
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
|
+
Comparison128TestsContract,
|
|
14
|
+
Comparison128TestsContractInterface,
|
|
15
|
+
} from "../../../../../contracts/mocks/utils/mpc/Comparison128TestsContract";
|
|
16
|
+
|
|
17
|
+
const _abi = [
|
|
18
|
+
{
|
|
19
|
+
inputs: [
|
|
20
|
+
{
|
|
21
|
+
internalType: "uint128",
|
|
22
|
+
name: "a",
|
|
23
|
+
type: "uint128",
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
internalType: "uint128",
|
|
27
|
+
name: "b",
|
|
28
|
+
type: "uint128",
|
|
29
|
+
},
|
|
30
|
+
],
|
|
31
|
+
name: "eqTest",
|
|
32
|
+
outputs: [
|
|
33
|
+
{
|
|
34
|
+
internalType: "bool",
|
|
35
|
+
name: "",
|
|
36
|
+
type: "bool",
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
stateMutability: "nonpayable",
|
|
40
|
+
type: "function",
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
inputs: [
|
|
44
|
+
{
|
|
45
|
+
internalType: "uint128",
|
|
46
|
+
name: "a",
|
|
47
|
+
type: "uint128",
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
internalType: "uint128",
|
|
51
|
+
name: "b",
|
|
52
|
+
type: "uint128",
|
|
53
|
+
},
|
|
54
|
+
],
|
|
55
|
+
name: "geTest",
|
|
56
|
+
outputs: [
|
|
57
|
+
{
|
|
58
|
+
internalType: "bool",
|
|
59
|
+
name: "",
|
|
60
|
+
type: "bool",
|
|
61
|
+
},
|
|
62
|
+
],
|
|
63
|
+
stateMutability: "nonpayable",
|
|
64
|
+
type: "function",
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
inputs: [],
|
|
68
|
+
name: "getEqResult",
|
|
69
|
+
outputs: [
|
|
70
|
+
{
|
|
71
|
+
internalType: "bool",
|
|
72
|
+
name: "",
|
|
73
|
+
type: "bool",
|
|
74
|
+
},
|
|
75
|
+
],
|
|
76
|
+
stateMutability: "view",
|
|
77
|
+
type: "function",
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
inputs: [],
|
|
81
|
+
name: "getGeResult",
|
|
82
|
+
outputs: [
|
|
83
|
+
{
|
|
84
|
+
internalType: "bool",
|
|
85
|
+
name: "",
|
|
86
|
+
type: "bool",
|
|
87
|
+
},
|
|
88
|
+
],
|
|
89
|
+
stateMutability: "view",
|
|
90
|
+
type: "function",
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
inputs: [],
|
|
94
|
+
name: "getGtResult",
|
|
95
|
+
outputs: [
|
|
96
|
+
{
|
|
97
|
+
internalType: "bool",
|
|
98
|
+
name: "",
|
|
99
|
+
type: "bool",
|
|
100
|
+
},
|
|
101
|
+
],
|
|
102
|
+
stateMutability: "view",
|
|
103
|
+
type: "function",
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
inputs: [],
|
|
107
|
+
name: "getLeResult",
|
|
108
|
+
outputs: [
|
|
109
|
+
{
|
|
110
|
+
internalType: "bool",
|
|
111
|
+
name: "",
|
|
112
|
+
type: "bool",
|
|
113
|
+
},
|
|
114
|
+
],
|
|
115
|
+
stateMutability: "view",
|
|
116
|
+
type: "function",
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
inputs: [],
|
|
120
|
+
name: "getLtResult",
|
|
121
|
+
outputs: [
|
|
122
|
+
{
|
|
123
|
+
internalType: "bool",
|
|
124
|
+
name: "",
|
|
125
|
+
type: "bool",
|
|
126
|
+
},
|
|
127
|
+
],
|
|
128
|
+
stateMutability: "view",
|
|
129
|
+
type: "function",
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
inputs: [],
|
|
133
|
+
name: "getNeResult",
|
|
134
|
+
outputs: [
|
|
135
|
+
{
|
|
136
|
+
internalType: "bool",
|
|
137
|
+
name: "",
|
|
138
|
+
type: "bool",
|
|
139
|
+
},
|
|
140
|
+
],
|
|
141
|
+
stateMutability: "view",
|
|
142
|
+
type: "function",
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
inputs: [
|
|
146
|
+
{
|
|
147
|
+
internalType: "uint128",
|
|
148
|
+
name: "a",
|
|
149
|
+
type: "uint128",
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
internalType: "uint128",
|
|
153
|
+
name: "b",
|
|
154
|
+
type: "uint128",
|
|
155
|
+
},
|
|
156
|
+
],
|
|
157
|
+
name: "gtTest",
|
|
158
|
+
outputs: [
|
|
159
|
+
{
|
|
160
|
+
internalType: "bool",
|
|
161
|
+
name: "",
|
|
162
|
+
type: "bool",
|
|
163
|
+
},
|
|
164
|
+
],
|
|
165
|
+
stateMutability: "nonpayable",
|
|
166
|
+
type: "function",
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
inputs: [
|
|
170
|
+
{
|
|
171
|
+
internalType: "uint128",
|
|
172
|
+
name: "a",
|
|
173
|
+
type: "uint128",
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
internalType: "uint128",
|
|
177
|
+
name: "b",
|
|
178
|
+
type: "uint128",
|
|
179
|
+
},
|
|
180
|
+
],
|
|
181
|
+
name: "leTest",
|
|
182
|
+
outputs: [
|
|
183
|
+
{
|
|
184
|
+
internalType: "bool",
|
|
185
|
+
name: "",
|
|
186
|
+
type: "bool",
|
|
187
|
+
},
|
|
188
|
+
],
|
|
189
|
+
stateMutability: "nonpayable",
|
|
190
|
+
type: "function",
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
inputs: [
|
|
194
|
+
{
|
|
195
|
+
internalType: "uint128",
|
|
196
|
+
name: "a",
|
|
197
|
+
type: "uint128",
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
internalType: "uint128",
|
|
201
|
+
name: "b",
|
|
202
|
+
type: "uint128",
|
|
203
|
+
},
|
|
204
|
+
],
|
|
205
|
+
name: "ltTest",
|
|
206
|
+
outputs: [
|
|
207
|
+
{
|
|
208
|
+
internalType: "bool",
|
|
209
|
+
name: "",
|
|
210
|
+
type: "bool",
|
|
211
|
+
},
|
|
212
|
+
],
|
|
213
|
+
stateMutability: "nonpayable",
|
|
214
|
+
type: "function",
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
inputs: [
|
|
218
|
+
{
|
|
219
|
+
internalType: "uint128",
|
|
220
|
+
name: "a",
|
|
221
|
+
type: "uint128",
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
internalType: "uint128",
|
|
225
|
+
name: "b",
|
|
226
|
+
type: "uint128",
|
|
227
|
+
},
|
|
228
|
+
],
|
|
229
|
+
name: "neTest",
|
|
230
|
+
outputs: [
|
|
231
|
+
{
|
|
232
|
+
internalType: "bool",
|
|
233
|
+
name: "",
|
|
234
|
+
type: "bool",
|
|
235
|
+
},
|
|
236
|
+
],
|
|
237
|
+
stateMutability: "nonpayable",
|
|
238
|
+
type: "function",
|
|
239
|
+
},
|
|
240
|
+
] as const;
|
|
241
|
+
|
|
242
|
+
const _bytecode =
|
|
243
|
+
"0x6080806040523461001657610a5c908161001c8239f35b600080fdfe6040608081526004908136101561001557600080fd5b600090813560e01c8063053cfe9814610730578063097c446b146106165780630d980bf0146105f257806329875348146105cf5780632e5950eb146105ab5780632fd37f4b146105875780632ff336bf14610450578063645e46371461033c578063748533df146102215780637d2e0f48146101fd5780639a0c13d8146101dc5763df2ce28e146100a557600080fd5b346101c557806003193601126101c55760206100bf610849565b6100d96100d36100cd61086d565b92610993565b91610993565b83517fdd1486930000000000000000000000000000000000000000000000000000000081527f050500000000000000000000000000000000000000000000000000000000000096810196875260208701929092526040860152938490819060600103818560645af19283156101d1578293610198575b5061015b6020936108fc565b15159180547fffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff65ff00000000008560281b16911617905551908152f35b92506020833d82116101c9575b816101b26020938361088c565b810103126101c55791519161015b61014f565b5080fd5b3d91506101a5565b5051903d90823e3d90fd5b50346101c557816003193601126101c55760ff602092541690519015158152f35b50346101c557816003193601126101c55760ff6020925460181c1690519015158152f35b50346101c557806003193601126101c557602061023c610849565b61024a6100d36100cd61086d565b83517f6d82e45e0000000000000000000000000000000000000000000000000000000081527f050500000000000000000000000000000000000000000000000000000000000096810196875260208701929092526040860152938490819060600103818560645af19283156101d1578293610307575b506102cc6020936108fc565b15159180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff63ff0000008560181b16911617905551908152f35b92506020833d8211610334575b816103216020938361088c565b810103126101c5579151916102cc6102c0565b3d9150610314565b50346101c557806003193601126101c5576020610357610849565b6103656100d36100cd61086d565b83517f7c12a1eb0000000000000000000000000000000000000000000000000000000081527f050500000000000000000000000000000000000000000000000000000000000096810196875260208701929092526040860152938490819060600103818560645af19283156101d157829361041b575b506103e76020936108fc565b1515917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541660ff841617905551908152f35b92506020833d8211610448575b816104356020938361088c565b810103126101c5579151916103e76103db565b3d9150610428565b50346101c557806003193601126101c5576104ef61046c610849565b9361048761048161047b61086d565b96610993565b95610993565b8351809381927f145fca2c000000000000000000000000000000000000000000000000000000008352602098899584016040909392919360608101947f0505000000000000000000000000000000000000000000000000000000000000825260208201520152565b03818660645af1801561057b578390610548575b61050d91506108fc565b15159180547fffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff64ff0000000085871b16911617905551908152f35b508381813d8311610574575b61055e818361088c565b810103126105705761050d9051610503565b8280fd5b503d610554565b505051903d90823e3d90fd5b50346101c557816003193601126101c55760ff6020925460101c1690519015158152f35b50346101c557816003193601126101c55760ff6020925460281c1690519015158152f35b50346101c557816003193601126101c55760ff60209254915191831c1615158152f35b50346101c557816003193601126101c55760ff6020925460081c1690519015158152f35b50346101c557806003193601126101c5576020610631610849565b61063f6100d36100cd61086d565b83517f813b20740000000000000000000000000000000000000000000000000000000081527f050500000000000000000000000000000000000000000000000000000000000096810196875260208701929092526040860152938490819060600103818560645af19283156101d15782936106fb575b506106c16020936108fc565b15159180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff62ff00008560101b16911617905551908152f35b92506020833d8211610728575b816107156020938361088c565b810103126101c5579151916106c16106b5565b3d9150610708565b50346101c557806003193601126101c557602061074b610849565b6107596100d36100cd61086d565b83517f42094c560000000000000000000000000000000000000000000000000000000081527f050500000000000000000000000000000000000000000000000000000000000096810196875260208701929092526040860152938490819060600103818560645af19283156101d1578293610814575b506107db6020936108fc565b15159180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff61ff008560081b16911617905551908152f35b92506020833d8211610841575b8161082e6020938361088c565b810103126101c5579151916107db6107cf565b3d9150610821565b600435906fffffffffffffffffffffffffffffffff8216820361086857565b600080fd5b602435906fffffffffffffffffffffffffffffffff8216820361086857565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176108cd57604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040517f0cfed56100000000000000000000000000000000000000000000000000000000815260009182600483015260248201526020816044818560645af1918215610987578092610950575b5050151590565b9091506020823d821161097f575b8161096b6020938361088c565b8101031261097c5750513880610949565b80fd5b3d915061095e565b604051903d90823e3d90fd5b6fffffffffffffffffffffffffffffffff604051917fd9b60b600000000000000000000000000000000000000000000000000000000083527f05000000000000000000000000000000000000000000000000000000000000006004840152166024820152602081604481600060645af1908115610a4357600091610a15575090565b906020823d8211610a3b575b81610a2e6020938361088c565b8101031261097c57505190565b3d9150610a21565b6040513d6000823e3d90fdfea164736f6c6343000813000a";
|
|
244
|
+
|
|
245
|
+
type Comparison128TestsContractConstructorParams =
|
|
246
|
+
| [signer?: Signer]
|
|
247
|
+
| ConstructorParameters<typeof ContractFactory>;
|
|
248
|
+
|
|
249
|
+
const isSuperArgs = (
|
|
250
|
+
xs: Comparison128TestsContractConstructorParams
|
|
251
|
+
): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
|
|
252
|
+
|
|
253
|
+
export class Comparison128TestsContract__factory extends ContractFactory {
|
|
254
|
+
constructor(...args: Comparison128TestsContractConstructorParams) {
|
|
255
|
+
if (isSuperArgs(args)) {
|
|
256
|
+
super(...args);
|
|
257
|
+
} else {
|
|
258
|
+
super(_abi, _bytecode, args[0]);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
override getDeployTransaction(
|
|
263
|
+
overrides?: NonPayableOverrides & { from?: string }
|
|
264
|
+
): Promise<ContractDeployTransaction> {
|
|
265
|
+
return super.getDeployTransaction(overrides || {});
|
|
266
|
+
}
|
|
267
|
+
override deploy(overrides?: NonPayableOverrides & { from?: string }) {
|
|
268
|
+
return super.deploy(overrides || {}) as Promise<
|
|
269
|
+
Comparison128TestsContract & {
|
|
270
|
+
deploymentTransaction(): ContractTransactionResponse;
|
|
271
|
+
}
|
|
272
|
+
>;
|
|
273
|
+
}
|
|
274
|
+
override connect(
|
|
275
|
+
runner: ContractRunner | null
|
|
276
|
+
): Comparison128TestsContract__factory {
|
|
277
|
+
return super.connect(runner) as Comparison128TestsContract__factory;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
static readonly bytecode = _bytecode;
|
|
281
|
+
static readonly abi = _abi;
|
|
282
|
+
static createInterface(): Comparison128TestsContractInterface {
|
|
283
|
+
return new Interface(_abi) as Comparison128TestsContractInterface;
|
|
284
|
+
}
|
|
285
|
+
static connect(
|
|
286
|
+
address: string,
|
|
287
|
+
runner?: ContractRunner | null
|
|
288
|
+
): Comparison128TestsContract {
|
|
289
|
+
return new Contract(
|
|
290
|
+
address,
|
|
291
|
+
_abi,
|
|
292
|
+
runner
|
|
293
|
+
) as unknown as Comparison128TestsContract;
|
|
294
|
+
}
|
|
295
|
+
}
|
package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison1TestsContract__factory.ts
CHANGED
|
@@ -332,7 +332,7 @@ const _abi = [
|
|
|
332
332
|
] as const;
|
|
333
333
|
|
|
334
334
|
const _bytecode =
|
|
335
|
-
"0x608060405234801561001057600080fd5b50612804806100206000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c80637d2e0f48116100765780638b6e7a8c1161005b5780638b6e7a8c1461014f578063acb3816914610162578063ebb571fd1461017557600080fd5b80637d2e0f481461013157806380f937bc1461013c57600080fd5b80632e544aa0116100a75780632e544aa0146100fa5780632e5950eb1461010d578063791175491461011e57600080fd5b806308c90f0d146100c357806329875348146100ea575b600080fd5b6100d66100d13660046124c3565b61018a565b604051901515815260200160405180910390f35b600054610100900460ff166100d6565b6100d6610108366004612547565b610818565b60005462010000900460ff166100d6565b6100d661012c3660046124c3565b6108f6565b60005460ff166100d6565b6100d661014a3660046125ca565b610f6f565b6100d661015d3660046124c3565b611014565b6100d6610170366004612675565b61168e565b61018861018336600461270c565b6116fd565b005b60006101d460405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6101f860405180606001604052806000815260200160008152602001600081525090565b61022a6040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b61026a6040518060e00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6102758488886116fd565b600061029161028c86600001518760200151611784565b61184a565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016821515179055604086015160608701519192506102d3916118db565b8452845160608601516102e691906118f0565b84602001818152505061030185604001518660200151611906565b6040850152600061031185610818565b90508115158115151461036b5760405162461bcd60e51b815260206004820152601660248201527f6774546573743a2063617374203136206661696c65640000000000000000000060448201526064015b60405180910390fd5b61037d86608001518760a0015161191c565b8452855160a08701516103909190611931565b8460200181815250506103ab86608001518760200151611947565b8460400181815250506103c686604001518760a0015161195d565b8460600181815250506103e186608001518760600151611973565b608085015260006103f18561168e565b9050801515831515146104465760405162461bcd60e51b815260206004820152601660248201527f6774546573743a2063617374203332206661696c6564000000000000000000006044820152606401610362565b6104588760c001518860e00151611989565b8452865160e088015161046b919061199e565b8460200181815250506104868760c0015188602001516119b4565b8460400181815250506104a187604001518860e001516119ca565b8460600181815250506104bc8760c0015188606001516119e0565b8460800181815250506104d787608001518860e001516119f6565b8460a00181815250506104f28760c001518860a00151611a0c565b60c0850152600061050285610f6f565b9050801515841515146105575760405162461bcd60e51b815260206004820152601660248201527f6774546573743a2063617374203634206661696c6564000000000000000000006044820152606401610362565b61056861028c8c8a60200151611a22565b151584151514801561058d575061058661028c89600001518c611aa4565b1515841515145b6105ff5760405162461bcd60e51b815260206004820152602660248201527f6774546573743a2074657374203820626974732077697468207363616c61722060448201527f6661696c656400000000000000000000000000000000000000000000000000006064820152608401610362565b61061361028c8c60ff168a60600151611b27565b151584151514801561063b575061063461028c89604001518c60ff16611bab565b1515841515145b6106ad5760405162461bcd60e51b815260206004820152602760248201527f6774546573743a207465737420313620626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152608401610362565b6106c161028c8c60ff168a60a00151611c2e565b15158415151480156106e957506106e261028c89608001518c60ff16611cb4565b1515841515145b61075b5760405162461bcd60e51b815260206004820152602760248201527f6774546573743a207465737420333220626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152608401610362565b61076f61028c8c60ff168a60e00151611d3a565b1515841515148015610797575061079061028c8960c001518c60ff16611dc4565b1515841515145b6108095760405162461bcd60e51b815260206004820152602760248201527f6774546573743a207465737420363420626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152608401610362565b50919998505050505050505050565b600080610828836000015161184a565b9050610837836020015161184a565b15158115151480156108585750610851836040015161184a565b1515811515145b6108f05760405162461bcd60e51b815260206004820152604660248201527f64656372797074416e64436f6d70617265416c6c526573756c74733a2046616960448201527f6c656420746f206465637279707420616e6420636f6d7061726520616c6c207260648201527f6573756c74730000000000000000000000000000000000000000000000000000608482015260a401610362565b92915050565b600061094060405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b61096460405180606001604052806000815260200160008152602001600081525090565b6109966040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b6109d66040518060e00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6109e18488886116fd565b60006109f861028c86600001518760200151611e4e565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101008315150217905560408601516060870151919250610a3e91611e63565b845284516060860151610a519190611e78565b846020018181525050610a6c85604001518660200151611e8e565b60408501526000610a7c85610818565b905081151581151514610ad15760405162461bcd60e51b815260206004820152601660248201527f6c65546573743a2063617374203136206661696c6564000000000000000000006044820152606401610362565b610ae386608001518760a00151611ea4565b8452855160a0870151610af69190611eb9565b846020018181525050610b1186608001518760200151611ecf565b846040018181525050610b2c86604001518760a00151611ee5565b846060018181525050610b4786608001518760600151611efb565b60808501526000610b578561168e565b905080151583151514610bac5760405162461bcd60e51b815260206004820152601660248201527f6c65546573743a2063617374203332206661696c6564000000000000000000006044820152606401610362565b610bbe8760c001518860e00151611f11565b8452865160e0880151610bd19190611f26565b846020018181525050610bec8760c001518860200151611f3c565b846040018181525050610c0787604001518860e00151611f52565b846060018181525050610c228760c001518860600151611f68565b846080018181525050610c3d87608001518860e00151611f7e565b8460a0018181525050610c588760c001518860a00151611f94565b60c08501526000610c6885610f6f565b905080151584151514610cbd5760405162461bcd60e51b815260206004820152601660248201527f6c65546573743a2063617374203634206661696c6564000000000000000000006044820152606401610362565b610cce61028c8c8a60200151611faa565b1515841515148015610cf35750610cec61028c89600001518c611fbf565b1515841515145b610d655760405162461bcd60e51b815260206004820152602660248201527f6c65546573743a2074657374203820626974732077697468207363616c61722060448201527f6661696c656400000000000000000000000000000000000000000000000000006064820152608401610362565b610d7961028c8c60ff168a60600151611fd5565b1515841515148015610da15750610d9a61028c89604001518c60ff16611feb565b1515841515145b610e135760405162461bcd60e51b815260206004820152602760248201527f6c65546573743a207465737420313620626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152608401610362565b610e2761028c8c60ff168a60a00151612000565b1515841515148015610e4f5750610e4861028c89608001518c60ff16612016565b1515841515145b610ec15760405162461bcd60e51b815260206004820152602760248201527f6c65546573743a207465737420333220626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152608401610362565b610ed561028c8c60ff168a60e0015161202c565b1515841515148015610efd5750610ef661028c8960c001518c60ff16612042565b1515841515145b6108095760405162461bcd60e51b815260206004820152602760248201527f6c65546573743a207465737420363420626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152608401610362565b600080610f7f836000015161184a565b9050610f8e836020015161184a565b1515811515148015610faf5750610fa8836040015161184a565b1515811515145b8015610fca5750610fc3836080015161184a565b1515811515145b8015610fe55750610fde836060015161184a565b1515811515145b80156110005750610ff98360c0015161184a565b1515811515145b801561085857506108518360a0015161184a565b600061105e60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b61108260405180606001604052806000815260200160008152602001600081525090565b6110b46040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b6110f46040518060e00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6110ff8488886116fd565b600061111661028c86600001518760200151612058565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff1662010000831515021790556040860151606087015191925061115d9161206d565b8452845160608601516111709190612082565b84602001818152505061118b85604001518660200151612098565b6040850152600061119b85610818565b9050811515811515146111f05760405162461bcd60e51b815260206004820152601760248201527f6c6574546573743a2063617374203136206661696c65640000000000000000006044820152606401610362565b61120286608001518760a001516120ae565b8452855160a087015161121591906120c3565b846020018181525050611230866080015187602001516120d9565b84604001818152505061124b86604001518760a001516120ef565b84606001818152505061126686608001518760600151612105565b608085015260006112768561168e565b9050801515831515146112cb5760405162461bcd60e51b815260206004820152601760248201527f6c6574546573743a2063617374203332206661696c65640000000000000000006044820152606401610362565b6112dd8760c001518860e0015161211b565b8452865160e08801516112f09190612130565b84602001818152505061130b8760c001518860200151612146565b84604001818152505061132687604001518860e0015161215c565b8460600181815250506113418760c001518860600151612172565b84608001818152505061135c87608001518860e00151612188565b8460a00181815250506113778760c001518860a0015161219e565b60c0850152600061138785610f6f565b9050801515841515146113dc5760405162461bcd60e51b815260206004820152601760248201527f6c6574546573743a2063617374203634206661696c65640000000000000000006044820152606401610362565b6113ed61028c8c8a602001516121b4565b1515841515148015611412575061140b61028c89600001518c6121c9565b1515841515145b6114845760405162461bcd60e51b815260206004820152602760248201527f6c6574546573743a2074657374203820626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152608401610362565b61149861028c8c60ff168a606001516121df565b15158415151480156114c057506114b961028c89604001518c60ff166121f5565b1515841515145b6115325760405162461bcd60e51b815260206004820152602860248201527f6c6574546573743a207465737420313620626974732077697468207363616c6160448201527f72206661696c65640000000000000000000000000000000000000000000000006064820152608401610362565b61154661028c8c60ff168a60a0015161220a565b151584151514801561156e575061156761028c89608001518c60ff16612220565b1515841515145b6115e05760405162461bcd60e51b815260206004820152602860248201527f6c6574546573743a207465737420333220626974732077697468207363616c6160448201527f72206661696c65640000000000000000000000000000000000000000000000006064820152608401610362565b6115f461028c8c60ff168a60e00151612236565b151584151514801561161c575061161561028c8960c001518c60ff1661224c565b1515841515145b6108095760405162461bcd60e51b815260206004820152602860248201527f6c6574546573743a207465737420363420626974732077697468207363616c6160448201527f72206661696c65640000000000000000000000000000000000000000000000006064820152608401610362565b60008061169e836000015161184a565b90506116ad836020015161184a565b15158115151480156116ce57506116c7836040015161184a565b1515811515145b80156116e957506116e2836080015161184a565b1515811515145b80156108585750610851836060015161184a565b61170682612262565b835261171181612262565b602084015261172260ff831661230a565b604084015261173360ff821661230a565b606084015261174460ff8316612374565b608084015261175560ff8216612374565b60a084015261176660ff83166123e0565b60c084015261177760ff82166123e0565b60e0909301929092525050565b60006064636d82e45e61179960018085612450565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff0000000000000000000000000000000000000000000000000000000000909116600482015260248101869052604481018590526064015b6020604051808303816000875af115801561181f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061184391906127af565b9392505050565b6040517f0cfed56100000000000000000000000000000000000000000000000000000000815260006004820181905260248201839052908190606490630cfed561906044016020604051808303816000875af11580156118ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118d291906127af565b15159392505050565b60006064636d82e45e61179960028085612450565b60006064636d82e45e6117996001600285612450565b60006064636d82e45e6117996002600185612450565b60006064636d82e45e61179960038085612450565b60006064636d82e45e6117996001600385612450565b60006064636d82e45e6117996003600185612450565b60006064636d82e45e6117996002600385612450565b60006064636d82e45e6117996003600285612450565b60006064636d82e45e61179960048085612450565b60006064636d82e45e6117996001600485612450565b60006064636d82e45e6117996004600185612450565b60006064636d82e45e6117996002600485612450565b60006064636d82e45e6117996004600285612450565b60006064636d82e45e6117996003600485612450565b60006064636d82e45e6117996004600385612450565b60006064636d82e45e611a3760018080612450565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff0000000000000000000000000000000000000000000000000000000000909116600482015260ff8616602482015260448101859052606401611800565b60006064636d82e45e611aba6001806002612450565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff000000000000000000000000000000000000000000000000000000000090911660048201526024810186905260ff85166044820152606401611800565b60006064636d82e45e611b3d6002806001612450565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff0000000000000000000000000000000000000000000000000000000000909116600482015261ffff8616602482015260448101859052606401611800565b60006064636d82e45e611bc060028080612450565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff000000000000000000000000000000000000000000000000000000000090911660048201526024810186905261ffff85166044820152606401611800565b60006064636d82e45e611c446003806001612450565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff0000000000000000000000000000000000000000000000000000000000909116600482015263ffffffff8616602482015260448101859052606401611800565b60006064636d82e45e611cca6003806002612450565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff000000000000000000000000000000000000000000000000000000000090911660048201526024810186905263ffffffff85166044820152606401611800565b60006064636d82e45e611d506004806001612450565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff0000000000000000000000000000000000000000000000000000000000909116600482015267ffffffffffffffff8616602482015260448101859052606401611800565b60006064636d82e45e611dda6004806002612450565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1681527fffffff000000000000000000000000000000000000000000000000000000000090911660048201526024810186905267ffffffffffffffff85166044820152606401611800565b6000606463145fca2c61179960018085612450565b6000606463145fca2c61179960028085612450565b6000606463145fca2c6117996001600285612450565b6000606463145fca2c6117996002600185612450565b6000606463145fca2c61179960038085612450565b6000606463145fca2c6117996001600385612450565b6000606463145fca2c6117996003600185612450565b6000606463145fca2c6117996002600385612450565b6000606463145fca2c6117996003600285612450565b6000606463145fca2c61179960048085612450565b6000606463145fca2c6117996001600485612450565b6000606463145fca2c6117996004600185612450565b6000606463145fca2c6117996002600485612450565b6000606463145fca2c6117996004600285612450565b6000606463145fca2c6117996003600485612450565b6000606463145fca2c6117996004600385612450565b6000606463145fca2c611a3760018080612450565b6000606463145fca2c611aba6001806002612450565b6000606463145fca2c611b3d6002806001612450565b6000606463145fca2c611bc060028080612450565b6000606463145fca2c611c446003806001612450565b6000606463145fca2c611cca6003806002612450565b6000606463145fca2c611d506004806001612450565b6000606463145fca2c611dda6004806002612450565b6000606463dd14869361179960018085612450565b6000606463dd14869361179960028085612450565b6000606463dd1486936117996001600285612450565b6000606463dd1486936117996002600185612450565b6000606463dd14869361179960038085612450565b6000606463dd1486936117996001600385612450565b6000606463dd1486936117996003600185612450565b6000606463dd1486936117996002600385612450565b6000606463dd1486936117996003600285612450565b6000606463dd14869361179960048085612450565b6000606463dd1486936117996001600485612450565b6000606463dd1486936117996004600185612450565b6000606463dd1486936117996002600485612450565b6000606463dd1486936117996004600285612450565b6000606463dd1486936117996003600485612450565b6000606463dd1486936117996004600385612450565b6000606463dd148693611a3760018080612450565b6000606463dd148693611aba6001806002612450565b6000606463dd148693611b3d6002806001612450565b6000606463dd148693611bc060028080612450565b6000606463dd148693611c446003806001612450565b6000606463dd148693611cca6003806002612450565b6000606463dd148693611d506004806001612450565b6000606463dd148693611dda6004806002612450565b6040517fd9b60b600000000000000000000000000000000000000000000000000000000081527f0100000000000000000000000000000000000000000000000000000000000000600482015260ff8216602482015260009060649063d9b60b60906044015b6020604051808303816000875af11580156122e6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f091906127af565b6040517fd9b60b600000000000000000000000000000000000000000000000000000000081527f0200000000000000000000000000000000000000000000000000000000000000600482015261ffff8216602482015260009060649063d9b60b60906044016122c7565b6040517fd9b60b600000000000000000000000000000000000000000000000000000000081527f0300000000000000000000000000000000000000000000000000000000000000600482015263ffffffff8216602482015260009060649063d9b60b60906044016122c7565b6040517fd9b60b600000000000000000000000000000000000000000000000000000000081527f0400000000000000000000000000000000000000000000000000000000000000600482015267ffffffffffffffff8216602482015260009060649063d9b60b60906044016122c7565b6000816002811115612464576124646127c8565b60ff16600884600481111561247b5761247b6127c8565b61ffff16901b61ffff166010866004811115612499576124996127c8565b62ffffff16901b171760e81b949350505050565b803560ff811681146124be57600080fd5b919050565b600080604083850312156124d657600080fd5b6124df836124ad565b91506124ed602084016124ad565b90509250929050565b604051610100810167ffffffffffffffff81118282101715612541577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405290565b60006060828403121561255957600080fd5b6040516060810181811067ffffffffffffffff821117156125a3577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b80604052508235815260208301356020820152604083013560408201528091505092915050565b600060e082840312156125dc57600080fd5b60405160e0810181811067ffffffffffffffff82111715612626577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b8060405250823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013560a082015260c083013560c08201528091505092915050565b600060a0828403121561268757600080fd5b60405160a0810181811067ffffffffffffffff821117156126d1577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b806040525082358152602083013560208201526040830135604082015260608301356060820152608083013560808201528091505092915050565b600080600083850361014081121561272357600080fd5b6101008082121561273357600080fd5b61273b6124f6565b9150853582526020860135602083015260408601356040830152606086013560608301526080860135608083015260a086013560a083015260c086013560c083015260e086013560e08301528194506127958187016124ad565b935050506127a661012085016124ad565b90509250925092565b6000602082840312156127c157600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fdfea164736f6c6343000813000a";
|
|
335
|
+
"0x608080604052346100165761425c908161001c8239f35b600080fdfe6080604052600436101561001257600080fd5b60003560e01c806308c90f0d1461286e57806329875348146128485780632e544aa01461280d5780632e5950eb146127e757806379117549146114f15780637d2e0f48146114ce57806380f937bc146114735780638b6e7a8c14610170578063acb381691461011b5763ebb571fd1461008a57600080fd5b3461011657600319360161014081126101165761010013610116576040516100b181613c02565b6004358152602435602082015260443560408201526064356060820152608435608082015260a43560a082015260c43560c082015260e43560e08201526101043560ff8116810361011657610124359060ff821682036101165761011492613c60565b005b600080fd5b346101165760a060031936011261011657602061016660405161013d81613be6565b600435815260243583820152604435604082015260643560608201526084356080820152613dbb565b6040519015158152f35b3461011657604060031936011261011657610189613b5f565b610191613b6f565b610199613ef3565b906101a2613f31565b926101ab613f50565b6101b3613f7b565b906101bf848487613c60565b845160208087015160405163dd14869360e01b81527f0101000000000000000000000000000000000000000000000000000000000000600482015260248101939093526044830152816064816000825af1908115610c4d5760009161143f575b5061022c6102bd91613fb3565b1515966000547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff62ff00008a60101b1691161760005560206040880151606089015190604051948592839263dd14869360e01b8452600484016040909392919360608101947f0202000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d5760009061140b575b81528651606088015160405163dd14869360e01b81527f0102000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d576000906113d7575b6103a192506020820152602060408801518189015190604051948592839263dd14869360e01b8452600484016040909392919360608101947f0201000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d57889260009161139e575b5060408201526103c890613d6e565b15150361135a57608085015160a086015160405163dd14869360e01b81527f0303000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152906020826064816000825af18015610c4d57600090611326575b8152855160a087015160405163dd14869360e01b81527f0103000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d576000906112f2575b60208281019190915260808701518782015160405163dd14869360e01b81527f030100000000000000000000000000000000000000000000000000000000000060048201526024810192909252604482015292508280606481015b0381600060645af18015610c4d576000906112be575b610573925060408201526020604087015160a088015190604051948592839263dd14869360e01b8452600484016040909392919360608101947f0203000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d5760009061128a575b60608281019190915260808701519087015160405163dd14869360e01b81527f0302000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d57600090611256575b61060b92506080820152613dbb565b151585036112125760c084015160e085015160405163dd14869360e01b81527f0404000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152906020826064816000825af18015610c4d576000906111de575b8152845160e086015160405163dd14869360e01b81527f0104000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d576000906111aa575b60208281019190915260c08601518682015160405163dd14869360e01b81527f040100000000000000000000000000000000000000000000000000000000000060048201526024810192909252604482015292508280606481015b0381600060645af18015610c4d57600090611176575b6107b7925060408201526020604086015160e087015190604051948592839263dd14869360e01b8452600484016040909392919360608101947f0204000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d57600090611142575b60608281019190915260c08601519086015160405163dd14869360e01b81527f0402000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d5760009061110e575b60808281019190915285015160e086015160405163dd14869360e01b81527f0304000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d576000906110da575b60a08281019190915260c08601519086015160405163dd14869360e01b81527f0403000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d576000906110a6575b610934925060c0820152613e38565b151584036110625760208381015160405163dd14869360e01b81527f0101010000000000000000000000000000000000000000000000000000000000600482015260ff84166024820152604481019190915290816064816000825af18015610c4d5760009061102e575b6109a89150613fb3565b1515841480610f87575b15610f1d57606083015160405163dd14869360e01b81527f0202010000000000000000000000000000000000000000000000000000000000600482015260ff8316602482015260448101919091526020816064816000825af18015610c4d57600090610ee9575b610a239150613fb3565b1515841480610e3f575b15610dd55760a083015160405163dd14869360e01b81527f0303010000000000000000000000000000000000000000000000000000000000600482015260ff8316602482015260448101919091526020816064816000825af18015610c4d57600090610da1575b610a9e9150613fb3565b1515841480610cf7575b15610c8d5760e083015160405163dd14869360e01b81527f0404010000000000000000000000000000000000000000000000000000000000600482015260ff92909216602483015260448201526020816064816000825af18015610c4d57600090610c59575b610b189150613fb3565b151583149182610b9f575b505015610b3557602090604051908152f35b608460405162461bcd60e51b815260206004820152602860248201527f6c6574546573743a207465737420363420626974732077697468207363616c6160448201527f72206661696c65640000000000000000000000000000000000000000000000006064820152fd5b60c0015160405163dd14869360e01b81527f04040200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff91909116604482015290506020816064816000825af18015610c4d57600090610c19575b610c0e9150613fb3565b151581148280610b23565b506020813d602011610c45575b81610c3360209383613c1f565b8101031261011657610c0e9051610c04565b3d9150610c26565b6040513d6000823e3d90fd5b506020813d602011610c85575b81610c7360209383613c1f565b8101031261011657610b189051610b0e565b3d9150610c66565b608460405162461bcd60e51b815260206004820152602860248201527f6c6574546573743a207465737420333220626974732077697468207363616c6160448201527f72206661696c65640000000000000000000000000000000000000000000000006064820152fd5b50608083015160405163dd14869360e01b81527f03030200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff831660448201526020816064816000825af18015610c4d57600090610d6d575b610d649150613fb3565b15158414610aa8565b506020813d602011610d99575b81610d8760209383613c1f565b8101031261011657610d649051610d5a565b3d9150610d7a565b506020813d602011610dcd575b81610dbb60209383613c1f565b8101031261011657610a9e9051610a94565b3d9150610dae565b608460405162461bcd60e51b815260206004820152602860248201527f6c6574546573743a207465737420313620626974732077697468207363616c6160448201527f72206661696c65640000000000000000000000000000000000000000000000006064820152fd5b50604083810151905163dd14869360e01b81527f02020200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff831660448201526020816064816000825af18015610c4d57600090610eb5575b610eac9150613fb3565b15158414610a2d565b506020813d602011610ee1575b81610ecf60209383613c1f565b8101031261011657610eac9051610ea2565b3d9150610ec2565b506020813d602011610f15575b81610f0360209383613c1f565b8101031261011657610a239051610a19565b3d9150610ef6565b608460405162461bcd60e51b815260206004820152602760248201527f6c6574546573743a2074657374203820626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152fd5b50825160405163dd14869360e01b81527f01010200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff831660448201526020816064816000825af18015610c4d57600090610ffa575b610ff19150613fb3565b151584146109b2565b506020813d602011611026575b8161101460209383613c1f565b8101031261011657610ff19051610fe7565b3d9150611007565b506020813d60201161105a575b8161104860209383613c1f565b81010312610116576109a8905161099e565b3d915061103b565b606460405162461bcd60e51b815260206004820152601760248201527f6c6574546573743a2063617374203634206661696c65640000000000000000006044820152fd5b506020823d6020116110d2575b816110c060209383613c1f565b81010312610116576109349151610925565b3d91506110b3565b506020823d602011611106575b816110f460209383613c1f565b810103126101165761090f91516108b2565b3d91506110e7565b506020823d60201161113a575b8161112860209383613c1f565b810103126101165761089c9151610840565b3d915061111b565b506020823d60201161116e575b8161115c60209383613c1f565b810103126101165761082a91516107cd565b3d915061114f565b506020823d6020116111a2575b8161119060209383613c1f565b81010312610116576107b79151610752565b3d9150611183565b506020823d6020116111d6575b816111c460209383613c1f565b810103126101165761073c91516106e1565b3d91506111b7565b506020823d60201161120a575b816111f860209383613c1f565b81010312610116576106cb9151610677565b3d91506111eb565b606460405162461bcd60e51b815260206004820152601760248201527f6c6574546573743a2063617374203332206661696c65640000000000000000006044820152fd5b506020823d602011611282575b8161127060209383613c1f565b810103126101165761060b91516105fc565b3d9150611263565b506020823d6020116112b6575b816112a460209383613c1f565b81010312610116576105e69151610589565b3d9150611297565b506020823d6020116112ea575b816112d860209383613c1f565b8101031261011657610573915161050e565b3d91506112cb565b506020823d60201161131e575b8161130c60209383613c1f565b81010312610116576104f8915161049d565b3d91506112ff565b506020823d602011611352575b8161134060209383613c1f565b81010312610116576104879151610433565b3d9150611333565b606460405162461bcd60e51b815260206004820152601760248201527f6c6574546573743a2063617374203136206661696c65640000000000000000006044820152fd5b919250506020813d6020116113cf575b816113bb60209383613c1f565b8101031261011657518791906103c86103b9565b3d91506113ae565b506020823d602011611403575b816113f160209383613c1f565b81010312610116576103a1915161033d565b3d91506113e4565b506020823d602011611437575b8161142560209383613c1f565b810103126101165761032791516102d3565b3d9150611418565b90506020813d60201161146b575b8161145a60209383613c1f565b81010312610116575161022c61021f565b3d915061144d565b346101165760e060031936011261011657602061016660405161149581613bca565b60043581526024358382015260443560408201526064356060820152608435608082015260a43560a082015260c43560c0820152613e38565b3461011657600060031936011261011657602060ff600054166040519015158152f35b346101165760406003193601126101165761150a613b5f565b611512613b6f565b61151a613ef3565b90611523613f31565b9261152c613f50565b611534613f7b565b90611540848487613c60565b8451602080870151604051630517f28b60e21b81527f0101000000000000000000000000000000000000000000000000000000000000600482015260248101939093526044830152816064816000825af1908115610c4d576000916127b3575b506115ad61163d91613fb3565b1515966000547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff61ff008a60081b16911617600055602060408801516060890151906040519485928392630517f28b60e21b8452600484016040909392919360608101947f0202000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d5760009061277f575b815286516060880151604051630517f28b60e21b81527f0102000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d5760009061274b575b611721925060208201526020604088015181890151906040519485928392630517f28b60e21b8452600484016040909392919360608101947f0201000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d578892600091612712575b50604082015261174890613d6e565b1515036126ce57608085015160a0860151604051630517f28b60e21b81527f0303000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152906020826064816000825af18015610c4d5760009061269a575b8152855160a0870151604051630517f28b60e21b81527f0103000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d57600090612666575b602082810191909152608087015187820151604051630517f28b60e21b81527f030100000000000000000000000000000000000000000000000000000000000060048201526024810192909252604482015292508280606481015b0381600060645af18015610c4d57600090612632575b6118f3925060408201526020604087015160a0880151906040519485928392630517f28b60e21b8452600484016040909392919360608101947f0203000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d576000906125fe575b606082810191909152608087015190870151604051630517f28b60e21b81527f0302000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d576000906125ca575b61198b92506080820152613dbb565b151585036125865760c084015160e0850151604051630517f28b60e21b81527f0404000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152906020826064816000825af18015610c4d57600090612552575b8152845160e0860151604051630517f28b60e21b81527f0104000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d5760009061251e575b60208281019190915260c086015186820151604051630517f28b60e21b81527f040100000000000000000000000000000000000000000000000000000000000060048201526024810192909252604482015292508280606481015b0381600060645af18015610c4d576000906124ea575b611b37925060408201526020604086015160e0870151906040519485928392630517f28b60e21b8452600484016040909392919360608101947f0204000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d576000906124b6575b60608281019190915260c086015190860151604051630517f28b60e21b81527f0402000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d57600090612482575b60808281019190915285015160e0860151604051630517f28b60e21b81527f0304000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d5760009061244e575b60a08281019190915260c086015190860151604051630517f28b60e21b81527f0403000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d5760009061241a575b611cb4925060c0820152613e38565b151584036123d657602083810151604051630517f28b60e21b81527f0101010000000000000000000000000000000000000000000000000000000000600482015260ff84166024820152604481019190915290816064816000825af18015610c4d576000906123a2575b611d289150613fb3565b15158414806122fb575b15612291576060830151604051630517f28b60e21b81527f0202010000000000000000000000000000000000000000000000000000000000600482015260ff8316602482015260448101919091526020816064816000825af18015610c4d5760009061225d575b611da39150613fb3565b15158414806121b3575b156121495760a0830151604051630517f28b60e21b81527f0303010000000000000000000000000000000000000000000000000000000000600482015260ff8316602482015260448101919091526020816064816000825af18015610c4d57600090612115575b611e1e9150613fb3565b151584148061206b575b156120015760e0830151604051630517f28b60e21b81527f0404010000000000000000000000000000000000000000000000000000000000600482015260ff92909216602483015260448201526020816064816000825af18015610c4d57600090611fcd575b611e989150613fb3565b151583149182611f1f575b505015611eb557602090604051908152f35b608460405162461bcd60e51b815260206004820152602760248201527f6c65546573743a207465737420363420626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152fd5b60c00151604051630517f28b60e21b81527f04040200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff91909116604482015290506020816064816000825af18015610c4d57600090611f99575b611f8e9150613fb3565b151581148280611ea3565b506020813d602011611fc5575b81611fb360209383613c1f565b8101031261011657611f8e9051611f84565b3d9150611fa6565b506020813d602011611ff9575b81611fe760209383613c1f565b8101031261011657611e989051611e8e565b3d9150611fda565b608460405162461bcd60e51b815260206004820152602760248201527f6c65546573743a207465737420333220626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152fd5b506080830151604051630517f28b60e21b81527f03030200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff831660448201526020816064816000825af18015610c4d576000906120e1575b6120d89150613fb3565b15158414611e28565b506020813d60201161210d575b816120fb60209383613c1f565b81010312610116576120d890516120ce565b3d91506120ee565b506020813d602011612141575b8161212f60209383613c1f565b8101031261011657611e1e9051611e14565b3d9150612122565b608460405162461bcd60e51b815260206004820152602760248201527f6c65546573743a207465737420313620626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152fd5b506040838101519051630517f28b60e21b81527f02020200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff831660448201526020816064816000825af18015610c4d57600090612229575b6122209150613fb3565b15158414611dad565b506020813d602011612255575b8161224360209383613c1f565b81010312610116576122209051612216565b3d9150612236565b506020813d602011612289575b8161227760209383613c1f565b8101031261011657611da39051611d99565b3d915061226a565b608460405162461bcd60e51b815260206004820152602660248201527f6c65546573743a2074657374203820626974732077697468207363616c61722060448201527f6661696c656400000000000000000000000000000000000000000000000000006064820152fd5b508251604051630517f28b60e21b81527f01010200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff831660448201526020816064816000825af18015610c4d5760009061236e575b6123659150613fb3565b15158414611d32565b506020813d60201161239a575b8161238860209383613c1f565b8101031261011657612365905161235b565b3d915061237b565b506020813d6020116123ce575b816123bc60209383613c1f565b8101031261011657611d289051611d1e565b3d91506123af565b606460405162461bcd60e51b815260206004820152601660248201527f6c65546573743a2063617374203634206661696c6564000000000000000000006044820152fd5b506020823d602011612446575b8161243460209383613c1f565b8101031261011657611cb49151611ca5565b3d9150612427565b506020823d60201161247a575b8161246860209383613c1f565b8101031261011657611c8f9151611c32565b3d915061245b565b506020823d6020116124ae575b8161249c60209383613c1f565b8101031261011657611c1c9151611bc0565b3d915061248f565b506020823d6020116124e2575b816124d060209383613c1f565b8101031261011657611baa9151611b4d565b3d91506124c3565b506020823d602011612516575b8161250460209383613c1f565b8101031261011657611b379151611ad2565b3d91506124f7565b506020823d60201161254a575b8161253860209383613c1f565b8101031261011657611abc9151611a61565b3d915061252b565b506020823d60201161257e575b8161256c60209383613c1f565b8101031261011657611a4b91516119f7565b3d915061255f565b606460405162461bcd60e51b815260206004820152601660248201527f6c65546573743a2063617374203332206661696c6564000000000000000000006044820152fd5b506020823d6020116125f6575b816125e460209383613c1f565b810103126101165761198b915161197c565b3d91506125d7565b506020823d60201161262a575b8161261860209383613c1f565b81010312610116576119669151611909565b3d915061260b565b506020823d60201161265e575b8161264c60209383613c1f565b81010312610116576118f3915161188e565b3d915061263f565b506020823d602011612692575b8161268060209383613c1f565b8101031261011657611878915161181d565b3d9150612673565b506020823d6020116126c6575b816126b460209383613c1f565b810103126101165761180791516117b3565b3d91506126a7565b606460405162461bcd60e51b815260206004820152601660248201527f6c65546573743a2063617374203136206661696c6564000000000000000000006044820152fd5b919250506020813d602011612743575b8161272f60209383613c1f565b810103126101165751879190611748611739565b3d9150612722565b506020823d602011612777575b8161276560209383613c1f565b810103126101165761172191516116bd565b3d9150612758565b506020823d6020116127ab575b8161279960209383613c1f565b81010312610116576116a79151611653565b3d915061278c565b90506020813d6020116127df575b816127ce60209383613c1f565b8101031261011657516115ad6115a0565b3d91506127c1565b3461011657600060031936011261011657602060ff60005460101c166040519015158152f35b3461011657606060031936011261011657602061016660405161282f81613b7f565b6004358152602435838201526044356040820152613d6e565b3461011657600060031936011261011657602060ff60005460081c166040519015158152f35b3461011657604060031936011261011657612887613b5f565b61288f613b6f565b612897613ef3565b906128a0613f31565b926128a9613f50565b6128b1613f7b565b906128bd848487613c60565b84516020808701516040516336c1722f60e11b81527f0101000000000000000000000000000000000000000000000000000000000000600482015260248101939093526044830152816064816000825af1908115610c4d57600091613b2b575b5061292a6129b591613fb3565b1515967fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff006000541660ff8916176000556020604088015160608901519060405194859283926336c1722f60e11b8452600484016040909392919360608101947f0202000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d57600090613af7575b8152865160608801516040516336c1722f60e11b81527f0102000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d57600090613ac3575b612a999250602082015260206040880151818901519060405194859283926336c1722f60e11b8452600484016040909392919360608101947f0201000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d578892600091613a8a575b506040820152612ac090613d6e565b151503613a4657608085015160a08601516040516336c1722f60e11b81527f0303000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152906020826064816000825af18015610c4d57600090613a12575b8152855160a08701516040516336c1722f60e11b81527f0103000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d576000906139de575b6020828101919091526080870151878201516040516336c1722f60e11b81527f030100000000000000000000000000000000000000000000000000000000000060048201526024810192909252604482015292508280606481015b0381600060645af18015610c4d576000906139aa575b612c6b925060408201526020604087015160a08801519060405194859283926336c1722f60e11b8452600484016040909392919360608101947f0203000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d57600090613976575b6060828101919091526080870151908701516040516336c1722f60e11b81527f0302000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d57600090613942575b612d0392506080820152613dbb565b151585036138fe5760c084015160e08501516040516336c1722f60e11b81527f0404000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152906020826064816000825af18015610c4d576000906138ca575b8152845160e08601516040516336c1722f60e11b81527f0104000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d57600090613896575b60208281019190915260c0860151868201516040516336c1722f60e11b81527f040100000000000000000000000000000000000000000000000000000000000060048201526024810192909252604482015292508280606481015b0381600060645af18015610c4d57600090613862575b612eaf925060408201526020604086015160e08701519060405194859283926336c1722f60e11b8452600484016040909392919360608101947f0204000000000000000000000000000000000000000000000000000000000000825260208201520152565b0381600060645af18015610c4d5760009061382e575b60608281019190915260c0860151908601516040516336c1722f60e11b81527f0402000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d576000906137fa575b60808281019190915285015160e08601516040516336c1722f60e11b81527f0304000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d576000906137c6575b60a08281019190915260c0860151908601516040516336c1722f60e11b81527f0403000000000000000000000000000000000000000000000000000000000000600482015260248101929092526044820152915060208280606481015b0381600060645af18015610c4d57600090613792575b61302c925060c0820152613e38565b1515840361374e576020838101516040516336c1722f60e11b81527f0101010000000000000000000000000000000000000000000000000000000000600482015260ff84166024820152604481019190915290816064816000825af18015610c4d5760009061371a575b6130a09150613fb3565b1515841480613673575b156136095760608301516040516336c1722f60e11b81527f0202010000000000000000000000000000000000000000000000000000000000600482015260ff8316602482015260448101919091526020816064816000825af18015610c4d576000906135d5575b61311b9150613fb3565b151584148061352b575b156134c15760a08301516040516336c1722f60e11b81527f0303010000000000000000000000000000000000000000000000000000000000600482015260ff8316602482015260448101919091526020816064816000825af18015610c4d5760009061348d575b6131969150613fb3565b15158414806133e3575b156133795760e08301516040516336c1722f60e11b81527f0404010000000000000000000000000000000000000000000000000000000000600482015260ff92909216602483015260448201526020816064816000825af18015610c4d57600090613345575b6132109150613fb3565b151583149182613297575b50501561322d57602090604051908152f35b608460405162461bcd60e51b815260206004820152602760248201527f6774546573743a207465737420363420626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152fd5b60c001516040516336c1722f60e11b81527f04040200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff91909116604482015290506020816064816000825af18015610c4d57600090613311575b6133069150613fb3565b15158114828061321b565b506020813d60201161333d575b8161332b60209383613c1f565b810103126101165761330690516132fc565b3d915061331e565b506020813d602011613371575b8161335f60209383613c1f565b81010312610116576132109051613206565b3d9150613352565b608460405162461bcd60e51b815260206004820152602760248201527f6774546573743a207465737420333220626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152fd5b5060808301516040516336c1722f60e11b81527f03030200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff831660448201526020816064816000825af18015610c4d57600090613459575b6134509150613fb3565b151584146131a0565b506020813d602011613485575b8161347360209383613c1f565b81010312610116576134509051613446565b3d9150613466565b506020813d6020116134b9575b816134a760209383613c1f565b8101031261011657613196905161318c565b3d915061349a565b608460405162461bcd60e51b815260206004820152602760248201527f6774546573743a207465737420313620626974732077697468207363616c617260448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152fd5b5060408381015190516336c1722f60e11b81527f02020200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff831660448201526020816064816000825af18015610c4d576000906135a1575b6135989150613fb3565b15158414613125565b506020813d6020116135cd575b816135bb60209383613c1f565b8101031261011657613598905161358e565b3d91506135ae565b506020813d602011613601575b816135ef60209383613c1f565b810103126101165761311b9051613111565b3d91506135e2565b608460405162461bcd60e51b815260206004820152602660248201527f6774546573743a2074657374203820626974732077697468207363616c61722060448201527f6661696c656400000000000000000000000000000000000000000000000000006064820152fd5b5082516040516336c1722f60e11b81527f01010200000000000000000000000000000000000000000000000000000000006004820152602481019190915260ff831660448201526020816064816000825af18015610c4d576000906136e6575b6136dd9150613fb3565b151584146130aa565b506020813d602011613712575b8161370060209383613c1f565b81010312610116576136dd90516136d3565b3d91506136f3565b506020813d602011613746575b8161373460209383613c1f565b81010312610116576130a09051613096565b3d9150613727565b606460405162461bcd60e51b815260206004820152601660248201527f6774546573743a2063617374203634206661696c6564000000000000000000006044820152fd5b506020823d6020116137be575b816137ac60209383613c1f565b810103126101165761302c915161301d565b3d915061379f565b506020823d6020116137f2575b816137e060209383613c1f565b81010312610116576130079151612faa565b3d91506137d3565b506020823d602011613826575b8161381460209383613c1f565b8101031261011657612f949151612f38565b3d9150613807565b506020823d60201161385a575b8161384860209383613c1f565b8101031261011657612f229151612ec5565b3d915061383b565b506020823d60201161388e575b8161387c60209383613c1f565b8101031261011657612eaf9151612e4a565b3d915061386f565b506020823d6020116138c2575b816138b060209383613c1f565b8101031261011657612e349151612dd9565b3d91506138a3565b506020823d6020116138f6575b816138e460209383613c1f565b8101031261011657612dc39151612d6f565b3d91506138d7565b606460405162461bcd60e51b815260206004820152601660248201527f6774546573743a2063617374203332206661696c6564000000000000000000006044820152fd5b506020823d60201161396e575b8161395c60209383613c1f565b8101031261011657612d039151612cf4565b3d915061394f565b506020823d6020116139a2575b8161399060209383613c1f565b8101031261011657612cde9151612c81565b3d9150613983565b506020823d6020116139d6575b816139c460209383613c1f565b8101031261011657612c6b9151612c06565b3d91506139b7565b506020823d602011613a0a575b816139f860209383613c1f565b8101031261011657612bf09151612b95565b3d91506139eb565b506020823d602011613a3e575b81613a2c60209383613c1f565b8101031261011657612b7f9151612b2b565b3d9150613a1f565b606460405162461bcd60e51b815260206004820152601660248201527f6774546573743a2063617374203136206661696c6564000000000000000000006044820152fd5b919250506020813d602011613abb575b81613aa760209383613c1f565b810103126101165751879190612ac0612ab1565b3d9150613a9a565b506020823d602011613aef575b81613add60209383613c1f565b8101031261011657612a999151612a35565b3d9150613ad0565b506020823d602011613b23575b81613b1160209383613c1f565b8101031261011657612a1f91516129cb565b3d9150613b04565b90506020813d602011613b57575b81613b4660209383613c1f565b81010312610116575161292a61291d565b3d9150613b39565b6004359060ff8216820361011657565b6024359060ff8216820361011657565b6060810190811067ffffffffffffffff821117613b9b57604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60e0810190811067ffffffffffffffff821117613b9b57604052565b60a0810190811067ffffffffffffffff821117613b9b57604052565b610100810190811067ffffffffffffffff821117613b9b57604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117613b9b57604052565b91613cd290613cc860ff8060e095613c778161404a565b8852613c828561404a565b60208901521692613c92846140eb565b60408801521691613ca2836140eb565b6060870152613cb08161415f565b6080870152613cbe8361415f565b60a08701526141d5565b60c08501526141d5565b910152565b15613cde57565b60a460405162461bcd60e51b815260206004820152604660248201527f64656372797074416e64436f6d70617265416c6c526573756c74733a2046616960448201527f6c656420746f206465637279707420616e6420636f6d7061726520616c6c207260648201527f6573756c747300000000000000000000000000000000000000000000000000006084820152fd5b613d9f613d7b8251613fb3565b91613d896020820151613fb3565b15158315159081149182613da2575b5050613cd7565b90565b613db191925060400151613fb3565b1515143880613d98565b613d9f613dc88251613fb3565b91613dd66020820151613fb3565b15158315159081149182613e1f575b82613e06575b82613df7575050613cd7565b613db191925060600151613fb3565b9150613e156080830151613fb3565b1515811491613deb565b9150613e2e6040830151613fb3565b1515811491613de5565b613d9f613e458251613fb3565b91613e536020820151613fb3565b15158315159081149182613eda575b82613ec1575b82613ea8575b82613e8f575b82613e80575050613cd7565b613db191925060a00151613fb3565b9150613e9e60c0830151613fb3565b1515811491613e74565b9150613eb76060830151613fb3565b1515811491613e6e565b9150613ed06080830151613fb3565b1515811491613e68565b9150613ee96040830151613fb3565b1515811491613e62565b60405190613f0082613c02565b8160e06000918281528260208201528260408201528260608201528260808201528260a08201528260c08201520152565b60405190613f3e82613b7f565b60006040838281528260208201520152565b60405190613f5d82613be6565b60006080838281528260208201528260408201528260608201520152565b60405190613f8882613bca565b8160c06000918281528260208201528260408201528260608201528260808201528260a08201520152565b6040517f0cfed56100000000000000000000000000000000000000000000000000000000815260009182600483015260248201526020816044818560645af191821561403e578092614007575b5050151590565b9091506020823d8211614036575b8161402260209383613c1f565b810103126140335750513880614000565b80fd5b3d9150614015565b604051903d90823e3d90fd5b60ff604051917fd9b60b600000000000000000000000000000000000000000000000000000000083527f01000000000000000000000000000000000000000000000000000000000000006004840152166024820152602081604481600060645af1908115610c4d576000916140bd575090565b906020823d82116140e3575b816140d660209383613c1f565b8101031261403357505190565b3d91506140c9565b61ffff604051917fd9b60b600000000000000000000000000000000000000000000000000000000083527f02000000000000000000000000000000000000000000000000000000000000006004840152166024820152602081604481600060645af1908115610c4d576000916140bd575090565b63ffffffff604051917fd9b60b600000000000000000000000000000000000000000000000000000000083527f03000000000000000000000000000000000000000000000000000000000000006004840152166024820152602081604481600060645af1908115610c4d576000916140bd575090565b67ffffffffffffffff604051917fd9b60b600000000000000000000000000000000000000000000000000000000083527f04000000000000000000000000000000000000000000000000000000000000006004840152166024820152602081604481600060645af1908115610c4d576000916140bd57509056fea164736f6c6343000813000a";
|
|
336
336
|
|
|
337
337
|
type Comparison1TestsContractConstructorParams =
|
|
338
338
|
| [signer?: Signer]
|