From b54d4c7c52e1329f4d4125a820d246e2de4c513f Mon Sep 17 00:00:00 2001 From: benk10 Date: Sun, 20 Dec 2020 07:48:42 +0200 Subject: [PATCH] release 0.0.1-rc.53-v0 (#376) --- contracts/0.0.1-rc.53/ARCDebug.json | 102 + .../ARCVotingMachineCallbacksMock.json | 238 ++ contracts/0.0.1-rc.53/AbsoluteVote.json | 594 ++++ .../0.0.1-rc.53/AbsoluteVoteExecuteMock.json | 568 ++++ contracts/0.0.1-rc.53/ActionMock.json | 149 + contracts/0.0.1-rc.53/Address.json | 8 + contracts/0.0.1-rc.53/Agreement.json | 26 + contracts/0.0.1-rc.53/AgreementMock.json | 62 + contracts/0.0.1-rc.53/Auction4Reputation.json | 394 +++ contracts/0.0.1-rc.53/Avatar.json | 500 +++ contracts/0.0.1-rc.53/BadERC20.json | 123 + contracts/0.0.1-rc.53/Competition.json | 540 ++++ contracts/0.0.1-rc.53/Context.json | 15 + .../ContinuousLocking4Reputation.json | 620 ++++ contracts/0.0.1-rc.53/ContributionReward.json | 949 ++++++ .../0.0.1-rc.53/ContributionRewardExt.json | 1012 ++++++ contracts/0.0.1-rc.53/Controller.json | 1047 ++++++ contracts/0.0.1-rc.53/ControllerCreator.json | 32 + contracts/0.0.1-rc.53/CurveInterface.json | 32 + contracts/0.0.1-rc.53/DAORegistry.json | 2487 +++++++++++++++ contracts/0.0.1-rc.53/DAOToken.json | 474 +++ contracts/0.0.1-rc.53/DAOTracker.json | 251 ++ contracts/0.0.1-rc.53/DaoCreator.json | 197 ++ contracts/0.0.1-rc.53/Debug.json | 100 + .../0.0.1-rc.53/DxDaoSchemeConstraints.json | 464 +++ contracts/0.0.1-rc.53/ECDSA.json | 8 + contracts/0.0.1-rc.53/ERC20.json | 256 ++ contracts/0.0.1-rc.53/ERC20Mock.json | 275 ++ contracts/0.0.1-rc.53/ERC827.json | 302 ++ contracts/0.0.1-rc.53/ERC827Token.json | 416 +++ contracts/0.0.1-rc.53/ERC827TokenMock.json | 433 +++ .../ExternalLocking4Reputation.json | 515 +++ .../0.0.1-rc.53/ExternalTokenLockerMock.json | 146 + .../FixedReputationAllocation.json | 312 ++ contracts/0.0.1-rc.53/Forwarder.json | 154 + contracts/0.0.1-rc.53/GenericScheme.json | 517 +++ .../0.0.1-rc.53/GenericSchemeMultiCall.json | 549 ++++ .../GenericSchemeMultiCallFactory.json | 135 + contracts/0.0.1-rc.53/GenesisProtocol.json | 1433 +++++++++ .../GenesisProtocolCallbacksMock.json | 614 ++++ .../0.0.1-rc.53/GenesisProtocolInterface.json | 35 + .../0.0.1-rc.53/GenesisProtocolLogic.json | 1070 +++++++ .../GlobalConstraintInterface.json | 88 + .../0.0.1-rc.53/GlobalConstraintMock.json | 160 + .../GlobalConstraintRegistrar.json | 586 ++++ contracts/0.0.1-rc.53/IERC20.json | 204 ++ contracts/0.0.1-rc.53/IntVoteInterface.json | 348 ++ contracts/0.0.1-rc.53/Locking4Reputation.json | 339 ++ .../0.0.1-rc.53/LockingEth4Reputation.json | 436 +++ .../0.0.1-rc.53/LockingToken4Reputation.json | 518 +++ contracts/0.0.1-rc.53/Math.json | 8 + contracts/0.0.1-rc.53/Migrations.json | 1392 ++++++++ contracts/0.0.1-rc.53/MiniMeToken.json | 58 + .../0.0.1-rc.53/NectarRepAllocation.json | 157 + .../0.0.1-rc.53/OrganizationRegister.json | 199 ++ contracts/0.0.1-rc.53/Ownable.json | 2835 +++++++++++++++++ contracts/0.0.1-rc.53/PolkaCurve.json | 62 + .../0.0.1-rc.53/PriceOracleInterface.json | 37 + contracts/0.0.1-rc.53/PriceOracleMock.json | 161 + .../0.0.1-rc.53/ProposalExecuteInterface.json | 35 + contracts/0.0.1-rc.53/QuorumVote.json | 594 ++++ contracts/0.0.1-rc.53/RageQuitWithToken.json | 107 + contracts/0.0.1-rc.53/RealMath.json | 8 + contracts/0.0.1-rc.53/RealMathTester.json | 66 + contracts/0.0.1-rc.53/Redeemer.json | 260 ++ contracts/0.0.1-rc.53/RepAllocation.json | 209 ++ contracts/0.0.1-rc.53/Reputation.json | 270 ++ contracts/0.0.1-rc.53/ReputationAdmin.json | 229 ++ .../0.0.1-rc.53/ReputationFromToken.json | 224 ++ contracts/0.0.1-rc.53/SafeERC20.json | 10 + contracts/0.0.1-rc.53/SafeERC20Mock.json | 147 + contracts/0.0.1-rc.53/SafeMath.json | 8 + contracts/0.0.1-rc.53/SchemeConstraints.json | 134 + contracts/0.0.1-rc.53/SchemeRegistrar.json | 575 ++++ contracts/0.0.1-rc.53/SignalScheme.json | 408 +++ .../0.0.1-rc.53/SimpleSchemeConstraints.json | 190 ++ contracts/0.0.1-rc.53/TokenCapGC.json | 166 + contracts/0.0.1-rc.53/TransitionScheme.json | 218 ++ contracts/0.0.1-rc.53/UniversalScheme.json | 10 + .../0.0.1-rc.53/UniversalSchemeInterface.json | 10 + .../0.0.1-rc.53/UniversalSchemeMock.json | 113 + contracts/0.0.1-rc.53/UpgradeScheme.json | 544 ++++ .../0.0.1-rc.53/VoteInOrganizationScheme.json | 498 +++ .../0.0.1-rc.53/VotingMachineCallbacks.json | 213 ++ .../VotingMachineCallbacksInterface.json | 180 ++ contracts/0.0.1-rc.53/Wallet.json | 142 + migration.json | 319 +- package-lock.json | 20 +- package.json | 4 +- 89 files changed, 31571 insertions(+), 82 deletions(-) create mode 100644 contracts/0.0.1-rc.53/ARCDebug.json create mode 100644 contracts/0.0.1-rc.53/ARCVotingMachineCallbacksMock.json create mode 100644 contracts/0.0.1-rc.53/AbsoluteVote.json create mode 100644 contracts/0.0.1-rc.53/AbsoluteVoteExecuteMock.json create mode 100644 contracts/0.0.1-rc.53/ActionMock.json create mode 100644 contracts/0.0.1-rc.53/Address.json create mode 100644 contracts/0.0.1-rc.53/Agreement.json create mode 100644 contracts/0.0.1-rc.53/AgreementMock.json create mode 100644 contracts/0.0.1-rc.53/Auction4Reputation.json create mode 100644 contracts/0.0.1-rc.53/Avatar.json create mode 100644 contracts/0.0.1-rc.53/BadERC20.json create mode 100644 contracts/0.0.1-rc.53/Competition.json create mode 100644 contracts/0.0.1-rc.53/Context.json create mode 100644 contracts/0.0.1-rc.53/ContinuousLocking4Reputation.json create mode 100644 contracts/0.0.1-rc.53/ContributionReward.json create mode 100644 contracts/0.0.1-rc.53/ContributionRewardExt.json create mode 100644 contracts/0.0.1-rc.53/Controller.json create mode 100644 contracts/0.0.1-rc.53/ControllerCreator.json create mode 100644 contracts/0.0.1-rc.53/CurveInterface.json create mode 100644 contracts/0.0.1-rc.53/DAORegistry.json create mode 100644 contracts/0.0.1-rc.53/DAOToken.json create mode 100644 contracts/0.0.1-rc.53/DAOTracker.json create mode 100644 contracts/0.0.1-rc.53/DaoCreator.json create mode 100644 contracts/0.0.1-rc.53/Debug.json create mode 100644 contracts/0.0.1-rc.53/DxDaoSchemeConstraints.json create mode 100644 contracts/0.0.1-rc.53/ECDSA.json create mode 100644 contracts/0.0.1-rc.53/ERC20.json create mode 100644 contracts/0.0.1-rc.53/ERC20Mock.json create mode 100644 contracts/0.0.1-rc.53/ERC827.json create mode 100644 contracts/0.0.1-rc.53/ERC827Token.json create mode 100644 contracts/0.0.1-rc.53/ERC827TokenMock.json create mode 100644 contracts/0.0.1-rc.53/ExternalLocking4Reputation.json create mode 100644 contracts/0.0.1-rc.53/ExternalTokenLockerMock.json create mode 100644 contracts/0.0.1-rc.53/FixedReputationAllocation.json create mode 100644 contracts/0.0.1-rc.53/Forwarder.json create mode 100644 contracts/0.0.1-rc.53/GenericScheme.json create mode 100644 contracts/0.0.1-rc.53/GenericSchemeMultiCall.json create mode 100644 contracts/0.0.1-rc.53/GenericSchemeMultiCallFactory.json create mode 100644 contracts/0.0.1-rc.53/GenesisProtocol.json create mode 100644 contracts/0.0.1-rc.53/GenesisProtocolCallbacksMock.json create mode 100644 contracts/0.0.1-rc.53/GenesisProtocolInterface.json create mode 100644 contracts/0.0.1-rc.53/GenesisProtocolLogic.json create mode 100644 contracts/0.0.1-rc.53/GlobalConstraintInterface.json create mode 100644 contracts/0.0.1-rc.53/GlobalConstraintMock.json create mode 100644 contracts/0.0.1-rc.53/GlobalConstraintRegistrar.json create mode 100644 contracts/0.0.1-rc.53/IERC20.json create mode 100644 contracts/0.0.1-rc.53/IntVoteInterface.json create mode 100644 contracts/0.0.1-rc.53/Locking4Reputation.json create mode 100644 contracts/0.0.1-rc.53/LockingEth4Reputation.json create mode 100644 contracts/0.0.1-rc.53/LockingToken4Reputation.json create mode 100644 contracts/0.0.1-rc.53/Math.json create mode 100644 contracts/0.0.1-rc.53/Migrations.json create mode 100644 contracts/0.0.1-rc.53/MiniMeToken.json create mode 100644 contracts/0.0.1-rc.53/NectarRepAllocation.json create mode 100644 contracts/0.0.1-rc.53/OrganizationRegister.json create mode 100644 contracts/0.0.1-rc.53/Ownable.json create mode 100644 contracts/0.0.1-rc.53/PolkaCurve.json create mode 100644 contracts/0.0.1-rc.53/PriceOracleInterface.json create mode 100644 contracts/0.0.1-rc.53/PriceOracleMock.json create mode 100644 contracts/0.0.1-rc.53/ProposalExecuteInterface.json create mode 100644 contracts/0.0.1-rc.53/QuorumVote.json create mode 100644 contracts/0.0.1-rc.53/RageQuitWithToken.json create mode 100644 contracts/0.0.1-rc.53/RealMath.json create mode 100644 contracts/0.0.1-rc.53/RealMathTester.json create mode 100644 contracts/0.0.1-rc.53/Redeemer.json create mode 100644 contracts/0.0.1-rc.53/RepAllocation.json create mode 100644 contracts/0.0.1-rc.53/Reputation.json create mode 100644 contracts/0.0.1-rc.53/ReputationAdmin.json create mode 100644 contracts/0.0.1-rc.53/ReputationFromToken.json create mode 100644 contracts/0.0.1-rc.53/SafeERC20.json create mode 100644 contracts/0.0.1-rc.53/SafeERC20Mock.json create mode 100644 contracts/0.0.1-rc.53/SafeMath.json create mode 100644 contracts/0.0.1-rc.53/SchemeConstraints.json create mode 100644 contracts/0.0.1-rc.53/SchemeRegistrar.json create mode 100644 contracts/0.0.1-rc.53/SignalScheme.json create mode 100644 contracts/0.0.1-rc.53/SimpleSchemeConstraints.json create mode 100644 contracts/0.0.1-rc.53/TokenCapGC.json create mode 100644 contracts/0.0.1-rc.53/TransitionScheme.json create mode 100644 contracts/0.0.1-rc.53/UniversalScheme.json create mode 100644 contracts/0.0.1-rc.53/UniversalSchemeInterface.json create mode 100644 contracts/0.0.1-rc.53/UniversalSchemeMock.json create mode 100644 contracts/0.0.1-rc.53/UpgradeScheme.json create mode 100644 contracts/0.0.1-rc.53/VoteInOrganizationScheme.json create mode 100644 contracts/0.0.1-rc.53/VotingMachineCallbacks.json create mode 100644 contracts/0.0.1-rc.53/VotingMachineCallbacksInterface.json create mode 100644 contracts/0.0.1-rc.53/Wallet.json diff --git a/contracts/0.0.1-rc.53/ARCDebug.json b/contracts/0.0.1-rc.53/ARCDebug.json new file mode 100644 index 00000000..6ca939c3 --- /dev/null +++ b/contracts/0.0.1-rc.53/ARCDebug.json @@ -0,0 +1,102 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ARCDebug", + "sourceName": "contracts/test/ARCDebug.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_msg", + "type": "address" + } + ], + "name": "LogAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "_msg", + "type": "bool" + } + ], + "name": "LogBool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "_msg", + "type": "bytes" + } + ], + "name": "LogBytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "_msg", + "type": "bytes32" + } + ], + "name": "LogBytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "_msg", + "type": "int256" + } + ], + "name": "LogInt", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "_msg", + "type": "string" + } + ], + "name": "LogString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "_msg", + "type": "uint256" + } + ], + "name": "LogUint", + "type": "event" + } + ], + "bytecode": "0x6080604052348015600f57600080fd5b50603e80601d6000396000f3fe6080604052600080fdfea265627a7a7231582028a1cdc743b69fe361fe57708f89cf7032d1a5c35b43874e154efec14a80c78a64736f6c63430005110032", + "deployedBytecode": "0x6080604052600080fdfea265627a7a7231582028a1cdc743b69fe361fe57708f89cf7032d1a5c35b43874e154efec14a80c78a64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ARCVotingMachineCallbacksMock.json b/contracts/0.0.1-rc.53/ARCVotingMachineCallbacksMock.json new file mode 100644 index 00000000..d3609e25 --- /dev/null +++ b/contracts/0.0.1-rc.53/ARCVotingMachineCallbacksMock.json @@ -0,0 +1,238 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ARCVotingMachineCallbacksMock", + "sourceName": "contracts/test/ARCGenesisProtocolCallbacksMock.sol", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_votingMachine", + "type": "address" + } + ], + "name": "propose", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610d8f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063b8752ba31161005b578063b8752ba314610161578063bea75f2814610197578063d29b5d2f146101e7578063f81f8bf61461021957610088565b806360bdbb3f1461008d5780636b8eb403146100da5780639588378e14610118578063b551c37314610144575b600080fd5b6100b9600480360360408110156100a357600080fd5b506001600160a01b03813516906020013561024b565b604080519283526001600160a01b0390911660208301528051918290030190f35b610106600480360360408110156100f057600080fd5b506001600160a01b038135169060200135610275565b60408051918252519081900360200190f35b6101066004803603604081101561012e57600080fd5b506001600160a01b038135169060200135610335565b6101066004803603602081101561015a57600080fd5b50356105c7565b6101956004803603606081101561017757600080fd5b508035906001600160a01b036020820135811691604001351661084f565b005b6101d3600480360360808110156101ad57600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356108a7565b604080519115158252519081900360200190f35b6101d3600480360360608110156101fd57600080fd5b508035906001600160a01b036020820135169060400135610a49565b6101d36004803603606081101561022f57600080fd5b508035906001600160a01b036020820135169060400135610be2565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806102a957600091505061032f565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156102ff57600080fd5b505afa158015610313573d6000803e3d6000fd5b505050506040513d602081101561032957600080fd5b50519150505b92915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561038f57600080fd5b505afa1580156103a3573d6000803e3d6000fd5b505050506040513d60208110156103b957600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561040b57600080fd5b505afa15801561041f573d6000803e3d6000fd5b505050506040513d602081101561043557600080fd5b5051610483576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61048b610d43565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526104d25760009350506105bf565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561050f57600080fd5b505afa158015610523573d6000803e3d6000fd5b505050506040513d602081101561053957600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b15801561058f57600080fd5b505afa1580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50519350505b505092915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561062157600080fd5b505afa158015610635573d6000803e3d6000fd5b505050506040513d602081101561064b57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561069d57600080fd5b505afa1580156106b1573d6000803e3d6000fd5b505050506040513d60208110156106c757600080fd5b5051610715576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61071d610d43565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610764576000935050610848565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156107a157600080fd5b505afa1580156107b5573d6000803e3d6000fd5b505050506040513d60208110156107cb57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b15801561081857600080fd5b505afa15801561082c573d6000803e3d6000fd5b505050506040513d602081101561084257600080fd5b50519350505b5050919050565b6040805180820182524381526001600160a01b03938416602080830191825293851660009081528085528381209681529590935293209251835551600190920180546001600160a01b03191692909116919091179055565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610914576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610948576000925050610a40565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561098157600080fd5b505afa158015610995573d6000803e3d6000fd5b505050506040513d60208110156109ab57600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b158015610a1057600080fd5b505af1158015610a24573d6000803e3d6000fd5b505050506040513d6020811015610a3a57600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610ab6576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610aea576000925050610bda565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b2357600080fd5b505afa158015610b37573d6000803e3d6000fd5b505050506040513d6020811015610b4d57600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b158015610baa57600080fd5b505af1158015610bbe573d6000803e3d6000fd5b505050506040513d6020811015610bd457600080fd5b50519250505b509392505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610c4f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610c83576000925050610bda565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cbc57600080fd5b505afa158015610cd0573d6000803e3d6000fd5b505050506040513d6020811015610ce657600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b158015610baa57600080fd5b60408051808201909152600080825260208201529056fea265627a7a72315820062be3bf5270a50195c1fded3bc5df38405b7036d45f11b34f430ad0a2d2652d64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063b8752ba31161005b578063b8752ba314610161578063bea75f2814610197578063d29b5d2f146101e7578063f81f8bf61461021957610088565b806360bdbb3f1461008d5780636b8eb403146100da5780639588378e14610118578063b551c37314610144575b600080fd5b6100b9600480360360408110156100a357600080fd5b506001600160a01b03813516906020013561024b565b604080519283526001600160a01b0390911660208301528051918290030190f35b610106600480360360408110156100f057600080fd5b506001600160a01b038135169060200135610275565b60408051918252519081900360200190f35b6101066004803603604081101561012e57600080fd5b506001600160a01b038135169060200135610335565b6101066004803603602081101561015a57600080fd5b50356105c7565b6101956004803603606081101561017757600080fd5b508035906001600160a01b036020820135811691604001351661084f565b005b6101d3600480360360808110156101ad57600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356108a7565b604080519115158252519081900360200190f35b6101d3600480360360608110156101fd57600080fd5b508035906001600160a01b036020820135169060400135610a49565b6101d36004803603606081101561022f57600080fd5b508035906001600160a01b036020820135169060400135610be2565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806102a957600091505061032f565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156102ff57600080fd5b505afa158015610313573d6000803e3d6000fd5b505050506040513d602081101561032957600080fd5b50519150505b92915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561038f57600080fd5b505afa1580156103a3573d6000803e3d6000fd5b505050506040513d60208110156103b957600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561040b57600080fd5b505afa15801561041f573d6000803e3d6000fd5b505050506040513d602081101561043557600080fd5b5051610483576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61048b610d43565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526104d25760009350506105bf565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561050f57600080fd5b505afa158015610523573d6000803e3d6000fd5b505050506040513d602081101561053957600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b15801561058f57600080fd5b505afa1580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50519350505b505092915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561062157600080fd5b505afa158015610635573d6000803e3d6000fd5b505050506040513d602081101561064b57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561069d57600080fd5b505afa1580156106b1573d6000803e3d6000fd5b505050506040513d60208110156106c757600080fd5b5051610715576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61071d610d43565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610764576000935050610848565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156107a157600080fd5b505afa1580156107b5573d6000803e3d6000fd5b505050506040513d60208110156107cb57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b15801561081857600080fd5b505afa15801561082c573d6000803e3d6000fd5b505050506040513d602081101561084257600080fd5b50519350505b5050919050565b6040805180820182524381526001600160a01b03938416602080830191825293851660009081528085528381209681529590935293209251835551600190920180546001600160a01b03191692909116919091179055565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610914576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610948576000925050610a40565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561098157600080fd5b505afa158015610995573d6000803e3d6000fd5b505050506040513d60208110156109ab57600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b158015610a1057600080fd5b505af1158015610a24573d6000803e3d6000fd5b505050506040513d6020811015610a3a57600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610ab6576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610aea576000925050610bda565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b2357600080fd5b505afa158015610b37573d6000803e3d6000fd5b505050506040513d6020811015610b4d57600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b158015610baa57600080fd5b505af1158015610bbe573d6000803e3d6000fd5b505050506040513d6020811015610bd457600080fd5b50519250505b509392505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610c4f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610c83576000925050610bda565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cbc57600080fd5b505afa158015610cd0573d6000803e3d6000fd5b505050506040513d6020811015610ce657600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b158015610baa57600080fd5b60408051808201909152600080825260208201529056fea265627a7a72315820062be3bf5270a50195c1fded3bc5df38405b7036d45f11b34f430ad0a2d2652d64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/AbsoluteVote.json b/contracts/0.0.1-rc.53/AbsoluteVote.json new file mode 100644 index 00000000..ce451203 --- /dev/null +++ b/contracts/0.0.1-rc.53/AbsoluteVote.json @@ -0,0 +1,594 @@ +{ + "contractName": "AbsoluteVote", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bool", + "name": "_isProxyVote", + "type": "bool" + } + ], + "name": "AVVoteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "CancelProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "CancelVoting", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_decision", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_totalReputation", + "type": "uint256" + } + ], + "name": "ExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "VoteProposal", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "MAX_NUM_OF_CHOICES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "cancelVote", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "execute", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAllowedRangeOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getNumberOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "_precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isAbstainAllow", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "isVotable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizations", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "uint256", + "name": "precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "voteOnBehalf", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "bytes32", + "name": "organizationId", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "open", + "type": "bool" + }, + { + "internalType": "address", + "name": "callbacks", + "type": "address" + }, + { + "internalType": "uint256", + "name": "numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "paramsHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalVotes", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "proposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "voteInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_choice", + "type": "uint256" + } + ], + "name": "voteStatus", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506113b0806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806351d997b2116100a2578063a003651d11610071578063a003651d1461031a578063b451291314610337578063ba51b14e1461035a578063c083510614610393578063e751f271146103b05761010b565b806351d997b2146102b157806388737b5e146102b95780638d22651e146102f35780639525c0cc146102fb5761010b565b8063289647e4116100de578063289647e4146101d957806332ed5b1214610205578063359afa491461025d5780635142bc1e146102a95761010b565b80630250680414610110578063119ce91b1461014e57806321b4b3dc1461019357806323d840f5146101ad575b600080fd5b61012d6004803603602081101561012657600080fd5b50356103cd565b604080519283526001600160a01b0390911660208301528051918290030190f35b61017a6004803603604081101561016457600080fd5b50803590602001356001600160a01b03166103ef565b6040805192835260208301919091528051918290030190f35b61019b610440565b60408051918252519081900360200190f35b61019b600480360360408110156101c357600080fd5b50803590602001356001600160a01b0316610446565b61019b600480360360408110156101ef57600080fd5b50803590602001356001600160a01b03166104fa565b6102226004803603602081101561021b57600080fd5b5035610539565b6040805196875294151560208701526001600160a01b03909316858501526060850191909152608084015260a0830152519081900360c00190f35b6102956004803603608081101561027357600080fd5b50803590602081013590604081013590606001356001600160a01b0316610579565b604080519115158252519081900360200190f35b61017a6106a3565b6102956106ab565b61019b600480360360808110156102cf57600080fd5b508035906020810135906001600160a01b03604082013581169160600135166106b0565b61019b610960565b6103186004803603602081101561031157600080fd5b5035610965565b005b61019b6004803603602081101561033057600080fd5b50356109d6565b61019b6004803603604081101561034d57600080fd5b50803590602001356109eb565b6103776004803603602081101561037057600080fd5b5035610a0c565b604080516001600160a01b039092168252519081900360200190f35b610295600480360360208110156103a957600080fd5b5035610a27565b610295600480360360208110156103c657600080fd5b5035610a40565b600060208190529081526040902080546001909101546001600160a01b031682565b6000806103fa6112c7565b50505060008281526001602081815260408084206001600160a01b0386168552600601825292839020835180850190945280548085529201549201829052909250929050565b60035481565b6000606483111580156104595750600083115b61049a576040805162461bcd60e51b815260206004820152600d60248201526c77726f6e67207072656352657160981b604482015290519081900360640190fd5b60006104a684846104fa565b6040805180820182529586526001600160a01b039485166020808801918252600084815290819052919091209551865551600190950180546001600160a01b03191695909416949094179092555090919050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b60016020819052600091825260409091208054918101546002820154600383015460049093015460ff8316936101009093046001600160a01b0316929086565b600084815260016020819052604082200154859060ff166105db576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008681526001602052604090206105f16112e1565b506003810154600090815260208181526040808320815180830190925280548252600101546001600160a01b03169181018290529190156106875781602001516001600160a01b0316336001600160a01b0316146106805760405162461bcd60e51b81526004018080602001828103825260248152602001806113586024913960400191505060405180910390fd5b508461068a565b50335b61069689828a8a610ab4565b9998505050505050505050565b6000600a9091565b600190565b600083815260208190526040812054610710576040805162461bcd60e51b815260206004820152601c60248201527f6e6f20736574506172616d6574657273206265656e2063616c6c656400000000604482015290519081900360640190fd5b6000851180156107215750600a8511155b610772576040805162461bcd60e51b815260206004820152601960248201527f6e756d4f6643686f69636573206f7574206f662072616e676500000000000000604482015290519081900360640190fd5b600354604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906107b790600163ffffffff610d9016565b6003556107c26112f8565b606081810188815260808301888152336040808601828152815192861b602084810191909152958a901b6bffffffffffffffffffffffff191660348401528151808403602801815260489093018252825192860192909220865260018587018181526000898152828852838120895180825592519381018054965160ff1990971694151594909417610100600160a81b0319166101006001600160a01b03978816021790935595516002808401919091559451600383015560a0880151600490920191909155845291909352902054166108f3576001600160a01b0384166108c9578051600090815260026020526040902080546001600160a01b031916331790556108f3565b8051600090815260026020526040902080546001600160a01b0319166001600160a01b0386161790555b80516000908152600260209081526040918290205482518a8152339281019290925281830189905291516001600160a01b039092169184917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a35095945050505050565b600a81565b60008181526001602081905260409091200154819060ff166109c8576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6109d28233610df1565b5050565b60009081526001602052604090206002015490565b60009182526001602090815260408084209284526005909201905290205490565b6002602052600090815260409020546001600160a01b031681565b6000908152600160208190526040909120015460ff1690565b600081815260016020819052604082200154829060ff16610aa2576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610aab83610ef6565b91505b50919050565b60008481526001602052604081206002810154841115610b12576040805162461bcd60e51b8152602060048201526014602482015273766f7465206973206f7574206f662072616e676560601b604482015290519081900360640190fd5b600181015460408051634ac41bc760e11b81526001600160a01b038881166004830152602482018a90529151600093610100900490921691639588378e91604480820192602092909190829003018186803b158015610b7057600080fd5b505afa158015610b84573d6000803e3d6000fd5b505050506040513d6020811015610b9a57600080fd5b5051905080610bf0576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b83811015610c2f5760405162461bcd60e51b815260040180806020018281038252602a81526020018061132e602a913960400191505060405180910390fd5b8380610c385750805b6001600160a01b038716600090815260068401602052604090206001015415610c6557610c658888610df1565b6000868152600584016020526040902054610c8790829063ffffffff610d9016565b60008781526005850160205260409020556004830154610cae90829063ffffffff610d9016565b600484015560408051808201825287815260208082018481526001600160a01b03808c16600081815260068a0185528681209551865592516001909501949094558754825260028352908490205484518b8152928301869052845193949116928c927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92908290030190a4604080516001600160a01b0389163314158152905189917fe715e19c865cb724f3c292cc2fffc24d9cdd398e179fb366f008cc73028e1c52919081900360200190a2610d8488610ef6565b98975050505050505050565b600082820183811015610dea576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000828152600160205260409020610e076112c7565b506001600160a01b03821660009081526006820160209081526040808320815180830183528154808252600190920154818501819052918552600586019093529220549091610e5c919063ffffffff61118016565b815160009081526005840160209081526040909120919091558101516004830154610e8c9163ffffffff61118016565b60048301556001600160a01b03808416600081815260068501602090815260408083208381556001018390558654835260029091528082205490519293169187917f0ecab23267930de581498fac1af19a95c888ec6583921ee9c47473e16245d3c891a450505050565b600081815260016020819052604082200154829060ff16610f58576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600083815260016020818152604080842092830154815163b551c37360e01b81526004810189905291519394936101009091046001600160a01b03169263b551c3739260248082019391829003018186803b158015610fb657600080fd5b505afa158015610fca573d6000803e3d6000fd5b505050506040513d6020811015610fe057600080fd5b505160038301546000908152602081905260408120549192505b83600201548111611173576000818152600585016020526040902054606484048302101561116b5761102a6112f8565b506040805160c08101825285548152600186015460ff81161515602083015261010090046001600160a01b0316918101919091526002850154606082015260038501546080820152600485015460a0820152611085886111c2565b805160009081526002602090815260409182902054825185815291820187905282516001600160a01b03909116928b927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a380604001516001600160a01b0316639d4c162d89846040518363ffffffff1660e01b81526004018083815260200182815260200192505050602060405180830381600087803b15801561113257600080fd5b505af1158015611146573d6000803e3d6000fd5b505050506040513d602081101561115c57600080fd5b50519650610aae945050505050565b600101610ffa565b5060009695505050505050565b6000610dea83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611230565b6000818152600160205260408120905b816002015481116111f65760008181526005830160205260408120556001016111d2565b50506000908152600160208190526040822082815590810180546001600160a81b0319169055600281018290556003810182905560040155565b600081848411156112bf5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561128457818101518382015260200161126c565b50505050905090810190601f1680156112b15780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604051806040016040528060008152602001600081525090565b604080518082019091526000808252602082015290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe63616e6e6f7420766f74652077697468206d6f72652072657075746174696f6e20766f746572206861736d73672e73656e646572206973206e6f7420617574686f72697a656420746f20766f7465a265627a7a723158206572f95d95fae02b678a1c0c588c35c9e192d6ec5b9f00a4731bb3174e9d061d64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806351d997b2116100a2578063a003651d11610071578063a003651d1461031a578063b451291314610337578063ba51b14e1461035a578063c083510614610393578063e751f271146103b05761010b565b806351d997b2146102b157806388737b5e146102b95780638d22651e146102f35780639525c0cc146102fb5761010b565b8063289647e4116100de578063289647e4146101d957806332ed5b1214610205578063359afa491461025d5780635142bc1e146102a95761010b565b80630250680414610110578063119ce91b1461014e57806321b4b3dc1461019357806323d840f5146101ad575b600080fd5b61012d6004803603602081101561012657600080fd5b50356103cd565b604080519283526001600160a01b0390911660208301528051918290030190f35b61017a6004803603604081101561016457600080fd5b50803590602001356001600160a01b03166103ef565b6040805192835260208301919091528051918290030190f35b61019b610440565b60408051918252519081900360200190f35b61019b600480360360408110156101c357600080fd5b50803590602001356001600160a01b0316610446565b61019b600480360360408110156101ef57600080fd5b50803590602001356001600160a01b03166104fa565b6102226004803603602081101561021b57600080fd5b5035610539565b6040805196875294151560208701526001600160a01b03909316858501526060850191909152608084015260a0830152519081900360c00190f35b6102956004803603608081101561027357600080fd5b50803590602081013590604081013590606001356001600160a01b0316610579565b604080519115158252519081900360200190f35b61017a6106a3565b6102956106ab565b61019b600480360360808110156102cf57600080fd5b508035906020810135906001600160a01b03604082013581169160600135166106b0565b61019b610960565b6103186004803603602081101561031157600080fd5b5035610965565b005b61019b6004803603602081101561033057600080fd5b50356109d6565b61019b6004803603604081101561034d57600080fd5b50803590602001356109eb565b6103776004803603602081101561037057600080fd5b5035610a0c565b604080516001600160a01b039092168252519081900360200190f35b610295600480360360208110156103a957600080fd5b5035610a27565b610295600480360360208110156103c657600080fd5b5035610a40565b600060208190529081526040902080546001909101546001600160a01b031682565b6000806103fa6112c7565b50505060008281526001602081815260408084206001600160a01b0386168552600601825292839020835180850190945280548085529201549201829052909250929050565b60035481565b6000606483111580156104595750600083115b61049a576040805162461bcd60e51b815260206004820152600d60248201526c77726f6e67207072656352657160981b604482015290519081900360640190fd5b60006104a684846104fa565b6040805180820182529586526001600160a01b039485166020808801918252600084815290819052919091209551865551600190950180546001600160a01b03191695909416949094179092555090919050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b60016020819052600091825260409091208054918101546002820154600383015460049093015460ff8316936101009093046001600160a01b0316929086565b600084815260016020819052604082200154859060ff166105db576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008681526001602052604090206105f16112e1565b506003810154600090815260208181526040808320815180830190925280548252600101546001600160a01b03169181018290529190156106875781602001516001600160a01b0316336001600160a01b0316146106805760405162461bcd60e51b81526004018080602001828103825260248152602001806113586024913960400191505060405180910390fd5b508461068a565b50335b61069689828a8a610ab4565b9998505050505050505050565b6000600a9091565b600190565b600083815260208190526040812054610710576040805162461bcd60e51b815260206004820152601c60248201527f6e6f20736574506172616d6574657273206265656e2063616c6c656400000000604482015290519081900360640190fd5b6000851180156107215750600a8511155b610772576040805162461bcd60e51b815260206004820152601960248201527f6e756d4f6643686f69636573206f7574206f662072616e676500000000000000604482015290519081900360640190fd5b600354604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906107b790600163ffffffff610d9016565b6003556107c26112f8565b606081810188815260808301888152336040808601828152815192861b602084810191909152958a901b6bffffffffffffffffffffffff191660348401528151808403602801815260489093018252825192860192909220865260018587018181526000898152828852838120895180825592519381018054965160ff1990971694151594909417610100600160a81b0319166101006001600160a01b03978816021790935595516002808401919091559451600383015560a0880151600490920191909155845291909352902054166108f3576001600160a01b0384166108c9578051600090815260026020526040902080546001600160a01b031916331790556108f3565b8051600090815260026020526040902080546001600160a01b0319166001600160a01b0386161790555b80516000908152600260209081526040918290205482518a8152339281019290925281830189905291516001600160a01b039092169184917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a35095945050505050565b600a81565b60008181526001602081905260409091200154819060ff166109c8576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6109d28233610df1565b5050565b60009081526001602052604090206002015490565b60009182526001602090815260408084209284526005909201905290205490565b6002602052600090815260409020546001600160a01b031681565b6000908152600160208190526040909120015460ff1690565b600081815260016020819052604082200154829060ff16610aa2576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610aab83610ef6565b91505b50919050565b60008481526001602052604081206002810154841115610b12576040805162461bcd60e51b8152602060048201526014602482015273766f7465206973206f7574206f662072616e676560601b604482015290519081900360640190fd5b600181015460408051634ac41bc760e11b81526001600160a01b038881166004830152602482018a90529151600093610100900490921691639588378e91604480820192602092909190829003018186803b158015610b7057600080fd5b505afa158015610b84573d6000803e3d6000fd5b505050506040513d6020811015610b9a57600080fd5b5051905080610bf0576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b83811015610c2f5760405162461bcd60e51b815260040180806020018281038252602a81526020018061132e602a913960400191505060405180910390fd5b8380610c385750805b6001600160a01b038716600090815260068401602052604090206001015415610c6557610c658888610df1565b6000868152600584016020526040902054610c8790829063ffffffff610d9016565b60008781526005850160205260409020556004830154610cae90829063ffffffff610d9016565b600484015560408051808201825287815260208082018481526001600160a01b03808c16600081815260068a0185528681209551865592516001909501949094558754825260028352908490205484518b8152928301869052845193949116928c927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92908290030190a4604080516001600160a01b0389163314158152905189917fe715e19c865cb724f3c292cc2fffc24d9cdd398e179fb366f008cc73028e1c52919081900360200190a2610d8488610ef6565b98975050505050505050565b600082820183811015610dea576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000828152600160205260409020610e076112c7565b506001600160a01b03821660009081526006820160209081526040808320815180830183528154808252600190920154818501819052918552600586019093529220549091610e5c919063ffffffff61118016565b815160009081526005840160209081526040909120919091558101516004830154610e8c9163ffffffff61118016565b60048301556001600160a01b03808416600081815260068501602090815260408083208381556001018390558654835260029091528082205490519293169187917f0ecab23267930de581498fac1af19a95c888ec6583921ee9c47473e16245d3c891a450505050565b600081815260016020819052604082200154829060ff16610f58576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600083815260016020818152604080842092830154815163b551c37360e01b81526004810189905291519394936101009091046001600160a01b03169263b551c3739260248082019391829003018186803b158015610fb657600080fd5b505afa158015610fca573d6000803e3d6000fd5b505050506040513d6020811015610fe057600080fd5b505160038301546000908152602081905260408120549192505b83600201548111611173576000818152600585016020526040902054606484048302101561116b5761102a6112f8565b506040805160c08101825285548152600186015460ff81161515602083015261010090046001600160a01b0316918101919091526002850154606082015260038501546080820152600485015460a0820152611085886111c2565b805160009081526002602090815260409182902054825185815291820187905282516001600160a01b03909116928b927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a380604001516001600160a01b0316639d4c162d89846040518363ffffffff1660e01b81526004018083815260200182815260200192505050602060405180830381600087803b15801561113257600080fd5b505af1158015611146573d6000803e3d6000fd5b505050506040513d602081101561115c57600080fd5b50519650610aae945050505050565b600101610ffa565b5060009695505050505050565b6000610dea83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611230565b6000818152600160205260408120905b816002015481116111f65760008181526005830160205260408120556001016111d2565b50506000908152600160208190526040822082815590810180546001600160a81b0319169055600281018290556003810182905560040155565b600081848411156112bf5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561128457818101518382015260200161126c565b50505050905090810190601f1680156112b15780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604051806040016040528060008152602001600081525090565b604080518082019091526000808252602082015290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe63616e6e6f7420766f74652077697468206d6f72652072657075746174696f6e20766f746572206861736d73672e73656e646572206973206e6f7420617574686f72697a656420746f20766f7465a265627a7a723158206572f95d95fae02b678a1c0c588c35c9e192d6ec5b9f00a4731bb3174e9d061d64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/AbsoluteVoteExecuteMock.json b/contracts/0.0.1-rc.53/AbsoluteVoteExecuteMock.json new file mode 100644 index 00000000..e9772c36 --- /dev/null +++ b/contracts/0.0.1-rc.53/AbsoluteVoteExecuteMock.json @@ -0,0 +1,568 @@ +{ + "contractName": "AbsoluteVoteExecuteMock", + "abi": [ + { + "inputs": [ + { + "internalType": "contract Reputation", + "name": "_reputation", + "type": "address" + }, + { + "internalType": "contract AbsoluteVote", + "name": "_absoluteVote", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_msg", + "type": "address" + } + ], + "name": "LogAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "_msg", + "type": "bool" + } + ], + "name": "LogBool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "_msg", + "type": "bytes" + } + ], + "name": "LogBytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "_msg", + "type": "bytes32" + } + ], + "name": "LogBytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "_msg", + "type": "int256" + } + ], + "name": "LogInt", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "_msg", + "type": "string" + } + ], + "name": "LogString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "_msg", + "type": "uint256" + } + ], + "name": "LogUint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "absoluteVote", + "outputs": [ + { + "internalType": "contract AbsoluteVote", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "burnReputationTest", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumbers", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputation", + "outputs": [ + { + "internalType": "contract Reputation", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "setProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610d93380380610d938339818101604052604081101561003357600080fd5b508051602090910151600061004f6001600160e01b036100d016565b600080546001600160a01b0319166001600160a01b038316908117825560405192935091600080516020610d73833981519152908290a350600180546001600160a01b038085166001600160a01b03199283161790925560028054928416929091169190911790556100c9816001600160e01b036100d416565b5050610206565b3390565b6100e56001600160e01b0361014b16565b610136576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b610148816001600160e01b0361017816565b50565b600080546001600160a01b03166101696001600160e01b036100d016565b6001600160a01b031614905090565b6001600160a01b0381166101bd5760405162461bcd60e51b8152600401808060200182810382526026815260200180610d4d6026913960400191505060405180910390fd5b600080546040516001600160a01b0380851693921691600080516020610d7383398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b610b38806102156000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80639d4c162d116100a2578063c52164c611610071578063c52164c6146102db578063d1c75650146102e3578063d29b5d2f14610300578063f2fde38b14610332578063f81f8bf6146103585761010b565b80639d4c162d1461022d578063abcc9cb914610250578063b551c37314610282578063bea75f281461029f5761010b565b8063715018a6116100de578063715018a6146101e75780638da5cb5b146101f15780638f32d59b146101f95780639588378e146102015761010b565b80630905c9f9146101105780634b6d4400146101665780636b8eb4031461018a57806370a53748146101b6575b600080fd5b610154600480360360a081101561012657600080fd5b508035906020810135906001600160a01b03604082013581169160608101358216916080909101351661038a565b60408051918252519081900360200190f35b61016e610438565b604080516001600160a01b039092168252519081900360200190f35b610154600480360360408110156101a057600080fd5b506001600160a01b038135169060200135610447565b6101d3600480360360208110156101cc57600080fd5b50356104c4565b604080519115158252519081900360200190f35b6101ef6104d8565b005b61016e610569565b6101d3610578565b6101546004803603604081101561021757600080fd5b506001600160a01b03813516906020013561059c565b6101d36004803603604081101561024357600080fd5b50803590602001356105fe565b6101d36004803603606081101561026657600080fd5b508035906001600160a01b036020820135169060400135610670565b6101546004803603602081101561029857600080fd5b50356106fd565b6101d3600480360360808110156102b557600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610789565b61016e610867565b610154600480360360208110156102f957600080fd5b5035610876565b6101d36004803603606081101561031657600080fd5b508035906001600160a01b036020820135169060400135610888565b6101ef6004803603602081101561034857600080fd5b50356001600160a01b0316610927565b6101d36004803603606081101561036e57600080fd5b508035906001600160a01b03602082013516906040013561097a565b60025460408051634439bdaf60e11b815260048101889052602481018790526001600160a01b03858116604483015284811660648301529151600093849316916388737b5e91608480830192602092919082900301818787803b1580156103f057600080fd5b505af1158015610404573d6000803e3d6000fd5b505050506040513d602081101561041a57600080fd5b50516000818152600360205260409020439055979650505050505050565b6002546001600160a01b031681565b604080516370a0823160e01b815230600482015290516000916001600160a01b038516916370a0823191602480820192602092909190829003018186803b15801561049157600080fd5b505afa1580156104a5573d6000803e3d6000fd5b505050506040513d60208110156104bb57600080fd5b50519392505050565b600090815260036020526040812043905590565b6104e0610578565b61051f576040805162461bcd60e51b81526020600482018190526024820152600080516020610ae4833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b031661058d610a19565b6001600160a01b031614905090565b600154600082815260036020908152604080832054815163277166bf60e11b81526001600160a01b0388811660048301526024820192909252915193941692634ee2cd7e92604480840193919291829003018186803b15801561049157600080fd5b6040805183815290516000917e9fd52f05c0ded31d6fb0ee580b923f85e99cf1a5a1da342f25e73c45829c83919081900360200190a16040805183815290517f1aa4309bfd99af8afa7454590e1bdaa5a9b3b63e5baa109ae9afa3ecd0c67f399181900360200190a150600192915050565b60015460408051632770a7eb60e21b81526001600160a01b0385811660048301526024820187905291516000939290921691639dc29fac9160448082019260209290919082900301818787803b1580156106c957600080fd5b505af11580156106dd573d6000803e3d6000fd5b505050506040513d60208110156106f357600080fd5b5051949350505050565b6001546000828152600360209081526040808320548151630981b24d60e41b81526004810191909152905192936001600160a01b03169263981b24d092602480840193919291829003018186803b15801561075757600080fd5b505afa15801561076b573d6000803e3d6000fd5b505050506040513d602081101561078157600080fd5b505192915050565b6000610793610578565b6107d2576040805162461bcd60e51b81526020600482018190526024820152600080516020610ae4833981519152604482015290519081900360640190fd5b846001600160a01b031663a9059cbb85856040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561083257600080fd5b505af1158015610846573d6000803e3d6000fd5b505050506040513d602081101561085c57600080fd5b505195945050505050565b6001546001600160a01b031681565b60036020526000908152604090205481565b6000610892610578565b6108d1576040805162461bcd60e51b81526020600482018190526024820152600080516020610ae4833981519152604482015290519081900360640190fd5b600154604080516340c10f1960e01b81526001600160a01b03868116600483015260248201889052915191909216916340c10f199160448083019260209291908290030181600087803b1580156106c957600080fd5b61092f610578565b61096e576040805162461bcd60e51b81526020600482018190526024820152600080516020610ae4833981519152604482015290519081900360640190fd5b61097781610a1d565b50565b6000610984610578565b6109c3576040805162461bcd60e51b81526020600482018190526024820152600080516020610ae4833981519152604482015290519081900360640190fd5b60015460408051632770a7eb60e21b81526001600160a01b0386811660048301526024820188905291519190921691639dc29fac9160448083019260209291908290030181600087803b1580156106c957600080fd5b3390565b6001600160a01b038116610a625760405162461bcd60e51b8152600401808060200182810382526026815260200180610abe6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820669d1e6384e13cc53ccc6baef4e57e90e4810951b0e78ec16d7daaff4e4f25a864736f6c634300051100324f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573738be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80639d4c162d116100a2578063c52164c611610071578063c52164c6146102db578063d1c75650146102e3578063d29b5d2f14610300578063f2fde38b14610332578063f81f8bf6146103585761010b565b80639d4c162d1461022d578063abcc9cb914610250578063b551c37314610282578063bea75f281461029f5761010b565b8063715018a6116100de578063715018a6146101e75780638da5cb5b146101f15780638f32d59b146101f95780639588378e146102015761010b565b80630905c9f9146101105780634b6d4400146101665780636b8eb4031461018a57806370a53748146101b6575b600080fd5b610154600480360360a081101561012657600080fd5b508035906020810135906001600160a01b03604082013581169160608101358216916080909101351661038a565b60408051918252519081900360200190f35b61016e610438565b604080516001600160a01b039092168252519081900360200190f35b610154600480360360408110156101a057600080fd5b506001600160a01b038135169060200135610447565b6101d3600480360360208110156101cc57600080fd5b50356104c4565b604080519115158252519081900360200190f35b6101ef6104d8565b005b61016e610569565b6101d3610578565b6101546004803603604081101561021757600080fd5b506001600160a01b03813516906020013561059c565b6101d36004803603604081101561024357600080fd5b50803590602001356105fe565b6101d36004803603606081101561026657600080fd5b508035906001600160a01b036020820135169060400135610670565b6101546004803603602081101561029857600080fd5b50356106fd565b6101d3600480360360808110156102b557600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610789565b61016e610867565b610154600480360360208110156102f957600080fd5b5035610876565b6101d36004803603606081101561031657600080fd5b508035906001600160a01b036020820135169060400135610888565b6101ef6004803603602081101561034857600080fd5b50356001600160a01b0316610927565b6101d36004803603606081101561036e57600080fd5b508035906001600160a01b03602082013516906040013561097a565b60025460408051634439bdaf60e11b815260048101889052602481018790526001600160a01b03858116604483015284811660648301529151600093849316916388737b5e91608480830192602092919082900301818787803b1580156103f057600080fd5b505af1158015610404573d6000803e3d6000fd5b505050506040513d602081101561041a57600080fd5b50516000818152600360205260409020439055979650505050505050565b6002546001600160a01b031681565b604080516370a0823160e01b815230600482015290516000916001600160a01b038516916370a0823191602480820192602092909190829003018186803b15801561049157600080fd5b505afa1580156104a5573d6000803e3d6000fd5b505050506040513d60208110156104bb57600080fd5b50519392505050565b600090815260036020526040812043905590565b6104e0610578565b61051f576040805162461bcd60e51b81526020600482018190526024820152600080516020610ae4833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b031661058d610a19565b6001600160a01b031614905090565b600154600082815260036020908152604080832054815163277166bf60e11b81526001600160a01b0388811660048301526024820192909252915193941692634ee2cd7e92604480840193919291829003018186803b15801561049157600080fd5b6040805183815290516000917e9fd52f05c0ded31d6fb0ee580b923f85e99cf1a5a1da342f25e73c45829c83919081900360200190a16040805183815290517f1aa4309bfd99af8afa7454590e1bdaa5a9b3b63e5baa109ae9afa3ecd0c67f399181900360200190a150600192915050565b60015460408051632770a7eb60e21b81526001600160a01b0385811660048301526024820187905291516000939290921691639dc29fac9160448082019260209290919082900301818787803b1580156106c957600080fd5b505af11580156106dd573d6000803e3d6000fd5b505050506040513d60208110156106f357600080fd5b5051949350505050565b6001546000828152600360209081526040808320548151630981b24d60e41b81526004810191909152905192936001600160a01b03169263981b24d092602480840193919291829003018186803b15801561075757600080fd5b505afa15801561076b573d6000803e3d6000fd5b505050506040513d602081101561078157600080fd5b505192915050565b6000610793610578565b6107d2576040805162461bcd60e51b81526020600482018190526024820152600080516020610ae4833981519152604482015290519081900360640190fd5b846001600160a01b031663a9059cbb85856040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561083257600080fd5b505af1158015610846573d6000803e3d6000fd5b505050506040513d602081101561085c57600080fd5b505195945050505050565b6001546001600160a01b031681565b60036020526000908152604090205481565b6000610892610578565b6108d1576040805162461bcd60e51b81526020600482018190526024820152600080516020610ae4833981519152604482015290519081900360640190fd5b600154604080516340c10f1960e01b81526001600160a01b03868116600483015260248201889052915191909216916340c10f199160448083019260209291908290030181600087803b1580156106c957600080fd5b61092f610578565b61096e576040805162461bcd60e51b81526020600482018190526024820152600080516020610ae4833981519152604482015290519081900360640190fd5b61097781610a1d565b50565b6000610984610578565b6109c3576040805162461bcd60e51b81526020600482018190526024820152600080516020610ae4833981519152604482015290519081900360640190fd5b60015460408051632770a7eb60e21b81526001600160a01b0386811660048301526024820188905291519190921691639dc29fac9160448083019260209291908290030181600087803b1580156106c957600080fd5b3390565b6001600160a01b038116610a625760405162461bcd60e51b8152600401808060200182810382526026815260200180610abe6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820669d1e6384e13cc53ccc6baef4e57e90e4810951b0e78ec16d7daaff4e4f25a864736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ActionMock.json b/contracts/0.0.1-rc.53/ActionMock.json new file mode 100644 index 00000000..2a3fed9c --- /dev/null +++ b/contracts/0.0.1-rc.53/ActionMock.json @@ -0,0 +1,149 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ActionMock", + "sourceName": "contracts/test/ActionMock.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ReceiveEther", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "WithoutReturnValue", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "activationTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_activationTime", + "type": "uint256" + } + ], + "name": "setActivationTime", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_a", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_b", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_c", + "type": "bytes32" + } + ], + "name": "test", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "test2", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "test3", + "outputs": [], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "withoutReturnValue", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061037d806100206000396000f3fe6080604052600436106100555760003560e01c80630a8e8e011461005a5780630db12fad146100715780637c5486a2146100a4578063b11bead4146100ce578063da4493f614610108578063f3e8dcd01461012f575b600080fd5b34801561006657600080fd5b5061006f610161565b005b34801561007d57600080fd5b5061006f6004803603602081101561009457600080fd5b50356001600160a01b03166101a3565b3480156100b057600080fd5b5061006f600480360360208110156100c757600080fd5b5035610229565b6100f4600480360360208110156100e457600080fd5b50356001600160a01b031661022e565b604080519115158252519081900360200190f35b34801561011457600080fd5b5061011d61027f565b60408051918252519081900360200190f35b61011d6004803603606081101561014557600080fd5b508035906001600160a01b036020820135169060400135610285565b60005442116101a15760405162461bcd60e51b815260040180806020018281038252602e8152602001806102fa602e913960400191505060405180910390fd5b565b336001600160a01b038216146101ea5760405162461bcd60e51b81526004018080602001828103825260218152602001806103286021913960400191505060405180910390fd5b604080516001600160a01b038316815290517f296b3ab69f08b831e3eba781baef82f44885a5d62be6e22903cc9416d47812779181900360200190a150565b600055565b6000336001600160a01b038316146102775760405162461bcd60e51b81526004018080602001828103825260218152602001806103286021913960400191505060405180910390fd5b506001919050565b60005481565b60008360071461029457600080fd5b6001600160a01b03831630146102a957600080fd5b61048d60f21b82146102ba57600080fd5b60408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a25050506002029056fe6e6f772073686f756c642062652067726561746572207468616e207468652061637469766174696f6e2074696d657468652063616c6c6572206d75737420626520657175616c20746f205f61646472a265627a7a72315820b57a2d8778a6c27d0e3e10717b19c897835e5e8564a5653f3c674ea78f6c424764736f6c63430005110032", + "deployedBytecode": "0x6080604052600436106100555760003560e01c80630a8e8e011461005a5780630db12fad146100715780637c5486a2146100a4578063b11bead4146100ce578063da4493f614610108578063f3e8dcd01461012f575b600080fd5b34801561006657600080fd5b5061006f610161565b005b34801561007d57600080fd5b5061006f6004803603602081101561009457600080fd5b50356001600160a01b03166101a3565b3480156100b057600080fd5b5061006f600480360360208110156100c757600080fd5b5035610229565b6100f4600480360360208110156100e457600080fd5b50356001600160a01b031661022e565b604080519115158252519081900360200190f35b34801561011457600080fd5b5061011d61027f565b60408051918252519081900360200190f35b61011d6004803603606081101561014557600080fd5b508035906001600160a01b036020820135169060400135610285565b60005442116101a15760405162461bcd60e51b815260040180806020018281038252602e8152602001806102fa602e913960400191505060405180910390fd5b565b336001600160a01b038216146101ea5760405162461bcd60e51b81526004018080602001828103825260218152602001806103286021913960400191505060405180910390fd5b604080516001600160a01b038316815290517f296b3ab69f08b831e3eba781baef82f44885a5d62be6e22903cc9416d47812779181900360200190a150565b600055565b6000336001600160a01b038316146102775760405162461bcd60e51b81526004018080602001828103825260218152602001806103286021913960400191505060405180910390fd5b506001919050565b60005481565b60008360071461029457600080fd5b6001600160a01b03831630146102a957600080fd5b61048d60f21b82146102ba57600080fd5b60408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a25050506002029056fe6e6f772073686f756c642062652067726561746572207468616e207468652061637469766174696f6e2074696d657468652063616c6c6572206d75737420626520657175616c20746f205f61646472a265627a7a72315820b57a2d8778a6c27d0e3e10717b19c897835e5e8564a5653f3c674ea78f6c424764736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Address.json b/contracts/0.0.1-rc.53/Address.json new file mode 100644 index 00000000..de2d6cf9 --- /dev/null +++ b/contracts/0.0.1-rc.53/Address.json @@ -0,0 +1,8 @@ +{ + "contractName": "Address", + "abi": [], + "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158201b42d087797a5f29e44263558443c6db0c6f723f8df501439b703b154778e6a364736f6c63430005110032", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158201b42d087797a5f29e44263558443c6db0c6f723f8df501439b703b154778e6a364736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Agreement.json b/contracts/0.0.1-rc.53/Agreement.json new file mode 100644 index 00000000..4beba4fd --- /dev/null +++ b/contracts/0.0.1-rc.53/Agreement.json @@ -0,0 +1,26 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Agreement", + "sourceName": "contracts/schemes/Agreement.sol", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x6080604052348015600f57600080fd5b5060808061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063696da92114602d575b600080fd5b60336045565b60408051918252519081900360200190f35b6000549056fea265627a7a72315820d5cf7ccff821c76849c4f65414f718196e71126e148c92692c5f501fe660e7d764736f6c63430005110032", + "deployedBytecode": "0x6080604052348015600f57600080fd5b506004361060285760003560e01c8063696da92114602d575b600080fd5b60336045565b60408051918252519081900360200190f35b6000549056fea265627a7a72315820d5cf7ccff821c76849c4f65414f718196e71126e148c92692c5f501fe660e7d764736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/AgreementMock.json b/contracts/0.0.1-rc.53/AgreementMock.json new file mode 100644 index 00000000..5060814c --- /dev/null +++ b/contracts/0.0.1-rc.53/AgreementMock.json @@ -0,0 +1,62 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "AgreementMock", + "sourceName": "contracts/test/AgreementMock.sol", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "setAgreementHashTest", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "test", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506101c5806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063696da9211461004657806398d3642e14610060578063993723211461007f575b600080fd5b61004e6100b0565b60408051918252519081900360200190f35b61007d6004803603602081101561007657600080fd5b50356100b6565b005b61009c6004803603602081101561009557600080fd5b50356100c2565b604080519115158252519081900360200190f35b60005490565b6100bf8161010e565b50565b60008160005481146101055760405162461bcd60e51b81526004018080602001828103825260288152602001806101696028913960400191505060405180910390fd5b50600192915050565b60005415610163576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b60005556fe53656e646572206d7573742073656e64207468652072696768742061677265656d656e7448617368a265627a7a72315820c47e34dba55eb03b69a16d3e11bad9092d54849536988d92254e5101b679855164736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063696da9211461004657806398d3642e14610060578063993723211461007f575b600080fd5b61004e6100b0565b60408051918252519081900360200190f35b61007d6004803603602081101561007657600080fd5b50356100b6565b005b61009c6004803603602081101561009557600080fd5b50356100c2565b604080519115158252519081900360200190f35b60005490565b6100bf8161010e565b50565b60008160005481146101055760405162461bcd60e51b81526004018080602001828103825260288152602001806101696028913960400191505060405180910390fd5b50600192915050565b60005415610163576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b60005556fe53656e646572206d7573742073656e64207468652072696768742061677265656d656e7448617368a265627a7a72315820c47e34dba55eb03b69a16d3e11bad9092d54849536988d92254e5101b679855164736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Auction4Reputation.json b/contracts/0.0.1-rc.53/Auction4Reputation.json new file mode 100644 index 00000000..08b683dc --- /dev/null +++ b/contracts/0.0.1-rc.53/Auction4Reputation.json @@ -0,0 +1,394 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Auction4Reputation", + "sourceName": "contracts/schemes/Auction4Reputation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_bidder", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_auctionId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Bid", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "_auctionId", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "auctionPeriod", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "auctionReputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "auctions", + "outputs": [ + { + "internalType": "uint256", + "name": "totalBid", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "auctionsEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "auctionsStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_auctionId", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "bid", + "outputs": [ + { + "internalType": "uint256", + "name": "auctionId", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_bidder", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_auctionId", + "type": "uint256" + } + ], + "name": "getBid", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_auctionReputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_auctionsStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_auctionPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_numberOfAuctions", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + }, + { + "internalType": "contract IERC20", + "name": "_token", + "type": "address" + }, + { + "internalType": "address", + "name": "_wallet", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "numberOfAuctions", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_auctionId", + "type": "uint256" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "token", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "transferToWallet", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "wallet", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061124d806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063521eb273116100a2578063696da92111610071578063696da9211461021e5780638127e801146102265780639abc03d214610284578063afe0e33c1461028c578063fc0c546a146102945761010b565b8063521eb273146101cd57806356e49287146101f1578063571a26a0146101f95780635aef7de6146102165761010b565b80631e9a6950116100de5780631e9a6950146101875780633d1678f4146101b35780634870b81d146101bb57806350d9d472146101c55761010b565b80630b722bbb146101105780630cccfc581461014b57806311c4dbf41461015357806316ab2b031461015b575b600080fd5b6101396004803603606081101561012657600080fd5b508035906020810135906040013561029c565b60408051918252519081900360200190f35b6101396104c8565b6101396104ce565b6101396004803603604081101561017157600080fd5b506001600160a01b0381351690602001356104d4565b6101396004803603604081101561019d57600080fd5b506001600160a01b038135169060200135610500565b6101396107bf565b6101c36107c5565b005b6101396108b3565b6101d56108b9565b604080516001600160a01b039092168252519081900360200190f35b6101396108c8565b6101396004803603602081101561020f57600080fd5b50356108ce565b6101d56108e0565b6101396108ef565b6101c3600480360361012081101561023d57600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c082013581169160e08101359091169061010001356108f5565b610139610b0c565b610139610b12565b6101d5610b18565b60008160005481146102df5760405162461bcd60e51b81526004018080602001828103825260288152602001806111d06028913960400191505060405180910390fd5b60008511610334576040805162461bcd60e51b815260206004820152601c60248201527f62696464696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b60045442106103745760405162461bcd60e51b81526004018080602001828103825260338152602001806110fd6033913960400191505060405180910390fd5b6005544210156103b55760405162461bcd60e51b815260040180806020018281038252603681526020018061119a6036913960400191505060405180910390fd5b600a546103d3906001600160a01b031633308863ffffffff610b2716565b6008546005544203816103e257fe5b049150838214610431576040805162461bcd60e51b815260206004820152601560248201527461756374696f6e206973206e6f742061637469766560581b604482015290519081900360640190fd5b60008281526001602052604090208054610451908763ffffffff610caa16565b8155336000908152600182016020526040902054610475908763ffffffff610caa16565b336000818152600184016020908152604091829020939093558051898152905186937f19421268847f42dd61705778018ddfc43bcdce8517e7a630acb12f122c709481928290030190a350509392505050565b60085481565b60075481565b60008181526001602081815260408084206001600160a01b038716855290920190529020545b92915050565b60006009544211610551576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b60008281526001602081815260408084206001600160a01b038816855292830190915290912054806105ca576040805162461bcd60e51b815260206004820152601c60248201527f62696464696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b6001600160a01b038516600090815260018301602052604081208190556007546105fb90839063ffffffff610d0b16565b835490915061061190829063ffffffff610d6416565b600354909450610627908563ffffffff610da616565b60035560025460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561066f57600080fd5b505afa158015610683573d6000803e3d6000fd5b505050506040513d602081101561069957600080fd5b50516002546040805163757cca5960e11b8152600481018890526001600160a01b038a8116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b1580156106f957600080fd5b505af115801561070d573d6000803e3d6000fd5b505050506040513d602081101561072357600080fd5b5051610776576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805185815290516001600160a01b0388169187917f1069ba7d3dd3d969eada9a014b1e1a8e2ab1ef7f38989db8ce98e698ac844f659181900360200190a350505092915050565b60095481565b6004544211610813576040805162461bcd60e51b81526020600482015260156024820152746e6f77203e2061756374696f6e73456e6454696d6560581b604482015290519081900360640190fd5b600a54604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561085e57600080fd5b505afa158015610872573d6000803e3d6000fd5b505050506040513d602081101561088857600080fd5b5051600b54600a549192506108b0916001600160a01b0390811691168363ffffffff610de816565b50565b60065481565b600b546001600160a01b031681565b60045481565b60016020526000908152604090205481565b6002546001600160a01b031681565b60005490565b6002546001600160a01b031615610953576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0389166109a6576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600085116109e55760405162461bcd60e51b81526004018080602001828103825260218152602001806111f86021913960400191505060405180910390fd5b600f8611610a3a576040805162461bcd60e51b815260206004820152601c60248201527f61756374696f6e506572696f642073686f756c64206265203e20313500000000604482015290519081900360640190fd5b6008869055610a4f868663ffffffff610d0b16565b87016004819055841015610a945760405162461bcd60e51b81526004018080602001828103825260248152602001806111306024913960400191505060405180910390fd5b600a80546001600160a01b038086166001600160a01b031992831617909255600280548c841690831617905560058990556006879055600b8054928516929091169190911790556007889055610af0888663ffffffff610d0b16565b6003556009849055610b0181610f6a565b505050505050505050565b60055481565b60035481565b600a546001600160a01b031681565b610b39846001600160a01b0316610fc4565b610b4257600080fd5b60006060856001600160a01b0316604051806060016040528060258152602001611154602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b60208310610bef5780518252601f199092019160209182019101610bd0565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610c51576040519150601f19603f3d011682016040523d82523d6000602084013e610c56565b606091505b509150915081610c6557600080fd5b80511580610c99575080516020148015610c99575080601f81518110610c8757fe5b01602001516001600160f81b03191615155b610ca257600080fd5b505050505050565b600082820183811015610d04576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600082610d1a575060006104fa565b82820282848281610d2757fe5b0414610d045760405162461bcd60e51b81526004018080602001828103825260218152602001806111796021913960400191505060405180910390fd5b6000610d0483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611000565b6000610d0483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110a2565b610dfa836001600160a01b0316610fc4565b610e0357600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b1781529251815160009460609489169392918291908083835b60208310610eb05780518252601f199092019160209182019101610e91565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f12576040519150601f19603f3d011682016040523d82523d6000602084013e610f17565b606091505b509150915081610f2657600080fd5b80511580610f5a575080516020148015610f5a575080601f81518110610f4857fe5b01602001516001600160f81b03191615155b610f6357600080fd5b5050505050565b60005415610fbf576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708115801590610ff85750808214155b949350505050565b6000818361108c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611051578181015183820152602001611039565b50505050905090810190601f16801561107e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161109857fe5b0495945050505050565b600081848411156110f45760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611051578181015183820152602001611039565b50505090039056fe62696464696e672073686f756c642062652077697468696e2074686520616c6c6f7765642062696464696e6720706572696f645f72656465656d456e61626c6554696d65203e3d2061756374696f6e73456e6454696d657472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7762696464696e6720697320656e61626c65206f6e6c792061667465722062696464696e672061756374696f6e73537461727454696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686e756d626572206f662061756374696f6e732063616e6e6f74206265207a65726fa265627a7a72315820f1eeac1dc31e4aa3502d0c9d78a979bf7143b662060f5ebdee6e1ba5dfa72a3964736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c8063521eb273116100a2578063696da92111610071578063696da9211461021e5780638127e801146102265780639abc03d214610284578063afe0e33c1461028c578063fc0c546a146102945761010b565b8063521eb273146101cd57806356e49287146101f1578063571a26a0146101f95780635aef7de6146102165761010b565b80631e9a6950116100de5780631e9a6950146101875780633d1678f4146101b35780634870b81d146101bb57806350d9d472146101c55761010b565b80630b722bbb146101105780630cccfc581461014b57806311c4dbf41461015357806316ab2b031461015b575b600080fd5b6101396004803603606081101561012657600080fd5b508035906020810135906040013561029c565b60408051918252519081900360200190f35b6101396104c8565b6101396104ce565b6101396004803603604081101561017157600080fd5b506001600160a01b0381351690602001356104d4565b6101396004803603604081101561019d57600080fd5b506001600160a01b038135169060200135610500565b6101396107bf565b6101c36107c5565b005b6101396108b3565b6101d56108b9565b604080516001600160a01b039092168252519081900360200190f35b6101396108c8565b6101396004803603602081101561020f57600080fd5b50356108ce565b6101d56108e0565b6101396108ef565b6101c3600480360361012081101561023d57600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c082013581169160e08101359091169061010001356108f5565b610139610b0c565b610139610b12565b6101d5610b18565b60008160005481146102df5760405162461bcd60e51b81526004018080602001828103825260288152602001806111d06028913960400191505060405180910390fd5b60008511610334576040805162461bcd60e51b815260206004820152601c60248201527f62696464696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b60045442106103745760405162461bcd60e51b81526004018080602001828103825260338152602001806110fd6033913960400191505060405180910390fd5b6005544210156103b55760405162461bcd60e51b815260040180806020018281038252603681526020018061119a6036913960400191505060405180910390fd5b600a546103d3906001600160a01b031633308863ffffffff610b2716565b6008546005544203816103e257fe5b049150838214610431576040805162461bcd60e51b815260206004820152601560248201527461756374696f6e206973206e6f742061637469766560581b604482015290519081900360640190fd5b60008281526001602052604090208054610451908763ffffffff610caa16565b8155336000908152600182016020526040902054610475908763ffffffff610caa16565b336000818152600184016020908152604091829020939093558051898152905186937f19421268847f42dd61705778018ddfc43bcdce8517e7a630acb12f122c709481928290030190a350509392505050565b60085481565b60075481565b60008181526001602081815260408084206001600160a01b038716855290920190529020545b92915050565b60006009544211610551576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b60008281526001602081815260408084206001600160a01b038816855292830190915290912054806105ca576040805162461bcd60e51b815260206004820152601c60248201527f62696464696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b6001600160a01b038516600090815260018301602052604081208190556007546105fb90839063ffffffff610d0b16565b835490915061061190829063ffffffff610d6416565b600354909450610627908563ffffffff610da616565b60035560025460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561066f57600080fd5b505afa158015610683573d6000803e3d6000fd5b505050506040513d602081101561069957600080fd5b50516002546040805163757cca5960e11b8152600481018890526001600160a01b038a8116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b1580156106f957600080fd5b505af115801561070d573d6000803e3d6000fd5b505050506040513d602081101561072357600080fd5b5051610776576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805185815290516001600160a01b0388169187917f1069ba7d3dd3d969eada9a014b1e1a8e2ab1ef7f38989db8ce98e698ac844f659181900360200190a350505092915050565b60095481565b6004544211610813576040805162461bcd60e51b81526020600482015260156024820152746e6f77203e2061756374696f6e73456e6454696d6560581b604482015290519081900360640190fd5b600a54604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561085e57600080fd5b505afa158015610872573d6000803e3d6000fd5b505050506040513d602081101561088857600080fd5b5051600b54600a549192506108b0916001600160a01b0390811691168363ffffffff610de816565b50565b60065481565b600b546001600160a01b031681565b60045481565b60016020526000908152604090205481565b6002546001600160a01b031681565b60005490565b6002546001600160a01b031615610953576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0389166109a6576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600085116109e55760405162461bcd60e51b81526004018080602001828103825260218152602001806111f86021913960400191505060405180910390fd5b600f8611610a3a576040805162461bcd60e51b815260206004820152601c60248201527f61756374696f6e506572696f642073686f756c64206265203e20313500000000604482015290519081900360640190fd5b6008869055610a4f868663ffffffff610d0b16565b87016004819055841015610a945760405162461bcd60e51b81526004018080602001828103825260248152602001806111306024913960400191505060405180910390fd5b600a80546001600160a01b038086166001600160a01b031992831617909255600280548c841690831617905560058990556006879055600b8054928516929091169190911790556007889055610af0888663ffffffff610d0b16565b6003556009849055610b0181610f6a565b505050505050505050565b60055481565b60035481565b600a546001600160a01b031681565b610b39846001600160a01b0316610fc4565b610b4257600080fd5b60006060856001600160a01b0316604051806060016040528060258152602001611154602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b60208310610bef5780518252601f199092019160209182019101610bd0565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610c51576040519150601f19603f3d011682016040523d82523d6000602084013e610c56565b606091505b509150915081610c6557600080fd5b80511580610c99575080516020148015610c99575080601f81518110610c8757fe5b01602001516001600160f81b03191615155b610ca257600080fd5b505050505050565b600082820183811015610d04576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600082610d1a575060006104fa565b82820282848281610d2757fe5b0414610d045760405162461bcd60e51b81526004018080602001828103825260218152602001806111796021913960400191505060405180910390fd5b6000610d0483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611000565b6000610d0483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110a2565b610dfa836001600160a01b0316610fc4565b610e0357600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b1781529251815160009460609489169392918291908083835b60208310610eb05780518252601f199092019160209182019101610e91565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610f12576040519150601f19603f3d011682016040523d82523d6000602084013e610f17565b606091505b509150915081610f2657600080fd5b80511580610f5a575080516020148015610f5a575080601f81518110610f4857fe5b01602001516001600160f81b03191615155b610f6357600080fd5b5050505050565b60005415610fbf576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708115801590610ff85750808214155b949350505050565b6000818361108c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611051578181015183820152602001611039565b50505050905090810190601f16801561107e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161109857fe5b0495945050505050565b600081848411156110f45760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611051578181015183820152602001611039565b50505090039056fe62696464696e672073686f756c642062652077697468696e2074686520616c6c6f7765642062696464696e6720706572696f645f72656465656d456e61626c6554696d65203e3d2061756374696f6e73456e6454696d657472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7762696464696e6720697320656e61626c65206f6e6c792061667465722062696464696e672061756374696f6e73537461727454696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686e756d626572206f662061756374696f6e732063616e6e6f74206265207a65726fa265627a7a72315820f1eeac1dc31e4aa3502d0c9d78a979bf7143b662060f5ebdee6e1ba5dfa72a3964736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Avatar.json b/contracts/0.0.1-rc.53/Avatar.json new file mode 100644 index 00000000..6713be9b --- /dev/null +++ b/contracts/0.0.1-rc.53/Avatar.json @@ -0,0 +1,500 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Avatar", + "sourceName": "contracts/controller/Avatar.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "_orgName", + "type": "string" + }, + { + "internalType": "contract DAOToken", + "name": "_nativeToken", + "type": "address" + }, + { + "internalType": "contract Reputation", + "name": "_nativeReputation", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_externalToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ExternalTokenApproval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_externalToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ExternalTokenTransfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_externalToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ExternalTokenTransferFrom", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_data", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bool", + "name": "_success", + "type": "bool" + } + ], + "name": "GenericCall", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "_metaData", + "type": "string" + } + ], + "name": "MetaData", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ReceiveEther", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "_amountInWei", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + } + ], + "name": "SendEther", + "type": "event" + }, + { + "payable": true, + "stateMutability": "payable", + "type": "fallback" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "externalTokenApproval", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "externalTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "externalTokenTransferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "genericCall", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "returnValue", + "type": "bytes" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "string", + "name": "_metaData", + "type": "string" + } + ], + "name": "metaData", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "nativeReputation", + "outputs": [ + { + "internalType": "contract Reputation", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "nativeToken", + "outputs": [ + { + "internalType": "contract DAOToken", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "orgName", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amountInWei", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "_to", + "type": "address" + } + ], + "name": "sendEther", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040523480156200001157600080fd5b50604051620014d6380380620014d6833981810160405260608110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b506040908152602082015191015190925090506200010c6001600160e01b036200019d16565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3825162000169906001906020860190620001a2565b50600280546001600160a01b039384166001600160a01b031991821617909155600380549290931691161790555062000244565b335b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001e557805160ff191683800117855562000215565b8280016001018555821562000215579182015b8281111562000215578251825591602001919060010190620001f8565b506200022392915062000227565b5090565b6200019f91905b808211156200022357600081556001016200022e565b61128280620002546000396000f3fe6080604052600436106100c25760003560e01c80638f32d59b1161007f578063cb16d4a211610059578063cb16d4a214610491578063dab0efff146104ca578063e1758bd81461050d578063f2fde38b14610522576100c2565b80638f32d59b146103f0578063ab751f7114610405578063b756d5a214610448576100c2565b80631386dc2d146100fa5780632bf1645814610184578063715018a6146102cc578063890ac46c146102e357806389ae1c90146103aa5780638da5cb5b146103db575b60408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b34801561010657600080fd5b5061010f610555565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610149578181015183820152602001610131565b50505050905090810190601f1680156101765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019057600080fd5b50610249600480360360608110156101a757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156101d257600080fd5b8201836020820111156101e457600080fd5b8035906020019184600183028401116401000000008311171561020657600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955050913592506105e2915050565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610290578181015183820152602001610278565b50505050905090810190601f1680156102bd5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156102d857600080fd5b506102e1610797565b005b3480156102ef57600080fd5b506103966004803603602081101561030657600080fd5b81019060208101813564010000000081111561032157600080fd5b82018360208201111561033357600080fd5b8035906020019184600183028401116401000000008311171561035557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610828945050505050565b604080519115158252519081900360200190f35b3480156103b657600080fd5b506103bf610912565b604080516001600160a01b039092168252519081900360200190f35b3480156103e757600080fd5b506103bf610921565b3480156103fc57600080fd5b50610396610930565b34801561041157600080fd5b506103966004803603606081101561042857600080fd5b506001600160a01b03813581169160208101359091169060400135610954565b34801561045457600080fd5b506103966004803603608081101561046b57600080fd5b506001600160a01b03813581169160208101358216916040820135169060600135610a07565b34801561049d57600080fd5b50610396600480360360408110156104b457600080fd5b50803590602001356001600160a01b0316610ac5565b3480156104d657600080fd5b50610396600480360360608110156104ed57600080fd5b506001600160a01b03813581169160208101359091169060400135610b8d565b34801561051957600080fd5b506103bf610c45565b34801561052e57600080fd5b506102e16004803603602081101561054557600080fd5b50356001600160a01b0316610c54565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105da5780601f106105af576101008083540402835291602001916105da565b820191906000526020600020905b8154815290600101906020018083116105bd57829003601f168201915b505050505081565b600060606105ee610930565b61062d576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b846001600160a01b031683856040518082805190602001908083835b602083106106685780518252601f199092019160209182019101610649565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146106ca576040519150601f19603f3d011682016040523d82523d6000602084013e6106cf565b606091505b508092508193505050846001600160a01b03167f534b52c783549f909f9e743120524d0b7154058e4a54cdc895c2c0b587a1c7e0858585604051808060200184815260200183151515158152602001828103825285818151815260200191508051906020019080838360005b8381101561075357818101518382015260200161073b565b50505050905090810190601f1680156107805780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a2935093915050565b61079f610930565b6107de576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610832610930565b610871576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b7ff9deba4938ba20070ec5a45ddf59bccba49cf83124215228ec1232182ef0ba2b826040518080602001828103825283818151815260200191508051906020019080838360005b838110156108d05781810151838201526020016108b8565b50505050905090810190601f1680156108fd5780820380516001836020036101000a031916815260200191505b509250505060405180910390a1506001919050565b6003546001600160a01b031681565b6000546001600160a01b031690565b600080546001600160a01b0316610945610ca7565b6001600160a01b031614905090565b600061095e610930565b61099d576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b6109b76001600160a01b038516848463ffffffff610cab16565b604080516001600160a01b038581168252602082018590528251908716927f3a48a4d6253b30fd10e57a347c1f9bcb0604946481fae0b2fdad6e74f2a9cbb3928290030190a25060019392505050565b6000610a11610930565b610a50576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610a6b6001600160a01b03861685858563ffffffff610ebc16565b604080516001600160a01b03868116825285811660208301528183018590529151918716917f179c15de44aa7ab84896301974328eb40b5b40fe01cfe0fee2924ea712c3e8439181900360600190a2506001949350505050565b6000610acf610930565b610b0e576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b6040516001600160a01b0383169084156108fc029085906000818181858888f19350505050158015610b44573d6000803e3d6000fd5b506040805184815290516001600160a01b038416917f22fca66666089f39bc900dd6605b489df4aae6260cc8ea8257594cfb8c84926c919081900360200190a250600192915050565b6000610b97610930565b610bd6576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610bf06001600160a01b038516848463ffffffff61103f16565b826001600160a01b0316846001600160a01b03167f49dc2a60d2599a7b6932d78fb694c30dfc596fe4e0282b5d0fd184b52472c04d846040518082815260200191505060405180910390a35060019392505050565b6002546001600160a01b031681565b610c5c610930565b610c9b576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610ca481611106565b50565b3390565b610cbd836001600160a01b03166111a6565b610cc657600080fd5b801580610d4c575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b158015610d1e57600080fd5b505afa158015610d32573d6000803e3d6000fd5b505050506040513d6020811015610d4857600080fd5b5051155b610d5557600080fd5b604080518082018252601881527f617070726f766528616464726573732c75696e7432353629000000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663095ea7b360e01b1781529251815160009460609489169392918291908083835b60208310610e025780518252601f199092019160209182019101610de3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610e64576040519150601f19603f3d011682016040523d82523d6000602084013e610e69565b606091505b509150915081610e7857600080fd5b80511580610eac575080516020148015610eac575080601f81518110610e9a57fe5b01602001516001600160f81b03191615155b610eb557600080fd5b5050505050565b610ece846001600160a01b03166111a6565b610ed757600080fd5b60006060856001600160a01b03166040518060600160405280602581526020016111e3602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b60208310610f845780518252601f199092019160209182019101610f65565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610fe6576040519150601f19603f3d011682016040523d82523d6000602084013e610feb565b606091505b509150915081610ffa57600080fd5b8051158061102e57508051602014801561102e575080601f8151811061101c57fe5b01602001516001600160f81b03191615155b61103757600080fd5b505050505050565b611051836001600160a01b03166111a6565b61105a57600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b17815292518151600094606094891693929182919080838360208310610e025780518252601f199092019160209182019101610de3565b6001600160a01b03811661114b5760405162461bcd60e51b81526004018080602001828103825260268152602001806112086026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906111da5750808214155b94935050505056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536294f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a723158204d57626914093b7f63b1c1c4d5f5e6e17e0f0c54f4162371009859bcf2841de664736f6c63430005110032", + "deployedBytecode": "0x6080604052600436106100c25760003560e01c80638f32d59b1161007f578063cb16d4a211610059578063cb16d4a214610491578063dab0efff146104ca578063e1758bd81461050d578063f2fde38b14610522576100c2565b80638f32d59b146103f0578063ab751f7114610405578063b756d5a214610448576100c2565b80631386dc2d146100fa5780632bf1645814610184578063715018a6146102cc578063890ac46c146102e357806389ae1c90146103aa5780638da5cb5b146103db575b60408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b34801561010657600080fd5b5061010f610555565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610149578181015183820152602001610131565b50505050905090810190601f1680156101765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019057600080fd5b50610249600480360360608110156101a757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156101d257600080fd5b8201836020820111156101e457600080fd5b8035906020019184600183028401116401000000008311171561020657600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955050913592506105e2915050565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610290578181015183820152602001610278565b50505050905090810190601f1680156102bd5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156102d857600080fd5b506102e1610797565b005b3480156102ef57600080fd5b506103966004803603602081101561030657600080fd5b81019060208101813564010000000081111561032157600080fd5b82018360208201111561033357600080fd5b8035906020019184600183028401116401000000008311171561035557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610828945050505050565b604080519115158252519081900360200190f35b3480156103b657600080fd5b506103bf610912565b604080516001600160a01b039092168252519081900360200190f35b3480156103e757600080fd5b506103bf610921565b3480156103fc57600080fd5b50610396610930565b34801561041157600080fd5b506103966004803603606081101561042857600080fd5b506001600160a01b03813581169160208101359091169060400135610954565b34801561045457600080fd5b506103966004803603608081101561046b57600080fd5b506001600160a01b03813581169160208101358216916040820135169060600135610a07565b34801561049d57600080fd5b50610396600480360360408110156104b457600080fd5b50803590602001356001600160a01b0316610ac5565b3480156104d657600080fd5b50610396600480360360608110156104ed57600080fd5b506001600160a01b03813581169160208101359091169060400135610b8d565b34801561051957600080fd5b506103bf610c45565b34801561052e57600080fd5b506102e16004803603602081101561054557600080fd5b50356001600160a01b0316610c54565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105da5780601f106105af576101008083540402835291602001916105da565b820191906000526020600020905b8154815290600101906020018083116105bd57829003601f168201915b505050505081565b600060606105ee610930565b61062d576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b846001600160a01b031683856040518082805190602001908083835b602083106106685780518252601f199092019160209182019101610649565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146106ca576040519150601f19603f3d011682016040523d82523d6000602084013e6106cf565b606091505b508092508193505050846001600160a01b03167f534b52c783549f909f9e743120524d0b7154058e4a54cdc895c2c0b587a1c7e0858585604051808060200184815260200183151515158152602001828103825285818151815260200191508051906020019080838360005b8381101561075357818101518382015260200161073b565b50505050905090810190601f1680156107805780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a2935093915050565b61079f610930565b6107de576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610832610930565b610871576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b7ff9deba4938ba20070ec5a45ddf59bccba49cf83124215228ec1232182ef0ba2b826040518080602001828103825283818151815260200191508051906020019080838360005b838110156108d05781810151838201526020016108b8565b50505050905090810190601f1680156108fd5780820380516001836020036101000a031916815260200191505b509250505060405180910390a1506001919050565b6003546001600160a01b031681565b6000546001600160a01b031690565b600080546001600160a01b0316610945610ca7565b6001600160a01b031614905090565b600061095e610930565b61099d576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b6109b76001600160a01b038516848463ffffffff610cab16565b604080516001600160a01b038581168252602082018590528251908716927f3a48a4d6253b30fd10e57a347c1f9bcb0604946481fae0b2fdad6e74f2a9cbb3928290030190a25060019392505050565b6000610a11610930565b610a50576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610a6b6001600160a01b03861685858563ffffffff610ebc16565b604080516001600160a01b03868116825285811660208301528183018590529151918716917f179c15de44aa7ab84896301974328eb40b5b40fe01cfe0fee2924ea712c3e8439181900360600190a2506001949350505050565b6000610acf610930565b610b0e576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b6040516001600160a01b0383169084156108fc029085906000818181858888f19350505050158015610b44573d6000803e3d6000fd5b506040805184815290516001600160a01b038416917f22fca66666089f39bc900dd6605b489df4aae6260cc8ea8257594cfb8c84926c919081900360200190a250600192915050565b6000610b97610930565b610bd6576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610bf06001600160a01b038516848463ffffffff61103f16565b826001600160a01b0316846001600160a01b03167f49dc2a60d2599a7b6932d78fb694c30dfc596fe4e0282b5d0fd184b52472c04d846040518082815260200191505060405180910390a35060019392505050565b6002546001600160a01b031681565b610c5c610930565b610c9b576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610ca481611106565b50565b3390565b610cbd836001600160a01b03166111a6565b610cc657600080fd5b801580610d4c575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b158015610d1e57600080fd5b505afa158015610d32573d6000803e3d6000fd5b505050506040513d6020811015610d4857600080fd5b5051155b610d5557600080fd5b604080518082018252601881527f617070726f766528616464726573732c75696e7432353629000000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663095ea7b360e01b1781529251815160009460609489169392918291908083835b60208310610e025780518252601f199092019160209182019101610de3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610e64576040519150601f19603f3d011682016040523d82523d6000602084013e610e69565b606091505b509150915081610e7857600080fd5b80511580610eac575080516020148015610eac575080601f81518110610e9a57fe5b01602001516001600160f81b03191615155b610eb557600080fd5b5050505050565b610ece846001600160a01b03166111a6565b610ed757600080fd5b60006060856001600160a01b03166040518060600160405280602581526020016111e3602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b60208310610f845780518252601f199092019160209182019101610f65565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610fe6576040519150601f19603f3d011682016040523d82523d6000602084013e610feb565b606091505b509150915081610ffa57600080fd5b8051158061102e57508051602014801561102e575080601f8151811061101c57fe5b01602001516001600160f81b03191615155b61103757600080fd5b505050505050565b611051836001600160a01b03166111a6565b61105a57600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b17815292518151600094606094891693929182919080838360208310610e025780518252601f199092019160209182019101610de3565b6001600160a01b03811661114b5760405162461bcd60e51b81526004018080602001828103825260268152602001806112086026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906111da5750808214155b94935050505056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536294f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a723158204d57626914093b7f63b1c1c4d5f5e6e17e0f0c54f4162371009859bcf2841de664736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/BadERC20.json b/contracts/0.0.1-rc.53/BadERC20.json new file mode 100644 index 00000000..63bfc2d1 --- /dev/null +++ b/contracts/0.0.1-rc.53/BadERC20.json @@ -0,0 +1,123 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "BadERC20", + "sourceName": "contracts/test/BadERC20.sol", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "balances", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061021f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063095ea7b31461005c57806323b872dd1461008a57806327e235e3146100c0578063a9059cbb146100f8578063dd62ed3e14610124575b600080fd5b6100886004803603604081101561007257600080fd5b506001600160a01b038135169060200135610152565b005b610088600480360360608110156100a057600080fd5b506001600160a01b0381358116916020810135909116906040013561017c565b6100e6600480360360208110156100d657600080fd5b50356001600160a01b031661019f565b60408051918252519081900360200190f35b6100886004803603604081101561010e57600080fd5b506001600160a01b0381351690602001356101b1565b6100e66004803603604081101561013a57600080fd5b506001600160a01b03813581169160200135166101cd565b3360009081526001602090815260408083206001600160a01b039590951683529390529190912055565b6001600160a01b0390911660009081526020819052604090208054909101905550565b60006020819052908152604090205481565b6001600160a01b03909116600090815260208190526040902055565b60016020908152600092835260408084209091529082529020548156fea265627a7a72315820ff01ec1e20368c4e52cd8fe390a9b7f8d4c388072e0d56202397c4933a08c46364736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c8063095ea7b31461005c57806323b872dd1461008a57806327e235e3146100c0578063a9059cbb146100f8578063dd62ed3e14610124575b600080fd5b6100886004803603604081101561007257600080fd5b506001600160a01b038135169060200135610152565b005b610088600480360360608110156100a057600080fd5b506001600160a01b0381358116916020810135909116906040013561017c565b6100e6600480360360208110156100d657600080fd5b50356001600160a01b031661019f565b60408051918252519081900360200190f35b6100886004803603604081101561010e57600080fd5b506001600160a01b0381351690602001356101b1565b6100e66004803603604081101561013a57600080fd5b506001600160a01b03813581169160200135166101cd565b3360009081526001602090815260408083206001600160a01b039590951683529390529190912055565b6001600160a01b0390911660009081526020819052604090208054909101905550565b60006020819052908152604090205481565b6001600160a01b03909116600090815260208190526040902055565b60016020908152600092835260408084209091529082529020548156fea265627a7a72315820ff01ec1e20368c4e52cd8fe390a9b7f8d4c388072e0d56202397c4933a08c46364736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Competition.json b/contracts/0.0.1-rc.53/Competition.json new file mode 100644 index 00000000..f76b6948 --- /dev/null +++ b/contracts/0.0.1-rc.53/Competition.json @@ -0,0 +1,540 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Competition", + "sourceName": "contracts/schemes/Competition.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numberOfWinners", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "_rewardSplit", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_startTime", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_votingStartTime", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_suggestionsEndTime", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_endTime", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_maxNumberOfVotesPerVoter", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address payable", + "name": "_contributionRewardExt", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "name": "NewCompetitionProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "indexed": true, + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "NewSuggestion", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "NewVote", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_rewardPercentage", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_snapshotBlock", + "type": "uint256" + } + ], + "name": "SnapshotBlock", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "MAX_NUMBER_OF_WINNERS", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "REDEMPTION_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "contributionRewardExt", + "outputs": [ + { + "internalType": "address payable", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + } + ], + "name": "getOrderedIndexOfSuggestion", + "outputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address payable", + "name": "_contributionRewardExt", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "uint256", + "name": "numberOfWinners", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "votingStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "suggestionsEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxNumberOfVotesPerVoter", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "contributionRewardExt", + "type": "address" + }, + { + "internalType": "uint256", + "name": "snapshotBlock", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "ethReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "nativeTokenReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "externalTokenReward", + "type": "uint256" + }, + { + "internalType": "address", + "name": "admin", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "internalType": "int256", + "name": "_reputationChange", + "type": "int256" + }, + { + "internalType": "uint256[3]", + "name": "_rewards", + "type": "uint256[3]" + }, + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "_rewardSplit", + "type": "uint256[]" + }, + { + "internalType": "uint256[5]", + "name": "_competitionParams", + "type": "uint256[5]" + }, + { + "internalType": "bool", + "name": "_proposerIsAdmin", + "type": "bool" + } + ], + "name": "proposeCompetition", + "outputs": [ + { + "internalType": "bytes32", + "name": "proposalId", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + } + ], + "name": "redeem", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "sendLeftOverFunds", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "setSnapshotBlock", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "suggest", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "suggestions", + "outputs": [ + { + "internalType": "uint256", + "name": "totalVotes", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "proposalId", + "type": "bytes32" + }, + { + "internalType": "address payable", + "name": "beneficiary", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "suggestionsCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506124f4806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063ae0a97391161008c578063cffc84ba11610066578063cffc84ba146103fe578063d5c8cc5214610406578063db006a751461040e578063eba9e6331461042b576100ea565b8063ae0a973914610339578063bd9317d914610358578063c4d66de8146103d8576100ea565b8063516b9d37116100c8578063516b9d37146101fb5780635d474a00146102f0578063a65cd35a146102f8578063ab4c981c1461031c576100ea565b80630121b93f146100ef578063302a2a461461012057806332ed5b1214610164575b600080fd5b61010c6004803603602081101561010557600080fd5b5035610448565b604080519115158252519081900360200190f35b61013d6004803603602081101561013657600080fd5b50356108b2565b6040805193845260208401929092526001600160a01b031682820152519081900360600190f35b6101816004803603602081101561017a57600080fd5b50356108db565b604080519d8e5260208e019c909c528c8c019a909a5260608c019890985260808b019690965260a08a01949094526001600160a01b0392831660c08a015260e08901919091526101008801526101208701919091526101408601919091526101608501919091521661018083015251908190036101a00190f35b6102de60048036036101a081101561021257600080fd5b81019060208101813564010000000081111561022d57600080fd5b82018360208201111561023f57600080fd5b8035906020019184600183028401116401000000008311171561026157600080fd5b9193909282359260208101926001600160a01b0360808301351692909160c081019060a0013564010000000081111561029957600080fd5b8201836020820111156102ab57600080fd5b803590602001918460208302840111640100000000831117156102cd57600080fd5b919350915060a0810135151561094d565b60408051918252519081900360200190f35b6102de610f15565b610300610f1c565b604080516001600160a01b039092168252519081900360200190f35b6102de6004803603602081101561033257600080fd5b5035610f2b565b6103566004803603602081101561034f57600080fd5b5035611050565b005b6102de6004803603606081101561036e57600080fd5b8135919081019060408101602082013564010000000081111561039057600080fd5b8201836020820111156103a257600080fd5b803590602001918460018302840111640100000000831117156103c457600080fd5b9193509150356001600160a01b03166113e1565b610356600480360360208110156103ee57600080fd5b50356001600160a01b0316611604565b6102de6116c9565b6102de6116cf565b6103566004803603602081101561042457600080fd5b50356116d4565b6103566004803603602081101561044157600080fd5b5035611d20565b600081815260016020819052604082200154806104a8576040805162461bcd60e51b81526020600482015260196024820152781cdd59d9d95cdd1a5bdb88191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b6104b181611d20565b60035460408051632d77bef360e11b815290516000926001600160a01b031691635aef7de6916004808301926020929190829003018186803b1580156104f657600080fd5b505afa15801561050a573d6000803e3d6000fd5b505050506040513d602081101561052057600080fd5b50516040805163089ae1c960e41b815290519192506000916001600160a01b038416916389ae1c90916004808301926020929190829003018186803b15801561056857600080fd5b505afa15801561057c573d6000803e3d6000fd5b505050506040513d602081101561059257600080fd5b50516000848152602081815260409182902060080154825163277166bf60e11b8152336004820152602481019190915291516001600160a01b0390931692634ee2cd7e926044808201939291829003018186803b1580156105f257600080fd5b505afa158015610606573d6000803e3d6000fd5b505050506040513d602081101561061c57600080fd5b505190508061065c5760405162461bcd60e51b815260040180806020018281038252602f8152602001806122cf602f913960400191505060405180910390fd5b6000838152602081905260409020600581015442106106b6576040805162461bcd60e51b815260206004820152601160248201527018dbdb5c195d1a5d1a5bdb88195b991959607a1b604482015290519081900360640190fd5b6000868152600160209081526040808320338452600381019092529091205415610727576040805162461bcd60e51b815260206004820181905260248201527f616c726561647920766f746564206f6e20746869732073756767657374696f6e604482015290519081900360640190fd5b600682015433600090815260108401602052604090205410610790576040805162461bcd60e51b815260206004820152601e60248201527f657863656564206e756d626572206f6620766f74657320616c6c6f7765640000604482015290519081900360640190fd5b3360009081526010830160205260409020546107b390600163ffffffff611e4716565b3360009081526010840160205260409020558054156108045780546000908152600f830160205260409020546107f090600163ffffffff611eaa16565b81546000908152600f840160205260409020555b8054610816908463ffffffff611e4716565b8082556000908152600f8301602052604090205461083b90600163ffffffff611e4716565b81546000908152600f840160209081526040808320939093553382526003840190522083905561086b8588611eec565b6040805184815290513391899188917fd7d2b1fb5e87b2ff063bc53d745b1f45a5cdbb2f9b277888d590021844fd483e919081900360200190a45060019695505050505050565b60016020819052600091825260409091208054918101546002909101546001600160a01b031683565b6000602081905290815260409020805460028201546003830154600484015460058501546006860154600787015460088801546009890154600a8a0154600b8b0154600c8c0154600e909c01549a9b999a98999798969795966001600160a01b0395861696949593949293919291168d565b60008383358061095a5750425b428110156109995760405162461bcd60e51b815260040180806020018281038252602f81526020018061235d602f913960400191505060405180910390fd5b60648211156109d95760405162461bcd60e51b815260040180806020018281038252602a815260200180612473602a913960400191505060405180910390fd5b6040850135602086013510610a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806123e86027913960400191505060405180910390fd5b6020850135811115610a625760405162461bcd60e51b815260040180806020018281038252602981526020018061240f6029913960400191505060405180910390fd5b6060850135610aa25760405162461bcd60e51b815260040180806020018281038252603181526020018061227d6031913960400191505060405180910390fd5b604085013560808601351115610ae95760405162461bcd60e51b815260040180806020018281038252603b815260200180612438603b913960400191505060405180910390fd5b60808501358110610b2b5760405162461bcd60e51b815260040180806020018281038252603b81526020018061238c603b913960400191505060405180910390fd5b604089013515610b90576001600160a01b038816610b90576040805162461bcd60e51b815260206004820152601c60248201527f657874656e616c20746f6b656e2063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b60008a1215610bd05760405162461bcd60e51b815260040180806020018281038252603b8152602001806122fe603b913960400191505060405180910390fd5b6000805b83811015610c0b57610c01898983818110610beb57fe5b9050602002013583611e4790919063ffffffff16565b9150600101610bd4565b5080606414610c61576040805162461bcd60e51b815260206004820152601f60248201527f746f74616c20726577617264732073706c6974206973206e6f74203130302500604482015290519081900360640190fd5b6003546040516310ca123760e21b8152602481018d90526001600160a01b039091169063432848dc908f908f908f908f908f908790339060048101908190604401866060808284376000838201526001600160a01b03808916601f909201601f19169093019081528683166020820152918516604083015250828103606090810183528101899052608001898980828437600081840152601f19601f82011690508083019250505098505050505050505050602060405180830381600087803b158015610d2d57600080fd5b505af1158015610d41573d6000803e3d6000fd5b505050506040513d6020811015610d5757600080fd5b50516000818152602081905260409020848155909450610d7b906001018989612214565b506000848152602081815260408083206002810186905589830135600382015589820135600582015560608a0135600682015560808a01356004820155600981018f90558d35600b820155918d0135600a8301558c0135600c820155600801558415610e03576000848152602081905260409020600e0180546001600160a01b031916331790555b600084815260208181526040918290206003808201546004830154600584015460068501549354600e86015488518c81529889018b9052606089018590526080890184905260a0890183905260c089018690526001600160a01b0391821660e08a018190529116610100890181905261012097890188815260019097018054988a018990528d997fcf5b519fd1c8161005ac36adf44ad5e13159b7931b236d11507e30cb053c20f0998e9992988e98979695909490939092916101408301908b908015610eef57602002820191906000526020600020905b815481526020019060010190808311610edb575b50509a505050505050505050505060405180910390a25050509998505050505050505050565b6276a70081565b6003546001600160a01b031681565b60008181526001602081905260408220015480610f8b576040805162461bcd60e51b81526020600482015260196024820152781cdd59d9d95cdd1a5bdb88191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b60008181526020818152604091829020600d01805483518184028101840190945280845260609392830182828015610fe257602002820191906000526020600020905b815481526020019060010190808311610fce575b50939450600093505050505b8151811015611048576000858152600160208190526040822054845190929085908590811061101957fe5b60200260200101518152602001908152602001600020600001541115611040576001909301925b600101610fee565b505050919050565b6000818152602081905260409020600501544290611077906276a70063ffffffff611e4716565b106110c9576040805162461bcd60e51b815260206004820152601d60248201527f726564656d7074696f6e20706572696f64206973207374696c6c206f6e000000604482015290519081900360640190fd5b600081815260208190526040902060060154611126576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b8061116d576040805162461bcd60e51b815260206004820152601260248201527170726f706f73616c4964206973207a65726f60701b604482015290519081900360640190fd5b6003546040805163d8145e2d60e01b8152600481018490529051600092839283926001600160a01b039092169163d8145e2d9160248082019261016092909190829003018186803b1580156111c157600080fd5b505afa1580156111d5573d6000803e3d6000fd5b505050506040513d6101608110156111ec57600080fd5b5060c08101516101008201516101209092015160035460408051632d77bef360e11b815290519397509395509093506000926001600160a01b0390911691635aef7de691600480820192602092909190829003018186803b15801561125057600080fd5b505afa158015611264573d6000803e3d6000fd5b505050506040513d602081101561127a57600080fd5b505160035460408051636f4d4abd60e11b8152600481018990526001600160a01b03808516602483015260448201879052915193945091169163de9a957a9160648082019260009290919082900301818387803b1580156112da57600080fd5b505af11580156112ee573d6000803e3d6000fd5b50506003546040805163156460d960e11b8152600481018a90526001600160a01b038681166024830152604482018990529151919092169350632ac8c1b29250606480830192600092919082900301818387803b15801561134e57600080fd5b505af1158015611362573d6000803e3d6000fd5b505060035460408051630dd14c3160e31b8152600481018a90526001600160a01b038681166024830152604482018a90529151919092169350636e8a61889250606480830192600092919082900301818387803b1580156113c257600080fd5b505af11580156113d6573d6000803e3d6000fd5b505050505050505050565b6000848152602081905260408120600e01546001600160a01b031615611468576000858152602081905260409020600e01546001600160a01b03163314611468576040805162461bcd60e51b81526020600482015260166024820152751bdb9b1e4818591b5a5b8818d85b881cdd59d9d95cdd60521b604482015290519081900360640190fd5b6000858152602081905260409020600201544210156114ce576040805162461bcd60e51b815260206004820152601b60248201527f636f6d7065746974696f6e206e6f742073746172746564207965740000000000604482015290519081900360640190fd5b600085815260208190526040902060040154421061151d5760405162461bcd60e51b815260040180806020018281038252602381526020018061249d6023913960400191505060405180910390fd5b60025461153190600163ffffffff611e4716565b600281905560009081526001602081905260408220018690556001600160a01b03831661155f575033611562565b50815b60028054600090815260016020908152604091829020830180546001600160a01b0319166001600160a01b038616908117909155925482518281529182018890529189917fd49d50e437830c78dfc56d998083bd2d5280b983038730ff7ca14c6a329dc549918a918a9181908101848480828437600083820152604051601f909101601f19169092018290039550909350505050a45050600254949350505050565b6003546001600160a01b031615611662576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0381166116a75760405162461bcd60e51b81526004018080602001828103825260248152602001806123396024913960400191505060405180910390fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b60025481565b606481565b600081815260016020819052604090912001548061172e576040805162461bcd60e51b815260206004820152601260248201527170726f706f73616c4964206973207a65726f60701b604482015290519081900360640190fd5b600081815260208190526040902082611785576040805162461bcd60e51b815260206004820152601460248201527373756767657374696f6e4964206973207a65726f60601b604482015290519081900360640190fd5b428160050154106117dd576040805162461bcd60e51b815260206004820152601760248201527f636f6d7065746974696f6e206973207374696c6c206f6e000000000000000000604482015290519081900360640190fd5b600581015442906117f7906276a70063ffffffff611e4716565b11611849576040805162461bcd60e51b815260206004820152601960248201527f726564656d7074696f6e20706572696f64206973206f76657200000000000000604482015290519081900360640190fd5b600081600601541161189c576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b6000838152600160205260409020600201546001600160a01b0316611908576040805162461bcd60e51b815260206004820152601f60248201527f73756767657374696f6e2077617320616c72656164792072656465656d656400604482015290519081900360640190fd5b6000838152600160205260408120600201546001600160a01b03169061192d85610f2b565b600d84015490915081106119725760405162461bcd60e51b81526004018080602001828103825260218152602001806122ae6021913960400191505060405180910390fd5b60008581526001602090815260408083206002810180546001600160a01b0319169055548352600f8601909152812054825b818401811080156119b55750855481105b156119f0576119e68660010182815481106119cc57fe5b906000526020600020015484611e4790919063ffffffff16565b92506001016119a4565b611a00838363ffffffff61207d16565b8654600d8801549194506000911015611a8757600d87015491505b8654821015611a5d57611a50876001018381548110611a3657fe5b906000526020600020015482611e4790919063ffffffff16565b6001909201919050611a1b565b600d870154611a8490611a7790839063ffffffff61207d16565b859063ffffffff611e4716565b93505b6000611ab16064611aa5878b600c01546120bf90919063ffffffff16565b9063ffffffff61207d16565b60035460408051636f4d4abd60e11b8152600481018d90526001600160a01b038b8116602483015260448201859052915193945091169163de9a957a9160648082019260009290919082900301818387803b158015611b0f57600080fd5b505af1158015611b23573d6000803e3d6000fd5b50505050611b436064611aa5878b600901546120bf90919063ffffffff16565b6003546040805163c4a17ec960e01b8152600481018d90526001600160a01b038b8116602483015260448201859052915193945091169163c4a17ec99160648082019260009290919082900301818387803b158015611ba157600080fd5b505af1158015611bb5573d6000803e3d6000fd5b50505050611bd56064611aa5878b600a01546120bf90919063ffffffff16565b6003546040805163156460d960e11b8152600481018d90526001600160a01b038b81166024830152604482018590529151939450911691632ac8c1b29160648082019260009290919082900301818387803b158015611c3357600080fd5b505af1158015611c47573d6000803e3d6000fd5b50505050611c676064611aa5878b600b01546120bf90919063ffffffff16565b60035460408051630dd14c3160e31b8152600481018d90526001600160a01b038b81166024830152604482018590529151939450911691636e8a61889160648082019260009290919082900301818387803b158015611cc557600080fd5b505af1158015611cd9573d6000803e3d6000fd5b50506040805188815290518d93508c92507febd129592de98831789a95ee9465fa6d4c6cf79d4788ac8d7effc6c8205768d69181900360200190a350505050505050505050565b6000818152602081905260409020600301544211611d85576040805162461bcd60e51b815260206004820152601d60248201527f766f74696e6720706572696f64206e6f74207374617274656420796574000000604482015290519081900360640190fd5b600081815260208190526040902060060154611de2576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b600081815260208190526040902060080154611e4457600081815260208181526040918290204360089091018190558251908152915183927f4169469c5791d1acd84c8c616355c70799ea61c4b680d68e2587e7693259233992908290030190a25b50565b600082820183811015611ea1576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6000611ea183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612118565b6000828152602081905260408120600d810180549154909290821015611f60575060005b81811015611f465783838281548110611f2557fe5b90600052602060002001541415611f3e57505050612079565b600101611f10565b825460018101845560008481526020902001849055612075565b506000805b6000868152602081905260409020548210156120145760016000858381548110611f8b57fe5b906000526020600020015481526020019081526020016000206000015460016000868581548110611fb857fe5b90600052602060002001548152602001908152602001600020600001541015611fe2575080612009565b84848381548110611fef57fe5b906000526020600020015414156120095750505050612079565b600190910190611f65565b6000858152600160208190526040822054865490929087908590811061203657fe5b90600052602060002001548152602001908152602001600020600001541015612073578484828154811061206657fe5b6000918252602090912001555b505b5050505b5050565b6000611ea183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506121af565b6000826120ce57506000611ea4565b828202828482816120db57fe5b0414611ea15760405162461bcd60e51b81526004018080602001828103825260218152602001806123c76021913960400191505060405180910390fd5b600081848411156121a75760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561216c578181015183820152602001612154565b50505050905090810190601f1680156121995780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836121fe5760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561216c578181015183820152602001612154565b50600083858161220a57fe5b0495945050505050565b82805482825590600052602060002090810192821561224f579160200282015b8281111561224f578235825591602001919060010190612234565b5061225b92915061225f565b5090565b61227991905b8082111561225b5760008155600101612265565b9056fe6d61784e756d6265724f66566f746573506572566f7465722073686f756c642062652067726561746572207468616e203073756767657374696f6e206973206e6f7420696e2077696e6e657273206c697374766f74657220686164206e6f2072657075746174696f6e207768656e20736e617073686f74207761732074616b656e6e656761746976652072657075746174696f6e206368616e6765206973206e6f7420616c6c6f77656420666f72206120636f6d7065746974696f6e636f6e747269627574696f6e5265776172644578742063616e6e6f74206265207a65726f737461727454696d652073686f756c642062652067726561746572207468616e2070726f706f73696e672074696d6573756767657374696f6e73456e6454696d652073686f756c64206265206c61746572207468616e2070726f706f73616c2073746172742074696d65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77766f74696e672073746172742074696d652067726561746572207468616e20656e642074696d65766f74696e672073746172742074696d6520736d616c6c6572207468616e2073746172742074696d6573756767657374696f6e73456e6454696d652073686f756c64206265206561726c696572207468616e2070726f706f73616c20656e642074696d656e756d626572206f662077696e6e6572732067726561746572207468616e206d617820616c6c6f77656473756767657374696f6e73207375626d697373696f6e2074696d65206973206f766572a265627a7a72315820bb9c19cdc9dcc7e9e31cced6b74346fa5914fb8d0708eabac231739161d808e864736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063ae0a97391161008c578063cffc84ba11610066578063cffc84ba146103fe578063d5c8cc5214610406578063db006a751461040e578063eba9e6331461042b576100ea565b8063ae0a973914610339578063bd9317d914610358578063c4d66de8146103d8576100ea565b8063516b9d37116100c8578063516b9d37146101fb5780635d474a00146102f0578063a65cd35a146102f8578063ab4c981c1461031c576100ea565b80630121b93f146100ef578063302a2a461461012057806332ed5b1214610164575b600080fd5b61010c6004803603602081101561010557600080fd5b5035610448565b604080519115158252519081900360200190f35b61013d6004803603602081101561013657600080fd5b50356108b2565b6040805193845260208401929092526001600160a01b031682820152519081900360600190f35b6101816004803603602081101561017a57600080fd5b50356108db565b604080519d8e5260208e019c909c528c8c019a909a5260608c019890985260808b019690965260a08a01949094526001600160a01b0392831660c08a015260e08901919091526101008801526101208701919091526101408601919091526101608501919091521661018083015251908190036101a00190f35b6102de60048036036101a081101561021257600080fd5b81019060208101813564010000000081111561022d57600080fd5b82018360208201111561023f57600080fd5b8035906020019184600183028401116401000000008311171561026157600080fd5b9193909282359260208101926001600160a01b0360808301351692909160c081019060a0013564010000000081111561029957600080fd5b8201836020820111156102ab57600080fd5b803590602001918460208302840111640100000000831117156102cd57600080fd5b919350915060a0810135151561094d565b60408051918252519081900360200190f35b6102de610f15565b610300610f1c565b604080516001600160a01b039092168252519081900360200190f35b6102de6004803603602081101561033257600080fd5b5035610f2b565b6103566004803603602081101561034f57600080fd5b5035611050565b005b6102de6004803603606081101561036e57600080fd5b8135919081019060408101602082013564010000000081111561039057600080fd5b8201836020820111156103a257600080fd5b803590602001918460018302840111640100000000831117156103c457600080fd5b9193509150356001600160a01b03166113e1565b610356600480360360208110156103ee57600080fd5b50356001600160a01b0316611604565b6102de6116c9565b6102de6116cf565b6103566004803603602081101561042457600080fd5b50356116d4565b6103566004803603602081101561044157600080fd5b5035611d20565b600081815260016020819052604082200154806104a8576040805162461bcd60e51b81526020600482015260196024820152781cdd59d9d95cdd1a5bdb88191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b6104b181611d20565b60035460408051632d77bef360e11b815290516000926001600160a01b031691635aef7de6916004808301926020929190829003018186803b1580156104f657600080fd5b505afa15801561050a573d6000803e3d6000fd5b505050506040513d602081101561052057600080fd5b50516040805163089ae1c960e41b815290519192506000916001600160a01b038416916389ae1c90916004808301926020929190829003018186803b15801561056857600080fd5b505afa15801561057c573d6000803e3d6000fd5b505050506040513d602081101561059257600080fd5b50516000848152602081815260409182902060080154825163277166bf60e11b8152336004820152602481019190915291516001600160a01b0390931692634ee2cd7e926044808201939291829003018186803b1580156105f257600080fd5b505afa158015610606573d6000803e3d6000fd5b505050506040513d602081101561061c57600080fd5b505190508061065c5760405162461bcd60e51b815260040180806020018281038252602f8152602001806122cf602f913960400191505060405180910390fd5b6000838152602081905260409020600581015442106106b6576040805162461bcd60e51b815260206004820152601160248201527018dbdb5c195d1a5d1a5bdb88195b991959607a1b604482015290519081900360640190fd5b6000868152600160209081526040808320338452600381019092529091205415610727576040805162461bcd60e51b815260206004820181905260248201527f616c726561647920766f746564206f6e20746869732073756767657374696f6e604482015290519081900360640190fd5b600682015433600090815260108401602052604090205410610790576040805162461bcd60e51b815260206004820152601e60248201527f657863656564206e756d626572206f6620766f74657320616c6c6f7765640000604482015290519081900360640190fd5b3360009081526010830160205260409020546107b390600163ffffffff611e4716565b3360009081526010840160205260409020558054156108045780546000908152600f830160205260409020546107f090600163ffffffff611eaa16565b81546000908152600f840160205260409020555b8054610816908463ffffffff611e4716565b8082556000908152600f8301602052604090205461083b90600163ffffffff611e4716565b81546000908152600f840160209081526040808320939093553382526003840190522083905561086b8588611eec565b6040805184815290513391899188917fd7d2b1fb5e87b2ff063bc53d745b1f45a5cdbb2f9b277888d590021844fd483e919081900360200190a45060019695505050505050565b60016020819052600091825260409091208054918101546002909101546001600160a01b031683565b6000602081905290815260409020805460028201546003830154600484015460058501546006860154600787015460088801546009890154600a8a0154600b8b0154600c8c0154600e909c01549a9b999a98999798969795966001600160a01b0395861696949593949293919291168d565b60008383358061095a5750425b428110156109995760405162461bcd60e51b815260040180806020018281038252602f81526020018061235d602f913960400191505060405180910390fd5b60648211156109d95760405162461bcd60e51b815260040180806020018281038252602a815260200180612473602a913960400191505060405180910390fd5b6040850135602086013510610a1f5760405162461bcd60e51b81526004018080602001828103825260278152602001806123e86027913960400191505060405180910390fd5b6020850135811115610a625760405162461bcd60e51b815260040180806020018281038252602981526020018061240f6029913960400191505060405180910390fd5b6060850135610aa25760405162461bcd60e51b815260040180806020018281038252603181526020018061227d6031913960400191505060405180910390fd5b604085013560808601351115610ae95760405162461bcd60e51b815260040180806020018281038252603b815260200180612438603b913960400191505060405180910390fd5b60808501358110610b2b5760405162461bcd60e51b815260040180806020018281038252603b81526020018061238c603b913960400191505060405180910390fd5b604089013515610b90576001600160a01b038816610b90576040805162461bcd60e51b815260206004820152601c60248201527f657874656e616c20746f6b656e2063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b60008a1215610bd05760405162461bcd60e51b815260040180806020018281038252603b8152602001806122fe603b913960400191505060405180910390fd5b6000805b83811015610c0b57610c01898983818110610beb57fe5b9050602002013583611e4790919063ffffffff16565b9150600101610bd4565b5080606414610c61576040805162461bcd60e51b815260206004820152601f60248201527f746f74616c20726577617264732073706c6974206973206e6f74203130302500604482015290519081900360640190fd5b6003546040516310ca123760e21b8152602481018d90526001600160a01b039091169063432848dc908f908f908f908f908f908790339060048101908190604401866060808284376000838201526001600160a01b03808916601f909201601f19169093019081528683166020820152918516604083015250828103606090810183528101899052608001898980828437600081840152601f19601f82011690508083019250505098505050505050505050602060405180830381600087803b158015610d2d57600080fd5b505af1158015610d41573d6000803e3d6000fd5b505050506040513d6020811015610d5757600080fd5b50516000818152602081905260409020848155909450610d7b906001018989612214565b506000848152602081815260408083206002810186905589830135600382015589820135600582015560608a0135600682015560808a01356004820155600981018f90558d35600b820155918d0135600a8301558c0135600c820155600801558415610e03576000848152602081905260409020600e0180546001600160a01b031916331790555b600084815260208181526040918290206003808201546004830154600584015460068501549354600e86015488518c81529889018b9052606089018590526080890184905260a0890183905260c089018690526001600160a01b0391821660e08a018190529116610100890181905261012097890188815260019097018054988a018990528d997fcf5b519fd1c8161005ac36adf44ad5e13159b7931b236d11507e30cb053c20f0998e9992988e98979695909490939092916101408301908b908015610eef57602002820191906000526020600020905b815481526020019060010190808311610edb575b50509a505050505050505050505060405180910390a25050509998505050505050505050565b6276a70081565b6003546001600160a01b031681565b60008181526001602081905260408220015480610f8b576040805162461bcd60e51b81526020600482015260196024820152781cdd59d9d95cdd1a5bdb88191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b60008181526020818152604091829020600d01805483518184028101840190945280845260609392830182828015610fe257602002820191906000526020600020905b815481526020019060010190808311610fce575b50939450600093505050505b8151811015611048576000858152600160208190526040822054845190929085908590811061101957fe5b60200260200101518152602001908152602001600020600001541115611040576001909301925b600101610fee565b505050919050565b6000818152602081905260409020600501544290611077906276a70063ffffffff611e4716565b106110c9576040805162461bcd60e51b815260206004820152601d60248201527f726564656d7074696f6e20706572696f64206973207374696c6c206f6e000000604482015290519081900360640190fd5b600081815260208190526040902060060154611126576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b8061116d576040805162461bcd60e51b815260206004820152601260248201527170726f706f73616c4964206973207a65726f60701b604482015290519081900360640190fd5b6003546040805163d8145e2d60e01b8152600481018490529051600092839283926001600160a01b039092169163d8145e2d9160248082019261016092909190829003018186803b1580156111c157600080fd5b505afa1580156111d5573d6000803e3d6000fd5b505050506040513d6101608110156111ec57600080fd5b5060c08101516101008201516101209092015160035460408051632d77bef360e11b815290519397509395509093506000926001600160a01b0390911691635aef7de691600480820192602092909190829003018186803b15801561125057600080fd5b505afa158015611264573d6000803e3d6000fd5b505050506040513d602081101561127a57600080fd5b505160035460408051636f4d4abd60e11b8152600481018990526001600160a01b03808516602483015260448201879052915193945091169163de9a957a9160648082019260009290919082900301818387803b1580156112da57600080fd5b505af11580156112ee573d6000803e3d6000fd5b50506003546040805163156460d960e11b8152600481018a90526001600160a01b038681166024830152604482018990529151919092169350632ac8c1b29250606480830192600092919082900301818387803b15801561134e57600080fd5b505af1158015611362573d6000803e3d6000fd5b505060035460408051630dd14c3160e31b8152600481018a90526001600160a01b038681166024830152604482018a90529151919092169350636e8a61889250606480830192600092919082900301818387803b1580156113c257600080fd5b505af11580156113d6573d6000803e3d6000fd5b505050505050505050565b6000848152602081905260408120600e01546001600160a01b031615611468576000858152602081905260409020600e01546001600160a01b03163314611468576040805162461bcd60e51b81526020600482015260166024820152751bdb9b1e4818591b5a5b8818d85b881cdd59d9d95cdd60521b604482015290519081900360640190fd5b6000858152602081905260409020600201544210156114ce576040805162461bcd60e51b815260206004820152601b60248201527f636f6d7065746974696f6e206e6f742073746172746564207965740000000000604482015290519081900360640190fd5b600085815260208190526040902060040154421061151d5760405162461bcd60e51b815260040180806020018281038252602381526020018061249d6023913960400191505060405180910390fd5b60025461153190600163ffffffff611e4716565b600281905560009081526001602081905260408220018690556001600160a01b03831661155f575033611562565b50815b60028054600090815260016020908152604091829020830180546001600160a01b0319166001600160a01b038616908117909155925482518281529182018890529189917fd49d50e437830c78dfc56d998083bd2d5280b983038730ff7ca14c6a329dc549918a918a9181908101848480828437600083820152604051601f909101601f19169092018290039550909350505050a45050600254949350505050565b6003546001600160a01b031615611662576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0381166116a75760405162461bcd60e51b81526004018080602001828103825260248152602001806123396024913960400191505060405180910390fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b60025481565b606481565b600081815260016020819052604090912001548061172e576040805162461bcd60e51b815260206004820152601260248201527170726f706f73616c4964206973207a65726f60701b604482015290519081900360640190fd5b600081815260208190526040902082611785576040805162461bcd60e51b815260206004820152601460248201527373756767657374696f6e4964206973207a65726f60601b604482015290519081900360640190fd5b428160050154106117dd576040805162461bcd60e51b815260206004820152601760248201527f636f6d7065746974696f6e206973207374696c6c206f6e000000000000000000604482015290519081900360640190fd5b600581015442906117f7906276a70063ffffffff611e4716565b11611849576040805162461bcd60e51b815260206004820152601960248201527f726564656d7074696f6e20706572696f64206973206f76657200000000000000604482015290519081900360640190fd5b600081600601541161189c576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b6000838152600160205260409020600201546001600160a01b0316611908576040805162461bcd60e51b815260206004820152601f60248201527f73756767657374696f6e2077617320616c72656164792072656465656d656400604482015290519081900360640190fd5b6000838152600160205260408120600201546001600160a01b03169061192d85610f2b565b600d84015490915081106119725760405162461bcd60e51b81526004018080602001828103825260218152602001806122ae6021913960400191505060405180910390fd5b60008581526001602090815260408083206002810180546001600160a01b0319169055548352600f8601909152812054825b818401811080156119b55750855481105b156119f0576119e68660010182815481106119cc57fe5b906000526020600020015484611e4790919063ffffffff16565b92506001016119a4565b611a00838363ffffffff61207d16565b8654600d8801549194506000911015611a8757600d87015491505b8654821015611a5d57611a50876001018381548110611a3657fe5b906000526020600020015482611e4790919063ffffffff16565b6001909201919050611a1b565b600d870154611a8490611a7790839063ffffffff61207d16565b859063ffffffff611e4716565b93505b6000611ab16064611aa5878b600c01546120bf90919063ffffffff16565b9063ffffffff61207d16565b60035460408051636f4d4abd60e11b8152600481018d90526001600160a01b038b8116602483015260448201859052915193945091169163de9a957a9160648082019260009290919082900301818387803b158015611b0f57600080fd5b505af1158015611b23573d6000803e3d6000fd5b50505050611b436064611aa5878b600901546120bf90919063ffffffff16565b6003546040805163c4a17ec960e01b8152600481018d90526001600160a01b038b8116602483015260448201859052915193945091169163c4a17ec99160648082019260009290919082900301818387803b158015611ba157600080fd5b505af1158015611bb5573d6000803e3d6000fd5b50505050611bd56064611aa5878b600a01546120bf90919063ffffffff16565b6003546040805163156460d960e11b8152600481018d90526001600160a01b038b81166024830152604482018590529151939450911691632ac8c1b29160648082019260009290919082900301818387803b158015611c3357600080fd5b505af1158015611c47573d6000803e3d6000fd5b50505050611c676064611aa5878b600b01546120bf90919063ffffffff16565b60035460408051630dd14c3160e31b8152600481018d90526001600160a01b038b81166024830152604482018590529151939450911691636e8a61889160648082019260009290919082900301818387803b158015611cc557600080fd5b505af1158015611cd9573d6000803e3d6000fd5b50506040805188815290518d93508c92507febd129592de98831789a95ee9465fa6d4c6cf79d4788ac8d7effc6c8205768d69181900360200190a350505050505050505050565b6000818152602081905260409020600301544211611d85576040805162461bcd60e51b815260206004820152601d60248201527f766f74696e6720706572696f64206e6f74207374617274656420796574000000604482015290519081900360640190fd5b600081815260208190526040902060060154611de2576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b600081815260208190526040902060080154611e4457600081815260208181526040918290204360089091018190558251908152915183927f4169469c5791d1acd84c8c616355c70799ea61c4b680d68e2587e7693259233992908290030190a25b50565b600082820183811015611ea1576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6000611ea183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612118565b6000828152602081905260408120600d810180549154909290821015611f60575060005b81811015611f465783838281548110611f2557fe5b90600052602060002001541415611f3e57505050612079565b600101611f10565b825460018101845560008481526020902001849055612075565b506000805b6000868152602081905260409020548210156120145760016000858381548110611f8b57fe5b906000526020600020015481526020019081526020016000206000015460016000868581548110611fb857fe5b90600052602060002001548152602001908152602001600020600001541015611fe2575080612009565b84848381548110611fef57fe5b906000526020600020015414156120095750505050612079565b600190910190611f65565b6000858152600160208190526040822054865490929087908590811061203657fe5b90600052602060002001548152602001908152602001600020600001541015612073578484828154811061206657fe5b6000918252602090912001555b505b5050505b5050565b6000611ea183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506121af565b6000826120ce57506000611ea4565b828202828482816120db57fe5b0414611ea15760405162461bcd60e51b81526004018080602001828103825260218152602001806123c76021913960400191505060405180910390fd5b600081848411156121a75760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561216c578181015183820152602001612154565b50505050905090810190601f1680156121995780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836121fe5760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561216c578181015183820152602001612154565b50600083858161220a57fe5b0495945050505050565b82805482825590600052602060002090810192821561224f579160200282015b8281111561224f578235825591602001919060010190612234565b5061225b92915061225f565b5090565b61227991905b8082111561225b5760008155600101612265565b9056fe6d61784e756d6265724f66566f746573506572566f7465722073686f756c642062652067726561746572207468616e203073756767657374696f6e206973206e6f7420696e2077696e6e657273206c697374766f74657220686164206e6f2072657075746174696f6e207768656e20736e617073686f74207761732074616b656e6e656761746976652072657075746174696f6e206368616e6765206973206e6f7420616c6c6f77656420666f72206120636f6d7065746974696f6e636f6e747269627574696f6e5265776172644578742063616e6e6f74206265207a65726f737461727454696d652073686f756c642062652067726561746572207468616e2070726f706f73696e672074696d6573756767657374696f6e73456e6454696d652073686f756c64206265206c61746572207468616e2070726f706f73616c2073746172742074696d65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77766f74696e672073746172742074696d652067726561746572207468616e20656e642074696d65766f74696e672073746172742074696d6520736d616c6c6572207468616e2073746172742074696d6573756767657374696f6e73456e6454696d652073686f756c64206265206561726c696572207468616e2070726f706f73616c20656e642074696d656e756d626572206f662077696e6e6572732067726561746572207468616e206d617820616c6c6f77656473756767657374696f6e73207375626d697373696f6e2074696d65206973206f766572a265627a7a72315820bb9c19cdc9dcc7e9e31cced6b74346fa5914fb8d0708eabac231739161d808e864736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Context.json b/contracts/0.0.1-rc.53/Context.json new file mode 100644 index 00000000..a61c4dcb --- /dev/null +++ b/contracts/0.0.1-rc.53/Context.json @@ -0,0 +1,15 @@ +{ + "contractName": "Context", + "abi": [ + { + "inputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ContinuousLocking4Reputation.json b/contracts/0.0.1-rc.53/ContinuousLocking4Reputation.json new file mode 100644 index 00000000..19616c6a --- /dev/null +++ b/contracts/0.0.1-rc.53/ContinuousLocking4Reputation.json @@ -0,0 +1,620 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ContinuousLocking4Reputation", + "sourceName": "contracts/schemes/ContinuousLocking4Reputation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_extendPeriod", + "type": "uint256" + } + ], + "name": "ExtendLocking", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_period", + "type": "uint256" + } + ], + "name": "LockToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_batchIndex", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Release", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "MAX_LOCKING_BATCHES_HARDCAP", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "batchTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "batches", + "outputs": [ + { + "internalType": "uint256", + "name": "totalScore", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "batchesIndexCap", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_extendPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_batchIndexToLockIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "extendLocking", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "_batchIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + } + ], + "name": "getLockingIdScore", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "_batchIndex", + "type": "uint256" + } + ], + "name": "getRepRewardPerBatch", + "outputs": [ + { + "internalType": "uint256", + "name": "repReward", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_batchTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_maxLockingBatches", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_repRewardConstA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_repRewardConstB", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_batchesIndexCap", + "type": "uint256" + }, + { + "internalType": "contract IERC20", + "name": "_token", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_period", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_batchIndexToLockIn", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "lock", + "outputs": [ + { + "internalType": "uint256", + "name": "lockingId", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "lockers", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "lockingTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "period", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "maxLockingBatches", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + } + ], + "name": "release", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "repRewardConstA", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "repRewardConstB", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "startTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "token", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalLockedLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611c1f806100206000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c80636e57307b116100c3578063afe0e33c1161007c578063afe0e33c146102f7578063b32c4d8d146102ff578063c348a24b1461031c578063ef5a3e4a14610324578063f6a7400114610347578063fc0c546a146103b15761014d565b80636e57307b14610235578063746c0a601461026657806378e979251461026e5780637b3e46f8146102765780638db564c2146102a5578063a6e1a54c146102ad5761014d565b8063591451f711610115578063591451f7146101e95780635aef7de6146101f15780635b42f48b146102155780635eff3f291461021d578063696da921146102255780636c9d43b61461022d5761014d565b8063029489a9146101525780630357371d1461018157806303840c6c146101ad5780631e9a6950146101b55780633d1678f4146101e1575b600080fd5b61016f6004803603602081101561016857600080fd5b50356103b9565b60408051918252519081900360200190f35b61016f6004803603604081101561019757600080fd5b506001600160a01b0381351690602001356103ec565b61016f610556565b61016f600480360360408110156101cb57600080fd5b506001600160a01b03813516906020013561055c565b61016f610942565b61016f610948565b6101f961094e565b604080516001600160a01b039092168252519081900360200190f35b61016f61095d565b61016f610963565b61016f610968565b61016f61096e565b6102646004803603608081101561024b57600080fd5b5080359060208101359060408101359060600135610974565b005b61016f610ca0565b61016f610ca6565b61016f6004803603608081101561028c57600080fd5b5080359060208101359060408101359060600135610cac565b61016f610fce565b6102d9600480360360408110156102c357600080fd5b506001600160a01b038135169060200135610fd4565b60408051938452602084019290925282820152519081900360600190f35b61016f610ffc565b61016f6004803603602081101561031557600080fd5b5035611002565b61016f611014565b61016f6004803603604081101561033a57600080fd5b508035906020013561101a565b610264600480360361016081101561035e57600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c08201359160e0810135916101008201359161012081013590911690610140013561103e565b6101f961131e565b6000600e5482116103e7576103e4600c546103df84600d5461132d90919063ffffffff16565b61137e565b90505b919050565b6001600160a01b038216600090815260016020908152604080832084845290915281208054610462576040805162461bcd60e51b815260206004820152601860248201527f6e6f20616d6f756e74206c65667420746f20756e6c6f636b0000000000000000604482015290519081900360640190fd5b8054600082556008546002830154600184015492945061048992910263ffffffff6113e216565b42116104dc576040805162461bcd60e51b815260206004820152601e60248201527f6c6f636b696e6720706572696f64206973207374696c6c206163746976650000604482015290519081900360640190fd5b600b546104ef908363ffffffff61144316565b600b5560095461050f906001600160a01b0316858463ffffffff61148516565b6040805183815290516001600160a01b0386169185917fe332e9963bc980fb82ccd3e7e181d76bddde349eec46b4ba393f3444529cd17f9181900360200190a35092915050565b600d5481565b600060065442116105ad576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038316600090815260016020818152604080842086855290915290912090810154610622576040805162461bcd60e51b815260206004820152601960248201527817db1bd8dada5b99d25908191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b60006008546005548360010154038161063757fe5b049050600060085460055442038161064b57fe5b049050600061067761066a8560020154856113e290919063ffffffff16565b839063ffffffff61160716565b90505b8083101561076f5760008381526002602090815260408083208984526001810190925290912054801561076257600088815260018301602052604081208190556106c3866103b9565b905060006106d96106d38461161d565b8361137e565b905060006106f3826106ee876000015461161d565b611632565b90506107058a8263ffffffff6113e216565b99508b6001600160a01b03168b7facf9103edd7d12d169ab5037ce643ee56e59d5986362a9e903d86f2544fefcaa61073c8461164b565b604080516001600160d81b03929092168252602082018d90528051918290030190a35050505b505060019092019161067a565b6107788561164b565b6001600160d81b03169450600085116107d8576040805162461bcd60e51b815260206004820152601960248201527f72657075746174696f6e20746f2072656465656d206973203000000000000000604482015290519081900360640190fd5b6004546107eb908663ffffffff61144316565b600490815560035460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561083157600080fd5b505afa158015610845573d6000803e3d6000fd5b505050506040513d602081101561085b57600080fd5b50516003546040805163757cca5960e11b8152600481018990526001600160a01b038b8116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b1580156108bb57600080fd5b505af11580156108cf573d6000803e3d6000fd5b505050506040513d60208110156108e557600080fd5b5051610938576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b5050505092915050565b60065481565b600c5481565b6003546001600160a01b031681565b60075481565b601881565b60005490565b60085481565b8060005481146109b55760405162461bcd60e51b8152600401808060200182810382526028815260200180611ad16028913960400191505060405180910390fd5b33600090815260016020818152604080842087855290915290912090810154610a21576040805162461bcd60e51b815260206004820152601960248201527817db1bd8dada5b99d25908191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b6000610a6f86600854610a5b600554610a4f60085488600201540288600101546113e290919063ffffffff16565b9063ffffffff61144316565b81610a6257fe5b049063ffffffff61144316565b90506000610a83828963ffffffff6113e216565b9050600754811115610ac65760405162461bcd60e51b815260040180806020018281038252602a815260200180611a26602a913960400191505060405180910390fd5b60008811610b1b576040805162461bcd60e51b815260206004820152601960248201527f5f657874656e64506572696f64206d757374206265203e203000000000000000604482015290519081900360640190fd5b600e54610b2e888363ffffffff6113e216565b1115610b6b5760405162461bcd60e51b8152600401808060200182810382526028815260200180611b556028913960400191505060405180910390fd5b6000600854600554420381610b7c57fe5b049050878114610bcb576040805162461bcd60e51b81526020600482015260156024820152746c6f636b696e67206973206e6f742061637469766560581b604482015290519081900360640190fd5b60005b82811015610c435781810160009081526002602052604081208654909190610bff908487039063ffffffff61165516565b60008b81526001840160205260409020548354919250610c2991610a4f908463ffffffff6113e216565b825560008a81526001928301602052604090205501610bce565b506002840154610c59908a63ffffffff6113e216565b6002850155604080518a81529051889133917fbf1612e584a5355572c05134f25811613efa611499c6597f74d7dde53adc104c9181900360200190a3505050505050505050565b600e5481565b60055481565b6000816000548114610cef5760405162461bcd60e51b8152600401808060200182810382526028815260200180611ad16028913960400191505060405180910390fd5b60008611610d3c576040805162461bcd60e51b815260206004820152601560248201527405f616d6f756e742073686f756c64206265203e203605c1b604482015290519081900360640190fd5b600554421015610d7d5760405162461bcd60e51b8152600401808060200182810382526033815260200180611a716033913960400191505060405180910390fd5b600754851115610dbe5760405162461bcd60e51b8152600401808060200182810382526022815260200180611af96022913960400191505060405180910390fd5b60008511610e09576040805162461bcd60e51b815260206004820152601360248201527205f706572696f64206d757374206265203e203606c1b604482015290519081900360640190fd5b600e54610e1c858763ffffffff6113e216565b1115610e595760405162461bcd60e51b81526004018080602001828103825260388152602001806119a56038913960400191505060405180910390fd5b600a54610e6d90600163ffffffff6113e216565b600a81905533600081815260016020818152604080842086855290915290912089815560028101899055429181019190915560095492945091610ebd916001600160a01b0390911690308a6116ae565b6000600854600554420381610ece57fe5b049050858114610f0f5760405162461bcd60e51b8152600401808060200182810382526044815260200180611ba76044913960600191505060405180910390fd5b60005b87811015610f6d57818101600090815260026020526040812090610f3e838b038c63ffffffff61165516565b8254909150610f53908263ffffffff6113e216565b825560008781526001928301602052604090205501610f12565b50600b54610f81908963ffffffff6113e216565b600b5560408051898152602081018990528151869233927fe24d345c42b1d6b6d4bdaf4acbd768c1dfdfb0242ff6df221c68ce443b8c2d0d929081900390910190a3505050949350505050565b600a5481565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60045481565b60026020526000908152604090205481565b600b5481565b60008281526002602090815260408083208484526001019091529020545b92915050565b6003546001600160a01b03161561109c576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038b166110ef576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600f8811611144576040805162461bcd60e51b815260206004820152601860248201527f626174636854696d652073686f756c64206265203e2031350000000000000000604482015290519081900360640190fd5b60188611156111845760405162461bcd60e51b815260040180806020018281038252603a815260200180611b1b603a913960400191505060405180910390fd5b611194898963ffffffff6113e216565b8710156111d25760405162461bcd60e51b815260040180806020018281038252602a815260200180611b7d602a913960400191505060405180910390fd5b60648311156112125760405162461bcd60e51b81526004018080602001828103825260288152602001806119dd6028913960400191505060405180910390fd5b600980546001600160a01b038085166001600160a01b03199283161790925560038054928e1692909116919091179055600589905560048a90556006879055600786905560088890556103e8841061129b5760405162461bcd60e51b8152600401808060200182810382526021815260200180611a056021913960400191505060405180910390fd5b8985106112d95760405162461bcd60e51b815260040180806020018281038252602d815260200180611aa4602d913960400191505060405180910390fd5b6112e28561161d565b600c556113006001600160d81b0385166103e863ffffffff61183116565b600d55600e83905561131181611852565b5050505050505050505050565b6009546001600160a01b031681565b60008282600160281b5b811561137557816001166001141561135657611353818461137e565b90505b60019190911c9081156113705761136d838461137e565b92505b611337565b95945050505050565b60008282028284828161138d57fe5b04146113d8576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b60008282018381101561143c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600061143c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118ac565b611497836001600160a01b0316611943565b6114a057600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b1781529251815160009460609489169392918291908083835b6020831061154d5780518252601f19909201916020918201910161152e565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146115af576040519150601f19603f3d011682016040523d82523d6000602084013e6115b4565b606091505b5091509150816115c357600080fd5b805115806115f75750805160201480156115f7575080601f815181106115e557fe5b01602001516001600160f81b03191615155b61160057600080fd5b5050505050565b6000818310611616578161143c565b5090919050565b6001600160d81b038116600160281b02919050565b600081600160281b84028161164357fe5b049392505050565b600160281b900490565b60008261166457506000611038565b8282028284828161167157fe5b041461143c5760405162461bcd60e51b8152600401808060200182810382526021815260200180611a506021913960400191505060405180910390fd5b6116c0846001600160a01b0316611943565b6116c957600080fd5b60006060856001600160a01b0316604051806060016040528060258152602001611980602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b602083106117765780518252601f199092019160209182019101611757565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146117d8576040519150601f19603f3d011682016040523d82523d6000602084013e6117dd565b606091505b5091509150816117ec57600080fd5b80511580611820575080516020148015611820575080601f8151811061180e57fe5b01602001516001600160f81b03191615155b61182957600080fd5b505050505050565b600061143c6001600160d81b03808516600160281b90810291851602611632565b600054156118a7576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b6000818484111561193b5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156119005781810151838201526020016118e8565b50505050905090810190601f16801561192d5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906119775750808214155b94935050505056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536295f6261746368496e646578546f4c6f636b496e202b205f706572696f6420657863656564206d617820616c6c6f77656420626174636865735f62617463686573496e646578436170203e20424154434845535f494e4445585f484152444341505f726570526577617264436f6e7374422073686f756c64206265203c20313030306c6f636b696e6720706572696f64206578636565647320746865206d6178696d756d20616c6c6f776564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776c6f636b696e67206973206e6f7420656e61626c656420796574202869742073746172747320617420737461727454696d6529726570526577617264436f6e7374412073686f756c64206265203c205f72657075746174696f6e52657761726453656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173685f706572696f642065786365656420746865206d6178696d756d20616c6c6f7765646d61784c6f636b696e67426174636865732073686f756c64206265203c3d204d41585f4c4f434b494e475f424154434845535f484152444341505f657874656e64506572696f6420657863656564206d617820616c6c6f77656420626174636865735f72656465656d456e61626c6554696d65203e3d205f737461727454696d652b5f626174636854696d655f6261746368496e646578546f4c6f636b496e206d75737420626520746865206f6e6520636f72726573706f6e64696e6720746f207468652063757272656e74206f6e65a265627a7a723158204e0edaef0b80eda07b384d88ea8386e070dd7bcf86d2050bcdd444da84c9b6b964736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061014d5760003560e01c80636e57307b116100c3578063afe0e33c1161007c578063afe0e33c146102f7578063b32c4d8d146102ff578063c348a24b1461031c578063ef5a3e4a14610324578063f6a7400114610347578063fc0c546a146103b15761014d565b80636e57307b14610235578063746c0a601461026657806378e979251461026e5780637b3e46f8146102765780638db564c2146102a5578063a6e1a54c146102ad5761014d565b8063591451f711610115578063591451f7146101e95780635aef7de6146101f15780635b42f48b146102155780635eff3f291461021d578063696da921146102255780636c9d43b61461022d5761014d565b8063029489a9146101525780630357371d1461018157806303840c6c146101ad5780631e9a6950146101b55780633d1678f4146101e1575b600080fd5b61016f6004803603602081101561016857600080fd5b50356103b9565b60408051918252519081900360200190f35b61016f6004803603604081101561019757600080fd5b506001600160a01b0381351690602001356103ec565b61016f610556565b61016f600480360360408110156101cb57600080fd5b506001600160a01b03813516906020013561055c565b61016f610942565b61016f610948565b6101f961094e565b604080516001600160a01b039092168252519081900360200190f35b61016f61095d565b61016f610963565b61016f610968565b61016f61096e565b6102646004803603608081101561024b57600080fd5b5080359060208101359060408101359060600135610974565b005b61016f610ca0565b61016f610ca6565b61016f6004803603608081101561028c57600080fd5b5080359060208101359060408101359060600135610cac565b61016f610fce565b6102d9600480360360408110156102c357600080fd5b506001600160a01b038135169060200135610fd4565b60408051938452602084019290925282820152519081900360600190f35b61016f610ffc565b61016f6004803603602081101561031557600080fd5b5035611002565b61016f611014565b61016f6004803603604081101561033a57600080fd5b508035906020013561101a565b610264600480360361016081101561035e57600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c08201359160e0810135916101008201359161012081013590911690610140013561103e565b6101f961131e565b6000600e5482116103e7576103e4600c546103df84600d5461132d90919063ffffffff16565b61137e565b90505b919050565b6001600160a01b038216600090815260016020908152604080832084845290915281208054610462576040805162461bcd60e51b815260206004820152601860248201527f6e6f20616d6f756e74206c65667420746f20756e6c6f636b0000000000000000604482015290519081900360640190fd5b8054600082556008546002830154600184015492945061048992910263ffffffff6113e216565b42116104dc576040805162461bcd60e51b815260206004820152601e60248201527f6c6f636b696e6720706572696f64206973207374696c6c206163746976650000604482015290519081900360640190fd5b600b546104ef908363ffffffff61144316565b600b5560095461050f906001600160a01b0316858463ffffffff61148516565b6040805183815290516001600160a01b0386169185917fe332e9963bc980fb82ccd3e7e181d76bddde349eec46b4ba393f3444529cd17f9181900360200190a35092915050565b600d5481565b600060065442116105ad576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038316600090815260016020818152604080842086855290915290912090810154610622576040805162461bcd60e51b815260206004820152601960248201527817db1bd8dada5b99d25908191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b60006008546005548360010154038161063757fe5b049050600060085460055442038161064b57fe5b049050600061067761066a8560020154856113e290919063ffffffff16565b839063ffffffff61160716565b90505b8083101561076f5760008381526002602090815260408083208984526001810190925290912054801561076257600088815260018301602052604081208190556106c3866103b9565b905060006106d96106d38461161d565b8361137e565b905060006106f3826106ee876000015461161d565b611632565b90506107058a8263ffffffff6113e216565b99508b6001600160a01b03168b7facf9103edd7d12d169ab5037ce643ee56e59d5986362a9e903d86f2544fefcaa61073c8461164b565b604080516001600160d81b03929092168252602082018d90528051918290030190a35050505b505060019092019161067a565b6107788561164b565b6001600160d81b03169450600085116107d8576040805162461bcd60e51b815260206004820152601960248201527f72657075746174696f6e20746f2072656465656d206973203000000000000000604482015290519081900360640190fd5b6004546107eb908663ffffffff61144316565b600490815560035460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561083157600080fd5b505afa158015610845573d6000803e3d6000fd5b505050506040513d602081101561085b57600080fd5b50516003546040805163757cca5960e11b8152600481018990526001600160a01b038b8116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b1580156108bb57600080fd5b505af11580156108cf573d6000803e3d6000fd5b505050506040513d60208110156108e557600080fd5b5051610938576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b5050505092915050565b60065481565b600c5481565b6003546001600160a01b031681565b60075481565b601881565b60005490565b60085481565b8060005481146109b55760405162461bcd60e51b8152600401808060200182810382526028815260200180611ad16028913960400191505060405180910390fd5b33600090815260016020818152604080842087855290915290912090810154610a21576040805162461bcd60e51b815260206004820152601960248201527817db1bd8dada5b99d25908191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b6000610a6f86600854610a5b600554610a4f60085488600201540288600101546113e290919063ffffffff16565b9063ffffffff61144316565b81610a6257fe5b049063ffffffff61144316565b90506000610a83828963ffffffff6113e216565b9050600754811115610ac65760405162461bcd60e51b815260040180806020018281038252602a815260200180611a26602a913960400191505060405180910390fd5b60008811610b1b576040805162461bcd60e51b815260206004820152601960248201527f5f657874656e64506572696f64206d757374206265203e203000000000000000604482015290519081900360640190fd5b600e54610b2e888363ffffffff6113e216565b1115610b6b5760405162461bcd60e51b8152600401808060200182810382526028815260200180611b556028913960400191505060405180910390fd5b6000600854600554420381610b7c57fe5b049050878114610bcb576040805162461bcd60e51b81526020600482015260156024820152746c6f636b696e67206973206e6f742061637469766560581b604482015290519081900360640190fd5b60005b82811015610c435781810160009081526002602052604081208654909190610bff908487039063ffffffff61165516565b60008b81526001840160205260409020548354919250610c2991610a4f908463ffffffff6113e216565b825560008a81526001928301602052604090205501610bce565b506002840154610c59908a63ffffffff6113e216565b6002850155604080518a81529051889133917fbf1612e584a5355572c05134f25811613efa611499c6597f74d7dde53adc104c9181900360200190a3505050505050505050565b600e5481565b60055481565b6000816000548114610cef5760405162461bcd60e51b8152600401808060200182810382526028815260200180611ad16028913960400191505060405180910390fd5b60008611610d3c576040805162461bcd60e51b815260206004820152601560248201527405f616d6f756e742073686f756c64206265203e203605c1b604482015290519081900360640190fd5b600554421015610d7d5760405162461bcd60e51b8152600401808060200182810382526033815260200180611a716033913960400191505060405180910390fd5b600754851115610dbe5760405162461bcd60e51b8152600401808060200182810382526022815260200180611af96022913960400191505060405180910390fd5b60008511610e09576040805162461bcd60e51b815260206004820152601360248201527205f706572696f64206d757374206265203e203606c1b604482015290519081900360640190fd5b600e54610e1c858763ffffffff6113e216565b1115610e595760405162461bcd60e51b81526004018080602001828103825260388152602001806119a56038913960400191505060405180910390fd5b600a54610e6d90600163ffffffff6113e216565b600a81905533600081815260016020818152604080842086855290915290912089815560028101899055429181019190915560095492945091610ebd916001600160a01b0390911690308a6116ae565b6000600854600554420381610ece57fe5b049050858114610f0f5760405162461bcd60e51b8152600401808060200182810382526044815260200180611ba76044913960600191505060405180910390fd5b60005b87811015610f6d57818101600090815260026020526040812090610f3e838b038c63ffffffff61165516565b8254909150610f53908263ffffffff6113e216565b825560008781526001928301602052604090205501610f12565b50600b54610f81908963ffffffff6113e216565b600b5560408051898152602081018990528151869233927fe24d345c42b1d6b6d4bdaf4acbd768c1dfdfb0242ff6df221c68ce443b8c2d0d929081900390910190a3505050949350505050565b600a5481565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60045481565b60026020526000908152604090205481565b600b5481565b60008281526002602090815260408083208484526001019091529020545b92915050565b6003546001600160a01b03161561109c576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038b166110ef576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600f8811611144576040805162461bcd60e51b815260206004820152601860248201527f626174636854696d652073686f756c64206265203e2031350000000000000000604482015290519081900360640190fd5b60188611156111845760405162461bcd60e51b815260040180806020018281038252603a815260200180611b1b603a913960400191505060405180910390fd5b611194898963ffffffff6113e216565b8710156111d25760405162461bcd60e51b815260040180806020018281038252602a815260200180611b7d602a913960400191505060405180910390fd5b60648311156112125760405162461bcd60e51b81526004018080602001828103825260288152602001806119dd6028913960400191505060405180910390fd5b600980546001600160a01b038085166001600160a01b03199283161790925560038054928e1692909116919091179055600589905560048a90556006879055600786905560088890556103e8841061129b5760405162461bcd60e51b8152600401808060200182810382526021815260200180611a056021913960400191505060405180910390fd5b8985106112d95760405162461bcd60e51b815260040180806020018281038252602d815260200180611aa4602d913960400191505060405180910390fd5b6112e28561161d565b600c556113006001600160d81b0385166103e863ffffffff61183116565b600d55600e83905561131181611852565b5050505050505050505050565b6009546001600160a01b031681565b60008282600160281b5b811561137557816001166001141561135657611353818461137e565b90505b60019190911c9081156113705761136d838461137e565b92505b611337565b95945050505050565b60008282028284828161138d57fe5b04146113d8576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b60008282018381101561143c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600061143c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118ac565b611497836001600160a01b0316611943565b6114a057600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b1781529251815160009460609489169392918291908083835b6020831061154d5780518252601f19909201916020918201910161152e565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146115af576040519150601f19603f3d011682016040523d82523d6000602084013e6115b4565b606091505b5091509150816115c357600080fd5b805115806115f75750805160201480156115f7575080601f815181106115e557fe5b01602001516001600160f81b03191615155b61160057600080fd5b5050505050565b6000818310611616578161143c565b5090919050565b6001600160d81b038116600160281b02919050565b600081600160281b84028161164357fe5b049392505050565b600160281b900490565b60008261166457506000611038565b8282028284828161167157fe5b041461143c5760405162461bcd60e51b8152600401808060200182810382526021815260200180611a506021913960400191505060405180910390fd5b6116c0846001600160a01b0316611943565b6116c957600080fd5b60006060856001600160a01b0316604051806060016040528060258152602001611980602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b602083106117765780518252601f199092019160209182019101611757565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146117d8576040519150601f19603f3d011682016040523d82523d6000602084013e6117dd565b606091505b5091509150816117ec57600080fd5b80511580611820575080516020148015611820575080601f8151811061180e57fe5b01602001516001600160f81b03191615155b61182957600080fd5b505050505050565b600061143c6001600160d81b03808516600160281b90810291851602611632565b600054156118a7576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b6000818484111561193b5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156119005781810151838201526020016118e8565b50505050905090810190601f16801561192d5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906119775750808214155b94935050505056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536295f6261746368496e646578546f4c6f636b496e202b205f706572696f6420657863656564206d617820616c6c6f77656420626174636865735f62617463686573496e646578436170203e20424154434845535f494e4445585f484152444341505f726570526577617264436f6e7374422073686f756c64206265203c20313030306c6f636b696e6720706572696f64206578636565647320746865206d6178696d756d20616c6c6f776564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776c6f636b696e67206973206e6f7420656e61626c656420796574202869742073746172747320617420737461727454696d6529726570526577617264436f6e7374412073686f756c64206265203c205f72657075746174696f6e52657761726453656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173685f706572696f642065786365656420746865206d6178696d756d20616c6c6f7765646d61784c6f636b696e67426174636865732073686f756c64206265203c3d204d41585f4c4f434b494e475f424154434845535f484152444341505f657874656e64506572696f6420657863656564206d617820616c6c6f77656420626174636865735f72656465656d456e61626c6554696d65203e3d205f737461727454696d652b5f626174636854696d655f6261746368496e646578546f4c6f636b496e206d75737420626520746865206f6e6520636f72726573706f6e64696e6720746f207468652063757272656e74206f6e65a265627a7a723158204e0edaef0b80eda07b384d88ea8386e070dd7bcf86d2050bcdd444da84c9b6b964736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ContributionReward.json b/contracts/0.0.1-rc.53/ContributionReward.json new file mode 100644 index 00000000..af7a88de --- /dev/null +++ b/contracts/0.0.1-rc.53/ContributionReward.json @@ -0,0 +1,949 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ContributionReward", + "sourceName": "contracts/universalSchemes/ContributionReward.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_reputationChange", + "type": "int256" + }, + { + "indexed": false, + "internalType": "uint256[5]", + "name": "_rewards", + "type": "uint256[5]" + }, + { + "indexed": false, + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "NewContributionProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemEther", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemExternalToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemNativeToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_amount", + "type": "int256" + } + ], + "name": "RedeemReputation", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_voteApproveParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_intVote", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_redeemType", + "type": "uint256" + } + ], + "name": "getPeriodsToPay", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "getProposalEthReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "getProposalExecutionTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "getProposalExternalToken", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "getProposalExternalTokenReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_redeemType", + "type": "uint256" + } + ], + "name": "getRedeemedPeriods", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationsProposals", + "outputs": [ + { + "internalType": "uint256", + "name": "nativeTokenReward", + "type": "uint256" + }, + { + "internalType": "int256", + "name": "reputationChange", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "ethReward", + "type": "uint256" + }, + { + "internalType": "contract IERC20", + "name": "externalToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "externalTokenReward", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "periodLength", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "numberOfPeriods", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "executionTime", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "voteApproveParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "intVote", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "internalType": "int256", + "name": "_reputationChange", + "type": "int256" + }, + { + "internalType": "uint256[5]", + "name": "_rewards", + "type": "uint256[5]" + }, + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "proposeContributionReward", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "bool[4]", + "name": "_whatToRedeem", + "type": "bool[4]" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "int256", + "name": "reputationReward", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "nativeTokenReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "etherReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "externalTokenReward", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "redeemEther", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "redeemExternalToken", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "redeemNativeToken", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "redeemReputation", + "outputs": [ + { + "internalType": "int256", + "name": "reputation", + "type": "int256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_voteApproveParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_intVote", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061326e806100206000396000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c80639d4c162d116100c3578063d29b5d2f1161007c578063d29b5d2f146105d2578063d58bf09a14610604578063e074ee551461068d578063e63b681e146106bf578063f70bbb9a146106eb578063f81f8bf61461073357610158565b80639d4c162d146104b8578063b551c373146104ef578063b7c251c31461050c578063bb1c93511461053e578063bea75f281461056a578063cd3ce306146105a657610158565b80636046f71d116101155780636046f71d146102dd57806360bdbb3f1461030957806368e14dac146103355780636b8eb40314610361578063896488b91461038d5780639588378e1461048c57610158565b8063025068041461015d57806306e3a9781461019b5780630d5e1e821461021b5780631c3a5713146102595780632453732a146102855780633a256daa146102b1575b600080fd5b61017a6004803603602081101561017357600080fd5b5035610765565b604080519283526001600160a01b0390911660208301528051918290030190f35b6101c7600480360360408110156101b157600080fd5b506001600160a01b038135169060200135610787565b60408051998a5260208a0198909852888801969096526001600160a01b0394851660608901526080880193909352921660a086015260c085019190915260e084015261010083015251908190036101200190f35b6102476004803603604081101561023157600080fd5b50803590602001356001600160a01b03166107e5565b60408051918252519081900360200190f35b6102476004803603604081101561026f57600080fd5b50803590602001356001600160a01b0316610c5c565b6102476004803603604081101561029b57600080fd5b50803590602001356001600160a01b0316610c8a565b610247600480360360408110156102c757600080fd5b50803590602001356001600160a01b0316610cc9565b610247600480360360408110156102f357600080fd5b50803590602001356001600160a01b0316610cf1565b61017a6004803603604081101561031f57600080fd5b506001600160a01b038135169060200135610d19565b6102476004803603604081101561034b57600080fd5b50803590602001356001600160a01b0316610d43565b6102476004803603604081101561037757600080fd5b506001600160a01b038135169060200135610d88565b61024760048036036101408110156103a457600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156103cf57600080fd5b8201836020820111156103e157600080fd5b8035906020019184600183028401116401000000008311171561040357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805160a081810190925293968535969095909460c0820194509250602001906005908390839080828437600092019190915250919450505080356001600160a01b03908116925060209091013516610e46565b610247600480360360408110156104a257600080fd5b506001600160a01b03813516906020013561123c565b6104db600480360360408110156104ce57600080fd5b50803590602001356114ce565b604080519115158252519081900360200190f35b6102476004803603602081101561050557600080fd5b50356116d5565b6102476004803603606081101561052257600080fd5b508035906001600160a01b03602082013516906040013561195d565b6102476004803603604081101561055457600080fd5b50803590602001356001600160a01b031661199a565b6104db6004803603608081101561058057600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611ca4565b610247600480360360408110156105bc57600080fd5b50803590602001356001600160a01b0316611e46565b6104db600480360360608110156105e857600080fd5b508035906001600160a01b03602082013516906040013561215d565b610667600480360360c081101561061a57600080fd5b60408051608081810183528435946001600160a01b0360208201351694810193909260c0840192909184019060049083908390808284376000920191909152509194506122f69350505050565b604080519485526020850193909352838301919091526060830152519081900360800190f35b610247600480360360608110156106a357600080fd5b508035906001600160a01b036020820135169060400135612362565b610247600480360360408110156106d557600080fd5b50803590602001356001600160a01b0316612540565b6107176004803603604081101561070157600080fd5b50803590602001356001600160a01b031661287b565b604080516001600160a01b039092168252519081900360200190f35b6104db6004803603606081101561074957600080fd5b508035906001600160a01b0360208201351690604001356128a9565b600260205260009081526040902080546001909101546001600160a01b031682565b60016020818152600093845260408085209091529183529120805491810154600282015460038301546004840154600585015460068601546007870154600890970154959694956001600160a01b0394851695939490921692909189565b60006107ef612f98565b6001600160a01b038381166000908152600160208181526040808420898552825292839020835161014081018552815481529281015491830191909152600281015482840152600381015484166060830152600480820154608080850191909152600583015490951660a0840152600682015460c0840152600782015460e0840152600882015461010084015283519485019384905291939092610120850192600985019182845b81548152602001906001019080831161089757505050919092525050506001600160a01b0384166000908152600160209081526040808320888452909152902060088101549192509061091b5760405162461bcd60e51b81526004018080602001828103825260228152602001806131436022913960400191505060405180910390fd5b600061092986866000612362565b600060018401819055602085015182029550909150841315610a8c57846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561097e57600080fd5b505afa158015610992573d6000803e3d6000fd5b505050506040513d60208110156109a857600080fd5b505160a08401516040805163757cca5960e11b8152600481018890526001600160a01b03928316602482015288831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b158015610a0a57600080fd5b505af1158015610a1e573d6000803e3d6000fd5b505050506040513d6020811015610a3457600080fd5b5051610a87576040805162461bcd60e51b815260206004820152601960248201527f6661696c656420746f206d696e742072657075746174696f6e00000000000000604482015290519081900360640190fd5b610bda565b6000841215610bda57846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ace57600080fd5b505afa158015610ae2573d6000803e3d6000fd5b505050506040513d6020811015610af857600080fd5b505160a084015160408051630dd29a4f60e31b8152600088810360048301526001600160a01b039384166024830152898416604483015291519290931692636e94d2789260648083019360209383900390910190829087803b158015610b5d57600080fd5b505af1158015610b71573d6000803e3d6000fd5b505050506040513d6020811015610b8757600080fd5b5051610bda576040805162461bcd60e51b815260206004820152601960248201527f6661696c656420746f206275726e2072657075746174696f6e00000000000000604482015290519081900360640190fd5b8315610c4957610bf9816009840160005b01549063ffffffff612a0a16565b600983015560a08301516040805186815290516001600160a01b03928316928992908916917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee9181900360200190a45b5060209091015160019091015592915050565b6001600160a01b03811660009081526001602090815260408083208584529091529020600401545b92915050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b6001600160a01b03166000908152600160209081526040808320938352929052206008015490565b6001600160a01b03166000908152600160209081526040808320938352929052206002015490565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b600080610d508484610c8a565b600081815260026020526040902085815560010180546001600160a01b0386166001600160a01b031990911617905591505092915050565b336000908152602081815260408083208484529091528120600101546001600160a01b031680610dbc576000915050610c84565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610e1257600080fd5b505afa158015610e26573d6000803e3d6000fd5b505050506040513d6020811015610e3c57600080fd5b5051949350505050565b6000610e528585612a64565b610e5a613002565b60026000610e678a612c55565b8152602080820192909252604090810160009081208251808401845281548082526001909201546001600160a01b039081168287018190528551634439bdaf60e11b8152600260048201526024810194909452336044850152908e166064840152935190955091936388737b5e9260848084019382900301818787803b158015610ef057600080fd5b505af1158015610f04573d6000803e3d6000fd5b505050506040513d6020811015610f1a57600080fd5b50519050836001600160a01b038116610f305750335b610f38612f98565b60408051610140810182528951815260208082018c90528a0151818301526001600160a01b03898116606080840191909152928b01516080830152841660a08201529089015160c082015260e08101896004602002015181526020016000815260200160405180608001604052806000815260200160008152602001600081526020016000815250815250905080600160008d6001600160a01b03166001600160a01b03168152602001908152602001600020600085815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506080820151816004015560a08201518160050160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060c0820151816006015560e082015181600701556101008201518160080155610120820151816009019060046110b5929190613019565b5090505083602001516001600160a01b0316838c6001600160a01b03167fcbdcbf9aaeb1e9eff0f75d74e1c1e044bc87110164baec7d18d825b0450d97df8d8d8d8d89604051808060200186815260200185600560200280838360005b8381101561112a578181015183820152602001611112565b50505050905001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828103825287818151815260200191508051906020019080838360005b8381101561119657818101518382015260200161117e565b50505050905090810190601f1680156111c35780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a450506040805180820182524381526001600160a01b039a8b166020808301918252948501518c166000908152808652838120858252909552919093209251835551600190920180546001600160a01b0319169290991691909117909755509495945050505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561129657600080fd5b505afa1580156112aa573d6000803e3d6000fd5b505050506040513d60208110156112c057600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561131257600080fd5b505afa158015611326573d6000803e3d6000fd5b505050506040513d602081101561133c57600080fd5b505161138a576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b611392613002565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526113d95760009350506114c6565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561141657600080fd5b505afa15801561142a573d6000803e3d6000fd5b505050506040513d602081101561144057600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b15801561149657600080fd5b505afa1580156114aa573d6000803e3d6000fd5b505050506040513d60208110156114c057600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b031661153b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b611543613002565b5033600090815260208181526040808320878452825280832081518083018352815481526001918201546001600160a01b0316818501819052855290835281842088855290925290912060080154156115da576040805162461bcd60e51b815260206004820152601460248201527363616e6e6f74206578656375746520747769636560601b604482015290519081900360640190fd5b6020808201516001600160a01b03908116600090815260018352604080822089835290935291909120600501541661164f576040805162461bcd60e51b81526020600482015260136024820152721c1c9bdc1bdcd85b081b5d5cdd08195e1a5cdd606a1b604482015290519081900360640190fd5b8360011415611684576020808201516001600160a01b0316600090815260018252604080822088835290925220426008909101555b8481602001516001600160a01b03167fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0866040518082815260200191505060405180910390a3506001949350505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561172f57600080fd5b505afa158015611743573d6000803e3d6000fd5b505050506040513d602081101561175957600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156117ab57600080fd5b505afa1580156117bf573d6000803e3d6000fd5b505050506040513d60208110156117d557600080fd5b5051611823576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61182b613002565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052611872576000935050611956565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156118af57600080fd5b505afa1580156118c3573d6000803e3d6000fd5b505050506040513d60208110156118d957600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b15801561192657600080fd5b505afa15801561193a573d6000803e3d6000fd5b505050506040513d602081101561195057600080fd5b50519350505b5050919050565b6001600160a01b03821660009081526001602090815260408083208684529091528120600901826004811061198e57fe5b015490505b9392505050565b60006119a4612f98565b6001600160a01b038381166000908152600160208181526040808420898552825292839020835161014081018552815481529281015491830191909152600281015482840152600381015484166060830152600480820154608080850191909152600583015490951660a0840152600682015460c0840152600782015460e0840152600882015461010084015283519485019384905291939092610120850192600985019182845b815481526020019060010190808311611a4c57505050919092525050506001600160a01b03841660009081526001602090815260408083208884529091529020600881015491925090611ad05760405162461bcd60e51b81526004018080602001828103825260228152602001806131436022913960400191505060405180910390fd5b6000611ade86866001612362565b600083558351909150611af890829063ffffffff612e6b16565b93508315611c9957846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b3957600080fd5b505afa158015611b4d573d6000803e3d6000fd5b505050506040513d6020811015611b6357600080fd5b505160a084015160408051633203f21960e11b8152600481018890526001600160a01b039283166024820152888316604482015290519190921691636407e4329160648083019260209291908290030181600087803b158015611bc557600080fd5b505af1158015611bd9573d6000803e3d6000fd5b505050506040513d6020811015611bef57600080fd5b5051611c3a576040805162461bcd60e51b81526020600482015260156024820152746661696c656420746f206d696e7420746f6b656e7360581b604482015290519081900360640190fd5b611c4981600984016001610beb565b600a83015560a08301516040805186815290516001600160a01b03928316928992908916917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e9181900360200190a45b509051905592915050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611d11576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611d45576000925050611e3d565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611d7e57600080fd5b505afa158015611d92573d6000803e3d6000fd5b505050506040513d6020811015611da857600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b158015611e0d57600080fd5b505af1158015611e21573d6000803e3d6000fd5b505050506040513d6020811015611e3757600080fd5b50519250505b50949350505050565b6000611e50612f98565b6001600160a01b038381166000908152600160208181526040808420898552825292839020835161014081018552815481529281015491830191909152600281015482840152600381015484166060830152600480820154608080850191909152600583015490951660a0840152600682015460c0840152600782015460e0840152600882015461010084015283519485019384905291939092610120850192600985019182845b815481526020019060010190808311611ef857505050919092525050506001600160a01b03841660009081526001602090815260408083208884529091529020600881015491925090611f7c5760405162461bcd60e51b81526004018080602001828103825260228152602001806131436022913960400191505060405180910390fd5b6000611f8a86866002612362565b600060028401556040840151909150611faa90829063ffffffff612e6b16565b9350831561214a57846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611feb57600080fd5b505afa158015611fff573d6000803e3d6000fd5b505050506040513d602081101561201557600080fd5b505160a0840151604080516331a4b2ed60e11b8152600481018890526001600160a01b03928316602482015288831660448201529051919092169163634965da9160648083019260209291908290030181600087803b15801561207757600080fd5b505af115801561208b573d6000803e3d6000fd5b505050506040513d60208110156120a157600080fd5b50516120eb576040805162461bcd60e51b81526020600482015260146024820152733330b4b632b2103a379039b2b7321032ba3432b960611b604482015290519081900360640190fd5b6120fa81600984016002610beb565b600b83015560a08301516040805186815290516001600160a01b03928316928992908916917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b879181900360200190a45b5060409091015160029091015592915050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166121ca576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806121fe5760009250506122ee565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561223757600080fd5b505afa15801561224b573d6000803e3d6000fd5b505050506040513d602081101561226157600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b1580156122be57600080fd5b505af11580156122d2573d6000803e3d6000fd5b505050506040513d60208110156122e857600080fd5b50519250505b509392505050565b600080808084816020020151156123145761231187876107e5565b93505b60208501511561232b57612328878761199a565b92505b6040850151156123425761233f8787611e46565b91505b606085015115612359576123568787612540565b90505b93509350935093565b600060038211156123a45760405162461bcd60e51b81526004018080602001828103825260268152602001806131e06026913960400191505060405180910390fd5b6123ac612f98565b6001600160a01b0384811660009081526001602081815260408084208a8552825292839020835161014081018552815481529281015491830191909152600281015482840152600381015484166060830152600480820154608080850191909152600583015490951660a0840152600682015460c0840152600782015460e0840152600882015461010084015283519485019384905291939092610120850192600985019182845b8154815260200190600101908083116124545750505050508152505090508061010001516000141561248a576000915050611993565b60c0810151600090156124be5760c08201516101008301516124b390429063ffffffff612ec416565b816124ba57fe5b0490505b60008260c00151600014806124d757508260e001518210155b1561250d5761250683610120015186600481106124f057fe5b602002015160e08501519063ffffffff612ec416565b9050612536565b612533836101200151866004811061252157fe5b6020020151839063ffffffff612ec416565b90505b9695505050505050565b600061254a612f98565b6001600160a01b038381166000908152600160208181526040808420898552825292839020835161014081018552815481529281015491830191909152600281015482840152600381015484166060830152600480820154608080850191909152600583015490951660a0840152600682015460c0840152600782015460e0840152600882015461010084015283519485019384905291939092610120850192600985019182845b8154815260200190600101908083116125f257505050919092525050506001600160a01b038416600090815260016020908152604080832088845290915290206008810154919250906126765760405162461bcd60e51b81526004018080602001828103825260228152602001806131436022913960400191505060405180910390fd5b600061268486866003612362565b6000600484015560038301549091506001600160a01b0316158015906126ae575060008360800151115b156128685760808301516126c990829063ffffffff612e6b16565b9350831561286857846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561270a57600080fd5b505afa15801561271e573d6000803e3d6000fd5b505050506040513d602081101561273457600080fd5b5051606084015160a08501516040805163b9a04cdd60e01b81526001600160a01b039384166004820152918316602483015260448201889052888316606483015251919092169163b9a04cdd9160848083019260209291908290030181600087803b1580156127a257600080fd5b505af11580156127b6573d6000803e3d6000fd5b505050506040513d60208110156127cc57600080fd5b50516128095760405162461bcd60e51b81526004018080602001828103825260218152602001806130936021913960400191505060405180910390fd5b61281881600984016003610beb565b600c83015560a08301516040805186815290516001600160a01b03928316928992908916917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd19883749181900360200190a45b5060809091015160049091015592915050565b6001600160a01b03908116600090815260016020908152604080832094835293905291909120600301541690565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316612916576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061294a5760009250506122ee565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561298357600080fd5b505afa158015612997573d6000803e3d6000fd5b505050506040513d60208110156129ad57600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b1580156122be57600080fd5b600082820183811015611993576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6060810151151580612a7a575060808101516001145b612ab55760405162461bcd60e51b81526004018080602001828103825260348152602001806130b46034913960400191505060405180910390fd5b608081015115612c51576080810151600019148015612ad7575081600160ff1b145b15612b135760405162461bcd60e51b81526004018080602001828103825260318152602001806131af6031913960400191505060405180910390fd5b6080810151829080820281612b2457fe5b0514612b615760405162461bcd60e51b81526004018080602001828103825260308152602001806131136030913960400191505060405180910390fd5b8051608082015180820281612b7257fe5b0414612baf5760405162461bcd60e51b815260040180806020018281038252602b8152602001806130e8602b913960400191505060405180910390fd5b6020810151608082015180820281612bc357fe5b0414612c005760405162461bcd60e51b81526004018080602001828103825260298152602001806131656029913960400191505060405180910390fd5b6040810151608082015180820281612c1457fe5b0414612c515760405162461bcd60e51b81526004018080602001828103825260348152602001806132066034913960400191505060405180910390fd5b5050565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612c9057600080fd5b505afa158015612ca4573d6000803e3d6000fd5b505050506040513d6020811015612cba57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015612d0c57600080fd5b505afa158015612d20573d6000803e3d6000fd5b505050506040513d6020811015612d3657600080fd5b5051612d84576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612dbd57600080fd5b505afa158015612dd1573d6000803e3d6000fd5b505050506040513d6020811015612de757600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b158015612e3957600080fd5b505afa158015612e4d573d6000803e3d6000fd5b505050506040513d6020811015612e6357600080fd5b505192915050565b600082612e7a57506000610c84565b82820282848281612e8757fe5b04146119935760405162461bcd60e51b815260040180806020018281038252602181526020018061318e6021913960400191505060405180910390fd5b600061199383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060008184841115612f905760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612f55578181015183820152602001612f3d565b50505050905090810190601f168015612f825780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180610140016040528060008152602001600081526020016000815260200160006001600160a01b031681526020016000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001612ffd613057565b905290565b604080518082019091526000808252602082015290565b8260048101928215613047579160200282015b8281111561304757825182559160200191906001019061302c565b50613053929150613075565b5090565b60405180608001604052806004906020820280388339509192915050565b61308f91905b80821115613053576000815560010161307b565b9056fe6661696c656420746f207472616e736665722065787465726e616c20746f6b656e706572696f644c656e67746820657175616c20302072657175697265206e756d6265724f66506572696f647320746f20626520316e756d6265724f66506572696f6473202a20746f6b656e5265776172642077696c6c206f766572666c6f776e756d6265724f66506572696f6473202a2072657075746174696f6e4368616e67652077696c6c206f766572666c6f7763616e6e6f74206578656375746520756e617070726f7665642070726f706f73616c6e756d6265724f66506572696f6473202a206574685265776172642077696c6c206f766572666c6f77536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776e756d6265724f66506572696f6473202a205f72657075746174696f6e4368616e67652077696c6c206f766572666c6f7773686f756c6420626520696e207468652072656465656d6564506572696f64732072616e67656e756d6265724f66506572696f6473202a207465787465726e616c546f6b656e5265776172642077696c6c206f766572666c6f77a265627a7a723158201e66a5bb5764979861159379ae20402a71d8cc4170f7e8b667a5c45753c4e4f764736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101585760003560e01c80639d4c162d116100c3578063d29b5d2f1161007c578063d29b5d2f146105d2578063d58bf09a14610604578063e074ee551461068d578063e63b681e146106bf578063f70bbb9a146106eb578063f81f8bf61461073357610158565b80639d4c162d146104b8578063b551c373146104ef578063b7c251c31461050c578063bb1c93511461053e578063bea75f281461056a578063cd3ce306146105a657610158565b80636046f71d116101155780636046f71d146102dd57806360bdbb3f1461030957806368e14dac146103355780636b8eb40314610361578063896488b91461038d5780639588378e1461048c57610158565b8063025068041461015d57806306e3a9781461019b5780630d5e1e821461021b5780631c3a5713146102595780632453732a146102855780633a256daa146102b1575b600080fd5b61017a6004803603602081101561017357600080fd5b5035610765565b604080519283526001600160a01b0390911660208301528051918290030190f35b6101c7600480360360408110156101b157600080fd5b506001600160a01b038135169060200135610787565b60408051998a5260208a0198909852888801969096526001600160a01b0394851660608901526080880193909352921660a086015260c085019190915260e084015261010083015251908190036101200190f35b6102476004803603604081101561023157600080fd5b50803590602001356001600160a01b03166107e5565b60408051918252519081900360200190f35b6102476004803603604081101561026f57600080fd5b50803590602001356001600160a01b0316610c5c565b6102476004803603604081101561029b57600080fd5b50803590602001356001600160a01b0316610c8a565b610247600480360360408110156102c757600080fd5b50803590602001356001600160a01b0316610cc9565b610247600480360360408110156102f357600080fd5b50803590602001356001600160a01b0316610cf1565b61017a6004803603604081101561031f57600080fd5b506001600160a01b038135169060200135610d19565b6102476004803603604081101561034b57600080fd5b50803590602001356001600160a01b0316610d43565b6102476004803603604081101561037757600080fd5b506001600160a01b038135169060200135610d88565b61024760048036036101408110156103a457600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156103cf57600080fd5b8201836020820111156103e157600080fd5b8035906020019184600183028401116401000000008311171561040357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805160a081810190925293968535969095909460c0820194509250602001906005908390839080828437600092019190915250919450505080356001600160a01b03908116925060209091013516610e46565b610247600480360360408110156104a257600080fd5b506001600160a01b03813516906020013561123c565b6104db600480360360408110156104ce57600080fd5b50803590602001356114ce565b604080519115158252519081900360200190f35b6102476004803603602081101561050557600080fd5b50356116d5565b6102476004803603606081101561052257600080fd5b508035906001600160a01b03602082013516906040013561195d565b6102476004803603604081101561055457600080fd5b50803590602001356001600160a01b031661199a565b6104db6004803603608081101561058057600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611ca4565b610247600480360360408110156105bc57600080fd5b50803590602001356001600160a01b0316611e46565b6104db600480360360608110156105e857600080fd5b508035906001600160a01b03602082013516906040013561215d565b610667600480360360c081101561061a57600080fd5b60408051608081810183528435946001600160a01b0360208201351694810193909260c0840192909184019060049083908390808284376000920191909152509194506122f69350505050565b604080519485526020850193909352838301919091526060830152519081900360800190f35b610247600480360360608110156106a357600080fd5b508035906001600160a01b036020820135169060400135612362565b610247600480360360408110156106d557600080fd5b50803590602001356001600160a01b0316612540565b6107176004803603604081101561070157600080fd5b50803590602001356001600160a01b031661287b565b604080516001600160a01b039092168252519081900360200190f35b6104db6004803603606081101561074957600080fd5b508035906001600160a01b0360208201351690604001356128a9565b600260205260009081526040902080546001909101546001600160a01b031682565b60016020818152600093845260408085209091529183529120805491810154600282015460038301546004840154600585015460068601546007870154600890970154959694956001600160a01b0394851695939490921692909189565b60006107ef612f98565b6001600160a01b038381166000908152600160208181526040808420898552825292839020835161014081018552815481529281015491830191909152600281015482840152600381015484166060830152600480820154608080850191909152600583015490951660a0840152600682015460c0840152600782015460e0840152600882015461010084015283519485019384905291939092610120850192600985019182845b81548152602001906001019080831161089757505050919092525050506001600160a01b0384166000908152600160209081526040808320888452909152902060088101549192509061091b5760405162461bcd60e51b81526004018080602001828103825260228152602001806131436022913960400191505060405180910390fd5b600061092986866000612362565b600060018401819055602085015182029550909150841315610a8c57846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561097e57600080fd5b505afa158015610992573d6000803e3d6000fd5b505050506040513d60208110156109a857600080fd5b505160a08401516040805163757cca5960e11b8152600481018890526001600160a01b03928316602482015288831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b158015610a0a57600080fd5b505af1158015610a1e573d6000803e3d6000fd5b505050506040513d6020811015610a3457600080fd5b5051610a87576040805162461bcd60e51b815260206004820152601960248201527f6661696c656420746f206d696e742072657075746174696f6e00000000000000604482015290519081900360640190fd5b610bda565b6000841215610bda57846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ace57600080fd5b505afa158015610ae2573d6000803e3d6000fd5b505050506040513d6020811015610af857600080fd5b505160a084015160408051630dd29a4f60e31b8152600088810360048301526001600160a01b039384166024830152898416604483015291519290931692636e94d2789260648083019360209383900390910190829087803b158015610b5d57600080fd5b505af1158015610b71573d6000803e3d6000fd5b505050506040513d6020811015610b8757600080fd5b5051610bda576040805162461bcd60e51b815260206004820152601960248201527f6661696c656420746f206275726e2072657075746174696f6e00000000000000604482015290519081900360640190fd5b8315610c4957610bf9816009840160005b01549063ffffffff612a0a16565b600983015560a08301516040805186815290516001600160a01b03928316928992908916917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee9181900360200190a45b5060209091015160019091015592915050565b6001600160a01b03811660009081526001602090815260408083208584529091529020600401545b92915050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b6001600160a01b03166000908152600160209081526040808320938352929052206008015490565b6001600160a01b03166000908152600160209081526040808320938352929052206002015490565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b600080610d508484610c8a565b600081815260026020526040902085815560010180546001600160a01b0386166001600160a01b031990911617905591505092915050565b336000908152602081815260408083208484529091528120600101546001600160a01b031680610dbc576000915050610c84565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610e1257600080fd5b505afa158015610e26573d6000803e3d6000fd5b505050506040513d6020811015610e3c57600080fd5b5051949350505050565b6000610e528585612a64565b610e5a613002565b60026000610e678a612c55565b8152602080820192909252604090810160009081208251808401845281548082526001909201546001600160a01b039081168287018190528551634439bdaf60e11b8152600260048201526024810194909452336044850152908e166064840152935190955091936388737b5e9260848084019382900301818787803b158015610ef057600080fd5b505af1158015610f04573d6000803e3d6000fd5b505050506040513d6020811015610f1a57600080fd5b50519050836001600160a01b038116610f305750335b610f38612f98565b60408051610140810182528951815260208082018c90528a0151818301526001600160a01b03898116606080840191909152928b01516080830152841660a08201529089015160c082015260e08101896004602002015181526020016000815260200160405180608001604052806000815260200160008152602001600081526020016000815250815250905080600160008d6001600160a01b03166001600160a01b03168152602001908152602001600020600085815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506080820151816004015560a08201518160050160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060c0820151816006015560e082015181600701556101008201518160080155610120820151816009019060046110b5929190613019565b5090505083602001516001600160a01b0316838c6001600160a01b03167fcbdcbf9aaeb1e9eff0f75d74e1c1e044bc87110164baec7d18d825b0450d97df8d8d8d8d89604051808060200186815260200185600560200280838360005b8381101561112a578181015183820152602001611112565b50505050905001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828103825287818151815260200191508051906020019080838360005b8381101561119657818101518382015260200161117e565b50505050905090810190601f1680156111c35780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a450506040805180820182524381526001600160a01b039a8b166020808301918252948501518c166000908152808652838120858252909552919093209251835551600190920180546001600160a01b0319169290991691909117909755509495945050505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561129657600080fd5b505afa1580156112aa573d6000803e3d6000fd5b505050506040513d60208110156112c057600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561131257600080fd5b505afa158015611326573d6000803e3d6000fd5b505050506040513d602081101561133c57600080fd5b505161138a576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b611392613002565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526113d95760009350506114c6565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561141657600080fd5b505afa15801561142a573d6000803e3d6000fd5b505050506040513d602081101561144057600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b15801561149657600080fd5b505afa1580156114aa573d6000803e3d6000fd5b505050506040513d60208110156114c057600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b031661153b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b611543613002565b5033600090815260208181526040808320878452825280832081518083018352815481526001918201546001600160a01b0316818501819052855290835281842088855290925290912060080154156115da576040805162461bcd60e51b815260206004820152601460248201527363616e6e6f74206578656375746520747769636560601b604482015290519081900360640190fd5b6020808201516001600160a01b03908116600090815260018352604080822089835290935291909120600501541661164f576040805162461bcd60e51b81526020600482015260136024820152721c1c9bdc1bdcd85b081b5d5cdd08195e1a5cdd606a1b604482015290519081900360640190fd5b8360011415611684576020808201516001600160a01b0316600090815260018252604080822088835290925220426008909101555b8481602001516001600160a01b03167fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0866040518082815260200191505060405180910390a3506001949350505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561172f57600080fd5b505afa158015611743573d6000803e3d6000fd5b505050506040513d602081101561175957600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156117ab57600080fd5b505afa1580156117bf573d6000803e3d6000fd5b505050506040513d60208110156117d557600080fd5b5051611823576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61182b613002565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052611872576000935050611956565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156118af57600080fd5b505afa1580156118c3573d6000803e3d6000fd5b505050506040513d60208110156118d957600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b15801561192657600080fd5b505afa15801561193a573d6000803e3d6000fd5b505050506040513d602081101561195057600080fd5b50519350505b5050919050565b6001600160a01b03821660009081526001602090815260408083208684529091528120600901826004811061198e57fe5b015490505b9392505050565b60006119a4612f98565b6001600160a01b038381166000908152600160208181526040808420898552825292839020835161014081018552815481529281015491830191909152600281015482840152600381015484166060830152600480820154608080850191909152600583015490951660a0840152600682015460c0840152600782015460e0840152600882015461010084015283519485019384905291939092610120850192600985019182845b815481526020019060010190808311611a4c57505050919092525050506001600160a01b03841660009081526001602090815260408083208884529091529020600881015491925090611ad05760405162461bcd60e51b81526004018080602001828103825260228152602001806131436022913960400191505060405180910390fd5b6000611ade86866001612362565b600083558351909150611af890829063ffffffff612e6b16565b93508315611c9957846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b3957600080fd5b505afa158015611b4d573d6000803e3d6000fd5b505050506040513d6020811015611b6357600080fd5b505160a084015160408051633203f21960e11b8152600481018890526001600160a01b039283166024820152888316604482015290519190921691636407e4329160648083019260209291908290030181600087803b158015611bc557600080fd5b505af1158015611bd9573d6000803e3d6000fd5b505050506040513d6020811015611bef57600080fd5b5051611c3a576040805162461bcd60e51b81526020600482015260156024820152746661696c656420746f206d696e7420746f6b656e7360581b604482015290519081900360640190fd5b611c4981600984016001610beb565b600a83015560a08301516040805186815290516001600160a01b03928316928992908916917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e9181900360200190a45b509051905592915050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611d11576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611d45576000925050611e3d565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611d7e57600080fd5b505afa158015611d92573d6000803e3d6000fd5b505050506040513d6020811015611da857600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b158015611e0d57600080fd5b505af1158015611e21573d6000803e3d6000fd5b505050506040513d6020811015611e3757600080fd5b50519250505b50949350505050565b6000611e50612f98565b6001600160a01b038381166000908152600160208181526040808420898552825292839020835161014081018552815481529281015491830191909152600281015482840152600381015484166060830152600480820154608080850191909152600583015490951660a0840152600682015460c0840152600782015460e0840152600882015461010084015283519485019384905291939092610120850192600985019182845b815481526020019060010190808311611ef857505050919092525050506001600160a01b03841660009081526001602090815260408083208884529091529020600881015491925090611f7c5760405162461bcd60e51b81526004018080602001828103825260228152602001806131436022913960400191505060405180910390fd5b6000611f8a86866002612362565b600060028401556040840151909150611faa90829063ffffffff612e6b16565b9350831561214a57846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611feb57600080fd5b505afa158015611fff573d6000803e3d6000fd5b505050506040513d602081101561201557600080fd5b505160a0840151604080516331a4b2ed60e11b8152600481018890526001600160a01b03928316602482015288831660448201529051919092169163634965da9160648083019260209291908290030181600087803b15801561207757600080fd5b505af115801561208b573d6000803e3d6000fd5b505050506040513d60208110156120a157600080fd5b50516120eb576040805162461bcd60e51b81526020600482015260146024820152733330b4b632b2103a379039b2b7321032ba3432b960611b604482015290519081900360640190fd5b6120fa81600984016002610beb565b600b83015560a08301516040805186815290516001600160a01b03928316928992908916917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b879181900360200190a45b5060409091015160029091015592915050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166121ca576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806121fe5760009250506122ee565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561223757600080fd5b505afa15801561224b573d6000803e3d6000fd5b505050506040513d602081101561226157600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b1580156122be57600080fd5b505af11580156122d2573d6000803e3d6000fd5b505050506040513d60208110156122e857600080fd5b50519250505b509392505050565b600080808084816020020151156123145761231187876107e5565b93505b60208501511561232b57612328878761199a565b92505b6040850151156123425761233f8787611e46565b91505b606085015115612359576123568787612540565b90505b93509350935093565b600060038211156123a45760405162461bcd60e51b81526004018080602001828103825260268152602001806131e06026913960400191505060405180910390fd5b6123ac612f98565b6001600160a01b0384811660009081526001602081815260408084208a8552825292839020835161014081018552815481529281015491830191909152600281015482840152600381015484166060830152600480820154608080850191909152600583015490951660a0840152600682015460c0840152600782015460e0840152600882015461010084015283519485019384905291939092610120850192600985019182845b8154815260200190600101908083116124545750505050508152505090508061010001516000141561248a576000915050611993565b60c0810151600090156124be5760c08201516101008301516124b390429063ffffffff612ec416565b816124ba57fe5b0490505b60008260c00151600014806124d757508260e001518210155b1561250d5761250683610120015186600481106124f057fe5b602002015160e08501519063ffffffff612ec416565b9050612536565b612533836101200151866004811061252157fe5b6020020151839063ffffffff612ec416565b90505b9695505050505050565b600061254a612f98565b6001600160a01b038381166000908152600160208181526040808420898552825292839020835161014081018552815481529281015491830191909152600281015482840152600381015484166060830152600480820154608080850191909152600583015490951660a0840152600682015460c0840152600782015460e0840152600882015461010084015283519485019384905291939092610120850192600985019182845b8154815260200190600101908083116125f257505050919092525050506001600160a01b038416600090815260016020908152604080832088845290915290206008810154919250906126765760405162461bcd60e51b81526004018080602001828103825260228152602001806131436022913960400191505060405180910390fd5b600061268486866003612362565b6000600484015560038301549091506001600160a01b0316158015906126ae575060008360800151115b156128685760808301516126c990829063ffffffff612e6b16565b9350831561286857846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561270a57600080fd5b505afa15801561271e573d6000803e3d6000fd5b505050506040513d602081101561273457600080fd5b5051606084015160a08501516040805163b9a04cdd60e01b81526001600160a01b039384166004820152918316602483015260448201889052888316606483015251919092169163b9a04cdd9160848083019260209291908290030181600087803b1580156127a257600080fd5b505af11580156127b6573d6000803e3d6000fd5b505050506040513d60208110156127cc57600080fd5b50516128095760405162461bcd60e51b81526004018080602001828103825260218152602001806130936021913960400191505060405180910390fd5b61281881600984016003610beb565b600c83015560a08301516040805186815290516001600160a01b03928316928992908916917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd19883749181900360200190a45b5060809091015160049091015592915050565b6001600160a01b03908116600090815260016020908152604080832094835293905291909120600301541690565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316612916576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061294a5760009250506122ee565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561298357600080fd5b505afa158015612997573d6000803e3d6000fd5b505050506040513d60208110156129ad57600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b1580156122be57600080fd5b600082820183811015611993576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6060810151151580612a7a575060808101516001145b612ab55760405162461bcd60e51b81526004018080602001828103825260348152602001806130b46034913960400191505060405180910390fd5b608081015115612c51576080810151600019148015612ad7575081600160ff1b145b15612b135760405162461bcd60e51b81526004018080602001828103825260318152602001806131af6031913960400191505060405180910390fd5b6080810151829080820281612b2457fe5b0514612b615760405162461bcd60e51b81526004018080602001828103825260308152602001806131136030913960400191505060405180910390fd5b8051608082015180820281612b7257fe5b0414612baf5760405162461bcd60e51b815260040180806020018281038252602b8152602001806130e8602b913960400191505060405180910390fd5b6020810151608082015180820281612bc357fe5b0414612c005760405162461bcd60e51b81526004018080602001828103825260298152602001806131656029913960400191505060405180910390fd5b6040810151608082015180820281612c1457fe5b0414612c515760405162461bcd60e51b81526004018080602001828103825260348152602001806132066034913960400191505060405180910390fd5b5050565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612c9057600080fd5b505afa158015612ca4573d6000803e3d6000fd5b505050506040513d6020811015612cba57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015612d0c57600080fd5b505afa158015612d20573d6000803e3d6000fd5b505050506040513d6020811015612d3657600080fd5b5051612d84576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612dbd57600080fd5b505afa158015612dd1573d6000803e3d6000fd5b505050506040513d6020811015612de757600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b158015612e3957600080fd5b505afa158015612e4d573d6000803e3d6000fd5b505050506040513d6020811015612e6357600080fd5b505192915050565b600082612e7a57506000610c84565b82820282848281612e8757fe5b04146119935760405162461bcd60e51b815260040180806020018281038252602181526020018061318e6021913960400191505060405180910390fd5b600061199383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060008184841115612f905760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612f55578181015183820152602001612f3d565b50505050905090810190601f168015612f825780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60405180610140016040528060008152602001600081526020016000815260200160006001600160a01b031681526020016000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001612ffd613057565b905290565b604080518082019091526000808252602082015290565b8260048101928215613047579160200282015b8281111561304757825182559160200191906001019061302c565b50613053929150613075565b5090565b60405180608001604052806004906020820280388339509192915050565b61308f91905b80821115613053576000815560010161307b565b9056fe6661696c656420746f207472616e736665722065787465726e616c20746f6b656e706572696f644c656e67746820657175616c20302072657175697265206e756d6265724f66506572696f647320746f20626520316e756d6265724f66506572696f6473202a20746f6b656e5265776172642077696c6c206f766572666c6f776e756d6265724f66506572696f6473202a2072657075746174696f6e4368616e67652077696c6c206f766572666c6f7763616e6e6f74206578656375746520756e617070726f7665642070726f706f73616c6e756d6265724f66506572696f6473202a206574685265776172642077696c6c206f766572666c6f77536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776e756d6265724f66506572696f6473202a205f72657075746174696f6e4368616e67652077696c6c206f766572666c6f7773686f756c6420626520696e207468652072656465656d6564506572696f64732072616e67656e756d6265724f66506572696f6473202a207465787465726e616c546f6b656e5265776172642077696c6c206f766572666c6f77a265627a7a723158201e66a5bb5764979861159379ae20402a71d8cc4170f7e8b667a5c45753c4e4f764736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ContributionRewardExt.json b/contracts/0.0.1-rc.53/ContributionRewardExt.json new file mode 100644 index 00000000..266b1bfd --- /dev/null +++ b/contracts/0.0.1-rc.53/ContributionRewardExt.json @@ -0,0 +1,1012 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ContributionRewardExt", + "sourceName": "contracts/schemes/ContributionRewardExt.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_reputationChange", + "type": "int256" + }, + { + "indexed": false, + "internalType": "uint256[3]", + "name": "_rewards", + "type": "uint256[3]" + }, + { + "indexed": false, + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + } + ], + "name": "NewContributionProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemEther", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemExternalToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemNativeToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_amount", + "type": "int256" + } + ], + "name": "RedeemReputation", + "type": "event" + }, + { + "payable": true, + "stateMutability": "payable", + "type": "fallback" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalAcceptedByVotingMachine", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalEthReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalExternalToken", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalExternalTokenReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalNativeTokenReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalReputationReward", + "outputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParams", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_rewarder", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationProposals", + "outputs": [ + { + "internalType": "uint256", + "name": "nativeTokenReward", + "type": "uint256" + }, + { + "internalType": "int256", + "name": "reputationChange", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "ethReward", + "type": "uint256" + }, + { + "internalType": "contract IERC20", + "name": "externalToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "externalTokenReward", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "nativeTokenRewardLeft", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reputationChangeLeft", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "ethRewardLeft", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "externalTokenRewardLeft", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "acceptedByVotingMachine", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "internalType": "int256", + "name": "_reputationChange", + "type": "int256" + }, + { + "internalType": "uint256[3]", + "name": "_rewards", + "type": "uint256[3]" + }, + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "address", + "name": "_proposer", + "type": "address" + } + ], + "name": "proposeContributionReward", + "outputs": [ + { + "internalType": "bytes32", + "name": "proposalId", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "bool[4]", + "name": "_whatToRedeem", + "type": "bool[4]" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "int256", + "name": "reputationReward", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "nativeTokenReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "etherReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "externalTokenReward", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemEther", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "redeemEtherByRewarder", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemExternalToken", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "redeemExternalTokenByRewarder", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemNativeToken", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "redeemNativeTokenByRewarder", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemReputation", + "outputs": [ + { + "internalType": "int256", + "name": "reputation", + "type": "int256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "redeemReputationByRewarder", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "rewarder", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "voteParams", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061309e806100206000396000f3fe6080604052600436106101cd5760003560e01c80639f874c99116100f7578063cbba1f5a11610095578063de9a957a11610064578063de9a957a1461089a578063e5e21164146108d9578063f3f4b048146108ee578063f81f8bf614610918576101cd565b8063cbba1f5a1461078b578063d29b5d2f146107b5578063d8145e2d146107f4578063dcc3e06e14610885576101cd565b8063b5b8b865116100d1578063b5b8b865146106af578063bea75f28146106d9578063c4a17ec914610722578063c7916cf914610761576101cd565b80639f874c9914610612578063a31ee5b01461063c578063b551c37314610685576101cd565b8063582432131161016f5780636e8a61881161013e5780636e8a61881461052c5780637e078b551461056b5780639588378e146105955780639d4c162d146105ce576101cd565b8063582432131461045a5780635aef7de61461048457806360bdbb3f146104995780636b8eb403146104f3576101cd565b80633c2163dc116101ab5780633c2163dc146102d35780633edf7ca1146102fd578063432848dc1461032e57806352717a5e14610430576101cd565b80632ac8c1b2146101cf57806334f243521461020e5780633a0284ff1461024a575b005b3480156101db57600080fd5b506101cd600480360360608110156101f257600080fd5b508035906001600160a01b036020820135169060400135610957565b34801561021a57600080fd5b506102386004803603602081101561023157600080fd5b5035610ab4565b60408051918252519081900360200190f35b34801561025657600080fd5b506102ad600480360360a081101561026d57600080fd5b604080516080818101909252833593928301929160a08301919060208401906004908390839080828437600092019190915250919450610c919350505050565b604080519485526020850193909352838301919091526060830152519081900360800190f35b3480156102df57600080fd5b50610238600480360360208110156102f657600080fd5b5035610cf9565b34801561030957600080fd5b50610312610f0c565b604080516001600160a01b039092168252519081900360200190f35b34801561033a57600080fd5b50610238600480360361010081101561035257600080fd5b81019060208101813564010000000081111561036d57600080fd5b82018360208201111561037f57600080fd5b803590602001918460018302840111640100000000831117156103a157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805160608181019092529396853596909590946080820194509250602001906003908390839080828437600092019190915250919450506001600160a01b03823581169350602083013581169260400135169050610f1b565b34801561043c57600080fd5b506102386004803603602081101561045357600080fd5b503561134f565b34801561046657600080fd5b506102386004803603602081101561047d57600080fd5b5035611364565b34801561049057600080fd5b50610312611548565b3480156104a557600080fd5b506104d2600480360360408110156104bc57600080fd5b506001600160a01b038135169060200135611557565b604080519283526001600160a01b0390911660208301528051918290030190f35b3480156104ff57600080fd5b506102386004803603604081101561051657600080fd5b506001600160a01b038135169060200135611581565b34801561053857600080fd5b506101cd6004803603606081101561054f57600080fd5b508035906001600160a01b036020820135169060400135611641565b34801561057757600080fd5b506103126004803603602081101561058e57600080fd5b50356117fb565b3480156105a157600080fd5b50610238600480360360408110156105b857600080fd5b506001600160a01b038135169060200135611819565b3480156105da57600080fd5b506105fe600480360360408110156105f157600080fd5b5080359060200135611aab565b604080519115158252519081900360200190f35b34801561061e57600080fd5b506102386004803603602081101561063557600080fd5b5035611bd1565b34801561064857600080fd5b506101cd6004803603608081101561065f57600080fd5b506001600160a01b03813581169160208101358216916040820135916060013516611be6565b34801561069157600080fd5b50610238600480360360208110156106a857600080fd5b5035611d37565b3480156106bb57600080fd5b50610238600480360360208110156106d257600080fd5b5035611fbf565b3480156106e557600080fd5b506105fe600480360360808110156106fc57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611fd1565b34801561072e57600080fd5b506101cd6004803603606081101561074557600080fd5b508035906001600160a01b036020820135169060400135612173565b34801561076d57600080fd5b506102386004803603602081101561078457600080fd5b5035612397565b34801561079757600080fd5b506105fe600480360360208110156107ae57600080fd5b50356126a6565b3480156107c157600080fd5b506105fe600480360360608110156107d857600080fd5b508035906001600160a01b0360208201351690604001356126be565b34801561080057600080fd5b5061081e6004803603602081101561081757600080fd5b5035612857565b604080519b8c5260208c019a909a528a8a01989098526001600160a01b0396871660608b015260808a01959095529290941660a088015260c087015260e0860192909252610100850191909152610120840152151561014083015251908190036101600190f35b34801561089157600080fd5b506103126128be565b3480156108a657600080fd5b506101cd600480360360608110156108bd57600080fd5b508035906001600160a01b0360208201351690604001356128cd565b3480156108e557600080fd5b50610238612a24565b3480156108fa57600080fd5b506102386004803603602081101561091157600080fd5b5035612a2a565b34801561092457600080fd5b506105fe6004803603606081101561093b57600080fd5b508035906001600160a01b036020820135169060400135612a40565b6005546001600160a01b031633146109a4576040805162461bcd60e51b815260206004820152601c6024820152600080516020612f0b833981519152604482015290519081900360640190fd5b6000838152600160205260409020600a81015460ff166109f55760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b610a2482604051806080016040528060568152602001613014605691396008840154919063ffffffff612ba116565b60088201558115610aae576040516001600160a01b0384169083156108fc029084906000818181858888f19350505050158015610a65573d6000803e3d6000fd5b506004546040805184815290516001600160a01b038087169388939116917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b879181900360200190a45b50505050565b6000818152600160205260408120600a81015460ff16610b055760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b60058101546001600160a01b0316301415610b2b576006810154610b2b57805460068201555b80546000825591508115610c8b576004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b158015610b7b57600080fd5b505afa158015610b8f573d6000803e3d6000fd5b505050506040513d6020811015610ba557600080fd5b505160058201546004805460408051633203f21960e11b81529283018790526001600160a01b0393841660248401529083166044830152519190921691636407e4329160648083019260209291908290030181600087803b158015610c0957600080fd5b505af1158015610c1d573d6000803e3d6000fd5b505050506040513d6020811015610c3357600080fd5b5051610c3e57600080fd5b60058101546004546040805185815290516001600160a01b0393841693879316917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e919081900360200190a45b50919050565b60008080808481602002015115610cae57610cab86612397565b93505b602085015115610cc457610cc186610ab4565b92505b604085015115610cda57610cd786611364565b91505b606085015115610cf057610ced86610cf9565b90505b92959194509250565b6000818152600160205260408120600a81015460ff16610d4a5760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b60058101546001600160a01b0316301415610d73576009810154610d7357600481015460098201555b60038101546001600160a01b031615801590610d93575060008160040154115b15610c8b57600480820180546000909155815460408051638da5cb5b60e01b815290519295506001600160a01b0390911692638da5cb5b928282019260209290829003018186803b158015610de757600080fd5b505afa158015610dfb573d6000803e3d6000fd5b505050506040513d6020811015610e1157600080fd5b505160038201546005830154600480546040805163b9a04cdd60e01b81526001600160a01b0395861693810193909352928416602483015260448201879052831660648201529051919092169163b9a04cdd9160848083019260209291908290030181600087803b158015610e8557600080fd5b505af1158015610e99573d6000803e3d6000fd5b505050506040513d6020811015610eaf57600080fd5b5051610eba57600080fd5b60058101546004546040805185815290516001600160a01b0393841693879316917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd1988374919081900360200190a450919050565b6002546001600160a01b031681565b6000816001600160a01b038116610f2f5750335b600280546003546004805460408051634439bdaf60e11b81529283019590955260248201929092526001600160a01b038581166044830152918216606482015292519116916388737b5e9160848083019260209291908290030181600087803b158015610f9b57600080fd5b505af1158015610faf573d6000803e3d6000fd5b505050506040513d6020811015610fc557600080fd5b50519150836001600160a01b038116610fdb5750335b6001600160a01b03811630141561102c57600088121561102c5760405162461bcd60e51b815260040180806020018281038252602d815260200180612f8a602d913960400191505060405180910390fd5b611034612df6565b60408051610160810182528951815260208082018c90528a0151918101919091526001600160a01b03881660608201526080810189600260200201518152602001836001600160a01b0316815260200160008152602001600081526020016000815260200160008152602001600015158152509050806001600086815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506080820151816004015560a08201518160050160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060c0820151816006015560e082015181600701556101008201518160080155610120820151816009015561014082015181600a0160006101000a81548160ff021916908315150217905550905050600260009054906101000a90046001600160a01b03166001600160a01b031684600460009054906101000a90046001600160a01b03166001600160a01b03167ffc38e03bef8d47e8c970c106660459b8a9db8eb045bd1281ef4cc50c16e032278d8d8d8d898b604051808060200187815260200186600360200280838360005b8381101561122557818101518382015260200161120d565b50505050905001856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828103825288818151815260200191508051906020019080838360005b838110156112a9578181015183820152602001611291565b50505050905090810190601f1680156112d65780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a450506040805180820182524381526004546001600160a01b0390811660208084019182526002548316600090815280825285812088825290915293909320915182559151600190910180546001600160a01b03191691909216179055509695505050505050565b60009081526001602052604090206004015490565b6000818152600160205260408120600a81015460ff166113b55760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b60058101546001600160a01b03163014156113de5760088101546113de57600281015460088201555b600281018054600090915591508115610c8b576004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561143357600080fd5b505afa158015611447573d6000803e3d6000fd5b505050506040513d602081101561145d57600080fd5b5051600582015460048054604080516331a4b2ed60e11b81529283018790526001600160a01b039384166024840152908316604483015251919092169163634965da9160648083019260209291908290030181600087803b1580156114c157600080fd5b505af11580156114d5573d6000803e3d6000fd5b505050506040513d60208110156114eb57600080fd5b50516114f657600080fd5b60058101546004546040805185815290516001600160a01b0393841693879316917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b87919081900360200190a450919050565b6004546001600160a01b031681565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806115b557600091505061163b565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b50519150505b92915050565b6005546001600160a01b0316331461168e576040805162461bcd60e51b815260206004820152601c6024820152600080516020612f0b833981519152604482015290519081900360640190fd5b6000838152600160205260409020600a81015460ff166116df5760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b61170e826040518060800160405280605d8152602001612fb7605d91396006840154919063ffffffff612ba116565b60068201558115610aae576117ae8383600460009054906101000a90046001600160a01b03166001600160a01b031663e1758bd86040518163ffffffff1660e01b815260040160206040518083038186803b15801561176c57600080fd5b505afa158015611780573d6000803e3d6000fd5b505050506040513d602081101561179657600080fd5b50516001600160a01b0316919063ffffffff612c3816565b6004546040805184815290516001600160a01b038087169388939116917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e9181900360200190a450505050565b6000908152600160205260409020600301546001600160a01b031690565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561187357600080fd5b505afa158015611887573d6000803e3d6000fd5b505050506040513d602081101561189d57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156118ef57600080fd5b505afa158015611903573d6000803e3d6000fd5b505050506040513d602081101561191957600080fd5b5051611967576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61196f612e64565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526119b6576000935050611aa3565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156119f357600080fd5b505afa158015611a07573d6000803e3d6000fd5b505050506040513d6020811015611a1d57600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b158015611a7357600080fd5b505afa158015611a87573d6000803e3d6000fd5b505050506040513d6020811015611a9d57600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316611b18576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152600160205260409020600a015460ff1615611b3757600080fd5b6000848152600160205260409020600501546001600160a01b0316611b5b57600080fd5b8260011415611b84576000848152600160208190526040909120600a01805460ff191690911790555b60045460408051858152905186926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a35060019392505050565b60009081526001602052604090206002015490565b6004546001600160a01b031615611c44576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038416611c97576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b6001600160a01b038316611cf2576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b600480546001600160a01b039586166001600160a01b031991821617909155600280549486169482169490941790935560039190915560058054919093169116179055565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015611d9157600080fd5b505afa158015611da5573d6000803e3d6000fd5b505050506040513d6020811015611dbb57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015611e0d57600080fd5b505afa158015611e21573d6000803e3d6000fd5b505050506040513d6020811015611e3757600080fd5b5051611e85576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b611e8d612e64565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052611ed4576000935050611fb8565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015611f1157600080fd5b505afa158015611f25573d6000803e3d6000fd5b505050506040513d6020811015611f3b57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b158015611f8857600080fd5b505afa158015611f9c573d6000803e3d6000fd5b505050506040513d6020811015611fb257600080fd5b50519350505b5050919050565b60009081526001602052604090205490565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661203e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061207257600092505061216a565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156120ab57600080fd5b505afa1580156120bf573d6000803e3d6000fd5b505050506040513d60208110156120d557600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b15801561213a57600080fd5b505af115801561214e573d6000803e3d6000fd5b505050506040513d602081101561216457600080fd5b50519250505b50949350505050565b6005546001600160a01b031633146121c0576040805162461bcd60e51b815260206004820152601c6024820152600080516020612f0b833981519152604482015290519081900360640190fd5b6000838152600160205260409020600a81015460ff166122115760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b61224082604051806080016040528060608152602001612eab606091396007840154919063ffffffff612ba116565b60078201556004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561228757600080fd5b505afa15801561229b573d6000803e3d6000fd5b505050506040513d60208110156122b157600080fd5b5051600480546040805163757cca5960e11b81529283018690526001600160a01b03878116602485015291821660448401525192169163eaf994b2916064808201926020929091908290030181600087803b15801561230f57600080fd5b505af1158015612323573d6000803e3d6000fd5b505050506040513d602081101561233957600080fd5b505161234457600080fd5b8115610aae576004546040805184815290516001600160a01b038087169388939116917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee9181900360200190a450505050565b6000818152600160205260408120600a81015460ff166123e85760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b60058101546001600160a01b031630141561241b576007810154612416576001810180546007830155600090555b610c8b565b600181018054600091829055925082131561253a576004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561247257600080fd5b505afa158015612486573d6000803e3d6000fd5b505050506040513d602081101561249c57600080fd5b50516005820154600480546040805163757cca5960e11b81529283018790526001600160a01b039384166024840152908316604483015251919092169163eaf994b29160648083019260209291908290030181600087803b15801561250057600080fd5b505af1158015612514573d6000803e3d6000fd5b505050506040513d602081101561252a57600080fd5b505161253557600080fd5b61264e565b600082121561264e576004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561258557600080fd5b505afa158015612599573d6000803e3d6000fd5b505050506040513d60208110156125af57600080fd5b505160058201546004805460408051630dd29a4f60e31b81526000888103948201949094526001600160a01b0394851660248201529184166044830152519290931692636e94d2789260648083019360209383900390910190829087803b15801561261957600080fd5b505af115801561262d573d6000803e3d6000fd5b505050506040513d602081101561264357600080fd5b505161264e57600080fd5b8115610c8b5760058101546004546040805185815290516001600160a01b0393841693879316917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee919081900360200190a450919050565b6000908152600160205260409020600a015460ff1690565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661272b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061275f57600092505061284f565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561279857600080fd5b505afa1580156127ac573d6000803e3d6000fd5b505050506040513d60208110156127c257600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b15801561281f57600080fd5b505af1158015612833573d6000803e3d6000fd5b505050506040513d602081101561284957600080fd5b50519250505b509392505050565b600160208190526000918252604090912080549181015460028201546003830154600484015460058501546006860154600787015460088801546009890154600a90990154979896976001600160a01b039687169795969094169492939192909160ff168b565b6005546001600160a01b031681565b6005546001600160a01b0316331461291a576040805162461bcd60e51b815260206004820152601c6024820152600080516020612f0b833981519152604482015290519081900360640190fd5b6000838152600160205260409020600a81015460ff1661296b5760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b61299a826040518060800160405280605f8152602001612f2b605f91396009840154919063ffffffff612ba116565b600982015560038101546001600160a01b031615610aae578115610aae5760038101546129d7906001600160a01b0316848463ffffffff612c3816565b6004546040805184815290516001600160a01b038087169388939116917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd19883749181900360200190a450505050565b60035481565b6000908152600160208190526040909120015490565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316612aad576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680612ae157600092505061284f565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612b1a57600080fd5b505afa158015612b2e573d6000803e3d6000fd5b505050506040513d6020811015612b4457600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b15801561281f57600080fd5b60008184841115612c305760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612bf5578181015183820152602001612bdd565b50505050905090810190601f168015612c225780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b612c4a836001600160a01b0316612dba565b612c5357600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b1781529251815160009460609489169392918291908083835b60208310612d005780518252601f199092019160209182019101612ce1565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114612d62576040519150601f19603f3d011682016040523d82523d6000602084013e612d67565b606091505b509150915081612d7657600080fd5b80511580612daa575080516020148015612daa575080601f81518110612d9857fe5b01602001516001600160f81b03191615155b612db357600080fd5b5050505050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708115801590612dee5750808214155b949350505050565b60405180610160016040528060008152602001600081526020016000815260200160006001600160a01b031681526020016000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081526020016000151581525090565b60408051808201909152600080825260208201529056fe70726f706f73616c20776173206e6f742061636365707465642062792074686520766f74696e67206d616368696e6563616e6e6f742072656465656d206d6f72652072657075746174696f6e207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d52657075746174696f6e207761732063616c6c65646d73672e73656e646572206973206e6f7420617574686f72697a65640000000063616e6e6f742072656465656d206d6f726520746f6b656e73207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d45787465726e616c546f6b656e207761732063616c6c65646e6567617469766520726570206368616e6765206e6f7420616c6c6f77656420666f722074686973206361736563616e6e6f742072656465656d206d6f726520746f6b656e73207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d4e6174697665546f6b656e207761732063616c6c656463616e6e6f742072656465656d206d6f7265204574686572207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d4574686572207761732063616c6c6564a265627a7a72315820a838857e3969c1a38ad71bd4dd1074af7036d38e38c7bbe8b33572eaf1962a7b64736f6c63430005110032", + "deployedBytecode": "0x6080604052600436106101cd5760003560e01c80639f874c99116100f7578063cbba1f5a11610095578063de9a957a11610064578063de9a957a1461089a578063e5e21164146108d9578063f3f4b048146108ee578063f81f8bf614610918576101cd565b8063cbba1f5a1461078b578063d29b5d2f146107b5578063d8145e2d146107f4578063dcc3e06e14610885576101cd565b8063b5b8b865116100d1578063b5b8b865146106af578063bea75f28146106d9578063c4a17ec914610722578063c7916cf914610761576101cd565b80639f874c9914610612578063a31ee5b01461063c578063b551c37314610685576101cd565b8063582432131161016f5780636e8a61881161013e5780636e8a61881461052c5780637e078b551461056b5780639588378e146105955780639d4c162d146105ce576101cd565b8063582432131461045a5780635aef7de61461048457806360bdbb3f146104995780636b8eb403146104f3576101cd565b80633c2163dc116101ab5780633c2163dc146102d35780633edf7ca1146102fd578063432848dc1461032e57806352717a5e14610430576101cd565b80632ac8c1b2146101cf57806334f243521461020e5780633a0284ff1461024a575b005b3480156101db57600080fd5b506101cd600480360360608110156101f257600080fd5b508035906001600160a01b036020820135169060400135610957565b34801561021a57600080fd5b506102386004803603602081101561023157600080fd5b5035610ab4565b60408051918252519081900360200190f35b34801561025657600080fd5b506102ad600480360360a081101561026d57600080fd5b604080516080818101909252833593928301929160a08301919060208401906004908390839080828437600092019190915250919450610c919350505050565b604080519485526020850193909352838301919091526060830152519081900360800190f35b3480156102df57600080fd5b50610238600480360360208110156102f657600080fd5b5035610cf9565b34801561030957600080fd5b50610312610f0c565b604080516001600160a01b039092168252519081900360200190f35b34801561033a57600080fd5b50610238600480360361010081101561035257600080fd5b81019060208101813564010000000081111561036d57600080fd5b82018360208201111561037f57600080fd5b803590602001918460018302840111640100000000831117156103a157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805160608181019092529396853596909590946080820194509250602001906003908390839080828437600092019190915250919450506001600160a01b03823581169350602083013581169260400135169050610f1b565b34801561043c57600080fd5b506102386004803603602081101561045357600080fd5b503561134f565b34801561046657600080fd5b506102386004803603602081101561047d57600080fd5b5035611364565b34801561049057600080fd5b50610312611548565b3480156104a557600080fd5b506104d2600480360360408110156104bc57600080fd5b506001600160a01b038135169060200135611557565b604080519283526001600160a01b0390911660208301528051918290030190f35b3480156104ff57600080fd5b506102386004803603604081101561051657600080fd5b506001600160a01b038135169060200135611581565b34801561053857600080fd5b506101cd6004803603606081101561054f57600080fd5b508035906001600160a01b036020820135169060400135611641565b34801561057757600080fd5b506103126004803603602081101561058e57600080fd5b50356117fb565b3480156105a157600080fd5b50610238600480360360408110156105b857600080fd5b506001600160a01b038135169060200135611819565b3480156105da57600080fd5b506105fe600480360360408110156105f157600080fd5b5080359060200135611aab565b604080519115158252519081900360200190f35b34801561061e57600080fd5b506102386004803603602081101561063557600080fd5b5035611bd1565b34801561064857600080fd5b506101cd6004803603608081101561065f57600080fd5b506001600160a01b03813581169160208101358216916040820135916060013516611be6565b34801561069157600080fd5b50610238600480360360208110156106a857600080fd5b5035611d37565b3480156106bb57600080fd5b50610238600480360360208110156106d257600080fd5b5035611fbf565b3480156106e557600080fd5b506105fe600480360360808110156106fc57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611fd1565b34801561072e57600080fd5b506101cd6004803603606081101561074557600080fd5b508035906001600160a01b036020820135169060400135612173565b34801561076d57600080fd5b506102386004803603602081101561078457600080fd5b5035612397565b34801561079757600080fd5b506105fe600480360360208110156107ae57600080fd5b50356126a6565b3480156107c157600080fd5b506105fe600480360360608110156107d857600080fd5b508035906001600160a01b0360208201351690604001356126be565b34801561080057600080fd5b5061081e6004803603602081101561081757600080fd5b5035612857565b604080519b8c5260208c019a909a528a8a01989098526001600160a01b0396871660608b015260808a01959095529290941660a088015260c087015260e0860192909252610100850191909152610120840152151561014083015251908190036101600190f35b34801561089157600080fd5b506103126128be565b3480156108a657600080fd5b506101cd600480360360608110156108bd57600080fd5b508035906001600160a01b0360208201351690604001356128cd565b3480156108e557600080fd5b50610238612a24565b3480156108fa57600080fd5b506102386004803603602081101561091157600080fd5b5035612a2a565b34801561092457600080fd5b506105fe6004803603606081101561093b57600080fd5b508035906001600160a01b036020820135169060400135612a40565b6005546001600160a01b031633146109a4576040805162461bcd60e51b815260206004820152601c6024820152600080516020612f0b833981519152604482015290519081900360640190fd5b6000838152600160205260409020600a81015460ff166109f55760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b610a2482604051806080016040528060568152602001613014605691396008840154919063ffffffff612ba116565b60088201558115610aae576040516001600160a01b0384169083156108fc029084906000818181858888f19350505050158015610a65573d6000803e3d6000fd5b506004546040805184815290516001600160a01b038087169388939116917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b879181900360200190a45b50505050565b6000818152600160205260408120600a81015460ff16610b055760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b60058101546001600160a01b0316301415610b2b576006810154610b2b57805460068201555b80546000825591508115610c8b576004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b158015610b7b57600080fd5b505afa158015610b8f573d6000803e3d6000fd5b505050506040513d6020811015610ba557600080fd5b505160058201546004805460408051633203f21960e11b81529283018790526001600160a01b0393841660248401529083166044830152519190921691636407e4329160648083019260209291908290030181600087803b158015610c0957600080fd5b505af1158015610c1d573d6000803e3d6000fd5b505050506040513d6020811015610c3357600080fd5b5051610c3e57600080fd5b60058101546004546040805185815290516001600160a01b0393841693879316917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e919081900360200190a45b50919050565b60008080808481602002015115610cae57610cab86612397565b93505b602085015115610cc457610cc186610ab4565b92505b604085015115610cda57610cd786611364565b91505b606085015115610cf057610ced86610cf9565b90505b92959194509250565b6000818152600160205260408120600a81015460ff16610d4a5760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b60058101546001600160a01b0316301415610d73576009810154610d7357600481015460098201555b60038101546001600160a01b031615801590610d93575060008160040154115b15610c8b57600480820180546000909155815460408051638da5cb5b60e01b815290519295506001600160a01b0390911692638da5cb5b928282019260209290829003018186803b158015610de757600080fd5b505afa158015610dfb573d6000803e3d6000fd5b505050506040513d6020811015610e1157600080fd5b505160038201546005830154600480546040805163b9a04cdd60e01b81526001600160a01b0395861693810193909352928416602483015260448201879052831660648201529051919092169163b9a04cdd9160848083019260209291908290030181600087803b158015610e8557600080fd5b505af1158015610e99573d6000803e3d6000fd5b505050506040513d6020811015610eaf57600080fd5b5051610eba57600080fd5b60058101546004546040805185815290516001600160a01b0393841693879316917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd1988374919081900360200190a450919050565b6002546001600160a01b031681565b6000816001600160a01b038116610f2f5750335b600280546003546004805460408051634439bdaf60e11b81529283019590955260248201929092526001600160a01b038581166044830152918216606482015292519116916388737b5e9160848083019260209291908290030181600087803b158015610f9b57600080fd5b505af1158015610faf573d6000803e3d6000fd5b505050506040513d6020811015610fc557600080fd5b50519150836001600160a01b038116610fdb5750335b6001600160a01b03811630141561102c57600088121561102c5760405162461bcd60e51b815260040180806020018281038252602d815260200180612f8a602d913960400191505060405180910390fd5b611034612df6565b60408051610160810182528951815260208082018c90528a0151918101919091526001600160a01b03881660608201526080810189600260200201518152602001836001600160a01b0316815260200160008152602001600081526020016000815260200160008152602001600015158152509050806001600086815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506080820151816004015560a08201518160050160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060c0820151816006015560e082015181600701556101008201518160080155610120820151816009015561014082015181600a0160006101000a81548160ff021916908315150217905550905050600260009054906101000a90046001600160a01b03166001600160a01b031684600460009054906101000a90046001600160a01b03166001600160a01b03167ffc38e03bef8d47e8c970c106660459b8a9db8eb045bd1281ef4cc50c16e032278d8d8d8d898b604051808060200187815260200186600360200280838360005b8381101561122557818101518382015260200161120d565b50505050905001856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001836001600160a01b03166001600160a01b03168152602001828103825288818151815260200191508051906020019080838360005b838110156112a9578181015183820152602001611291565b50505050905090810190601f1680156112d65780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a450506040805180820182524381526004546001600160a01b0390811660208084019182526002548316600090815280825285812088825290915293909320915182559151600190910180546001600160a01b03191691909216179055509695505050505050565b60009081526001602052604090206004015490565b6000818152600160205260408120600a81015460ff166113b55760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b60058101546001600160a01b03163014156113de5760088101546113de57600281015460088201555b600281018054600090915591508115610c8b576004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561143357600080fd5b505afa158015611447573d6000803e3d6000fd5b505050506040513d602081101561145d57600080fd5b5051600582015460048054604080516331a4b2ed60e11b81529283018790526001600160a01b039384166024840152908316604483015251919092169163634965da9160648083019260209291908290030181600087803b1580156114c157600080fd5b505af11580156114d5573d6000803e3d6000fd5b505050506040513d60208110156114eb57600080fd5b50516114f657600080fd5b60058101546004546040805185815290516001600160a01b0393841693879316917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b87919081900360200190a450919050565b6004546001600160a01b031681565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806115b557600091505061163b565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561160b57600080fd5b505afa15801561161f573d6000803e3d6000fd5b505050506040513d602081101561163557600080fd5b50519150505b92915050565b6005546001600160a01b0316331461168e576040805162461bcd60e51b815260206004820152601c6024820152600080516020612f0b833981519152604482015290519081900360640190fd5b6000838152600160205260409020600a81015460ff166116df5760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b61170e826040518060800160405280605d8152602001612fb7605d91396006840154919063ffffffff612ba116565b60068201558115610aae576117ae8383600460009054906101000a90046001600160a01b03166001600160a01b031663e1758bd86040518163ffffffff1660e01b815260040160206040518083038186803b15801561176c57600080fd5b505afa158015611780573d6000803e3d6000fd5b505050506040513d602081101561179657600080fd5b50516001600160a01b0316919063ffffffff612c3816565b6004546040805184815290516001600160a01b038087169388939116917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e9181900360200190a450505050565b6000908152600160205260409020600301546001600160a01b031690565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561187357600080fd5b505afa158015611887573d6000803e3d6000fd5b505050506040513d602081101561189d57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156118ef57600080fd5b505afa158015611903573d6000803e3d6000fd5b505050506040513d602081101561191957600080fd5b5051611967576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61196f612e64565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526119b6576000935050611aa3565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156119f357600080fd5b505afa158015611a07573d6000803e3d6000fd5b505050506040513d6020811015611a1d57600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b158015611a7357600080fd5b505afa158015611a87573d6000803e3d6000fd5b505050506040513d6020811015611a9d57600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316611b18576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152600160205260409020600a015460ff1615611b3757600080fd5b6000848152600160205260409020600501546001600160a01b0316611b5b57600080fd5b8260011415611b84576000848152600160208190526040909120600a01805460ff191690911790555b60045460408051858152905186926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a35060019392505050565b60009081526001602052604090206002015490565b6004546001600160a01b031615611c44576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038416611c97576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b6001600160a01b038316611cf2576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b600480546001600160a01b039586166001600160a01b031991821617909155600280549486169482169490941790935560039190915560058054919093169116179055565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015611d9157600080fd5b505afa158015611da5573d6000803e3d6000fd5b505050506040513d6020811015611dbb57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015611e0d57600080fd5b505afa158015611e21573d6000803e3d6000fd5b505050506040513d6020811015611e3757600080fd5b5051611e85576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b611e8d612e64565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052611ed4576000935050611fb8565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015611f1157600080fd5b505afa158015611f25573d6000803e3d6000fd5b505050506040513d6020811015611f3b57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b158015611f8857600080fd5b505afa158015611f9c573d6000803e3d6000fd5b505050506040513d6020811015611fb257600080fd5b50519350505b5050919050565b60009081526001602052604090205490565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661203e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061207257600092505061216a565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156120ab57600080fd5b505afa1580156120bf573d6000803e3d6000fd5b505050506040513d60208110156120d557600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b15801561213a57600080fd5b505af115801561214e573d6000803e3d6000fd5b505050506040513d602081101561216457600080fd5b50519250505b50949350505050565b6005546001600160a01b031633146121c0576040805162461bcd60e51b815260206004820152601c6024820152600080516020612f0b833981519152604482015290519081900360640190fd5b6000838152600160205260409020600a81015460ff166122115760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b61224082604051806080016040528060608152602001612eab606091396007840154919063ffffffff612ba116565b60078201556004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561228757600080fd5b505afa15801561229b573d6000803e3d6000fd5b505050506040513d60208110156122b157600080fd5b5051600480546040805163757cca5960e11b81529283018690526001600160a01b03878116602485015291821660448401525192169163eaf994b2916064808201926020929091908290030181600087803b15801561230f57600080fd5b505af1158015612323573d6000803e3d6000fd5b505050506040513d602081101561233957600080fd5b505161234457600080fd5b8115610aae576004546040805184815290516001600160a01b038087169388939116917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee9181900360200190a450505050565b6000818152600160205260408120600a81015460ff166123e85760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b60058101546001600160a01b031630141561241b576007810154612416576001810180546007830155600090555b610c8b565b600181018054600091829055925082131561253a576004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561247257600080fd5b505afa158015612486573d6000803e3d6000fd5b505050506040513d602081101561249c57600080fd5b50516005820154600480546040805163757cca5960e11b81529283018790526001600160a01b039384166024840152908316604483015251919092169163eaf994b29160648083019260209291908290030181600087803b15801561250057600080fd5b505af1158015612514573d6000803e3d6000fd5b505050506040513d602081101561252a57600080fd5b505161253557600080fd5b61264e565b600082121561264e576004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561258557600080fd5b505afa158015612599573d6000803e3d6000fd5b505050506040513d60208110156125af57600080fd5b505160058201546004805460408051630dd29a4f60e31b81526000888103948201949094526001600160a01b0394851660248201529184166044830152519290931692636e94d2789260648083019360209383900390910190829087803b15801561261957600080fd5b505af115801561262d573d6000803e3d6000fd5b505050506040513d602081101561264357600080fd5b505161264e57600080fd5b8115610c8b5760058101546004546040805185815290516001600160a01b0393841693879316917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee919081900360200190a450919050565b6000908152600160205260409020600a015460ff1690565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661272b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061275f57600092505061284f565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561279857600080fd5b505afa1580156127ac573d6000803e3d6000fd5b505050506040513d60208110156127c257600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b15801561281f57600080fd5b505af1158015612833573d6000803e3d6000fd5b505050506040513d602081101561284957600080fd5b50519250505b509392505050565b600160208190526000918252604090912080549181015460028201546003830154600484015460058501546006860154600787015460088801546009890154600a90990154979896976001600160a01b039687169795969094169492939192909160ff168b565b6005546001600160a01b031681565b6005546001600160a01b0316331461291a576040805162461bcd60e51b815260206004820152601c6024820152600080516020612f0b833981519152604482015290519081900360640190fd5b6000838152600160205260409020600a81015460ff1661296b5760405162461bcd60e51b815260040180806020018281038252602f815260200180612e7c602f913960400191505060405180910390fd5b61299a826040518060800160405280605f8152602001612f2b605f91396009840154919063ffffffff612ba116565b600982015560038101546001600160a01b031615610aae578115610aae5760038101546129d7906001600160a01b0316848463ffffffff612c3816565b6004546040805184815290516001600160a01b038087169388939116917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd19883749181900360200190a450505050565b60035481565b6000908152600160208190526040909120015490565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316612aad576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680612ae157600092505061284f565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612b1a57600080fd5b505afa158015612b2e573d6000803e3d6000fd5b505050506040513d6020811015612b4457600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b15801561281f57600080fd5b60008184841115612c305760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612bf5578181015183820152602001612bdd565b50505050905090810190601f168015612c225780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b612c4a836001600160a01b0316612dba565b612c5357600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b1781529251815160009460609489169392918291908083835b60208310612d005780518252601f199092019160209182019101612ce1565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114612d62576040519150601f19603f3d011682016040523d82523d6000602084013e612d67565b606091505b509150915081612d7657600080fd5b80511580612daa575080516020148015612daa575080601f81518110612d9857fe5b01602001516001600160f81b03191615155b612db357600080fd5b5050505050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708115801590612dee5750808214155b949350505050565b60405180610160016040528060008152602001600081526020016000815260200160006001600160a01b031681526020016000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081526020016000151581525090565b60408051808201909152600080825260208201529056fe70726f706f73616c20776173206e6f742061636365707465642062792074686520766f74696e67206d616368696e6563616e6e6f742072656465656d206d6f72652072657075746174696f6e207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d52657075746174696f6e207761732063616c6c65646d73672e73656e646572206973206e6f7420617574686f72697a65640000000063616e6e6f742072656465656d206d6f726520746f6b656e73207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d45787465726e616c546f6b656e207761732063616c6c65646e6567617469766520726570206368616e6765206e6f7420616c6c6f77656420666f722074686973206361736563616e6e6f742072656465656d206d6f726520746f6b656e73207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d4e6174697665546f6b656e207761732063616c6c656463616e6e6f742072656465656d206d6f7265204574686572207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d4574686572207761732063616c6c6564a265627a7a72315820a838857e3969c1a38ad71bd4dd1074af7036d38e38c7bbe8b33572eaf1962a7b64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Controller.json b/contracts/0.0.1-rc.53/Controller.json new file mode 100644 index 00000000..b1ddb1c7 --- /dev/null +++ b/contracts/0.0.1-rc.53/Controller.json @@ -0,0 +1,1047 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Controller", + "sourceName": "contracts/controller/Controller.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_globalConstraint", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_params", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "enum GlobalConstraintInterface.CallPhase", + "name": "_when", + "type": "uint8" + } + ], + "name": "AddGlobalConstraint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "BurnReputation", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "MintReputation", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "MintTokens", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_scheme", + "type": "address" + } + ], + "name": "RegisterScheme", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_globalConstraint", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_index", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bool", + "name": "_isPre", + "type": "bool" + } + ], + "name": "RemoveGlobalConstraint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_scheme", + "type": "address" + } + ], + "name": "UnregisterScheme", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_oldController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_newController", + "type": "address" + } + ], + "name": "UpgradeController", + "type": "event" + }, + { + "payable": false, + "stateMutability": "nonpayable", + "type": "fallback" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_globalConstraint", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_params", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "addGlobalConstraint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "externalTokenApproval", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "externalTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "externalTokenTransferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "genericCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_globalConstraint", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "getGlobalConstraintParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "getNativeReputation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "getSchemeParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "getSchemePermissions", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "globalConstraintsCount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "globalConstraintsPost", + "outputs": [ + { + "internalType": "address", + "name": "gcAddress", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "params", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "globalConstraintsPre", + "outputs": [ + { + "internalType": "address", + "name": "gcAddress", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "params", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "globalConstraintsRegisterPost", + "outputs": [ + { + "internalType": "bool", + "name": "isRegistered", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "globalConstraintsRegisterPre", + "outputs": [ + { + "internalType": "bool", + "name": "isRegistered", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_globalConstraint", + "type": "address" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "isGlobalConstraintRegistered", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "isSchemeRegistered", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "string", + "name": "_metaData", + "type": "string" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "metaData", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "mintTokens", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "nativeReputation", + "outputs": [ + { + "internalType": "contract Reputation", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "nativeToken", + "outputs": [ + { + "internalType": "contract DAOToken", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "newController", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "bytes4", + "name": "_permissions", + "type": "bytes4" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "registerScheme", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_globalConstraint", + "type": "address" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "removeGlobalConstraint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "schemes", + "outputs": [ + { + "internalType": "bytes32", + "name": "paramsHash", + "type": "bytes32" + }, + { + "internalType": "bytes4", + "name": "permissions", + "type": "bytes4" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amountInWei", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "_to", + "type": "address" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "sendEther", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "unregisterScheme", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "unregisterSelf", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_newController", + "type": "address" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "upgradeController", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040523480156200001157600080fd5b5060405162003b6e38038062003b6e833981810160405260208110156200003757600080fd5b5051600180546001600160a01b0319166001600160a01b03808416919091179182905560408051631c2eb17b60e31b81529051929091169163e1758bd891600480820192602092909190829003018186803b1580156200009657600080fd5b505afa158015620000ab573d6000803e3d6000fd5b505050506040513d6020811015620000c257600080fd5b5051600280546001600160a01b0319166001600160a01b039283161790556001546040805163089ae1c960e41b8152905191909216916389ae1c90916004808301926020929190829003018186803b1580156200011e57600080fd5b505afa15801562000133573d6000803e3d6000fd5b505050506040513d60208110156200014a57600080fd5b5051600380546001600160a01b0319166001600160a01b039092169190911790556040805180820182526000808252601f60e01b60208084019182523380845290839052848320935184559051600193909301805463ffffffff191660e09490941c939093179092559151909182917f546816e99403df442acb68ef69562682a50762c20a3fb6b472f7af9923736cfc9190a35061398080620001ee6000396000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c806389ae1c901161010f578063e08738da116100a2578063e8c98b2211610071578063e8c98b221461083e578063eaf994b21461085b578063f76488be1461088f578063fb4856a2146108bd576101e5565b8063e08738da1461078e578063e1758bd8146107bc578063e4537a74146107c4578063e869d45f146107fa576101e5565b8063b9a04cdd116100de578063b9a04cdd1461057f578063c9b62eb1146105bb578063d1b7089a14610634578063db6149ce14610746576101e5565b806389ae1c90146104d85780638da03997146104e05780639b51e35a146105065780639be2faed14610551576101e5565b806351803cd8116101875780636c525b13116101565780636c525b13146104195780636e94d2781461043f578063814784f614610473578063824f2f1f14610499576101e5565b806351803cd81461036d5780635aef7de6146103a9578063634965da146103b15780636407e432146103e5576101e5565b80633a02263c116101c35780633a02263c146102ad57806342427bf8146102d15780634422d372146102ff5780634f52b5be1461033f576101e5565b8063039de01d146101ea578063177eebb01461022c5780631c4d56081461026d575b600080fd5b6102186004803603604081101561020057600080fd5b506001600160a01b0381358116916020013516610903565b604080519115158252519081900360200190f35b6102526004803603602081101561024257600080fd5b50356001600160a01b0316610c09565b60408051921515835260208301919091528051918290030190f35b61029b6004803603604081101561028357600080fd5b506001600160a01b0381358116916020013516610c28565b60408051918252519081900360200190f35b6102b5610c6a565b604080516001600160a01b039092168252519081900360200190f35b610218600480360360408110156102e757600080fd5b506001600160a01b0381358116916020013516610c79565b61031c6004803603602081101561031557600080fd5b503561113b565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6102186004803603604081101561035557600080fd5b506001600160a01b0381358116916020013516611170565b6102186004803603608081101561038357600080fd5b506001600160a01b0381358116916020810135821691604082013591606001351661156b565b6102b561184f565b610218600480360360608110156103c757600080fd5b508035906001600160a01b036020820135811691604001351661185e565b610218600480360360608110156103fb57600080fd5b508035906001600160a01b0360208201358116916040013516611b25565b6102186004803603602081101561042f57600080fd5b50356001600160a01b0316611e24565b6102186004803603606081101561045557600080fd5b508035906001600160a01b0360208201358116916040013516611eab565b6102526004803603602081101561048957600080fd5b50356001600160a01b03166121ae565b6104bf600480360360208110156104af57600080fd5b50356001600160a01b03166121cd565b6040805192835260208301919091528051918290030190f35b6102b56121ff565b6102b5600480360360208110156104f657600080fd5b50356001600160a01b031661220e565b6105346004803603604081101561051c57600080fd5b506001600160a01b0381358116916020013516612240565b604080516001600160e01b03199092168252519081900360200190f35b6102186004803603604081101561056757600080fd5b506001600160a01b0381358116916020013516612283565b6102186004803603608081101561059557600080fd5b506001600160a01b038135811691602081013582169160408201359160600135166122b3565b610218600480360360408110156105d157600080fd5b8101906020810181356401000000008111156105ec57600080fd5b8201836020820111156105fe57600080fd5b8035906020019184600183028401116401000000008311171561062057600080fd5b9193509150356001600160a01b0316612585565b6106c36004803603608081101561064a57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561067557600080fd5b82018360208201111561068757600080fd5b803590602001918460018302840111640100000000831117156106a957600080fd5b91935091506001600160a01b038135169060200135612675565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561070a5781810151838201526020016106f2565b50505050905090810190601f1680156107375780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61076c6004803603602081101561075c57600080fd5b50356001600160a01b0316612a46565b604080519283526001600160e01b031990911660208301528051918290030190f35b61029b600480360360408110156107a457600080fd5b506001600160a01b0381358116916020013516612a62565b6102b5612b2e565b610218600480360360608110156107da57600080fd5b506001600160a01b03813581169160208101359160409091013516612b3d565b6102186004803603608081101561081057600080fd5b506001600160a01b0381358116916020810135916001600160e01b0319604083013516916060013516612f09565b61031c6004803603602081101561085457600080fd5b5035613246565b6102186004803603606081101561087157600080fd5b508035906001600160a01b0360208201358116916040013516613253565b610218600480360360408110156108a557600080fd5b506001600160a01b0381358116916020013516613556565b610218600480360360a08110156108d357600080fd5b506001600160a01b03813581169160208101358216916040820135811691606081013591608090910135166135b8565b3360009081526020819052604081206001015460e01b600160e11b9081161461092b57600080fd5b6f756e7265676973746572536368656d6560801b60005b600554811015610a32576005818154811061095957fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061098c57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156109f557600080fd5b505af1158015610a09573d6000803e3d6000fd5b505050506040513d6020811015610a1f57600080fd5b5051610a2a57600080fd5b600101610942565b60015484906001600160a01b03808316911614610a4e57600080fd5b610a57866138a5565b610a645760009350610b0b565b336000908152602081905260408082206001908101546001600160a01b038a168452919092209091015460e091821b19911b16601f60e01b1615610aa757600080fd5b6040516001600160a01b0387169033907f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf90600090a36001600160a01b03861660009081526020819052604081209081556001908101805463ffffffff1916905593505b50600090505b600654811015610c015760068181548110610b2857fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110610b5b57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015610bc457600080fd5b505af1158015610bd8573d6000803e3d6000fd5b505050506040513d6020811015610bee57600080fd5b5051610bf957600080fd5b600101610b11565b505092915050565b6007602052600090815260409020805460019091015460ff9091169082565b60015460009082906001600160a01b03808316911614610c4757600080fd5b6001600160a01b03841660009081526020819052604090205491505b5092915050565b6004546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e31b90811614610ca157600080fd5b60015482906001600160a01b03808316911614610cbd57600080fd5b6004546001600160a01b031615610cd357600080fd5b6001600160a01b038416610ce657600080fd5b600480546001600160a01b0319166001600160a01b0386811691821783556001546040805163f2fde38b60e01b815294850193909352915191169163f2fde38b91602480830192600092919082900301818387803b158015610d4757600080fd5b505af1158015610d5b573d6000803e3d6000fd5b50505050836001600160a01b0316600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610db757600080fd5b505afa158015610dcb573d6000803e3d6000fd5b505050506040513d6020811015610de157600080fd5b50516001600160a01b031614610df657600080fd5b60025460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610e3a57600080fd5b505afa158015610e4e573d6000803e3d6000fd5b505050506040513d6020811015610e6457600080fd5b50516001600160a01b03161415610f72576002546040805163f2fde38b60e01b81526001600160a01b0387811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015610ec357600080fd5b505af1158015610ed7573d6000803e3d6000fd5b50505050836001600160a01b0316600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f3357600080fd5b505afa158015610f47573d6000803e3d6000fd5b505050506040513d6020811015610f5d57600080fd5b50516001600160a01b031614610f7257600080fd5b60035460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610fb657600080fd5b505afa158015610fca573d6000803e3d6000fd5b505050506040513d6020811015610fe057600080fd5b50516001600160a01b031614156110ee576003546040805163f2fde38b60e01b81526001600160a01b0387811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561103f57600080fd5b505af1158015611053573d6000803e3d6000fd5b50505050836001600160a01b0316600360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110af57600080fd5b505afa1580156110c3573d6000803e3d6000fd5b505050506040513d60208110156110d957600080fd5b50516001600160a01b0316146110ee57600080fd5b600454604080516001600160a01b039290921682525130917fdb7cbacf8df312d794506c0cc9af07f64d29ca075796ea2e950a3832cc9a63dd919081900360200190a25060019392505050565b6005818154811061114857fe5b6000918252602090912060029091020180546001909101546001600160a01b03909116915082565b3360009081526020819052604081206001015460e01b600160e21b9081161461119857600080fd5b60015482906001600160a01b038083169116146111b457600080fd5b6111bc6138d1565b6111c46138d1565b6000866001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561120157600080fd5b505af1158015611215573d6000803e3d6000fd5b505050506040513d602081101561122b57600080fd5b5051905060008082600281111561123e57fe5b14806112555750600282600281111561125357fe5b145b15611399576001600160a01b0388166000908152600760209081526040918290208251808401909352805460ff16158015845260019091015491830191909152909450611399576001600580549050038460200151101561135a576005805460001981019081106112c257fe5b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600101548183015290850151600580549295508592909190811061130a57fe5b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b03938416178155938101516001948501558781015187519092168352600790526040909120909101555b600580549061136d9060001983016138e8565b50506001600160a01b0387166000908152600760205260408120805460ff191681556001908101919091555b60018260028111156113a757fe5b14806113be575060028260028111156113bc57fe5b145b15611502576001600160a01b0388166000908152600860209081526040918290208251808401909352805460ff1615801584526001909101549183019190915290945061150257600160068054905003846020015110156114c35760068054600019810190811061142b57fe5b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600101548183015290850151600680549295508592909190811061147357fe5b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b03938416178155938101516001948501558781015187519092168352600890526040909120909101555b60068054906114d69060001983016138e8565b50506001600160a01b0387166000908152600860205260408120805460ff191681556001908101919091555b80156115605760208401516001600160a01b038916907fcdf1a50ea6b7de555bd409f8a4a53ea43c6dc6b4caa961889da9e005f21bbaa990600085600281111561154857fe5b60408051938452911460208301528051918290030190a25b979650505050505050565b3360009081526020819052604081206001015460e01b600160e01b9081161461159357600080fd5b7f65787465726e616c546f6b656e496e637265617365417070726f76616c00000060005b6005548110156116a757600581815481106115ce57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061160157fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561166a57600080fd5b505af115801561167e573d6000803e3d6000fd5b505050506040513d602081101561169457600080fd5b505161169f57600080fd5b6001016115b7565b60015484906001600160a01b038083169116146116c357600080fd5b6001546040805163ab751f7160e01b81526001600160a01b038b811660048301528a81166024830152604482018a90529151919092169163ab751f719160648083019260209291908290030181600087803b15801561172157600080fd5b505af1158015611735573d6000803e3d6000fd5b505050506040513d602081101561174b57600080fd5b5051935050600090505b600654811015611845576006818154811061176c57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061179f57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561180857600080fd5b505af115801561181c573d6000803e3d6000fd5b505050506040513d602081101561183257600080fd5b505161183d57600080fd5b600101611755565b5050949350505050565b6001546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e01b9081161461188657600080fd5b6839b2b73222ba3432b960b91b60005b60055481101561198657600581815481106118ad57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106118e057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561194957600080fd5b505af115801561195d573d6000803e3d6000fd5b505050506040513d602081101561197357600080fd5b505161197e57600080fd5b600101611896565b60015484906001600160a01b038083169116146119a257600080fd5b6001546040805163658b6a5160e11b8152600481018a90526001600160a01b0389811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b1580156119f857600080fd5b505af1158015611a0c573d6000803e3d6000fd5b505050506040513d6020811015611a2257600080fd5b5051935050600090505b600654811015611b1c5760068181548110611a4357fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110611a7657fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611adf57600080fd5b505af1158015611af3573d6000803e3d6000fd5b505050506040513d6020811015611b0957600080fd5b5051611b1457600080fd5b600101611a2c565b50509392505050565b3360009081526020819052604081206001015460e01b600160e01b90811614611b4d57600080fd5b696d696e74546f6b656e7360b01b60005b600554811015611c4e5760058181548110611b7557fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110611ba857fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611c1157600080fd5b505af1158015611c25573d6000803e3d6000fd5b505050506040513d6020811015611c3b57600080fd5b5051611c4657600080fd5b600101611b5e565b60015484906001600160a01b03808316911614611c6a57600080fd5b6040805188815290516001600160a01b0388169133917f21f9c9a1a1f9a311a50f15fec5c1faa9e21fc9edf964f0fdecba5bd490484c5e9181900360200190a3600254604080516340c10f1960e01b81526001600160a01b038981166004830152602482018b9052915191909216916340c10f199160448083019260209291908290030181600087803b158015611d0057600080fd5b505af1158015611d14573d6000803e3d6000fd5b505050506040513d6020811015611d2a57600080fd5b5051935050600090505b600654811015611b1c5760068181548110611d4b57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110611d7e57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611de757600080fd5b505af1158015611dfb573d6000803e3d6000fd5b505050506040513d6020811015611e1157600080fd5b5051611e1c57600080fd5b600101611d34565b60015460009082906001600160a01b03808316911614611e4357600080fd5b611e4c336138a5565b611e595760009150611ea5565b33600081815260208190526040808220828155600101805463ffffffff191690555182917f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf91a3600191505b50919050565b3360009081526020819052604081206001015460e01b600160e01b90811614611ed357600080fd5b6d313ab9372932b83aba30ba34b7b760911b60005b600554811015611fd85760058181548110611eff57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110611f3257fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611f9b57600080fd5b505af1158015611faf573d6000803e3d6000fd5b505050506040513d6020811015611fc557600080fd5b5051611fd057600080fd5b600101611ee8565b60015484906001600160a01b03808316911614611ff457600080fd5b6040805188815290516001600160a01b0388169133917f186d8887e1b22f9d9b16849c36baa748950d09d9c9b67a4a6ea140eaad00c21c9181900360200190a360035460408051632770a7eb60e21b81526001600160a01b038981166004830152602482018b905291519190921691639dc29fac9160448083019260209291908290030181600087803b15801561208a57600080fd5b505af115801561209e573d6000803e3d6000fd5b505050506040513d60208110156120b457600080fd5b5051935050600090505b600654811015611b1c57600681815481106120d557fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061210857fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561217157600080fd5b505af1158015612185573d6000803e3d6000fd5b505050506040513d602081101561219b57600080fd5b50516121a657600080fd5b6001016120be565b6008602052600090815260409020805460019091015460ff9091169082565b600154600090819083906001600160a01b038083169116146121ee57600080fd5b600554600654909350915050915091565b6003546001600160a01b031681565b60015460009082906001600160a01b0380831691161461222d57600080fd5b50506003546001600160a01b0316919050565b60015460009082906001600160a01b0380831691161461225f57600080fd5b5050506001600160a01b031660009081526020819052604090206001015460e01b90565b60015460009082906001600160a01b038083169116146122a257600080fd5b6122ab846138a5565b949350505050565b3360009081526020819052604081206001015460e01b600160e01b908116146122db57600080fd5b7432bc3a32b93730b62a37b5b2b72a3930b739b332b960591b60005b6005548110156123e7576005818154811061230e57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061234157fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156123aa57600080fd5b505af11580156123be573d6000803e3d6000fd5b505050506040513d60208110156123d457600080fd5b50516123df57600080fd5b6001016122f7565b60015484906001600160a01b0380831691161461240357600080fd5b6001546040805163dab0efff60e01b81526001600160a01b038b811660048301528a81166024830152604482018a90529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561246157600080fd5b505af1158015612475573d6000803e3d6000fd5b505050506040513d602081101561248b57600080fd5b5051935050600090505b60065481101561184557600681815481106124ac57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106124df57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561254857600080fd5b505af115801561255c573d6000803e3d6000fd5b505050506040513d602081101561257257600080fd5b505161257d57600080fd5b600101612495565b3360009081526020819052604081206001015460e01b600160e41b908116146125ad57600080fd5b60015482906001600160a01b038083169116146125c957600080fd5b600154604051632242b11b60e21b8152602060048201908152602482018790526001600160a01b039092169163890ac46c91889188918190604401848480828437600081840152601f19601f8201169050808301925050509350505050602060405180830381600087803b15801561264057600080fd5b505af1158015612654573d6000803e3d6000fd5b505050506040513d602081101561266a57600080fd5b505195945050505050565b3360009081526020819052604081206001015460609060e01b600160e41b908116146126a057600080fd5b6a19d95b995c9a58d0d85b1b60aa1b60005b6005548110156127a257600581815481106126c957fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106126fc57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561276557600080fd5b505af1158015612779573d6000803e3d6000fd5b505050506040513d602081101561278f57600080fd5b505161279a57600080fd5b6001016126b2565b60015486906001600160a01b038083169116146127be57600080fd5b60015460405163057e2c8b60e31b81526001600160a01b038c811660048301908152604483018a9052606060248401908152606484018d90529190931692632bf16458928e928e928e928d9290608401858580828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b15801561284c57600080fd5b505af1158015612860573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561288957600080fd5b8151602083018051604051929492938301929190846401000000008211156128b057600080fd5b9083019060208201858111156128c557600080fd5b82516401000000008111828201881017156128df57600080fd5b82525081516020918201929091019080838360005b8381101561290c5781810151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b506040525050509450945050600090505b600654811015612a3a576006818154811061296157fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061299457fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156129fd57600080fd5b505af1158015612a11573d6000803e3d6000fd5b505050506040513d6020811015612a2757600080fd5b5051612a3257600080fd5b60010161294a565b50509550959350505050565b6000602081905290815260409020805460019091015460e01b82565b6000612a6c6138d1565b506001600160a01b0383166000908152600760209081526040918290208251808401909352805460ff16158015845260019091015491830191909152612ad7576005816020015181548110612abd57fe5b906000526020600020906002020160010154915050612b28565b506001600160a01b0383166000908152600860209081526040918290208251808401909352805460ff16158015845260019091015491830191909152610c63576006816020015181548110612abd57fe5b92915050565b6002546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e21b90811614612b6557600080fd5b60015482906001600160a01b03808316911614612b8157600080fd5b6000856001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b158015612bbe57600080fd5b505af1158015612bd2573d6000803e3d6000fd5b505050506040513d6020811015612be857600080fd5b505190506000816002811115612bfa57fe5b1480612c1157506002816002811115612c0f57fe5b145b15612d49576001600160a01b03861660009081526007602052604090205460ff16612d08576040805180820182526001600160a01b0388811680835260208084018a81526005805460018082018355600083815297517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0600290930292830180546001600160a01b031916919098161790965591517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db190920191909155855180870187528481529054600019018183019081529285526007909152939092209251835460ff19169015151783559051910155612d49565b6001600160a01b038616600090815260076020526040902060010154600580548792908110612d3357fe5b9060005260206000209060020201600101819055505b6001816002811115612d5757fe5b1480612d6e57506002816002811115612d6c57fe5b145b15612ea6576001600160a01b03861660009081526008602052604090205460ff16612e65576040805180820182526001600160a01b0388811680835260208084018a81526006805460018082018355600083815297517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600290930292830180546001600160a01b031916919098161790965591517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4090920191909155855180870187528481529054600019018183019081529285526008909152939092209251835460ff19169015151783559051910155612ea6565b6001600160a01b038616600090815260086020526040902060010154600680548792908110612e9057fe5b9060005260206000209060020201600101819055505b856001600160a01b03167f78800d7333b8d0174a0845569e3913b7ce4a3c03ca444dd9904172fc14f2fdad868360405180838152602001826002811115612ee957fe5b60ff1681526020019250505060405180910390a250600195945050505050565b3360009081526020819052604081206001015460e01b600160e11b90811614612f3157600080fd5b6d7265676973746572536368656d6560901b60005b6005548110156130365760058181548110612f5d57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110612f9057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015612ff957600080fd5b505af115801561300d573d6000803e3d6000fd5b505050506040513d602081101561302357600080fd5b505161302e57600080fd5b600101612f46565b60015484906001600160a01b0380831691161461305257600080fd5b61305a6138d1565b506001600160a01b03881660009081526020818152604080832081518083018352815481526001918201546001600160e01b031960e091821b16828601908152338752948690529290942001549151891891901b1916601f60e01b16156130c057600080fd5b336000908152602081815260409091206001015490820151601f60e01b60e09290921b191616156130f057600080fd5b6001600160a01b0389166000818152602081905260408082208b8155600101805463ffffffff1916600160e01b8c1760e01c1790555133917f546816e99403df442acb68ef69562682a50762c20a3fb6b472f7af9923736cfc91a3600194505050600090505b600654811015611845576006818154811061316d57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106131a057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561320957600080fd5b505af115801561321d573d6000803e3d6000fd5b505050506040513d602081101561323357600080fd5b505161323e57600080fd5b600101613156565b6006818154811061114857fe5b3360009081526020819052604081206001015460e01b600160e01b9081161461327b57600080fd5b6d36b4b73a2932b83aba30ba34b7b760911b60005b60055481101561338057600581815481106132a757fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106132da57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561334357600080fd5b505af1158015613357573d6000803e3d6000fd5b505050506040513d602081101561336d57600080fd5b505161337857600080fd5b600101613290565b60015484906001600160a01b0380831691161461339c57600080fd5b6040805188815290516001600160a01b0388169133917f837f2931e3df0592458212be4e470025f197feb7a8e39deb5b7f1f1d42e6f2629181900360200190a3600354604080516340c10f1960e01b81526001600160a01b038981166004830152602482018b9052915191909216916340c10f199160448083019260209291908290030181600087803b15801561343257600080fd5b505af1158015613446573d6000803e3d6000fd5b505050506040513d602081101561345c57600080fd5b5051935050600090505b600654811015611b1c576006818154811061347d57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106134b057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561351957600080fd5b505af115801561352d573d6000803e3d6000fd5b505050506040513d602081101561354357600080fd5b505161354e57600080fd5b600101613466565b60015460009082906001600160a01b0380831691161461357557600080fd5b6001600160a01b03841660009081526007602052604090205460ff16806122ab57505050506001600160a01b031660009081526008602052604090205460ff1690565b3360009081526020819052604081206001015460e01b600160e01b908116146135e057600080fd5b7f65787465726e616c546f6b656e5472616e7366657246726f6d0000000000000060005b6005548110156136f4576005818154811061361b57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061364e57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156136b757600080fd5b505af11580156136cb573d6000803e3d6000fd5b505050506040513d60208110156136e157600080fd5b50516136ec57600080fd5b600101613604565b60015484906001600160a01b0380831691161461371057600080fd5b60015460408051635bab6ad160e11b81526001600160a01b038c811660048301528b811660248301528a81166044830152606482018a90529151919092169163b756d5a29160848083019260209291908290030181600087803b15801561377657600080fd5b505af115801561378a573d6000803e3d6000fd5b505050506040513d60208110156137a057600080fd5b5051935050600090505b60065481101561389a57600681815481106137c157fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106137f457fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561385d57600080fd5b505af1158015613871573d6000803e3d6000fd5b505050506040513d602081101561388757600080fd5b505161389257600080fd5b6001016137aa565b505095945050505050565b6001600160a01b03811660009081526020819052604090206001015460e01b600160e01b161515919050565b604080518082019091526000808252602082015290565b815481835581811115613914576002028160020283600052602060002091820191016139149190613919565b505050565b61394891905b808211156139445780546001600160a01b03191681556000600182015560020161391f565b5090565b9056fea265627a7a723158204112c3af2ca0c5a8d3ea97fdf1256f4b7fe35165678b994029083982bfcec39964736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101e55760003560e01c806389ae1c901161010f578063e08738da116100a2578063e8c98b2211610071578063e8c98b221461083e578063eaf994b21461085b578063f76488be1461088f578063fb4856a2146108bd576101e5565b8063e08738da1461078e578063e1758bd8146107bc578063e4537a74146107c4578063e869d45f146107fa576101e5565b8063b9a04cdd116100de578063b9a04cdd1461057f578063c9b62eb1146105bb578063d1b7089a14610634578063db6149ce14610746576101e5565b806389ae1c90146104d85780638da03997146104e05780639b51e35a146105065780639be2faed14610551576101e5565b806351803cd8116101875780636c525b13116101565780636c525b13146104195780636e94d2781461043f578063814784f614610473578063824f2f1f14610499576101e5565b806351803cd81461036d5780635aef7de6146103a9578063634965da146103b15780636407e432146103e5576101e5565b80633a02263c116101c35780633a02263c146102ad57806342427bf8146102d15780634422d372146102ff5780634f52b5be1461033f576101e5565b8063039de01d146101ea578063177eebb01461022c5780631c4d56081461026d575b600080fd5b6102186004803603604081101561020057600080fd5b506001600160a01b0381358116916020013516610903565b604080519115158252519081900360200190f35b6102526004803603602081101561024257600080fd5b50356001600160a01b0316610c09565b60408051921515835260208301919091528051918290030190f35b61029b6004803603604081101561028357600080fd5b506001600160a01b0381358116916020013516610c28565b60408051918252519081900360200190f35b6102b5610c6a565b604080516001600160a01b039092168252519081900360200190f35b610218600480360360408110156102e757600080fd5b506001600160a01b0381358116916020013516610c79565b61031c6004803603602081101561031557600080fd5b503561113b565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6102186004803603604081101561035557600080fd5b506001600160a01b0381358116916020013516611170565b6102186004803603608081101561038357600080fd5b506001600160a01b0381358116916020810135821691604082013591606001351661156b565b6102b561184f565b610218600480360360608110156103c757600080fd5b508035906001600160a01b036020820135811691604001351661185e565b610218600480360360608110156103fb57600080fd5b508035906001600160a01b0360208201358116916040013516611b25565b6102186004803603602081101561042f57600080fd5b50356001600160a01b0316611e24565b6102186004803603606081101561045557600080fd5b508035906001600160a01b0360208201358116916040013516611eab565b6102526004803603602081101561048957600080fd5b50356001600160a01b03166121ae565b6104bf600480360360208110156104af57600080fd5b50356001600160a01b03166121cd565b6040805192835260208301919091528051918290030190f35b6102b56121ff565b6102b5600480360360208110156104f657600080fd5b50356001600160a01b031661220e565b6105346004803603604081101561051c57600080fd5b506001600160a01b0381358116916020013516612240565b604080516001600160e01b03199092168252519081900360200190f35b6102186004803603604081101561056757600080fd5b506001600160a01b0381358116916020013516612283565b6102186004803603608081101561059557600080fd5b506001600160a01b038135811691602081013582169160408201359160600135166122b3565b610218600480360360408110156105d157600080fd5b8101906020810181356401000000008111156105ec57600080fd5b8201836020820111156105fe57600080fd5b8035906020019184600183028401116401000000008311171561062057600080fd5b9193509150356001600160a01b0316612585565b6106c36004803603608081101561064a57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561067557600080fd5b82018360208201111561068757600080fd5b803590602001918460018302840111640100000000831117156106a957600080fd5b91935091506001600160a01b038135169060200135612675565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561070a5781810151838201526020016106f2565b50505050905090810190601f1680156107375780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61076c6004803603602081101561075c57600080fd5b50356001600160a01b0316612a46565b604080519283526001600160e01b031990911660208301528051918290030190f35b61029b600480360360408110156107a457600080fd5b506001600160a01b0381358116916020013516612a62565b6102b5612b2e565b610218600480360360608110156107da57600080fd5b506001600160a01b03813581169160208101359160409091013516612b3d565b6102186004803603608081101561081057600080fd5b506001600160a01b0381358116916020810135916001600160e01b0319604083013516916060013516612f09565b61031c6004803603602081101561085457600080fd5b5035613246565b6102186004803603606081101561087157600080fd5b508035906001600160a01b0360208201358116916040013516613253565b610218600480360360408110156108a557600080fd5b506001600160a01b0381358116916020013516613556565b610218600480360360a08110156108d357600080fd5b506001600160a01b03813581169160208101358216916040820135811691606081013591608090910135166135b8565b3360009081526020819052604081206001015460e01b600160e11b9081161461092b57600080fd5b6f756e7265676973746572536368656d6560801b60005b600554811015610a32576005818154811061095957fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061098c57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156109f557600080fd5b505af1158015610a09573d6000803e3d6000fd5b505050506040513d6020811015610a1f57600080fd5b5051610a2a57600080fd5b600101610942565b60015484906001600160a01b03808316911614610a4e57600080fd5b610a57866138a5565b610a645760009350610b0b565b336000908152602081905260408082206001908101546001600160a01b038a168452919092209091015460e091821b19911b16601f60e01b1615610aa757600080fd5b6040516001600160a01b0387169033907f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf90600090a36001600160a01b03861660009081526020819052604081209081556001908101805463ffffffff1916905593505b50600090505b600654811015610c015760068181548110610b2857fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110610b5b57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015610bc457600080fd5b505af1158015610bd8573d6000803e3d6000fd5b505050506040513d6020811015610bee57600080fd5b5051610bf957600080fd5b600101610b11565b505092915050565b6007602052600090815260409020805460019091015460ff9091169082565b60015460009082906001600160a01b03808316911614610c4757600080fd5b6001600160a01b03841660009081526020819052604090205491505b5092915050565b6004546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e31b90811614610ca157600080fd5b60015482906001600160a01b03808316911614610cbd57600080fd5b6004546001600160a01b031615610cd357600080fd5b6001600160a01b038416610ce657600080fd5b600480546001600160a01b0319166001600160a01b0386811691821783556001546040805163f2fde38b60e01b815294850193909352915191169163f2fde38b91602480830192600092919082900301818387803b158015610d4757600080fd5b505af1158015610d5b573d6000803e3d6000fd5b50505050836001600160a01b0316600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610db757600080fd5b505afa158015610dcb573d6000803e3d6000fd5b505050506040513d6020811015610de157600080fd5b50516001600160a01b031614610df657600080fd5b60025460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610e3a57600080fd5b505afa158015610e4e573d6000803e3d6000fd5b505050506040513d6020811015610e6457600080fd5b50516001600160a01b03161415610f72576002546040805163f2fde38b60e01b81526001600160a01b0387811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015610ec357600080fd5b505af1158015610ed7573d6000803e3d6000fd5b50505050836001600160a01b0316600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f3357600080fd5b505afa158015610f47573d6000803e3d6000fd5b505050506040513d6020811015610f5d57600080fd5b50516001600160a01b031614610f7257600080fd5b60035460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610fb657600080fd5b505afa158015610fca573d6000803e3d6000fd5b505050506040513d6020811015610fe057600080fd5b50516001600160a01b031614156110ee576003546040805163f2fde38b60e01b81526001600160a01b0387811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561103f57600080fd5b505af1158015611053573d6000803e3d6000fd5b50505050836001600160a01b0316600360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110af57600080fd5b505afa1580156110c3573d6000803e3d6000fd5b505050506040513d60208110156110d957600080fd5b50516001600160a01b0316146110ee57600080fd5b600454604080516001600160a01b039290921682525130917fdb7cbacf8df312d794506c0cc9af07f64d29ca075796ea2e950a3832cc9a63dd919081900360200190a25060019392505050565b6005818154811061114857fe5b6000918252602090912060029091020180546001909101546001600160a01b03909116915082565b3360009081526020819052604081206001015460e01b600160e21b9081161461119857600080fd5b60015482906001600160a01b038083169116146111b457600080fd5b6111bc6138d1565b6111c46138d1565b6000866001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561120157600080fd5b505af1158015611215573d6000803e3d6000fd5b505050506040513d602081101561122b57600080fd5b5051905060008082600281111561123e57fe5b14806112555750600282600281111561125357fe5b145b15611399576001600160a01b0388166000908152600760209081526040918290208251808401909352805460ff16158015845260019091015491830191909152909450611399576001600580549050038460200151101561135a576005805460001981019081106112c257fe5b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600101548183015290850151600580549295508592909190811061130a57fe5b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b03938416178155938101516001948501558781015187519092168352600790526040909120909101555b600580549061136d9060001983016138e8565b50506001600160a01b0387166000908152600760205260408120805460ff191681556001908101919091555b60018260028111156113a757fe5b14806113be575060028260028111156113bc57fe5b145b15611502576001600160a01b0388166000908152600860209081526040918290208251808401909352805460ff1615801584526001909101549183019190915290945061150257600160068054905003846020015110156114c35760068054600019810190811061142b57fe5b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600101548183015290850151600680549295508592909190811061147357fe5b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b03938416178155938101516001948501558781015187519092168352600890526040909120909101555b60068054906114d69060001983016138e8565b50506001600160a01b0387166000908152600860205260408120805460ff191681556001908101919091555b80156115605760208401516001600160a01b038916907fcdf1a50ea6b7de555bd409f8a4a53ea43c6dc6b4caa961889da9e005f21bbaa990600085600281111561154857fe5b60408051938452911460208301528051918290030190a25b979650505050505050565b3360009081526020819052604081206001015460e01b600160e01b9081161461159357600080fd5b7f65787465726e616c546f6b656e496e637265617365417070726f76616c00000060005b6005548110156116a757600581815481106115ce57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061160157fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561166a57600080fd5b505af115801561167e573d6000803e3d6000fd5b505050506040513d602081101561169457600080fd5b505161169f57600080fd5b6001016115b7565b60015484906001600160a01b038083169116146116c357600080fd5b6001546040805163ab751f7160e01b81526001600160a01b038b811660048301528a81166024830152604482018a90529151919092169163ab751f719160648083019260209291908290030181600087803b15801561172157600080fd5b505af1158015611735573d6000803e3d6000fd5b505050506040513d602081101561174b57600080fd5b5051935050600090505b600654811015611845576006818154811061176c57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061179f57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561180857600080fd5b505af115801561181c573d6000803e3d6000fd5b505050506040513d602081101561183257600080fd5b505161183d57600080fd5b600101611755565b5050949350505050565b6001546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e01b9081161461188657600080fd5b6839b2b73222ba3432b960b91b60005b60055481101561198657600581815481106118ad57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106118e057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561194957600080fd5b505af115801561195d573d6000803e3d6000fd5b505050506040513d602081101561197357600080fd5b505161197e57600080fd5b600101611896565b60015484906001600160a01b038083169116146119a257600080fd5b6001546040805163658b6a5160e11b8152600481018a90526001600160a01b0389811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b1580156119f857600080fd5b505af1158015611a0c573d6000803e3d6000fd5b505050506040513d6020811015611a2257600080fd5b5051935050600090505b600654811015611b1c5760068181548110611a4357fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110611a7657fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611adf57600080fd5b505af1158015611af3573d6000803e3d6000fd5b505050506040513d6020811015611b0957600080fd5b5051611b1457600080fd5b600101611a2c565b50509392505050565b3360009081526020819052604081206001015460e01b600160e01b90811614611b4d57600080fd5b696d696e74546f6b656e7360b01b60005b600554811015611c4e5760058181548110611b7557fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110611ba857fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611c1157600080fd5b505af1158015611c25573d6000803e3d6000fd5b505050506040513d6020811015611c3b57600080fd5b5051611c4657600080fd5b600101611b5e565b60015484906001600160a01b03808316911614611c6a57600080fd5b6040805188815290516001600160a01b0388169133917f21f9c9a1a1f9a311a50f15fec5c1faa9e21fc9edf964f0fdecba5bd490484c5e9181900360200190a3600254604080516340c10f1960e01b81526001600160a01b038981166004830152602482018b9052915191909216916340c10f199160448083019260209291908290030181600087803b158015611d0057600080fd5b505af1158015611d14573d6000803e3d6000fd5b505050506040513d6020811015611d2a57600080fd5b5051935050600090505b600654811015611b1c5760068181548110611d4b57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110611d7e57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611de757600080fd5b505af1158015611dfb573d6000803e3d6000fd5b505050506040513d6020811015611e1157600080fd5b5051611e1c57600080fd5b600101611d34565b60015460009082906001600160a01b03808316911614611e4357600080fd5b611e4c336138a5565b611e595760009150611ea5565b33600081815260208190526040808220828155600101805463ffffffff191690555182917f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf91a3600191505b50919050565b3360009081526020819052604081206001015460e01b600160e01b90811614611ed357600080fd5b6d313ab9372932b83aba30ba34b7b760911b60005b600554811015611fd85760058181548110611eff57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110611f3257fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611f9b57600080fd5b505af1158015611faf573d6000803e3d6000fd5b505050506040513d6020811015611fc557600080fd5b5051611fd057600080fd5b600101611ee8565b60015484906001600160a01b03808316911614611ff457600080fd5b6040805188815290516001600160a01b0388169133917f186d8887e1b22f9d9b16849c36baa748950d09d9c9b67a4a6ea140eaad00c21c9181900360200190a360035460408051632770a7eb60e21b81526001600160a01b038981166004830152602482018b905291519190921691639dc29fac9160448083019260209291908290030181600087803b15801561208a57600080fd5b505af115801561209e573d6000803e3d6000fd5b505050506040513d60208110156120b457600080fd5b5051935050600090505b600654811015611b1c57600681815481106120d557fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061210857fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561217157600080fd5b505af1158015612185573d6000803e3d6000fd5b505050506040513d602081101561219b57600080fd5b50516121a657600080fd5b6001016120be565b6008602052600090815260409020805460019091015460ff9091169082565b600154600090819083906001600160a01b038083169116146121ee57600080fd5b600554600654909350915050915091565b6003546001600160a01b031681565b60015460009082906001600160a01b0380831691161461222d57600080fd5b50506003546001600160a01b0316919050565b60015460009082906001600160a01b0380831691161461225f57600080fd5b5050506001600160a01b031660009081526020819052604090206001015460e01b90565b60015460009082906001600160a01b038083169116146122a257600080fd5b6122ab846138a5565b949350505050565b3360009081526020819052604081206001015460e01b600160e01b908116146122db57600080fd5b7432bc3a32b93730b62a37b5b2b72a3930b739b332b960591b60005b6005548110156123e7576005818154811061230e57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061234157fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156123aa57600080fd5b505af11580156123be573d6000803e3d6000fd5b505050506040513d60208110156123d457600080fd5b50516123df57600080fd5b6001016122f7565b60015484906001600160a01b0380831691161461240357600080fd5b6001546040805163dab0efff60e01b81526001600160a01b038b811660048301528a81166024830152604482018a90529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561246157600080fd5b505af1158015612475573d6000803e3d6000fd5b505050506040513d602081101561248b57600080fd5b5051935050600090505b60065481101561184557600681815481106124ac57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106124df57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561254857600080fd5b505af115801561255c573d6000803e3d6000fd5b505050506040513d602081101561257257600080fd5b505161257d57600080fd5b600101612495565b3360009081526020819052604081206001015460e01b600160e41b908116146125ad57600080fd5b60015482906001600160a01b038083169116146125c957600080fd5b600154604051632242b11b60e21b8152602060048201908152602482018790526001600160a01b039092169163890ac46c91889188918190604401848480828437600081840152601f19601f8201169050808301925050509350505050602060405180830381600087803b15801561264057600080fd5b505af1158015612654573d6000803e3d6000fd5b505050506040513d602081101561266a57600080fd5b505195945050505050565b3360009081526020819052604081206001015460609060e01b600160e41b908116146126a057600080fd5b6a19d95b995c9a58d0d85b1b60aa1b60005b6005548110156127a257600581815481106126c957fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106126fc57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561276557600080fd5b505af1158015612779573d6000803e3d6000fd5b505050506040513d602081101561278f57600080fd5b505161279a57600080fd5b6001016126b2565b60015486906001600160a01b038083169116146127be57600080fd5b60015460405163057e2c8b60e31b81526001600160a01b038c811660048301908152604483018a9052606060248401908152606484018d90529190931692632bf16458928e928e928e928d9290608401858580828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b15801561284c57600080fd5b505af1158015612860573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561288957600080fd5b8151602083018051604051929492938301929190846401000000008211156128b057600080fd5b9083019060208201858111156128c557600080fd5b82516401000000008111828201881017156128df57600080fd5b82525081516020918201929091019080838360005b8381101561290c5781810151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b506040525050509450945050600090505b600654811015612a3a576006818154811061296157fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061299457fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156129fd57600080fd5b505af1158015612a11573d6000803e3d6000fd5b505050506040513d6020811015612a2757600080fd5b5051612a3257600080fd5b60010161294a565b50509550959350505050565b6000602081905290815260409020805460019091015460e01b82565b6000612a6c6138d1565b506001600160a01b0383166000908152600760209081526040918290208251808401909352805460ff16158015845260019091015491830191909152612ad7576005816020015181548110612abd57fe5b906000526020600020906002020160010154915050612b28565b506001600160a01b0383166000908152600860209081526040918290208251808401909352805460ff16158015845260019091015491830191909152610c63576006816020015181548110612abd57fe5b92915050565b6002546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e21b90811614612b6557600080fd5b60015482906001600160a01b03808316911614612b8157600080fd5b6000856001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b158015612bbe57600080fd5b505af1158015612bd2573d6000803e3d6000fd5b505050506040513d6020811015612be857600080fd5b505190506000816002811115612bfa57fe5b1480612c1157506002816002811115612c0f57fe5b145b15612d49576001600160a01b03861660009081526007602052604090205460ff16612d08576040805180820182526001600160a01b0388811680835260208084018a81526005805460018082018355600083815297517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0600290930292830180546001600160a01b031916919098161790965591517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db190920191909155855180870187528481529054600019018183019081529285526007909152939092209251835460ff19169015151783559051910155612d49565b6001600160a01b038616600090815260076020526040902060010154600580548792908110612d3357fe5b9060005260206000209060020201600101819055505b6001816002811115612d5757fe5b1480612d6e57506002816002811115612d6c57fe5b145b15612ea6576001600160a01b03861660009081526008602052604090205460ff16612e65576040805180820182526001600160a01b0388811680835260208084018a81526006805460018082018355600083815297517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600290930292830180546001600160a01b031916919098161790965591517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4090920191909155855180870187528481529054600019018183019081529285526008909152939092209251835460ff19169015151783559051910155612ea6565b6001600160a01b038616600090815260086020526040902060010154600680548792908110612e9057fe5b9060005260206000209060020201600101819055505b856001600160a01b03167f78800d7333b8d0174a0845569e3913b7ce4a3c03ca444dd9904172fc14f2fdad868360405180838152602001826002811115612ee957fe5b60ff1681526020019250505060405180910390a250600195945050505050565b3360009081526020819052604081206001015460e01b600160e11b90811614612f3157600080fd5b6d7265676973746572536368656d6560901b60005b6005548110156130365760058181548110612f5d57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110612f9057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015612ff957600080fd5b505af115801561300d573d6000803e3d6000fd5b505050506040513d602081101561302357600080fd5b505161302e57600080fd5b600101612f46565b60015484906001600160a01b0380831691161461305257600080fd5b61305a6138d1565b506001600160a01b03881660009081526020818152604080832081518083018352815481526001918201546001600160e01b031960e091821b16828601908152338752948690529290942001549151891891901b1916601f60e01b16156130c057600080fd5b336000908152602081815260409091206001015490820151601f60e01b60e09290921b191616156130f057600080fd5b6001600160a01b0389166000818152602081905260408082208b8155600101805463ffffffff1916600160e01b8c1760e01c1790555133917f546816e99403df442acb68ef69562682a50762c20a3fb6b472f7af9923736cfc91a3600194505050600090505b600654811015611845576006818154811061316d57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106131a057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561320957600080fd5b505af115801561321d573d6000803e3d6000fd5b505050506040513d602081101561323357600080fd5b505161323e57600080fd5b600101613156565b6006818154811061114857fe5b3360009081526020819052604081206001015460e01b600160e01b9081161461327b57600080fd5b6d36b4b73a2932b83aba30ba34b7b760911b60005b60055481101561338057600581815481106132a757fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106132da57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561334357600080fd5b505af1158015613357573d6000803e3d6000fd5b505050506040513d602081101561336d57600080fd5b505161337857600080fd5b600101613290565b60015484906001600160a01b0380831691161461339c57600080fd5b6040805188815290516001600160a01b0388169133917f837f2931e3df0592458212be4e470025f197feb7a8e39deb5b7f1f1d42e6f2629181900360200190a3600354604080516340c10f1960e01b81526001600160a01b038981166004830152602482018b9052915191909216916340c10f199160448083019260209291908290030181600087803b15801561343257600080fd5b505af1158015613446573d6000803e3d6000fd5b505050506040513d602081101561345c57600080fd5b5051935050600090505b600654811015611b1c576006818154811061347d57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106134b057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561351957600080fd5b505af115801561352d573d6000803e3d6000fd5b505050506040513d602081101561354357600080fd5b505161354e57600080fd5b600101613466565b60015460009082906001600160a01b0380831691161461357557600080fd5b6001600160a01b03841660009081526007602052604090205460ff16806122ab57505050506001600160a01b031660009081526008602052604090205460ff1690565b3360009081526020819052604081206001015460e01b600160e01b908116146135e057600080fd5b7f65787465726e616c546f6b656e5472616e7366657246726f6d0000000000000060005b6005548110156136f4576005818154811061361b57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061364e57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156136b757600080fd5b505af11580156136cb573d6000803e3d6000fd5b505050506040513d60208110156136e157600080fd5b50516136ec57600080fd5b600101613604565b60015484906001600160a01b0380831691161461371057600080fd5b60015460408051635bab6ad160e11b81526001600160a01b038c811660048301528b811660248301528a81166044830152606482018a90529151919092169163b756d5a29160848083019260209291908290030181600087803b15801561377657600080fd5b505af115801561378a573d6000803e3d6000fd5b505050506040513d60208110156137a057600080fd5b5051935050600090505b60065481101561389a57600681815481106137c157fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106137f457fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561385d57600080fd5b505af1158015613871573d6000803e3d6000fd5b505050506040513d602081101561388757600080fd5b505161389257600080fd5b6001016137aa565b505095945050505050565b6001600160a01b03811660009081526020819052604090206001015460e01b600160e01b161515919050565b604080518082019091526000808252602082015290565b815481835581811115613914576002028160020283600052602060002091820191016139149190613919565b505050565b61394891905b808211156139445780546001600160a01b03191681556000600182015560020161391f565b5090565b9056fea265627a7a723158204112c3af2ca0c5a8d3ea97fdf1256f4b7fe35165678b994029083982bfcec39964736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ControllerCreator.json b/contracts/0.0.1-rc.53/ControllerCreator.json new file mode 100644 index 00000000..ec1dc8b2 --- /dev/null +++ b/contracts/0.0.1-rc.53/ControllerCreator.json @@ -0,0 +1,32 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ControllerCreator", + "sourceName": "contracts/universalSchemes/DaoCreator.sol", + "abi": [ + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "create", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50613d7a806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80639ed9331814610030575b600080fd5b6100566004803603602081101561004657600080fd5b50356001600160a01b0316610072565b604080516001600160a01b039092168252519081900360200190f35b60008082604051610082906101ca565b6001600160a01b03909116815260405190819003602001906000f0801580156100af573d6000803e3d6000fd5b506040805163e869d45f60e01b8152336004820152600060248201819052601f60e01b60448301526001600160a01b03878116606484015292519394509184169263e869d45f92608480840193602093929083900390910190829087803b15801561011957600080fd5b505af115801561012d573d6000803e3d6000fd5b505050506040513d602081101561014357600080fd5b50506040805163039de01d60e01b81523060048201526001600160a01b03858116602483015291519183169163039de01d916044808201926020929091908290030181600087803b15801561019757600080fd5b505af11580156101ab573d6000803e3d6000fd5b505050506040513d60208110156101c157600080fd5b50909392505050565b613b6e806101d88339019056fe60806040523480156200001157600080fd5b5060405162003b6e38038062003b6e833981810160405260208110156200003757600080fd5b5051600180546001600160a01b0319166001600160a01b03808416919091179182905560408051631c2eb17b60e31b81529051929091169163e1758bd891600480820192602092909190829003018186803b1580156200009657600080fd5b505afa158015620000ab573d6000803e3d6000fd5b505050506040513d6020811015620000c257600080fd5b5051600280546001600160a01b0319166001600160a01b039283161790556001546040805163089ae1c960e41b8152905191909216916389ae1c90916004808301926020929190829003018186803b1580156200011e57600080fd5b505afa15801562000133573d6000803e3d6000fd5b505050506040513d60208110156200014a57600080fd5b5051600380546001600160a01b0319166001600160a01b039092169190911790556040805180820182526000808252601f60e01b60208084019182523380845290839052848320935184559051600193909301805463ffffffff191660e09490941c939093179092559151909182917f546816e99403df442acb68ef69562682a50762c20a3fb6b472f7af9923736cfc9190a35061398080620001ee6000396000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c806389ae1c901161010f578063e08738da116100a2578063e8c98b2211610071578063e8c98b221461083e578063eaf994b21461085b578063f76488be1461088f578063fb4856a2146108bd576101e5565b8063e08738da1461078e578063e1758bd8146107bc578063e4537a74146107c4578063e869d45f146107fa576101e5565b8063b9a04cdd116100de578063b9a04cdd1461057f578063c9b62eb1146105bb578063d1b7089a14610634578063db6149ce14610746576101e5565b806389ae1c90146104d85780638da03997146104e05780639b51e35a146105065780639be2faed14610551576101e5565b806351803cd8116101875780636c525b13116101565780636c525b13146104195780636e94d2781461043f578063814784f614610473578063824f2f1f14610499576101e5565b806351803cd81461036d5780635aef7de6146103a9578063634965da146103b15780636407e432146103e5576101e5565b80633a02263c116101c35780633a02263c146102ad57806342427bf8146102d15780634422d372146102ff5780634f52b5be1461033f576101e5565b8063039de01d146101ea578063177eebb01461022c5780631c4d56081461026d575b600080fd5b6102186004803603604081101561020057600080fd5b506001600160a01b0381358116916020013516610903565b604080519115158252519081900360200190f35b6102526004803603602081101561024257600080fd5b50356001600160a01b0316610c09565b60408051921515835260208301919091528051918290030190f35b61029b6004803603604081101561028357600080fd5b506001600160a01b0381358116916020013516610c28565b60408051918252519081900360200190f35b6102b5610c6a565b604080516001600160a01b039092168252519081900360200190f35b610218600480360360408110156102e757600080fd5b506001600160a01b0381358116916020013516610c79565b61031c6004803603602081101561031557600080fd5b503561113b565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6102186004803603604081101561035557600080fd5b506001600160a01b0381358116916020013516611170565b6102186004803603608081101561038357600080fd5b506001600160a01b0381358116916020810135821691604082013591606001351661156b565b6102b561184f565b610218600480360360608110156103c757600080fd5b508035906001600160a01b036020820135811691604001351661185e565b610218600480360360608110156103fb57600080fd5b508035906001600160a01b0360208201358116916040013516611b25565b6102186004803603602081101561042f57600080fd5b50356001600160a01b0316611e24565b6102186004803603606081101561045557600080fd5b508035906001600160a01b0360208201358116916040013516611eab565b6102526004803603602081101561048957600080fd5b50356001600160a01b03166121ae565b6104bf600480360360208110156104af57600080fd5b50356001600160a01b03166121cd565b6040805192835260208301919091528051918290030190f35b6102b56121ff565b6102b5600480360360208110156104f657600080fd5b50356001600160a01b031661220e565b6105346004803603604081101561051c57600080fd5b506001600160a01b0381358116916020013516612240565b604080516001600160e01b03199092168252519081900360200190f35b6102186004803603604081101561056757600080fd5b506001600160a01b0381358116916020013516612283565b6102186004803603608081101561059557600080fd5b506001600160a01b038135811691602081013582169160408201359160600135166122b3565b610218600480360360408110156105d157600080fd5b8101906020810181356401000000008111156105ec57600080fd5b8201836020820111156105fe57600080fd5b8035906020019184600183028401116401000000008311171561062057600080fd5b9193509150356001600160a01b0316612585565b6106c36004803603608081101561064a57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561067557600080fd5b82018360208201111561068757600080fd5b803590602001918460018302840111640100000000831117156106a957600080fd5b91935091506001600160a01b038135169060200135612675565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561070a5781810151838201526020016106f2565b50505050905090810190601f1680156107375780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61076c6004803603602081101561075c57600080fd5b50356001600160a01b0316612a46565b604080519283526001600160e01b031990911660208301528051918290030190f35b61029b600480360360408110156107a457600080fd5b506001600160a01b0381358116916020013516612a62565b6102b5612b2e565b610218600480360360608110156107da57600080fd5b506001600160a01b03813581169160208101359160409091013516612b3d565b6102186004803603608081101561081057600080fd5b506001600160a01b0381358116916020810135916001600160e01b0319604083013516916060013516612f09565b61031c6004803603602081101561085457600080fd5b5035613246565b6102186004803603606081101561087157600080fd5b508035906001600160a01b0360208201358116916040013516613253565b610218600480360360408110156108a557600080fd5b506001600160a01b0381358116916020013516613556565b610218600480360360a08110156108d357600080fd5b506001600160a01b03813581169160208101358216916040820135811691606081013591608090910135166135b8565b3360009081526020819052604081206001015460e01b600160e11b9081161461092b57600080fd5b6f756e7265676973746572536368656d6560801b60005b600554811015610a32576005818154811061095957fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061098c57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156109f557600080fd5b505af1158015610a09573d6000803e3d6000fd5b505050506040513d6020811015610a1f57600080fd5b5051610a2a57600080fd5b600101610942565b60015484906001600160a01b03808316911614610a4e57600080fd5b610a57866138a5565b610a645760009350610b0b565b336000908152602081905260408082206001908101546001600160a01b038a168452919092209091015460e091821b19911b16601f60e01b1615610aa757600080fd5b6040516001600160a01b0387169033907f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf90600090a36001600160a01b03861660009081526020819052604081209081556001908101805463ffffffff1916905593505b50600090505b600654811015610c015760068181548110610b2857fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110610b5b57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015610bc457600080fd5b505af1158015610bd8573d6000803e3d6000fd5b505050506040513d6020811015610bee57600080fd5b5051610bf957600080fd5b600101610b11565b505092915050565b6007602052600090815260409020805460019091015460ff9091169082565b60015460009082906001600160a01b03808316911614610c4757600080fd5b6001600160a01b03841660009081526020819052604090205491505b5092915050565b6004546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e31b90811614610ca157600080fd5b60015482906001600160a01b03808316911614610cbd57600080fd5b6004546001600160a01b031615610cd357600080fd5b6001600160a01b038416610ce657600080fd5b600480546001600160a01b0319166001600160a01b0386811691821783556001546040805163f2fde38b60e01b815294850193909352915191169163f2fde38b91602480830192600092919082900301818387803b158015610d4757600080fd5b505af1158015610d5b573d6000803e3d6000fd5b50505050836001600160a01b0316600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610db757600080fd5b505afa158015610dcb573d6000803e3d6000fd5b505050506040513d6020811015610de157600080fd5b50516001600160a01b031614610df657600080fd5b60025460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610e3a57600080fd5b505afa158015610e4e573d6000803e3d6000fd5b505050506040513d6020811015610e6457600080fd5b50516001600160a01b03161415610f72576002546040805163f2fde38b60e01b81526001600160a01b0387811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015610ec357600080fd5b505af1158015610ed7573d6000803e3d6000fd5b50505050836001600160a01b0316600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f3357600080fd5b505afa158015610f47573d6000803e3d6000fd5b505050506040513d6020811015610f5d57600080fd5b50516001600160a01b031614610f7257600080fd5b60035460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610fb657600080fd5b505afa158015610fca573d6000803e3d6000fd5b505050506040513d6020811015610fe057600080fd5b50516001600160a01b031614156110ee576003546040805163f2fde38b60e01b81526001600160a01b0387811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561103f57600080fd5b505af1158015611053573d6000803e3d6000fd5b50505050836001600160a01b0316600360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110af57600080fd5b505afa1580156110c3573d6000803e3d6000fd5b505050506040513d60208110156110d957600080fd5b50516001600160a01b0316146110ee57600080fd5b600454604080516001600160a01b039290921682525130917fdb7cbacf8df312d794506c0cc9af07f64d29ca075796ea2e950a3832cc9a63dd919081900360200190a25060019392505050565b6005818154811061114857fe5b6000918252602090912060029091020180546001909101546001600160a01b03909116915082565b3360009081526020819052604081206001015460e01b600160e21b9081161461119857600080fd5b60015482906001600160a01b038083169116146111b457600080fd5b6111bc6138d1565b6111c46138d1565b6000866001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561120157600080fd5b505af1158015611215573d6000803e3d6000fd5b505050506040513d602081101561122b57600080fd5b5051905060008082600281111561123e57fe5b14806112555750600282600281111561125357fe5b145b15611399576001600160a01b0388166000908152600760209081526040918290208251808401909352805460ff16158015845260019091015491830191909152909450611399576001600580549050038460200151101561135a576005805460001981019081106112c257fe5b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600101548183015290850151600580549295508592909190811061130a57fe5b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b03938416178155938101516001948501558781015187519092168352600790526040909120909101555b600580549061136d9060001983016138e8565b50506001600160a01b0387166000908152600760205260408120805460ff191681556001908101919091555b60018260028111156113a757fe5b14806113be575060028260028111156113bc57fe5b145b15611502576001600160a01b0388166000908152600860209081526040918290208251808401909352805460ff1615801584526001909101549183019190915290945061150257600160068054905003846020015110156114c35760068054600019810190811061142b57fe5b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600101548183015290850151600680549295508592909190811061147357fe5b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b03938416178155938101516001948501558781015187519092168352600890526040909120909101555b60068054906114d69060001983016138e8565b50506001600160a01b0387166000908152600860205260408120805460ff191681556001908101919091555b80156115605760208401516001600160a01b038916907fcdf1a50ea6b7de555bd409f8a4a53ea43c6dc6b4caa961889da9e005f21bbaa990600085600281111561154857fe5b60408051938452911460208301528051918290030190a25b979650505050505050565b3360009081526020819052604081206001015460e01b600160e01b9081161461159357600080fd5b7f65787465726e616c546f6b656e496e637265617365417070726f76616c00000060005b6005548110156116a757600581815481106115ce57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061160157fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561166a57600080fd5b505af115801561167e573d6000803e3d6000fd5b505050506040513d602081101561169457600080fd5b505161169f57600080fd5b6001016115b7565b60015484906001600160a01b038083169116146116c357600080fd5b6001546040805163ab751f7160e01b81526001600160a01b038b811660048301528a81166024830152604482018a90529151919092169163ab751f719160648083019260209291908290030181600087803b15801561172157600080fd5b505af1158015611735573d6000803e3d6000fd5b505050506040513d602081101561174b57600080fd5b5051935050600090505b600654811015611845576006818154811061176c57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061179f57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561180857600080fd5b505af115801561181c573d6000803e3d6000fd5b505050506040513d602081101561183257600080fd5b505161183d57600080fd5b600101611755565b5050949350505050565b6001546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e01b9081161461188657600080fd5b6839b2b73222ba3432b960b91b60005b60055481101561198657600581815481106118ad57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106118e057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561194957600080fd5b505af115801561195d573d6000803e3d6000fd5b505050506040513d602081101561197357600080fd5b505161197e57600080fd5b600101611896565b60015484906001600160a01b038083169116146119a257600080fd5b6001546040805163658b6a5160e11b8152600481018a90526001600160a01b0389811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b1580156119f857600080fd5b505af1158015611a0c573d6000803e3d6000fd5b505050506040513d6020811015611a2257600080fd5b5051935050600090505b600654811015611b1c5760068181548110611a4357fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110611a7657fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611adf57600080fd5b505af1158015611af3573d6000803e3d6000fd5b505050506040513d6020811015611b0957600080fd5b5051611b1457600080fd5b600101611a2c565b50509392505050565b3360009081526020819052604081206001015460e01b600160e01b90811614611b4d57600080fd5b696d696e74546f6b656e7360b01b60005b600554811015611c4e5760058181548110611b7557fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110611ba857fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611c1157600080fd5b505af1158015611c25573d6000803e3d6000fd5b505050506040513d6020811015611c3b57600080fd5b5051611c4657600080fd5b600101611b5e565b60015484906001600160a01b03808316911614611c6a57600080fd5b6040805188815290516001600160a01b0388169133917f21f9c9a1a1f9a311a50f15fec5c1faa9e21fc9edf964f0fdecba5bd490484c5e9181900360200190a3600254604080516340c10f1960e01b81526001600160a01b038981166004830152602482018b9052915191909216916340c10f199160448083019260209291908290030181600087803b158015611d0057600080fd5b505af1158015611d14573d6000803e3d6000fd5b505050506040513d6020811015611d2a57600080fd5b5051935050600090505b600654811015611b1c5760068181548110611d4b57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110611d7e57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611de757600080fd5b505af1158015611dfb573d6000803e3d6000fd5b505050506040513d6020811015611e1157600080fd5b5051611e1c57600080fd5b600101611d34565b60015460009082906001600160a01b03808316911614611e4357600080fd5b611e4c336138a5565b611e595760009150611ea5565b33600081815260208190526040808220828155600101805463ffffffff191690555182917f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf91a3600191505b50919050565b3360009081526020819052604081206001015460e01b600160e01b90811614611ed357600080fd5b6d313ab9372932b83aba30ba34b7b760911b60005b600554811015611fd85760058181548110611eff57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110611f3257fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611f9b57600080fd5b505af1158015611faf573d6000803e3d6000fd5b505050506040513d6020811015611fc557600080fd5b5051611fd057600080fd5b600101611ee8565b60015484906001600160a01b03808316911614611ff457600080fd5b6040805188815290516001600160a01b0388169133917f186d8887e1b22f9d9b16849c36baa748950d09d9c9b67a4a6ea140eaad00c21c9181900360200190a360035460408051632770a7eb60e21b81526001600160a01b038981166004830152602482018b905291519190921691639dc29fac9160448083019260209291908290030181600087803b15801561208a57600080fd5b505af115801561209e573d6000803e3d6000fd5b505050506040513d60208110156120b457600080fd5b5051935050600090505b600654811015611b1c57600681815481106120d557fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061210857fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561217157600080fd5b505af1158015612185573d6000803e3d6000fd5b505050506040513d602081101561219b57600080fd5b50516121a657600080fd5b6001016120be565b6008602052600090815260409020805460019091015460ff9091169082565b600154600090819083906001600160a01b038083169116146121ee57600080fd5b600554600654909350915050915091565b6003546001600160a01b031681565b60015460009082906001600160a01b0380831691161461222d57600080fd5b50506003546001600160a01b0316919050565b60015460009082906001600160a01b0380831691161461225f57600080fd5b5050506001600160a01b031660009081526020819052604090206001015460e01b90565b60015460009082906001600160a01b038083169116146122a257600080fd5b6122ab846138a5565b949350505050565b3360009081526020819052604081206001015460e01b600160e01b908116146122db57600080fd5b7432bc3a32b93730b62a37b5b2b72a3930b739b332b960591b60005b6005548110156123e7576005818154811061230e57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061234157fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156123aa57600080fd5b505af11580156123be573d6000803e3d6000fd5b505050506040513d60208110156123d457600080fd5b50516123df57600080fd5b6001016122f7565b60015484906001600160a01b0380831691161461240357600080fd5b6001546040805163dab0efff60e01b81526001600160a01b038b811660048301528a81166024830152604482018a90529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561246157600080fd5b505af1158015612475573d6000803e3d6000fd5b505050506040513d602081101561248b57600080fd5b5051935050600090505b60065481101561184557600681815481106124ac57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106124df57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561254857600080fd5b505af115801561255c573d6000803e3d6000fd5b505050506040513d602081101561257257600080fd5b505161257d57600080fd5b600101612495565b3360009081526020819052604081206001015460e01b600160e41b908116146125ad57600080fd5b60015482906001600160a01b038083169116146125c957600080fd5b600154604051632242b11b60e21b8152602060048201908152602482018790526001600160a01b039092169163890ac46c91889188918190604401848480828437600081840152601f19601f8201169050808301925050509350505050602060405180830381600087803b15801561264057600080fd5b505af1158015612654573d6000803e3d6000fd5b505050506040513d602081101561266a57600080fd5b505195945050505050565b3360009081526020819052604081206001015460609060e01b600160e41b908116146126a057600080fd5b6a19d95b995c9a58d0d85b1b60aa1b60005b6005548110156127a257600581815481106126c957fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106126fc57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561276557600080fd5b505af1158015612779573d6000803e3d6000fd5b505050506040513d602081101561278f57600080fd5b505161279a57600080fd5b6001016126b2565b60015486906001600160a01b038083169116146127be57600080fd5b60015460405163057e2c8b60e31b81526001600160a01b038c811660048301908152604483018a9052606060248401908152606484018d90529190931692632bf16458928e928e928e928d9290608401858580828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b15801561284c57600080fd5b505af1158015612860573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561288957600080fd5b8151602083018051604051929492938301929190846401000000008211156128b057600080fd5b9083019060208201858111156128c557600080fd5b82516401000000008111828201881017156128df57600080fd5b82525081516020918201929091019080838360005b8381101561290c5781810151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b506040525050509450945050600090505b600654811015612a3a576006818154811061296157fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061299457fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156129fd57600080fd5b505af1158015612a11573d6000803e3d6000fd5b505050506040513d6020811015612a2757600080fd5b5051612a3257600080fd5b60010161294a565b50509550959350505050565b6000602081905290815260409020805460019091015460e01b82565b6000612a6c6138d1565b506001600160a01b0383166000908152600760209081526040918290208251808401909352805460ff16158015845260019091015491830191909152612ad7576005816020015181548110612abd57fe5b906000526020600020906002020160010154915050612b28565b506001600160a01b0383166000908152600860209081526040918290208251808401909352805460ff16158015845260019091015491830191909152610c63576006816020015181548110612abd57fe5b92915050565b6002546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e21b90811614612b6557600080fd5b60015482906001600160a01b03808316911614612b8157600080fd5b6000856001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b158015612bbe57600080fd5b505af1158015612bd2573d6000803e3d6000fd5b505050506040513d6020811015612be857600080fd5b505190506000816002811115612bfa57fe5b1480612c1157506002816002811115612c0f57fe5b145b15612d49576001600160a01b03861660009081526007602052604090205460ff16612d08576040805180820182526001600160a01b0388811680835260208084018a81526005805460018082018355600083815297517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0600290930292830180546001600160a01b031916919098161790965591517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db190920191909155855180870187528481529054600019018183019081529285526007909152939092209251835460ff19169015151783559051910155612d49565b6001600160a01b038616600090815260076020526040902060010154600580548792908110612d3357fe5b9060005260206000209060020201600101819055505b6001816002811115612d5757fe5b1480612d6e57506002816002811115612d6c57fe5b145b15612ea6576001600160a01b03861660009081526008602052604090205460ff16612e65576040805180820182526001600160a01b0388811680835260208084018a81526006805460018082018355600083815297517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600290930292830180546001600160a01b031916919098161790965591517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4090920191909155855180870187528481529054600019018183019081529285526008909152939092209251835460ff19169015151783559051910155612ea6565b6001600160a01b038616600090815260086020526040902060010154600680548792908110612e9057fe5b9060005260206000209060020201600101819055505b856001600160a01b03167f78800d7333b8d0174a0845569e3913b7ce4a3c03ca444dd9904172fc14f2fdad868360405180838152602001826002811115612ee957fe5b60ff1681526020019250505060405180910390a250600195945050505050565b3360009081526020819052604081206001015460e01b600160e11b90811614612f3157600080fd5b6d7265676973746572536368656d6560901b60005b6005548110156130365760058181548110612f5d57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110612f9057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015612ff957600080fd5b505af115801561300d573d6000803e3d6000fd5b505050506040513d602081101561302357600080fd5b505161302e57600080fd5b600101612f46565b60015484906001600160a01b0380831691161461305257600080fd5b61305a6138d1565b506001600160a01b03881660009081526020818152604080832081518083018352815481526001918201546001600160e01b031960e091821b16828601908152338752948690529290942001549151891891901b1916601f60e01b16156130c057600080fd5b336000908152602081815260409091206001015490820151601f60e01b60e09290921b191616156130f057600080fd5b6001600160a01b0389166000818152602081905260408082208b8155600101805463ffffffff1916600160e01b8c1760e01c1790555133917f546816e99403df442acb68ef69562682a50762c20a3fb6b472f7af9923736cfc91a3600194505050600090505b600654811015611845576006818154811061316d57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106131a057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561320957600080fd5b505af115801561321d573d6000803e3d6000fd5b505050506040513d602081101561323357600080fd5b505161323e57600080fd5b600101613156565b6006818154811061114857fe5b3360009081526020819052604081206001015460e01b600160e01b9081161461327b57600080fd5b6d36b4b73a2932b83aba30ba34b7b760911b60005b60055481101561338057600581815481106132a757fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106132da57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561334357600080fd5b505af1158015613357573d6000803e3d6000fd5b505050506040513d602081101561336d57600080fd5b505161337857600080fd5b600101613290565b60015484906001600160a01b0380831691161461339c57600080fd5b6040805188815290516001600160a01b0388169133917f837f2931e3df0592458212be4e470025f197feb7a8e39deb5b7f1f1d42e6f2629181900360200190a3600354604080516340c10f1960e01b81526001600160a01b038981166004830152602482018b9052915191909216916340c10f199160448083019260209291908290030181600087803b15801561343257600080fd5b505af1158015613446573d6000803e3d6000fd5b505050506040513d602081101561345c57600080fd5b5051935050600090505b600654811015611b1c576006818154811061347d57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106134b057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561351957600080fd5b505af115801561352d573d6000803e3d6000fd5b505050506040513d602081101561354357600080fd5b505161354e57600080fd5b600101613466565b60015460009082906001600160a01b0380831691161461357557600080fd5b6001600160a01b03841660009081526007602052604090205460ff16806122ab57505050506001600160a01b031660009081526008602052604090205460ff1690565b3360009081526020819052604081206001015460e01b600160e01b908116146135e057600080fd5b7f65787465726e616c546f6b656e5472616e7366657246726f6d0000000000000060005b6005548110156136f4576005818154811061361b57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061364e57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156136b757600080fd5b505af11580156136cb573d6000803e3d6000fd5b505050506040513d60208110156136e157600080fd5b50516136ec57600080fd5b600101613604565b60015484906001600160a01b0380831691161461371057600080fd5b60015460408051635bab6ad160e11b81526001600160a01b038c811660048301528b811660248301528a81166044830152606482018a90529151919092169163b756d5a29160848083019260209291908290030181600087803b15801561377657600080fd5b505af115801561378a573d6000803e3d6000fd5b505050506040513d60208110156137a057600080fd5b5051935050600090505b60065481101561389a57600681815481106137c157fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106137f457fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561385d57600080fd5b505af1158015613871573d6000803e3d6000fd5b505050506040513d602081101561388757600080fd5b505161389257600080fd5b6001016137aa565b505095945050505050565b6001600160a01b03811660009081526020819052604090206001015460e01b600160e01b161515919050565b604080518082019091526000808252602082015290565b815481835581811115613914576002028160020283600052602060002091820191016139149190613919565b505050565b61394891905b808211156139445780546001600160a01b03191681556000600182015560020161391f565b5090565b9056fea265627a7a723158204112c3af2ca0c5a8d3ea97fdf1256f4b7fe35165678b994029083982bfcec39964736f6c63430005110032a265627a7a723158208c2a5ffabe040efeee430126d0093603c406c3da5b09b9aeaa5fc107ec0fef0b64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80639ed9331814610030575b600080fd5b6100566004803603602081101561004657600080fd5b50356001600160a01b0316610072565b604080516001600160a01b039092168252519081900360200190f35b60008082604051610082906101ca565b6001600160a01b03909116815260405190819003602001906000f0801580156100af573d6000803e3d6000fd5b506040805163e869d45f60e01b8152336004820152600060248201819052601f60e01b60448301526001600160a01b03878116606484015292519394509184169263e869d45f92608480840193602093929083900390910190829087803b15801561011957600080fd5b505af115801561012d573d6000803e3d6000fd5b505050506040513d602081101561014357600080fd5b50506040805163039de01d60e01b81523060048201526001600160a01b03858116602483015291519183169163039de01d916044808201926020929091908290030181600087803b15801561019757600080fd5b505af11580156101ab573d6000803e3d6000fd5b505050506040513d60208110156101c157600080fd5b50909392505050565b613b6e806101d88339019056fe60806040523480156200001157600080fd5b5060405162003b6e38038062003b6e833981810160405260208110156200003757600080fd5b5051600180546001600160a01b0319166001600160a01b03808416919091179182905560408051631c2eb17b60e31b81529051929091169163e1758bd891600480820192602092909190829003018186803b1580156200009657600080fd5b505afa158015620000ab573d6000803e3d6000fd5b505050506040513d6020811015620000c257600080fd5b5051600280546001600160a01b0319166001600160a01b039283161790556001546040805163089ae1c960e41b8152905191909216916389ae1c90916004808301926020929190829003018186803b1580156200011e57600080fd5b505afa15801562000133573d6000803e3d6000fd5b505050506040513d60208110156200014a57600080fd5b5051600380546001600160a01b0319166001600160a01b039092169190911790556040805180820182526000808252601f60e01b60208084019182523380845290839052848320935184559051600193909301805463ffffffff191660e09490941c939093179092559151909182917f546816e99403df442acb68ef69562682a50762c20a3fb6b472f7af9923736cfc9190a35061398080620001ee6000396000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c806389ae1c901161010f578063e08738da116100a2578063e8c98b2211610071578063e8c98b221461083e578063eaf994b21461085b578063f76488be1461088f578063fb4856a2146108bd576101e5565b8063e08738da1461078e578063e1758bd8146107bc578063e4537a74146107c4578063e869d45f146107fa576101e5565b8063b9a04cdd116100de578063b9a04cdd1461057f578063c9b62eb1146105bb578063d1b7089a14610634578063db6149ce14610746576101e5565b806389ae1c90146104d85780638da03997146104e05780639b51e35a146105065780639be2faed14610551576101e5565b806351803cd8116101875780636c525b13116101565780636c525b13146104195780636e94d2781461043f578063814784f614610473578063824f2f1f14610499576101e5565b806351803cd81461036d5780635aef7de6146103a9578063634965da146103b15780636407e432146103e5576101e5565b80633a02263c116101c35780633a02263c146102ad57806342427bf8146102d15780634422d372146102ff5780634f52b5be1461033f576101e5565b8063039de01d146101ea578063177eebb01461022c5780631c4d56081461026d575b600080fd5b6102186004803603604081101561020057600080fd5b506001600160a01b0381358116916020013516610903565b604080519115158252519081900360200190f35b6102526004803603602081101561024257600080fd5b50356001600160a01b0316610c09565b60408051921515835260208301919091528051918290030190f35b61029b6004803603604081101561028357600080fd5b506001600160a01b0381358116916020013516610c28565b60408051918252519081900360200190f35b6102b5610c6a565b604080516001600160a01b039092168252519081900360200190f35b610218600480360360408110156102e757600080fd5b506001600160a01b0381358116916020013516610c79565b61031c6004803603602081101561031557600080fd5b503561113b565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6102186004803603604081101561035557600080fd5b506001600160a01b0381358116916020013516611170565b6102186004803603608081101561038357600080fd5b506001600160a01b0381358116916020810135821691604082013591606001351661156b565b6102b561184f565b610218600480360360608110156103c757600080fd5b508035906001600160a01b036020820135811691604001351661185e565b610218600480360360608110156103fb57600080fd5b508035906001600160a01b0360208201358116916040013516611b25565b6102186004803603602081101561042f57600080fd5b50356001600160a01b0316611e24565b6102186004803603606081101561045557600080fd5b508035906001600160a01b0360208201358116916040013516611eab565b6102526004803603602081101561048957600080fd5b50356001600160a01b03166121ae565b6104bf600480360360208110156104af57600080fd5b50356001600160a01b03166121cd565b6040805192835260208301919091528051918290030190f35b6102b56121ff565b6102b5600480360360208110156104f657600080fd5b50356001600160a01b031661220e565b6105346004803603604081101561051c57600080fd5b506001600160a01b0381358116916020013516612240565b604080516001600160e01b03199092168252519081900360200190f35b6102186004803603604081101561056757600080fd5b506001600160a01b0381358116916020013516612283565b6102186004803603608081101561059557600080fd5b506001600160a01b038135811691602081013582169160408201359160600135166122b3565b610218600480360360408110156105d157600080fd5b8101906020810181356401000000008111156105ec57600080fd5b8201836020820111156105fe57600080fd5b8035906020019184600183028401116401000000008311171561062057600080fd5b9193509150356001600160a01b0316612585565b6106c36004803603608081101561064a57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561067557600080fd5b82018360208201111561068757600080fd5b803590602001918460018302840111640100000000831117156106a957600080fd5b91935091506001600160a01b038135169060200135612675565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561070a5781810151838201526020016106f2565b50505050905090810190601f1680156107375780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61076c6004803603602081101561075c57600080fd5b50356001600160a01b0316612a46565b604080519283526001600160e01b031990911660208301528051918290030190f35b61029b600480360360408110156107a457600080fd5b506001600160a01b0381358116916020013516612a62565b6102b5612b2e565b610218600480360360608110156107da57600080fd5b506001600160a01b03813581169160208101359160409091013516612b3d565b6102186004803603608081101561081057600080fd5b506001600160a01b0381358116916020810135916001600160e01b0319604083013516916060013516612f09565b61031c6004803603602081101561085457600080fd5b5035613246565b6102186004803603606081101561087157600080fd5b508035906001600160a01b0360208201358116916040013516613253565b610218600480360360408110156108a557600080fd5b506001600160a01b0381358116916020013516613556565b610218600480360360a08110156108d357600080fd5b506001600160a01b03813581169160208101358216916040820135811691606081013591608090910135166135b8565b3360009081526020819052604081206001015460e01b600160e11b9081161461092b57600080fd5b6f756e7265676973746572536368656d6560801b60005b600554811015610a32576005818154811061095957fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061098c57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156109f557600080fd5b505af1158015610a09573d6000803e3d6000fd5b505050506040513d6020811015610a1f57600080fd5b5051610a2a57600080fd5b600101610942565b60015484906001600160a01b03808316911614610a4e57600080fd5b610a57866138a5565b610a645760009350610b0b565b336000908152602081905260408082206001908101546001600160a01b038a168452919092209091015460e091821b19911b16601f60e01b1615610aa757600080fd5b6040516001600160a01b0387169033907f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf90600090a36001600160a01b03861660009081526020819052604081209081556001908101805463ffffffff1916905593505b50600090505b600654811015610c015760068181548110610b2857fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110610b5b57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015610bc457600080fd5b505af1158015610bd8573d6000803e3d6000fd5b505050506040513d6020811015610bee57600080fd5b5051610bf957600080fd5b600101610b11565b505092915050565b6007602052600090815260409020805460019091015460ff9091169082565b60015460009082906001600160a01b03808316911614610c4757600080fd5b6001600160a01b03841660009081526020819052604090205491505b5092915050565b6004546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e31b90811614610ca157600080fd5b60015482906001600160a01b03808316911614610cbd57600080fd5b6004546001600160a01b031615610cd357600080fd5b6001600160a01b038416610ce657600080fd5b600480546001600160a01b0319166001600160a01b0386811691821783556001546040805163f2fde38b60e01b815294850193909352915191169163f2fde38b91602480830192600092919082900301818387803b158015610d4757600080fd5b505af1158015610d5b573d6000803e3d6000fd5b50505050836001600160a01b0316600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610db757600080fd5b505afa158015610dcb573d6000803e3d6000fd5b505050506040513d6020811015610de157600080fd5b50516001600160a01b031614610df657600080fd5b60025460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610e3a57600080fd5b505afa158015610e4e573d6000803e3d6000fd5b505050506040513d6020811015610e6457600080fd5b50516001600160a01b03161415610f72576002546040805163f2fde38b60e01b81526001600160a01b0387811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015610ec357600080fd5b505af1158015610ed7573d6000803e3d6000fd5b50505050836001600160a01b0316600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f3357600080fd5b505afa158015610f47573d6000803e3d6000fd5b505050506040513d6020811015610f5d57600080fd5b50516001600160a01b031614610f7257600080fd5b60035460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610fb657600080fd5b505afa158015610fca573d6000803e3d6000fd5b505050506040513d6020811015610fe057600080fd5b50516001600160a01b031614156110ee576003546040805163f2fde38b60e01b81526001600160a01b0387811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b15801561103f57600080fd5b505af1158015611053573d6000803e3d6000fd5b50505050836001600160a01b0316600360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110af57600080fd5b505afa1580156110c3573d6000803e3d6000fd5b505050506040513d60208110156110d957600080fd5b50516001600160a01b0316146110ee57600080fd5b600454604080516001600160a01b039290921682525130917fdb7cbacf8df312d794506c0cc9af07f64d29ca075796ea2e950a3832cc9a63dd919081900360200190a25060019392505050565b6005818154811061114857fe5b6000918252602090912060029091020180546001909101546001600160a01b03909116915082565b3360009081526020819052604081206001015460e01b600160e21b9081161461119857600080fd5b60015482906001600160a01b038083169116146111b457600080fd5b6111bc6138d1565b6111c46138d1565b6000866001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561120157600080fd5b505af1158015611215573d6000803e3d6000fd5b505050506040513d602081101561122b57600080fd5b5051905060008082600281111561123e57fe5b14806112555750600282600281111561125357fe5b145b15611399576001600160a01b0388166000908152600760209081526040918290208251808401909352805460ff16158015845260019091015491830191909152909450611399576001600580549050038460200151101561135a576005805460001981019081106112c257fe5b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600101548183015290850151600580549295508592909190811061130a57fe5b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b03938416178155938101516001948501558781015187519092168352600790526040909120909101555b600580549061136d9060001983016138e8565b50506001600160a01b0387166000908152600760205260408120805460ff191681556001908101919091555b60018260028111156113a757fe5b14806113be575060028260028111156113bc57fe5b145b15611502576001600160a01b0388166000908152600860209081526040918290208251808401909352805460ff1615801584526001909101549183019190915290945061150257600160068054905003846020015110156114c35760068054600019810190811061142b57fe5b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600101548183015290850151600680549295508592909190811061147357fe5b6000918252602080832084516002939093020180546001600160a01b0319166001600160a01b03938416178155938101516001948501558781015187519092168352600890526040909120909101555b60068054906114d69060001983016138e8565b50506001600160a01b0387166000908152600860205260408120805460ff191681556001908101919091555b80156115605760208401516001600160a01b038916907fcdf1a50ea6b7de555bd409f8a4a53ea43c6dc6b4caa961889da9e005f21bbaa990600085600281111561154857fe5b60408051938452911460208301528051918290030190a25b979650505050505050565b3360009081526020819052604081206001015460e01b600160e01b9081161461159357600080fd5b7f65787465726e616c546f6b656e496e637265617365417070726f76616c00000060005b6005548110156116a757600581815481106115ce57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061160157fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561166a57600080fd5b505af115801561167e573d6000803e3d6000fd5b505050506040513d602081101561169457600080fd5b505161169f57600080fd5b6001016115b7565b60015484906001600160a01b038083169116146116c357600080fd5b6001546040805163ab751f7160e01b81526001600160a01b038b811660048301528a81166024830152604482018a90529151919092169163ab751f719160648083019260209291908290030181600087803b15801561172157600080fd5b505af1158015611735573d6000803e3d6000fd5b505050506040513d602081101561174b57600080fd5b5051935050600090505b600654811015611845576006818154811061176c57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061179f57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561180857600080fd5b505af115801561181c573d6000803e3d6000fd5b505050506040513d602081101561183257600080fd5b505161183d57600080fd5b600101611755565b5050949350505050565b6001546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e01b9081161461188657600080fd5b6839b2b73222ba3432b960b91b60005b60055481101561198657600581815481106118ad57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106118e057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561194957600080fd5b505af115801561195d573d6000803e3d6000fd5b505050506040513d602081101561197357600080fd5b505161197e57600080fd5b600101611896565b60015484906001600160a01b038083169116146119a257600080fd5b6001546040805163658b6a5160e11b8152600481018a90526001600160a01b0389811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b1580156119f857600080fd5b505af1158015611a0c573d6000803e3d6000fd5b505050506040513d6020811015611a2257600080fd5b5051935050600090505b600654811015611b1c5760068181548110611a4357fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110611a7657fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611adf57600080fd5b505af1158015611af3573d6000803e3d6000fd5b505050506040513d6020811015611b0957600080fd5b5051611b1457600080fd5b600101611a2c565b50509392505050565b3360009081526020819052604081206001015460e01b600160e01b90811614611b4d57600080fd5b696d696e74546f6b656e7360b01b60005b600554811015611c4e5760058181548110611b7557fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110611ba857fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611c1157600080fd5b505af1158015611c25573d6000803e3d6000fd5b505050506040513d6020811015611c3b57600080fd5b5051611c4657600080fd5b600101611b5e565b60015484906001600160a01b03808316911614611c6a57600080fd5b6040805188815290516001600160a01b0388169133917f21f9c9a1a1f9a311a50f15fec5c1faa9e21fc9edf964f0fdecba5bd490484c5e9181900360200190a3600254604080516340c10f1960e01b81526001600160a01b038981166004830152602482018b9052915191909216916340c10f199160448083019260209291908290030181600087803b158015611d0057600080fd5b505af1158015611d14573d6000803e3d6000fd5b505050506040513d6020811015611d2a57600080fd5b5051935050600090505b600654811015611b1c5760068181548110611d4b57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d91339185908110611d7e57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611de757600080fd5b505af1158015611dfb573d6000803e3d6000fd5b505050506040513d6020811015611e1157600080fd5b5051611e1c57600080fd5b600101611d34565b60015460009082906001600160a01b03808316911614611e4357600080fd5b611e4c336138a5565b611e595760009150611ea5565b33600081815260208190526040808220828155600101805463ffffffff191690555182917f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf91a3600191505b50919050565b3360009081526020819052604081206001015460e01b600160e01b90811614611ed357600080fd5b6d313ab9372932b83aba30ba34b7b760911b60005b600554811015611fd85760058181548110611eff57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110611f3257fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015611f9b57600080fd5b505af1158015611faf573d6000803e3d6000fd5b505050506040513d6020811015611fc557600080fd5b5051611fd057600080fd5b600101611ee8565b60015484906001600160a01b03808316911614611ff457600080fd5b6040805188815290516001600160a01b0388169133917f186d8887e1b22f9d9b16849c36baa748950d09d9c9b67a4a6ea140eaad00c21c9181900360200190a360035460408051632770a7eb60e21b81526001600160a01b038981166004830152602482018b905291519190921691639dc29fac9160448083019260209291908290030181600087803b15801561208a57600080fd5b505af115801561209e573d6000803e3d6000fd5b505050506040513d60208110156120b457600080fd5b5051935050600090505b600654811015611b1c57600681815481106120d557fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061210857fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561217157600080fd5b505af1158015612185573d6000803e3d6000fd5b505050506040513d602081101561219b57600080fd5b50516121a657600080fd5b6001016120be565b6008602052600090815260409020805460019091015460ff9091169082565b600154600090819083906001600160a01b038083169116146121ee57600080fd5b600554600654909350915050915091565b6003546001600160a01b031681565b60015460009082906001600160a01b0380831691161461222d57600080fd5b50506003546001600160a01b0316919050565b60015460009082906001600160a01b0380831691161461225f57600080fd5b5050506001600160a01b031660009081526020819052604090206001015460e01b90565b60015460009082906001600160a01b038083169116146122a257600080fd5b6122ab846138a5565b949350505050565b3360009081526020819052604081206001015460e01b600160e01b908116146122db57600080fd5b7432bc3a32b93730b62a37b5b2b72a3930b739b332b960591b60005b6005548110156123e7576005818154811061230e57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061234157fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156123aa57600080fd5b505af11580156123be573d6000803e3d6000fd5b505050506040513d60208110156123d457600080fd5b50516123df57600080fd5b6001016122f7565b60015484906001600160a01b0380831691161461240357600080fd5b6001546040805163dab0efff60e01b81526001600160a01b038b811660048301528a81166024830152604482018a90529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561246157600080fd5b505af1158015612475573d6000803e3d6000fd5b505050506040513d602081101561248b57600080fd5b5051935050600090505b60065481101561184557600681815481106124ac57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106124df57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561254857600080fd5b505af115801561255c573d6000803e3d6000fd5b505050506040513d602081101561257257600080fd5b505161257d57600080fd5b600101612495565b3360009081526020819052604081206001015460e01b600160e41b908116146125ad57600080fd5b60015482906001600160a01b038083169116146125c957600080fd5b600154604051632242b11b60e21b8152602060048201908152602482018790526001600160a01b039092169163890ac46c91889188918190604401848480828437600081840152601f19601f8201169050808301925050509350505050602060405180830381600087803b15801561264057600080fd5b505af1158015612654573d6000803e3d6000fd5b505050506040513d602081101561266a57600080fd5b505195945050505050565b3360009081526020819052604081206001015460609060e01b600160e41b908116146126a057600080fd5b6a19d95b995c9a58d0d85b1b60aa1b60005b6005548110156127a257600581815481106126c957fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106126fc57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561276557600080fd5b505af1158015612779573d6000803e3d6000fd5b505050506040513d602081101561278f57600080fd5b505161279a57600080fd5b6001016126b2565b60015486906001600160a01b038083169116146127be57600080fd5b60015460405163057e2c8b60e31b81526001600160a01b038c811660048301908152604483018a9052606060248401908152606484018d90529190931692632bf16458928e928e928e928d9290608401858580828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b15801561284c57600080fd5b505af1158015612860573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561288957600080fd5b8151602083018051604051929492938301929190846401000000008211156128b057600080fd5b9083019060208201858111156128c557600080fd5b82516401000000008111828201881017156128df57600080fd5b82525081516020918201929091019080838360005b8381101561290c5781810151838201526020016128f4565b50505050905090810190601f1680156129395780820380516001836020036101000a031916815260200191505b506040525050509450945050600090505b600654811015612a3a576006818154811061296157fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d9133918590811061299457fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156129fd57600080fd5b505af1158015612a11573d6000803e3d6000fd5b505050506040513d6020811015612a2757600080fd5b5051612a3257600080fd5b60010161294a565b50509550959350505050565b6000602081905290815260409020805460019091015460e01b82565b6000612a6c6138d1565b506001600160a01b0383166000908152600760209081526040918290208251808401909352805460ff16158015845260019091015491830191909152612ad7576005816020015181548110612abd57fe5b906000526020600020906002020160010154915050612b28565b506001600160a01b0383166000908152600860209081526040918290208251808401909352805460ff16158015845260019091015491830191909152610c63576006816020015181548110612abd57fe5b92915050565b6002546001600160a01b031681565b3360009081526020819052604081206001015460e01b600160e21b90811614612b6557600080fd5b60015482906001600160a01b03808316911614612b8157600080fd5b6000856001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b158015612bbe57600080fd5b505af1158015612bd2573d6000803e3d6000fd5b505050506040513d6020811015612be857600080fd5b505190506000816002811115612bfa57fe5b1480612c1157506002816002811115612c0f57fe5b145b15612d49576001600160a01b03861660009081526007602052604090205460ff16612d08576040805180820182526001600160a01b0388811680835260208084018a81526005805460018082018355600083815297517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0600290930292830180546001600160a01b031916919098161790965591517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db190920191909155855180870187528481529054600019018183019081529285526007909152939092209251835460ff19169015151783559051910155612d49565b6001600160a01b038616600090815260076020526040902060010154600580548792908110612d3357fe5b9060005260206000209060020201600101819055505b6001816002811115612d5757fe5b1480612d6e57506002816002811115612d6c57fe5b145b15612ea6576001600160a01b03861660009081526008602052604090205460ff16612e65576040805180820182526001600160a01b0388811680835260208084018a81526006805460018082018355600083815297517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f600290930292830180546001600160a01b031916919098161790965591517ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4090920191909155855180870187528481529054600019018183019081529285526008909152939092209251835460ff19169015151783559051910155612ea6565b6001600160a01b038616600090815260086020526040902060010154600680548792908110612e9057fe5b9060005260206000209060020201600101819055505b856001600160a01b03167f78800d7333b8d0174a0845569e3913b7ce4a3c03ca444dd9904172fc14f2fdad868360405180838152602001826002811115612ee957fe5b60ff1681526020019250505060405180910390a250600195945050505050565b3360009081526020819052604081206001015460e01b600160e11b90811614612f3157600080fd5b6d7265676973746572536368656d6560901b60005b6005548110156130365760058181548110612f5d57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab291339185908110612f9057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b158015612ff957600080fd5b505af115801561300d573d6000803e3d6000fd5b505050506040513d602081101561302357600080fd5b505161302e57600080fd5b600101612f46565b60015484906001600160a01b0380831691161461305257600080fd5b61305a6138d1565b506001600160a01b03881660009081526020818152604080832081518083018352815481526001918201546001600160e01b031960e091821b16828601908152338752948690529290942001549151891891901b1916601f60e01b16156130c057600080fd5b336000908152602081815260409091206001015490820151601f60e01b60e09290921b191616156130f057600080fd5b6001600160a01b0389166000818152602081905260408082208b8155600101805463ffffffff1916600160e01b8c1760e01c1790555133917f546816e99403df442acb68ef69562682a50762c20a3fb6b472f7af9923736cfc91a3600194505050600090505b600654811015611845576006818154811061316d57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106131a057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561320957600080fd5b505af115801561321d573d6000803e3d6000fd5b505050506040513d602081101561323357600080fd5b505161323e57600080fd5b600101613156565b6006818154811061114857fe5b3360009081526020819052604081206001015460e01b600160e01b9081161461327b57600080fd5b6d36b4b73a2932b83aba30ba34b7b760911b60005b60055481101561338057600581815481106132a757fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab2913391859081106132da57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561334357600080fd5b505af1158015613357573d6000803e3d6000fd5b505050506040513d602081101561336d57600080fd5b505161337857600080fd5b600101613290565b60015484906001600160a01b0380831691161461339c57600080fd5b6040805188815290516001600160a01b0388169133917f837f2931e3df0592458212be4e470025f197feb7a8e39deb5b7f1f1d42e6f2629181900360200190a3600354604080516340c10f1960e01b81526001600160a01b038981166004830152602482018b9052915191909216916340c10f199160448083019260209291908290030181600087803b15801561343257600080fd5b505af1158015613446573d6000803e3d6000fd5b505050506040513d602081101561345c57600080fd5b5051935050600090505b600654811015611b1c576006818154811061347d57fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106134b057fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561351957600080fd5b505af115801561352d573d6000803e3d6000fd5b505050506040513d602081101561354357600080fd5b505161354e57600080fd5b600101613466565b60015460009082906001600160a01b0380831691161461357557600080fd5b6001600160a01b03841660009081526007602052604090205460ff16806122ab57505050506001600160a01b031660009081526008602052604090205460ff1690565b3360009081526020819052604081206001015460e01b600160e01b908116146135e057600080fd5b7f65787465726e616c546f6b656e5472616e7366657246726f6d0000000000000060005b6005548110156136f4576005818154811061361b57fe5b6000918252602090912060029091020154600580546001600160a01b039092169163c1786ab29133918590811061364e57fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b1580156136b757600080fd5b505af11580156136cb573d6000803e3d6000fd5b505050506040513d60208110156136e157600080fd5b50516136ec57600080fd5b600101613604565b60015484906001600160a01b0380831691161461371057600080fd5b60015460408051635bab6ad160e11b81526001600160a01b038c811660048301528b811660248301528a81166044830152606482018a90529151919092169163b756d5a29160848083019260209291908290030181600087803b15801561377657600080fd5b505af115801561378a573d6000803e3d6000fd5b505050506040513d60208110156137a057600080fd5b5051935050600090505b60065481101561389a57600681815481106137c157fe5b6000918252602090912060029091020154600680546001600160a01b0390921691638043154d913391859081106137f457fe5b906000526020600020906002020160010154856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b031681526020018381526020018281526020019350505050602060405180830381600087803b15801561385d57600080fd5b505af1158015613871573d6000803e3d6000fd5b505050506040513d602081101561388757600080fd5b505161389257600080fd5b6001016137aa565b505095945050505050565b6001600160a01b03811660009081526020819052604090206001015460e01b600160e01b161515919050565b604080518082019091526000808252602082015290565b815481835581811115613914576002028160020283600052602060002091820191016139149190613919565b505050565b61394891905b808211156139445780546001600160a01b03191681556000600182015560020161391f565b5090565b9056fea265627a7a723158204112c3af2ca0c5a8d3ea97fdf1256f4b7fe35165678b994029083982bfcec39964736f6c63430005110032a265627a7a723158208c2a5ffabe040efeee430126d0093603c406c3da5b09b9aeaa5fc107ec0fef0b64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/CurveInterface.json b/contracts/0.0.1-rc.53/CurveInterface.json new file mode 100644 index 00000000..e249288b --- /dev/null +++ b/contracts/0.0.1-rc.53/CurveInterface.json @@ -0,0 +1,32 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "CurveInterface", + "sourceName": "contracts/schemes/CurveInterface.sol", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "calc", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/DAORegistry.json b/contracts/0.0.1-rc.53/DAORegistry.json new file mode 100644 index 00000000..8bcb8f7f --- /dev/null +++ b/contracts/0.0.1-rc.53/DAORegistry.json @@ -0,0 +1,2487 @@ +{ + "contractName": "DAORegistry", + "abi": [ + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "name": "_owner", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "_avatar", + "type": "address" + } + ], + "name": "Propose", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "_avatar", + "type": "address" + }, + { + "indexed": false, + "name": "_name", + "type": "string" + } + ], + "name": "Register", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "_avatar", + "type": "address" + } + ], + "name": "UnRegister", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_avatar", + "type": "address" + } + ], + "name": "propose", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_avatar", + "type": "address" + }, + { + "name": "_name", + "type": "string" + } + ], + "name": "register", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_avatar", + "type": "address" + } + ], + "name": "unRegister", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_name", + "type": "string" + } + ], + "name": "isRegister", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506040516020806107e48339810180604052602081101561003057600080fd5b505160008054600160a060020a0319163317808255604051600160a060020a039190911691906000805160206107c4833981519152908290a361007b81640100000000610081810204565b50610121565b6100926401000000006100b2810204565b151561009d57600080fd5b6100af816401000000006100c3810204565b50565b600054600160a060020a0316331490565b600160a060020a03811615156100d857600080fd5b60008054604051600160a060020a03808516939216916000805160206107c483398151915291a360008054600160a060020a031916600160a060020a0392909216919091179055565b610694806101306000396000f3fe608060405234801561001057600080fd5b50600436106100a5576000357c010000000000000000000000000000000000000000000000000000000090048063715018a611610078578063715018a6146102685780638da5cb5b146102705780638f32d59b14610294578063f2fde38b1461029c576100a5565b806301267951146100aa578063178d680d146100d257806327c956251461018c57806332434a2e146101b2575b600080fd5b6100d0600480360360208110156100c057600080fd5b5035600160a060020a03166102c2565b005b610178600480360360208110156100e857600080fd5b81019060208101813564010000000081111561010357600080fd5b82018360208201111561011557600080fd5b8035906020019184600183028401116401000000008311171561013757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506102f9945050505050565b604080519115158252519081900360200190f35b6100d0600480360360208110156101a257600080fd5b5035600160a060020a0316610364565b6100d0600480360360408110156101c857600080fd5b600160a060020a0382351691908101906040810160208201356401000000008111156101f357600080fd5b82018360208201111561020557600080fd5b8035906020019184600183028401116401000000008311171561022757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103ae945050505050565b6100d0610542565b6102786105ac565b60408051600160a060020a039092168252519081900360200190f35b6101786105bb565b6100d0600480360360208110156102b257600080fd5b5035600160a060020a03166105cc565b604051600160a060020a038216907fd16d50d8d566a5c6f1f5d89ffcfa821adc9d9f4e780d153563abc82e943ff0e390600090a250565b60006001826040518082805190602001908083835b6020831061032d5780518252601f19909201916020918201910161030e565b51815160209384036101000a600019018019909216911617905292019485525060405193849003019092205460ff16949350505050565b61036c6105bb565b151561037757600080fd5b604051600160a060020a038216907f630f28bb6372d0a747db8dcdb1a523bd9d875ddd96649c705325e60b239fc3c390600090a250565b6103b66105bb565b15156103c157600080fd5b6001816040518082805190602001908083835b602083106103f35780518252601f1990920191602091820191016103d4565b51815160209384036101000a600019018019909216911617905292019485525060405193849003019092205460ff16159150610430905057600080fd5b600180826040518082805190602001908083835b602083106104635780518252601f199092019160209182019101610444565b51815160209384036101000a6000190180199092169116179052920194855250604080519485900382018520805460ff1916961515969096179095558084528551848201528551600160a060020a038816957f6ba0831d2f62ae5cbf7214bcc1d79c5da1d705f12811efda0beaa840006f874e9588955093508392908301919085019080838360005b838110156105045781810151838201526020016104ec565b50505050905090810190601f1680156105315780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b61054a6105bb565b151561055557600080fd5b60008054604051600160a060020a03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36000805473ffffffffffffffffffffffffffffffffffffffff19169055565b600054600160a060020a031690565b600054600160a060020a0316331490565b6105d46105bb565b15156105df57600080fd5b6105e8816105eb565b50565b600160a060020a038116151561060057600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905556fea165627a7a723058205aee1695bcd8e69ce2eee9198df035cce172d920f0ec1196e516a0ec5b40bb1a00298be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a5576000357c010000000000000000000000000000000000000000000000000000000090048063715018a611610078578063715018a6146102685780638da5cb5b146102705780638f32d59b14610294578063f2fde38b1461029c576100a5565b806301267951146100aa578063178d680d146100d257806327c956251461018c57806332434a2e146101b2575b600080fd5b6100d0600480360360208110156100c057600080fd5b5035600160a060020a03166102c2565b005b610178600480360360208110156100e857600080fd5b81019060208101813564010000000081111561010357600080fd5b82018360208201111561011557600080fd5b8035906020019184600183028401116401000000008311171561013757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506102f9945050505050565b604080519115158252519081900360200190f35b6100d0600480360360208110156101a257600080fd5b5035600160a060020a0316610364565b6100d0600480360360408110156101c857600080fd5b600160a060020a0382351691908101906040810160208201356401000000008111156101f357600080fd5b82018360208201111561020557600080fd5b8035906020019184600183028401116401000000008311171561022757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103ae945050505050565b6100d0610542565b6102786105ac565b60408051600160a060020a039092168252519081900360200190f35b6101786105bb565b6100d0600480360360208110156102b257600080fd5b5035600160a060020a03166105cc565b604051600160a060020a038216907fd16d50d8d566a5c6f1f5d89ffcfa821adc9d9f4e780d153563abc82e943ff0e390600090a250565b60006001826040518082805190602001908083835b6020831061032d5780518252601f19909201916020918201910161030e565b51815160209384036101000a600019018019909216911617905292019485525060405193849003019092205460ff16949350505050565b61036c6105bb565b151561037757600080fd5b604051600160a060020a038216907f630f28bb6372d0a747db8dcdb1a523bd9d875ddd96649c705325e60b239fc3c390600090a250565b6103b66105bb565b15156103c157600080fd5b6001816040518082805190602001908083835b602083106103f35780518252601f1990920191602091820191016103d4565b51815160209384036101000a600019018019909216911617905292019485525060405193849003019092205460ff16159150610430905057600080fd5b600180826040518082805190602001908083835b602083106104635780518252601f199092019160209182019101610444565b51815160209384036101000a6000190180199092169116179052920194855250604080519485900382018520805460ff1916961515969096179095558084528551848201528551600160a060020a038816957f6ba0831d2f62ae5cbf7214bcc1d79c5da1d705f12811efda0beaa840006f874e9588955093508392908301919085019080838360005b838110156105045781810151838201526020016104ec565b50505050905090810190601f1680156105315780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b61054a6105bb565b151561055557600080fd5b60008054604051600160a060020a03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36000805473ffffffffffffffffffffffffffffffffffffffff19169055565b600054600160a060020a031690565b600054600160a060020a0316331490565b6105d46105bb565b15156105df57600080fd5b6105e8816105eb565b50565b600160a060020a038116151561060057600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905556fea165627a7a723058205aee1695bcd8e69ce2eee9198df035cce172d920f0ec1196e516a0ec5b40bb1a0029", + "sourceMap": "90:903:0:-;;;325:77;8:9:-1;5:2;;;30:1;27;20:12;5:2;325:77:0;;;;;;;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;325:77:0;515:6:2;:19;;-1:-1:-1;;;;;;515:19:2;524:10;515:19;;;;549:40;;-1:-1:-1;;;;;582:6:2;;;;;515;-1:-1:-1;;;;;;;;;;;549:40:2;515:6;;549:40;370:25:0;388:6;370:17;;;;:25;:::i;:::-;325:77;90:903;;1731:107:2;863:9;:7;;;;:9;:::i;:::-;855:18;;;;;;;;1803:28;1822:8;1803:18;;;;:28;:::i;:::-;1731:107;:::o;979:90::-;1019:4;1056:6;-1:-1:-1;;;;;1056:6:2;1042:10;:20;;979:90::o;1982:183::-;-1:-1:-1;;;;;2055:22:2;;;;2047:31;;;;;;2114:6;;;2093:38;;-1:-1:-1;;;;;2093:38:2;;;;2114:6;;;-1:-1:-1;;;;;;;;;;;2093:38:2;;2141:6;:17;;-1:-1:-1;;;;;;2141:17:2;-1:-1:-1;;;;;2141:17:2;;;;;;;;;;1982:183::o;90:903:0:-;;;;;;;", + "deployedSourceMap": "90:903:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;90:903:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;408:79;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;408:79:0;-1:-1:-1;;;;;408:79:0;;:::i;:::-;;884:106;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;884:106:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;884:106:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;884:106:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;884:106:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;884:106:0;;-1:-1:-1;884:106:0;;-1:-1:-1;;;;;884:106:0:i;:::-;;;;;;;;;;;;;;;;;;685:95;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;685:95:0;-1:-1:-1;;;;;685:95:0;;:::i;493:186::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;493:186:0;;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;493:186:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;493:186:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;493:186:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;493:186:0;;-1:-1:-1;493:186:0;;-1:-1:-1;;;;;493:186:0:i;1423:137:2:-;;;:::i;659:77::-;;;:::i;:::-;;;;-1:-1:-1;;;;;659:77:2;;;;;;;;;;;;;;979:90;;;:::i;1731:107::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1731:107:2;-1:-1:-1;;;;;1731:107:2;;:::i;408:79:0:-;464:16;;-1:-1:-1;;;;;464:16:0;;;;;;;;408:79;:::o;884:106::-;945:4;968:8;977:5;968:15;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;968:15:0;;;;;-1:-1:-1;968:15:0;;;;;;;;;;;;;;884:106;-1:-1:-1;;;;884:106:0:o;685:95::-;863:9:2;:7;:9::i;:::-;855:18;;;;;;;;754:19:0;;-1:-1:-1;;;;;754:19:0;;;;;;;;685:95;:::o;493:186::-;863:9:2;:7;:9::i;:::-;855:18;;;;;;;;585:8:0;594:5;585:15;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;585:15:0;;;;;-1:-1:-1;585:15:0;;;;;;;;;;;;;584:16;;-1:-1:-1;576:25:0;;-1:-1:-1;576:25:0;;;;;629:4;611:8;620:5;611:15;;;;;;;;;;;;;36:153:-1;66:2;58:11;;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;611:15:0;;;;;-1:-1:-1;611:15:0;;;;;;;;;;;:22;;-1:-1:-1;;611:22:0;;;;;;;;;;;648:24;;;;;;;;;;;-1:-1:-1;;;;;648:24:0;;;;;;;-1:-1:-1;611:15:0;-1:-1:-1;611:15:0;;648:24;;;;;;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;648:24:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;493:186;;:::o;1423:137:2:-;863:9;:7;:9::i;:::-;855:18;;;;;;;;1521:1;1505:6;;1484:40;;-1:-1:-1;;;;;1505:6:2;;;;1484:40;;1521:1;;1484:40;1551:1;1534:19;;-1:-1:-1;;1534:19:2;;;1423:137::o;659:77::-;697:7;723:6;-1:-1:-1;;;;;723:6:2;659:77;:::o;979:90::-;1019:4;1056:6;-1:-1:-1;;;;;1056:6:2;1042:10;:20;;979:90::o;1731:107::-;863:9;:7;:9::i;:::-;855:18;;;;;;;;1803:28;1822:8;1803:18;:28::i;:::-;1731:107;:::o;1982:183::-;-1:-1:-1;;;;;2055:22:2;;;;2047:31;;;;;;2114:6;;;2093:38;;-1:-1:-1;;;;;2093:38:2;;;;2114:6;;;2093:38;;;2141:6;:17;;-1:-1:-1;;2141:17:2;-1:-1:-1;;;;;2141:17:2;;;;;;;;;;1982:183::o", + "source": "pragma solidity ^0.5.4;\n\nimport \"openzeppelin-solidity/contracts/ownership/Ownable.sol\";\n\ncontract DAORegistry is Ownable {\n\n event Propose(address indexed _avatar);\n event Register(address indexed _avatar, string _name);\n event UnRegister(address indexed _avatar);\n\n mapping(string=>bool) private registry;\n\n constructor(address _owner) public {\n transferOwnership(_owner);\n }\n\n function propose(address _avatar) public {\n emit Propose(_avatar);\n }\n\n function register(address _avatar, string memory _name) public onlyOwner {\n require(!registry[_name]);\n registry[_name] = true;\n emit Register(_avatar, _name);\n }\n\n function unRegister(address _avatar) public onlyOwner {\n emit UnRegister(_avatar);\n }\n\n //This getter is needed because Dynamically-sized keys for public mappings are not supported.\n function isRegister(string memory _name) public view returns(bool) {\n return registry[_name];\n }\n\n}\n", + "sourcePath": "/Users/oren/daostack/daostack2/arc-hive/contracts/DAORegistry.sol", + "ast": { + "absolutePath": "/Users/oren/daostack/daostack2/arc-hive/contracts/DAORegistry.sol", + "exportedSymbols": { + "DAORegistry": [ + 95 + ] + }, + "id": 96, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1, + "literals": [ + "solidity", + "^", + "0.5", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "0:23:0" + }, + { + "absolutePath": "openzeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "openzeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 2, + "nodeType": "ImportDirective", + "scope": 96, + "sourceUnit": 263, + "src": "25:63:0", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 262, + "src": "114:7:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$262", + "typeString": "contract Ownable" + } + }, + "id": 4, + "nodeType": "InheritanceSpecifier", + "src": "114:7:0" + } + ], + "contractDependencies": [ + 262 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 95, + "linearizedBaseContracts": [ + 95, + 262 + ], + "name": "DAORegistry", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": null, + "id": 8, + "name": "Propose", + "nodeType": "EventDefinition", + "parameters": { + "id": 7, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 8, + "src": "143:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "143:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "142:25:0" + }, + "src": "129:39:0" + }, + { + "anonymous": false, + "documentation": null, + "id": 14, + "name": "Register", + "nodeType": "EventDefinition", + "parameters": { + "id": 13, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "188:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "188:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 12, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "213:12:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "213:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "187:39:0" + }, + "src": "173:54:0" + }, + { + "anonymous": false, + "documentation": null, + "id": 18, + "name": "UnRegister", + "nodeType": "EventDefinition", + "parameters": { + "id": 17, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 18, + "src": "249:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "249:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "248:25:0" + }, + "src": "232:42:0" + }, + { + "constant": false, + "id": 22, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 95, + "src": "280:38:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string => bool)" + }, + "typeName": { + "id": 21, + "keyType": { + "id": 19, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "288:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "nodeType": "Mapping", + "src": "280:21:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string => bool)" + }, + "valueType": { + "id": 20, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "296:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "body": { + "id": 31, + "nodeType": "Block", + "src": "360:42:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 28, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24, + "src": "388:6:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27, + "name": "transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 238, + "src": "370:17:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 29, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "370:25:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30, + "nodeType": "ExpressionStatement", + "src": "370:25:0" + } + ] + }, + "documentation": null, + "id": 32, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 25, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 32, + "src": "337:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "337:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "336:16:0" + }, + "returnParameters": { + "id": 26, + "nodeType": "ParameterList", + "parameters": [], + "src": "360:0:0" + }, + "scope": 95, + "src": "325:77:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 41, + "nodeType": "Block", + "src": "449:38:0", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 38, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 34, + "src": "472:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 37, + "name": "Propose", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8, + "src": "464:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 39, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "464:16:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 40, + "nodeType": "EmitStatement", + "src": "459:21:0" + } + ] + }, + "documentation": null, + "id": 42, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "propose", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 35, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 34, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 42, + "src": "425:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 33, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "425:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "424:17:0" + }, + "returnParameters": { + "id": 36, + "nodeType": "ParameterList", + "parameters": [], + "src": "449:0:0" + }, + "scope": 95, + "src": "408:79:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 69, + "nodeType": "Block", + "src": "566:113:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 55, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "584:16:0", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 52, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "585:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 54, + "indexExpression": { + "argumentTypes": null, + "id": 53, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 46, + "src": "594:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "585:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 51, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 280, + 281 + ], + "referencedDeclaration": 280, + "src": "576:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 56, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "576:25:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 57, + "nodeType": "ExpressionStatement", + "src": "576:25:0" + }, + { + "expression": { + "argumentTypes": null, + "id": 62, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 58, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "611:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 60, + "indexExpression": { + "argumentTypes": null, + "id": 59, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 46, + "src": "620:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "611:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 61, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "629:4:0", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "611:22:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 63, + "nodeType": "ExpressionStatement", + "src": "611:22:0" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 65, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 44, + "src": "657:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 66, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 46, + "src": "666:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 64, + "name": "Register", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14, + "src": "648:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory)" + } + }, + "id": 67, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "648:24:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 68, + "nodeType": "EmitStatement", + "src": "643:29:0" + } + ] + }, + "documentation": null, + "id": 70, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 49, + "modifierName": { + "argumentTypes": null, + "id": 48, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 196, + "src": "556:9:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "556:9:0" + } + ], + "name": "register", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 47, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 44, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 70, + "src": "511:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 43, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "511:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 46, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 70, + "src": "528:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 45, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "528:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "510:38:0" + }, + "returnParameters": { + "id": 50, + "nodeType": "ParameterList", + "parameters": [], + "src": "566:0:0" + }, + "scope": 95, + "src": "493:186:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 81, + "nodeType": "Block", + "src": "739:41:0", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 78, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 72, + "src": "765:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 77, + "name": "UnRegister", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18, + "src": "754:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 79, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "754:19:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 80, + "nodeType": "EmitStatement", + "src": "749:24:0" + } + ] + }, + "documentation": null, + "id": 82, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 75, + "modifierName": { + "argumentTypes": null, + "id": 74, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 196, + "src": "729:9:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "729:9:0" + } + ], + "name": "unRegister", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 73, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 72, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 82, + "src": "705:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 71, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "705:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "704:17:0" + }, + "returnParameters": { + "id": 76, + "nodeType": "ParameterList", + "parameters": [], + "src": "739:0:0" + }, + "scope": 95, + "src": "685:95:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 93, + "nodeType": "Block", + "src": "951:39:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 89, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "968:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 91, + "indexExpression": { + "argumentTypes": null, + "id": 90, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 84, + "src": "977:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "968:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 88, + "id": 92, + "nodeType": "Return", + "src": "961:22:0" + } + ] + }, + "documentation": null, + "id": 94, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isRegister", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 85, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 84, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 94, + "src": "904:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 83, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "904:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "903:21:0" + }, + "returnParameters": { + "id": 88, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 87, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 94, + "src": "945:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 86, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "945:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "944:6:0" + }, + "scope": 95, + "src": "884:106:0", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 96, + "src": "90:903:0" + } + ], + "src": "0:994:0" + }, + "legacyAST": { + "absolutePath": "/Users/oren/daostack/daostack2/arc-hive/contracts/DAORegistry.sol", + "exportedSymbols": { + "DAORegistry": [ + 95 + ] + }, + "id": 96, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1, + "literals": [ + "solidity", + "^", + "0.5", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "0:23:0" + }, + { + "absolutePath": "openzeppelin-solidity/contracts/ownership/Ownable.sol", + "file": "openzeppelin-solidity/contracts/ownership/Ownable.sol", + "id": 2, + "nodeType": "ImportDirective", + "scope": 96, + "sourceUnit": 263, + "src": "25:63:0", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 262, + "src": "114:7:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$262", + "typeString": "contract Ownable" + } + }, + "id": 4, + "nodeType": "InheritanceSpecifier", + "src": "114:7:0" + } + ], + "contractDependencies": [ + 262 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 95, + "linearizedBaseContracts": [ + 95, + 262 + ], + "name": "DAORegistry", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": null, + "id": 8, + "name": "Propose", + "nodeType": "EventDefinition", + "parameters": { + "id": 7, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 8, + "src": "143:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "143:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "142:25:0" + }, + "src": "129:39:0" + }, + { + "anonymous": false, + "documentation": null, + "id": 14, + "name": "Register", + "nodeType": "EventDefinition", + "parameters": { + "id": 13, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "188:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "188:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 12, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "213:12:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "213:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "187:39:0" + }, + "src": "173:54:0" + }, + { + "anonymous": false, + "documentation": null, + "id": 18, + "name": "UnRegister", + "nodeType": "EventDefinition", + "parameters": { + "id": 17, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 18, + "src": "249:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "249:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "248:25:0" + }, + "src": "232:42:0" + }, + { + "constant": false, + "id": 22, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 95, + "src": "280:38:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string => bool)" + }, + "typeName": { + "id": 21, + "keyType": { + "id": 19, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "288:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "nodeType": "Mapping", + "src": "280:21:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string => bool)" + }, + "valueType": { + "id": 20, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "296:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "body": { + "id": 31, + "nodeType": "Block", + "src": "360:42:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 28, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24, + "src": "388:6:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27, + "name": "transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 238, + "src": "370:17:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 29, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "370:25:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30, + "nodeType": "ExpressionStatement", + "src": "370:25:0" + } + ] + }, + "documentation": null, + "id": 32, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 25, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 32, + "src": "337:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "337:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "336:16:0" + }, + "returnParameters": { + "id": 26, + "nodeType": "ParameterList", + "parameters": [], + "src": "360:0:0" + }, + "scope": 95, + "src": "325:77:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 41, + "nodeType": "Block", + "src": "449:38:0", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 38, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 34, + "src": "472:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 37, + "name": "Propose", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8, + "src": "464:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 39, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "464:16:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 40, + "nodeType": "EmitStatement", + "src": "459:21:0" + } + ] + }, + "documentation": null, + "id": 42, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "propose", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 35, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 34, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 42, + "src": "425:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 33, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "425:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "424:17:0" + }, + "returnParameters": { + "id": 36, + "nodeType": "ParameterList", + "parameters": [], + "src": "449:0:0" + }, + "scope": 95, + "src": "408:79:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 69, + "nodeType": "Block", + "src": "566:113:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 55, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "584:16:0", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 52, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "585:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 54, + "indexExpression": { + "argumentTypes": null, + "id": 53, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 46, + "src": "594:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "585:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 51, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 280, + 281 + ], + "referencedDeclaration": 280, + "src": "576:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 56, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "576:25:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 57, + "nodeType": "ExpressionStatement", + "src": "576:25:0" + }, + { + "expression": { + "argumentTypes": null, + "id": 62, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 58, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "611:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 60, + "indexExpression": { + "argumentTypes": null, + "id": 59, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 46, + "src": "620:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "611:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 61, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "629:4:0", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "611:22:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 63, + "nodeType": "ExpressionStatement", + "src": "611:22:0" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 65, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 44, + "src": "657:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 66, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 46, + "src": "666:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 64, + "name": "Register", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14, + "src": "648:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory)" + } + }, + "id": 67, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "648:24:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 68, + "nodeType": "EmitStatement", + "src": "643:29:0" + } + ] + }, + "documentation": null, + "id": 70, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 49, + "modifierName": { + "argumentTypes": null, + "id": 48, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 196, + "src": "556:9:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "556:9:0" + } + ], + "name": "register", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 47, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 44, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 70, + "src": "511:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 43, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "511:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 46, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 70, + "src": "528:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 45, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "528:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "510:38:0" + }, + "returnParameters": { + "id": 50, + "nodeType": "ParameterList", + "parameters": [], + "src": "566:0:0" + }, + "scope": 95, + "src": "493:186:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 81, + "nodeType": "Block", + "src": "739:41:0", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 78, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 72, + "src": "765:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 77, + "name": "UnRegister", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18, + "src": "754:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 79, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "754:19:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 80, + "nodeType": "EmitStatement", + "src": "749:24:0" + } + ] + }, + "documentation": null, + "id": 82, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 75, + "modifierName": { + "argumentTypes": null, + "id": 74, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 196, + "src": "729:9:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "729:9:0" + } + ], + "name": "unRegister", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 73, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 72, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 82, + "src": "705:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 71, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "705:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "704:17:0" + }, + "returnParameters": { + "id": 76, + "nodeType": "ParameterList", + "parameters": [], + "src": "739:0:0" + }, + "scope": 95, + "src": "685:95:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 93, + "nodeType": "Block", + "src": "951:39:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 89, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "968:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 91, + "indexExpression": { + "argumentTypes": null, + "id": 90, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 84, + "src": "977:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "968:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 88, + "id": 92, + "nodeType": "Return", + "src": "961:22:0" + } + ] + }, + "documentation": null, + "id": 94, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isRegister", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 85, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 84, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 94, + "src": "904:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 83, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "904:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "903:21:0" + }, + "returnParameters": { + "id": 88, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 87, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 94, + "src": "945:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 86, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "945:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "944:6:0" + }, + "scope": 95, + "src": "884:106:0", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 96, + "src": "90:903:0" + } + ], + "src": "0:994:0" + }, + "compiler": { + "name": "solc", + "version": "0.5.4+commit.9549d8ff.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "3.0.2", + "updatedAt": "2019-03-28T13:02:44.899Z", + "devdoc": { + "methods": { + "isOwner()": { + "return": "true if `msg.sender` is the owner of the contract." + }, + "owner()": { + "return": "the address of the owner." + }, + "renounceOwnership()": { + "details": "Allows the current owner to relinquish control of the contract. It will not be possible to call the functions with the `onlyOwner` modifier anymore." + }, + "transferOwnership(address)": { + "details": "Allows the current owner to transfer control of the contract to a newOwner.", + "params": { + "newOwner": "The address to transfer ownership to." + } + } + } + }, + "userdoc": { + "methods": { + "renounceOwnership()": { + "notice": "Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner." + } + } + } +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/DAOToken.json b/contracts/0.0.1-rc.53/DAOToken.json new file mode 100644 index 00000000..4ed54355 --- /dev/null +++ b/contracts/0.0.1-rc.53/DAOToken.json @@ -0,0 +1,474 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "DAOToken", + "sourceName": "contracts/controller/DAOToken.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "_name", + "type": "string" + }, + { + "internalType": "string", + "name": "_symbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "_cap", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burnFrom", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "cap", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040523480156200001157600080fd5b50604051620013d5380380620013d5833981810160405260608110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200010a57600080fd5b9083019060208201858111156200012057600080fd5b82516401000000008111828201881017156200013b57600080fd5b82525081516020918201929091019080838360005b838110156200016a57818101518382015260200162000150565b50505050905090810190601f168015620001985780820380516001836020036101000a031916815260200191505b50604052602001519150620001b790506001600160e01b036200023b16565b600380546001600160a01b0319166001600160a01b0392831617908190556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a382516200021890600490602086019062000240565b5081516200022e90600590602085019062000240565b5060065550620002e29050565b335b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200028357805160ff1916838001178555620002b3565b82800160010185558215620002b3579182015b82811115620002b357825182559160200191906001019062000296565b50620002c1929150620002c5565b5090565b6200023d91905b80821115620002c15760008155600101620002cc565b6110e380620002f26000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806370a08231116100ad57806395d89b411161007157806395d89b4114610356578063a457c2d71461035e578063a9059cbb1461038a578063dd62ed3e146103b6578063f2fde38b146103e457610121565b806370a08231146102d0578063715018a6146102f657806379cc6790146102fe5780638da5cb5b1461032a5780638f32d59b1461034e57610121565b8063313ce567116100f4578063313ce56714610233578063355274ea14610251578063395093511461025957806340c10f191461028557806342966c68146102b157610121565b806306fdde0314610126578063095ea7b3146101a357806318160ddd146101e357806323b872dd146101fd575b600080fd5b61012e61040a565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b038135169060200135610498565b604080519115158252519081900360200190f35b6101eb6104b5565b60408051918252519081900360200190f35b6101cf6004803603606081101561021357600080fd5b506001600160a01b038135811691602081013590911690604001356104bb565b61023b610548565b6040805160ff9092168252519081900360200190f35b6101eb61054d565b6101cf6004803603604081101561026f57600080fd5b506001600160a01b038135169060200135610553565b6101cf6004803603604081101561029b57600080fd5b506001600160a01b0381351690602001356105a7565b6102ce600480360360208110156102c757600080fd5b503561063a565b005b6101eb600480360360208110156102e657600080fd5b50356001600160a01b031661064e565b6102ce610669565b6102ce6004803603604081101561031457600080fd5b506001600160a01b03813516906020013561070c565b61033261071a565b604080516001600160a01b039092168252519081900360200190f35b6101cf610729565b61012e61074f565b6101cf6004803603604081101561037457600080fd5b506001600160a01b0381351690602001356107aa565b6101cf600480360360408110156103a057600080fd5b506001600160a01b038135169060200135610818565b6101eb600480360360408110156103cc57600080fd5b506001600160a01b038135811691602001351661082c565b6102ce600480360360208110156103fa57600080fd5b50356001600160a01b0316610857565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104905780601f1061046557610100808354040283529160200191610490565b820191906000526020600020905b81548152906001019060200180831161047357829003601f168201915b505050505081565b60006104ac6104a56108b9565b84846108bd565b50600192915050565b60025490565b60006104c88484846109a9565b61053e846104d46108b9565b61053985604051806060016040528060288152602001610fd4602891396001600160a01b038a166000908152600160205260408120906105126108b9565b6001600160a01b03168152602081019190915260400160002054919063ffffffff610b0516565b6108bd565b5060019392505050565b601281565b60065481565b60006104ac6105606108b9565b8461053985600160006105716108b9565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff610b9c16565b60006105b1610729565b610602576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6006541561063057600654610625836106196104b5565b9063ffffffff610b9c16565b111561063057600080fd5b6104ac8383610bfd565b61064b6106456108b9565b82610ced565b50565b6001600160a01b031660009081526020819052604090205490565b610671610729565b6106c2576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6003546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600380546001600160a01b0319169055565b6107168282610de9565b5050565b6003546001600160a01b031690565b6003546000906001600160a01b03166107406108b9565b6001600160a01b031614905090565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104905780601f1061046557610100808354040283529160200191610490565b60006104ac6107b76108b9565b846105398560405180606001604052806025815260200161108a60259139600160006107e16108b9565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff610b0516565b60006104ac6108256108b9565b84846109a9565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61085f610729565b6108b0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61064b81610e3d565b3390565b6001600160a01b0383166109025760405162461bcd60e51b81526004018080602001828103825260248152602001806110666024913960400191505060405180910390fd5b6001600160a01b0382166109475760405162461bcd60e51b8152600401808060200182810382526022815260200180610f8c6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166109ee5760405162461bcd60e51b81526004018080602001828103825260258152602001806110416025913960400191505060405180910390fd5b6001600160a01b038216610a335760405162461bcd60e51b8152600401808060200182810382526023815260200180610f216023913960400191505060405180910390fd5b610a7681604051806060016040528060268152602001610fae602691396001600160a01b038616600090815260208190526040902054919063ffffffff610b0516565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610aab908263ffffffff610b9c16565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610b945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b59578181015183820152602001610b41565b50505050905090810190601f168015610b865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610bf6576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610c58576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600254610c6b908263ffffffff610b9c16565b6002556001600160a01b038216600090815260208190526040902054610c97908263ffffffff610b9c16565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610d325760405162461bcd60e51b81526004018080602001828103825260218152602001806110206021913960400191505060405180910390fd5b610d7581604051806060016040528060228152602001610f44602291396001600160a01b038516600090815260208190526040902054919063ffffffff610b0516565b6001600160a01b038316600090815260208190526040902055600254610da1908263ffffffff610ede16565b6002556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b610df38282610ced565b61071682610dff6108b9565b61053984604051806060016040528060248152602001610ffc602491396001600160a01b0388166000908152600160205260408120906105126108b9565b6001600160a01b038116610e825760405162461bcd60e51b8152600401808060200182810382526026815260200180610f666026913960400191505060405180910390fd5b6003546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600380546001600160a01b0319166001600160a01b0392909216919091179055565b6000610bf683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b0556fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a72315820ad1bbc712d0cd75c828e4148c4654b174e2977124dbd2682be3c6ebaaa97817864736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c806370a08231116100ad57806395d89b411161007157806395d89b4114610356578063a457c2d71461035e578063a9059cbb1461038a578063dd62ed3e146103b6578063f2fde38b146103e457610121565b806370a08231146102d0578063715018a6146102f657806379cc6790146102fe5780638da5cb5b1461032a5780638f32d59b1461034e57610121565b8063313ce567116100f4578063313ce56714610233578063355274ea14610251578063395093511461025957806340c10f191461028557806342966c68146102b157610121565b806306fdde0314610126578063095ea7b3146101a357806318160ddd146101e357806323b872dd146101fd575b600080fd5b61012e61040a565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b038135169060200135610498565b604080519115158252519081900360200190f35b6101eb6104b5565b60408051918252519081900360200190f35b6101cf6004803603606081101561021357600080fd5b506001600160a01b038135811691602081013590911690604001356104bb565b61023b610548565b6040805160ff9092168252519081900360200190f35b6101eb61054d565b6101cf6004803603604081101561026f57600080fd5b506001600160a01b038135169060200135610553565b6101cf6004803603604081101561029b57600080fd5b506001600160a01b0381351690602001356105a7565b6102ce600480360360208110156102c757600080fd5b503561063a565b005b6101eb600480360360208110156102e657600080fd5b50356001600160a01b031661064e565b6102ce610669565b6102ce6004803603604081101561031457600080fd5b506001600160a01b03813516906020013561070c565b61033261071a565b604080516001600160a01b039092168252519081900360200190f35b6101cf610729565b61012e61074f565b6101cf6004803603604081101561037457600080fd5b506001600160a01b0381351690602001356107aa565b6101cf600480360360408110156103a057600080fd5b506001600160a01b038135169060200135610818565b6101eb600480360360408110156103cc57600080fd5b506001600160a01b038135811691602001351661082c565b6102ce600480360360208110156103fa57600080fd5b50356001600160a01b0316610857565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104905780601f1061046557610100808354040283529160200191610490565b820191906000526020600020905b81548152906001019060200180831161047357829003601f168201915b505050505081565b60006104ac6104a56108b9565b84846108bd565b50600192915050565b60025490565b60006104c88484846109a9565b61053e846104d46108b9565b61053985604051806060016040528060288152602001610fd4602891396001600160a01b038a166000908152600160205260408120906105126108b9565b6001600160a01b03168152602081019190915260400160002054919063ffffffff610b0516565b6108bd565b5060019392505050565b601281565b60065481565b60006104ac6105606108b9565b8461053985600160006105716108b9565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff610b9c16565b60006105b1610729565b610602576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6006541561063057600654610625836106196104b5565b9063ffffffff610b9c16565b111561063057600080fd5b6104ac8383610bfd565b61064b6106456108b9565b82610ced565b50565b6001600160a01b031660009081526020819052604090205490565b610671610729565b6106c2576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6003546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600380546001600160a01b0319169055565b6107168282610de9565b5050565b6003546001600160a01b031690565b6003546000906001600160a01b03166107406108b9565b6001600160a01b031614905090565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104905780601f1061046557610100808354040283529160200191610490565b60006104ac6107b76108b9565b846105398560405180606001604052806025815260200161108a60259139600160006107e16108b9565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff610b0516565b60006104ac6108256108b9565b84846109a9565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61085f610729565b6108b0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61064b81610e3d565b3390565b6001600160a01b0383166109025760405162461bcd60e51b81526004018080602001828103825260248152602001806110666024913960400191505060405180910390fd5b6001600160a01b0382166109475760405162461bcd60e51b8152600401808060200182810382526022815260200180610f8c6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166109ee5760405162461bcd60e51b81526004018080602001828103825260258152602001806110416025913960400191505060405180910390fd5b6001600160a01b038216610a335760405162461bcd60e51b8152600401808060200182810382526023815260200180610f216023913960400191505060405180910390fd5b610a7681604051806060016040528060268152602001610fae602691396001600160a01b038616600090815260208190526040902054919063ffffffff610b0516565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610aab908263ffffffff610b9c16565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610b945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b59578181015183820152602001610b41565b50505050905090810190601f168015610b865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610bf6576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610c58576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600254610c6b908263ffffffff610b9c16565b6002556001600160a01b038216600090815260208190526040902054610c97908263ffffffff610b9c16565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610d325760405162461bcd60e51b81526004018080602001828103825260218152602001806110206021913960400191505060405180910390fd5b610d7581604051806060016040528060228152602001610f44602291396001600160a01b038516600090815260208190526040902054919063ffffffff610b0516565b6001600160a01b038316600090815260208190526040902055600254610da1908263ffffffff610ede16565b6002556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b610df38282610ced565b61071682610dff6108b9565b61053984604051806060016040528060248152602001610ffc602491396001600160a01b0388166000908152600160205260408120906105126108b9565b6001600160a01b038116610e825760405162461bcd60e51b8152600401808060200182810382526026815260200180610f666026913960400191505060405180910390fd5b6003546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600380546001600160a01b0319166001600160a01b0392909216919091179055565b6000610bf683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b0556fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a72315820ad1bbc712d0cd75c828e4148c4654b174e2977124dbd2682be3c6ebaaa97817864736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/DAOTracker.json b/contracts/0.0.1-rc.53/DAOTracker.json new file mode 100644 index 00000000..94076963 --- /dev/null +++ b/contracts/0.0.1-rc.53/DAOTracker.json @@ -0,0 +1,251 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "DAOTracker", + "sourceName": "contracts/utils/DAOTracker.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_explanationHash", + "type": "string" + } + ], + "name": "BlacklistDAO", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_explanationHash", + "type": "string" + } + ], + "name": "ResetDAO", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_controller", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_reputation", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_daoToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_arcVersion", + "type": "string" + } + ], + "name": "TrackDAO", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "string", + "name": "_explanationHash", + "type": "string" + } + ], + "name": "blacklist", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "blacklisted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "string", + "name": "_explanationHash", + "type": "string" + } + ], + "name": "reset", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract Controller", + "name": "_controller", + "type": "address" + }, + { + "internalType": "string", + "name": "_arcVersion", + "type": "string" + } + ], + "name": "track", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040526100156001600160e01b0361006216565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610066565b3390565b610aaf806100756000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a807dd331161005b578063a807dd331461018d578063dbac26e91461024c578063ddf579ff14610272578063f2fde38b1461032857610088565b8063715018a61461008d5780638da5cb5b146100975780638f32d59b146100bb5780639096e5c1146100d7575b600080fd5b61009561034e565b005b61009f6103df565b604080516001600160a01b039092168252519081900360200190f35b6100c36103ee565b604080519115158252519081900360200190f35b610095600480360360408110156100ed57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011857600080fd5b82018360208201111561012a57600080fd5b8035906020019184600183028401116401000000008311171561014c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610412945050505050565b610095600480360360608110156101a357600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101d757600080fd5b8201836020820111156101e957600080fd5b8035906020019184600183028401116401000000008311171561020b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610529945050505050565b6100c36004803603602081101561026257600080fd5b50356001600160a01b0316610824565b6100956004803603604081101561028857600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102b357600080fd5b8201836020820111156102c557600080fd5b803590602001918460018302840111640100000000831117156102e757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610839945050505050565b6100956004803603602081101561033e57600080fd5b50356001600160a01b0316610912565b6103566103ee565b610395576040805162461bcd60e51b81526020600482018190526024820152600080516020610a30833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b0316610403610965565b6001600160a01b031614905090565b61041a6103ee565b610459576040805162461bcd60e51b81526020600482018190526024820152600080516020610a30833981519152604482015290519081900360640190fd5b6001600160a01b03821661046c57600080fd5b6001600160a01b0382166000818152600160209081526040808320805460ff19169055805182815285518184015285517fc92f239db48bb39be6889c4a12b43215d35e292944b1f1f1886c510ce8b93f689487949293849390840192908601918190849084905b838110156104eb5781810151838201526020016104d3565b50505050905090810190601f1680156105185780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b82336001600160a01b0316816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561056d57600080fd5b505afa158015610581573d6000803e3d6000fd5b505050506040513d602081101561059757600080fd5b50516001600160a01b0316146105de5760405162461bcd60e51b815260040180806020018281038252602b815260200180610a50602b913960400191505060405180910390fd5b6001600160a01b038416600090815260016020526040902054849060ff161561064e576040805162461bcd60e51b815260206004820181905260248201527f5468652061766174617220686173206265656e20626c61636b6c69737465642e604482015290519081900360640190fd5b6001600160a01b03851661066157600080fd5b6001600160a01b03841661067457600080fd5b846001600160a01b03167f7ba7a6c523b328fa3e27240586dae95267c456066e8f2f23bd1a2ea9f869643285876001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156106d957600080fd5b505afa1580156106ed573d6000803e3d6000fd5b505050506040513d602081101561070357600080fd5b505160408051631c2eb17b60e31b815290516001600160a01b038b169163e1758bd8916004808301926020929190829003018186803b15801561074557600080fd5b505afa158015610759573d6000803e3d6000fd5b505050506040513d602081101561076f57600080fd5b5051604080516001600160a01b03808616825284811660208381019190915290841692820192909252336060820181905260a0608083018181528c51918401919091528b5191938c939260c084019185019080838360005b838110156107df5781810151838201526020016107c7565b50505050905090810190601f16801561080c5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b60016020526000908152604090205460ff1681565b6108416103ee565b610880576040805162461bcd60e51b81526020600482018190526024820152600080516020610a30833981519152604482015290519081900360640190fd5b6001600160a01b03821661089357600080fd5b6001600160a01b0382166000818152600160208181526040808420805460ff1916909317909255815181815285518183015285517ff7912cfd008dee08754aad79d95d186b02a2ef8095125b66dd236ea631e876a0948794929384938401929086019181908490849083156104eb5781810151838201526020016104d3565b61091a6103ee565b610959576040805162461bcd60e51b81526020600482018190526024820152600080516020610a30833981519152604482015290519081900360640190fd5b61096281610969565b50565b3390565b6001600160a01b0381166109ae5760405162461bcd60e51b8152600401808060200182810382526026815260200180610a0a6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725468652063616c6c6572206d75737420626520746865206f776e6572206f6620746865204176617461722ea265627a7a72315820e28d98a846384ab98916e32e1f77828ef337d452cf5f5a7553b2567e1ae639a964736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063a807dd331161005b578063a807dd331461018d578063dbac26e91461024c578063ddf579ff14610272578063f2fde38b1461032857610088565b8063715018a61461008d5780638da5cb5b146100975780638f32d59b146100bb5780639096e5c1146100d7575b600080fd5b61009561034e565b005b61009f6103df565b604080516001600160a01b039092168252519081900360200190f35b6100c36103ee565b604080519115158252519081900360200190f35b610095600480360360408110156100ed57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011857600080fd5b82018360208201111561012a57600080fd5b8035906020019184600183028401116401000000008311171561014c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610412945050505050565b610095600480360360608110156101a357600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101d757600080fd5b8201836020820111156101e957600080fd5b8035906020019184600183028401116401000000008311171561020b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610529945050505050565b6100c36004803603602081101561026257600080fd5b50356001600160a01b0316610824565b6100956004803603604081101561028857600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156102b357600080fd5b8201836020820111156102c557600080fd5b803590602001918460018302840111640100000000831117156102e757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610839945050505050565b6100956004803603602081101561033e57600080fd5b50356001600160a01b0316610912565b6103566103ee565b610395576040805162461bcd60e51b81526020600482018190526024820152600080516020610a30833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b0316610403610965565b6001600160a01b031614905090565b61041a6103ee565b610459576040805162461bcd60e51b81526020600482018190526024820152600080516020610a30833981519152604482015290519081900360640190fd5b6001600160a01b03821661046c57600080fd5b6001600160a01b0382166000818152600160209081526040808320805460ff19169055805182815285518184015285517fc92f239db48bb39be6889c4a12b43215d35e292944b1f1f1886c510ce8b93f689487949293849390840192908601918190849084905b838110156104eb5781810151838201526020016104d3565b50505050905090810190601f1680156105185780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b82336001600160a01b0316816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561056d57600080fd5b505afa158015610581573d6000803e3d6000fd5b505050506040513d602081101561059757600080fd5b50516001600160a01b0316146105de5760405162461bcd60e51b815260040180806020018281038252602b815260200180610a50602b913960400191505060405180910390fd5b6001600160a01b038416600090815260016020526040902054849060ff161561064e576040805162461bcd60e51b815260206004820181905260248201527f5468652061766174617220686173206265656e20626c61636b6c69737465642e604482015290519081900360640190fd5b6001600160a01b03851661066157600080fd5b6001600160a01b03841661067457600080fd5b846001600160a01b03167f7ba7a6c523b328fa3e27240586dae95267c456066e8f2f23bd1a2ea9f869643285876001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156106d957600080fd5b505afa1580156106ed573d6000803e3d6000fd5b505050506040513d602081101561070357600080fd5b505160408051631c2eb17b60e31b815290516001600160a01b038b169163e1758bd8916004808301926020929190829003018186803b15801561074557600080fd5b505afa158015610759573d6000803e3d6000fd5b505050506040513d602081101561076f57600080fd5b5051604080516001600160a01b03808616825284811660208381019190915290841692820192909252336060820181905260a0608083018181528c51918401919091528b5191938c939260c084019185019080838360005b838110156107df5781810151838201526020016107c7565b50505050905090810190601f16801561080c5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b60016020526000908152604090205460ff1681565b6108416103ee565b610880576040805162461bcd60e51b81526020600482018190526024820152600080516020610a30833981519152604482015290519081900360640190fd5b6001600160a01b03821661089357600080fd5b6001600160a01b0382166000818152600160208181526040808420805460ff1916909317909255815181815285518183015285517ff7912cfd008dee08754aad79d95d186b02a2ef8095125b66dd236ea631e876a0948794929384938401929086019181908490849083156104eb5781810151838201526020016104d3565b61091a6103ee565b610959576040805162461bcd60e51b81526020600482018190526024820152600080516020610a30833981519152604482015290519081900360640190fd5b61096281610969565b50565b3390565b6001600160a01b0381166109ae5760405162461bcd60e51b8152600401808060200182810382526026815260200180610a0a6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725468652063616c6c6572206d75737420626520746865206f776e6572206f6620746865204176617461722ea265627a7a72315820e28d98a846384ab98916e32e1f77828ef337d452cf5f5a7553b2567e1ae639a964736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/DaoCreator.json b/contracts/0.0.1-rc.53/DaoCreator.json new file mode 100644 index 00000000..07515d40 --- /dev/null +++ b/contracts/0.0.1-rc.53/DaoCreator.json @@ -0,0 +1,197 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "DaoCreator", + "sourceName": "contracts/universalSchemes/DaoCreator.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "contract ControllerCreator", + "name": "_controllerCreator", + "type": "address" + }, + { + "internalType": "contract DAOTracker", + "name": "_daoTracker", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "InitialSchemesSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "NewOrg", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address[]", + "name": "_founders", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_foundersTokenAmount", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "_foundersReputationAmount", + "type": "uint256[]" + } + ], + "name": "addFounders", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "string", + "name": "_orgName", + "type": "string" + }, + { + "internalType": "string", + "name": "_tokenName", + "type": "string" + }, + { + "internalType": "string", + "name": "_tokenSymbol", + "type": "string" + }, + { + "internalType": "address[]", + "name": "_founders", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_foundersTokenAmount", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "_foundersReputationAmount", + "type": "uint256[]" + }, + { + "internalType": "uint256", + "name": "_cap", + "type": "uint256" + } + ], + "name": "forgeOrg", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "locks", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address[]", + "name": "_schemes", + "type": "address[]" + }, + { + "internalType": "bytes32[]", + "name": "_params", + "type": "bytes32[]" + }, + { + "internalType": "bytes4[]", + "name": "_permissions", + "type": "bytes4[]" + }, + { + "internalType": "string", + "name": "_metaData", + "type": "string" + } + ], + "name": "setSchemes", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506040516149303803806149308339818101604052604081101561003357600080fd5b5080516020909101516001600160a01b03821661004f57600080fd5b6001600160a01b03811661006257600080fd5b600180546001600160a01b039384166001600160a01b031991821617909155600280549290931691161790556148938061009d6000396000f3fe60806040523480156200001157600080fd5b5060043610620000525760003560e01c8063064bf386146200005757806328e697cc14620001d6578063571084bd14620004055780635de9a1371462000543575b600080fd5b620001d4600480360360a08110156200006f57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156200009a57600080fd5b820183602082011115620000ad57600080fd5b803590602001918460208302840111600160201b83111715620000cf57600080fd5b919390929091602081019035600160201b811115620000ed57600080fd5b8201836020820111156200010057600080fd5b803590602001918460208302840111600160201b831117156200012257600080fd5b919390929091602081019035600160201b8111156200014057600080fd5b8201836020820111156200015357600080fd5b803590602001918460208302840111600160201b831117156200017557600080fd5b919390929091602081019035600160201b8111156200019357600080fd5b820183602082011115620001a657600080fd5b803590602001918460018302840111600160201b83111715620001c857600080fd5b5090925090506200056c565b005b620003e9600480360360e0811015620001ee57600080fd5b810190602081018135600160201b8111156200020957600080fd5b8201836020820111156200021c57600080fd5b803590602001918460018302840111600160201b831117156200023e57600080fd5b919390929091602081019035600160201b8111156200025c57600080fd5b8201836020820111156200026f57600080fd5b803590602001918460018302840111600160201b831117156200029157600080fd5b919390929091602081019035600160201b811115620002af57600080fd5b820183602082011115620002c257600080fd5b803590602001918460018302840111600160201b83111715620002e457600080fd5b919390929091602081019035600160201b8111156200030257600080fd5b8201836020820111156200031557600080fd5b803590602001918460208302840111600160201b831117156200033757600080fd5b919390929091602081019035600160201b8111156200035557600080fd5b8201836020820111156200036857600080fd5b803590602001918460208302840111600160201b831117156200038a57600080fd5b919390929091602081019035600160201b811115620003a857600080fd5b820183602082011115620003bb57600080fd5b803590602001918460208302840111600160201b83111715620003dd57600080fd5b919350915035620008b9565b604080516001600160a01b039092168252519081900360200190f35b6200052f600480360360808110156200041d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156200044857600080fd5b8201836020820111156200045b57600080fd5b803590602001918460208302840111600160201b831117156200047d57600080fd5b919390929091602081019035600160201b8111156200049b57600080fd5b820183602082011115620004ae57600080fd5b803590602001918460208302840111600160201b83111715620004d057600080fd5b919390929091602081019035600160201b811115620004ee57600080fd5b8201836020820111156200050157600080fd5b803590602001918460208302840111600160201b831117156200052357600080fd5b50909250905062000a3e565b604080519115158252519081900360200190f35b620003e9600480360360208110156200055b57600080fd5b50356001600160a01b031662000d9e565b6001600160a01b038981166000908152602081905260409020541633146200059357600080fd5b6000896001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015620005cf57600080fd5b505afa158015620005e4573d6000803e3d6000fd5b505050506040513d6020811015620005fb57600080fd5b5051905060005b888110156200072557816001600160a01b031663e869d45f8b8b848181106200062757fe5b905060200201356001600160a01b03168a8a858181106200064457fe5b905060200201358989868181106200065857fe5b905060200201356001600160e01b0319168f6040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001848152602001836001600160e01b0319166001600160e01b0319168152602001826001600160a01b03166001600160a01b03168152602001945050505050602060405180830381600087803b158015620006ee57600080fd5b505af115801562000703573d6000803e3d6000fd5b505050506040513d60208110156200071a57600080fd5b505060010162000602565b506040805163c9b62eb160e01b81526001600160a01b038c81166024830152600482019283526044820185905283169163c9b62eb191869186918f91908190606401858580828437600081840152601f19601f820116905080830192505050945050505050602060405180830381600087803b158015620007a557600080fd5b505af1158015620007ba573d6000803e3d6000fd5b505050506040513d6020811015620007d157600080fd5b50506040805163039de01d60e01b81523060048201526001600160a01b038c8116602483015291519183169163039de01d916044808201926020929091908290030181600087803b1580156200082657600080fd5b505af11580156200083b573d6000803e3d6000fd5b505050506040513d60208110156200085257600080fd5b50506001600160a01b038a166000818152602081815260409182902080546001600160a01b0319169055815192835290517f9007c9042f12be953f7dbe3909f56c3f088e9fe294dbebbef4a67afa63462b6a9281900390910190a150505050505050505050565b600062000a2c8e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508d8d8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508c8c8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508b8b8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050604080516020808f0282810182019093528e82529093508e92508d91829185019084908082843760009201919091525050604080516020808e0282810182019093528d82529093508d92508c9182918501908490808284376000920191909152508b925062000db9915050565b9e9d5050505050505050505050505050565b600085841462000a4d57600080fd5b85821462000a5a57600080fd5b8562000a6557600080fd5b6001600160a01b0388811660009081526020819052604090205416331462000a8c57600080fd5b60005b8681101562000d8f57600088888381811062000aa757fe5b905060200201356001600160a01b03166001600160a01b0316141562000acc57600080fd5b600086868381811062000adb57fe5b90506020020135111562000c2957886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801562000b2357600080fd5b505afa15801562000b38573d6000803e3d6000fd5b505050506040513d602081101562000b4f57600080fd5b50516001600160a01b0316636407e43287878481811062000b6c57fe5b905060200201358a8a8581811062000b8057fe5b905060200201356001600160a01b03168c6040518463ffffffff1660e01b815260040180848152602001836001600160a01b03166001600160a01b03168152602001826001600160a01b03166001600160a01b031681526020019350505050602060405180830381600087803b15801562000bfa57600080fd5b505af115801562000c0f573d6000803e3d6000fd5b505050506040513d602081101562000c2657600080fd5b50505b600084848381811062000c3857fe5b90506020020135111562000d8657886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801562000c8057600080fd5b505afa15801562000c95573d6000803e3d6000fd5b505050506040513d602081101562000cac57600080fd5b50516001600160a01b031663eaf994b285858481811062000cc957fe5b905060200201358a8a8581811062000cdd57fe5b905060200201356001600160a01b03168c6040518463ffffffff1660e01b815260040180848152602001836001600160a01b03166001600160a01b03168152602001826001600160a01b03166001600160a01b031681526020019350505050602060405180830381600087803b15801562000d5757600080fd5b505af115801562000d6c573d6000803e3d6000fd5b505050506040513d602081101562000d8357600080fd5b50505b60010162000a8f565b50600198975050505050505050565b6000602081905290815260409020546001600160a01b031681565b6000835185511462000dca57600080fd5b825185511462000dd957600080fd5b600085511162000de857600080fd5b600087878460405162000dfb906200149b565b60408101829052606080825284519082015283518190602080830191608084019188019080838360005b8381101562000e3f57818101518382015260200162000e25565b50505050905090810190601f16801562000e6d5780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b8381101562000ea257818101518382015260200162000e88565b50505050905090810190601f16801562000ed05780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f08015801562000ef5573d6000803e3d6000fd5b509050600060405162000f0890620014a9565b604051809103906000f08015801562000f25573d6000803e3d6000fd5b50905060008a838360405162000f3b90620014b7565b6001600160a01b03808416602080840191909152908316604083015260608083528551908301528451829160808301919087019080838360005b8381101562000f8f57818101518382015260200162000f75565b50505050905090810190601f16801562000fbd5780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f08015801562000fe1573d6000803e3d6000fd5b50905060005b8851811015620011db5760006001600160a01b03168982815181106200100957fe5b60200260200101516001600160a01b031614156200102657600080fd5b60008882815181106200103557fe5b60200260200101511115620010fc57836001600160a01b03166340c10f198a83815181106200106057fe5b60200260200101518a84815181106200107557fe5b60200260200101516040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015620010cd57600080fd5b505af1158015620010e2573d6000803e3d6000fd5b505050506040513d6020811015620010f957600080fd5b50505b60008782815181106200110b57fe5b60200260200101511115620011d257826001600160a01b03166340c10f198a83815181106200113657fe5b60200260200101518984815181106200114b57fe5b60200260200101516040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015620011a357600080fd5b505af1158015620011b8573d6000803e3d6000fd5b505050506040513d6020811015620011cf57600080fd5b50505b60010162000fe7565b50600154604080516313db266360e31b81526001600160a01b03848116600483015291516000939290921691639ed933189160248082019260209290919082900301818787803b1580156200122f57600080fd5b505af115801562001244573d6000803e3d6000fd5b505050506040513d60208110156200125b57600080fd5b50516002546040805163a807dd3360e01b81526001600160a01b03868116600483015280851660248301526060604483015260006064830181905292519495509092169263a807dd339260a480820193929182900301818387803b158015620012c357600080fd5b505af1158015620012d8573d6000803e3d6000fd5b50505050816001600160a01b031663f2fde38b826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b03168152602001915050600060405180830381600087803b1580156200133557600080fd5b505af11580156200134a573d6000803e3d6000fd5b50505050836001600160a01b031663f2fde38b826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b03168152602001915050600060405180830381600087803b158015620013a757600080fd5b505af1158015620013bc573d6000803e3d6000fd5b50505050826001600160a01b031663f2fde38b826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b03168152602001915050600060405180830381600087803b1580156200141957600080fd5b505af11580156200142e573d6000803e3d6000fd5b5050506001600160a01b0383166000818152602081815260409182902080546001600160a01b03191633179055815192835290517f244496352f5e67e59ce96b4a53ef9ea7cb88b7db33eb13dc5e771bd04385a60e9350918290030190a1509a9950505050505050505050565b6113d580620014c683390190565b610aee806200289b83390190565b6114d680620033898339019056fe60806040523480156200001157600080fd5b50604051620013d5380380620013d5833981810160405260608110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200010a57600080fd5b9083019060208201858111156200012057600080fd5b82516401000000008111828201881017156200013b57600080fd5b82525081516020918201929091019080838360005b838110156200016a57818101518382015260200162000150565b50505050905090810190601f168015620001985780820380516001836020036101000a031916815260200191505b50604052602001519150620001b790506001600160e01b036200023b16565b600380546001600160a01b0319166001600160a01b0392831617908190556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a382516200021890600490602086019062000240565b5081516200022e90600590602085019062000240565b5060065550620002e29050565b335b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200028357805160ff1916838001178555620002b3565b82800160010185558215620002b3579182015b82811115620002b357825182559160200191906001019062000296565b50620002c1929150620002c5565b5090565b6200023d91905b80821115620002c15760008155600101620002cc565b6110e380620002f26000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806370a08231116100ad57806395d89b411161007157806395d89b4114610356578063a457c2d71461035e578063a9059cbb1461038a578063dd62ed3e146103b6578063f2fde38b146103e457610121565b806370a08231146102d0578063715018a6146102f657806379cc6790146102fe5780638da5cb5b1461032a5780638f32d59b1461034e57610121565b8063313ce567116100f4578063313ce56714610233578063355274ea14610251578063395093511461025957806340c10f191461028557806342966c68146102b157610121565b806306fdde0314610126578063095ea7b3146101a357806318160ddd146101e357806323b872dd146101fd575b600080fd5b61012e61040a565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b038135169060200135610498565b604080519115158252519081900360200190f35b6101eb6104b5565b60408051918252519081900360200190f35b6101cf6004803603606081101561021357600080fd5b506001600160a01b038135811691602081013590911690604001356104bb565b61023b610548565b6040805160ff9092168252519081900360200190f35b6101eb61054d565b6101cf6004803603604081101561026f57600080fd5b506001600160a01b038135169060200135610553565b6101cf6004803603604081101561029b57600080fd5b506001600160a01b0381351690602001356105a7565b6102ce600480360360208110156102c757600080fd5b503561063a565b005b6101eb600480360360208110156102e657600080fd5b50356001600160a01b031661064e565b6102ce610669565b6102ce6004803603604081101561031457600080fd5b506001600160a01b03813516906020013561070c565b61033261071a565b604080516001600160a01b039092168252519081900360200190f35b6101cf610729565b61012e61074f565b6101cf6004803603604081101561037457600080fd5b506001600160a01b0381351690602001356107aa565b6101cf600480360360408110156103a057600080fd5b506001600160a01b038135169060200135610818565b6101eb600480360360408110156103cc57600080fd5b506001600160a01b038135811691602001351661082c565b6102ce600480360360208110156103fa57600080fd5b50356001600160a01b0316610857565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104905780601f1061046557610100808354040283529160200191610490565b820191906000526020600020905b81548152906001019060200180831161047357829003601f168201915b505050505081565b60006104ac6104a56108b9565b84846108bd565b50600192915050565b60025490565b60006104c88484846109a9565b61053e846104d46108b9565b61053985604051806060016040528060288152602001610fd4602891396001600160a01b038a166000908152600160205260408120906105126108b9565b6001600160a01b03168152602081019190915260400160002054919063ffffffff610b0516565b6108bd565b5060019392505050565b601281565b60065481565b60006104ac6105606108b9565b8461053985600160006105716108b9565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff610b9c16565b60006105b1610729565b610602576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6006541561063057600654610625836106196104b5565b9063ffffffff610b9c16565b111561063057600080fd5b6104ac8383610bfd565b61064b6106456108b9565b82610ced565b50565b6001600160a01b031660009081526020819052604090205490565b610671610729565b6106c2576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6003546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600380546001600160a01b0319169055565b6107168282610de9565b5050565b6003546001600160a01b031690565b6003546000906001600160a01b03166107406108b9565b6001600160a01b031614905090565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104905780601f1061046557610100808354040283529160200191610490565b60006104ac6107b76108b9565b846105398560405180606001604052806025815260200161108a60259139600160006107e16108b9565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff610b0516565b60006104ac6108256108b9565b84846109a9565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61085f610729565b6108b0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61064b81610e3d565b3390565b6001600160a01b0383166109025760405162461bcd60e51b81526004018080602001828103825260248152602001806110666024913960400191505060405180910390fd5b6001600160a01b0382166109475760405162461bcd60e51b8152600401808060200182810382526022815260200180610f8c6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166109ee5760405162461bcd60e51b81526004018080602001828103825260258152602001806110416025913960400191505060405180910390fd5b6001600160a01b038216610a335760405162461bcd60e51b8152600401808060200182810382526023815260200180610f216023913960400191505060405180910390fd5b610a7681604051806060016040528060268152602001610fae602691396001600160a01b038616600090815260208190526040902054919063ffffffff610b0516565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610aab908263ffffffff610b9c16565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610b945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b59578181015183820152602001610b41565b50505050905090810190601f168015610b865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610bf6576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610c58576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600254610c6b908263ffffffff610b9c16565b6002556001600160a01b038216600090815260208190526040902054610c97908263ffffffff610b9c16565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610d325760405162461bcd60e51b81526004018080602001828103825260218152602001806110206021913960400191505060405180910390fd5b610d7581604051806060016040528060228152602001610f44602291396001600160a01b038516600090815260208190526040902054919063ffffffff610b0516565b6001600160a01b038316600090815260208190526040902055600254610da1908263ffffffff610ede16565b6002556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b610df38282610ced565b61071682610dff6108b9565b61053984604051806060016040528060248152602001610ffc602491396001600160a01b0388166000908152600160205260408120906105126108b9565b6001600160a01b038116610e825760405162461bcd60e51b8152600401808060200182810382526026815260200180610f666026913960400191505060405180910390fd5b6003546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600380546001600160a01b0319166001600160a01b0392909216919091179055565b6000610bf683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b0556fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a72315820ad1bbc712d0cd75c828e4148c4654b174e2977124dbd2682be3c6ebaaa97817864736f6c6343000511003260806040526000805460ff60a01b1916600960a11b17905561001f61006c565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610070565b3390565b610a6f8061007f6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063715018a611610071578063715018a6146101785780638da5cb5b146101825780638f32d59b146101a6578063981b24d0146101ae5780639dc29fac146101cb578063f2fde38b146101f7576100a9565b806318160ddd146100ae578063313ce567146100c857806340c10f19146100e65780634ee2cd7e1461012657806370a0823114610152575b600080fd5b6100b661021d565b60408051918252519081900360200190f35b6100d061022e565b6040805160ff9092168252519081900360200190f35b610112600480360360408110156100fc57600080fd5b506001600160a01b03813516906020013561023e565b604080519115158252519081900360200190f35b6100b66004803603604081101561013c57600080fd5b506001600160a01b0381351690602001356103b5565b6100b66004803603602081101561016857600080fd5b50356001600160a01b0316610445565b610180610459565b005b61018a6104ea565b604080516001600160a01b039092168252519081900360200190f35b6101126104f9565b6100b6600480360360208110156101c457600080fd5b503561051d565b610112600480360360408110156101e157600080fd5b506001600160a01b03813516906020013561056f565b6101806004803603602081101561020d57600080fd5b50356001600160a01b031661065a565b60006102284361051d565b90505b90565b600054600160a01b900460ff1681565b60006102486104f9565b610287576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b600061029161021d565b90508083820110156102e2576040805162461bcd60e51b8152602060048201526015602482015274746f74616c20737570706c79206f766572666c6f7760581b604482015290519081900360640190fd5b60006102ed85610445565b9050808482011015610338576040805162461bcd60e51b815260206004820152600f60248201526e62616c616365206f766572666c6f7760881b604482015290519081900360640190fd5b61034560028584016106ad565b6001600160a01b0385166000908152600160205260409020610369908286016106ad565b6040805185815290516001600160a01b038716917f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885919081900360200190a26001925050505b92915050565b6001600160a01b038216600090815260016020526040812054158061040f57506001600160a01b038316600090815260016020526040812080548492906103f857fe5b6000918252602090912001546001600160801b0316115b1561041c575060006103af565b6001600160a01b038316600090815260016020526040902061043e90836107d9565b90506103af565b600061045182436103b5565b90505b919050565b6104616104f9565b6104a0576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b031661050e610909565b6001600160a01b031614905090565b6002546000901580610550575081600260008154811061053957fe5b6000918252602090912001546001600160801b0316115b1561055d57506000610454565b6105686002836107d9565b9050610454565b60006105796104f9565b6105b8576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b60006105c261021d565b90508260006105d086610445565b9050818110156105de578091505b6105eb60028385036106ad565b6001600160a01b038616600090815260016020526040902061060f908383036106ad565b6040805183815290516001600160a01b038816917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250600195945050505050565b6106626104f9565b6106a1576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b6106aa8161090d565b50565b80816001600160801b031614610700576040805162461bcd60e51b815260206004820152601360248201527272657075746174696f6e206f766572666c6f7760681b604482015290519081900360640190fd5b815415806107345750815443908390600019810190811061071d57fe5b6000918252602090912001546001600160801b0316105b1561079b578154600090839061074d82600183016109ad565b8154811061075757fe5b600091825260209091200180546001600160801b03848116600160801b024382166fffffffffffffffffffffffffffffffff199093169290921716179055506107d5565b8154600090839060001981019081106107b057fe5b600091825260209091200180546001600160801b03808516600160801b029116179055505b5050565b81546000906107ea575060006103af565b8254839060001981019081106107fc57fe5b6000918252602090912001546001600160801b0316821061084c5782548390600019810190811061082957fe5b600091825260209091200154600160801b90046001600160801b031690506103af565b8260008154811061085957fe5b6000918252602090912001546001600160801b031682101561087d575060006103af565b8254600090600019015b818111156108d85760006002600183850101049050848682815481106108a957fe5b6000918252602090912001546001600160801b0316116108cb578092506108d2565b6001810391505b50610887565b8482815481106108e457fe5b600091825260209091200154600160801b90046001600160801b031695945050505050565b3390565b6001600160a01b0381166109525760405162461bcd60e51b81526004018080602001828103825260268152602001806109f56026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b8154818355818111156109d1576000838152602090206109d19181019083016109d6565b505050565b61022b91905b808211156109f057600081556001016109dc565b509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820a183468e546536a3485723474bc0b4c5a6b476e5067f0454e174b38daa1573ca64736f6c6343000511003260806040523480156200001157600080fd5b50604051620014d6380380620014d6833981810160405260608110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b506040908152602082015191015190925090506200010c6001600160e01b036200019d16565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3825162000169906001906020860190620001a2565b50600280546001600160a01b039384166001600160a01b031991821617909155600380549290931691161790555062000244565b335b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001e557805160ff191683800117855562000215565b8280016001018555821562000215579182015b8281111562000215578251825591602001919060010190620001f8565b506200022392915062000227565b5090565b6200019f91905b808211156200022357600081556001016200022e565b61128280620002546000396000f3fe6080604052600436106100c25760003560e01c80638f32d59b1161007f578063cb16d4a211610059578063cb16d4a214610491578063dab0efff146104ca578063e1758bd81461050d578063f2fde38b14610522576100c2565b80638f32d59b146103f0578063ab751f7114610405578063b756d5a214610448576100c2565b80631386dc2d146100fa5780632bf1645814610184578063715018a6146102cc578063890ac46c146102e357806389ae1c90146103aa5780638da5cb5b146103db575b60408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b34801561010657600080fd5b5061010f610555565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610149578181015183820152602001610131565b50505050905090810190601f1680156101765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019057600080fd5b50610249600480360360608110156101a757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156101d257600080fd5b8201836020820111156101e457600080fd5b8035906020019184600183028401116401000000008311171561020657600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955050913592506105e2915050565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610290578181015183820152602001610278565b50505050905090810190601f1680156102bd5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156102d857600080fd5b506102e1610797565b005b3480156102ef57600080fd5b506103966004803603602081101561030657600080fd5b81019060208101813564010000000081111561032157600080fd5b82018360208201111561033357600080fd5b8035906020019184600183028401116401000000008311171561035557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610828945050505050565b604080519115158252519081900360200190f35b3480156103b657600080fd5b506103bf610912565b604080516001600160a01b039092168252519081900360200190f35b3480156103e757600080fd5b506103bf610921565b3480156103fc57600080fd5b50610396610930565b34801561041157600080fd5b506103966004803603606081101561042857600080fd5b506001600160a01b03813581169160208101359091169060400135610954565b34801561045457600080fd5b506103966004803603608081101561046b57600080fd5b506001600160a01b03813581169160208101358216916040820135169060600135610a07565b34801561049d57600080fd5b50610396600480360360408110156104b457600080fd5b50803590602001356001600160a01b0316610ac5565b3480156104d657600080fd5b50610396600480360360608110156104ed57600080fd5b506001600160a01b03813581169160208101359091169060400135610b8d565b34801561051957600080fd5b506103bf610c45565b34801561052e57600080fd5b506102e16004803603602081101561054557600080fd5b50356001600160a01b0316610c54565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105da5780601f106105af576101008083540402835291602001916105da565b820191906000526020600020905b8154815290600101906020018083116105bd57829003601f168201915b505050505081565b600060606105ee610930565b61062d576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b846001600160a01b031683856040518082805190602001908083835b602083106106685780518252601f199092019160209182019101610649565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146106ca576040519150601f19603f3d011682016040523d82523d6000602084013e6106cf565b606091505b508092508193505050846001600160a01b03167f534b52c783549f909f9e743120524d0b7154058e4a54cdc895c2c0b587a1c7e0858585604051808060200184815260200183151515158152602001828103825285818151815260200191508051906020019080838360005b8381101561075357818101518382015260200161073b565b50505050905090810190601f1680156107805780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a2935093915050565b61079f610930565b6107de576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610832610930565b610871576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b7ff9deba4938ba20070ec5a45ddf59bccba49cf83124215228ec1232182ef0ba2b826040518080602001828103825283818151815260200191508051906020019080838360005b838110156108d05781810151838201526020016108b8565b50505050905090810190601f1680156108fd5780820380516001836020036101000a031916815260200191505b509250505060405180910390a1506001919050565b6003546001600160a01b031681565b6000546001600160a01b031690565b600080546001600160a01b0316610945610ca7565b6001600160a01b031614905090565b600061095e610930565b61099d576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b6109b76001600160a01b038516848463ffffffff610cab16565b604080516001600160a01b038581168252602082018590528251908716927f3a48a4d6253b30fd10e57a347c1f9bcb0604946481fae0b2fdad6e74f2a9cbb3928290030190a25060019392505050565b6000610a11610930565b610a50576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610a6b6001600160a01b03861685858563ffffffff610ebc16565b604080516001600160a01b03868116825285811660208301528183018590529151918716917f179c15de44aa7ab84896301974328eb40b5b40fe01cfe0fee2924ea712c3e8439181900360600190a2506001949350505050565b6000610acf610930565b610b0e576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b6040516001600160a01b0383169084156108fc029085906000818181858888f19350505050158015610b44573d6000803e3d6000fd5b506040805184815290516001600160a01b038416917f22fca66666089f39bc900dd6605b489df4aae6260cc8ea8257594cfb8c84926c919081900360200190a250600192915050565b6000610b97610930565b610bd6576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610bf06001600160a01b038516848463ffffffff61103f16565b826001600160a01b0316846001600160a01b03167f49dc2a60d2599a7b6932d78fb694c30dfc596fe4e0282b5d0fd184b52472c04d846040518082815260200191505060405180910390a35060019392505050565b6002546001600160a01b031681565b610c5c610930565b610c9b576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610ca481611106565b50565b3390565b610cbd836001600160a01b03166111a6565b610cc657600080fd5b801580610d4c575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b158015610d1e57600080fd5b505afa158015610d32573d6000803e3d6000fd5b505050506040513d6020811015610d4857600080fd5b5051155b610d5557600080fd5b604080518082018252601881527f617070726f766528616464726573732c75696e7432353629000000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663095ea7b360e01b1781529251815160009460609489169392918291908083835b60208310610e025780518252601f199092019160209182019101610de3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610e64576040519150601f19603f3d011682016040523d82523d6000602084013e610e69565b606091505b509150915081610e7857600080fd5b80511580610eac575080516020148015610eac575080601f81518110610e9a57fe5b01602001516001600160f81b03191615155b610eb557600080fd5b5050505050565b610ece846001600160a01b03166111a6565b610ed757600080fd5b60006060856001600160a01b03166040518060600160405280602581526020016111e3602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b60208310610f845780518252601f199092019160209182019101610f65565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610fe6576040519150601f19603f3d011682016040523d82523d6000602084013e610feb565b606091505b509150915081610ffa57600080fd5b8051158061102e57508051602014801561102e575080601f8151811061101c57fe5b01602001516001600160f81b03191615155b61103757600080fd5b505050505050565b611051836001600160a01b03166111a6565b61105a57600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b17815292518151600094606094891693929182919080838360208310610e025780518252601f199092019160209182019101610de3565b6001600160a01b03811661114b5760405162461bcd60e51b81526004018080602001828103825260268152602001806112086026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906111da5750808214155b94935050505056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536294f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a723158204d57626914093b7f63b1c1c4d5f5e6e17e0f0c54f4162371009859bcf2841de664736f6c63430005110032a265627a7a723158204310a27836ecb74f301863e975e21bad6386a51d89c846b4a22c7e28a11dd0e664736f6c63430005110032", + "deployedBytecode": "0x60806040523480156200001157600080fd5b5060043610620000525760003560e01c8063064bf386146200005757806328e697cc14620001d6578063571084bd14620004055780635de9a1371462000543575b600080fd5b620001d4600480360360a08110156200006f57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156200009a57600080fd5b820183602082011115620000ad57600080fd5b803590602001918460208302840111600160201b83111715620000cf57600080fd5b919390929091602081019035600160201b811115620000ed57600080fd5b8201836020820111156200010057600080fd5b803590602001918460208302840111600160201b831117156200012257600080fd5b919390929091602081019035600160201b8111156200014057600080fd5b8201836020820111156200015357600080fd5b803590602001918460208302840111600160201b831117156200017557600080fd5b919390929091602081019035600160201b8111156200019357600080fd5b820183602082011115620001a657600080fd5b803590602001918460018302840111600160201b83111715620001c857600080fd5b5090925090506200056c565b005b620003e9600480360360e0811015620001ee57600080fd5b810190602081018135600160201b8111156200020957600080fd5b8201836020820111156200021c57600080fd5b803590602001918460018302840111600160201b831117156200023e57600080fd5b919390929091602081019035600160201b8111156200025c57600080fd5b8201836020820111156200026f57600080fd5b803590602001918460018302840111600160201b831117156200029157600080fd5b919390929091602081019035600160201b811115620002af57600080fd5b820183602082011115620002c257600080fd5b803590602001918460018302840111600160201b83111715620002e457600080fd5b919390929091602081019035600160201b8111156200030257600080fd5b8201836020820111156200031557600080fd5b803590602001918460208302840111600160201b831117156200033757600080fd5b919390929091602081019035600160201b8111156200035557600080fd5b8201836020820111156200036857600080fd5b803590602001918460208302840111600160201b831117156200038a57600080fd5b919390929091602081019035600160201b811115620003a857600080fd5b820183602082011115620003bb57600080fd5b803590602001918460208302840111600160201b83111715620003dd57600080fd5b919350915035620008b9565b604080516001600160a01b039092168252519081900360200190f35b6200052f600480360360808110156200041d57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156200044857600080fd5b8201836020820111156200045b57600080fd5b803590602001918460208302840111600160201b831117156200047d57600080fd5b919390929091602081019035600160201b8111156200049b57600080fd5b820183602082011115620004ae57600080fd5b803590602001918460208302840111600160201b83111715620004d057600080fd5b919390929091602081019035600160201b811115620004ee57600080fd5b8201836020820111156200050157600080fd5b803590602001918460208302840111600160201b831117156200052357600080fd5b50909250905062000a3e565b604080519115158252519081900360200190f35b620003e9600480360360208110156200055b57600080fd5b50356001600160a01b031662000d9e565b6001600160a01b038981166000908152602081905260409020541633146200059357600080fd5b6000896001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015620005cf57600080fd5b505afa158015620005e4573d6000803e3d6000fd5b505050506040513d6020811015620005fb57600080fd5b5051905060005b888110156200072557816001600160a01b031663e869d45f8b8b848181106200062757fe5b905060200201356001600160a01b03168a8a858181106200064457fe5b905060200201358989868181106200065857fe5b905060200201356001600160e01b0319168f6040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001848152602001836001600160e01b0319166001600160e01b0319168152602001826001600160a01b03166001600160a01b03168152602001945050505050602060405180830381600087803b158015620006ee57600080fd5b505af115801562000703573d6000803e3d6000fd5b505050506040513d60208110156200071a57600080fd5b505060010162000602565b506040805163c9b62eb160e01b81526001600160a01b038c81166024830152600482019283526044820185905283169163c9b62eb191869186918f91908190606401858580828437600081840152601f19601f820116905080830192505050945050505050602060405180830381600087803b158015620007a557600080fd5b505af1158015620007ba573d6000803e3d6000fd5b505050506040513d6020811015620007d157600080fd5b50506040805163039de01d60e01b81523060048201526001600160a01b038c8116602483015291519183169163039de01d916044808201926020929091908290030181600087803b1580156200082657600080fd5b505af11580156200083b573d6000803e3d6000fd5b505050506040513d60208110156200085257600080fd5b50506001600160a01b038a166000818152602081815260409182902080546001600160a01b0319169055815192835290517f9007c9042f12be953f7dbe3909f56c3f088e9fe294dbebbef4a67afa63462b6a9281900390910190a150505050505050505050565b600062000a2c8e8e8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508d8d8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508c8c8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508b8b8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050604080516020808f0282810182019093528e82529093508e92508d91829185019084908082843760009201919091525050604080516020808e0282810182019093528d82529093508d92508c9182918501908490808284376000920191909152508b925062000db9915050565b9e9d5050505050505050505050505050565b600085841462000a4d57600080fd5b85821462000a5a57600080fd5b8562000a6557600080fd5b6001600160a01b0388811660009081526020819052604090205416331462000a8c57600080fd5b60005b8681101562000d8f57600088888381811062000aa757fe5b905060200201356001600160a01b03166001600160a01b0316141562000acc57600080fd5b600086868381811062000adb57fe5b90506020020135111562000c2957886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801562000b2357600080fd5b505afa15801562000b38573d6000803e3d6000fd5b505050506040513d602081101562000b4f57600080fd5b50516001600160a01b0316636407e43287878481811062000b6c57fe5b905060200201358a8a8581811062000b8057fe5b905060200201356001600160a01b03168c6040518463ffffffff1660e01b815260040180848152602001836001600160a01b03166001600160a01b03168152602001826001600160a01b03166001600160a01b031681526020019350505050602060405180830381600087803b15801562000bfa57600080fd5b505af115801562000c0f573d6000803e3d6000fd5b505050506040513d602081101562000c2657600080fd5b50505b600084848381811062000c3857fe5b90506020020135111562000d8657886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801562000c8057600080fd5b505afa15801562000c95573d6000803e3d6000fd5b505050506040513d602081101562000cac57600080fd5b50516001600160a01b031663eaf994b285858481811062000cc957fe5b905060200201358a8a8581811062000cdd57fe5b905060200201356001600160a01b03168c6040518463ffffffff1660e01b815260040180848152602001836001600160a01b03166001600160a01b03168152602001826001600160a01b03166001600160a01b031681526020019350505050602060405180830381600087803b15801562000d5757600080fd5b505af115801562000d6c573d6000803e3d6000fd5b505050506040513d602081101562000d8357600080fd5b50505b60010162000a8f565b50600198975050505050505050565b6000602081905290815260409020546001600160a01b031681565b6000835185511462000dca57600080fd5b825185511462000dd957600080fd5b600085511162000de857600080fd5b600087878460405162000dfb906200149b565b60408101829052606080825284519082015283518190602080830191608084019188019080838360005b8381101562000e3f57818101518382015260200162000e25565b50505050905090810190601f16801562000e6d5780820380516001836020036101000a031916815260200191505b50838103825285518152855160209182019187019080838360005b8381101562000ea257818101518382015260200162000e88565b50505050905090810190601f16801562000ed05780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f08015801562000ef5573d6000803e3d6000fd5b509050600060405162000f0890620014a9565b604051809103906000f08015801562000f25573d6000803e3d6000fd5b50905060008a838360405162000f3b90620014b7565b6001600160a01b03808416602080840191909152908316604083015260608083528551908301528451829160808301919087019080838360005b8381101562000f8f57818101518382015260200162000f75565b50505050905090810190601f16801562000fbd5780820380516001836020036101000a031916815260200191505b50945050505050604051809103906000f08015801562000fe1573d6000803e3d6000fd5b50905060005b8851811015620011db5760006001600160a01b03168982815181106200100957fe5b60200260200101516001600160a01b031614156200102657600080fd5b60008882815181106200103557fe5b60200260200101511115620010fc57836001600160a01b03166340c10f198a83815181106200106057fe5b60200260200101518a84815181106200107557fe5b60200260200101516040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015620010cd57600080fd5b505af1158015620010e2573d6000803e3d6000fd5b505050506040513d6020811015620010f957600080fd5b50505b60008782815181106200110b57fe5b60200260200101511115620011d257826001600160a01b03166340c10f198a83815181106200113657fe5b60200260200101518984815181106200114b57fe5b60200260200101516040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015620011a357600080fd5b505af1158015620011b8573d6000803e3d6000fd5b505050506040513d6020811015620011cf57600080fd5b50505b60010162000fe7565b50600154604080516313db266360e31b81526001600160a01b03848116600483015291516000939290921691639ed933189160248082019260209290919082900301818787803b1580156200122f57600080fd5b505af115801562001244573d6000803e3d6000fd5b505050506040513d60208110156200125b57600080fd5b50516002546040805163a807dd3360e01b81526001600160a01b03868116600483015280851660248301526060604483015260006064830181905292519495509092169263a807dd339260a480820193929182900301818387803b158015620012c357600080fd5b505af1158015620012d8573d6000803e3d6000fd5b50505050816001600160a01b031663f2fde38b826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b03168152602001915050600060405180830381600087803b1580156200133557600080fd5b505af11580156200134a573d6000803e3d6000fd5b50505050836001600160a01b031663f2fde38b826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b03168152602001915050600060405180830381600087803b158015620013a757600080fd5b505af1158015620013bc573d6000803e3d6000fd5b50505050826001600160a01b031663f2fde38b826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b03168152602001915050600060405180830381600087803b1580156200141957600080fd5b505af11580156200142e573d6000803e3d6000fd5b5050506001600160a01b0383166000818152602081815260409182902080546001600160a01b03191633179055815192835290517f244496352f5e67e59ce96b4a53ef9ea7cb88b7db33eb13dc5e771bd04385a60e9350918290030190a1509a9950505050505050505050565b6113d580620014c683390190565b610aee806200289b83390190565b6114d680620033898339019056fe60806040523480156200001157600080fd5b50604051620013d5380380620013d5833981810160405260608110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200010a57600080fd5b9083019060208201858111156200012057600080fd5b82516401000000008111828201881017156200013b57600080fd5b82525081516020918201929091019080838360005b838110156200016a57818101518382015260200162000150565b50505050905090810190601f168015620001985780820380516001836020036101000a031916815260200191505b50604052602001519150620001b790506001600160e01b036200023b16565b600380546001600160a01b0319166001600160a01b0392831617908190556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a382516200021890600490602086019062000240565b5081516200022e90600590602085019062000240565b5060065550620002e29050565b335b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200028357805160ff1916838001178555620002b3565b82800160010185558215620002b3579182015b82811115620002b357825182559160200191906001019062000296565b50620002c1929150620002c5565b5090565b6200023d91905b80821115620002c15760008155600101620002cc565b6110e380620002f26000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806370a08231116100ad57806395d89b411161007157806395d89b4114610356578063a457c2d71461035e578063a9059cbb1461038a578063dd62ed3e146103b6578063f2fde38b146103e457610121565b806370a08231146102d0578063715018a6146102f657806379cc6790146102fe5780638da5cb5b1461032a5780638f32d59b1461034e57610121565b8063313ce567116100f4578063313ce56714610233578063355274ea14610251578063395093511461025957806340c10f191461028557806342966c68146102b157610121565b806306fdde0314610126578063095ea7b3146101a357806318160ddd146101e357806323b872dd146101fd575b600080fd5b61012e61040a565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b038135169060200135610498565b604080519115158252519081900360200190f35b6101eb6104b5565b60408051918252519081900360200190f35b6101cf6004803603606081101561021357600080fd5b506001600160a01b038135811691602081013590911690604001356104bb565b61023b610548565b6040805160ff9092168252519081900360200190f35b6101eb61054d565b6101cf6004803603604081101561026f57600080fd5b506001600160a01b038135169060200135610553565b6101cf6004803603604081101561029b57600080fd5b506001600160a01b0381351690602001356105a7565b6102ce600480360360208110156102c757600080fd5b503561063a565b005b6101eb600480360360208110156102e657600080fd5b50356001600160a01b031661064e565b6102ce610669565b6102ce6004803603604081101561031457600080fd5b506001600160a01b03813516906020013561070c565b61033261071a565b604080516001600160a01b039092168252519081900360200190f35b6101cf610729565b61012e61074f565b6101cf6004803603604081101561037457600080fd5b506001600160a01b0381351690602001356107aa565b6101cf600480360360408110156103a057600080fd5b506001600160a01b038135169060200135610818565b6101eb600480360360408110156103cc57600080fd5b506001600160a01b038135811691602001351661082c565b6102ce600480360360208110156103fa57600080fd5b50356001600160a01b0316610857565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104905780601f1061046557610100808354040283529160200191610490565b820191906000526020600020905b81548152906001019060200180831161047357829003601f168201915b505050505081565b60006104ac6104a56108b9565b84846108bd565b50600192915050565b60025490565b60006104c88484846109a9565b61053e846104d46108b9565b61053985604051806060016040528060288152602001610fd4602891396001600160a01b038a166000908152600160205260408120906105126108b9565b6001600160a01b03168152602081019190915260400160002054919063ffffffff610b0516565b6108bd565b5060019392505050565b601281565b60065481565b60006104ac6105606108b9565b8461053985600160006105716108b9565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff610b9c16565b60006105b1610729565b610602576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6006541561063057600654610625836106196104b5565b9063ffffffff610b9c16565b111561063057600080fd5b6104ac8383610bfd565b61064b6106456108b9565b82610ced565b50565b6001600160a01b031660009081526020819052604090205490565b610671610729565b6106c2576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6003546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600380546001600160a01b0319169055565b6107168282610de9565b5050565b6003546001600160a01b031690565b6003546000906001600160a01b03166107406108b9565b6001600160a01b031614905090565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104905780601f1061046557610100808354040283529160200191610490565b60006104ac6107b76108b9565b846105398560405180606001604052806025815260200161108a60259139600160006107e16108b9565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff610b0516565b60006104ac6108256108b9565b84846109a9565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61085f610729565b6108b0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61064b81610e3d565b3390565b6001600160a01b0383166109025760405162461bcd60e51b81526004018080602001828103825260248152602001806110666024913960400191505060405180910390fd5b6001600160a01b0382166109475760405162461bcd60e51b8152600401808060200182810382526022815260200180610f8c6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166109ee5760405162461bcd60e51b81526004018080602001828103825260258152602001806110416025913960400191505060405180910390fd5b6001600160a01b038216610a335760405162461bcd60e51b8152600401808060200182810382526023815260200180610f216023913960400191505060405180910390fd5b610a7681604051806060016040528060268152602001610fae602691396001600160a01b038616600090815260208190526040902054919063ffffffff610b0516565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610aab908263ffffffff610b9c16565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610b945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b59578181015183820152602001610b41565b50505050905090810190601f168015610b865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610bf6576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610c58576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600254610c6b908263ffffffff610b9c16565b6002556001600160a01b038216600090815260208190526040902054610c97908263ffffffff610b9c16565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610d325760405162461bcd60e51b81526004018080602001828103825260218152602001806110206021913960400191505060405180910390fd5b610d7581604051806060016040528060228152602001610f44602291396001600160a01b038516600090815260208190526040902054919063ffffffff610b0516565b6001600160a01b038316600090815260208190526040902055600254610da1908263ffffffff610ede16565b6002556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b610df38282610ced565b61071682610dff6108b9565b61053984604051806060016040528060248152602001610ffc602491396001600160a01b0388166000908152600160205260408120906105126108b9565b6001600160a01b038116610e825760405162461bcd60e51b8152600401808060200182810382526026815260200180610f666026913960400191505060405180910390fd5b6003546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600380546001600160a01b0319166001600160a01b0392909216919091179055565b6000610bf683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b0556fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a72315820ad1bbc712d0cd75c828e4148c4654b174e2977124dbd2682be3c6ebaaa97817864736f6c6343000511003260806040526000805460ff60a01b1916600960a11b17905561001f61006c565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610070565b3390565b610a6f8061007f6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063715018a611610071578063715018a6146101785780638da5cb5b146101825780638f32d59b146101a6578063981b24d0146101ae5780639dc29fac146101cb578063f2fde38b146101f7576100a9565b806318160ddd146100ae578063313ce567146100c857806340c10f19146100e65780634ee2cd7e1461012657806370a0823114610152575b600080fd5b6100b661021d565b60408051918252519081900360200190f35b6100d061022e565b6040805160ff9092168252519081900360200190f35b610112600480360360408110156100fc57600080fd5b506001600160a01b03813516906020013561023e565b604080519115158252519081900360200190f35b6100b66004803603604081101561013c57600080fd5b506001600160a01b0381351690602001356103b5565b6100b66004803603602081101561016857600080fd5b50356001600160a01b0316610445565b610180610459565b005b61018a6104ea565b604080516001600160a01b039092168252519081900360200190f35b6101126104f9565b6100b6600480360360208110156101c457600080fd5b503561051d565b610112600480360360408110156101e157600080fd5b506001600160a01b03813516906020013561056f565b6101806004803603602081101561020d57600080fd5b50356001600160a01b031661065a565b60006102284361051d565b90505b90565b600054600160a01b900460ff1681565b60006102486104f9565b610287576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b600061029161021d565b90508083820110156102e2576040805162461bcd60e51b8152602060048201526015602482015274746f74616c20737570706c79206f766572666c6f7760581b604482015290519081900360640190fd5b60006102ed85610445565b9050808482011015610338576040805162461bcd60e51b815260206004820152600f60248201526e62616c616365206f766572666c6f7760881b604482015290519081900360640190fd5b61034560028584016106ad565b6001600160a01b0385166000908152600160205260409020610369908286016106ad565b6040805185815290516001600160a01b038716917f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885919081900360200190a26001925050505b92915050565b6001600160a01b038216600090815260016020526040812054158061040f57506001600160a01b038316600090815260016020526040812080548492906103f857fe5b6000918252602090912001546001600160801b0316115b1561041c575060006103af565b6001600160a01b038316600090815260016020526040902061043e90836107d9565b90506103af565b600061045182436103b5565b90505b919050565b6104616104f9565b6104a0576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b031661050e610909565b6001600160a01b031614905090565b6002546000901580610550575081600260008154811061053957fe5b6000918252602090912001546001600160801b0316115b1561055d57506000610454565b6105686002836107d9565b9050610454565b60006105796104f9565b6105b8576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b60006105c261021d565b90508260006105d086610445565b9050818110156105de578091505b6105eb60028385036106ad565b6001600160a01b038616600090815260016020526040902061060f908383036106ad565b6040805183815290516001600160a01b038816917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250600195945050505050565b6106626104f9565b6106a1576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b6106aa8161090d565b50565b80816001600160801b031614610700576040805162461bcd60e51b815260206004820152601360248201527272657075746174696f6e206f766572666c6f7760681b604482015290519081900360640190fd5b815415806107345750815443908390600019810190811061071d57fe5b6000918252602090912001546001600160801b0316105b1561079b578154600090839061074d82600183016109ad565b8154811061075757fe5b600091825260209091200180546001600160801b03848116600160801b024382166fffffffffffffffffffffffffffffffff199093169290921716179055506107d5565b8154600090839060001981019081106107b057fe5b600091825260209091200180546001600160801b03808516600160801b029116179055505b5050565b81546000906107ea575060006103af565b8254839060001981019081106107fc57fe5b6000918252602090912001546001600160801b0316821061084c5782548390600019810190811061082957fe5b600091825260209091200154600160801b90046001600160801b031690506103af565b8260008154811061085957fe5b6000918252602090912001546001600160801b031682101561087d575060006103af565b8254600090600019015b818111156108d85760006002600183850101049050848682815481106108a957fe5b6000918252602090912001546001600160801b0316116108cb578092506108d2565b6001810391505b50610887565b8482815481106108e457fe5b600091825260209091200154600160801b90046001600160801b031695945050505050565b3390565b6001600160a01b0381166109525760405162461bcd60e51b81526004018080602001828103825260268152602001806109f56026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b8154818355818111156109d1576000838152602090206109d19181019083016109d6565b505050565b61022b91905b808211156109f057600081556001016109dc565b509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820a183468e546536a3485723474bc0b4c5a6b476e5067f0454e174b38daa1573ca64736f6c6343000511003260806040523480156200001157600080fd5b50604051620014d6380380620014d6833981810160405260608110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b506040908152602082015191015190925090506200010c6001600160e01b036200019d16565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3825162000169906001906020860190620001a2565b50600280546001600160a01b039384166001600160a01b031991821617909155600380549290931691161790555062000244565b335b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001e557805160ff191683800117855562000215565b8280016001018555821562000215579182015b8281111562000215578251825591602001919060010190620001f8565b506200022392915062000227565b5090565b6200019f91905b808211156200022357600081556001016200022e565b61128280620002546000396000f3fe6080604052600436106100c25760003560e01c80638f32d59b1161007f578063cb16d4a211610059578063cb16d4a214610491578063dab0efff146104ca578063e1758bd81461050d578063f2fde38b14610522576100c2565b80638f32d59b146103f0578063ab751f7114610405578063b756d5a214610448576100c2565b80631386dc2d146100fa5780632bf1645814610184578063715018a6146102cc578063890ac46c146102e357806389ae1c90146103aa5780638da5cb5b146103db575b60408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b34801561010657600080fd5b5061010f610555565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610149578181015183820152602001610131565b50505050905090810190601f1680156101765780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019057600080fd5b50610249600480360360608110156101a757600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156101d257600080fd5b8201836020820111156101e457600080fd5b8035906020019184600183028401116401000000008311171561020657600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955050913592506105e2915050565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610290578181015183820152602001610278565b50505050905090810190601f1680156102bd5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156102d857600080fd5b506102e1610797565b005b3480156102ef57600080fd5b506103966004803603602081101561030657600080fd5b81019060208101813564010000000081111561032157600080fd5b82018360208201111561033357600080fd5b8035906020019184600183028401116401000000008311171561035557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610828945050505050565b604080519115158252519081900360200190f35b3480156103b657600080fd5b506103bf610912565b604080516001600160a01b039092168252519081900360200190f35b3480156103e757600080fd5b506103bf610921565b3480156103fc57600080fd5b50610396610930565b34801561041157600080fd5b506103966004803603606081101561042857600080fd5b506001600160a01b03813581169160208101359091169060400135610954565b34801561045457600080fd5b506103966004803603608081101561046b57600080fd5b506001600160a01b03813581169160208101358216916040820135169060600135610a07565b34801561049d57600080fd5b50610396600480360360408110156104b457600080fd5b50803590602001356001600160a01b0316610ac5565b3480156104d657600080fd5b50610396600480360360608110156104ed57600080fd5b506001600160a01b03813581169160208101359091169060400135610b8d565b34801561051957600080fd5b506103bf610c45565b34801561052e57600080fd5b506102e16004803603602081101561054557600080fd5b50356001600160a01b0316610c54565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105da5780601f106105af576101008083540402835291602001916105da565b820191906000526020600020905b8154815290600101906020018083116105bd57829003601f168201915b505050505081565b600060606105ee610930565b61062d576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b846001600160a01b031683856040518082805190602001908083835b602083106106685780518252601f199092019160209182019101610649565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146106ca576040519150601f19603f3d011682016040523d82523d6000602084013e6106cf565b606091505b508092508193505050846001600160a01b03167f534b52c783549f909f9e743120524d0b7154058e4a54cdc895c2c0b587a1c7e0858585604051808060200184815260200183151515158152602001828103825285818151815260200191508051906020019080838360005b8381101561075357818101518382015260200161073b565b50505050905090810190601f1680156107805780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a2935093915050565b61079f610930565b6107de576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610832610930565b610871576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b7ff9deba4938ba20070ec5a45ddf59bccba49cf83124215228ec1232182ef0ba2b826040518080602001828103825283818151815260200191508051906020019080838360005b838110156108d05781810151838201526020016108b8565b50505050905090810190601f1680156108fd5780820380516001836020036101000a031916815260200191505b509250505060405180910390a1506001919050565b6003546001600160a01b031681565b6000546001600160a01b031690565b600080546001600160a01b0316610945610ca7565b6001600160a01b031614905090565b600061095e610930565b61099d576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b6109b76001600160a01b038516848463ffffffff610cab16565b604080516001600160a01b038581168252602082018590528251908716927f3a48a4d6253b30fd10e57a347c1f9bcb0604946481fae0b2fdad6e74f2a9cbb3928290030190a25060019392505050565b6000610a11610930565b610a50576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610a6b6001600160a01b03861685858563ffffffff610ebc16565b604080516001600160a01b03868116825285811660208301528183018590529151918716917f179c15de44aa7ab84896301974328eb40b5b40fe01cfe0fee2924ea712c3e8439181900360600190a2506001949350505050565b6000610acf610930565b610b0e576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b6040516001600160a01b0383169084156108fc029085906000818181858888f19350505050158015610b44573d6000803e3d6000fd5b506040805184815290516001600160a01b038416917f22fca66666089f39bc900dd6605b489df4aae6260cc8ea8257594cfb8c84926c919081900360200190a250600192915050565b6000610b97610930565b610bd6576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610bf06001600160a01b038516848463ffffffff61103f16565b826001600160a01b0316846001600160a01b03167f49dc2a60d2599a7b6932d78fb694c30dfc596fe4e0282b5d0fd184b52472c04d846040518082815260200191505060405180910390a35060019392505050565b6002546001600160a01b031681565b610c5c610930565b610c9b576040805162461bcd60e51b8152602060048201819052602482015260008051602061122e833981519152604482015290519081900360640190fd5b610ca481611106565b50565b3390565b610cbd836001600160a01b03166111a6565b610cc657600080fd5b801580610d4c575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b158015610d1e57600080fd5b505afa158015610d32573d6000803e3d6000fd5b505050506040513d6020811015610d4857600080fd5b5051155b610d5557600080fd5b604080518082018252601881527f617070726f766528616464726573732c75696e7432353629000000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663095ea7b360e01b1781529251815160009460609489169392918291908083835b60208310610e025780518252601f199092019160209182019101610de3565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610e64576040519150601f19603f3d011682016040523d82523d6000602084013e610e69565b606091505b509150915081610e7857600080fd5b80511580610eac575080516020148015610eac575080601f81518110610e9a57fe5b01602001516001600160f81b03191615155b610eb557600080fd5b5050505050565b610ece846001600160a01b03166111a6565b610ed757600080fd5b60006060856001600160a01b03166040518060600160405280602581526020016111e3602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b60208310610f845780518252601f199092019160209182019101610f65565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610fe6576040519150601f19603f3d011682016040523d82523d6000602084013e610feb565b606091505b509150915081610ffa57600080fd5b8051158061102e57508051602014801561102e575080601f8151811061101c57fe5b01602001516001600160f81b03191615155b61103757600080fd5b505050505050565b611051836001600160a01b03166111a6565b61105a57600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b17815292518151600094606094891693929182919080838360208310610e025780518252601f199092019160209182019101610de3565b6001600160a01b03811661114b5760405162461bcd60e51b81526004018080602001828103825260268152602001806112086026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906111da5750808214155b94935050505056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536294f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a723158204d57626914093b7f63b1c1c4d5f5e6e17e0f0c54f4162371009859bcf2841de664736f6c63430005110032a265627a7a723158204310a27836ecb74f301863e975e21bad6386a51d89c846b4a22c7e28a11dd0e664736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Debug.json b/contracts/0.0.1-rc.53/Debug.json new file mode 100644 index 00000000..42c4d7d7 --- /dev/null +++ b/contracts/0.0.1-rc.53/Debug.json @@ -0,0 +1,100 @@ +{ + "contractName": "Debug", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_msg", + "type": "address" + } + ], + "name": "LogAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "_msg", + "type": "bool" + } + ], + "name": "LogBool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "_msg", + "type": "bytes" + } + ], + "name": "LogBytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "_msg", + "type": "bytes32" + } + ], + "name": "LogBytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "_msg", + "type": "int256" + } + ], + "name": "LogInt", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "_msg", + "type": "string" + } + ], + "name": "LogString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "_msg", + "type": "uint256" + } + ], + "name": "LogUint", + "type": "event" + } + ], + "bytecode": "0x6080604052348015600f57600080fd5b50603e80601d6000396000f3fe6080604052600080fdfea265627a7a72315820926593194694454ff29e90530979beee2acaec733397b11b8e0fc33c3928badf64736f6c63430005110032", + "deployedBytecode": "0x6080604052600080fdfea265627a7a72315820926593194694454ff29e90530979beee2acaec733397b11b8e0fc33c3928badf64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/DxDaoSchemeConstraints.json b/contracts/0.0.1-rc.53/DxDaoSchemeConstraints.json new file mode 100644 index 00000000..19db4679 --- /dev/null +++ b/contracts/0.0.1-rc.53/DxDaoSchemeConstraints.json @@ -0,0 +1,464 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "DxDaoSchemeConstraints", + "sourceName": "contracts/schemes/DxDaoSchemeConstraints.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address[]", + "name": "_contractsAddresses", + "type": "address[]" + }, + { + "indexed": false, + "internalType": "bool[]", + "name": "_contractsWhitelisted", + "type": "bool[]" + } + ], + "name": "UpdatedContractsWhitelist", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "_periodLimitWei", + "type": "uint256" + } + ], + "name": "UpdatedPeriodLimitWei", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address[]", + "name": "_tokensAddresses", + "type": "address[]" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "_tokensPeriodLimits", + "type": "uint256[]" + } + ], + "name": "UpdatedPeriodLimitsTokens", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "contractsWhiteList", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "contractsWhiteListMap", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "descriptionHash", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "genericSchemeMultiCall", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getContractsWhiteList", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "initialTimestamp", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_periodSize", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_periodLimitWei", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "_periodLimitTokensAddresses", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_periodLimitTokensAmounts", + "type": "uint256[]" + }, + { + "internalType": "address[]", + "name": "_contractsWhiteList", + "type": "address[]" + }, + { + "internalType": "address", + "name": "_genericSchemeMultiCall", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_contractsToCall", + "type": "address[]" + }, + { + "internalType": "bytes[]", + "name": "_callsData", + "type": "bytes[]" + }, + { + "internalType": "uint256[]", + "name": "_values", + "type": "uint256[]" + }, + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "name": "isAllowedToCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_contractsToCall", + "type": "address[]" + }, + { + "internalType": "bytes[]", + "name": "_callsData", + "type": "bytes[]" + }, + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + }, + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "name": "isAllowedToPropose", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "observationIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "periodLimitToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "periodLimitWei", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "periodSize", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "periodSpendingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "periodSpendingWei", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_contractsAddresses", + "type": "address[]" + }, + { + "internalType": "bool[]", + "name": "_contractsWhitelisted", + "type": "bool[]" + } + ], + "name": "updateContractsWhitelist", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_periodLimitWei", + "type": "uint256" + } + ], + "name": "updatePeriodLimitWei", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_tokensAddresses", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_tokensPeriodLimits", + "type": "uint256[]" + } + ], + "name": "updatePeriodLimitsTokens", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506118c1806100206000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806385dcee93116100ad578063d6d1417111610071578063d6d141711461023a578063da6f0d9b14610242578063e4463eb214610255578063e5e48a341461025d578063f743327b1461027057610121565b806385dcee93146101e45780639836bbd5146101f9578063b7f592361461020c578063bcdedfdb1461021f578063d6cf0c371461023257610121565b80635fa4a6cd116100f45780635fa4a6cd1461018157806364ab2de9146101965780636b401b3d146101b65780636c39ed27146101be57806378d8b59e146101d157610121565b80633590432a146101265780633b7fdf09146101445780635a7a3e87146101595780635aef7de61461016c575b600080fd5b61012e610283565b60405161013b91906117a0565b60405180910390f35b61014c610289565b60405161013b91906116a9565b61012e610167366004611168565b6102ec565b6101746102fe565b60405161013b9190611643565b61019461018f366004611168565b61030d565b005b6101a96101a4366004611094565b610380565b60405161013b91906116c1565b610174610701565b6101946101cc366004610f33565b610710565b61012e6101df366004611186565b6108bf565b6101ec6108dc565b60405161013b91906116cf565b610194610207366004611024565b610969565b61017461021a366004611168565b610a5b565b61019461022d366004611024565b610a82565b61012e610b82565b61012e610b99565b6101a9610250366004611094565b610b9f565b61012e610db6565b6101a961026b366004610f0d565b610dbc565b61012e61027e366004610f0d565b610dd1565b60065481565b606060008054806020026020016040519081016040528092919081815260200182805480156102e157602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116102c3575b505050505090505b90565b60096020526000908152604090205481565b6002546001600160a01b031681565b6002546001600160a01b031633146103405760405162461bcd60e51b815260040161033790611720565b60405180910390fd5b60068190556040517f42607d262cbbcb6bf6f321b617595950a50ec4333abf7481524fcd78835185c4906103759083906117a0565b60405180910390a150565b6003546000906001600160a01b031633146103ad5760405162461bcd60e51b8152600401610337906116e0565b60006103b7610b82565b90506000805b8981101561069f57600a60008c8c848181106103d557fe5b90506020020160206103ea9190810190610f0d565b6001600160a01b0316815260208101919091526040016000205460ff166104235760405162461bcd60e51b815260040161033790611790565b61044887878381811061043257fe5b9050602002013583610de390919063ffffffff16565b9150606089898381811061045857fe5b602002820190508035601e193684900301811261047457600080fd5b9091016020810191503567ffffffffffffffff81111561049357600080fd5b368190038213156104a357600080fd5b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093945063095ea7b360e01b9392506104e9915050565b1a60f81b6001600160f81b0319168160008151811061050457fe5b01602001516001600160f81b03191614801561054157508051602f60f91b908290600190811061053057fe5b01602001516001600160f81b031916145b801561056e5750805160a760f81b908290600290811061055d57fe5b01602001516001600160f81b031916145b801561059b5750805160b360f81b908290600390811061058a57fe5b01602001516001600160f81b031916145b156106965760008060008e8e868181106105b157fe5b90506020020160206105c69190810190610f0d565b602485015160448601516001600160a01b0382166000908152600a602052604090205490955090935090915060ff166106115760405162461bcd60e51b815260040161033790611770565b60008781526008602090815260408083206001600160a01b0385168452909152902054610644908463ffffffff610de316565b60008881526008602090815260408083206001600160a01b03861684528083528184208590556007835292205491905210156106925760405162461bcd60e51b815260040161033790611740565b5050505b506001016103bd565b506000828152600960205260409020546106bf908263ffffffff610de316565b600083815260096020526040902081905560065410156106f15760405162461bcd60e51b8152600401610337906116f0565b5060019998505050505050505050565b6003546001600160a01b031681565b600454156107305760405162461bcd60e51b815260040161033790611730565b600089116107505760405162461bcd60e51b815260040161033790611760565b85841461076f5760405162461bcd60e51b815260040161033790611750565b6001600160a01b0381166107955760405162461bcd60e51b815260040161033790611780565b60058990556006889055600280546001600160a01b0319166001600160a01b038c161790554260045560005b82811015610820576001600a60008686858181106107db57fe5b90506020020160206107f09190810190610f0d565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790556001016107c1565b5060005b848110156108865785858281811061083857fe5b90506020020135600760008a8a8581811061084f57fe5b90506020020160206108649190810190610f0d565b6001600160a01b03168152602081019190915260400160002055600101610824565b5061089360008484610e11565b50600380546001600160a01b0319166001600160a01b0392909216919091179055505050505050505050565b600860209081526000928352604080842090915290825290205481565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109615780601f1061093657610100808354040283529160200191610961565b820191906000526020600020905b81548152906001019060200180831161094457829003601f168201915b505050505081565b6002546001600160a01b031633146109935760405162461bcd60e51b815260040161033790611720565b8281146109b25760405162461bcd60e51b815260040161033790611710565b60005b83811015610a17578282828181106109c957fe5b90506020020135600760008787858181106109e057fe5b90506020020160206109f59190810190610f0d565b6001600160a01b031681526020810191909152604001600020556001016109b5565b507fba10d0b2427adac50e6f7251d800b6df7b39ba33c5e2ec7d6843b0eed257d35584848484604051610a4d9493929190611682565b60405180910390a150505050565b60008181548110610a6857fe5b6000918252602090912001546001600160a01b0316905081565b6002546001600160a01b03163314610aac5760405162461bcd60e51b815260040161033790611720565b828114610acb5760405162461bcd60e51b815260040161033790611750565b60005b83811015610b4c57828282818110610ae257fe5b9050602002016020610af7919081019061114a565b600a6000878785818110610b0757fe5b9050602002016020610b1c9190810190610f0d565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055600101610ace565b507f46c4f9ef59b2c1ca5c52a16fbf2268b832760b5c629322e1479e134594a1d7ee84848484604051610a4d9493929190611651565b6000600554600454420381610b9357fe5b04905090565b60045481565b6000805b87811015610da757600a60008a8a84818110610bbb57fe5b9050602002016020610bd09190810190610f0d565b6001600160a01b0316815260208101919091526040016000205460ff16610c095760405162461bcd60e51b815260040161033790611790565b6060878783818110610c1757fe5b602002820190508035601e1936849003018112610c3357600080fd5b9091016020810191503567ffffffffffffffff811115610c5257600080fd5b36819003821315610c6257600080fd5b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093945063095ea7b360e01b939250610ca8915050565b1a60f81b6001600160f81b03191681600081518110610cc357fe5b01602001516001600160f81b031916148015610d0057508051602f60f91b9082906001908110610cef57fe5b01602001516001600160f81b031916145b8015610d2d5750805160a760f81b9082906002908110610d1c57fe5b01602001516001600160f81b031916145b8015610d5a5750805160b360f81b9082906003908110610d4957fe5b01602001516001600160f81b031916145b15610d9e5760248101516001600160a01b0381166000908152600a602052604090205460ff16610d9c5760405162461bcd60e51b815260040161033790611770565b505b50600101610ba3565b50600198975050505050505050565b60055481565b600a6020526000908152604090205460ff1681565b60076020526000908152604090205481565b600082820183811015610e085760405162461bcd60e51b815260040161033790611700565b90505b92915050565b828054828255906000526020600020908101928215610e64579160200282015b82811115610e645781546001600160a01b0319166001600160a01b03843516178255602090920191600190910190610e31565b50610e70929150610e74565b5090565b6102e991905b80821115610e705780546001600160a01b0319168155600101610e7a565b8035610e0b8161184c565b60008083601f840112610eb557600080fd5b50813567ffffffffffffffff811115610ecd57600080fd5b602083019150836020820283011115610ee557600080fd5b9250929050565b8035610e0b81611863565b8035610e0b8161186c565b8035610e0b81611875565b600060208284031215610f1f57600080fd5b6000610f2b8484610e98565b949350505050565b60008060008060008060008060008060e08b8d031215610f5257600080fd5b6000610f5e8d8d610e98565b9a50506020610f6f8d828e01610f02565b9950506040610f808d828e01610f02565b98505060608b013567ffffffffffffffff811115610f9d57600080fd5b610fa98d828e01610ea3565b975097505060808b013567ffffffffffffffff811115610fc857600080fd5b610fd48d828e01610ea3565b955095505060a08b013567ffffffffffffffff811115610ff357600080fd5b610fff8d828e01610ea3565b935093505060c06110128d828e01610e98565b9150509295989b9194979a5092959850565b6000806000806040858703121561103a57600080fd5b843567ffffffffffffffff81111561105157600080fd5b61105d87828801610ea3565b9450945050602085013567ffffffffffffffff81111561107c57600080fd5b61108887828801610ea3565b95989497509550505050565b60008060008060008060006080888a0312156110af57600080fd5b873567ffffffffffffffff8111156110c657600080fd5b6110d28a828b01610ea3565b9750975050602088013567ffffffffffffffff8111156110f157600080fd5b6110fd8a828b01610ea3565b9550955050604088013567ffffffffffffffff81111561111c57600080fd5b6111288a828b01610ea3565b9350935050606061113b8a828b01610ef7565b91505092959891949750929550565b60006020828403121561115c57600080fd5b6000610f2b8484610eec565b60006020828403121561117a57600080fd5b6000610f2b8484610f02565b6000806040838503121561119957600080fd5b60006111a58585610f02565b92505060206111b685828601610e98565b9150509250929050565b60006111cc83836111e0565b505060200190565b60006111cc838361131b565b6111e9816117df565b82525050565b60006111fb83856117b8565b9350611206826102e9565b8060005b8581101561123c5761121c82846117c1565b61122688826111c0565b9750611231836117ae565b92505060010161120a565b509495945050505050565b6000611252826117b4565b61125c81856117b8565b9350611267836117ae565b8060005b8381101561123c57815161127f88826111c0565b975061128a836117ae565b92505060010161126b565b60006112a183856117b8565b93506112ac826102e9565b8060005b8581101561123c576112c282846117d0565b6112cc88826111d4565b97506112d7836117ae565b9250506001016112b0565b60006112ee83856117b8565b93506001600160fb1b0383111561130457600080fd5b602083029250611315838584611806565b50500190565b6111e9816117ea565b600061132f826117b4565b61133981856117b8565b9350611349818560208601611812565b61135281611842565b9093019392505050565b6000611369601b836117b8565b7f6f6e6c792067656e65726963536368656d654d756c746943616c6c0000000000815260200192915050565b60006113a26019836117b8565b7f706572696f645370656e64696e67576569457863656564656400000000000000815260200192915050565b60006113db601b836117b8565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815260200192915050565b60006114146022836117b8565b7f696e76616c6964206c656e677468205f746f6b656e73506572696f644c696d69815261747360f01b602082015260400192915050565b60006114586015836117b8565b7431b0b63632b91036bab9ba1031329030bb30ba30b960591b815260200192915050565b60006114896017836117b8565b7f63616e6e6f7420696e697469616c697a65207477696365000000000000000000815260200192915050565b60006114c2601c836117b8565b7f706572696f645370656e64696e67546f6b656e73457863656564656400000000815260200192915050565b60006114fb602a836117b8565b7f696e76616c6964206c656e677468205f706572696f644c696d6974546f6b656e8152697341646472657373657360b01b602082015260400192915050565b60006115476025836117b8565b7f70726572696f642073697a652073686f756c6420626520677265617465722074815264068616e20360dc1b602082015260400192915050565b600061158e6020836117b8565b7f7370656e64657220636f6e7472616374206e6f742077686974656c6973746564815260200192915050565b60006115c76025836117b8565b7f67656e65726963536368656d654d756c746943616c6c2063616e6e6f74206265815264207a65726f60d81b602082015260400192915050565b600061160e6018836117b8565b7f636f6e7472616374206e6f742077686974656c69737465640000000000000000815260200192915050565b6111e9816102e9565b60208101610e0b82846111e0565b604080825281016116638186886111ef565b90508181036020830152611678818486611295565b9695505050505050565b604080825281016116948186886111ef565b905081810360208301526116788184866112e2565b602080825281016116ba8184611247565b9392505050565b60208101610e0b828461131b565b602080825281016116ba8184611324565b60208082528101610e0b8161135c565b60208082528101610e0b81611395565b60208082528101610e0b816113ce565b60208082528101610e0b81611407565b60208082528101610e0b8161144b565b60208082528101610e0b8161147c565b60208082528101610e0b816114b5565b60208082528101610e0b816114ee565b60208082528101610e0b8161153a565b60208082528101610e0b81611581565b60208082528101610e0b816115ba565b60208082528101610e0b81611601565b60208101610e0b828461163a565b60200190565b5190565b90815260200190565b60006116ba6020840184610e98565b60006116ba6020840184610eec565b6000610e0b826117fa565b151590565b6000610e0b826117df565b6001600160a01b031690565b82818337506000910152565b60005b8381101561182d578181015183820152602001611815565b8381111561183c576000848401525b50505050565b601f01601f191690565b611855816117df565b811461186057600080fd5b50565b611855816117ea565b611855816117ef565b611855816102e956fea365627a7a723158201c96efa59ab40cada8df2b7da8c607a572a6db9c7a06d34cdc94d5d0d16bf07d6c6578706572696d656e74616cf564736f6c63430005110040", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c806385dcee93116100ad578063d6d1417111610071578063d6d141711461023a578063da6f0d9b14610242578063e4463eb214610255578063e5e48a341461025d578063f743327b1461027057610121565b806385dcee93146101e45780639836bbd5146101f9578063b7f592361461020c578063bcdedfdb1461021f578063d6cf0c371461023257610121565b80635fa4a6cd116100f45780635fa4a6cd1461018157806364ab2de9146101965780636b401b3d146101b65780636c39ed27146101be57806378d8b59e146101d157610121565b80633590432a146101265780633b7fdf09146101445780635a7a3e87146101595780635aef7de61461016c575b600080fd5b61012e610283565b60405161013b91906117a0565b60405180910390f35b61014c610289565b60405161013b91906116a9565b61012e610167366004611168565b6102ec565b6101746102fe565b60405161013b9190611643565b61019461018f366004611168565b61030d565b005b6101a96101a4366004611094565b610380565b60405161013b91906116c1565b610174610701565b6101946101cc366004610f33565b610710565b61012e6101df366004611186565b6108bf565b6101ec6108dc565b60405161013b91906116cf565b610194610207366004611024565b610969565b61017461021a366004611168565b610a5b565b61019461022d366004611024565b610a82565b61012e610b82565b61012e610b99565b6101a9610250366004611094565b610b9f565b61012e610db6565b6101a961026b366004610f0d565b610dbc565b61012e61027e366004610f0d565b610dd1565b60065481565b606060008054806020026020016040519081016040528092919081815260200182805480156102e157602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116102c3575b505050505090505b90565b60096020526000908152604090205481565b6002546001600160a01b031681565b6002546001600160a01b031633146103405760405162461bcd60e51b815260040161033790611720565b60405180910390fd5b60068190556040517f42607d262cbbcb6bf6f321b617595950a50ec4333abf7481524fcd78835185c4906103759083906117a0565b60405180910390a150565b6003546000906001600160a01b031633146103ad5760405162461bcd60e51b8152600401610337906116e0565b60006103b7610b82565b90506000805b8981101561069f57600a60008c8c848181106103d557fe5b90506020020160206103ea9190810190610f0d565b6001600160a01b0316815260208101919091526040016000205460ff166104235760405162461bcd60e51b815260040161033790611790565b61044887878381811061043257fe5b9050602002013583610de390919063ffffffff16565b9150606089898381811061045857fe5b602002820190508035601e193684900301811261047457600080fd5b9091016020810191503567ffffffffffffffff81111561049357600080fd5b368190038213156104a357600080fd5b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093945063095ea7b360e01b9392506104e9915050565b1a60f81b6001600160f81b0319168160008151811061050457fe5b01602001516001600160f81b03191614801561054157508051602f60f91b908290600190811061053057fe5b01602001516001600160f81b031916145b801561056e5750805160a760f81b908290600290811061055d57fe5b01602001516001600160f81b031916145b801561059b5750805160b360f81b908290600390811061058a57fe5b01602001516001600160f81b031916145b156106965760008060008e8e868181106105b157fe5b90506020020160206105c69190810190610f0d565b602485015160448601516001600160a01b0382166000908152600a602052604090205490955090935090915060ff166106115760405162461bcd60e51b815260040161033790611770565b60008781526008602090815260408083206001600160a01b0385168452909152902054610644908463ffffffff610de316565b60008881526008602090815260408083206001600160a01b03861684528083528184208590556007835292205491905210156106925760405162461bcd60e51b815260040161033790611740565b5050505b506001016103bd565b506000828152600960205260409020546106bf908263ffffffff610de316565b600083815260096020526040902081905560065410156106f15760405162461bcd60e51b8152600401610337906116f0565b5060019998505050505050505050565b6003546001600160a01b031681565b600454156107305760405162461bcd60e51b815260040161033790611730565b600089116107505760405162461bcd60e51b815260040161033790611760565b85841461076f5760405162461bcd60e51b815260040161033790611750565b6001600160a01b0381166107955760405162461bcd60e51b815260040161033790611780565b60058990556006889055600280546001600160a01b0319166001600160a01b038c161790554260045560005b82811015610820576001600a60008686858181106107db57fe5b90506020020160206107f09190810190610f0d565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790556001016107c1565b5060005b848110156108865785858281811061083857fe5b90506020020135600760008a8a8581811061084f57fe5b90506020020160206108649190810190610f0d565b6001600160a01b03168152602081019190915260400160002055600101610824565b5061089360008484610e11565b50600380546001600160a01b0319166001600160a01b0392909216919091179055505050505050505050565b600860209081526000928352604080842090915290825290205481565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109615780601f1061093657610100808354040283529160200191610961565b820191906000526020600020905b81548152906001019060200180831161094457829003601f168201915b505050505081565b6002546001600160a01b031633146109935760405162461bcd60e51b815260040161033790611720565b8281146109b25760405162461bcd60e51b815260040161033790611710565b60005b83811015610a17578282828181106109c957fe5b90506020020135600760008787858181106109e057fe5b90506020020160206109f59190810190610f0d565b6001600160a01b031681526020810191909152604001600020556001016109b5565b507fba10d0b2427adac50e6f7251d800b6df7b39ba33c5e2ec7d6843b0eed257d35584848484604051610a4d9493929190611682565b60405180910390a150505050565b60008181548110610a6857fe5b6000918252602090912001546001600160a01b0316905081565b6002546001600160a01b03163314610aac5760405162461bcd60e51b815260040161033790611720565b828114610acb5760405162461bcd60e51b815260040161033790611750565b60005b83811015610b4c57828282818110610ae257fe5b9050602002016020610af7919081019061114a565b600a6000878785818110610b0757fe5b9050602002016020610b1c9190810190610f0d565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055600101610ace565b507f46c4f9ef59b2c1ca5c52a16fbf2268b832760b5c629322e1479e134594a1d7ee84848484604051610a4d9493929190611651565b6000600554600454420381610b9357fe5b04905090565b60045481565b6000805b87811015610da757600a60008a8a84818110610bbb57fe5b9050602002016020610bd09190810190610f0d565b6001600160a01b0316815260208101919091526040016000205460ff16610c095760405162461bcd60e51b815260040161033790611790565b6060878783818110610c1757fe5b602002820190508035601e1936849003018112610c3357600080fd5b9091016020810191503567ffffffffffffffff811115610c5257600080fd5b36819003821315610c6257600080fd5b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093945063095ea7b360e01b939250610ca8915050565b1a60f81b6001600160f81b03191681600081518110610cc357fe5b01602001516001600160f81b031916148015610d0057508051602f60f91b9082906001908110610cef57fe5b01602001516001600160f81b031916145b8015610d2d5750805160a760f81b9082906002908110610d1c57fe5b01602001516001600160f81b031916145b8015610d5a5750805160b360f81b9082906003908110610d4957fe5b01602001516001600160f81b031916145b15610d9e5760248101516001600160a01b0381166000908152600a602052604090205460ff16610d9c5760405162461bcd60e51b815260040161033790611770565b505b50600101610ba3565b50600198975050505050505050565b60055481565b600a6020526000908152604090205460ff1681565b60076020526000908152604090205481565b600082820183811015610e085760405162461bcd60e51b815260040161033790611700565b90505b92915050565b828054828255906000526020600020908101928215610e64579160200282015b82811115610e645781546001600160a01b0319166001600160a01b03843516178255602090920191600190910190610e31565b50610e70929150610e74565b5090565b6102e991905b80821115610e705780546001600160a01b0319168155600101610e7a565b8035610e0b8161184c565b60008083601f840112610eb557600080fd5b50813567ffffffffffffffff811115610ecd57600080fd5b602083019150836020820283011115610ee557600080fd5b9250929050565b8035610e0b81611863565b8035610e0b8161186c565b8035610e0b81611875565b600060208284031215610f1f57600080fd5b6000610f2b8484610e98565b949350505050565b60008060008060008060008060008060e08b8d031215610f5257600080fd5b6000610f5e8d8d610e98565b9a50506020610f6f8d828e01610f02565b9950506040610f808d828e01610f02565b98505060608b013567ffffffffffffffff811115610f9d57600080fd5b610fa98d828e01610ea3565b975097505060808b013567ffffffffffffffff811115610fc857600080fd5b610fd48d828e01610ea3565b955095505060a08b013567ffffffffffffffff811115610ff357600080fd5b610fff8d828e01610ea3565b935093505060c06110128d828e01610e98565b9150509295989b9194979a5092959850565b6000806000806040858703121561103a57600080fd5b843567ffffffffffffffff81111561105157600080fd5b61105d87828801610ea3565b9450945050602085013567ffffffffffffffff81111561107c57600080fd5b61108887828801610ea3565b95989497509550505050565b60008060008060008060006080888a0312156110af57600080fd5b873567ffffffffffffffff8111156110c657600080fd5b6110d28a828b01610ea3565b9750975050602088013567ffffffffffffffff8111156110f157600080fd5b6110fd8a828b01610ea3565b9550955050604088013567ffffffffffffffff81111561111c57600080fd5b6111288a828b01610ea3565b9350935050606061113b8a828b01610ef7565b91505092959891949750929550565b60006020828403121561115c57600080fd5b6000610f2b8484610eec565b60006020828403121561117a57600080fd5b6000610f2b8484610f02565b6000806040838503121561119957600080fd5b60006111a58585610f02565b92505060206111b685828601610e98565b9150509250929050565b60006111cc83836111e0565b505060200190565b60006111cc838361131b565b6111e9816117df565b82525050565b60006111fb83856117b8565b9350611206826102e9565b8060005b8581101561123c5761121c82846117c1565b61122688826111c0565b9750611231836117ae565b92505060010161120a565b509495945050505050565b6000611252826117b4565b61125c81856117b8565b9350611267836117ae565b8060005b8381101561123c57815161127f88826111c0565b975061128a836117ae565b92505060010161126b565b60006112a183856117b8565b93506112ac826102e9565b8060005b8581101561123c576112c282846117d0565b6112cc88826111d4565b97506112d7836117ae565b9250506001016112b0565b60006112ee83856117b8565b93506001600160fb1b0383111561130457600080fd5b602083029250611315838584611806565b50500190565b6111e9816117ea565b600061132f826117b4565b61133981856117b8565b9350611349818560208601611812565b61135281611842565b9093019392505050565b6000611369601b836117b8565b7f6f6e6c792067656e65726963536368656d654d756c746943616c6c0000000000815260200192915050565b60006113a26019836117b8565b7f706572696f645370656e64696e67576569457863656564656400000000000000815260200192915050565b60006113db601b836117b8565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000815260200192915050565b60006114146022836117b8565b7f696e76616c6964206c656e677468205f746f6b656e73506572696f644c696d69815261747360f01b602082015260400192915050565b60006114586015836117b8565b7431b0b63632b91036bab9ba1031329030bb30ba30b960591b815260200192915050565b60006114896017836117b8565b7f63616e6e6f7420696e697469616c697a65207477696365000000000000000000815260200192915050565b60006114c2601c836117b8565b7f706572696f645370656e64696e67546f6b656e73457863656564656400000000815260200192915050565b60006114fb602a836117b8565b7f696e76616c6964206c656e677468205f706572696f644c696d6974546f6b656e8152697341646472657373657360b01b602082015260400192915050565b60006115476025836117b8565b7f70726572696f642073697a652073686f756c6420626520677265617465722074815264068616e20360dc1b602082015260400192915050565b600061158e6020836117b8565b7f7370656e64657220636f6e7472616374206e6f742077686974656c6973746564815260200192915050565b60006115c76025836117b8565b7f67656e65726963536368656d654d756c746943616c6c2063616e6e6f74206265815264207a65726f60d81b602082015260400192915050565b600061160e6018836117b8565b7f636f6e7472616374206e6f742077686974656c69737465640000000000000000815260200192915050565b6111e9816102e9565b60208101610e0b82846111e0565b604080825281016116638186886111ef565b90508181036020830152611678818486611295565b9695505050505050565b604080825281016116948186886111ef565b905081810360208301526116788184866112e2565b602080825281016116ba8184611247565b9392505050565b60208101610e0b828461131b565b602080825281016116ba8184611324565b60208082528101610e0b8161135c565b60208082528101610e0b81611395565b60208082528101610e0b816113ce565b60208082528101610e0b81611407565b60208082528101610e0b8161144b565b60208082528101610e0b8161147c565b60208082528101610e0b816114b5565b60208082528101610e0b816114ee565b60208082528101610e0b8161153a565b60208082528101610e0b81611581565b60208082528101610e0b816115ba565b60208082528101610e0b81611601565b60208101610e0b828461163a565b60200190565b5190565b90815260200190565b60006116ba6020840184610e98565b60006116ba6020840184610eec565b6000610e0b826117fa565b151590565b6000610e0b826117df565b6001600160a01b031690565b82818337506000910152565b60005b8381101561182d578181015183820152602001611815565b8381111561183c576000848401525b50505050565b601f01601f191690565b611855816117df565b811461186057600080fd5b50565b611855816117ea565b611855816117ef565b611855816102e956fea365627a7a723158201c96efa59ab40cada8df2b7da8c607a572a6db9c7a06d34cdc94d5d0d16bf07d6c6578706572696d656e74616cf564736f6c63430005110040", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ECDSA.json b/contracts/0.0.1-rc.53/ECDSA.json new file mode 100644 index 00000000..82ae3e57 --- /dev/null +++ b/contracts/0.0.1-rc.53/ECDSA.json @@ -0,0 +1,8 @@ +{ + "contractName": "ECDSA", + "abi": [], + "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820c9a76202c345401741e4e66959a4e634808db558f49935eea2591dee1247fad864736f6c63430005110032", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820c9a76202c345401741e4e66959a4e634808db558f49935eea2591dee1247fad864736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ERC20.json b/contracts/0.0.1-rc.53/ERC20.json new file mode 100644 index 00000000..dc994748 --- /dev/null +++ b/contracts/0.0.1-rc.53/ERC20.json @@ -0,0 +1,256 @@ +{ + "contractName": "ERC20", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405261083b806100136000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a0823114610149578063a457c2d71461016f578063a9059cbb1461019b578063dd62ed3e146101c757610088565b8063095ea7b31461008d57806318160ddd146100cd57806323b872dd146100e7578063395093511461011d575b600080fd5b6100b9600480360360408110156100a357600080fd5b506001600160a01b0381351690602001356101f5565b604080519115158252519081900360200190f35b6100d5610212565b60408051918252519081900360200190f35b6100b9600480360360608110156100fd57600080fd5b506001600160a01b03813581169160208101359091169060400135610218565b6100b96004803603604081101561013357600080fd5b506001600160a01b0381351690602001356102a5565b6100d56004803603602081101561015f57600080fd5b50356001600160a01b03166102f9565b6100b96004803603604081101561018557600080fd5b506001600160a01b038135169060200135610314565b6100b9600480360360408110156101b157600080fd5b506001600160a01b038135169060200135610382565b6100d5600480360360408110156101dd57600080fd5b506001600160a01b0381358116916020013516610396565b60006102096102026103c1565b84846103c5565b50600192915050565b60025490565b60006102258484846104b1565b61029b846102316103c1565b61029685604051806060016040528060288152602001610771602891396001600160a01b038a1660009081526001602052604081209061026f6103c1565b6001600160a01b03168152602081019190915260400160002054919063ffffffff61060d16565b6103c5565b5060019392505050565b60006102096102b26103c1565b8461029685600160006102c36103c1565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff6106a416565b6001600160a01b031660009081526020819052604090205490565b60006102096103216103c1565b84610296856040518060600160405280602581526020016107e2602591396001600061034b6103c1565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff61060d16565b600061020961038f6103c1565b84846104b1565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3390565b6001600160a01b03831661040a5760405162461bcd60e51b81526004018080602001828103825260248152602001806107be6024913960400191505060405180910390fd5b6001600160a01b03821661044f5760405162461bcd60e51b81526004018080602001828103825260228152602001806107296022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166104f65760405162461bcd60e51b81526004018080602001828103825260258152602001806107996025913960400191505060405180910390fd5b6001600160a01b03821661053b5760405162461bcd60e51b81526004018080602001828103825260238152602001806107066023913960400191505060405180910390fd5b61057e8160405180606001604052806026815260200161074b602691396001600160a01b038616600090815260208190526040902054919063ffffffff61060d16565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105b3908263ffffffff6106a416565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818484111561069c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610661578181015183820152602001610649565b50505050905090810190601f16801561068e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000828201838110156106fe576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723158208f2140f4a70faa8cc4d81ab4a88d3945c1705fbffc88f74b50c7f22a7f2365f764736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a0823114610149578063a457c2d71461016f578063a9059cbb1461019b578063dd62ed3e146101c757610088565b8063095ea7b31461008d57806318160ddd146100cd57806323b872dd146100e7578063395093511461011d575b600080fd5b6100b9600480360360408110156100a357600080fd5b506001600160a01b0381351690602001356101f5565b604080519115158252519081900360200190f35b6100d5610212565b60408051918252519081900360200190f35b6100b9600480360360608110156100fd57600080fd5b506001600160a01b03813581169160208101359091169060400135610218565b6100b96004803603604081101561013357600080fd5b506001600160a01b0381351690602001356102a5565b6100d56004803603602081101561015f57600080fd5b50356001600160a01b03166102f9565b6100b96004803603604081101561018557600080fd5b506001600160a01b038135169060200135610314565b6100b9600480360360408110156101b157600080fd5b506001600160a01b038135169060200135610382565b6100d5600480360360408110156101dd57600080fd5b506001600160a01b0381358116916020013516610396565b60006102096102026103c1565b84846103c5565b50600192915050565b60025490565b60006102258484846104b1565b61029b846102316103c1565b61029685604051806060016040528060288152602001610771602891396001600160a01b038a1660009081526001602052604081209061026f6103c1565b6001600160a01b03168152602081019190915260400160002054919063ffffffff61060d16565b6103c5565b5060019392505050565b60006102096102b26103c1565b8461029685600160006102c36103c1565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff6106a416565b6001600160a01b031660009081526020819052604090205490565b60006102096103216103c1565b84610296856040518060600160405280602581526020016107e2602591396001600061034b6103c1565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff61060d16565b600061020961038f6103c1565b84846104b1565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3390565b6001600160a01b03831661040a5760405162461bcd60e51b81526004018080602001828103825260248152602001806107be6024913960400191505060405180910390fd5b6001600160a01b03821661044f5760405162461bcd60e51b81526004018080602001828103825260228152602001806107296022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166104f65760405162461bcd60e51b81526004018080602001828103825260258152602001806107996025913960400191505060405180910390fd5b6001600160a01b03821661053b5760405162461bcd60e51b81526004018080602001828103825260238152602001806107066023913960400191505060405180910390fd5b61057e8160405180606001604052806026815260200161074b602691396001600160a01b038616600090815260208190526040902054919063ffffffff61060d16565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105b3908263ffffffff6106a416565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818484111561069c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610661578181015183820152602001610649565b50505050905090810190601f16801561068e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000828201838110156106fe576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723158208f2140f4a70faa8cc4d81ab4a88d3945c1705fbffc88f74b50c7f22a7f2365f764736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ERC20Mock.json b/contracts/0.0.1-rc.53/ERC20Mock.json new file mode 100644 index 00000000..5d1a87e9 --- /dev/null +++ b/contracts/0.0.1-rc.53/ERC20Mock.json @@ -0,0 +1,275 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ERC20Mock", + "sourceName": "contracts/test/ERC20Mock.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "initialAccount", + "type": "address" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506040516109fb3803806109fb8339818101604052604081101561003357600080fd5b50805160209091015161004f82826001600160e01b0361005616565b50506101b1565b6001600160a01b0382166100b1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b6100ca8160025461015060201b6106a41790919060201c565b6002556001600160a01b038216600090815260208181526040909120546100fa9183906106a4610150821b17901c565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6000828201838110156101aa576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b61083b806101c06000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a0823114610149578063a457c2d71461016f578063a9059cbb1461019b578063dd62ed3e146101c757610088565b8063095ea7b31461008d57806318160ddd146100cd57806323b872dd146100e7578063395093511461011d575b600080fd5b6100b9600480360360408110156100a357600080fd5b506001600160a01b0381351690602001356101f5565b604080519115158252519081900360200190f35b6100d5610212565b60408051918252519081900360200190f35b6100b9600480360360608110156100fd57600080fd5b506001600160a01b03813581169160208101359091169060400135610218565b6100b96004803603604081101561013357600080fd5b506001600160a01b0381351690602001356102a5565b6100d56004803603602081101561015f57600080fd5b50356001600160a01b03166102f9565b6100b96004803603604081101561018557600080fd5b506001600160a01b038135169060200135610314565b6100b9600480360360408110156101b157600080fd5b506001600160a01b038135169060200135610382565b6100d5600480360360408110156101dd57600080fd5b506001600160a01b0381358116916020013516610396565b60006102096102026103c1565b84846103c5565b50600192915050565b60025490565b60006102258484846104b1565b61029b846102316103c1565b61029685604051806060016040528060288152602001610771602891396001600160a01b038a1660009081526001602052604081209061026f6103c1565b6001600160a01b03168152602081019190915260400160002054919063ffffffff61060d16565b6103c5565b5060019392505050565b60006102096102b26103c1565b8461029685600160006102c36103c1565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff6106a416565b6001600160a01b031660009081526020819052604090205490565b60006102096103216103c1565b84610296856040518060600160405280602581526020016107e2602591396001600061034b6103c1565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff61060d16565b600061020961038f6103c1565b84846104b1565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3390565b6001600160a01b03831661040a5760405162461bcd60e51b81526004018080602001828103825260248152602001806107be6024913960400191505060405180910390fd5b6001600160a01b03821661044f5760405162461bcd60e51b81526004018080602001828103825260228152602001806107296022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166104f65760405162461bcd60e51b81526004018080602001828103825260258152602001806107996025913960400191505060405180910390fd5b6001600160a01b03821661053b5760405162461bcd60e51b81526004018080602001828103825260238152602001806107066023913960400191505060405180910390fd5b61057e8160405180606001604052806026815260200161074b602691396001600160a01b038616600090815260208190526040902054919063ffffffff61060d16565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105b3908263ffffffff6106a416565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818484111561069c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610661578181015183820152602001610649565b50505050905090810190601f16801561068e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000828201838110156106fe576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723158200267d7d69f70a61873d06e33d8157681d59ab13901a73e8f982ab5224a07671a64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a0823114610149578063a457c2d71461016f578063a9059cbb1461019b578063dd62ed3e146101c757610088565b8063095ea7b31461008d57806318160ddd146100cd57806323b872dd146100e7578063395093511461011d575b600080fd5b6100b9600480360360408110156100a357600080fd5b506001600160a01b0381351690602001356101f5565b604080519115158252519081900360200190f35b6100d5610212565b60408051918252519081900360200190f35b6100b9600480360360608110156100fd57600080fd5b506001600160a01b03813581169160208101359091169060400135610218565b6100b96004803603604081101561013357600080fd5b506001600160a01b0381351690602001356102a5565b6100d56004803603602081101561015f57600080fd5b50356001600160a01b03166102f9565b6100b96004803603604081101561018557600080fd5b506001600160a01b038135169060200135610314565b6100b9600480360360408110156101b157600080fd5b506001600160a01b038135169060200135610382565b6100d5600480360360408110156101dd57600080fd5b506001600160a01b0381358116916020013516610396565b60006102096102026103c1565b84846103c5565b50600192915050565b60025490565b60006102258484846104b1565b61029b846102316103c1565b61029685604051806060016040528060288152602001610771602891396001600160a01b038a1660009081526001602052604081209061026f6103c1565b6001600160a01b03168152602081019190915260400160002054919063ffffffff61060d16565b6103c5565b5060019392505050565b60006102096102b26103c1565b8461029685600160006102c36103c1565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff6106a416565b6001600160a01b031660009081526020819052604090205490565b60006102096103216103c1565b84610296856040518060600160405280602581526020016107e2602591396001600061034b6103c1565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff61060d16565b600061020961038f6103c1565b84846104b1565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3390565b6001600160a01b03831661040a5760405162461bcd60e51b81526004018080602001828103825260248152602001806107be6024913960400191505060405180910390fd5b6001600160a01b03821661044f5760405162461bcd60e51b81526004018080602001828103825260228152602001806107296022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166104f65760405162461bcd60e51b81526004018080602001828103825260258152602001806107996025913960400191505060405180910390fd5b6001600160a01b03821661053b5760405162461bcd60e51b81526004018080602001828103825260238152602001806107066023913960400191505060405180910390fd5b61057e8160405180606001604052806026815260200161074b602691396001600160a01b038616600090815260208190526040902054919063ffffffff61060d16565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546105b3908263ffffffff6106a416565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818484111561069c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610661578181015183820152602001610649565b50505050905090810190601f16801561068e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000828201838110156106fe576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723158200267d7d69f70a61873d06e33d8157681d59ab13901a73e8f982ab5224a07671a64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ERC827.json b/contracts/0.0.1-rc.53/ERC827.json new file mode 100644 index 00000000..008bc404 --- /dev/null +++ b/contracts/0.0.1-rc.53/ERC827.json @@ -0,0 +1,302 @@ +{ + "contractName": "ERC827", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "approveAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferFromAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ERC827Token.json b/contracts/0.0.1-rc.53/ERC827Token.json new file mode 100644 index 00000000..e1ac810d --- /dev/null +++ b/contracts/0.0.1-rc.53/ERC827Token.json @@ -0,0 +1,416 @@ +{ + "contractName": "ERC827Token", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "approveAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_subtractedValue", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "decreaseApprovalAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_addedValue", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "increaseApprovalAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferFromAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + } + ], + "bytecode": "0x6080604052610ead806100136000396000f3fe6080604052600436106100c25760003560e01c806390db623f1161007f578063c1d34b8911610059578063c1d34b89146103ce578063cae9ca5114610492578063cb3993be1461054b578063dd62ed3e14610604576100c2565b806390db623f146102a3578063a457c2d71461035c578063a9059cbb14610395576100c2565b8063095ea7b3146100c757806318160ddd1461011457806323b872dd1461013b578063395093511461017e5780634000aea0146101b757806370a0823114610270575b600080fd5b3480156100d357600080fd5b50610100600480360360408110156100ea57600080fd5b506001600160a01b03813516906020013561063f565b604080519115158252519081900360200190f35b34801561012057600080fd5b5061012961065c565b60408051918252519081900360200190f35b34801561014757600080fd5b506101006004803603606081101561015e57600080fd5b506001600160a01b03813581169160208101359091169060400135610662565b34801561018a57600080fd5b50610100600480360360408110156101a157600080fd5b506001600160a01b0381351690602001356106ef565b610100600480360360608110156101cd57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156101fc57600080fd5b82018360208201111561020e57600080fd5b803590602001918460018302840111600160201b8311171561022f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610743945050505050565b34801561027c57600080fd5b506101296004803603602081101561029357600080fd5b50356001600160a01b0316610823565b610100600480360360608110156102b957600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102e857600080fd5b8201836020820111156102fa57600080fd5b803590602001918460018302840111600160201b8311171561031b57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061083e945050505050565b34801561036857600080fd5b506101006004803603604081101561037f57600080fd5b506001600160a01b038135169060200135610860565b3480156103a157600080fd5b50610100600480360360408110156103b857600080fd5b506001600160a01b0381351690602001356108ce565b610100600480360360808110156103e457600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561041e57600080fd5b82018360208201111561043057600080fd5b803590602001918460018302840111600160201b8311171561045157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506108e2945050505050565b610100600480360360608110156104a857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156104d757600080fd5b8201836020820111156104e957600080fd5b803590602001918460018302840111600160201b8311171561050a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109c4945050505050565b6101006004803603606081101561056157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561059057600080fd5b8201836020820111156105a257600080fd5b803590602001918460018302840111600160201b831117156105c357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109e6945050505050565b34801561061057600080fd5b506101296004803603604081101561062757600080fd5b506001600160a01b0381358116916020013516610a08565b600061065361064c610a33565b8484610a37565b50600192915050565b60025490565b600061066f848484610b23565b6106e58461067b610a33565b6106e085604051806060016040528060288152602001610de3602891396001600160a01b038a166000908152600160205260408120906106b9610a33565b6001600160a01b03168152602081019190915260400160002054919063ffffffff610c7f16565b610a37565b5060019392505050565b60006106536106fc610a33565b846106e0856001600061070d610a33565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff610d1616565b60006001600160a01b03841630141561075b57600080fd5b61076584846108ce565b506000846001600160a01b031634846040518082805190602001908083835b602083106107a35780518252601f199092019160209182019101610784565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610805576040519150601f19603f3d011682016040523d82523d6000602084013e61080a565b606091505b505090508061081857600080fd5b506001949350505050565b6001600160a01b031660009081526020819052604090205490565b60006001600160a01b03841630141561085657600080fd5b61076584846106ef565b600061065361086d610a33565b846106e085604051806060016040528060258152602001610e546025913960016000610897610a33565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff610c7f16565b60006106536108db610a33565b8484610b23565b60006001600160a01b0384163014156108fa57600080fd5b610905858585610662565b506000846001600160a01b031634846040518082805190602001908083835b602083106109435780518252601f199092019160209182019101610924565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146109a5576040519150601f19603f3d011682016040523d82523d6000602084013e6109aa565b606091505b50509050806109b857600080fd5b50600195945050505050565b60006001600160a01b0384163014156109dc57600080fd5b610765848461063f565b60006001600160a01b0384163014156109fe57600080fd5b6107658484610860565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3390565b6001600160a01b038316610a7c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610e306024913960400191505060405180910390fd5b6001600160a01b038216610ac15760405162461bcd60e51b8152600401808060200182810382526022815260200180610d9b6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610b685760405162461bcd60e51b8152600401808060200182810382526025815260200180610e0b6025913960400191505060405180910390fd5b6001600160a01b038216610bad5760405162461bcd60e51b8152600401808060200182810382526023815260200180610d786023913960400191505060405180910390fd5b610bf081604051806060016040528060268152602001610dbd602691396001600160a01b038616600090815260208190526040902054919063ffffffff610c7f16565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610c25908263ffffffff610d1616565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610d0e5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cd3578181015183820152602001610cbb565b50505050905090810190601f168015610d005780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610d70576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a7231582034366f3762293a157d8ca05ae454c49d6ef96d1d6f67955c6107b68c029b451e64736f6c63430005110032", + "deployedBytecode": "0x6080604052600436106100c25760003560e01c806390db623f1161007f578063c1d34b8911610059578063c1d34b89146103ce578063cae9ca5114610492578063cb3993be1461054b578063dd62ed3e14610604576100c2565b806390db623f146102a3578063a457c2d71461035c578063a9059cbb14610395576100c2565b8063095ea7b3146100c757806318160ddd1461011457806323b872dd1461013b578063395093511461017e5780634000aea0146101b757806370a0823114610270575b600080fd5b3480156100d357600080fd5b50610100600480360360408110156100ea57600080fd5b506001600160a01b03813516906020013561063f565b604080519115158252519081900360200190f35b34801561012057600080fd5b5061012961065c565b60408051918252519081900360200190f35b34801561014757600080fd5b506101006004803603606081101561015e57600080fd5b506001600160a01b03813581169160208101359091169060400135610662565b34801561018a57600080fd5b50610100600480360360408110156101a157600080fd5b506001600160a01b0381351690602001356106ef565b610100600480360360608110156101cd57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156101fc57600080fd5b82018360208201111561020e57600080fd5b803590602001918460018302840111600160201b8311171561022f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610743945050505050565b34801561027c57600080fd5b506101296004803603602081101561029357600080fd5b50356001600160a01b0316610823565b610100600480360360608110156102b957600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102e857600080fd5b8201836020820111156102fa57600080fd5b803590602001918460018302840111600160201b8311171561031b57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061083e945050505050565b34801561036857600080fd5b506101006004803603604081101561037f57600080fd5b506001600160a01b038135169060200135610860565b3480156103a157600080fd5b50610100600480360360408110156103b857600080fd5b506001600160a01b0381351690602001356108ce565b610100600480360360808110156103e457600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561041e57600080fd5b82018360208201111561043057600080fd5b803590602001918460018302840111600160201b8311171561045157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506108e2945050505050565b610100600480360360608110156104a857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156104d757600080fd5b8201836020820111156104e957600080fd5b803590602001918460018302840111600160201b8311171561050a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109c4945050505050565b6101006004803603606081101561056157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561059057600080fd5b8201836020820111156105a257600080fd5b803590602001918460018302840111600160201b831117156105c357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109e6945050505050565b34801561061057600080fd5b506101296004803603604081101561062757600080fd5b506001600160a01b0381358116916020013516610a08565b600061065361064c610a33565b8484610a37565b50600192915050565b60025490565b600061066f848484610b23565b6106e58461067b610a33565b6106e085604051806060016040528060288152602001610de3602891396001600160a01b038a166000908152600160205260408120906106b9610a33565b6001600160a01b03168152602081019190915260400160002054919063ffffffff610c7f16565b610a37565b5060019392505050565b60006106536106fc610a33565b846106e0856001600061070d610a33565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff610d1616565b60006001600160a01b03841630141561075b57600080fd5b61076584846108ce565b506000846001600160a01b031634846040518082805190602001908083835b602083106107a35780518252601f199092019160209182019101610784565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610805576040519150601f19603f3d011682016040523d82523d6000602084013e61080a565b606091505b505090508061081857600080fd5b506001949350505050565b6001600160a01b031660009081526020819052604090205490565b60006001600160a01b03841630141561085657600080fd5b61076584846106ef565b600061065361086d610a33565b846106e085604051806060016040528060258152602001610e546025913960016000610897610a33565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff610c7f16565b60006106536108db610a33565b8484610b23565b60006001600160a01b0384163014156108fa57600080fd5b610905858585610662565b506000846001600160a01b031634846040518082805190602001908083835b602083106109435780518252601f199092019160209182019101610924565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146109a5576040519150601f19603f3d011682016040523d82523d6000602084013e6109aa565b606091505b50509050806109b857600080fd5b50600195945050505050565b60006001600160a01b0384163014156109dc57600080fd5b610765848461063f565b60006001600160a01b0384163014156109fe57600080fd5b6107658484610860565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3390565b6001600160a01b038316610a7c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610e306024913960400191505060405180910390fd5b6001600160a01b038216610ac15760405162461bcd60e51b8152600401808060200182810382526022815260200180610d9b6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610b685760405162461bcd60e51b8152600401808060200182810382526025815260200180610e0b6025913960400191505060405180910390fd5b6001600160a01b038216610bad5760405162461bcd60e51b8152600401808060200182810382526023815260200180610d786023913960400191505060405180910390fd5b610bf081604051806060016040528060268152602001610dbd602691396001600160a01b038616600090815260208190526040902054919063ffffffff610c7f16565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610c25908263ffffffff610d1616565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610d0e5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cd3578181015183820152602001610cbb565b50505050905090810190601f168015610d005780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610d70576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a7231582034366f3762293a157d8ca05ae454c49d6ef96d1d6f67955c6107b68c029b451e64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ERC827TokenMock.json b/contracts/0.0.1-rc.53/ERC827TokenMock.json new file mode 100644 index 00000000..72977504 --- /dev/null +++ b/contracts/0.0.1-rc.53/ERC827TokenMock.json @@ -0,0 +1,433 @@ +{ + "contractName": "ERC827TokenMock", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "initialAccount", + "type": "address" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "approveAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_subtractedValue", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "decreaseApprovalAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_addedValue", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "increaseApprovalAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferFromAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5060405161106d38038061106d8339818101604052604081101561003357600080fd5b50805160209091015161004f82826001600160e01b0361005616565b50506101b1565b6001600160a01b0382166100b1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b6100ca8160025461015060201b610d161790919060201c565b6002556001600160a01b038216600090815260208181526040909120546100fa918390610d16610150821b17901c565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6000828201838110156101aa576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b610ead806101c06000396000f3fe6080604052600436106100c25760003560e01c806390db623f1161007f578063c1d34b8911610059578063c1d34b89146103ce578063cae9ca5114610492578063cb3993be1461054b578063dd62ed3e14610604576100c2565b806390db623f146102a3578063a457c2d71461035c578063a9059cbb14610395576100c2565b8063095ea7b3146100c757806318160ddd1461011457806323b872dd1461013b578063395093511461017e5780634000aea0146101b757806370a0823114610270575b600080fd5b3480156100d357600080fd5b50610100600480360360408110156100ea57600080fd5b506001600160a01b03813516906020013561063f565b604080519115158252519081900360200190f35b34801561012057600080fd5b5061012961065c565b60408051918252519081900360200190f35b34801561014757600080fd5b506101006004803603606081101561015e57600080fd5b506001600160a01b03813581169160208101359091169060400135610662565b34801561018a57600080fd5b50610100600480360360408110156101a157600080fd5b506001600160a01b0381351690602001356106ef565b610100600480360360608110156101cd57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156101fc57600080fd5b82018360208201111561020e57600080fd5b803590602001918460018302840111600160201b8311171561022f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610743945050505050565b34801561027c57600080fd5b506101296004803603602081101561029357600080fd5b50356001600160a01b0316610823565b610100600480360360608110156102b957600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102e857600080fd5b8201836020820111156102fa57600080fd5b803590602001918460018302840111600160201b8311171561031b57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061083e945050505050565b34801561036857600080fd5b506101006004803603604081101561037f57600080fd5b506001600160a01b038135169060200135610860565b3480156103a157600080fd5b50610100600480360360408110156103b857600080fd5b506001600160a01b0381351690602001356108ce565b610100600480360360808110156103e457600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561041e57600080fd5b82018360208201111561043057600080fd5b803590602001918460018302840111600160201b8311171561045157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506108e2945050505050565b610100600480360360608110156104a857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156104d757600080fd5b8201836020820111156104e957600080fd5b803590602001918460018302840111600160201b8311171561050a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109c4945050505050565b6101006004803603606081101561056157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561059057600080fd5b8201836020820111156105a257600080fd5b803590602001918460018302840111600160201b831117156105c357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109e6945050505050565b34801561061057600080fd5b506101296004803603604081101561062757600080fd5b506001600160a01b0381358116916020013516610a08565b600061065361064c610a33565b8484610a37565b50600192915050565b60025490565b600061066f848484610b23565b6106e58461067b610a33565b6106e085604051806060016040528060288152602001610de3602891396001600160a01b038a166000908152600160205260408120906106b9610a33565b6001600160a01b03168152602081019190915260400160002054919063ffffffff610c7f16565b610a37565b5060019392505050565b60006106536106fc610a33565b846106e0856001600061070d610a33565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff610d1616565b60006001600160a01b03841630141561075b57600080fd5b61076584846108ce565b506000846001600160a01b031634846040518082805190602001908083835b602083106107a35780518252601f199092019160209182019101610784565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610805576040519150601f19603f3d011682016040523d82523d6000602084013e61080a565b606091505b505090508061081857600080fd5b506001949350505050565b6001600160a01b031660009081526020819052604090205490565b60006001600160a01b03841630141561085657600080fd5b61076584846106ef565b600061065361086d610a33565b846106e085604051806060016040528060258152602001610e546025913960016000610897610a33565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff610c7f16565b60006106536108db610a33565b8484610b23565b60006001600160a01b0384163014156108fa57600080fd5b610905858585610662565b506000846001600160a01b031634846040518082805190602001908083835b602083106109435780518252601f199092019160209182019101610924565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146109a5576040519150601f19603f3d011682016040523d82523d6000602084013e6109aa565b606091505b50509050806109b857600080fd5b50600195945050505050565b60006001600160a01b0384163014156109dc57600080fd5b610765848461063f565b60006001600160a01b0384163014156109fe57600080fd5b6107658484610860565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3390565b6001600160a01b038316610a7c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610e306024913960400191505060405180910390fd5b6001600160a01b038216610ac15760405162461bcd60e51b8152600401808060200182810382526022815260200180610d9b6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610b685760405162461bcd60e51b8152600401808060200182810382526025815260200180610e0b6025913960400191505060405180910390fd5b6001600160a01b038216610bad5760405162461bcd60e51b8152600401808060200182810382526023815260200180610d786023913960400191505060405180910390fd5b610bf081604051806060016040528060268152602001610dbd602691396001600160a01b038616600090815260208190526040902054919063ffffffff610c7f16565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610c25908263ffffffff610d1616565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610d0e5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cd3578181015183820152602001610cbb565b50505050905090810190601f168015610d005780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610d70576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723158204de4392a151eb5df17ce301971da1c7c2cd284bdd33b797caba011fe4366e08164736f6c63430005110032", + "deployedBytecode": "0x6080604052600436106100c25760003560e01c806390db623f1161007f578063c1d34b8911610059578063c1d34b89146103ce578063cae9ca5114610492578063cb3993be1461054b578063dd62ed3e14610604576100c2565b806390db623f146102a3578063a457c2d71461035c578063a9059cbb14610395576100c2565b8063095ea7b3146100c757806318160ddd1461011457806323b872dd1461013b578063395093511461017e5780634000aea0146101b757806370a0823114610270575b600080fd5b3480156100d357600080fd5b50610100600480360360408110156100ea57600080fd5b506001600160a01b03813516906020013561063f565b604080519115158252519081900360200190f35b34801561012057600080fd5b5061012961065c565b60408051918252519081900360200190f35b34801561014757600080fd5b506101006004803603606081101561015e57600080fd5b506001600160a01b03813581169160208101359091169060400135610662565b34801561018a57600080fd5b50610100600480360360408110156101a157600080fd5b506001600160a01b0381351690602001356106ef565b610100600480360360608110156101cd57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156101fc57600080fd5b82018360208201111561020e57600080fd5b803590602001918460018302840111600160201b8311171561022f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610743945050505050565b34801561027c57600080fd5b506101296004803603602081101561029357600080fd5b50356001600160a01b0316610823565b610100600480360360608110156102b957600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102e857600080fd5b8201836020820111156102fa57600080fd5b803590602001918460018302840111600160201b8311171561031b57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061083e945050505050565b34801561036857600080fd5b506101006004803603604081101561037f57600080fd5b506001600160a01b038135169060200135610860565b3480156103a157600080fd5b50610100600480360360408110156103b857600080fd5b506001600160a01b0381351690602001356108ce565b610100600480360360808110156103e457600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561041e57600080fd5b82018360208201111561043057600080fd5b803590602001918460018302840111600160201b8311171561045157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506108e2945050505050565b610100600480360360608110156104a857600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156104d757600080fd5b8201836020820111156104e957600080fd5b803590602001918460018302840111600160201b8311171561050a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109c4945050505050565b6101006004803603606081101561056157600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561059057600080fd5b8201836020820111156105a257600080fd5b803590602001918460018302840111600160201b831117156105c357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109e6945050505050565b34801561061057600080fd5b506101296004803603604081101561062757600080fd5b506001600160a01b0381358116916020013516610a08565b600061065361064c610a33565b8484610a37565b50600192915050565b60025490565b600061066f848484610b23565b6106e58461067b610a33565b6106e085604051806060016040528060288152602001610de3602891396001600160a01b038a166000908152600160205260408120906106b9610a33565b6001600160a01b03168152602081019190915260400160002054919063ffffffff610c7f16565b610a37565b5060019392505050565b60006106536106fc610a33565b846106e0856001600061070d610a33565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff610d1616565b60006001600160a01b03841630141561075b57600080fd5b61076584846108ce565b506000846001600160a01b031634846040518082805190602001908083835b602083106107a35780518252601f199092019160209182019101610784565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610805576040519150601f19603f3d011682016040523d82523d6000602084013e61080a565b606091505b505090508061081857600080fd5b506001949350505050565b6001600160a01b031660009081526020819052604090205490565b60006001600160a01b03841630141561085657600080fd5b61076584846106ef565b600061065361086d610a33565b846106e085604051806060016040528060258152602001610e546025913960016000610897610a33565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff610c7f16565b60006106536108db610a33565b8484610b23565b60006001600160a01b0384163014156108fa57600080fd5b610905858585610662565b506000846001600160a01b031634846040518082805190602001908083835b602083106109435780518252601f199092019160209182019101610924565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146109a5576040519150601f19603f3d011682016040523d82523d6000602084013e6109aa565b606091505b50509050806109b857600080fd5b50600195945050505050565b60006001600160a01b0384163014156109dc57600080fd5b610765848461063f565b60006001600160a01b0384163014156109fe57600080fd5b6107658484610860565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3390565b6001600160a01b038316610a7c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610e306024913960400191505060405180910390fd5b6001600160a01b038216610ac15760405162461bcd60e51b8152600401808060200182810382526022815260200180610d9b6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610b685760405162461bcd60e51b8152600401808060200182810382526025815260200180610e0b6025913960400191505060405180910390fd5b6001600160a01b038216610bad5760405162461bcd60e51b8152600401808060200182810382526023815260200180610d786023913960400191505060405180910390fd5b610bf081604051806060016040528060268152602001610dbd602691396001600160a01b038616600090815260208190526040902054919063ffffffff610c7f16565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610c25908263ffffffff610d1616565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610d0e5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cd3578181015183820152602001610cbb565b50505050905090810190601f168015610d005780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610d70576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723158204de4392a151eb5df17ce301971da1c7c2cd284bdd33b797caba011fe4366e08164736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ExternalLocking4Reputation.json b/contracts/0.0.1-rc.53/ExternalLocking4Reputation.json new file mode 100644 index 00000000..86c0886d --- /dev/null +++ b/contracts/0.0.1-rc.53/ExternalLocking4Reputation.json @@ -0,0 +1,515 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ExternalLocking4Reputation", + "sourceName": "contracts/schemes/ExternalLocking4Reputation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_period", + "type": "uint256" + } + ], + "name": "Lock", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "Register", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Release", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "claim", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "externalLockers", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "externalLockingContract", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getBalanceFuncSignature", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_claimingStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_claimingEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_externalLockingContract", + "type": "address" + }, + { + "internalType": "string", + "name": "_getBalanceFuncSignature", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "lockers", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "releaseTime", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingsCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "maxLockingPeriod", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "register", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "registrar", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "scores", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalLocked", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalLockedLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalScore", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506116ba806100206000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c8063bf0df445116100b8578063dd9d2deb1161007c578063dd9d2deb14610292578063e1fa8e84146102cc578063e397cb9e146102eb578063ed1ff6d814610311578063f0167cfa14610319578063f27a55051461039657610142565b8063bf0df44514610246578063c006719f1461024e578063c3201add14610256578063c348a24b1461025e578063c8622c241461026657610142565b806376dd110f1161010a57806376dd110f1461019d5780637f33ccac146101c357806383805742146101cb57806395a2251f14610210578063a8c3301714610236578063afe0e33c1461023e57610142565b80633d1678f41461014757806355bfec881461016157806356891412146101695780635aef7de614610171578063696da92114610195575b600080fd5b61014f610438565b60408051918252519081900360200190f35b61014f61043e565b61014f610444565b61017961044a565b604080516001600160a01b039092168252519081900360200190f35b61014f610459565b61014f600480360360208110156101b357600080fd5b50356001600160a01b0316610460565b610179610472565b6101f7600480360360408110156101e157600080fd5b506001600160a01b038135169060200135610481565b6040805192835260208301919091528051918290030190f35b61014f6004803603602081101561022657600080fd5b50356001600160a01b03166104a5565b61014f61074d565b61014f610753565b61014f610759565b61014f61075f565b61014f610765565b61014f61076b565b61014f6004803603604081101561027c57600080fd5b506001600160a01b038135169060200135610771565b6102b8600480360360208110156102a857600080fd5b50356001600160a01b0316610a87565b604080519115158252519081900360200190f35b6102e9600480360360208110156102e257600080fd5b5035610a9c565b005b6102b86004803603602081101561030157600080fd5b50356001600160a01b0316610b21565b61014f610b36565b610321610b3c565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561035b578181015183820152602001610343565b50505050905090810190601f1680156103885780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102e960048036036101008110156103ad57600080fd5b6001600160a01b03823581169260208101359260408201359260608301359260808101359260a08201359092169181019060e0810160c08201356401000000008111156103f957600080fd5b82018360208201111561040b57600080fd5b8035906020019184600183028401116401000000008311171561042d57600080fd5b919350915035610bca565b600d5481565b600c5481565b60045481565b6001546001600160a01b031681565b6000545b90565b60036020526000908152604090205481565b600e546001600160a01b031681565b60026020908152600092835260408084209091529082529020805460019091015482565b6000600d5442116104f6576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040902054610556576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040812080549082905560085490919061058b90839063ffffffff610c4b16565b90506105a260065482610cab90919063ffffffff16565b6009549093506105b8908463ffffffff610ced16565b60095560015460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561060057600080fd5b505afa158015610614573d6000803e3d6000fd5b505050506040513d602081101561062a57600080fd5b50516001546040805163757cca5960e11b8152600481018790526001600160a01b03888116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561068a57600080fd5b505af115801561069e573d6000803e3d6000fd5b505050506040513d60208110156106b457600080fd5b5051610707576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b600a5481565b60095481565b600b5481565b60065481565b60075481565b60055481565b6001546000906001600160a01b03166107d1576040805162461bcd60e51b815260206004820152601760248201527f73686f756c6420696e697469616c697a65206669727374000000000000000000604482015290519081900360640190fd5b60006001600160a01b0384166107e8575033610858565b6001600160a01b03841660009081526011602052604090205460ff16610855576040805162461bcd60e51b815260206004820152601e60248201527f62656e65666963696172792073686f756c642062652072656769737465720000604482015290519081900360640190fd5b50825b6001600160a01b03811660009081526010602052604090205460ff16156108b05760405162461bcd60e51b81526004018080602001828103825260368152602001806115f46036913960400191505060405180910390fd5b6001600160a01b03808216600081815260106020526040808220805460ff19166001908117909155600e5482516024808201969096528351808203909601865260440192839052600f80549496606096921694919390929091829184916002600019928216156101000292909201160480156109635780601f10610941576101008083540402835291820191610963565b820191906000526020600020905b81548152906001019060200180831161094f575b505060408051918290039091206020850180516001600160e01b03166001600160e01b0319909216919091178152905184519093508392508083835b602083106109be5780518252601f19909201916020918201910161099f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610a20576040519150601f19603f3d011682016040523d82523d6000602084013e610a25565b606091505b509150915081610a665760405162461bcd60e51b81526004018080602001828103825260288152602001806114c56028913960400191505060405180910390fd5b6020810151610a7a8160018681808b610d2f565b9450505050505b92915050565b60106020526000908152604090205460ff1681565b806000548114610add5760405162461bcd60e51b81526004018080602001828103825260288152602001806115a06028913960400191505060405180910390fd5b33600081815260116020526040808220805460ff19166001179055517feeda149c76076b34d4b9d8896c2f7efc0d33d1c7b53ea3c5db490d64613f603a9190a25050565b60116020526000908152604090205460ff1681565b60085481565b600f805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610bc25780601f10610b9757610100808354040283529160200191610bc2565b820191906000526020600020905b815481529060010190602001808311610ba557829003601f168201915b505050505081565b868611610c085760405162461bcd60e51b815260040180806020018281038252603a81526020018061164c603a913960400191505060405180910390fd5b600e80546001600160a01b0319166001600160a01b038616179055610c2f600f848461142c565b50610c408989898989600187611103565b505050505050505050565b600082610c5a57506000610a81565b82820282848281610c6757fe5b0414610ca45760405162461bcd60e51b81526004018080602001828103825260218152602001806115456021913960400191505060405180910390fd5b9392505050565b6000610ca483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061127c565b6000610ca483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061131e565b6000816000548114610d725760405162461bcd60e51b81526004018080602001828103825260288152602001806115a06028913960400191505060405180910390fd5b60008811610dc7576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b600b54871115610e085760405162461bcd60e51b815260040180806020018281038252602c8152602001806115c8602c913960400191505060405180910390fd5b60008711610e5d576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b600a54421115610e9e5760405162461bcd60e51b81526004018080602001828103825260308152602001806115156030913960400191505060405180910390fd5b600c54421015610edf5760405162461bcd60e51b81526004018080602001828103825260288152602001806114ed6028913960400191505060405180910390fd5b600754604080513060601b602080830191909152603480830185905283518084039091018152605490920190925280519101209250610f2590600163ffffffff61137816565b6007556001600160a01b038616600090815260026020908152604080832085845290915290208881554288016001820155600454610f69908a63ffffffff61137816565b600455600554610f7f908a63ffffffff61137816565b6005556000610fb486610fa889610f9c8d8f63ffffffff610c4b16565b9063ffffffff610c4b16565b9063ffffffff610cab16565b905060008111610fff576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b038816600090815260036020526040902054611028908263ffffffff61137816565b6001600160a01b0389166000908152600360205260409020819055600854908181028161105157fe5b0414611098576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b6006546110ab908263ffffffff61137816565b600655604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b6001546001600160a01b031615611161576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0387166111b4576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b8484116111f25760405162461bcd60e51b815260040180806020018281038252603a815260200180611566603a913960400191505060405180910390fd5b838310156112315760405162461bcd60e51b815260040180806020018281038252602281526020018061162a6022913960400191505060405180910390fd5b60088690556009869055600a849055600b829055600180546001600160a01b0319166001600160a01b038916179055600c859055600d839055611273816113d2565b50505050505050565b600081836113085760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112cd5781810151838201526020016112b5565b50505050905090810190601f1680156112fa5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161131457fe5b0495945050505050565b600081848411156113705760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156112cd5781810151838201526020016112b5565b505050900390565b600082820183811015610ca4576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60005415611427576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061146d5782800160ff1982351617855561149a565b8280016001018555821561149a579182015b8281111561149a57823582559160200191906001019061147f565b506114a69291506114aa565b5090565b61045d91905b808211156114a657600081556001016114b056fe63616c6c20746f2065787465726e616c20636f6e74726163742073686f756c6420737563636565646c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f64636c61696d696e6720747769636520666f72207468652073616d652062656e6566696369617279206973206e6f7420616c6c6f77656472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d655f636c61696d696e67456e6454696d652073686f756c642062652067726561746572207468616e205f636c61696d696e67537461727454696d65a265627a7a72315820bc3d86d44f9b0da29e2055c99079200d7e3a387d8cc462a553a05d67dc6b3ea264736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101425760003560e01c8063bf0df445116100b8578063dd9d2deb1161007c578063dd9d2deb14610292578063e1fa8e84146102cc578063e397cb9e146102eb578063ed1ff6d814610311578063f0167cfa14610319578063f27a55051461039657610142565b8063bf0df44514610246578063c006719f1461024e578063c3201add14610256578063c348a24b1461025e578063c8622c241461026657610142565b806376dd110f1161010a57806376dd110f1461019d5780637f33ccac146101c357806383805742146101cb57806395a2251f14610210578063a8c3301714610236578063afe0e33c1461023e57610142565b80633d1678f41461014757806355bfec881461016157806356891412146101695780635aef7de614610171578063696da92114610195575b600080fd5b61014f610438565b60408051918252519081900360200190f35b61014f61043e565b61014f610444565b61017961044a565b604080516001600160a01b039092168252519081900360200190f35b61014f610459565b61014f600480360360208110156101b357600080fd5b50356001600160a01b0316610460565b610179610472565b6101f7600480360360408110156101e157600080fd5b506001600160a01b038135169060200135610481565b6040805192835260208301919091528051918290030190f35b61014f6004803603602081101561022657600080fd5b50356001600160a01b03166104a5565b61014f61074d565b61014f610753565b61014f610759565b61014f61075f565b61014f610765565b61014f61076b565b61014f6004803603604081101561027c57600080fd5b506001600160a01b038135169060200135610771565b6102b8600480360360208110156102a857600080fd5b50356001600160a01b0316610a87565b604080519115158252519081900360200190f35b6102e9600480360360208110156102e257600080fd5b5035610a9c565b005b6102b86004803603602081101561030157600080fd5b50356001600160a01b0316610b21565b61014f610b36565b610321610b3c565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561035b578181015183820152602001610343565b50505050905090810190601f1680156103885780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102e960048036036101008110156103ad57600080fd5b6001600160a01b03823581169260208101359260408201359260608301359260808101359260a08201359092169181019060e0810160c08201356401000000008111156103f957600080fd5b82018360208201111561040b57600080fd5b8035906020019184600183028401116401000000008311171561042d57600080fd5b919350915035610bca565b600d5481565b600c5481565b60045481565b6001546001600160a01b031681565b6000545b90565b60036020526000908152604090205481565b600e546001600160a01b031681565b60026020908152600092835260408084209091529082529020805460019091015482565b6000600d5442116104f6576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040902054610556576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040812080549082905560085490919061058b90839063ffffffff610c4b16565b90506105a260065482610cab90919063ffffffff16565b6009549093506105b8908463ffffffff610ced16565b60095560015460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561060057600080fd5b505afa158015610614573d6000803e3d6000fd5b505050506040513d602081101561062a57600080fd5b50516001546040805163757cca5960e11b8152600481018790526001600160a01b03888116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561068a57600080fd5b505af115801561069e573d6000803e3d6000fd5b505050506040513d60208110156106b457600080fd5b5051610707576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b600a5481565b60095481565b600b5481565b60065481565b60075481565b60055481565b6001546000906001600160a01b03166107d1576040805162461bcd60e51b815260206004820152601760248201527f73686f756c6420696e697469616c697a65206669727374000000000000000000604482015290519081900360640190fd5b60006001600160a01b0384166107e8575033610858565b6001600160a01b03841660009081526011602052604090205460ff16610855576040805162461bcd60e51b815260206004820152601e60248201527f62656e65666963696172792073686f756c642062652072656769737465720000604482015290519081900360640190fd5b50825b6001600160a01b03811660009081526010602052604090205460ff16156108b05760405162461bcd60e51b81526004018080602001828103825260368152602001806115f46036913960400191505060405180910390fd5b6001600160a01b03808216600081815260106020526040808220805460ff19166001908117909155600e5482516024808201969096528351808203909601865260440192839052600f80549496606096921694919390929091829184916002600019928216156101000292909201160480156109635780601f10610941576101008083540402835291820191610963565b820191906000526020600020905b81548152906001019060200180831161094f575b505060408051918290039091206020850180516001600160e01b03166001600160e01b0319909216919091178152905184519093508392508083835b602083106109be5780518252601f19909201916020918201910161099f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610a20576040519150601f19603f3d011682016040523d82523d6000602084013e610a25565b606091505b509150915081610a665760405162461bcd60e51b81526004018080602001828103825260288152602001806114c56028913960400191505060405180910390fd5b6020810151610a7a8160018681808b610d2f565b9450505050505b92915050565b60106020526000908152604090205460ff1681565b806000548114610add5760405162461bcd60e51b81526004018080602001828103825260288152602001806115a06028913960400191505060405180910390fd5b33600081815260116020526040808220805460ff19166001179055517feeda149c76076b34d4b9d8896c2f7efc0d33d1c7b53ea3c5db490d64613f603a9190a25050565b60116020526000908152604090205460ff1681565b60085481565b600f805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610bc25780601f10610b9757610100808354040283529160200191610bc2565b820191906000526020600020905b815481529060010190602001808311610ba557829003601f168201915b505050505081565b868611610c085760405162461bcd60e51b815260040180806020018281038252603a81526020018061164c603a913960400191505060405180910390fd5b600e80546001600160a01b0319166001600160a01b038616179055610c2f600f848461142c565b50610c408989898989600187611103565b505050505050505050565b600082610c5a57506000610a81565b82820282848281610c6757fe5b0414610ca45760405162461bcd60e51b81526004018080602001828103825260218152602001806115456021913960400191505060405180910390fd5b9392505050565b6000610ca483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061127c565b6000610ca483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061131e565b6000816000548114610d725760405162461bcd60e51b81526004018080602001828103825260288152602001806115a06028913960400191505060405180910390fd5b60008811610dc7576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b600b54871115610e085760405162461bcd60e51b815260040180806020018281038252602c8152602001806115c8602c913960400191505060405180910390fd5b60008711610e5d576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b600a54421115610e9e5760405162461bcd60e51b81526004018080602001828103825260308152602001806115156030913960400191505060405180910390fd5b600c54421015610edf5760405162461bcd60e51b81526004018080602001828103825260288152602001806114ed6028913960400191505060405180910390fd5b600754604080513060601b602080830191909152603480830185905283518084039091018152605490920190925280519101209250610f2590600163ffffffff61137816565b6007556001600160a01b038616600090815260026020908152604080832085845290915290208881554288016001820155600454610f69908a63ffffffff61137816565b600455600554610f7f908a63ffffffff61137816565b6005556000610fb486610fa889610f9c8d8f63ffffffff610c4b16565b9063ffffffff610c4b16565b9063ffffffff610cab16565b905060008111610fff576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b038816600090815260036020526040902054611028908263ffffffff61137816565b6001600160a01b0389166000908152600360205260409020819055600854908181028161105157fe5b0414611098576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b6006546110ab908263ffffffff61137816565b600655604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b6001546001600160a01b031615611161576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0387166111b4576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b8484116111f25760405162461bcd60e51b815260040180806020018281038252603a815260200180611566603a913960400191505060405180910390fd5b838310156112315760405162461bcd60e51b815260040180806020018281038252602281526020018061162a6022913960400191505060405180910390fd5b60088690556009869055600a849055600b829055600180546001600160a01b0319166001600160a01b038916179055600c859055600d839055611273816113d2565b50505050505050565b600081836113085760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112cd5781810151838201526020016112b5565b50505050905090810190601f1680156112fa5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161131457fe5b0495945050505050565b600081848411156113705760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156112cd5781810151838201526020016112b5565b505050900390565b600082820183811015610ca4576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60005415611427576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061146d5782800160ff1982351617855561149a565b8280016001018555821561149a579182015b8281111561149a57823582559160200191906001019061147f565b506114a69291506114aa565b5090565b61045d91905b808211156114a657600081556001016114b056fe63616c6c20746f2065787465726e616c20636f6e74726163742073686f756c6420737563636565646c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f64636c61696d696e6720747769636520666f72207468652073616d652062656e6566696369617279206973206e6f7420616c6c6f77656472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d655f636c61696d696e67456e6454696d652073686f756c642062652067726561746572207468616e205f636c61696d696e67537461727454696d65a265627a7a72315820bc3d86d44f9b0da29e2055c99079200d7e3a387d8cc462a553a05d67dc6b3ea264736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ExternalTokenLockerMock.json b/contracts/0.0.1-rc.53/ExternalTokenLockerMock.json new file mode 100644 index 00000000..583532de --- /dev/null +++ b/contracts/0.0.1-rc.53/ExternalTokenLockerMock.json @@ -0,0 +1,146 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ExternalTokenLockerMock", + "sourceName": "contracts/test/ExternalTokenLockerMock.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "lock", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "lockedTokenBalances", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040526100156001600160e01b0361006216565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610066565b3390565b610456806100756000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80638b525d0c1161005b5780638b525d0c146100f05780638da5cb5b146101165780638f32d59b1461013a578063f2fde38b146101565761007d565b806366dfbfb41461008257806370a08231146100b0578063715018a6146100e8575b600080fd5b6100ae6004803603604081101561009857600080fd5b50803590602001356001600160a01b031661017c565b005b6100d6600480360360208110156100c657600080fd5b50356001600160a01b03166101ef565b60408051918252519081900360200190f35b6100ae61020a565b6100d66004803603602081101561010657600080fd5b50356001600160a01b03166102ad565b61011e6102bf565b604080516001600160a01b039092168252519081900360200190f35b6101426102ce565b604080519115158252519081900360200190f35b6100ae6004803603602081101561016c57600080fd5b50356001600160a01b03166102f2565b6101846102ce565b6101d5576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0316600090815260016020526040902055565b6001600160a01b031660009081526001602052604090205490565b6102126102ce565b610263576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60016020526000908152604090205481565b6000546001600160a01b031690565b600080546001600160a01b03166102e3610357565b6001600160a01b031614905090565b6102fa6102ce565b61034b576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6103548161035b565b50565b3390565b6001600160a01b0381166103a05760405162461bcd60e51b81526004018080602001828103825260268152602001806103fc6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373a265627a7a723158208347cc7a0e3a1ab5892892311da7ae5d23b750851e08aebcc4bce38af755341164736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007d5760003560e01c80638b525d0c1161005b5780638b525d0c146100f05780638da5cb5b146101165780638f32d59b1461013a578063f2fde38b146101565761007d565b806366dfbfb41461008257806370a08231146100b0578063715018a6146100e8575b600080fd5b6100ae6004803603604081101561009857600080fd5b50803590602001356001600160a01b031661017c565b005b6100d6600480360360208110156100c657600080fd5b50356001600160a01b03166101ef565b60408051918252519081900360200190f35b6100ae61020a565b6100d66004803603602081101561010657600080fd5b50356001600160a01b03166102ad565b61011e6102bf565b604080516001600160a01b039092168252519081900360200190f35b6101426102ce565b604080519115158252519081900360200190f35b6100ae6004803603602081101561016c57600080fd5b50356001600160a01b03166102f2565b6101846102ce565b6101d5576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0316600090815260016020526040902055565b6001600160a01b031660009081526001602052604090205490565b6102126102ce565b610263576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60016020526000908152604090205481565b6000546001600160a01b031690565b600080546001600160a01b03166102e3610357565b6001600160a01b031614905090565b6102fa6102ce565b61034b576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6103548161035b565b50565b3390565b6001600160a01b0381166103a05760405162461bcd60e51b81526004018080602001828103825260268152602001806103fc6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373a265627a7a723158208347cc7a0e3a1ab5892892311da7ae5d23b750851e08aebcc4bce38af755341164736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/FixedReputationAllocation.json b/contracts/0.0.1-rc.53/FixedReputationAllocation.json new file mode 100644 index 00000000..83063a7b --- /dev/null +++ b/contracts/0.0.1-rc.53/FixedReputationAllocation.json @@ -0,0 +1,312 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "FixedReputationAllocation", + "sourceName": "contracts/schemes/FixedReputationAllocation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "BeneficiaryAddressAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_beneficiaries", + "type": "address[]" + } + ], + "name": "addBeneficiaries", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "addBeneficiary", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "beneficiaries", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "beneficiaryReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "enable", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isEnable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "numberOfBeneficiaries", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040526100156001600160e01b0361006216565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610066565b3390565b610c91806100756000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80637a1ac61e11610097578063a3907d7111610066578063a3907d71146102c8578063d044de63146102d0578063ed1ff6d8146102d8578063f2fde38b146102e057610100565b80637a1ac61e146102605780638da5cb5b146102925780638f32d59b1461029a57806395a2251f146102a257610100565b8063590411da116100d3578063590411da146101695780635926651d1461020e5780635aef7de614610234578063715018a61461025857610100565b8063015677391461010557806326e9a57e1461013f5780633d1678f4146101595780634bb77d6814610161575b600080fd5b61012b6004803603602081101561011b57600080fd5b50356001600160a01b0316610306565b604080519115158252519081900360200190f35b61014761031b565b60408051918252519081900360200190f35b610147610321565b61012b610327565b61020c6004803603602081101561017f57600080fd5b81019060208101813564010000000081111561019a57600080fd5b8201836020820111156101ac57600080fd5b803590602001918460208302840111640100000000831117156101ce57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610330945050505050565b005b61020c6004803603602081101561022457600080fd5b50356001600160a01b03166103ab565b61023c6104ac565b604080516001600160a01b039092168252519081900360200190f35b61020c6104bb565b61020c6004803603606081101561027657600080fd5b506001600160a01b03813516906020810135906040013561054c565b61023c61066f565b61012b61067e565b61012b600480360360208110156102b857600080fd5b50356001600160a01b03166106a2565b61020c610959565b6101476109c7565b6101476109cd565b61020c600480360360208110156102f657600080fd5b50356001600160a01b03166109d3565b60016020526000908152604090205460ff1681565b60055481565b60075481565b60045460ff1681565b61033861067e565b610377576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b60005b81518110156103a75761039f82828151811061039257fe5b60200260200101516103ab565b60010161037a565b5050565b6103b361067e565b6103f2576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b60045460ff16156104345760405162461bcd60e51b815260040180806020018281038252602e815260200180610bb3602e913960400191505060405180910390fd5b6001600160a01b03811660009081526001602052604090205460ff166104a9576001600160a01b0381166000818152600160208190526040808320805460ff19168317905560058054909201909155517f95b0b3bbe2a97e90a67cbf83ff77fbde1eb5b70051247f9d1a62822ccdc919979190a25b50565b6002546001600160a01b031681565b6104c361067e565b610502576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b61055461067e565b610593576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6002546001600160a01b0316156105f1576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038316610644576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600391909155600755600280546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031690565b600080546001600160a01b0316610693610a23565b6001600160a01b031614905090565b60045460009060ff166106f3576040805162461bcd60e51b81526020600482015260146024820152737265717569726520746f20626520656e61626c6560601b604482015290519081900360640190fd5b6001600160a01b03821660009081526001602052604090205460ff1661074a5760405162461bcd60e51b8152600401808060200182810382526036815260200180610c276036913960400191505060405180910390fd5b6001600160a01b0382166000908152600160205260409020805460ff1916905560075442116107c0576040805162461bcd60e51b815260206004820152601e60248201527f72657175697265206e6f77203e2072656465656d456e61626c6554696d650000604482015290519081900360640190fd5b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561080e57600080fd5b505afa158015610822573d6000803e3d6000fd5b505050506040513d602081101561083857600080fd5b50516006546002546040805163757cca5960e11b815260048101939093526001600160a01b03868116602485015291821660448401525192169163eaf994b2916064808201926020929091908290030181600087803b15801561089a57600080fd5b505af11580156108ae573d6000803e3d6000fd5b505050506040513d60208110156108c457600080fd5b5051610910576040805162461bcd60e51b81526020600482015260166024820152751b5a5b9d081c995c1d5d185d1a5bdb8819985a5b195960521b604482015290519081900360640190fd5b60065460408051918252516001600160a01b038416917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a2506001919050565b61096161067e565b6109a0576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6004805460ff191660011790556005546003546109c29163ffffffff610a2716565b600655565b60065481565b60035481565b6109db61067e565b610a1a576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6104a981610a70565b3390565b6000610a6983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610b10565b9392505050565b6001600160a01b038116610ab55760405162461bcd60e51b8152600401808060200182810382526026815260200180610be16026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60008183610b9c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b61578181015183820152602001610b49565b50505050905090810190601f168015610b8e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610ba857fe5b049594505050505056fe63616e206164642062656e6566696369617279206f6e6c79206966206e6f7420616c726561647920656e61626c654f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657272657175697265205f62656e656669636961727920746f20657869737420696e207468652062656e65666963696172696573206d6170a265627a7a723158205e47da5cd946bc958ea0b642b6643bf15b7d00fbc0c2c9a72a65118ec98aa30c64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101005760003560e01c80637a1ac61e11610097578063a3907d7111610066578063a3907d71146102c8578063d044de63146102d0578063ed1ff6d8146102d8578063f2fde38b146102e057610100565b80637a1ac61e146102605780638da5cb5b146102925780638f32d59b1461029a57806395a2251f146102a257610100565b8063590411da116100d3578063590411da146101695780635926651d1461020e5780635aef7de614610234578063715018a61461025857610100565b8063015677391461010557806326e9a57e1461013f5780633d1678f4146101595780634bb77d6814610161575b600080fd5b61012b6004803603602081101561011b57600080fd5b50356001600160a01b0316610306565b604080519115158252519081900360200190f35b61014761031b565b60408051918252519081900360200190f35b610147610321565b61012b610327565b61020c6004803603602081101561017f57600080fd5b81019060208101813564010000000081111561019a57600080fd5b8201836020820111156101ac57600080fd5b803590602001918460208302840111640100000000831117156101ce57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610330945050505050565b005b61020c6004803603602081101561022457600080fd5b50356001600160a01b03166103ab565b61023c6104ac565b604080516001600160a01b039092168252519081900360200190f35b61020c6104bb565b61020c6004803603606081101561027657600080fd5b506001600160a01b03813516906020810135906040013561054c565b61023c61066f565b61012b61067e565b61012b600480360360208110156102b857600080fd5b50356001600160a01b03166106a2565b61020c610959565b6101476109c7565b6101476109cd565b61020c600480360360208110156102f657600080fd5b50356001600160a01b03166109d3565b60016020526000908152604090205460ff1681565b60055481565b60075481565b60045460ff1681565b61033861067e565b610377576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b60005b81518110156103a75761039f82828151811061039257fe5b60200260200101516103ab565b60010161037a565b5050565b6103b361067e565b6103f2576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b60045460ff16156104345760405162461bcd60e51b815260040180806020018281038252602e815260200180610bb3602e913960400191505060405180910390fd5b6001600160a01b03811660009081526001602052604090205460ff166104a9576001600160a01b0381166000818152600160208190526040808320805460ff19168317905560058054909201909155517f95b0b3bbe2a97e90a67cbf83ff77fbde1eb5b70051247f9d1a62822ccdc919979190a25b50565b6002546001600160a01b031681565b6104c361067e565b610502576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b61055461067e565b610593576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6002546001600160a01b0316156105f1576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038316610644576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600391909155600755600280546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031690565b600080546001600160a01b0316610693610a23565b6001600160a01b031614905090565b60045460009060ff166106f3576040805162461bcd60e51b81526020600482015260146024820152737265717569726520746f20626520656e61626c6560601b604482015290519081900360640190fd5b6001600160a01b03821660009081526001602052604090205460ff1661074a5760405162461bcd60e51b8152600401808060200182810382526036815260200180610c276036913960400191505060405180910390fd5b6001600160a01b0382166000908152600160205260409020805460ff1916905560075442116107c0576040805162461bcd60e51b815260206004820152601e60248201527f72657175697265206e6f77203e2072656465656d456e61626c6554696d650000604482015290519081900360640190fd5b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561080e57600080fd5b505afa158015610822573d6000803e3d6000fd5b505050506040513d602081101561083857600080fd5b50516006546002546040805163757cca5960e11b815260048101939093526001600160a01b03868116602485015291821660448401525192169163eaf994b2916064808201926020929091908290030181600087803b15801561089a57600080fd5b505af11580156108ae573d6000803e3d6000fd5b505050506040513d60208110156108c457600080fd5b5051610910576040805162461bcd60e51b81526020600482015260166024820152751b5a5b9d081c995c1d5d185d1a5bdb8819985a5b195960521b604482015290519081900360640190fd5b60065460408051918252516001600160a01b038416917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a2506001919050565b61096161067e565b6109a0576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6004805460ff191660011790556005546003546109c29163ffffffff610a2716565b600655565b60065481565b60035481565b6109db61067e565b610a1a576040805162461bcd60e51b81526020600482018190526024820152600080516020610c07833981519152604482015290519081900360640190fd5b6104a981610a70565b3390565b6000610a6983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610b10565b9392505050565b6001600160a01b038116610ab55760405162461bcd60e51b8152600401808060200182810382526026815260200180610be16026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60008183610b9c5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b61578181015183820152602001610b49565b50505050905090810190601f168015610b8e5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610ba857fe5b049594505050505056fe63616e206164642062656e6566696369617279206f6e6c79206966206e6f7420616c726561647920656e61626c654f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657272657175697265205f62656e656669636961727920746f20657869737420696e207468652062656e65666963696172696573206d6170a265627a7a723158205e47da5cd946bc958ea0b642b6643bf15b7d00fbc0c2c9a72a65118ec98aa30c64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Forwarder.json b/contracts/0.0.1-rc.53/Forwarder.json new file mode 100644 index 00000000..4972279f --- /dev/null +++ b/contracts/0.0.1-rc.53/Forwarder.json @@ -0,0 +1,154 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Forwarder", + "sourceName": "contracts/schemes/Forwarder.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "payable": false, + "stateMutability": "nonpayable", + "type": "fallback" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "expirationTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_expirationTime", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "unregisterSelf", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040526100156001600160e01b0361006216565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610066565b3390565b61077e806100756000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80638f32d59b1161005b5780638f32d59b14610256578063cd6dc6871461025e578063da284dcc1461028a578063f2fde38b146102a457610088565b80635aef7de6146102045780636bafaa5914610228578063715018a6146102445780638da5cb5b1461024e575b6100906102ca565b6100cf576040805162461bcd60e51b8152602060048201819052602482015260008051602061072a833981519152604482015290519081900360640190fd5b426002541161011c576040805162461bcd60e51b815260206004820152601460248201527365787069726174696f6e54696d65203e206e6f7760601b604482015290519081900360640190fd5b60015460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561016157600080fd5b505afa158015610175573d6000803e3d6000fd5b505050506040513d602081101561018b57600080fd5b50516040516001600160a01b03909116906000903690808383808284376040519201945060009350909150508083038183865af19150503d80600081146101ee576040519150601f19603f3d011682016040523d82523d6000602084013e6101f3565b606091505b505090508061020157600080fd5b50005b61020c6102ee565b604080516001600160a01b039092168252519081900360200190f35b6102306102fd565b604080519115158252519081900360200190f35b61024c610448565b005b61020c6104d9565b6102306102ca565b61024c6004803603604081101561027457600080fd5b506001600160a01b0381351690602001356104e8565b610292610606565b60408051918252519081900360200190f35b61024c600480360360208110156102ba57600080fd5b50356001600160a01b031661060c565b600080546001600160a01b03166102df61065f565b6001600160a01b031614905090565b6001546001600160a01b031681565b600042600254111561034e576040805162461bcd60e51b815260206004820152601560248201527465787069726174696f6e54696d65203c3d206e6f7760581b604482015290519081900360640190fd5b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561039c57600080fd5b505afa1580156103b0573d6000803e3d6000fd5b505050506040513d60208110156103c657600080fd5b505160015460408051636c525b1360e01b81526001600160a01b03928316600482015290519190921691636c525b139160248083019260209291908290030181600087803b15801561041757600080fd5b505af115801561042b573d6000803e3d6000fd5b505050506040513d602081101561044157600080fd5b5051905090565b6104506102ca565b61048f576040805162461bcd60e51b8152602060048201819052602482015260008051602061072a833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b6104f06102ca565b61052f576040805162461bcd60e51b8152602060048201819052602482015260008051602061072a833981519152604482015290519081900360640190fd5b6001546001600160a01b03161561058d576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0382166105e0576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600180546001600160a01b0319166001600160a01b039390931692909217909155600255565b60025481565b6106146102ca565b610653576040805162461bcd60e51b8152602060048201819052602482015260008051602061072a833981519152604482015290519081900360640190fd5b61065c81610663565b50565b3390565b6001600160a01b0381166106a85760405162461bcd60e51b81526004018080602001828103825260268152602001806107046026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820df9a870f0e50d4b10d64128840df75e3f626187d55287a98d0ea82d19a7325fb64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c80638f32d59b1161005b5780638f32d59b14610256578063cd6dc6871461025e578063da284dcc1461028a578063f2fde38b146102a457610088565b80635aef7de6146102045780636bafaa5914610228578063715018a6146102445780638da5cb5b1461024e575b6100906102ca565b6100cf576040805162461bcd60e51b8152602060048201819052602482015260008051602061072a833981519152604482015290519081900360640190fd5b426002541161011c576040805162461bcd60e51b815260206004820152601460248201527365787069726174696f6e54696d65203e206e6f7760601b604482015290519081900360640190fd5b60015460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561016157600080fd5b505afa158015610175573d6000803e3d6000fd5b505050506040513d602081101561018b57600080fd5b50516040516001600160a01b03909116906000903690808383808284376040519201945060009350909150508083038183865af19150503d80600081146101ee576040519150601f19603f3d011682016040523d82523d6000602084013e6101f3565b606091505b505090508061020157600080fd5b50005b61020c6102ee565b604080516001600160a01b039092168252519081900360200190f35b6102306102fd565b604080519115158252519081900360200190f35b61024c610448565b005b61020c6104d9565b6102306102ca565b61024c6004803603604081101561027457600080fd5b506001600160a01b0381351690602001356104e8565b610292610606565b60408051918252519081900360200190f35b61024c600480360360208110156102ba57600080fd5b50356001600160a01b031661060c565b600080546001600160a01b03166102df61065f565b6001600160a01b031614905090565b6001546001600160a01b031681565b600042600254111561034e576040805162461bcd60e51b815260206004820152601560248201527465787069726174696f6e54696d65203c3d206e6f7760581b604482015290519081900360640190fd5b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561039c57600080fd5b505afa1580156103b0573d6000803e3d6000fd5b505050506040513d60208110156103c657600080fd5b505160015460408051636c525b1360e01b81526001600160a01b03928316600482015290519190921691636c525b139160248083019260209291908290030181600087803b15801561041757600080fd5b505af115801561042b573d6000803e3d6000fd5b505050506040513d602081101561044157600080fd5b5051905090565b6104506102ca565b61048f576040805162461bcd60e51b8152602060048201819052602482015260008051602061072a833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b6104f06102ca565b61052f576040805162461bcd60e51b8152602060048201819052602482015260008051602061072a833981519152604482015290519081900360640190fd5b6001546001600160a01b03161561058d576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0382166105e0576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600180546001600160a01b0319166001600160a01b039390931692909217909155600255565b60025481565b6106146102ca565b610653576040805162461bcd60e51b8152602060048201819052602482015260008051602061072a833981519152604482015290519081900360640190fd5b61065c81610663565b50565b3390565b6001600160a01b0381166106a85760405162461bcd60e51b81526004018080602001828103825260268152602001806107046026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820df9a870f0e50d4b10d64128840df75e3f626187d55287a98d0ea82d19a7325fb64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/GenericScheme.json b/contracts/0.0.1-rc.53/GenericScheme.json new file mode 100644 index 00000000..19db2bd8 --- /dev/null +++ b/contracts/0.0.1-rc.53/GenericScheme.json @@ -0,0 +1,517 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GenericScheme", + "sourceName": "contracts/schemes/GenericScheme.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_callData", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewCallProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_genericCallReturnValue", + "type": "bytes" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecutedByVotingMachine", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "contractToCall", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "execute", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParams", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_contractToCall", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationProposals", + "outputs": [ + { + "internalType": "bytes", + "name": "callData", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "exist", + "type": "bool" + }, + { + "internalType": "bool", + "name": "passed", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes", + "name": "_callData", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeCall", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "voteParams", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611be7806100206000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c8063b551c37311610097578063d8145e2d11610066578063d8145e2d14610425578063e5e21164146104d7578063e751f271146104df578063f81f8bf6146104fc57610100565b8063b551c37314610265578063bea75f2814610282578063cf65725d146102be578063d29b5d2f146103f357610100565b80639588378e116100d35780639588378e146101bc5780639d4c162d146101e8578063a31ee5b01461021f578063b20d7c261461025d57610100565b80633edf7ca1146101055780635aef7de61461012957806360bdbb3f146101315780636b8eb4031461017e575b600080fd5b61010d61052e565b604080516001600160a01b039092168252519081900360200190f35b61010d61053d565b61015d6004803603604081101561014757600080fd5b506001600160a01b03813516906020013561054c565b604080519283526001600160a01b0390911660208301528051918290030190f35b6101aa6004803603604081101561019457600080fd5b506001600160a01b038135169060200135610576565b60408051918252519081900360200190f35b6101aa600480360360408110156101d257600080fd5b506001600160a01b038135169060200135610636565b61020b600480360360408110156101fe57600080fd5b50803590602001356108c8565b604080519115158252519081900360200190f35b61025b6004803603608081101561023557600080fd5b506001600160a01b03813581169160208101358216916040820135916060013516610acb565b005b61010d610bc1565b6101aa6004803603602081101561027b57600080fd5b5035610bd0565b61020b6004803603608081101561029857600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610e58565b6101aa600480360360608110156102d457600080fd5b8101906020810181356401000000008111156102ef57600080fd5b82018360208201111561030157600080fd5b8035906020019184600183028401116401000000008311171561032357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295843595909490935060408101925060200135905064010000000081111561037e57600080fd5b82018360208201111561039057600080fd5b803590602001918460018302840111640100000000831117156103b257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610ffa945050505050565b61020b6004803603606081101561040957600080fd5b508035906001600160a01b036020820135169060400135611293565b6104426004803603602081101561043b57600080fd5b503561142c565b60405180806020018581526020018415151515815260200183151515158152602001828103825286818151815260200191508051906020019080838360005b83811015610499578181015183820152602001610481565b50505050905090810190601f1680156104c65780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b6101aa6114e1565b61025b600480360360208110156104f557600080fd5b50356114e7565b61020b6004803603606081101561051257600080fd5b508035906001600160a01b036020820135169060400135611932565b6002546001600160a01b031681565b6005546001600160a01b031681565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806105aa576000915050610630565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561060057600080fd5b505afa158015610614573d6000803e3d6000fd5b505050506040513d602081101561062a57600080fd5b50519150505b92915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561069057600080fd5b505afa1580156106a4573d6000803e3d6000fd5b505050506040513d60208110156106ba57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561070c57600080fd5b505afa158015610720573d6000803e3d6000fd5b505050506040513d602081101561073657600080fd5b5051610784576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61078c611a93565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526107d35760009350506108c0565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561081057600080fd5b505afa158015610824573d6000803e3d6000fd5b505050506040513d602081101561083a57600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b15801561089057600080fd5b505afa1580156108a4573d6000803e3d6000fd5b505050506040513d60208110156108ba57600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316610935576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152600160205260409020600281015460ff16610996576040805162461bcd60e51b81526020600482015260176024820152761b5d5cdd0818994818481b1a5d99481c1c9bdc1bdcd85b604a1b604482015290519081900360640190fd5b6002810154610100900460ff16156109ec576040805162461bcd60e51b815260206004820152601460248201527363616e6e6f74206578656375746520747769636560601b604482015290519081900360640190fd5b8360011415610a145760028101805461ff001916610100179055610a0f856114e7565b610a7d565b600085815260016020526040812090610a2d8282611aaa565b506000600182018190556002909101805461ffff1916905560055460405187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a35b60055460408051868152905187926001600160a01b0316917f25d4c89430c1f10c60c292556941e3e624ec1ec04972a5da46cee1b352429cbe919081900360200190a3506001949350505050565b6005546001600160a01b031615610b29576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038416610b7c576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600580546001600160a01b039586166001600160a01b031991821617909155600280549486169482169490941790935560039190915560048054919093169116179055565b6004546001600160a01b031681565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610c2a57600080fd5b505afa158015610c3e573d6000803e3d6000fd5b505050506040513d6020811015610c5457600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610ca657600080fd5b505afa158015610cba573d6000803e3d6000fd5b505050506040513d6020811015610cd057600080fd5b5051610d1e576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610d26611a93565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610d6d576000935050610e51565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610daa57600080fd5b505afa158015610dbe573d6000803e3d6000fd5b505050506040513d6020811015610dd457600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b158015610e2157600080fd5b505afa158015610e35573d6000803e3d6000fd5b505050506040513d6020811015610e4b57600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610ec5576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610ef9576000925050610ff1565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f3257600080fd5b505afa158015610f46573d6000803e3d6000fd5b505050506040513d6020811015610f5c57600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b158015610fc157600080fd5b505af1158015610fd5573d6000803e3d6000fd5b505050506040513d6020811015610feb57600080fd5b50519250505b50949350505050565b6002805460035460055460408051634439bdaf60e11b8152600481019590955260248501929092523360448501526001600160a01b0390811660648501529051600093849392909216916388737b5e91608480830192602092919082900301818787803b15801561106a57600080fd5b505af115801561107e573d6000803e3d6000fd5b505050506040513d602081101561109457600080fd5b505160408051608081018252878152602081810188905260018284018190526000606084018190528581529082529290922081518051949550919390926110df928492910190611af1565b506020828101516001838101919091556040808501516002948501805460609788015160ff199091169215159290921761ff0019166101009215159290920291909117905580518082018252438152600580546001600160a01b039081168387019081529654811660009081528087528481208a825287528481209351845596519290940180546001600160a01b031916928516929092179091555481518085018b90528681528b51968101969096528a51879691909316947f36418f82d814fb021ca04ebdc2c4a3cd69f719851f597c489bca2ed245e8c8ad948c948c948c949384939184019260808501928901918190849084905b838110156111ee5781810151838201526020016111d6565b50505050905090810190601f16801561121b5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b8381101561124e578181015183820152602001611236565b50505050905090810190601f16801561127b5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a3949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611300576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611334576000925050611424565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561136d57600080fd5b505afa158015611381573d6000803e3d6000fd5b505050506040513d602081101561139757600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b1580156113f457600080fd5b505af1158015611408573d6000803e3d6000fd5b505050506040513d602081101561141e57600080fd5b50519250505b509392505050565b60016020818152600092835260409283902080548451600294821615610100026000190190911693909304601f81018390048302840183019094528383529283918301828280156114be5780601f10611493576101008083540402835291602001916114be565b820191906000526020600020905b8154815290600101906020018083116114a157829003601f168201915b50505050600183015460029093015491929160ff80821692506101009091041684565b60035481565b6000818152600160205260409020600281015460ff16611548576040805162461bcd60e51b81526020600482015260176024820152761b5d5cdd0818994818481b1a5d99481c1c9bdc1bdcd85b604a1b604482015290519081900360640190fd5b6002810154610100900460ff166115905760405162461bcd60e51b8152600401808060200182810382526026815260200180611b8d6026913960400191505060405180910390fd5b60028101805460ff1916905560055460408051638da5cb5b60e01b8152905160609260009283926001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b1580156115e957600080fd5b505afa1580156115fd573d6000803e3d6000fd5b505050506040513d602081101561161357600080fd5b5051600480546005546001888101546040516368db844d60e11b81526001600160a01b0394851695810186815293851660448201819052606482018390526080602483019081528c5460026000199682161561010002969096011694909404608483018190529798509488169663d1b7089a96958c9590949092909160a490910190869080156116e45780601f106116b9576101008083540402835291602001916116e4565b820191906000526020600020905b8154815290600101906020018083116116c757829003601f168201915b505095505050505050600060405180830381600087803b15801561170757600080fd5b505af115801561171b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561174457600080fd5b81516020830180516040519294929383019291908464010000000082111561176b57600080fd5b90830190602082018581111561178057600080fd5b825164010000000081118282018810171561179a57600080fd5b82525081516020918201929091019080838360005b838110156117c75781810151838201526020016117af565b50505050905090810190601f1680156117f45780820380516001836020036101000a031916815260200191505b5060405250919550919350508215905061191b576000858152600160205260408120906118218282611aaa565b506000600182018190556002909101805461ffff1916905560055460405187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3600554604080516020808252865181830152865189946001600160a01b0316937f1c57c986b085f821f3126bc24b5aba57ed92fe545788a34925528295cef240159389939092839283019185019080838360005b838110156118dc5781810151838201526020016118c4565b50505050905090810190601f1680156119095780820380516001836020036101000a031916815260200191505b509250505060405180910390a361192b565b60028401805460ff191660011790555b5050505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661199f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806119d3576000925050611424565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a0c57600080fd5b505afa158015611a20573d6000803e3d6000fd5b505050506040513d6020811015611a3657600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b1580156113f457600080fd5b604080518082019091526000808252602082015290565b50805460018160011615610100020316600290046000825580601f10611ad05750611aee565b601f016020900490600052602060002090810190611aee9190611b6f565b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611b3257805160ff1916838001178555611b5f565b82800160010185558215611b5f579182015b82811115611b5f578251825591602001919060010190611b44565b50611b6b929150611b6f565b5090565b611b8991905b80821115611b6b5760008155600101611b75565b9056fe70726f706f73616c206d7573742070617373656420627920766f74696e67206d616368696e65a265627a7a72315820200b79169bd50cfe2fb8fdb0b392d93ffa1398bdbfb686b76427c2259bb0c57464736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101005760003560e01c8063b551c37311610097578063d8145e2d11610066578063d8145e2d14610425578063e5e21164146104d7578063e751f271146104df578063f81f8bf6146104fc57610100565b8063b551c37314610265578063bea75f2814610282578063cf65725d146102be578063d29b5d2f146103f357610100565b80639588378e116100d35780639588378e146101bc5780639d4c162d146101e8578063a31ee5b01461021f578063b20d7c261461025d57610100565b80633edf7ca1146101055780635aef7de61461012957806360bdbb3f146101315780636b8eb4031461017e575b600080fd5b61010d61052e565b604080516001600160a01b039092168252519081900360200190f35b61010d61053d565b61015d6004803603604081101561014757600080fd5b506001600160a01b03813516906020013561054c565b604080519283526001600160a01b0390911660208301528051918290030190f35b6101aa6004803603604081101561019457600080fd5b506001600160a01b038135169060200135610576565b60408051918252519081900360200190f35b6101aa600480360360408110156101d257600080fd5b506001600160a01b038135169060200135610636565b61020b600480360360408110156101fe57600080fd5b50803590602001356108c8565b604080519115158252519081900360200190f35b61025b6004803603608081101561023557600080fd5b506001600160a01b03813581169160208101358216916040820135916060013516610acb565b005b61010d610bc1565b6101aa6004803603602081101561027b57600080fd5b5035610bd0565b61020b6004803603608081101561029857600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610e58565b6101aa600480360360608110156102d457600080fd5b8101906020810181356401000000008111156102ef57600080fd5b82018360208201111561030157600080fd5b8035906020019184600183028401116401000000008311171561032357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295843595909490935060408101925060200135905064010000000081111561037e57600080fd5b82018360208201111561039057600080fd5b803590602001918460018302840111640100000000831117156103b257600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610ffa945050505050565b61020b6004803603606081101561040957600080fd5b508035906001600160a01b036020820135169060400135611293565b6104426004803603602081101561043b57600080fd5b503561142c565b60405180806020018581526020018415151515815260200183151515158152602001828103825286818151815260200191508051906020019080838360005b83811015610499578181015183820152602001610481565b50505050905090810190601f1680156104c65780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b6101aa6114e1565b61025b600480360360208110156104f557600080fd5b50356114e7565b61020b6004803603606081101561051257600080fd5b508035906001600160a01b036020820135169060400135611932565b6002546001600160a01b031681565b6005546001600160a01b031681565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806105aa576000915050610630565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561060057600080fd5b505afa158015610614573d6000803e3d6000fd5b505050506040513d602081101561062a57600080fd5b50519150505b92915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561069057600080fd5b505afa1580156106a4573d6000803e3d6000fd5b505050506040513d60208110156106ba57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561070c57600080fd5b505afa158015610720573d6000803e3d6000fd5b505050506040513d602081101561073657600080fd5b5051610784576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61078c611a93565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526107d35760009350506108c0565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561081057600080fd5b505afa158015610824573d6000803e3d6000fd5b505050506040513d602081101561083a57600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b15801561089057600080fd5b505afa1580156108a4573d6000803e3d6000fd5b505050506040513d60208110156108ba57600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316610935576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152600160205260409020600281015460ff16610996576040805162461bcd60e51b81526020600482015260176024820152761b5d5cdd0818994818481b1a5d99481c1c9bdc1bdcd85b604a1b604482015290519081900360640190fd5b6002810154610100900460ff16156109ec576040805162461bcd60e51b815260206004820152601460248201527363616e6e6f74206578656375746520747769636560601b604482015290519081900360640190fd5b8360011415610a145760028101805461ff001916610100179055610a0f856114e7565b610a7d565b600085815260016020526040812090610a2d8282611aaa565b506000600182018190556002909101805461ffff1916905560055460405187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a35b60055460408051868152905187926001600160a01b0316917f25d4c89430c1f10c60c292556941e3e624ec1ec04972a5da46cee1b352429cbe919081900360200190a3506001949350505050565b6005546001600160a01b031615610b29576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038416610b7c576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600580546001600160a01b039586166001600160a01b031991821617909155600280549486169482169490941790935560039190915560048054919093169116179055565b6004546001600160a01b031681565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610c2a57600080fd5b505afa158015610c3e573d6000803e3d6000fd5b505050506040513d6020811015610c5457600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610ca657600080fd5b505afa158015610cba573d6000803e3d6000fd5b505050506040513d6020811015610cd057600080fd5b5051610d1e576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610d26611a93565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610d6d576000935050610e51565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610daa57600080fd5b505afa158015610dbe573d6000803e3d6000fd5b505050506040513d6020811015610dd457600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b158015610e2157600080fd5b505afa158015610e35573d6000803e3d6000fd5b505050506040513d6020811015610e4b57600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610ec5576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610ef9576000925050610ff1565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f3257600080fd5b505afa158015610f46573d6000803e3d6000fd5b505050506040513d6020811015610f5c57600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b158015610fc157600080fd5b505af1158015610fd5573d6000803e3d6000fd5b505050506040513d6020811015610feb57600080fd5b50519250505b50949350505050565b6002805460035460055460408051634439bdaf60e11b8152600481019590955260248501929092523360448501526001600160a01b0390811660648501529051600093849392909216916388737b5e91608480830192602092919082900301818787803b15801561106a57600080fd5b505af115801561107e573d6000803e3d6000fd5b505050506040513d602081101561109457600080fd5b505160408051608081018252878152602081810188905260018284018190526000606084018190528581529082529290922081518051949550919390926110df928492910190611af1565b506020828101516001838101919091556040808501516002948501805460609788015160ff199091169215159290921761ff0019166101009215159290920291909117905580518082018252438152600580546001600160a01b039081168387019081529654811660009081528087528481208a825287528481209351845596519290940180546001600160a01b031916928516929092179091555481518085018b90528681528b51968101969096528a51879691909316947f36418f82d814fb021ca04ebdc2c4a3cd69f719851f597c489bca2ed245e8c8ad948c948c948c949384939184019260808501928901918190849084905b838110156111ee5781810151838201526020016111d6565b50505050905090810190601f16801561121b5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b8381101561124e578181015183820152602001611236565b50505050905090810190601f16801561127b5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a3949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611300576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611334576000925050611424565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561136d57600080fd5b505afa158015611381573d6000803e3d6000fd5b505050506040513d602081101561139757600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b1580156113f457600080fd5b505af1158015611408573d6000803e3d6000fd5b505050506040513d602081101561141e57600080fd5b50519250505b509392505050565b60016020818152600092835260409283902080548451600294821615610100026000190190911693909304601f81018390048302840183019094528383529283918301828280156114be5780601f10611493576101008083540402835291602001916114be565b820191906000526020600020905b8154815290600101906020018083116114a157829003601f168201915b50505050600183015460029093015491929160ff80821692506101009091041684565b60035481565b6000818152600160205260409020600281015460ff16611548576040805162461bcd60e51b81526020600482015260176024820152761b5d5cdd0818994818481b1a5d99481c1c9bdc1bdcd85b604a1b604482015290519081900360640190fd5b6002810154610100900460ff166115905760405162461bcd60e51b8152600401808060200182810382526026815260200180611b8d6026913960400191505060405180910390fd5b60028101805460ff1916905560055460408051638da5cb5b60e01b8152905160609260009283926001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b1580156115e957600080fd5b505afa1580156115fd573d6000803e3d6000fd5b505050506040513d602081101561161357600080fd5b5051600480546005546001888101546040516368db844d60e11b81526001600160a01b0394851695810186815293851660448201819052606482018390526080602483019081528c5460026000199682161561010002969096011694909404608483018190529798509488169663d1b7089a96958c9590949092909160a490910190869080156116e45780601f106116b9576101008083540402835291602001916116e4565b820191906000526020600020905b8154815290600101906020018083116116c757829003601f168201915b505095505050505050600060405180830381600087803b15801561170757600080fd5b505af115801561171b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561174457600080fd5b81516020830180516040519294929383019291908464010000000082111561176b57600080fd5b90830190602082018581111561178057600080fd5b825164010000000081118282018810171561179a57600080fd5b82525081516020918201929091019080838360005b838110156117c75781810151838201526020016117af565b50505050905090810190601f1680156117f45780820380516001836020036101000a031916815260200191505b5060405250919550919350508215905061191b576000858152600160205260408120906118218282611aaa565b506000600182018190556002909101805461ffff1916905560055460405187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3600554604080516020808252865181830152865189946001600160a01b0316937f1c57c986b085f821f3126bc24b5aba57ed92fe545788a34925528295cef240159389939092839283019185019080838360005b838110156118dc5781810151838201526020016118c4565b50505050905090810190601f1680156119095780820380516001836020036101000a031916815260200191505b509250505060405180910390a361192b565b60028401805460ff191660011790555b5050505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661199f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806119d3576000925050611424565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a0c57600080fd5b505afa158015611a20573d6000803e3d6000fd5b505050506040513d6020811015611a3657600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b1580156113f457600080fd5b604080518082019091526000808252602082015290565b50805460018160011615610100020316600290046000825580601f10611ad05750611aee565b601f016020900490600052602060002090810190611aee9190611b6f565b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611b3257805160ff1916838001178555611b5f565b82800160010185558215611b5f579182015b82811115611b5f578251825591602001919060010190611b44565b50611b6b929150611b6f565b5090565b611b8991905b80821115611b6b5760008155600101611b75565b9056fe70726f706f73616c206d7573742070617373656420627920766f74696e67206d616368696e65a265627a7a72315820200b79169bd50cfe2fb8fdb0b392d93ffa1398bdbfb686b76427c2259bb0c57464736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/GenericSchemeMultiCall.json b/contracts/0.0.1-rc.53/GenericSchemeMultiCall.json new file mode 100644 index 00000000..623bcfa2 --- /dev/null +++ b/contracts/0.0.1-rc.53/GenericSchemeMultiCall.json @@ -0,0 +1,549 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GenericSchemeMultiCall", + "sourceName": "contracts/schemes/GenericSchemeMultiCall.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes[]", + "name": "_callsData", + "type": "bytes[]" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "_values", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "indexed": false, + "internalType": "address[]", + "name": "_contractsToCall", + "type": "address[]" + } + ], + "name": "NewMultiCallProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "_contractToCall", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_callData", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_callDataReturnValue", + "type": "bytes" + } + ], + "name": "ProposalCallExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecutedByVotingMachine", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "execute", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParams", + "type": "bytes32" + }, + { + "internalType": "contract SchemeConstraints", + "name": "_schemeConstraints", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "bool", + "name": "exist", + "type": "bool" + }, + { + "internalType": "bool", + "name": "passed", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_contractsToCall", + "type": "address[]" + }, + { + "internalType": "bytes[]", + "name": "_callsData", + "type": "bytes[]" + }, + { + "internalType": "uint256[]", + "name": "_values", + "type": "uint256[]" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeCalls", + "outputs": [ + { + "internalType": "bytes32", + "name": "proposalId", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "schemeConstraints", + "outputs": [ + { + "internalType": "contract SchemeConstraints", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "voteParams", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50612892806100206000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80639d4c162d11610097578063d29b5d2f11610066578063d29b5d2f14610216578063e5e2116414610229578063e751f27114610231578063f81f8bf61461024457610100565b80639d4c162d146101bb578063a31ee5b0146101db578063b551c373146101f0578063bea75f281461020357610100565b80635aef7de6116100d35780635aef7de61461016c57806360bdbb3f146101745780636b8eb403146101955780639588378e146101a857610100565b806322499a65146101055780632d3525491461012e57806332ed5b12146101435780633edf7ca114610164575b600080fd5b610118610113366004611afb565b610257565b6040516101259190612545565b60405180910390f35b61013661053b565b6040516101259190612553565b610156610151366004611c21565b61054a565b60405161012592919061252a565b61013661056b565b61013661057a565b610187610182366004611ac1565b610589565b6040516101259291906126ab565b6101186101a3366004611d26565b6105b3565b6101186101b6366004611ac1565b61066d565b6101ce6101c9366004611c5d565b6108e9565b604051610125919061251c565b6101ee6101e9366004611c7c565b610a74565b005b6101186101fe366004611c21565b610b08565b6101ce610211366004611cd1565b610d80565b6101ce610224366004611d63565b610ef8565b61011861106d565b6101ee61023f366004611c21565b611073565b6101ce610252366004611d63565b6114ee565b60008351855114801561026b575082518551145b6102905760405162461bcd60e51b8152600401610287906125fb565b60405180910390fd5b6005546001600160a01b031615610348576005546004805460405163da6f0d9b60e01b81526001600160a01b039384169363da6f0d9b936102da938b938b938b9392169101612444565b602060405180830381600087803b1580156102f457600080fd5b505af1158015610308573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061032c9190810190611bbb565b6103485760405162461bcd60e51b8152600401610287906125cb565b6002805460035460048054604051634439bdaf60e11b81526001600160a01b03948516956388737b5e956103859591949193339391169101612596565b602060405180830381600087803b15801561039f57600080fd5b505af11580156103b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506103d79190810190611c3f565b6040805160a0810182528781526020808201889052818301879052600160608301819052600060808401819052858152908252929092208151805194955091939092610427928492910190611605565b506020828101518051610440926001850192019061166a565b506040820151805161045c9160028401916020909101906116c3565b5060608201516003909101805460809093015115156101000261ff001992151560ff199094169390931791909116919091179055604080518082018252438152600480546001600160a01b03908116602080850191825260025483166000908152808252868120888252909152859020935184555160019390930180549382166001600160a01b0319909416939093179092555491518392909116907ff5a0655bd7247f3a6fa97e71b57c61314566afb5aa8be8eea2c48f4d1b9bf1909061052b908890889088908c906124c5565b60405180910390a3949350505050565b6005546001600160a01b031681565b60016020526000908152604090206003015460ff8082169161010090041682565b6002546001600160a01b031681565b6004546001600160a01b031681565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806105e7576000915050610667565b6040516370a0823160e01b81526001600160a01b038516906370a0823190610613908490600401612387565b60206040518083038186803b15801561062b57600080fd5b505afa15801561063f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506106639190810190611c3f565b9150505b92915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b1580156106c757600080fd5b505afa1580156106db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506106ff9190810190611aa3565b6001600160a01b0316639be2faed30836040518363ffffffff1660e01b815260040161072c929190612395565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061077c9190810190611bbb565b6107985760405162461bcd60e51b81526004016102879061266b565b6107a061170a565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526107e75760009350506108e1565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561082457600080fd5b505afa158015610838573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061085c9190810190611d45565b815160405163277166bf60e11b81526001600160a01b039290921691634ee2cd7e9161088d918a9190600401612429565b60206040518083038186803b1580156108a557600080fd5b505afa1580156108b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108dd9190810190611c3f565b9350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b031661092c5760405162461bcd60e51b81526004016102879061264b565b6000848152600160205260409020600381015460ff1661095e5760405162461bcd60e51b81526004016102879061262b565b6003810154610100900460ff16156109885760405162461bcd60e51b81526004016102879061261b565b83600114156109a75760038101805461ff001916610100179055610a22565b6000858152600160205260408120906109c08282611721565b6109ce600183016000611742565b6109dc600283016000611721565b50600301805461ffff1916905560045460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a35b60045460405186916001600160a01b0316907f25d4c89430c1f10c60c292556941e3e624ec1ec04972a5da46cee1b352429cbe90610a61908890612545565b60405180910390a3506001949350505050565b6004546001600160a01b031615610a9d5760405162461bcd60e51b81526004016102879061260b565b6001600160a01b038416610ac35760405162461bcd60e51b8152600401610287906125eb565b600480546001600160a01b039586166001600160a01b031991821617909155600280549486169482169490941790935560039190915560058054919093169116179055565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610b6257600080fd5b505afa158015610b76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610b9a9190810190611aa3565b6001600160a01b0316639be2faed30836040518363ffffffff1660e01b8152600401610bc7929190612395565b60206040518083038186803b158015610bdf57600080fd5b505afa158015610bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c179190810190611bbb565b610c335760405162461bcd60e51b81526004016102879061266b565b610c3b61170a565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610c82576000935050610d79565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610cbf57600080fd5b505afa158015610cd3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610cf79190810190611d45565b8151604051630981b24d60e41b81526001600160a01b03929092169163981b24d091610d2591600401612545565b60206040518083038186803b158015610d3d57600080fd5b505afa158015610d51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610d759190810190611c3f565b9350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610dc35760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680610df7576000925050610eef565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610e3057600080fd5b505afa158015610e44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e689190810190611aa3565b6001600160a01b031663b9a04cdd888888856040518563ffffffff1660e01b8152600401610e999493929190612561565b602060405180830381600087803b158015610eb357600080fd5b505af1158015610ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610eeb9190810190611bbb565b9250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610f3b5760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680610f6f576000925050611065565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610fa857600080fd5b505afa158015610fbc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fe09190810190611aa3565b6001600160a01b031663eaf994b28787846040518463ffffffff1660e01b815260040161100f9392919061267b565b602060405180830381600087803b15801561102957600080fd5b505af115801561103d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506110619190810190611bbb565b9250505b509392505050565b60035481565b6000818152600160205260409020600381015460ff166110a55760405162461bcd60e51b81526004016102879061262b565b6003810154610100900460ff166110ce5760405162461bcd60e51b81526004016102879061263b565b6005546001600160a01b03161561118c57600554600480546040516364ab2de960e01b81526001600160a01b03938416936364ab2de99361111e938793600185019360028601939216910161248c565b602060405180830381600087803b15801561113857600080fd5b505af115801561114c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506111709190810190611bbb565b61118c5760405162461bcd60e51b8152600401610287906125db565b60038101805460ff191690556004805460408051638da5cb5b60e01b8152905160609360009384936001600160a01b0390911692638da5cb5b92828101926020929190829003018186803b1580156111e357600080fd5b505afa1580156111f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061121b9190810190611aa3565b905060005b845481101561143457606085600101828154811061123a57fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156112c85780601f1061129d576101008083540402835291602001916112c8565b820191906000526020600020905b8154815290600101906020018083116112ab57829003601f168201915b50505050509050826001600160a01b031663d1b7089a8760000184815481106112ed57fe5b60009182526020909120015460045460028a0180546001600160a01b039384169387931691908890811061131d57fe5b90600052602060002001546040518563ffffffff1660e01b815260040161134794939291906123ed565b600060405180830381600087803b15801561136157600080fd5b505af1158015611375573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261139d9190810190611bd9565b95509350836113be5760405162461bcd60e51b81526004016102879061265b565b600454865488916001600160a01b0316907fcb8058ffa6730183a4e6158708b3f64da7110160c23a40db51ef20718c790ec5908990869081106113fd57fe5b600091825260209091200154604051611423916001600160a01b03169086908b906123b0565b60405180910390a350600101611220565b5060008581526001602052604081209061144e8282611721565b61145c600183016000611742565b61146a600283016000611721565b50600301805461ffff1916905560045460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a360045460405186916001600160a01b0316907f253ad9614c337848bbe7dc3b18b439d139ef5787282b5a517ba7296513d1f53390600090a35050505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166115315760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680611565576000925050611065565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561159e57600080fd5b505afa1580156115b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506115d69190810190611aa3565b6001600160a01b0316636e94d2788787846040518463ffffffff1660e01b815260040161100f9392919061267b565b82805482825590600052602060002090810192821561165a579160200282015b8281111561165a57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611625565b50611666929150611760565b5090565b8280548282559060005260206000209081019282156116b7579160200282015b828111156116b757825180516116a7918491602090910190611787565b509160200191906001019061168a565b506116669291506117f4565b8280548282559060005260206000209081019282156116fe579160200282015b828111156116fe5782518255916020019190600101906116e3565b50611666929150611817565b604080518082019091526000808252602082015290565b508054600082559060005260206000209081019061173f9190611817565b50565b508054600082559060005260206000209081019061173f91906117f4565b61178491905b808211156116665780546001600160a01b0319168155600101611766565b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117c857805160ff19168380011785556116fe565b828001600101855582156116fe57918201828111156116fe5782518255916020019190600101906116e3565b61178491905b8082111561166657600061180e8282611831565b506001016117fa565b61178491905b80821115611666576000815560010161181d565b50805460018160011615610100020316600290046000825580601f10611857575061173f565b601f01602090049060005260206000209081019061173f9190611817565b803561066781612820565b805161066781612820565b600082601f83011261189c57600080fd5b81356118af6118aa826126ed565b6126c6565b915081818352602084019350602081019050838560208402820111156118d457600080fd5b60005b8381101561190057816118ea8882611875565b84525060209283019291909101906001016118d7565b5050505092915050565b600082601f83011261191b57600080fd5b81356119296118aa826126ed565b81815260209384019390925082018360005b83811015611900578135860161195188826119f8565b845250602092830192919091019060010161193b565b600082601f83011261197857600080fd5b81356119866118aa826126ed565b915081818352602084019350602081019050838560208402820111156119ab57600080fd5b60005b8381101561190057816119c188826119e2565b84525060209283019291909101906001016119ae565b805161066781612834565b80356106678161283d565b80516106678161283d565b600082601f830112611a0957600080fd5b8135611a176118aa8261270e565b91508082526020830160208301858383011115611a3357600080fd5b611a3e83828461279c565b50505092915050565b600082601f830112611a5857600080fd5b8151611a666118aa8261270e565b91508082526020830160208301858383011115611a8257600080fd5b611a3e8382846127a8565b803561066781612846565b805161066781612846565b600060208284031215611ab557600080fd5b60006106638484611880565b60008060408385031215611ad457600080fd5b6000611ae08585611875565b9250506020611af1858286016119e2565b9150509250929050565b60008060008060808587031215611b1157600080fd5b843567ffffffffffffffff811115611b2857600080fd5b611b348782880161188b565b945050602085013567ffffffffffffffff811115611b5157600080fd5b611b5d8782880161190a565b935050604085013567ffffffffffffffff811115611b7a57600080fd5b611b8687828801611967565b925050606085013567ffffffffffffffff811115611ba357600080fd5b611baf878288016119f8565b91505092959194509250565b600060208284031215611bcd57600080fd5b600061066384846119d7565b60008060408385031215611bec57600080fd5b6000611bf885856119d7565b925050602083015167ffffffffffffffff811115611c1557600080fd5b611af185828601611a47565b600060208284031215611c3357600080fd5b600061066384846119e2565b600060208284031215611c5157600080fd5b600061066384846119ed565b60008060408385031215611c7057600080fd5b6000611ae085856119e2565b60008060008060808587031215611c9257600080fd5b6000611c9e8787611a8d565b9450506020611caf87828801611a8d565b9350506040611cc0878288016119e2565b9250506060611baf87828801611a8d565b60008060008060808587031215611ce757600080fd5b6000611cf38787611a8d565b9450506020611d0487828801611875565b9350506040611d15878288016119e2565b9250506060611baf878288016119e2565b60008060408385031215611d3957600080fd5b6000611ae08585611a8d565b600060208284031215611d5757600080fd5b60006106638484611a98565b600080600060608486031215611d7857600080fd5b6000611d8486866119e2565b9350506020611d9586828701611875565b9250506040611da6868287016119e2565b9150509250925092565b6000611dbc8383611dfe565b505060200190565b6000611dd08383612038565b9392505050565b6000611dd08383612070565b6000611dbc838361202f565b611df881612786565b82525050565b611df88161276b565b6000611e1282612748565b611e1c8185612756565b9350611e2783612736565b8060005b83811015611e55578151611e3f8882611db0565b9750611e4a83612736565b925050600101611e2b565b509495945050505050565b6000611e6b8261274c565b611e758185612756565b9350611e808361273c565b8060005b83811015611e5557611e95826127fe565b611e9f8882611db0565b9750611eaa83612750565b925050600101611e84565b6000611ec082612748565b611eca8185612756565b935083602082028501611edc85612736565b8060005b85811015611f165784840389528151611ef98582611dc4565b9450611f0483612736565b60209a909a0199925050600101611ee0565b5091979650505050505050565b6000611f2e8261274c565b611f388185612756565b935083602082028501611f4a8561273c565b8060005b85811015611f1657848403895281611f668582611dd7565b9450611f7183612750565b60209a909a0199925050600101611f4e565b6000611f8e82612748565b611f988185612756565b9350611fa383612736565b8060005b83811015611e55578151611fbb8882611de3565b9750611fc683612736565b925050600101611fa7565b6000611fdc8261274c565b611fe68185612756565b9350611ff18361273c565b8060005b83811015611e55576120068261280a565b6120108882611de3565b975061201b83612750565b925050600101611ff5565b611df881612776565b611df881611784565b600061204382612748565b61204d8185612756565b935061205d8185602086016127a8565b61206681612816565b9093019392505050565b60008154600181166000811461208d57600181146120b3576108e1565b607f600283041661209e8187612756565b60ff19841681529550506020850192506108e1565b600282046120c18187612756565b95506120cc8561273c565b60005b828110156120eb578154888201526001909101906020016120cf565b9096019695505050505050565b611df88161277b565b611df881612791565b6000612117601683612756565b751c1c9bdc1bdcd9481a5cc81b9bdd08185b1b1bddd95960521b815260200192915050565b6000612149601383612756565b7218d85b1b081a5cc81b9bdd08185b1b1bddd959606a1b815260200192915050565b6000612178601583612756565b746176617461722063616e6e6f74206265207a65726f60581b815260200192915050565b60006121a9604283612756565b7f57726f6e67206c656e677468206f66205f636f6e747261637473546f43616c6c81527f2c205f63616c6c73446174614c656e73206f72205f76616c7565732061727261602082015261797360f01b604082015260600192915050565b6000612213601b83612756565b7f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000815260200192915050565b600061224c601483612756565b7363616e6e6f74206578656375746520747769636560601b815260200192915050565b600061227c601783612756565b7f6d7573742062652061206c6976652070726f706f73616c000000000000000000815260200192915050565b60006122b5602683612756565b7f70726f706f73616c206d7573742070617373656420627920766f74696e67206d815265616368696e6560d01b602082015260400192915050565b60006122fd601283612756565b716f6e6c7920566f74696e674d616368696e6560701b815260200192915050565b600061232b601483612756565b73141c9bdc1bdcd85b0818d85b1b0819985a5b195960621b815260200192915050565b600061235b601883612756565b7f736368656d65206973206e6f7420726567697374657265640000000000000000815260200192915050565b602081016106678284611def565b604081016123a38285611dfe565b611dd06020830184611def565b606081016123be8286611dfe565b81810360208301526123d08185612038565b905081810360408301526123e48184612038565b95945050505050565b608081016123fb8287611dfe565b818103602083015261240d8186612038565b905061241c60408301856120f8565b6123e4606083018461202f565b604081016124378285611dfe565b611dd0602083018461202f565b608080825281016124558187611e07565b905081810360208301526124698186611eb5565b9050818103604083015261247d8185611f83565b90506123e460608301846120f8565b6080808252810161249d8187611e60565b905081810360208301526124b18186611f23565b9050818103604083015261247d8185611fd1565b608080825281016124d68187611eb5565b905081810360208301526124ea8186611f83565b905081810360408301526124fe8185612038565b905081810360608301526125128184611e07565b9695505050505050565b602081016106678284612026565b604081016125388285612026565b611dd06020830184612026565b60208101610667828461202f565b6020810161066782846120f8565b6080810161256f82876120f8565b61257c6020830186611dfe565b612589604083018561202f565b6123e460608301846120f8565b608081016125a48287612101565b6125b1602083018661202f565b6125be6040830185611def565b6123e46060830184611def565b602080825281016106678161210a565b602080825281016106678161213c565b602080825281016106678161216b565b602080825281016106678161219c565b6020808252810161066781612206565b602080825281016106678161223f565b602080825281016106678161226f565b60208082528101610667816122a8565b60208082528101610667816122f0565b602080825281016106678161231e565b602080825281016106678161234e565b60608101612689828661202f565b6126966020830185611dfe565b6126a36040830184611def565b949350505050565b604081016126b9828561202f565b611dd060208301846120f8565b60405181810167ffffffffffffffff811182821017156126e557600080fd5b604052919050565b600067ffffffffffffffff82111561270457600080fd5b5060209081020190565b600067ffffffffffffffff82111561272557600080fd5b506020601f91909101601f19160190565b60200190565b60009081526020902090565b5190565b5490565b60010190565b90815260200190565b6001600160a01b031690565b60006106678261275f565b151590565b60006106678261276b565b60006106678261277b565b600061066782611784565b82818337506000910152565b60005b838110156127c35781810151838201526020016127ab565b838111156127d2576000848401525b50505050565b60006106676127e683611784565b61275f565b60006106676127f983611784565b611784565b600061066782546127d8565b600061066782546127eb565b601f01601f191690565b6128298161276b565b811461173f57600080fd5b61282981612776565b61282981611784565b6128298161277b56fea365627a7a723158203677e075d97e0d34bd6bda9e4961caed402b91f56fa8e053ad9deef1eaee43906c6578706572696d656e74616cf564736f6c63430005110040", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101005760003560e01c80639d4c162d11610097578063d29b5d2f11610066578063d29b5d2f14610216578063e5e2116414610229578063e751f27114610231578063f81f8bf61461024457610100565b80639d4c162d146101bb578063a31ee5b0146101db578063b551c373146101f0578063bea75f281461020357610100565b80635aef7de6116100d35780635aef7de61461016c57806360bdbb3f146101745780636b8eb403146101955780639588378e146101a857610100565b806322499a65146101055780632d3525491461012e57806332ed5b12146101435780633edf7ca114610164575b600080fd5b610118610113366004611afb565b610257565b6040516101259190612545565b60405180910390f35b61013661053b565b6040516101259190612553565b610156610151366004611c21565b61054a565b60405161012592919061252a565b61013661056b565b61013661057a565b610187610182366004611ac1565b610589565b6040516101259291906126ab565b6101186101a3366004611d26565b6105b3565b6101186101b6366004611ac1565b61066d565b6101ce6101c9366004611c5d565b6108e9565b604051610125919061251c565b6101ee6101e9366004611c7c565b610a74565b005b6101186101fe366004611c21565b610b08565b6101ce610211366004611cd1565b610d80565b6101ce610224366004611d63565b610ef8565b61011861106d565b6101ee61023f366004611c21565b611073565b6101ce610252366004611d63565b6114ee565b60008351855114801561026b575082518551145b6102905760405162461bcd60e51b8152600401610287906125fb565b60405180910390fd5b6005546001600160a01b031615610348576005546004805460405163da6f0d9b60e01b81526001600160a01b039384169363da6f0d9b936102da938b938b938b9392169101612444565b602060405180830381600087803b1580156102f457600080fd5b505af1158015610308573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061032c9190810190611bbb565b6103485760405162461bcd60e51b8152600401610287906125cb565b6002805460035460048054604051634439bdaf60e11b81526001600160a01b03948516956388737b5e956103859591949193339391169101612596565b602060405180830381600087803b15801561039f57600080fd5b505af11580156103b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506103d79190810190611c3f565b6040805160a0810182528781526020808201889052818301879052600160608301819052600060808401819052858152908252929092208151805194955091939092610427928492910190611605565b506020828101518051610440926001850192019061166a565b506040820151805161045c9160028401916020909101906116c3565b5060608201516003909101805460809093015115156101000261ff001992151560ff199094169390931791909116919091179055604080518082018252438152600480546001600160a01b03908116602080850191825260025483166000908152808252868120888252909152859020935184555160019390930180549382166001600160a01b0319909416939093179092555491518392909116907ff5a0655bd7247f3a6fa97e71b57c61314566afb5aa8be8eea2c48f4d1b9bf1909061052b908890889088908c906124c5565b60405180910390a3949350505050565b6005546001600160a01b031681565b60016020526000908152604090206003015460ff8082169161010090041682565b6002546001600160a01b031681565b6004546001600160a01b031681565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806105e7576000915050610667565b6040516370a0823160e01b81526001600160a01b038516906370a0823190610613908490600401612387565b60206040518083038186803b15801561062b57600080fd5b505afa15801561063f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506106639190810190611c3f565b9150505b92915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b1580156106c757600080fd5b505afa1580156106db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506106ff9190810190611aa3565b6001600160a01b0316639be2faed30836040518363ffffffff1660e01b815260040161072c929190612395565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061077c9190810190611bbb565b6107985760405162461bcd60e51b81526004016102879061266b565b6107a061170a565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526107e75760009350506108e1565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561082457600080fd5b505afa158015610838573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061085c9190810190611d45565b815160405163277166bf60e11b81526001600160a01b039290921691634ee2cd7e9161088d918a9190600401612429565b60206040518083038186803b1580156108a557600080fd5b505afa1580156108b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108dd9190810190611c3f565b9350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b031661092c5760405162461bcd60e51b81526004016102879061264b565b6000848152600160205260409020600381015460ff1661095e5760405162461bcd60e51b81526004016102879061262b565b6003810154610100900460ff16156109885760405162461bcd60e51b81526004016102879061261b565b83600114156109a75760038101805461ff001916610100179055610a22565b6000858152600160205260408120906109c08282611721565b6109ce600183016000611742565b6109dc600283016000611721565b50600301805461ffff1916905560045460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a35b60045460405186916001600160a01b0316907f25d4c89430c1f10c60c292556941e3e624ec1ec04972a5da46cee1b352429cbe90610a61908890612545565b60405180910390a3506001949350505050565b6004546001600160a01b031615610a9d5760405162461bcd60e51b81526004016102879061260b565b6001600160a01b038416610ac35760405162461bcd60e51b8152600401610287906125eb565b600480546001600160a01b039586166001600160a01b031991821617909155600280549486169482169490941790935560039190915560058054919093169116179055565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610b6257600080fd5b505afa158015610b76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610b9a9190810190611aa3565b6001600160a01b0316639be2faed30836040518363ffffffff1660e01b8152600401610bc7929190612395565b60206040518083038186803b158015610bdf57600080fd5b505afa158015610bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c179190810190611bbb565b610c335760405162461bcd60e51b81526004016102879061266b565b610c3b61170a565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610c82576000935050610d79565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610cbf57600080fd5b505afa158015610cd3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610cf79190810190611d45565b8151604051630981b24d60e41b81526001600160a01b03929092169163981b24d091610d2591600401612545565b60206040518083038186803b158015610d3d57600080fd5b505afa158015610d51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610d759190810190611c3f565b9350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610dc35760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680610df7576000925050610eef565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610e3057600080fd5b505afa158015610e44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e689190810190611aa3565b6001600160a01b031663b9a04cdd888888856040518563ffffffff1660e01b8152600401610e999493929190612561565b602060405180830381600087803b158015610eb357600080fd5b505af1158015610ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610eeb9190810190611bbb565b9250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610f3b5760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680610f6f576000925050611065565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610fa857600080fd5b505afa158015610fbc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fe09190810190611aa3565b6001600160a01b031663eaf994b28787846040518463ffffffff1660e01b815260040161100f9392919061267b565b602060405180830381600087803b15801561102957600080fd5b505af115801561103d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506110619190810190611bbb565b9250505b509392505050565b60035481565b6000818152600160205260409020600381015460ff166110a55760405162461bcd60e51b81526004016102879061262b565b6003810154610100900460ff166110ce5760405162461bcd60e51b81526004016102879061263b565b6005546001600160a01b03161561118c57600554600480546040516364ab2de960e01b81526001600160a01b03938416936364ab2de99361111e938793600185019360028601939216910161248c565b602060405180830381600087803b15801561113857600080fd5b505af115801561114c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506111709190810190611bbb565b61118c5760405162461bcd60e51b8152600401610287906125db565b60038101805460ff191690556004805460408051638da5cb5b60e01b8152905160609360009384936001600160a01b0390911692638da5cb5b92828101926020929190829003018186803b1580156111e357600080fd5b505afa1580156111f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061121b9190810190611aa3565b905060005b845481101561143457606085600101828154811061123a57fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156112c85780601f1061129d576101008083540402835291602001916112c8565b820191906000526020600020905b8154815290600101906020018083116112ab57829003601f168201915b50505050509050826001600160a01b031663d1b7089a8760000184815481106112ed57fe5b60009182526020909120015460045460028a0180546001600160a01b039384169387931691908890811061131d57fe5b90600052602060002001546040518563ffffffff1660e01b815260040161134794939291906123ed565b600060405180830381600087803b15801561136157600080fd5b505af1158015611375573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261139d9190810190611bd9565b95509350836113be5760405162461bcd60e51b81526004016102879061265b565b600454865488916001600160a01b0316907fcb8058ffa6730183a4e6158708b3f64da7110160c23a40db51ef20718c790ec5908990869081106113fd57fe5b600091825260209091200154604051611423916001600160a01b03169086908b906123b0565b60405180910390a350600101611220565b5060008581526001602052604081209061144e8282611721565b61145c600183016000611742565b61146a600283016000611721565b50600301805461ffff1916905560045460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a360045460405186916001600160a01b0316907f253ad9614c337848bbe7dc3b18b439d139ef5787282b5a517ba7296513d1f53390600090a35050505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166115315760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680611565576000925050611065565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561159e57600080fd5b505afa1580156115b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506115d69190810190611aa3565b6001600160a01b0316636e94d2788787846040518463ffffffff1660e01b815260040161100f9392919061267b565b82805482825590600052602060002090810192821561165a579160200282015b8281111561165a57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611625565b50611666929150611760565b5090565b8280548282559060005260206000209081019282156116b7579160200282015b828111156116b757825180516116a7918491602090910190611787565b509160200191906001019061168a565b506116669291506117f4565b8280548282559060005260206000209081019282156116fe579160200282015b828111156116fe5782518255916020019190600101906116e3565b50611666929150611817565b604080518082019091526000808252602082015290565b508054600082559060005260206000209081019061173f9190611817565b50565b508054600082559060005260206000209081019061173f91906117f4565b61178491905b808211156116665780546001600160a01b0319168155600101611766565b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117c857805160ff19168380011785556116fe565b828001600101855582156116fe57918201828111156116fe5782518255916020019190600101906116e3565b61178491905b8082111561166657600061180e8282611831565b506001016117fa565b61178491905b80821115611666576000815560010161181d565b50805460018160011615610100020316600290046000825580601f10611857575061173f565b601f01602090049060005260206000209081019061173f9190611817565b803561066781612820565b805161066781612820565b600082601f83011261189c57600080fd5b81356118af6118aa826126ed565b6126c6565b915081818352602084019350602081019050838560208402820111156118d457600080fd5b60005b8381101561190057816118ea8882611875565b84525060209283019291909101906001016118d7565b5050505092915050565b600082601f83011261191b57600080fd5b81356119296118aa826126ed565b81815260209384019390925082018360005b83811015611900578135860161195188826119f8565b845250602092830192919091019060010161193b565b600082601f83011261197857600080fd5b81356119866118aa826126ed565b915081818352602084019350602081019050838560208402820111156119ab57600080fd5b60005b8381101561190057816119c188826119e2565b84525060209283019291909101906001016119ae565b805161066781612834565b80356106678161283d565b80516106678161283d565b600082601f830112611a0957600080fd5b8135611a176118aa8261270e565b91508082526020830160208301858383011115611a3357600080fd5b611a3e83828461279c565b50505092915050565b600082601f830112611a5857600080fd5b8151611a666118aa8261270e565b91508082526020830160208301858383011115611a8257600080fd5b611a3e8382846127a8565b803561066781612846565b805161066781612846565b600060208284031215611ab557600080fd5b60006106638484611880565b60008060408385031215611ad457600080fd5b6000611ae08585611875565b9250506020611af1858286016119e2565b9150509250929050565b60008060008060808587031215611b1157600080fd5b843567ffffffffffffffff811115611b2857600080fd5b611b348782880161188b565b945050602085013567ffffffffffffffff811115611b5157600080fd5b611b5d8782880161190a565b935050604085013567ffffffffffffffff811115611b7a57600080fd5b611b8687828801611967565b925050606085013567ffffffffffffffff811115611ba357600080fd5b611baf878288016119f8565b91505092959194509250565b600060208284031215611bcd57600080fd5b600061066384846119d7565b60008060408385031215611bec57600080fd5b6000611bf885856119d7565b925050602083015167ffffffffffffffff811115611c1557600080fd5b611af185828601611a47565b600060208284031215611c3357600080fd5b600061066384846119e2565b600060208284031215611c5157600080fd5b600061066384846119ed565b60008060408385031215611c7057600080fd5b6000611ae085856119e2565b60008060008060808587031215611c9257600080fd5b6000611c9e8787611a8d565b9450506020611caf87828801611a8d565b9350506040611cc0878288016119e2565b9250506060611baf87828801611a8d565b60008060008060808587031215611ce757600080fd5b6000611cf38787611a8d565b9450506020611d0487828801611875565b9350506040611d15878288016119e2565b9250506060611baf878288016119e2565b60008060408385031215611d3957600080fd5b6000611ae08585611a8d565b600060208284031215611d5757600080fd5b60006106638484611a98565b600080600060608486031215611d7857600080fd5b6000611d8486866119e2565b9350506020611d9586828701611875565b9250506040611da6868287016119e2565b9150509250925092565b6000611dbc8383611dfe565b505060200190565b6000611dd08383612038565b9392505050565b6000611dd08383612070565b6000611dbc838361202f565b611df881612786565b82525050565b611df88161276b565b6000611e1282612748565b611e1c8185612756565b9350611e2783612736565b8060005b83811015611e55578151611e3f8882611db0565b9750611e4a83612736565b925050600101611e2b565b509495945050505050565b6000611e6b8261274c565b611e758185612756565b9350611e808361273c565b8060005b83811015611e5557611e95826127fe565b611e9f8882611db0565b9750611eaa83612750565b925050600101611e84565b6000611ec082612748565b611eca8185612756565b935083602082028501611edc85612736565b8060005b85811015611f165784840389528151611ef98582611dc4565b9450611f0483612736565b60209a909a0199925050600101611ee0565b5091979650505050505050565b6000611f2e8261274c565b611f388185612756565b935083602082028501611f4a8561273c565b8060005b85811015611f1657848403895281611f668582611dd7565b9450611f7183612750565b60209a909a0199925050600101611f4e565b6000611f8e82612748565b611f988185612756565b9350611fa383612736565b8060005b83811015611e55578151611fbb8882611de3565b9750611fc683612736565b925050600101611fa7565b6000611fdc8261274c565b611fe68185612756565b9350611ff18361273c565b8060005b83811015611e55576120068261280a565b6120108882611de3565b975061201b83612750565b925050600101611ff5565b611df881612776565b611df881611784565b600061204382612748565b61204d8185612756565b935061205d8185602086016127a8565b61206681612816565b9093019392505050565b60008154600181166000811461208d57600181146120b3576108e1565b607f600283041661209e8187612756565b60ff19841681529550506020850192506108e1565b600282046120c18187612756565b95506120cc8561273c565b60005b828110156120eb578154888201526001909101906020016120cf565b9096019695505050505050565b611df88161277b565b611df881612791565b6000612117601683612756565b751c1c9bdc1bdcd9481a5cc81b9bdd08185b1b1bddd95960521b815260200192915050565b6000612149601383612756565b7218d85b1b081a5cc81b9bdd08185b1b1bddd959606a1b815260200192915050565b6000612178601583612756565b746176617461722063616e6e6f74206265207a65726f60581b815260200192915050565b60006121a9604283612756565b7f57726f6e67206c656e677468206f66205f636f6e747261637473546f43616c6c81527f2c205f63616c6c73446174614c656e73206f72205f76616c7565732061727261602082015261797360f01b604082015260600192915050565b6000612213601b83612756565b7f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000815260200192915050565b600061224c601483612756565b7363616e6e6f74206578656375746520747769636560601b815260200192915050565b600061227c601783612756565b7f6d7573742062652061206c6976652070726f706f73616c000000000000000000815260200192915050565b60006122b5602683612756565b7f70726f706f73616c206d7573742070617373656420627920766f74696e67206d815265616368696e6560d01b602082015260400192915050565b60006122fd601283612756565b716f6e6c7920566f74696e674d616368696e6560701b815260200192915050565b600061232b601483612756565b73141c9bdc1bdcd85b0818d85b1b0819985a5b195960621b815260200192915050565b600061235b601883612756565b7f736368656d65206973206e6f7420726567697374657265640000000000000000815260200192915050565b602081016106678284611def565b604081016123a38285611dfe565b611dd06020830184611def565b606081016123be8286611dfe565b81810360208301526123d08185612038565b905081810360408301526123e48184612038565b95945050505050565b608081016123fb8287611dfe565b818103602083015261240d8186612038565b905061241c60408301856120f8565b6123e4606083018461202f565b604081016124378285611dfe565b611dd0602083018461202f565b608080825281016124558187611e07565b905081810360208301526124698186611eb5565b9050818103604083015261247d8185611f83565b90506123e460608301846120f8565b6080808252810161249d8187611e60565b905081810360208301526124b18186611f23565b9050818103604083015261247d8185611fd1565b608080825281016124d68187611eb5565b905081810360208301526124ea8186611f83565b905081810360408301526124fe8185612038565b905081810360608301526125128184611e07565b9695505050505050565b602081016106678284612026565b604081016125388285612026565b611dd06020830184612026565b60208101610667828461202f565b6020810161066782846120f8565b6080810161256f82876120f8565b61257c6020830186611dfe565b612589604083018561202f565b6123e460608301846120f8565b608081016125a48287612101565b6125b1602083018661202f565b6125be6040830185611def565b6123e46060830184611def565b602080825281016106678161210a565b602080825281016106678161213c565b602080825281016106678161216b565b602080825281016106678161219c565b6020808252810161066781612206565b602080825281016106678161223f565b602080825281016106678161226f565b60208082528101610667816122a8565b60208082528101610667816122f0565b602080825281016106678161231e565b602080825281016106678161234e565b60608101612689828661202f565b6126966020830185611dfe565b6126a36040830184611def565b949350505050565b604081016126b9828561202f565b611dd060208301846120f8565b60405181810167ffffffffffffffff811182821017156126e557600080fd5b604052919050565b600067ffffffffffffffff82111561270457600080fd5b5060209081020190565b600067ffffffffffffffff82111561272557600080fd5b506020601f91909101601f19160190565b60200190565b60009081526020902090565b5190565b5490565b60010190565b90815260200190565b6001600160a01b031690565b60006106678261275f565b151590565b60006106678261276b565b60006106678261277b565b600061066782611784565b82818337506000910152565b60005b838110156127c35781810151838201526020016127ab565b838111156127d2576000848401525b50505050565b60006106676127e683611784565b61275f565b60006106676127f983611784565b611784565b600061066782546127d8565b600061066782546127eb565b601f01601f191690565b6128298161276b565b811461173f57600080fd5b61282981612776565b61282981611784565b6128298161277b56fea365627a7a723158203677e075d97e0d34bd6bda9e4961caed402b91f56fa8e053ad9deef1eaee43906c6578706572696d656e74616cf564736f6c63430005110040", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/GenericSchemeMultiCallFactory.json b/contracts/0.0.1-rc.53/GenericSchemeMultiCallFactory.json new file mode 100644 index 00000000..32257d84 --- /dev/null +++ b/contracts/0.0.1-rc.53/GenericSchemeMultiCallFactory.json @@ -0,0 +1,135 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GenericSchemeMultiCallFactory", + "sourceName": "contracts/utils/GenericSchemeMultiCallFactory.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "genericSchemeMultiCall", + "type": "address" + } + ], + "name": "NewGenericSchemeMultiCall", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "CUSTOM", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "FAST", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "NORMAL", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "SLOW", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint8", + "name": "_voteParamsType", + "type": "uint8" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "address[]", + "name": "_contractsWhiteList", + "type": "address[]" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "createGenericSchemeMultiCallSimple", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50613a6a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806327cec8d81461005c578063ae24595c1461007a578063c2c3c27f14610082578063e4c927311461008a578063eb3d86cc14610092575b600080fd5b61006461023d565b6040805160ff9092168252519081900360200190f35b610064610242565b610064610247565b61006461024c565b61022160048036036102208110156100a957600080fd5b60408051610160808201835284356001600160a01b03908116956020810135909116949381013560ff169381019290916101c0830191906060840190600b90839083908082843760009201919091525091946001600160a01b038435169490939092506040810191506020013564010000000081111561012857600080fd5b82018360208201111561013a57600080fd5b8035906020019184602083028401116401000000008311171561015c57600080fd5b91908080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525092959493602081019350359150506401000000008111156101ac57600080fd5b8201836020820111156101be57600080fd5b803590602001918460018302840111640100000000831117156101e057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610251945050505050565b604080516001600160a01b039092168252519081900360200190f35b600381565b600281565b600081565b600181565b600060048660ff16106102955760405162461bcd60e51b8152600401808060200182810382526029815260200180613a0d6029913960400191505060405180910390fd5b60006040516102a39061072f565b604051809103906000f0801580156102bf573d6000803e3d6000fd5b509050600080855111156103ff576040516102d99061073c565b604051809103906000f0801580156102f5573d6000803e3d6000fd5b509050806001600160a01b0316633233efe586866040518363ffffffff1660e01b8152600401808060200180602001838103835285818151815260200191508051906020019060200280838360005b8381101561035c578181015183820152602001610344565b50505050905001838103825284818151815260200191508051906020019080838360005b83811015610398578181015183820152602001610380565b50505050905090810190601f1680156103c55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156103e657600080fd5b505af11580156103fa573d6000803e3d6000fd5b505050505b610407610749565b60ff8916610416575086610422565b61041f8961059f565b90505b604051638894c41b60e01b81526000906001600160a01b038c1690638894c41b9084908b9060040180836101608083838b5b8381101561046c578181015183820152602001610454565b50505050905001826001600160a01b03166001600160a01b0316815260200192505050602060405180830381600087803b1580156104a957600080fd5b505af11580156104bd573d6000803e3d6000fd5b505050506040513d60208110156104d357600080fd5b505160408051630a31ee5b60e41b81526001600160a01b038f811660048301528e8116602483015260448201849052868116606483015291519293509086169163a31ee5b09160848082019260009290919082900301818387803b15801561053a57600080fd5b505af115801561054e573d6000803e3d6000fd5b5050604080516001600160a01b038816815290517fff701be29904f8de1926d90f97ff4138c76b6cb06fa60798fc6a7f1d81fe693a9350908190036020019150a150919a9950505050505050505050565b6105a7610749565b60ff821660011415610628576040518061016001604052806032815260200162093a8081526020016201fa40815260200161a8c081526020016104b08152602001620151808152602001678ac7230489e800008152602001600181526020016802b5e3af16b18800008152602001600a81526020016000815250905061072a565b60ff8216600214156106ab576040518061016001604052806032815260200162278d0081526020016205460081526020016201518081526020016104b081526020016202a30081526020016802b5e3af16b1880000815260200160048152602001680821ab0d44149800008152602001600a81526020016000815250905061072a565b60ff82166003141561072a5760405180610160016040528060328152602001624f1a008152602001620a8c0081526020016202a30081526020016105dc8152602001620546008152602001680ad78ebc5ac6200000815260200160048152602001681b1ae4d6e2ef5000008152602001600a8152602001600081525090505b919050565b6128b28061076983390190565b6109f28061301b83390190565b604051806101600160405280600b90602082028038833950919291505056fe608060405234801561001057600080fd5b50612892806100206000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80639d4c162d11610097578063d29b5d2f11610066578063d29b5d2f14610216578063e5e2116414610229578063e751f27114610231578063f81f8bf61461024457610100565b80639d4c162d146101bb578063a31ee5b0146101db578063b551c373146101f0578063bea75f281461020357610100565b80635aef7de6116100d35780635aef7de61461016c57806360bdbb3f146101745780636b8eb403146101955780639588378e146101a857610100565b806322499a65146101055780632d3525491461012e57806332ed5b12146101435780633edf7ca114610164575b600080fd5b610118610113366004611afb565b610257565b6040516101259190612545565b60405180910390f35b61013661053b565b6040516101259190612553565b610156610151366004611c21565b61054a565b60405161012592919061252a565b61013661056b565b61013661057a565b610187610182366004611ac1565b610589565b6040516101259291906126ab565b6101186101a3366004611d26565b6105b3565b6101186101b6366004611ac1565b61066d565b6101ce6101c9366004611c5d565b6108e9565b604051610125919061251c565b6101ee6101e9366004611c7c565b610a74565b005b6101186101fe366004611c21565b610b08565b6101ce610211366004611cd1565b610d80565b6101ce610224366004611d63565b610ef8565b61011861106d565b6101ee61023f366004611c21565b611073565b6101ce610252366004611d63565b6114ee565b60008351855114801561026b575082518551145b6102905760405162461bcd60e51b8152600401610287906125fb565b60405180910390fd5b6005546001600160a01b031615610348576005546004805460405163da6f0d9b60e01b81526001600160a01b039384169363da6f0d9b936102da938b938b938b9392169101612444565b602060405180830381600087803b1580156102f457600080fd5b505af1158015610308573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061032c9190810190611bbb565b6103485760405162461bcd60e51b8152600401610287906125cb565b6002805460035460048054604051634439bdaf60e11b81526001600160a01b03948516956388737b5e956103859591949193339391169101612596565b602060405180830381600087803b15801561039f57600080fd5b505af11580156103b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506103d79190810190611c3f565b6040805160a0810182528781526020808201889052818301879052600160608301819052600060808401819052858152908252929092208151805194955091939092610427928492910190611605565b506020828101518051610440926001850192019061166a565b506040820151805161045c9160028401916020909101906116c3565b5060608201516003909101805460809093015115156101000261ff001992151560ff199094169390931791909116919091179055604080518082018252438152600480546001600160a01b03908116602080850191825260025483166000908152808252868120888252909152859020935184555160019390930180549382166001600160a01b0319909416939093179092555491518392909116907ff5a0655bd7247f3a6fa97e71b57c61314566afb5aa8be8eea2c48f4d1b9bf1909061052b908890889088908c906124c5565b60405180910390a3949350505050565b6005546001600160a01b031681565b60016020526000908152604090206003015460ff8082169161010090041682565b6002546001600160a01b031681565b6004546001600160a01b031681565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806105e7576000915050610667565b6040516370a0823160e01b81526001600160a01b038516906370a0823190610613908490600401612387565b60206040518083038186803b15801561062b57600080fd5b505afa15801561063f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506106639190810190611c3f565b9150505b92915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b1580156106c757600080fd5b505afa1580156106db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506106ff9190810190611aa3565b6001600160a01b0316639be2faed30836040518363ffffffff1660e01b815260040161072c929190612395565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061077c9190810190611bbb565b6107985760405162461bcd60e51b81526004016102879061266b565b6107a061170a565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526107e75760009350506108e1565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561082457600080fd5b505afa158015610838573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061085c9190810190611d45565b815160405163277166bf60e11b81526001600160a01b039290921691634ee2cd7e9161088d918a9190600401612429565b60206040518083038186803b1580156108a557600080fd5b505afa1580156108b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108dd9190810190611c3f565b9350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b031661092c5760405162461bcd60e51b81526004016102879061264b565b6000848152600160205260409020600381015460ff1661095e5760405162461bcd60e51b81526004016102879061262b565b6003810154610100900460ff16156109885760405162461bcd60e51b81526004016102879061261b565b83600114156109a75760038101805461ff001916610100179055610a22565b6000858152600160205260408120906109c08282611721565b6109ce600183016000611742565b6109dc600283016000611721565b50600301805461ffff1916905560045460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a35b60045460405186916001600160a01b0316907f25d4c89430c1f10c60c292556941e3e624ec1ec04972a5da46cee1b352429cbe90610a61908890612545565b60405180910390a3506001949350505050565b6004546001600160a01b031615610a9d5760405162461bcd60e51b81526004016102879061260b565b6001600160a01b038416610ac35760405162461bcd60e51b8152600401610287906125eb565b600480546001600160a01b039586166001600160a01b031991821617909155600280549486169482169490941790935560039190915560058054919093169116179055565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610b6257600080fd5b505afa158015610b76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610b9a9190810190611aa3565b6001600160a01b0316639be2faed30836040518363ffffffff1660e01b8152600401610bc7929190612395565b60206040518083038186803b158015610bdf57600080fd5b505afa158015610bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c179190810190611bbb565b610c335760405162461bcd60e51b81526004016102879061266b565b610c3b61170a565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610c82576000935050610d79565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610cbf57600080fd5b505afa158015610cd3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610cf79190810190611d45565b8151604051630981b24d60e41b81526001600160a01b03929092169163981b24d091610d2591600401612545565b60206040518083038186803b158015610d3d57600080fd5b505afa158015610d51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610d759190810190611c3f565b9350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610dc35760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680610df7576000925050610eef565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610e3057600080fd5b505afa158015610e44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e689190810190611aa3565b6001600160a01b031663b9a04cdd888888856040518563ffffffff1660e01b8152600401610e999493929190612561565b602060405180830381600087803b158015610eb357600080fd5b505af1158015610ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610eeb9190810190611bbb565b9250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610f3b5760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680610f6f576000925050611065565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610fa857600080fd5b505afa158015610fbc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fe09190810190611aa3565b6001600160a01b031663eaf994b28787846040518463ffffffff1660e01b815260040161100f9392919061267b565b602060405180830381600087803b15801561102957600080fd5b505af115801561103d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506110619190810190611bbb565b9250505b509392505050565b60035481565b6000818152600160205260409020600381015460ff166110a55760405162461bcd60e51b81526004016102879061262b565b6003810154610100900460ff166110ce5760405162461bcd60e51b81526004016102879061263b565b6005546001600160a01b03161561118c57600554600480546040516364ab2de960e01b81526001600160a01b03938416936364ab2de99361111e938793600185019360028601939216910161248c565b602060405180830381600087803b15801561113857600080fd5b505af115801561114c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506111709190810190611bbb565b61118c5760405162461bcd60e51b8152600401610287906125db565b60038101805460ff191690556004805460408051638da5cb5b60e01b8152905160609360009384936001600160a01b0390911692638da5cb5b92828101926020929190829003018186803b1580156111e357600080fd5b505afa1580156111f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061121b9190810190611aa3565b905060005b845481101561143457606085600101828154811061123a57fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156112c85780601f1061129d576101008083540402835291602001916112c8565b820191906000526020600020905b8154815290600101906020018083116112ab57829003601f168201915b50505050509050826001600160a01b031663d1b7089a8760000184815481106112ed57fe5b60009182526020909120015460045460028a0180546001600160a01b039384169387931691908890811061131d57fe5b90600052602060002001546040518563ffffffff1660e01b815260040161134794939291906123ed565b600060405180830381600087803b15801561136157600080fd5b505af1158015611375573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261139d9190810190611bd9565b95509350836113be5760405162461bcd60e51b81526004016102879061265b565b600454865488916001600160a01b0316907fcb8058ffa6730183a4e6158708b3f64da7110160c23a40db51ef20718c790ec5908990869081106113fd57fe5b600091825260209091200154604051611423916001600160a01b03169086908b906123b0565b60405180910390a350600101611220565b5060008581526001602052604081209061144e8282611721565b61145c600183016000611742565b61146a600283016000611721565b50600301805461ffff1916905560045460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a360045460405186916001600160a01b0316907f253ad9614c337848bbe7dc3b18b439d139ef5787282b5a517ba7296513d1f53390600090a35050505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166115315760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680611565576000925050611065565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561159e57600080fd5b505afa1580156115b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506115d69190810190611aa3565b6001600160a01b0316636e94d2788787846040518463ffffffff1660e01b815260040161100f9392919061267b565b82805482825590600052602060002090810192821561165a579160200282015b8281111561165a57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611625565b50611666929150611760565b5090565b8280548282559060005260206000209081019282156116b7579160200282015b828111156116b757825180516116a7918491602090910190611787565b509160200191906001019061168a565b506116669291506117f4565b8280548282559060005260206000209081019282156116fe579160200282015b828111156116fe5782518255916020019190600101906116e3565b50611666929150611817565b604080518082019091526000808252602082015290565b508054600082559060005260206000209081019061173f9190611817565b50565b508054600082559060005260206000209081019061173f91906117f4565b61178491905b808211156116665780546001600160a01b0319168155600101611766565b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117c857805160ff19168380011785556116fe565b828001600101855582156116fe57918201828111156116fe5782518255916020019190600101906116e3565b61178491905b8082111561166657600061180e8282611831565b506001016117fa565b61178491905b80821115611666576000815560010161181d565b50805460018160011615610100020316600290046000825580601f10611857575061173f565b601f01602090049060005260206000209081019061173f9190611817565b803561066781612820565b805161066781612820565b600082601f83011261189c57600080fd5b81356118af6118aa826126ed565b6126c6565b915081818352602084019350602081019050838560208402820111156118d457600080fd5b60005b8381101561190057816118ea8882611875565b84525060209283019291909101906001016118d7565b5050505092915050565b600082601f83011261191b57600080fd5b81356119296118aa826126ed565b81815260209384019390925082018360005b83811015611900578135860161195188826119f8565b845250602092830192919091019060010161193b565b600082601f83011261197857600080fd5b81356119866118aa826126ed565b915081818352602084019350602081019050838560208402820111156119ab57600080fd5b60005b8381101561190057816119c188826119e2565b84525060209283019291909101906001016119ae565b805161066781612834565b80356106678161283d565b80516106678161283d565b600082601f830112611a0957600080fd5b8135611a176118aa8261270e565b91508082526020830160208301858383011115611a3357600080fd5b611a3e83828461279c565b50505092915050565b600082601f830112611a5857600080fd5b8151611a666118aa8261270e565b91508082526020830160208301858383011115611a8257600080fd5b611a3e8382846127a8565b803561066781612846565b805161066781612846565b600060208284031215611ab557600080fd5b60006106638484611880565b60008060408385031215611ad457600080fd5b6000611ae08585611875565b9250506020611af1858286016119e2565b9150509250929050565b60008060008060808587031215611b1157600080fd5b843567ffffffffffffffff811115611b2857600080fd5b611b348782880161188b565b945050602085013567ffffffffffffffff811115611b5157600080fd5b611b5d8782880161190a565b935050604085013567ffffffffffffffff811115611b7a57600080fd5b611b8687828801611967565b925050606085013567ffffffffffffffff811115611ba357600080fd5b611baf878288016119f8565b91505092959194509250565b600060208284031215611bcd57600080fd5b600061066384846119d7565b60008060408385031215611bec57600080fd5b6000611bf885856119d7565b925050602083015167ffffffffffffffff811115611c1557600080fd5b611af185828601611a47565b600060208284031215611c3357600080fd5b600061066384846119e2565b600060208284031215611c5157600080fd5b600061066384846119ed565b60008060408385031215611c7057600080fd5b6000611ae085856119e2565b60008060008060808587031215611c9257600080fd5b6000611c9e8787611a8d565b9450506020611caf87828801611a8d565b9350506040611cc0878288016119e2565b9250506060611baf87828801611a8d565b60008060008060808587031215611ce757600080fd5b6000611cf38787611a8d565b9450506020611d0487828801611875565b9350506040611d15878288016119e2565b9250506060611baf878288016119e2565b60008060408385031215611d3957600080fd5b6000611ae08585611a8d565b600060208284031215611d5757600080fd5b60006106638484611a98565b600080600060608486031215611d7857600080fd5b6000611d8486866119e2565b9350506020611d9586828701611875565b9250506040611da6868287016119e2565b9150509250925092565b6000611dbc8383611dfe565b505060200190565b6000611dd08383612038565b9392505050565b6000611dd08383612070565b6000611dbc838361202f565b611df881612786565b82525050565b611df88161276b565b6000611e1282612748565b611e1c8185612756565b9350611e2783612736565b8060005b83811015611e55578151611e3f8882611db0565b9750611e4a83612736565b925050600101611e2b565b509495945050505050565b6000611e6b8261274c565b611e758185612756565b9350611e808361273c565b8060005b83811015611e5557611e95826127fe565b611e9f8882611db0565b9750611eaa83612750565b925050600101611e84565b6000611ec082612748565b611eca8185612756565b935083602082028501611edc85612736565b8060005b85811015611f165784840389528151611ef98582611dc4565b9450611f0483612736565b60209a909a0199925050600101611ee0565b5091979650505050505050565b6000611f2e8261274c565b611f388185612756565b935083602082028501611f4a8561273c565b8060005b85811015611f1657848403895281611f668582611dd7565b9450611f7183612750565b60209a909a0199925050600101611f4e565b6000611f8e82612748565b611f988185612756565b9350611fa383612736565b8060005b83811015611e55578151611fbb8882611de3565b9750611fc683612736565b925050600101611fa7565b6000611fdc8261274c565b611fe68185612756565b9350611ff18361273c565b8060005b83811015611e55576120068261280a565b6120108882611de3565b975061201b83612750565b925050600101611ff5565b611df881612776565b611df881611784565b600061204382612748565b61204d8185612756565b935061205d8185602086016127a8565b61206681612816565b9093019392505050565b60008154600181166000811461208d57600181146120b3576108e1565b607f600283041661209e8187612756565b60ff19841681529550506020850192506108e1565b600282046120c18187612756565b95506120cc8561273c565b60005b828110156120eb578154888201526001909101906020016120cf565b9096019695505050505050565b611df88161277b565b611df881612791565b6000612117601683612756565b751c1c9bdc1bdcd9481a5cc81b9bdd08185b1b1bddd95960521b815260200192915050565b6000612149601383612756565b7218d85b1b081a5cc81b9bdd08185b1b1bddd959606a1b815260200192915050565b6000612178601583612756565b746176617461722063616e6e6f74206265207a65726f60581b815260200192915050565b60006121a9604283612756565b7f57726f6e67206c656e677468206f66205f636f6e747261637473546f43616c6c81527f2c205f63616c6c73446174614c656e73206f72205f76616c7565732061727261602082015261797360f01b604082015260600192915050565b6000612213601b83612756565b7f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000815260200192915050565b600061224c601483612756565b7363616e6e6f74206578656375746520747769636560601b815260200192915050565b600061227c601783612756565b7f6d7573742062652061206c6976652070726f706f73616c000000000000000000815260200192915050565b60006122b5602683612756565b7f70726f706f73616c206d7573742070617373656420627920766f74696e67206d815265616368696e6560d01b602082015260400192915050565b60006122fd601283612756565b716f6e6c7920566f74696e674d616368696e6560701b815260200192915050565b600061232b601483612756565b73141c9bdc1bdcd85b0818d85b1b0819985a5b195960621b815260200192915050565b600061235b601883612756565b7f736368656d65206973206e6f7420726567697374657265640000000000000000815260200192915050565b602081016106678284611def565b604081016123a38285611dfe565b611dd06020830184611def565b606081016123be8286611dfe565b81810360208301526123d08185612038565b905081810360408301526123e48184612038565b95945050505050565b608081016123fb8287611dfe565b818103602083015261240d8186612038565b905061241c60408301856120f8565b6123e4606083018461202f565b604081016124378285611dfe565b611dd0602083018461202f565b608080825281016124558187611e07565b905081810360208301526124698186611eb5565b9050818103604083015261247d8185611f83565b90506123e460608301846120f8565b6080808252810161249d8187611e60565b905081810360208301526124b18186611f23565b9050818103604083015261247d8185611fd1565b608080825281016124d68187611eb5565b905081810360208301526124ea8186611f83565b905081810360408301526124fe8185612038565b905081810360608301526125128184611e07565b9695505050505050565b602081016106678284612026565b604081016125388285612026565b611dd06020830184612026565b60208101610667828461202f565b6020810161066782846120f8565b6080810161256f82876120f8565b61257c6020830186611dfe565b612589604083018561202f565b6123e460608301846120f8565b608081016125a48287612101565b6125b1602083018661202f565b6125be6040830185611def565b6123e46060830184611def565b602080825281016106678161210a565b602080825281016106678161213c565b602080825281016106678161216b565b602080825281016106678161219c565b6020808252810161066781612206565b602080825281016106678161223f565b602080825281016106678161226f565b60208082528101610667816122a8565b60208082528101610667816122f0565b602080825281016106678161231e565b602080825281016106678161234e565b60608101612689828661202f565b6126966020830185611dfe565b6126a36040830184611def565b949350505050565b604081016126b9828561202f565b611dd060208301846120f8565b60405181810167ffffffffffffffff811182821017156126e557600080fd5b604052919050565b600067ffffffffffffffff82111561270457600080fd5b5060209081020190565b600067ffffffffffffffff82111561272557600080fd5b506020601f91909101601f19160190565b60200190565b60009081526020902090565b5190565b5490565b60010190565b90815260200190565b6001600160a01b031690565b60006106678261275f565b151590565b60006106678261276b565b60006106678261277b565b600061066782611784565b82818337506000910152565b60005b838110156127c35781810151838201526020016127ab565b838111156127d2576000848401525b50505050565b60006106676127e683611784565b61275f565b60006106676127f983611784565b611784565b600061066782546127d8565b600061066782546127eb565b601f01601f191690565b6128298161276b565b811461173f57600080fd5b61282981612776565b61282981611784565b6128298161277b56fea365627a7a723158203677e075d97e0d34bd6bda9e4961caed402b91f56fa8e053ad9deef1eaee43906c6578706572696d656e74616cf564736f6c63430005110040608060405234801561001057600080fd5b506109d2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806385dcee931161005b57806385dcee93146100e8578063b7f59236146100fd578063da6f0d9b1461011d578063e5e48a341461013057610088565b8063158ef93e1461008d5780633233efe5146100ab5780633b7fdf09146100c057806364ab2de9146100d5575b600080fd5b610095610143565b6040516100a291906108b3565b60405180910390f35b6100be6100b93660046106d0565b61014c565b005b6100c8610208565b6040516100a2919061089b565b6100956100e336600461061a565b61026b565b6100f06102ec565b6040516100a291906108c1565b61011061010b366004610740565b610379565b6040516100a2919061088d565b61009561012b36600461061a565b6103a0565b61009561013e3660046105f4565b610412565b60035460ff1681565b60035460ff16156101785760405162461bcd60e51b815260040161016f906108d2565b60405180910390fd5b6003805460ff1916600117905560005b838110156101e7576001600260008787858181106101a257fe5b90506020020160206101b791908101906105f4565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055600101610188565b506101f460008585610427565b506102016001838361048a565b5050505050565b6060600080548060200260200160405190810160405280929190818152602001828054801561026057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610242575b505050505090505b90565b6000805b878110156102dd57600260008a8a8481811061028757fe5b905060200201602061029c91908101906105f4565b6001600160a01b0316815260208101919091526040016000205460ff166102d55760405162461bcd60e51b815260040161016f906108e2565b60010161026f565b50600198975050505050505050565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156103715780601f1061034657610100808354040283529160200191610371565b820191906000526020600020905b81548152906001019060200180831161035457829003601f168201915b505050505081565b6000818154811061038657fe5b6000918252602090912001546001600160a01b0316905081565b6000805b878110156102dd57600260008a8a848181106103bc57fe5b90506020020160206103d191908101906105f4565b6001600160a01b0316815260208101919091526040016000205460ff1661040a5760405162461bcd60e51b815260040161016f906108e2565b6001016103a4565b60026020526000908152604090205460ff1681565b82805482825590600052602060002090810192821561047a579160200282015b8281111561047a5781546001600160a01b0319166001600160a01b03843516178255602090920191600190910190610447565b50610486929150610504565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106104cb5782800160ff198235161785556104f8565b828001600101855582156104f8579182015b828111156104f85782358255916020019190600101906104dd565b50610486929150610528565b61026891905b808211156104865780546001600160a01b031916815560010161050a565b61026891905b80821115610486576000815560010161052e565b803561054d81610966565b92915050565b60008083601f84011261056557600080fd5b50813567ffffffffffffffff81111561057d57600080fd5b60208301915083602082028301111561059557600080fd5b9250929050565b803561054d8161097d565b60008083601f8401126105b957600080fd5b50813567ffffffffffffffff8111156105d157600080fd5b60208301915083600182028301111561059557600080fd5b803561054d81610986565b60006020828403121561060657600080fd5b60006106128484610542565b949350505050565b60008060008060008060006080888a03121561063557600080fd5b873567ffffffffffffffff81111561064c57600080fd5b6106588a828b01610553565b9750975050602088013567ffffffffffffffff81111561067757600080fd5b6106838a828b01610553565b9550955050604088013567ffffffffffffffff8111156106a257600080fd5b6106ae8a828b01610553565b935093505060606106c18a828b0161059c565b91505092959891949750929550565b600080600080604085870312156106e657600080fd5b843567ffffffffffffffff8111156106fd57600080fd5b61070987828801610553565b9450945050602085013567ffffffffffffffff81111561072857600080fd5b610734878288016105a7565b95989497509550505050565b60006020828403121561075257600080fd5b600061061284846105e9565b600061076a8383610772565b505060200190565b61077b81610905565b82525050565b600061078c826108f8565b61079681856108fc565b93506107a1836108f2565b8060005b838110156107cf5781516107b9888261075e565b97506107c4836108f2565b9250506001016107a5565b509495945050505050565b61077b81610910565b60006107ee826108f8565b6107f881856108fc565b935061080881856020860161092c565b6108118161095c565b9093019392505050565b60006108286017836108fc565b7f63616e6e6f7420696e697469616c697a65207477696365000000000000000000815260200192915050565b60006108616018836108fc565b7f636f6e7472616374206e6f742077686974656c69737465640000000000000000815260200192915050565b6020810161054d8284610772565b602080825281016108ac8184610781565b9392505050565b6020810161054d82846107da565b602080825281016108ac81846107e3565b6020808252810161054d8161081b565b6020808252810161054d81610854565b60200190565b5190565b90815260200190565b600061054d82610920565b151590565b600061054d82610905565b6001600160a01b031690565b60005b8381101561094757818101518382015260200161092f565b83811115610956576000848401525b50505050565b601f01601f191690565b61096f81610905565b811461097a57600080fd5b50565b61096f81610915565b61096f8161026856fea365627a7a72315820901377e5d27152b2fd61b0aa3d1aba073dffa89124914d2256b63ae8f2e4c0966c6578706572696d656e74616cf564736f6c63430005110040566f746520706172616d7320747970652073706563696669656420646f6573206e6f74206578697374a265627a7a72315820f98ded8589c80f404d271075a993c8293bc4a72a10e307c74bb2dca8fd30087864736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c806327cec8d81461005c578063ae24595c1461007a578063c2c3c27f14610082578063e4c927311461008a578063eb3d86cc14610092575b600080fd5b61006461023d565b6040805160ff9092168252519081900360200190f35b610064610242565b610064610247565b61006461024c565b61022160048036036102208110156100a957600080fd5b60408051610160808201835284356001600160a01b03908116956020810135909116949381013560ff169381019290916101c0830191906060840190600b90839083908082843760009201919091525091946001600160a01b038435169490939092506040810191506020013564010000000081111561012857600080fd5b82018360208201111561013a57600080fd5b8035906020019184602083028401116401000000008311171561015c57600080fd5b91908080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525092959493602081019350359150506401000000008111156101ac57600080fd5b8201836020820111156101be57600080fd5b803590602001918460018302840111640100000000831117156101e057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610251945050505050565b604080516001600160a01b039092168252519081900360200190f35b600381565b600281565b600081565b600181565b600060048660ff16106102955760405162461bcd60e51b8152600401808060200182810382526029815260200180613a0d6029913960400191505060405180910390fd5b60006040516102a39061072f565b604051809103906000f0801580156102bf573d6000803e3d6000fd5b509050600080855111156103ff576040516102d99061073c565b604051809103906000f0801580156102f5573d6000803e3d6000fd5b509050806001600160a01b0316633233efe586866040518363ffffffff1660e01b8152600401808060200180602001838103835285818151815260200191508051906020019060200280838360005b8381101561035c578181015183820152602001610344565b50505050905001838103825284818151815260200191508051906020019080838360005b83811015610398578181015183820152602001610380565b50505050905090810190601f1680156103c55780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b1580156103e657600080fd5b505af11580156103fa573d6000803e3d6000fd5b505050505b610407610749565b60ff8916610416575086610422565b61041f8961059f565b90505b604051638894c41b60e01b81526000906001600160a01b038c1690638894c41b9084908b9060040180836101608083838b5b8381101561046c578181015183820152602001610454565b50505050905001826001600160a01b03166001600160a01b0316815260200192505050602060405180830381600087803b1580156104a957600080fd5b505af11580156104bd573d6000803e3d6000fd5b505050506040513d60208110156104d357600080fd5b505160408051630a31ee5b60e41b81526001600160a01b038f811660048301528e8116602483015260448201849052868116606483015291519293509086169163a31ee5b09160848082019260009290919082900301818387803b15801561053a57600080fd5b505af115801561054e573d6000803e3d6000fd5b5050604080516001600160a01b038816815290517fff701be29904f8de1926d90f97ff4138c76b6cb06fa60798fc6a7f1d81fe693a9350908190036020019150a150919a9950505050505050505050565b6105a7610749565b60ff821660011415610628576040518061016001604052806032815260200162093a8081526020016201fa40815260200161a8c081526020016104b08152602001620151808152602001678ac7230489e800008152602001600181526020016802b5e3af16b18800008152602001600a81526020016000815250905061072a565b60ff8216600214156106ab576040518061016001604052806032815260200162278d0081526020016205460081526020016201518081526020016104b081526020016202a30081526020016802b5e3af16b1880000815260200160048152602001680821ab0d44149800008152602001600a81526020016000815250905061072a565b60ff82166003141561072a5760405180610160016040528060328152602001624f1a008152602001620a8c0081526020016202a30081526020016105dc8152602001620546008152602001680ad78ebc5ac6200000815260200160048152602001681b1ae4d6e2ef5000008152602001600a8152602001600081525090505b919050565b6128b28061076983390190565b6109f28061301b83390190565b604051806101600160405280600b90602082028038833950919291505056fe608060405234801561001057600080fd5b50612892806100206000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80639d4c162d11610097578063d29b5d2f11610066578063d29b5d2f14610216578063e5e2116414610229578063e751f27114610231578063f81f8bf61461024457610100565b80639d4c162d146101bb578063a31ee5b0146101db578063b551c373146101f0578063bea75f281461020357610100565b80635aef7de6116100d35780635aef7de61461016c57806360bdbb3f146101745780636b8eb403146101955780639588378e146101a857610100565b806322499a65146101055780632d3525491461012e57806332ed5b12146101435780633edf7ca114610164575b600080fd5b610118610113366004611afb565b610257565b6040516101259190612545565b60405180910390f35b61013661053b565b6040516101259190612553565b610156610151366004611c21565b61054a565b60405161012592919061252a565b61013661056b565b61013661057a565b610187610182366004611ac1565b610589565b6040516101259291906126ab565b6101186101a3366004611d26565b6105b3565b6101186101b6366004611ac1565b61066d565b6101ce6101c9366004611c5d565b6108e9565b604051610125919061251c565b6101ee6101e9366004611c7c565b610a74565b005b6101186101fe366004611c21565b610b08565b6101ce610211366004611cd1565b610d80565b6101ce610224366004611d63565b610ef8565b61011861106d565b6101ee61023f366004611c21565b611073565b6101ce610252366004611d63565b6114ee565b60008351855114801561026b575082518551145b6102905760405162461bcd60e51b8152600401610287906125fb565b60405180910390fd5b6005546001600160a01b031615610348576005546004805460405163da6f0d9b60e01b81526001600160a01b039384169363da6f0d9b936102da938b938b938b9392169101612444565b602060405180830381600087803b1580156102f457600080fd5b505af1158015610308573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061032c9190810190611bbb565b6103485760405162461bcd60e51b8152600401610287906125cb565b6002805460035460048054604051634439bdaf60e11b81526001600160a01b03948516956388737b5e956103859591949193339391169101612596565b602060405180830381600087803b15801561039f57600080fd5b505af11580156103b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506103d79190810190611c3f565b6040805160a0810182528781526020808201889052818301879052600160608301819052600060808401819052858152908252929092208151805194955091939092610427928492910190611605565b506020828101518051610440926001850192019061166a565b506040820151805161045c9160028401916020909101906116c3565b5060608201516003909101805460809093015115156101000261ff001992151560ff199094169390931791909116919091179055604080518082018252438152600480546001600160a01b03908116602080850191825260025483166000908152808252868120888252909152859020935184555160019390930180549382166001600160a01b0319909416939093179092555491518392909116907ff5a0655bd7247f3a6fa97e71b57c61314566afb5aa8be8eea2c48f4d1b9bf1909061052b908890889088908c906124c5565b60405180910390a3949350505050565b6005546001600160a01b031681565b60016020526000908152604090206003015460ff8082169161010090041682565b6002546001600160a01b031681565b6004546001600160a01b031681565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806105e7576000915050610667565b6040516370a0823160e01b81526001600160a01b038516906370a0823190610613908490600401612387565b60206040518083038186803b15801561062b57600080fd5b505afa15801561063f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506106639190810190611c3f565b9150505b92915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b1580156106c757600080fd5b505afa1580156106db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506106ff9190810190611aa3565b6001600160a01b0316639be2faed30836040518363ffffffff1660e01b815260040161072c929190612395565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061077c9190810190611bbb565b6107985760405162461bcd60e51b81526004016102879061266b565b6107a061170a565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526107e75760009350506108e1565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561082457600080fd5b505afa158015610838573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061085c9190810190611d45565b815160405163277166bf60e11b81526001600160a01b039290921691634ee2cd7e9161088d918a9190600401612429565b60206040518083038186803b1580156108a557600080fd5b505afa1580156108b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506108dd9190810190611c3f565b9350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b031661092c5760405162461bcd60e51b81526004016102879061264b565b6000848152600160205260409020600381015460ff1661095e5760405162461bcd60e51b81526004016102879061262b565b6003810154610100900460ff16156109885760405162461bcd60e51b81526004016102879061261b565b83600114156109a75760038101805461ff001916610100179055610a22565b6000858152600160205260408120906109c08282611721565b6109ce600183016000611742565b6109dc600283016000611721565b50600301805461ffff1916905560045460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a35b60045460405186916001600160a01b0316907f25d4c89430c1f10c60c292556941e3e624ec1ec04972a5da46cee1b352429cbe90610a61908890612545565b60405180910390a3506001949350505050565b6004546001600160a01b031615610a9d5760405162461bcd60e51b81526004016102879061260b565b6001600160a01b038416610ac35760405162461bcd60e51b8152600401610287906125eb565b600480546001600160a01b039586166001600160a01b031991821617909155600280549486169482169490941790935560039190915560058054919093169116179055565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610b6257600080fd5b505afa158015610b76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610b9a9190810190611aa3565b6001600160a01b0316639be2faed30836040518363ffffffff1660e01b8152600401610bc7929190612395565b60206040518083038186803b158015610bdf57600080fd5b505afa158015610bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610c179190810190611bbb565b610c335760405162461bcd60e51b81526004016102879061266b565b610c3b61170a565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610c82576000935050610d79565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610cbf57600080fd5b505afa158015610cd3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610cf79190810190611d45565b8151604051630981b24d60e41b81526001600160a01b03929092169163981b24d091610d2591600401612545565b60206040518083038186803b158015610d3d57600080fd5b505afa158015610d51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610d759190810190611c3f565b9350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610dc35760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680610df7576000925050610eef565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610e3057600080fd5b505afa158015610e44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e689190810190611aa3565b6001600160a01b031663b9a04cdd888888856040518563ffffffff1660e01b8152600401610e999493929190612561565b602060405180830381600087803b158015610eb357600080fd5b505af1158015610ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610eeb9190810190611bbb565b9250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610f3b5760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680610f6f576000925050611065565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610fa857600080fd5b505afa158015610fbc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610fe09190810190611aa3565b6001600160a01b031663eaf994b28787846040518463ffffffff1660e01b815260040161100f9392919061267b565b602060405180830381600087803b15801561102957600080fd5b505af115801561103d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506110619190810190611bbb565b9250505b509392505050565b60035481565b6000818152600160205260409020600381015460ff166110a55760405162461bcd60e51b81526004016102879061262b565b6003810154610100900460ff166110ce5760405162461bcd60e51b81526004016102879061263b565b6005546001600160a01b03161561118c57600554600480546040516364ab2de960e01b81526001600160a01b03938416936364ab2de99361111e938793600185019360028601939216910161248c565b602060405180830381600087803b15801561113857600080fd5b505af115801561114c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506111709190810190611bbb565b61118c5760405162461bcd60e51b8152600401610287906125db565b60038101805460ff191690556004805460408051638da5cb5b60e01b8152905160609360009384936001600160a01b0390911692638da5cb5b92828101926020929190829003018186803b1580156111e357600080fd5b505afa1580156111f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061121b9190810190611aa3565b905060005b845481101561143457606085600101828154811061123a57fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156112c85780601f1061129d576101008083540402835291602001916112c8565b820191906000526020600020905b8154815290600101906020018083116112ab57829003601f168201915b50505050509050826001600160a01b031663d1b7089a8760000184815481106112ed57fe5b60009182526020909120015460045460028a0180546001600160a01b039384169387931691908890811061131d57fe5b90600052602060002001546040518563ffffffff1660e01b815260040161134794939291906123ed565b600060405180830381600087803b15801561136157600080fd5b505af1158015611375573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261139d9190810190611bd9565b95509350836113be5760405162461bcd60e51b81526004016102879061265b565b600454865488916001600160a01b0316907fcb8058ffa6730183a4e6158708b3f64da7110160c23a40db51ef20718c790ec5908990869081106113fd57fe5b600091825260209091200154604051611423916001600160a01b03169086908b906123b0565b60405180910390a350600101611220565b5060008581526001602052604081209061144e8282611721565b61145c600183016000611742565b61146a600283016000611721565b50600301805461ffff1916905560045460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a360045460405186916001600160a01b0316907f253ad9614c337848bbe7dc3b18b439d139ef5787282b5a517ba7296513d1f53390600090a35050505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166115315760405162461bcd60e51b81526004016102879061264b565b336000908152602081815260408083208684529091529020600101546001600160a01b031680611565576000925050611065565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561159e57600080fd5b505afa1580156115b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506115d69190810190611aa3565b6001600160a01b0316636e94d2788787846040518463ffffffff1660e01b815260040161100f9392919061267b565b82805482825590600052602060002090810192821561165a579160200282015b8281111561165a57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611625565b50611666929150611760565b5090565b8280548282559060005260206000209081019282156116b7579160200282015b828111156116b757825180516116a7918491602090910190611787565b509160200191906001019061168a565b506116669291506117f4565b8280548282559060005260206000209081019282156116fe579160200282015b828111156116fe5782518255916020019190600101906116e3565b50611666929150611817565b604080518082019091526000808252602082015290565b508054600082559060005260206000209081019061173f9190611817565b50565b508054600082559060005260206000209081019061173f91906117f4565b61178491905b808211156116665780546001600160a01b0319168155600101611766565b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117c857805160ff19168380011785556116fe565b828001600101855582156116fe57918201828111156116fe5782518255916020019190600101906116e3565b61178491905b8082111561166657600061180e8282611831565b506001016117fa565b61178491905b80821115611666576000815560010161181d565b50805460018160011615610100020316600290046000825580601f10611857575061173f565b601f01602090049060005260206000209081019061173f9190611817565b803561066781612820565b805161066781612820565b600082601f83011261189c57600080fd5b81356118af6118aa826126ed565b6126c6565b915081818352602084019350602081019050838560208402820111156118d457600080fd5b60005b8381101561190057816118ea8882611875565b84525060209283019291909101906001016118d7565b5050505092915050565b600082601f83011261191b57600080fd5b81356119296118aa826126ed565b81815260209384019390925082018360005b83811015611900578135860161195188826119f8565b845250602092830192919091019060010161193b565b600082601f83011261197857600080fd5b81356119866118aa826126ed565b915081818352602084019350602081019050838560208402820111156119ab57600080fd5b60005b8381101561190057816119c188826119e2565b84525060209283019291909101906001016119ae565b805161066781612834565b80356106678161283d565b80516106678161283d565b600082601f830112611a0957600080fd5b8135611a176118aa8261270e565b91508082526020830160208301858383011115611a3357600080fd5b611a3e83828461279c565b50505092915050565b600082601f830112611a5857600080fd5b8151611a666118aa8261270e565b91508082526020830160208301858383011115611a8257600080fd5b611a3e8382846127a8565b803561066781612846565b805161066781612846565b600060208284031215611ab557600080fd5b60006106638484611880565b60008060408385031215611ad457600080fd5b6000611ae08585611875565b9250506020611af1858286016119e2565b9150509250929050565b60008060008060808587031215611b1157600080fd5b843567ffffffffffffffff811115611b2857600080fd5b611b348782880161188b565b945050602085013567ffffffffffffffff811115611b5157600080fd5b611b5d8782880161190a565b935050604085013567ffffffffffffffff811115611b7a57600080fd5b611b8687828801611967565b925050606085013567ffffffffffffffff811115611ba357600080fd5b611baf878288016119f8565b91505092959194509250565b600060208284031215611bcd57600080fd5b600061066384846119d7565b60008060408385031215611bec57600080fd5b6000611bf885856119d7565b925050602083015167ffffffffffffffff811115611c1557600080fd5b611af185828601611a47565b600060208284031215611c3357600080fd5b600061066384846119e2565b600060208284031215611c5157600080fd5b600061066384846119ed565b60008060408385031215611c7057600080fd5b6000611ae085856119e2565b60008060008060808587031215611c9257600080fd5b6000611c9e8787611a8d565b9450506020611caf87828801611a8d565b9350506040611cc0878288016119e2565b9250506060611baf87828801611a8d565b60008060008060808587031215611ce757600080fd5b6000611cf38787611a8d565b9450506020611d0487828801611875565b9350506040611d15878288016119e2565b9250506060611baf878288016119e2565b60008060408385031215611d3957600080fd5b6000611ae08585611a8d565b600060208284031215611d5757600080fd5b60006106638484611a98565b600080600060608486031215611d7857600080fd5b6000611d8486866119e2565b9350506020611d9586828701611875565b9250506040611da6868287016119e2565b9150509250925092565b6000611dbc8383611dfe565b505060200190565b6000611dd08383612038565b9392505050565b6000611dd08383612070565b6000611dbc838361202f565b611df881612786565b82525050565b611df88161276b565b6000611e1282612748565b611e1c8185612756565b9350611e2783612736565b8060005b83811015611e55578151611e3f8882611db0565b9750611e4a83612736565b925050600101611e2b565b509495945050505050565b6000611e6b8261274c565b611e758185612756565b9350611e808361273c565b8060005b83811015611e5557611e95826127fe565b611e9f8882611db0565b9750611eaa83612750565b925050600101611e84565b6000611ec082612748565b611eca8185612756565b935083602082028501611edc85612736565b8060005b85811015611f165784840389528151611ef98582611dc4565b9450611f0483612736565b60209a909a0199925050600101611ee0565b5091979650505050505050565b6000611f2e8261274c565b611f388185612756565b935083602082028501611f4a8561273c565b8060005b85811015611f1657848403895281611f668582611dd7565b9450611f7183612750565b60209a909a0199925050600101611f4e565b6000611f8e82612748565b611f988185612756565b9350611fa383612736565b8060005b83811015611e55578151611fbb8882611de3565b9750611fc683612736565b925050600101611fa7565b6000611fdc8261274c565b611fe68185612756565b9350611ff18361273c565b8060005b83811015611e55576120068261280a565b6120108882611de3565b975061201b83612750565b925050600101611ff5565b611df881612776565b611df881611784565b600061204382612748565b61204d8185612756565b935061205d8185602086016127a8565b61206681612816565b9093019392505050565b60008154600181166000811461208d57600181146120b3576108e1565b607f600283041661209e8187612756565b60ff19841681529550506020850192506108e1565b600282046120c18187612756565b95506120cc8561273c565b60005b828110156120eb578154888201526001909101906020016120cf565b9096019695505050505050565b611df88161277b565b611df881612791565b6000612117601683612756565b751c1c9bdc1bdcd9481a5cc81b9bdd08185b1b1bddd95960521b815260200192915050565b6000612149601383612756565b7218d85b1b081a5cc81b9bdd08185b1b1bddd959606a1b815260200192915050565b6000612178601583612756565b746176617461722063616e6e6f74206265207a65726f60581b815260200192915050565b60006121a9604283612756565b7f57726f6e67206c656e677468206f66205f636f6e747261637473546f43616c6c81527f2c205f63616c6c73446174614c656e73206f72205f76616c7565732061727261602082015261797360f01b604082015260600192915050565b6000612213601b83612756565b7f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000815260200192915050565b600061224c601483612756565b7363616e6e6f74206578656375746520747769636560601b815260200192915050565b600061227c601783612756565b7f6d7573742062652061206c6976652070726f706f73616c000000000000000000815260200192915050565b60006122b5602683612756565b7f70726f706f73616c206d7573742070617373656420627920766f74696e67206d815265616368696e6560d01b602082015260400192915050565b60006122fd601283612756565b716f6e6c7920566f74696e674d616368696e6560701b815260200192915050565b600061232b601483612756565b73141c9bdc1bdcd85b0818d85b1b0819985a5b195960621b815260200192915050565b600061235b601883612756565b7f736368656d65206973206e6f7420726567697374657265640000000000000000815260200192915050565b602081016106678284611def565b604081016123a38285611dfe565b611dd06020830184611def565b606081016123be8286611dfe565b81810360208301526123d08185612038565b905081810360408301526123e48184612038565b95945050505050565b608081016123fb8287611dfe565b818103602083015261240d8186612038565b905061241c60408301856120f8565b6123e4606083018461202f565b604081016124378285611dfe565b611dd0602083018461202f565b608080825281016124558187611e07565b905081810360208301526124698186611eb5565b9050818103604083015261247d8185611f83565b90506123e460608301846120f8565b6080808252810161249d8187611e60565b905081810360208301526124b18186611f23565b9050818103604083015261247d8185611fd1565b608080825281016124d68187611eb5565b905081810360208301526124ea8186611f83565b905081810360408301526124fe8185612038565b905081810360608301526125128184611e07565b9695505050505050565b602081016106678284612026565b604081016125388285612026565b611dd06020830184612026565b60208101610667828461202f565b6020810161066782846120f8565b6080810161256f82876120f8565b61257c6020830186611dfe565b612589604083018561202f565b6123e460608301846120f8565b608081016125a48287612101565b6125b1602083018661202f565b6125be6040830185611def565b6123e46060830184611def565b602080825281016106678161210a565b602080825281016106678161213c565b602080825281016106678161216b565b602080825281016106678161219c565b6020808252810161066781612206565b602080825281016106678161223f565b602080825281016106678161226f565b60208082528101610667816122a8565b60208082528101610667816122f0565b602080825281016106678161231e565b602080825281016106678161234e565b60608101612689828661202f565b6126966020830185611dfe565b6126a36040830184611def565b949350505050565b604081016126b9828561202f565b611dd060208301846120f8565b60405181810167ffffffffffffffff811182821017156126e557600080fd5b604052919050565b600067ffffffffffffffff82111561270457600080fd5b5060209081020190565b600067ffffffffffffffff82111561272557600080fd5b506020601f91909101601f19160190565b60200190565b60009081526020902090565b5190565b5490565b60010190565b90815260200190565b6001600160a01b031690565b60006106678261275f565b151590565b60006106678261276b565b60006106678261277b565b600061066782611784565b82818337506000910152565b60005b838110156127c35781810151838201526020016127ab565b838111156127d2576000848401525b50505050565b60006106676127e683611784565b61275f565b60006106676127f983611784565b611784565b600061066782546127d8565b600061066782546127eb565b601f01601f191690565b6128298161276b565b811461173f57600080fd5b61282981612776565b61282981611784565b6128298161277b56fea365627a7a723158203677e075d97e0d34bd6bda9e4961caed402b91f56fa8e053ad9deef1eaee43906c6578706572696d656e74616cf564736f6c63430005110040608060405234801561001057600080fd5b506109d2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806385dcee931161005b57806385dcee93146100e8578063b7f59236146100fd578063da6f0d9b1461011d578063e5e48a341461013057610088565b8063158ef93e1461008d5780633233efe5146100ab5780633b7fdf09146100c057806364ab2de9146100d5575b600080fd5b610095610143565b6040516100a291906108b3565b60405180910390f35b6100be6100b93660046106d0565b61014c565b005b6100c8610208565b6040516100a2919061089b565b6100956100e336600461061a565b61026b565b6100f06102ec565b6040516100a291906108c1565b61011061010b366004610740565b610379565b6040516100a2919061088d565b61009561012b36600461061a565b6103a0565b61009561013e3660046105f4565b610412565b60035460ff1681565b60035460ff16156101785760405162461bcd60e51b815260040161016f906108d2565b60405180910390fd5b6003805460ff1916600117905560005b838110156101e7576001600260008787858181106101a257fe5b90506020020160206101b791908101906105f4565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055600101610188565b506101f460008585610427565b506102016001838361048a565b5050505050565b6060600080548060200260200160405190810160405280929190818152602001828054801561026057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610242575b505050505090505b90565b6000805b878110156102dd57600260008a8a8481811061028757fe5b905060200201602061029c91908101906105f4565b6001600160a01b0316815260208101919091526040016000205460ff166102d55760405162461bcd60e51b815260040161016f906108e2565b60010161026f565b50600198975050505050505050565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156103715780601f1061034657610100808354040283529160200191610371565b820191906000526020600020905b81548152906001019060200180831161035457829003601f168201915b505050505081565b6000818154811061038657fe5b6000918252602090912001546001600160a01b0316905081565b6000805b878110156102dd57600260008a8a848181106103bc57fe5b90506020020160206103d191908101906105f4565b6001600160a01b0316815260208101919091526040016000205460ff1661040a5760405162461bcd60e51b815260040161016f906108e2565b6001016103a4565b60026020526000908152604090205460ff1681565b82805482825590600052602060002090810192821561047a579160200282015b8281111561047a5781546001600160a01b0319166001600160a01b03843516178255602090920191600190910190610447565b50610486929150610504565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106104cb5782800160ff198235161785556104f8565b828001600101855582156104f8579182015b828111156104f85782358255916020019190600101906104dd565b50610486929150610528565b61026891905b808211156104865780546001600160a01b031916815560010161050a565b61026891905b80821115610486576000815560010161052e565b803561054d81610966565b92915050565b60008083601f84011261056557600080fd5b50813567ffffffffffffffff81111561057d57600080fd5b60208301915083602082028301111561059557600080fd5b9250929050565b803561054d8161097d565b60008083601f8401126105b957600080fd5b50813567ffffffffffffffff8111156105d157600080fd5b60208301915083600182028301111561059557600080fd5b803561054d81610986565b60006020828403121561060657600080fd5b60006106128484610542565b949350505050565b60008060008060008060006080888a03121561063557600080fd5b873567ffffffffffffffff81111561064c57600080fd5b6106588a828b01610553565b9750975050602088013567ffffffffffffffff81111561067757600080fd5b6106838a828b01610553565b9550955050604088013567ffffffffffffffff8111156106a257600080fd5b6106ae8a828b01610553565b935093505060606106c18a828b0161059c565b91505092959891949750929550565b600080600080604085870312156106e657600080fd5b843567ffffffffffffffff8111156106fd57600080fd5b61070987828801610553565b9450945050602085013567ffffffffffffffff81111561072857600080fd5b610734878288016105a7565b95989497509550505050565b60006020828403121561075257600080fd5b600061061284846105e9565b600061076a8383610772565b505060200190565b61077b81610905565b82525050565b600061078c826108f8565b61079681856108fc565b93506107a1836108f2565b8060005b838110156107cf5781516107b9888261075e565b97506107c4836108f2565b9250506001016107a5565b509495945050505050565b61077b81610910565b60006107ee826108f8565b6107f881856108fc565b935061080881856020860161092c565b6108118161095c565b9093019392505050565b60006108286017836108fc565b7f63616e6e6f7420696e697469616c697a65207477696365000000000000000000815260200192915050565b60006108616018836108fc565b7f636f6e7472616374206e6f742077686974656c69737465640000000000000000815260200192915050565b6020810161054d8284610772565b602080825281016108ac8184610781565b9392505050565b6020810161054d82846107da565b602080825281016108ac81846107e3565b6020808252810161054d8161081b565b6020808252810161054d81610854565b60200190565b5190565b90815260200190565b600061054d82610920565b151590565b600061054d82610905565b6001600160a01b031690565b60005b8381101561094757818101518382015260200161092f565b83811115610956576000848401525b50505050565b601f01601f191690565b61096f81610905565b811461097a57600080fd5b50565b61096f81610915565b61096f8161026856fea365627a7a72315820901377e5d27152b2fd61b0aa3d1aba073dffa89124914d2256b63ae8f2e4c0966c6578706572696d656e74616cf564736f6c63430005110040566f746520706172616d7320747970652073706563696669656420646f6573206e6f74206578697374a265627a7a72315820f98ded8589c80f404d271075a993c8293bc4a72a10e307c74bb2dca8fd30087864736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/GenesisProtocol.json b/contracts/0.0.1-rc.53/GenesisProtocol.json new file mode 100644 index 00000000..a49443c4 --- /dev/null +++ b/contracts/0.0.1-rc.53/GenesisProtocol.json @@ -0,0 +1,1433 @@ +{ + "contractName": "GenesisProtocol", + "abi": [ + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "CancelProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "CancelVoting", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_confidenceThreshold", + "type": "uint256" + } + ], + "name": "ConfidenceLevelChange", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_decision", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_totalReputation", + "type": "uint256" + } + ], + "name": "ExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "ExpirationCallBounty", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "enum GenesisProtocolLogic.ExecutionState", + "name": "_executionState", + "type": "uint8" + } + ], + "name": "GPExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemDaoBounty", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemReputation", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_staker", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Stake", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "enum GenesisProtocolLogic.ProposalState", + "name": "_proposalState", + "type": "uint8" + } + ], + "name": "StateChange", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "VoteProposal", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "DELEGATION_HASH_EIP712", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "NO", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "NUM_OF_CHOICES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "YES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "averagesDownstakesOfBoosted", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "calcExecuteCallBounty", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "cancelVote", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "execute", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "executeBoosted", + "outputs": [ + { + "internalType": "uint256", + "name": "expirationCallBounty", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAllowedRangeOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "getNumberOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256[11]", + "name": "_params", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalOrganization", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalTimes", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "times", + "type": "uint256[3]" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_staker", + "type": "address" + } + ], + "name": "getStaker", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isAbstainAllow", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "isVotable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "orgBoostedProposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizations", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "uint256", + "name": "queuedVoteRequiredPercentage", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "queuedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "boostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "preBoostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thresholdConst", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "limitExponentValue", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "quietEndingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "proposingRepReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "votersReputationLossRatio", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minimumDaoBounty", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "daoBountyConst", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "activationTime", + "type": "uint256" + }, + { + "internalType": "address", + "name": "voteOnBehalf", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "proposalStatus", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "bytes32", + "name": "organizationId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "callbacks", + "type": "address" + }, + { + "internalType": "enum GenesisProtocolLogic.ProposalState", + "name": "state", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + }, + { + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "internalType": "uint256", + "name": "currentBoostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "paramsHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "daoBountyRemain", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "daoBounty", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "totalStakes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "confidenceThreshold", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "secondsFromTimeOutTillExecuteBoosted", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "daoRedeemItsWinnings", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "proposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "rewards", + "type": "uint256[3]" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeemDaoBounty", + "outputs": [ + { + "internalType": "uint256", + "name": "redeemedAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "potentialAmount", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "score", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256[11]", + "name": "_params", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "shouldBoost", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "stake", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_nonce", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_signatureType", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_signature", + "type": "bytes" + } + ], + "name": "stakeWithSignature", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "stakesNonce", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "stakingToken", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "state", + "outputs": [ + { + "internalType": "enum GenesisProtocolLogic.ProposalState", + "name": "", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_organizationId", + "type": "bytes32" + } + ], + "name": "threshold", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "voteInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + } + ], + "name": "voteStake", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_choice", + "type": "uint256" + } + ], + "name": "voteStatus", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "winningVote", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x60806040523480156200001157600080fd5b506040516200468238038062004682833981810160405260208110156200003757600080fd5b5051806200006573543ff227f64aa17ea132bf9886cab5db55dcaddf620000bb602090811b6200441317901c565b156200009757600680546001600160a01b03191673543ff227f64aa17ea132bf9886cab5db55dcaddf179055620000b3565b600680546001600160a01b0319166001600160a01b0383161790555b5050620000f8565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590620000f057508115155b949350505050565b61457a80620001086000396000f3fe608060405234801561001057600080fd5b50600436106102485760003560e01c806372f702f31161013b578063b4512913116100b8578063c8f526e81161007c578063c8f526e814610887578063cc3bf9e9146108dc578063e5af18c514610908578063e751f27114610925578063fb6c0cbb1461094257610248565b8063b4512913146107f0578063ba51b14e14610813578063bb5a05ed14610830578063beda80151461084d578063c08351061461086a57610248565b80639525c0cc116100ff5780639525c0cc146107865780639bc5689d14610347578063a003651d146107a5578063a05ea6e4146107c2578063b2449d65146107e857610248565b806372f702f31461069c57806379a1c1f6146106c057806380f5e0a11461070357806388737b5e146107205780638894c41b1461075a57610248565b806332ed5b12116101c95780635142bc1e1161018d5780635142bc1e146105fc57806351d997b21461060457806361d585da1461060c5780636359036b1461064d578063707437681461067957610248565b806332ed5b121461044d578063359afa49146104fb5780633c133818146105335780634047487314610550578063488c65fc1461056d57610248565b80631702ef0c116102105780631702ef0c146103c057806321b4b3dc146103dd5780632d598e58146103e55780632daedd521461040857806330ca0a531461044557610248565b8063025068041461024d57806307b4e1e3146102d85780630d48344214610347578063119ce91b1461034f57806316db517214610394575b600080fd5b61026a6004803603602081101561026357600080fd5b503561095f565b604080519d8e5260208e019c909c528c8c019a909a5260608c019890985260808b019690965260a08a019490945260c089019290925260e08801526101008701526101208601526101408501526101608401526001600160a01b031661018083015251908190036101a00190f35b61033560048036036101808110156102ef57600080fd5b81019080806101600190600b806020026040519081016040528092919082600b602002808284376000920191909152509194505050356001600160a01b031690506109cf565b60408051918252519081900360200190f35b610335610ae0565b61037b6004803603604081101561036557600080fd5b50803590602001356001600160a01b0316610ae5565b6040805192835260208301919091528051918290030190f35b61037b600480360360408110156103aa57600080fd5b50803590602001356001600160a01b0316610b48565b610335600480360360208110156103d657600080fd5b5035610b79565b610335610b8b565b610335600480360360408110156103fb57600080fd5b5080359060200135610b91565b6104316004803603606081101561041e57600080fd5b5080359060208101359060400135610bde565b604080519115158252519081900360200190f35b610335610bf4565b61046a6004803603602081101561046357600080fd5b5035610ca0565b604080518e81526001600160a01b038e1660208201529081018c600681111561048f57fe5b60ff168152602081019b909b52506001600160a01b039098166040808b019190915260608a0197909752608089019590955260a088019390935260c087019190915260e08601526101008501526101208401529015156101408301525190819003610160019350915050f35b6104316004803603608081101561051157600080fd5b50803590602081013590604081013590606001356001600160a01b0316610d0e565b6103356004803603602081101561054957600080fd5b5035610ea7565b6103356004803603602081101561056657600080fd5b5035610ebc565b610431600480360360c081101561058357600080fd5b8135916020810135916040820135916060810135916080820135919081019060c0810160a08201356401000000008111156105bd57600080fd5b8201836020820111156105cf57600080fd5b803590602001918460018302840111640100000000831117156105f157600080fd5b509092509050610f2c565b61037b6111fe565b610431611206565b6106296004803603602081101561062257600080fd5b503561120c565b6040518082600681111561063957fe5b60ff16815260200191505060405180910390f35b61037b6004803603604081101561066357600080fd5b50803590602001356001600160a01b031661122c565b6103356004803603604081101561068f57600080fd5b5080359060200135611537565b6106a4611558565b604080516001600160a01b039092168252519081900360200190f35b6106dd600480360360208110156106d657600080fd5b5035611567565b604080519485526020850193909352838301919091526060830152519081900360800190f35b6104316004803603602081101561071957600080fd5b50356115aa565b6103356004803603608081101561073657600080fd5b508035906020810135906001600160a01b03604082013581169160600135166116e7565b610335600480360361018081101561077157600080fd5b506001600160a01b0361016082013516611add565b6107a36004803603602081101561079c57600080fd5b5035611ee6565b005b610335600480360360208110156107bb57600080fd5b5035611f3f565b610335600480360360208110156107d857600080fd5b50356001600160a01b0316611f45565b610335611f57565b6103356004803603604081101561080657600080fd5b5080359060200135611f5c565b6106a46004803603602081101561082957600080fd5b5035611f7d565b6103356004803603602081101561084657600080fd5b5035611f98565b6103356004803603602081101561086357600080fd5b5035611faa565b6104316004803603602081101561088057600080fd5b50356121f3565b6108a46004803603602081101561089d57600080fd5b50356121fe565b6040518082606080838360005b838110156108c95781810151838201526020016108b1565b5050505090500191505060405180910390f35b6108a4600480360360408110156108f257600080fd5b50803590602001356001600160a01b031661224d565b6103356004803603602081101561091e57600080fd5b50356129be565b6104316004803603602081101561093b57600080fd5b50356129c9565b6103356004803603602081101561095857600080fd5b5035612a30565b600060208190529081526040902080546001820154600283015460038401546004850154600586015460068701546007880154600889015460098a0154600a8b0154600b8c0154600c909c01549a9b999a989997989697959694959394929391929091906001600160a01b03168d565b60008281602002015183600160200201518460026020020151856003602002015186600460200201518760056020020151886006602002015189600760200201518a600860200201518b600960200201518c600a6020020151604051602001808c81526020018b81526020018a81526020018981526020018881526020018781526020018681526020018581526020018481526020018381526020018281526020019b505050505050505050505050604051602081830303815290604052805190602001208260405160200180838152602001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040528051906020012090505b92915050565b600281565b600080610af0614288565b50505060009182526001602081815260408085206001600160a01b039490941685526011909301815292829020825160608101845281548082529282015494810185905260029091015460ff16151592019190915291565b60009182526001602081815260408085206001600160a01b0394909416855260139093019052912080549101549091565b60009081526001602052604090205490565b60055481565b6000818152600260209081526040808320548584529183905282206005810154821115610bc057806005015491505b6004810154610bd5908363ffffffff612a4216565b95945050505050565b6000610bec84848433612a8c565b949350505050565b604080517f616464726573732047656e6573697350726f746f636f6c41646472657373000060208083019190915271189e5d195ccccc88141c9bdc1bdcd85b125960721b603e8301526b75696e7432353620566f746560a01b60508301527475696e7432353620416d6f756e74546f5374616b6560581b605c8301526c75696e74323536204e6f6e636560981b60718301528251605e818403018152607e909201909252805191012081565b600160208190526000918252604090912080549181015460028201546003830154600484015460058501546006860154600787015460088801546009890154600a8a0154600e909a01546001600160a01b03808b169b60ff600160a01b909c048c169b99909116989091168d565b600084610d1a81612e92565b610d65576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6000868152600160205260409020610d7b6142ab565b5060058082015460009081526020818152604080832081516101a0810183528154815260018201549381019390935260028101549183019190915260038101546060830152600481015460808301529283015460a0820152600683015460c0820152600783015460e082015260088301546101008201526009830154610120820152600a830154610140820152600b830154610160820152600c909201546001600160a01b0316610180830181905215610e8b578161018001516001600160a01b0316336001600160a01b031614610e845760405162461bcd60e51b81526004018080602001828103825260248152602001806145226024913960400191505060405180910390fd5b5084610e8e565b50335b610e9a89828a8a612f05565b9998505050505050505050565b60009081526001602052604090206002015490565b6000818152600160205260408120600a01546105dc908290610ee590839063ffffffff61353c16565b600085815260016020818152604080842092845260129092019052902054909150610bec90600a840290610f2090849063ffffffff61355216565b9063ffffffff6135ab16565b600080846002141561104f5750604080517f616464726573732047656e6573697350726f746f636f6c41646472657373000060208083019190915271189e5d195ccccc88141c9bdc1bdcd85b125960721b603e8301526b75696e7432353620566f746560a01b60508301527475696e7432353620416d6f756e74546f5374616b6560581b605c8301526c75696e74323536204e6f6e636560981b60718301528251605e818403018152607e830184528051908201203060601b609e84015260b283018c905260d283018b905260f283018a90526101128084018a90528451808503909101815261013284018552805190830120610152840191909152610172808401919091528351808403909101815261019290920190925280519101206110a0565b604080513060601b602080830191909152603482018c9052605482018b9052607482018a905260948083018a90528351808403909101815260b4909201909252805191012061109d906135ed565b90505b60006110ea85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869392505063ffffffff61363e169050565b90506001600160a01b038116611147576040805162461bcd60e51b815260206004820152601a60248201527f7374616b657220616464726573732063616e6e6f742062652030000000000000604482015290519081900360640190fd5b6001600160a01b03811660009081526007602052604090205487146111a1576040805162461bcd60e51b815260206004820152600b60248201526a77726f6e67206e6f6e636560a81b604482015290519081900360640190fd5b6001600160a01b0381166000908152600760205260409020546111cb90600163ffffffff61372c16565b6001600160a01b0382166000908152600760205260409020556111f08a8a8a84612a8c565b9a9950505050505050505050565b600160029091565b60005b90565b60009081526001602081905260409091200154600160a01b900460ff1690565b6000828152600160205260408120819060026001820154600160a01b900460ff16600681111561125857fe5b146112aa576040805162461bcd60e51b815260206004820152601f60248201527f70726f706f73616c207374617465206d75737420626520657865637574656400604482015290519081900360640190fd5b60028082015460009081526012830160209081526040808320546001600160a01b03891684526013860190925290912091820154909190158015906112f3575060028301548154145b8015611303575060018360020154145b801561130e57508115155b1561132a578183600701548260020154028161132657fe5b0493505b83158015906113bf5750600183015460065460408051636b8eb40360e01b81526001600160a01b039283166004820152602481018b9052905187939290921691636b8eb40391604480820192602092909190829003018186803b15801561139057600080fd5b505afa1580156113a4573d6000803e3d6000fd5b505050506040513d60208110156113ba57600080fd5b505110155b1561152d576000600282015560068301546113e0908563ffffffff61378616565b60068085019190915560018401549054604080516317d4ebe560e31b81526001600160a01b039283166004820152898316602482015260448101889052606481018b90529051919092169163bea75f289160848083019260209291908290030181600087803b15801561145257600080fd5b505af1158015611466573d6000803e3d6000fd5b505050506040513d602081101561147c57600080fd5b50516114cf576040805162461bcd60e51b815260206004820152601e60248201527f6661696c6564206174207374616b696e67546f6b656e5472616e736665720000604482015290519081900360640190fd5b8254600090815260036020908152604091829020548251878152925196975087966001600160a01b03808b16949216928b927fb4a37163ec93e05e09b62e52f7f2ea8cfde431802edede7dfebe53d2ad969dbb929081900390910190a45b5050509250929050565b60009182526001602090815260408084209284526012909201905290205490565b6006546001600160a01b031681565b6000908152600160208181526040808420838552601081018352818520546002808752838720549587526012909201909352818520549085529320549093919291565b60006115b461431c565b60008381526001602081815260409283902083516101c08101855281548152928101546001600160a01b038116928401929092529192830190600160a01b900460ff16600681111561160257fe5b600681111561160d57fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b815481526020019060010190808311611696575050509183525050600e919091015460ff16151560209091015260c081015181519192506116d691610b91565b6116df846137c8565b119392505050565b6000838152602081905260408120600b0154421161173d576040805162461bcd60e51b815260206004820152600e60248201526d1b9bdd081858dd1a5d99481e595d60921b604482015290519081900360640190fd5b60008481526020819052604090205460321115611797576040805162461bcd60e51b81526020600482015260136024820152721b9bc81c185c985b595d195c9cc8195e1a5cdd606a1b604482015290519081900360640190fd5b600554604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906117dc90600163ffffffff61372c16565b6005556117e761431c565b33602082810182905260408051606093841b818401526bffffffffffffffffffffffff1988851b16603482015281516028818303018152604890910182528051908301208452600381850181905261018085015142905260008a815280845282812060029081015460a08801526001600160a01b038b811660808901529587015260c086018b9052855181529252902054166118da576001600160a01b0384166118b0578051600090815260036020526040902080546001600160a01b031916331790556118da565b8051600090815260036020526040902080546001600160a01b0319166001600160a01b0386161790555b8051600090815260046020908152604080832054898452918390528220600a015461191191606491610f209163ffffffff61355216565b60008881526020819052604090206009015490915061193790829063ffffffff61380916565b60e0830152600083815260016020818152604092839020855181559085015191810180546001600160a01b0319166001600160a01b03909316929092178083559285015185939192909160ff60a01b1916600160a01b83600681111561199957fe5b0217905550606082015160028201556080820151600380830180546001600160a01b0319166001600160a01b039093169290921790915560a0830151600483015560c0830151600583015560e08301516006830155610100830151600783015561012083015160088301556101408301516009830155610160830151600a830155610180830151611a2f91600b8401919061439d565b506101a09190910151600e909101805460ff191691151591909117905560e08201516000848152600160209081526040808320600280855260129091018352818420949094558551835260038252918290205482519384526001600160a01b038a8116928501929092528383018b9052915191169185917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c916060908290030190a350909695505050505050565b60006064833511801590611af357506032833510155b611b2e5760405162461bcd60e51b81526004018080602001828103825260298152602001806144a56029913960400191505060405180910390fd5b613e80608084013511801590611b4957506103e86080840135115b611b9a576040805162461bcd60e51b815260206004820152601e60248201527f31303030203c207468726573686f6c64436f6e7374203c3d2031363030300000604482015290519081900360640190fd5b606460e08401351115611bf4576040805162461bcd60e51b815260206004820181905260248201527f766f7465727352657075746174696f6e4c6f7373526174696f203c3d20313030604482015290519081900360640190fd5b60a083013560408401351015611c3b5760405162461bcd60e51b815260040180806020018281038252602b81526020018061447a602b913960400191505060405180910390fd5b610100830135611c92576040805162461bcd60e51b815260206004820152601e60248201527f6d696e696d756d44616f426f756e74792073686f756c64206265203e20300000604482015290519081900360640190fd5b610120830135611ce9576040805162461bcd60e51b815260206004820152601c60248201527f64616f426f756e7479436f6e73742073686f756c64206265203e203000000000604482015290519081900360640190fd5b6000611d1f84600b806020026040519081016040528092919082600b602002808284376000920191909152508691506109cf9050565b60008181526020819052604090205490915015611d3d579050610ada565b60ac60026107d05b613e80811015611d8d57608087013581108015611d69575060028102608088013511155b15611d7f57818381611d7757fe5b049250611d8d565b600190910190600202611d45565b50604080516101a0810182528735815260208089013590820152878201359181019190915260608088013590820152608080820190611dda908901356001600160d81b03166103e8613819565b81526020810184905260a088810135604083015260c0808a0135606084015260e0808b013560808501526101008b0135928401929092526101208a0135908301520187600a6020908102919091013582526001600160a01b03978816918101919091526000858152808252604090819020835181559183015160018301558201516002820155606082015160038201556080820151600482015560a0820151600582015560c0820151600682015560e0820151600782015561010082015160088201556101208201516009820155610140820151600a820155610160820151600b82015561018090910151600c90910180546001600160a01b0319169190961617909455509392505050565b80611ef081612e92565b611f3b576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b5050565b50600290565b60076020526000908152604090205481565b600181565b6000918252600160209081526040808420928452600f909201905290205490565b6003602052600090815260409020546001600160a01b031681565b60046020526000908152604090205481565b600081815260016020526040812060056001820154600160a01b900460ff166006811115611fd457fe5b1480611ff9575060066001820154600160a01b900460ff166006811115611ff757fe5b145b6120345760405162461bcd60e51b81526004018080602001828103825260338152602001806144ef6033913960400191505060405180910390fd5b61203d8361383c565b61208e576040805162461bcd60e51b815260206004820152601760248201527f70726f706f73616c206e65656420746f20657870697265000000000000000000604482015290519081900360640190fd5b6120ba6120ad600b83016001015460048401549063ffffffff61372c16565b429063ffffffff61378616565b600a8201556120c883610ebc565b60088201549092506120e0908363ffffffff61378616565b60088201556006546040805163a9059cbb60e01b81523360048201526024810185905290516001600160a01b039092169163a9059cbb916044808201926020929091908290030181600087803b15801561213957600080fd5b505af115801561214d573d6000803e3d6000fd5b505050506040513d602081101561216357600080fd5b50516121b6576040805162461bcd60e51b815260206004820152601d60248201527f7472616e7366657220746f206d73672e73656e646572206661696c6564000000604482015290519081900360640190fd5b604080518381529051339185917f7468017f6ff596af88244327e88fe691ac48cc1db88b033d11c335f2c7ccdd039181900360200190a350919050565b6000610ada82612e92565b6122066143db565b60008281526001602052604090819020815160608101909252600b0160038282826020028201915b81548152602001906001019080831161222e5750505050509050919050565b6122556143db565b600083815260016020526040902060026001820154600160a01b900460ff16600681111561227f57fe5b14806122a35750600180820154600160a01b900460ff1660068111156122a157fe5b145b6122de5760405162461bcd60e51b815260040180806020018281038252602d81526020018061444d602d913960400191505060405180910390fd5b6122e66142ab565b5060058082015460009081526020818152604080832081516101a081018352815481526001820154818501526002808301548285015260038301546060830152600483015460808301529582015460a0820152600682015460c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154610140820152600b820154610160820152600c909101546001600160a01b0390811661018083015288168452601386018352818420948601548452601286019092528220549092916123f26123bc89610ebc565b6001600090815260128801602052604080822054600283529120546123e69163ffffffff61372c16565b9063ffffffff61378616565b6001840154909150156124bd57600180860154600160a01b900460ff16600681111561241a57fe5b141561242c57600183015486526124b5565b6002850154835414156124b55782546001141561249357808560070154101561248e57600061246886600701548361378690919063ffffffff16565b90508261248282866001015461355290919063ffffffff16565b8161248957fe5b048752505b6124b5565b600183015482906124aa908363ffffffff61355216565b816124b157fe5b0486525b600060018401555b600e85015460ff161580156124ed575084546000908152600360205260409020546001600160a01b038881169116145b80156125125750600180860154600160a01b900460ff16600681111561250f57fe5b14155b8015612522575060028560020154145b15612573576007850154612561906123e684612544838663ffffffff61355216565b8161254b57fe5b048960005b60200201519063ffffffff61372c16565b8652600e8501805460ff191660011790555b6001600160a01b038716600090815260118601602052604090206001810154158015906125a45750600281015460ff165b156126e357600180870154600160a01b900460ff1660068111156125c457fe5b14156125fa5760646125e8866101000151836001015461355290919063ffffffff16565b816125ef57fe5b0460208801526126db565b8054600287015414156126db57600060018760020154141561262f575060026000908152601087016020526040902054612644565b50600160009081526010870160205260409020545b606461265e8761010001518361355290919063ffffffff16565b8161266557fe5b6002890154600090815260108a01602052604090205460018501549290910492506126d49161269a908463ffffffff61355216565b816126a157fe5b0460646126c0896101000151866001015461355290919063ffffffff16565b816126c757fe5b049063ffffffff61372c16565b6020890152505b600060018201555b60038601546001600160a01b038981169116148015612706575060018660020154145b801561271e575060038601546001600160a01b031615155b156127405760e085015160408801526003860180546001600160a01b03191690555b86511561288d578651600887015461275791613786565b600887015560065487516040805163a9059cbb60e01b81526001600160a01b038c8116600483015260248201939093529051919092169163a9059cbb9160448083019260209291908290030181600087803b1580156127b557600080fd5b505af11580156127c9573d6000803e3d6000fd5b505050506040513d60208110156127df57600080fd5b5051612832576040805162461bcd60e51b815260206004820152601e60248201527f7472616e7366657220746f2062656e6566696369617279206661696c65640000604482015290519081900360640190fd5b8554600090815260036020908152604091829020548951835190815292516001600160a01b038c8116949216928d927f6d26871c9f457d104b2122485f659f126f7a0cf6938cf20482c03f49794a2fbf929081900390910190a45b604087015161289e90886001612550565b156129b25760018601546001600160a01b031663d29b5d2f6128c989600260200201518a6001612550565b8a8c6040518463ffffffff1660e01b815260040180848152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050602060405180830381600087803b15801561292157600080fd5b505af1158015612935573d6000803e3d6000fd5b505050506040513d602081101561294b57600080fd5b505085546000908152600360205260409020546001600160a01b03808a1691168a7f7419b736daacf66d5c1645948c956fca2b83be1e2e02d486d65713f289d683b86129a08b600260200201518c6001612550565b60408051918252519081900360200190a45b50505050505092915050565b6000610ada826137c8565b6000816129d581612e92565b612a20576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b612a298361383c565b9392505050565b60026020526000908152604090205481565b60008282650100000000005b8115610bd5578160011660011415612a6d57612a6a818461410d565b90505b60019190911c908115612a8757612a84838461410d565b92505b612a4e565b600060028411158015612a9f5750600084115b612ae3576040805162461bcd60e51b815260206004820152601060248201526f77726f6e6720766f74652076616c756560801b604482015290519081900360640190fd5b60008311612b38576040805162461bcd60e51b815260206004820152601b60248201527f7374616b696e6720616d6f756e742073686f756c64206265203e300000000000604482015290519081900360640190fd5b612b418561383c565b15612b4e57506001610bec565b600085815260016020526040902060046001820154600160a01b900460ff166006811115612b7857fe5b14158015612ba0575060036001820154600160a01b900460ff166006811115612b9d57fe5b14155b15612baf576000915050610bec565b6001600160a01b03831660009081526013820160205260409020600181015415801590612bdd575080548614155b15612bed57600092505050610bec565b600654604080516323b872dd60e01b81526001600160a01b038781166004830152306024830152604482018990529151889392909216916323b872dd916064808201926020929091908290030181600087803b158015612c4c57600080fd5b505af1158015612c60573d6000803e3d6000fd5b505050506040513d6020811015612c7657600080fd5b5051612cc9576040805162461bcd60e51b815260206004820152601960248201527f6661696c207472616e736665722066726f6d207374616b657200000000000000604482015290519081900360640190fd5b6008830154612cde908263ffffffff61372c16565b60088401556001820154612cf8908263ffffffff61372c16565b60018301819055600160801b1015612d57576040805162461bcd60e51b815260206004820152601a60248201527f7374616b696e6720616d6f756e7420697320746f6f2068696768000000000000604482015290519081900360640190fd5b6006830154612d7190600160801b9063ffffffff61378616565b83600801541115612dc9576040805162461bcd60e51b815260206004820152601860248201527f746f74616c207374616b657320697320746f6f20686967680000000000000000604482015290519081900360640190fd5b6001871415612ded576002820154612de7908263ffffffff61372c16565b60028301555b8682556000878152601284016020526040902054612e1290829063ffffffff61372c16565b60008881526012850160209081526040808320939093558554825260038152908290205482518a815291820189905282516001600160a01b03808a16949216928c927fd0239d7d4acf51def4507fa173be466927de5d75d8b10d840cd6994d6e10231092918290030190a4612e868861383c565b98975050505050505050565b600081815260016020819052604082200154600160a01b900460ff166004816006811115612ebc57fe5b1480612ed357506005816006811115612ed157fe5b145b80612ee957506006816006811115612ee757fe5b145b80612a2957506003816006811115612efd57fe5b149392505050565b600060028311158015612f185750600083115b612f5a576040805162461bcd60e51b815260206004820152600e60248201526d18101e102fbb37ba32901e1e901960911b604482015290519081900360640190fd5b612f638561383c565b15612f7057506001610bec565b612f786142ab565b506000858152600160208181526040808420600580820154865285845282862083516101a0810185528154815281870154818701526002820154818601526003820154606082015260048083015460808301529282015460a0820152600682015460c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154610140820152600b820154610160820152600c909101546001600160a01b039081166101808301528c8852868652958301548451634ac41bc760e11b81528c881693810193909352602483018d905293519096929592949390921692639588378e92604480840193829003018186803b15801561307f57600080fd5b505afa158015613093573d6000803e3d6000fd5b505050506040513d60208110156130a957600080fd5b50519050806130ff576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b84811015613149576040805162461bcd60e51b8152602060048201526012602482015271072657075746174696f6e203e3d205f7265760741b604482015290519081900360640190fd5b84806131525750805b6001600160a01b038816600090815260118401602052604090206001015415613182576000945050505050610bec565b6000878152600f840160205260409020546131a490829063ffffffff61372c16565b6000888152600f85016020526040808220839055600286015482528120549089905210806131fc57506002808401546000908152600f85016020526040808220549282529020541480156131fc575060018360020154145b1561330b5760056001840154600160a01b900460ff16600681111561321d57fe5b14801561323d575060c0840151604085015103600b840160010154420310155b80613261575060066001840154600160a01b900460ff16600681111561325f57fe5b145b156133035760066001840154600160a01b900460ff16600681111561328257fe5b146132fc5760c0840151600484015560018301805460ff60a01b1916600360a11b17908190556040518a917f21aca7f0285ccddeca2935074d3e36b5ab8fea0327f84cbbf12cf1b6d1a749f991600160a01b90910460ff1690808260068111156132e857fe5b60ff16815260200191505060405180910390a25b42600c8401555b600283018790555b604080516060810182528881526020810183905290810160046001860154600160a01b900460ff16600681111561333e57fe5b1480613363575060036001860154600160a01b900460ff16600681111561336157fe5b145b151590526001600160a01b0389166000908152601185016020908152604091829020835181559083015160018201559101516002909101805460ff191691151591909117905560046001840154600160a01b900460ff1660068111156133c557fe5b14806133ea575060036001840154600160a01b900460ff1660068111156133e857fe5b145b156134d757600087815260108401602052604090205461341190829063ffffffff61372c16565b600088815260108501602052604081209190915561010085015160649061343e908463ffffffff61355216565b8161344557fe5b600186015460408051637c0fc5fb60e11b815293909204600484018190526001600160a01b038d81166024860152604485018f9052925190945091169163f81f8bf69160648083019260209291908290030181600087803b1580156134a957600080fd5b505af11580156134bd573d6000803e3d6000fd5b505050506040513d60208110156134d357600080fd5b5050505b82546000908152600360209081526040918290205482518a815291820184905282516001600160a01b03808d16949216928d927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92918290030190a4610e9a8961383c565b600081831061354b5781612a29565b5090919050565b60008261356157506000610ada565b8282028284828161356e57fe5b0414612a295760405162461bcd60e51b81526004018080602001828103825260218152602001806144ce6021913960400191505060405180910390fd5b6000612a2983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250614171565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b6000815160411461365157506000610ada565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08211156136975760009350505050610ada565b8060ff16601b141580156136af57508060ff16601c14155b156136c05760009350505050610ada565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015613717573d6000803e3d6000fd5b5050604051601f190151979650505050505050565b600082820183811015612a29576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000612a2983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250614213565b60008181526001602081815260408084206002855260128101909252808420549284528320549091612a29916001600160d81b03169063ffffffff61381916565b60008183101561354b5781612a29565b6000612a296001600160d81b03808516650100000000009081029185160261426d565b60008161384881612e92565b613893576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008381526001602052604090206138a96142ab565b506005808201546000908152602081815260409182902082516101a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600482015460808201529181015460a0830152600681015460c0830152600781015460e083015260088101546101008301526009810154610120830152600a810154610140830152600b810154610160830152600c01546001600160a01b031661018082015261395d61431c565b604080516101c0810182528454815260018501546001600160a01b03811660208301529091859190830190600160a01b900460ff16600681111561399d57fe5b60068111156139a857fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b815481526020019060010190808311613a31575050509183525050600e919091015460ff16151560209182015260018501546040805163b551c37360e01b8152600481018b905290519394506000936001600160a01b039092169263b551c37392602480840193829003018186803b158015613aac57600080fd5b505afa158015613ac0573d6000803e3d6000fd5b505050506040513d6020811015613ad657600080fd5b5051835160028601546000908152600f87016020526040812054929350606484049091029181908190841015613b835760036001890154600160a01b900460ff166006811115613b2257fe5b1415613b315760019250613b61565b60046001890154600160a01b900460ff166006811115613b4d57fe5b1415613b5c5760039250613b61565b600592505b6001880180546002919060ff60a01b1916600160a01b835b0217905550613dca565b60036001890154600160a01b900460ff166006811115613b9f57fe5b1415613c21576020870151600b890154420310613bda5760018801805460ff60a01b1916600160a01b17905560028089018190559250613c21565b613bec88600501548960000154610b91565b905080613bf88c6137c8565b1115613c215760018801805460ff60a01b1916600160a21b17905542600d890155600988018190555b60046001890154600160a01b900460ff166006811115613c3d57fe5b1415613dca57613c5588600501548960000154610b91565b6060880151909150600b890160020154420310613d3b5780613c768c6137c8565b1115613d1a5787546000908152600260205260409020546110001115613d15576001888101805460ff60a01b1916600560a01b17905542600c8a01558854600090815260026020818152604080842080549095019094558b54835260048152838320548282528484205492845260128d0190915292909120549193509083900381613cfd57fe5b89546000908152600460205260409020919005830190555b613d36565b6001880180546003919060ff60a01b1916600160a01b83613b79565b613dca565b6000613d468c6137c8565b60098a0154909150613d5e908363ffffffff61353c16565b8111613d7e5760018901805460ff60a01b1916600360a01b179055613dc8565b8089600901541115613dc857600989018290556040805183815290518d917fad767d61af51c7895fa3cc0497dde01afb610c74e55ee4d8a71fa5e3ee136d54919081900360200190a25b505b60056001890154600160a01b900460ff166006811115613de657fe5b1480613e0b575060066001890154600160a01b900460ff166006811115613e0957fe5b145b15613e3b576004880154600c890154420310613e3b5760018801805460ff60a01b1916600160a11b179055600492505b6000836005811115613e4957fe5b14614067576004836005811115613e5c57fe5b1480613e7357506005836005811115613e7157fe5b145b15613f2e578551600090815260026020526040902054613e9a90600163ffffffff61378616565b86516000908152600260205260408082209290925587518152205480613ed0578854600090815260046020526040812055613f2c565b88546000908152600460209081526040808320546002845260128d01909252909120549093508190613f0f906123e6866001850163ffffffff61355216565b81613f1657fe5b8a54600090815260046020526040902091900490555b505b87546000908152600360209081526040918290205460028b0154835190815291820188905282516001600160a01b03909116928e927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a38a7f46a713b994c752c68fbefa9048bec9a0010cc7d933ad95a3c3dbb25931a167e78460405180826005811115613fc157fe5b60ff16815260200191505060405180910390a2600688015460078901556001880154600289015460408051639d4c162d60e01b8152600481018f90526024810192909252516001600160a01b0390921691639d4c162d916044808201926020929091908290030181600087803b15801561403a57600080fd5b505af115801561404e573d6000803e3d6000fd5b505050506040513d602081101561406457600080fd5b50505b6001880154600160a01b900460ff16600681111561408157fe5b8660400151600681111561409157fe5b146140ee578a7f21aca7f0285ccddeca2935074d3e36b5ab8fea0327f84cbbf12cf1b6d1a749f98960010160149054906101000a900460ff16604051808260068111156140da57fe5b60ff16815260200191505060405180910390a25b60008360058111156140fc57fe5b14159b9a5050505050505050505050565b60008282028284828161411c57fe5b0414614167576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b600081836141fd5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156141c25781810151838201526020016141aa565b50505050905090810190601f1680156141ef5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161420957fe5b0495945050505050565b600081848411156142655760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156141c25781810151838201526020016141aa565b505050900390565b6000816501000000000084028161428057fe5b049392505050565b604051806060016040528060008152602001600081526020016000151581525090565b604051806101a0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681525090565b604080516101c081018252600080825260208201819052909182019081526020016000815260200160006001600160a01b03168152602001600081526020016000801916815260200160008152602001600081526020016000815260200160008152602001600081526020016143906143db565b8152600060209091015290565b82600381019282156143cb579160200282015b828111156143cb5782518255916020019190600101906143b0565b506143d79291506143f9565b5090565b60405180606001604052806003906020820280388339509192915050565b61120991905b808211156143d757600081556001016143ff565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590610bec57505015159291505056fe50726f706f73616c2073686f756c64206265204578656375746564206f722045787069726564496e5175657565626f6f73746564566f7465506572696f644c696d6974203e3d207175696574456e64696e67506572696f643530203c3d20717565756564566f7465526571756972656450657263656e74616765203c3d20313030536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7770726f706f73616c20737461746520696e206e6f7420426f6f73746564206e6f72205175696574456e64696e67506572696f646d73672e73656e646572206973206e6f7420617574686f72697a656420746f20766f7465a265627a7a7231582099edc6bafffc35fc35134ed08f81fca97d4d65079275c620e67ec233c40fc15d64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102485760003560e01c806372f702f31161013b578063b4512913116100b8578063c8f526e81161007c578063c8f526e814610887578063cc3bf9e9146108dc578063e5af18c514610908578063e751f27114610925578063fb6c0cbb1461094257610248565b8063b4512913146107f0578063ba51b14e14610813578063bb5a05ed14610830578063beda80151461084d578063c08351061461086a57610248565b80639525c0cc116100ff5780639525c0cc146107865780639bc5689d14610347578063a003651d146107a5578063a05ea6e4146107c2578063b2449d65146107e857610248565b806372f702f31461069c57806379a1c1f6146106c057806380f5e0a11461070357806388737b5e146107205780638894c41b1461075a57610248565b806332ed5b12116101c95780635142bc1e1161018d5780635142bc1e146105fc57806351d997b21461060457806361d585da1461060c5780636359036b1461064d578063707437681461067957610248565b806332ed5b121461044d578063359afa49146104fb5780633c133818146105335780634047487314610550578063488c65fc1461056d57610248565b80631702ef0c116102105780631702ef0c146103c057806321b4b3dc146103dd5780632d598e58146103e55780632daedd521461040857806330ca0a531461044557610248565b8063025068041461024d57806307b4e1e3146102d85780630d48344214610347578063119ce91b1461034f57806316db517214610394575b600080fd5b61026a6004803603602081101561026357600080fd5b503561095f565b604080519d8e5260208e019c909c528c8c019a909a5260608c019890985260808b019690965260a08a019490945260c089019290925260e08801526101008701526101208601526101408501526101608401526001600160a01b031661018083015251908190036101a00190f35b61033560048036036101808110156102ef57600080fd5b81019080806101600190600b806020026040519081016040528092919082600b602002808284376000920191909152509194505050356001600160a01b031690506109cf565b60408051918252519081900360200190f35b610335610ae0565b61037b6004803603604081101561036557600080fd5b50803590602001356001600160a01b0316610ae5565b6040805192835260208301919091528051918290030190f35b61037b600480360360408110156103aa57600080fd5b50803590602001356001600160a01b0316610b48565b610335600480360360208110156103d657600080fd5b5035610b79565b610335610b8b565b610335600480360360408110156103fb57600080fd5b5080359060200135610b91565b6104316004803603606081101561041e57600080fd5b5080359060208101359060400135610bde565b604080519115158252519081900360200190f35b610335610bf4565b61046a6004803603602081101561046357600080fd5b5035610ca0565b604080518e81526001600160a01b038e1660208201529081018c600681111561048f57fe5b60ff168152602081019b909b52506001600160a01b039098166040808b019190915260608a0197909752608089019590955260a088019390935260c087019190915260e08601526101008501526101208401529015156101408301525190819003610160019350915050f35b6104316004803603608081101561051157600080fd5b50803590602081013590604081013590606001356001600160a01b0316610d0e565b6103356004803603602081101561054957600080fd5b5035610ea7565b6103356004803603602081101561056657600080fd5b5035610ebc565b610431600480360360c081101561058357600080fd5b8135916020810135916040820135916060810135916080820135919081019060c0810160a08201356401000000008111156105bd57600080fd5b8201836020820111156105cf57600080fd5b803590602001918460018302840111640100000000831117156105f157600080fd5b509092509050610f2c565b61037b6111fe565b610431611206565b6106296004803603602081101561062257600080fd5b503561120c565b6040518082600681111561063957fe5b60ff16815260200191505060405180910390f35b61037b6004803603604081101561066357600080fd5b50803590602001356001600160a01b031661122c565b6103356004803603604081101561068f57600080fd5b5080359060200135611537565b6106a4611558565b604080516001600160a01b039092168252519081900360200190f35b6106dd600480360360208110156106d657600080fd5b5035611567565b604080519485526020850193909352838301919091526060830152519081900360800190f35b6104316004803603602081101561071957600080fd5b50356115aa565b6103356004803603608081101561073657600080fd5b508035906020810135906001600160a01b03604082013581169160600135166116e7565b610335600480360361018081101561077157600080fd5b506001600160a01b0361016082013516611add565b6107a36004803603602081101561079c57600080fd5b5035611ee6565b005b610335600480360360208110156107bb57600080fd5b5035611f3f565b610335600480360360208110156107d857600080fd5b50356001600160a01b0316611f45565b610335611f57565b6103356004803603604081101561080657600080fd5b5080359060200135611f5c565b6106a46004803603602081101561082957600080fd5b5035611f7d565b6103356004803603602081101561084657600080fd5b5035611f98565b6103356004803603602081101561086357600080fd5b5035611faa565b6104316004803603602081101561088057600080fd5b50356121f3565b6108a46004803603602081101561089d57600080fd5b50356121fe565b6040518082606080838360005b838110156108c95781810151838201526020016108b1565b5050505090500191505060405180910390f35b6108a4600480360360408110156108f257600080fd5b50803590602001356001600160a01b031661224d565b6103356004803603602081101561091e57600080fd5b50356129be565b6104316004803603602081101561093b57600080fd5b50356129c9565b6103356004803603602081101561095857600080fd5b5035612a30565b600060208190529081526040902080546001820154600283015460038401546004850154600586015460068701546007880154600889015460098a0154600a8b0154600b8c0154600c909c01549a9b999a989997989697959694959394929391929091906001600160a01b03168d565b60008281602002015183600160200201518460026020020151856003602002015186600460200201518760056020020151886006602002015189600760200201518a600860200201518b600960200201518c600a6020020151604051602001808c81526020018b81526020018a81526020018981526020018881526020018781526020018681526020018581526020018481526020018381526020018281526020019b505050505050505050505050604051602081830303815290604052805190602001208260405160200180838152602001826001600160a01b03166001600160a01b031660601b8152601401925050506040516020818303038152906040528051906020012090505b92915050565b600281565b600080610af0614288565b50505060009182526001602081815260408085206001600160a01b039490941685526011909301815292829020825160608101845281548082529282015494810185905260029091015460ff16151592019190915291565b60009182526001602081815260408085206001600160a01b0394909416855260139093019052912080549101549091565b60009081526001602052604090205490565b60055481565b6000818152600260209081526040808320548584529183905282206005810154821115610bc057806005015491505b6004810154610bd5908363ffffffff612a4216565b95945050505050565b6000610bec84848433612a8c565b949350505050565b604080517f616464726573732047656e6573697350726f746f636f6c41646472657373000060208083019190915271189e5d195ccccc88141c9bdc1bdcd85b125960721b603e8301526b75696e7432353620566f746560a01b60508301527475696e7432353620416d6f756e74546f5374616b6560581b605c8301526c75696e74323536204e6f6e636560981b60718301528251605e818403018152607e909201909252805191012081565b600160208190526000918252604090912080549181015460028201546003830154600484015460058501546006860154600787015460088801546009890154600a8a0154600e909a01546001600160a01b03808b169b60ff600160a01b909c048c169b99909116989091168d565b600084610d1a81612e92565b610d65576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6000868152600160205260409020610d7b6142ab565b5060058082015460009081526020818152604080832081516101a0810183528154815260018201549381019390935260028101549183019190915260038101546060830152600481015460808301529283015460a0820152600683015460c0820152600783015460e082015260088301546101008201526009830154610120820152600a830154610140820152600b830154610160820152600c909201546001600160a01b0316610180830181905215610e8b578161018001516001600160a01b0316336001600160a01b031614610e845760405162461bcd60e51b81526004018080602001828103825260248152602001806145226024913960400191505060405180910390fd5b5084610e8e565b50335b610e9a89828a8a612f05565b9998505050505050505050565b60009081526001602052604090206002015490565b6000818152600160205260408120600a01546105dc908290610ee590839063ffffffff61353c16565b600085815260016020818152604080842092845260129092019052902054909150610bec90600a840290610f2090849063ffffffff61355216565b9063ffffffff6135ab16565b600080846002141561104f5750604080517f616464726573732047656e6573697350726f746f636f6c41646472657373000060208083019190915271189e5d195ccccc88141c9bdc1bdcd85b125960721b603e8301526b75696e7432353620566f746560a01b60508301527475696e7432353620416d6f756e74546f5374616b6560581b605c8301526c75696e74323536204e6f6e636560981b60718301528251605e818403018152607e830184528051908201203060601b609e84015260b283018c905260d283018b905260f283018a90526101128084018a90528451808503909101815261013284018552805190830120610152840191909152610172808401919091528351808403909101815261019290920190925280519101206110a0565b604080513060601b602080830191909152603482018c9052605482018b9052607482018a905260948083018a90528351808403909101815260b4909201909252805191012061109d906135ed565b90505b60006110ea85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869392505063ffffffff61363e169050565b90506001600160a01b038116611147576040805162461bcd60e51b815260206004820152601a60248201527f7374616b657220616464726573732063616e6e6f742062652030000000000000604482015290519081900360640190fd5b6001600160a01b03811660009081526007602052604090205487146111a1576040805162461bcd60e51b815260206004820152600b60248201526a77726f6e67206e6f6e636560a81b604482015290519081900360640190fd5b6001600160a01b0381166000908152600760205260409020546111cb90600163ffffffff61372c16565b6001600160a01b0382166000908152600760205260409020556111f08a8a8a84612a8c565b9a9950505050505050505050565b600160029091565b60005b90565b60009081526001602081905260409091200154600160a01b900460ff1690565b6000828152600160205260408120819060026001820154600160a01b900460ff16600681111561125857fe5b146112aa576040805162461bcd60e51b815260206004820152601f60248201527f70726f706f73616c207374617465206d75737420626520657865637574656400604482015290519081900360640190fd5b60028082015460009081526012830160209081526040808320546001600160a01b03891684526013860190925290912091820154909190158015906112f3575060028301548154145b8015611303575060018360020154145b801561130e57508115155b1561132a578183600701548260020154028161132657fe5b0493505b83158015906113bf5750600183015460065460408051636b8eb40360e01b81526001600160a01b039283166004820152602481018b9052905187939290921691636b8eb40391604480820192602092909190829003018186803b15801561139057600080fd5b505afa1580156113a4573d6000803e3d6000fd5b505050506040513d60208110156113ba57600080fd5b505110155b1561152d576000600282015560068301546113e0908563ffffffff61378616565b60068085019190915560018401549054604080516317d4ebe560e31b81526001600160a01b039283166004820152898316602482015260448101889052606481018b90529051919092169163bea75f289160848083019260209291908290030181600087803b15801561145257600080fd5b505af1158015611466573d6000803e3d6000fd5b505050506040513d602081101561147c57600080fd5b50516114cf576040805162461bcd60e51b815260206004820152601e60248201527f6661696c6564206174207374616b696e67546f6b656e5472616e736665720000604482015290519081900360640190fd5b8254600090815260036020908152604091829020548251878152925196975087966001600160a01b03808b16949216928b927fb4a37163ec93e05e09b62e52f7f2ea8cfde431802edede7dfebe53d2ad969dbb929081900390910190a45b5050509250929050565b60009182526001602090815260408084209284526012909201905290205490565b6006546001600160a01b031681565b6000908152600160208181526040808420838552601081018352818520546002808752838720549587526012909201909352818520549085529320549093919291565b60006115b461431c565b60008381526001602081815260409283902083516101c08101855281548152928101546001600160a01b038116928401929092529192830190600160a01b900460ff16600681111561160257fe5b600681111561160d57fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b815481526020019060010190808311611696575050509183525050600e919091015460ff16151560209091015260c081015181519192506116d691610b91565b6116df846137c8565b119392505050565b6000838152602081905260408120600b0154421161173d576040805162461bcd60e51b815260206004820152600e60248201526d1b9bdd081858dd1a5d99481e595d60921b604482015290519081900360640190fd5b60008481526020819052604090205460321115611797576040805162461bcd60e51b81526020600482015260136024820152721b9bc81c185c985b595d195c9cc8195e1a5cdd606a1b604482015290519081900360640190fd5b600554604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906117dc90600163ffffffff61372c16565b6005556117e761431c565b33602082810182905260408051606093841b818401526bffffffffffffffffffffffff1988851b16603482015281516028818303018152604890910182528051908301208452600381850181905261018085015142905260008a815280845282812060029081015460a08801526001600160a01b038b811660808901529587015260c086018b9052855181529252902054166118da576001600160a01b0384166118b0578051600090815260036020526040902080546001600160a01b031916331790556118da565b8051600090815260036020526040902080546001600160a01b0319166001600160a01b0386161790555b8051600090815260046020908152604080832054898452918390528220600a015461191191606491610f209163ffffffff61355216565b60008881526020819052604090206009015490915061193790829063ffffffff61380916565b60e0830152600083815260016020818152604092839020855181559085015191810180546001600160a01b0319166001600160a01b03909316929092178083559285015185939192909160ff60a01b1916600160a01b83600681111561199957fe5b0217905550606082015160028201556080820151600380830180546001600160a01b0319166001600160a01b039093169290921790915560a0830151600483015560c0830151600583015560e08301516006830155610100830151600783015561012083015160088301556101408301516009830155610160830151600a830155610180830151611a2f91600b8401919061439d565b506101a09190910151600e909101805460ff191691151591909117905560e08201516000848152600160209081526040808320600280855260129091018352818420949094558551835260038252918290205482519384526001600160a01b038a8116928501929092528383018b9052915191169185917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c916060908290030190a350909695505050505050565b60006064833511801590611af357506032833510155b611b2e5760405162461bcd60e51b81526004018080602001828103825260298152602001806144a56029913960400191505060405180910390fd5b613e80608084013511801590611b4957506103e86080840135115b611b9a576040805162461bcd60e51b815260206004820152601e60248201527f31303030203c207468726573686f6c64436f6e7374203c3d2031363030300000604482015290519081900360640190fd5b606460e08401351115611bf4576040805162461bcd60e51b815260206004820181905260248201527f766f7465727352657075746174696f6e4c6f7373526174696f203c3d20313030604482015290519081900360640190fd5b60a083013560408401351015611c3b5760405162461bcd60e51b815260040180806020018281038252602b81526020018061447a602b913960400191505060405180910390fd5b610100830135611c92576040805162461bcd60e51b815260206004820152601e60248201527f6d696e696d756d44616f426f756e74792073686f756c64206265203e20300000604482015290519081900360640190fd5b610120830135611ce9576040805162461bcd60e51b815260206004820152601c60248201527f64616f426f756e7479436f6e73742073686f756c64206265203e203000000000604482015290519081900360640190fd5b6000611d1f84600b806020026040519081016040528092919082600b602002808284376000920191909152508691506109cf9050565b60008181526020819052604090205490915015611d3d579050610ada565b60ac60026107d05b613e80811015611d8d57608087013581108015611d69575060028102608088013511155b15611d7f57818381611d7757fe5b049250611d8d565b600190910190600202611d45565b50604080516101a0810182528735815260208089013590820152878201359181019190915260608088013590820152608080820190611dda908901356001600160d81b03166103e8613819565b81526020810184905260a088810135604083015260c0808a0135606084015260e0808b013560808501526101008b0135928401929092526101208a0135908301520187600a6020908102919091013582526001600160a01b03978816918101919091526000858152808252604090819020835181559183015160018301558201516002820155606082015160038201556080820151600482015560a0820151600582015560c0820151600682015560e0820151600782015561010082015160088201556101208201516009820155610140820151600a820155610160820151600b82015561018090910151600c90910180546001600160a01b0319169190961617909455509392505050565b80611ef081612e92565b611f3b576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b5050565b50600290565b60076020526000908152604090205481565b600181565b6000918252600160209081526040808420928452600f909201905290205490565b6003602052600090815260409020546001600160a01b031681565b60046020526000908152604090205481565b600081815260016020526040812060056001820154600160a01b900460ff166006811115611fd457fe5b1480611ff9575060066001820154600160a01b900460ff166006811115611ff757fe5b145b6120345760405162461bcd60e51b81526004018080602001828103825260338152602001806144ef6033913960400191505060405180910390fd5b61203d8361383c565b61208e576040805162461bcd60e51b815260206004820152601760248201527f70726f706f73616c206e65656420746f20657870697265000000000000000000604482015290519081900360640190fd5b6120ba6120ad600b83016001015460048401549063ffffffff61372c16565b429063ffffffff61378616565b600a8201556120c883610ebc565b60088201549092506120e0908363ffffffff61378616565b60088201556006546040805163a9059cbb60e01b81523360048201526024810185905290516001600160a01b039092169163a9059cbb916044808201926020929091908290030181600087803b15801561213957600080fd5b505af115801561214d573d6000803e3d6000fd5b505050506040513d602081101561216357600080fd5b50516121b6576040805162461bcd60e51b815260206004820152601d60248201527f7472616e7366657220746f206d73672e73656e646572206661696c6564000000604482015290519081900360640190fd5b604080518381529051339185917f7468017f6ff596af88244327e88fe691ac48cc1db88b033d11c335f2c7ccdd039181900360200190a350919050565b6000610ada82612e92565b6122066143db565b60008281526001602052604090819020815160608101909252600b0160038282826020028201915b81548152602001906001019080831161222e5750505050509050919050565b6122556143db565b600083815260016020526040902060026001820154600160a01b900460ff16600681111561227f57fe5b14806122a35750600180820154600160a01b900460ff1660068111156122a157fe5b145b6122de5760405162461bcd60e51b815260040180806020018281038252602d81526020018061444d602d913960400191505060405180910390fd5b6122e66142ab565b5060058082015460009081526020818152604080832081516101a081018352815481526001820154818501526002808301548285015260038301546060830152600483015460808301529582015460a0820152600682015460c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154610140820152600b820154610160820152600c909101546001600160a01b0390811661018083015288168452601386018352818420948601548452601286019092528220549092916123f26123bc89610ebc565b6001600090815260128801602052604080822054600283529120546123e69163ffffffff61372c16565b9063ffffffff61378616565b6001840154909150156124bd57600180860154600160a01b900460ff16600681111561241a57fe5b141561242c57600183015486526124b5565b6002850154835414156124b55782546001141561249357808560070154101561248e57600061246886600701548361378690919063ffffffff16565b90508261248282866001015461355290919063ffffffff16565b8161248957fe5b048752505b6124b5565b600183015482906124aa908363ffffffff61355216565b816124b157fe5b0486525b600060018401555b600e85015460ff161580156124ed575084546000908152600360205260409020546001600160a01b038881169116145b80156125125750600180860154600160a01b900460ff16600681111561250f57fe5b14155b8015612522575060028560020154145b15612573576007850154612561906123e684612544838663ffffffff61355216565b8161254b57fe5b048960005b60200201519063ffffffff61372c16565b8652600e8501805460ff191660011790555b6001600160a01b038716600090815260118601602052604090206001810154158015906125a45750600281015460ff165b156126e357600180870154600160a01b900460ff1660068111156125c457fe5b14156125fa5760646125e8866101000151836001015461355290919063ffffffff16565b816125ef57fe5b0460208801526126db565b8054600287015414156126db57600060018760020154141561262f575060026000908152601087016020526040902054612644565b50600160009081526010870160205260409020545b606461265e8761010001518361355290919063ffffffff16565b8161266557fe5b6002890154600090815260108a01602052604090205460018501549290910492506126d49161269a908463ffffffff61355216565b816126a157fe5b0460646126c0896101000151866001015461355290919063ffffffff16565b816126c757fe5b049063ffffffff61372c16565b6020890152505b600060018201555b60038601546001600160a01b038981169116148015612706575060018660020154145b801561271e575060038601546001600160a01b031615155b156127405760e085015160408801526003860180546001600160a01b03191690555b86511561288d578651600887015461275791613786565b600887015560065487516040805163a9059cbb60e01b81526001600160a01b038c8116600483015260248201939093529051919092169163a9059cbb9160448083019260209291908290030181600087803b1580156127b557600080fd5b505af11580156127c9573d6000803e3d6000fd5b505050506040513d60208110156127df57600080fd5b5051612832576040805162461bcd60e51b815260206004820152601e60248201527f7472616e7366657220746f2062656e6566696369617279206661696c65640000604482015290519081900360640190fd5b8554600090815260036020908152604091829020548951835190815292516001600160a01b038c8116949216928d927f6d26871c9f457d104b2122485f659f126f7a0cf6938cf20482c03f49794a2fbf929081900390910190a45b604087015161289e90886001612550565b156129b25760018601546001600160a01b031663d29b5d2f6128c989600260200201518a6001612550565b8a8c6040518463ffffffff1660e01b815260040180848152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050602060405180830381600087803b15801561292157600080fd5b505af1158015612935573d6000803e3d6000fd5b505050506040513d602081101561294b57600080fd5b505085546000908152600360205260409020546001600160a01b03808a1691168a7f7419b736daacf66d5c1645948c956fca2b83be1e2e02d486d65713f289d683b86129a08b600260200201518c6001612550565b60408051918252519081900360200190a45b50505050505092915050565b6000610ada826137c8565b6000816129d581612e92565b612a20576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b612a298361383c565b9392505050565b60026020526000908152604090205481565b60008282650100000000005b8115610bd5578160011660011415612a6d57612a6a818461410d565b90505b60019190911c908115612a8757612a84838461410d565b92505b612a4e565b600060028411158015612a9f5750600084115b612ae3576040805162461bcd60e51b815260206004820152601060248201526f77726f6e6720766f74652076616c756560801b604482015290519081900360640190fd5b60008311612b38576040805162461bcd60e51b815260206004820152601b60248201527f7374616b696e6720616d6f756e742073686f756c64206265203e300000000000604482015290519081900360640190fd5b612b418561383c565b15612b4e57506001610bec565b600085815260016020526040902060046001820154600160a01b900460ff166006811115612b7857fe5b14158015612ba0575060036001820154600160a01b900460ff166006811115612b9d57fe5b14155b15612baf576000915050610bec565b6001600160a01b03831660009081526013820160205260409020600181015415801590612bdd575080548614155b15612bed57600092505050610bec565b600654604080516323b872dd60e01b81526001600160a01b038781166004830152306024830152604482018990529151889392909216916323b872dd916064808201926020929091908290030181600087803b158015612c4c57600080fd5b505af1158015612c60573d6000803e3d6000fd5b505050506040513d6020811015612c7657600080fd5b5051612cc9576040805162461bcd60e51b815260206004820152601960248201527f6661696c207472616e736665722066726f6d207374616b657200000000000000604482015290519081900360640190fd5b6008830154612cde908263ffffffff61372c16565b60088401556001820154612cf8908263ffffffff61372c16565b60018301819055600160801b1015612d57576040805162461bcd60e51b815260206004820152601a60248201527f7374616b696e6720616d6f756e7420697320746f6f2068696768000000000000604482015290519081900360640190fd5b6006830154612d7190600160801b9063ffffffff61378616565b83600801541115612dc9576040805162461bcd60e51b815260206004820152601860248201527f746f74616c207374616b657320697320746f6f20686967680000000000000000604482015290519081900360640190fd5b6001871415612ded576002820154612de7908263ffffffff61372c16565b60028301555b8682556000878152601284016020526040902054612e1290829063ffffffff61372c16565b60008881526012850160209081526040808320939093558554825260038152908290205482518a815291820189905282516001600160a01b03808a16949216928c927fd0239d7d4acf51def4507fa173be466927de5d75d8b10d840cd6994d6e10231092918290030190a4612e868861383c565b98975050505050505050565b600081815260016020819052604082200154600160a01b900460ff166004816006811115612ebc57fe5b1480612ed357506005816006811115612ed157fe5b145b80612ee957506006816006811115612ee757fe5b145b80612a2957506003816006811115612efd57fe5b149392505050565b600060028311158015612f185750600083115b612f5a576040805162461bcd60e51b815260206004820152600e60248201526d18101e102fbb37ba32901e1e901960911b604482015290519081900360640190fd5b612f638561383c565b15612f7057506001610bec565b612f786142ab565b506000858152600160208181526040808420600580820154865285845282862083516101a0810185528154815281870154818701526002820154818601526003820154606082015260048083015460808301529282015460a0820152600682015460c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154610140820152600b820154610160820152600c909101546001600160a01b039081166101808301528c8852868652958301548451634ac41bc760e11b81528c881693810193909352602483018d905293519096929592949390921692639588378e92604480840193829003018186803b15801561307f57600080fd5b505afa158015613093573d6000803e3d6000fd5b505050506040513d60208110156130a957600080fd5b50519050806130ff576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b84811015613149576040805162461bcd60e51b8152602060048201526012602482015271072657075746174696f6e203e3d205f7265760741b604482015290519081900360640190fd5b84806131525750805b6001600160a01b038816600090815260118401602052604090206001015415613182576000945050505050610bec565b6000878152600f840160205260409020546131a490829063ffffffff61372c16565b6000888152600f85016020526040808220839055600286015482528120549089905210806131fc57506002808401546000908152600f85016020526040808220549282529020541480156131fc575060018360020154145b1561330b5760056001840154600160a01b900460ff16600681111561321d57fe5b14801561323d575060c0840151604085015103600b840160010154420310155b80613261575060066001840154600160a01b900460ff16600681111561325f57fe5b145b156133035760066001840154600160a01b900460ff16600681111561328257fe5b146132fc5760c0840151600484015560018301805460ff60a01b1916600360a11b17908190556040518a917f21aca7f0285ccddeca2935074d3e36b5ab8fea0327f84cbbf12cf1b6d1a749f991600160a01b90910460ff1690808260068111156132e857fe5b60ff16815260200191505060405180910390a25b42600c8401555b600283018790555b604080516060810182528881526020810183905290810160046001860154600160a01b900460ff16600681111561333e57fe5b1480613363575060036001860154600160a01b900460ff16600681111561336157fe5b145b151590526001600160a01b0389166000908152601185016020908152604091829020835181559083015160018201559101516002909101805460ff191691151591909117905560046001840154600160a01b900460ff1660068111156133c557fe5b14806133ea575060036001840154600160a01b900460ff1660068111156133e857fe5b145b156134d757600087815260108401602052604090205461341190829063ffffffff61372c16565b600088815260108501602052604081209190915561010085015160649061343e908463ffffffff61355216565b8161344557fe5b600186015460408051637c0fc5fb60e11b815293909204600484018190526001600160a01b038d81166024860152604485018f9052925190945091169163f81f8bf69160648083019260209291908290030181600087803b1580156134a957600080fd5b505af11580156134bd573d6000803e3d6000fd5b505050506040513d60208110156134d357600080fd5b5050505b82546000908152600360209081526040918290205482518a815291820184905282516001600160a01b03808d16949216928d927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92918290030190a4610e9a8961383c565b600081831061354b5781612a29565b5090919050565b60008261356157506000610ada565b8282028284828161356e57fe5b0414612a295760405162461bcd60e51b81526004018080602001828103825260218152602001806144ce6021913960400191505060405180910390fd5b6000612a2983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250614171565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b6000815160411461365157506000610ada565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08211156136975760009350505050610ada565b8060ff16601b141580156136af57508060ff16601c14155b156136c05760009350505050610ada565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015613717573d6000803e3d6000fd5b5050604051601f190151979650505050505050565b600082820183811015612a29576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000612a2983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250614213565b60008181526001602081815260408084206002855260128101909252808420549284528320549091612a29916001600160d81b03169063ffffffff61381916565b60008183101561354b5781612a29565b6000612a296001600160d81b03808516650100000000009081029185160261426d565b60008161384881612e92565b613893576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008381526001602052604090206138a96142ab565b506005808201546000908152602081815260409182902082516101a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600482015460808201529181015460a0830152600681015460c0830152600781015460e083015260088101546101008301526009810154610120830152600a810154610140830152600b810154610160830152600c01546001600160a01b031661018082015261395d61431c565b604080516101c0810182528454815260018501546001600160a01b03811660208301529091859190830190600160a01b900460ff16600681111561399d57fe5b60068111156139a857fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b815481526020019060010190808311613a31575050509183525050600e919091015460ff16151560209182015260018501546040805163b551c37360e01b8152600481018b905290519394506000936001600160a01b039092169263b551c37392602480840193829003018186803b158015613aac57600080fd5b505afa158015613ac0573d6000803e3d6000fd5b505050506040513d6020811015613ad657600080fd5b5051835160028601546000908152600f87016020526040812054929350606484049091029181908190841015613b835760036001890154600160a01b900460ff166006811115613b2257fe5b1415613b315760019250613b61565b60046001890154600160a01b900460ff166006811115613b4d57fe5b1415613b5c5760039250613b61565b600592505b6001880180546002919060ff60a01b1916600160a01b835b0217905550613dca565b60036001890154600160a01b900460ff166006811115613b9f57fe5b1415613c21576020870151600b890154420310613bda5760018801805460ff60a01b1916600160a01b17905560028089018190559250613c21565b613bec88600501548960000154610b91565b905080613bf88c6137c8565b1115613c215760018801805460ff60a01b1916600160a21b17905542600d890155600988018190555b60046001890154600160a01b900460ff166006811115613c3d57fe5b1415613dca57613c5588600501548960000154610b91565b6060880151909150600b890160020154420310613d3b5780613c768c6137c8565b1115613d1a5787546000908152600260205260409020546110001115613d15576001888101805460ff60a01b1916600560a01b17905542600c8a01558854600090815260026020818152604080842080549095019094558b54835260048152838320548282528484205492845260128d0190915292909120549193509083900381613cfd57fe5b89546000908152600460205260409020919005830190555b613d36565b6001880180546003919060ff60a01b1916600160a01b83613b79565b613dca565b6000613d468c6137c8565b60098a0154909150613d5e908363ffffffff61353c16565b8111613d7e5760018901805460ff60a01b1916600360a01b179055613dc8565b8089600901541115613dc857600989018290556040805183815290518d917fad767d61af51c7895fa3cc0497dde01afb610c74e55ee4d8a71fa5e3ee136d54919081900360200190a25b505b60056001890154600160a01b900460ff166006811115613de657fe5b1480613e0b575060066001890154600160a01b900460ff166006811115613e0957fe5b145b15613e3b576004880154600c890154420310613e3b5760018801805460ff60a01b1916600160a11b179055600492505b6000836005811115613e4957fe5b14614067576004836005811115613e5c57fe5b1480613e7357506005836005811115613e7157fe5b145b15613f2e578551600090815260026020526040902054613e9a90600163ffffffff61378616565b86516000908152600260205260408082209290925587518152205480613ed0578854600090815260046020526040812055613f2c565b88546000908152600460209081526040808320546002845260128d01909252909120549093508190613f0f906123e6866001850163ffffffff61355216565b81613f1657fe5b8a54600090815260046020526040902091900490555b505b87546000908152600360209081526040918290205460028b0154835190815291820188905282516001600160a01b03909116928e927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a38a7f46a713b994c752c68fbefa9048bec9a0010cc7d933ad95a3c3dbb25931a167e78460405180826005811115613fc157fe5b60ff16815260200191505060405180910390a2600688015460078901556001880154600289015460408051639d4c162d60e01b8152600481018f90526024810192909252516001600160a01b0390921691639d4c162d916044808201926020929091908290030181600087803b15801561403a57600080fd5b505af115801561404e573d6000803e3d6000fd5b505050506040513d602081101561406457600080fd5b50505b6001880154600160a01b900460ff16600681111561408157fe5b8660400151600681111561409157fe5b146140ee578a7f21aca7f0285ccddeca2935074d3e36b5ab8fea0327f84cbbf12cf1b6d1a749f98960010160149054906101000a900460ff16604051808260068111156140da57fe5b60ff16815260200191505060405180910390a25b60008360058111156140fc57fe5b14159b9a5050505050505050505050565b60008282028284828161411c57fe5b0414614167576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b600081836141fd5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156141c25781810151838201526020016141aa565b50505050905090810190601f1680156141ef5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161420957fe5b0495945050505050565b600081848411156142655760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156141c25781810151838201526020016141aa565b505050900390565b6000816501000000000084028161428057fe5b049392505050565b604051806060016040528060008152602001600081526020016000151581525090565b604051806101a0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681525090565b604080516101c081018252600080825260208201819052909182019081526020016000815260200160006001600160a01b03168152602001600081526020016000801916815260200160008152602001600081526020016000815260200160008152602001600081526020016143906143db565b8152600060209091015290565b82600381019282156143cb579160200282015b828111156143cb5782518255916020019190600101906143b0565b506143d79291506143f9565b5090565b60405180606001604052806003906020820280388339509192915050565b61120991905b808211156143d757600081556001016143ff565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590610bec57505015159291505056fe50726f706f73616c2073686f756c64206265204578656375746564206f722045787069726564496e5175657565626f6f73746564566f7465506572696f644c696d6974203e3d207175696574456e64696e67506572696f643530203c3d20717565756564566f7465526571756972656450657263656e74616765203c3d20313030536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7770726f706f73616c20737461746520696e206e6f7420426f6f73746564206e6f72205175696574456e64696e67506572696f646d73672e73656e646572206973206e6f7420617574686f72697a656420746f20766f7465a265627a7a7231582099edc6bafffc35fc35134ed08f81fca97d4d65079275c620e67ec233c40fc15d64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/GenesisProtocolCallbacksMock.json b/contracts/0.0.1-rc.53/GenesisProtocolCallbacksMock.json new file mode 100644 index 00000000..8d216779 --- /dev/null +++ b/contracts/0.0.1-rc.53/GenesisProtocolCallbacksMock.json @@ -0,0 +1,614 @@ +{ + "contractName": "GenesisProtocolCallbacksMock", + "abi": [ + { + "inputs": [ + { + "internalType": "contract Reputation", + "name": "_reputation", + "type": "address" + }, + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "contract GenesisProtocol", + "name": "_genesisProtocol", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_msg", + "type": "address" + } + ], + "name": "LogAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "_msg", + "type": "bool" + } + ], + "name": "LogBool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "_msg", + "type": "bytes" + } + ], + "name": "LogBytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "_msg", + "type": "bytes32" + } + ], + "name": "LogBytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "_msg", + "type": "int256" + } + ], + "name": "LogInt", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "_msg", + "type": "string" + } + ], + "name": "LogString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "_msg", + "type": "uint256" + } + ], + "name": "LogUint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "burnReputationTest", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "genesisProtocol", + "outputs": [ + { + "internalType": "contract GenesisProtocol", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumbers", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputation", + "outputs": [ + { + "internalType": "contract Reputation", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256[11]", + "name": "_params", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "setProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "stakingToken", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610ee4380380610ee48339818101604052606081101561003357600080fd5b508051602082015160409092015190919060006100576001600160e01b036100e716565b600080546001600160a01b0319166001600160a01b038316908117825560405192935091600080516020610ec4833981519152908290a350600180546001600160a01b038086166001600160a01b0319928316179092556002805485841690831617905560038054848416921691909117908190556100df91166001600160e01b036100eb16565b50505061021d565b3390565b6100fc6001600160e01b0361016216565b61014d576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61015f816001600160e01b0361018f16565b50565b600080546001600160a01b03166101806001600160e01b036100e716565b6001600160a01b031614905090565b6001600160a01b0381166101d45760405162461bcd60e51b8152600401808060200182810382526026815260200180610e9e6026913960400191505060405180910390fd5b600080546040516001600160a01b0380851693921691600080516020610ec483398151915291a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b610c728061022c6000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80639588378e116100ad578063c52164c611610071578063c52164c614610325578063d1c756501461032d578063d29b5d2f1461034a578063f2fde38b1461037c578063f81f8bf6146103a257610121565b80639588378e1461024b5780639d4c162d14610277578063abcc9cb91461029a578063b551c373146102cc578063bea75f28146102e957610121565b806372f702f3116100f457806372f702f3146101e35780637581d62f146102075780638894c41b1461020f5780638da5cb5b1461023b5780638f32d59b1461024357610121565b80630905c9f9146101265780636b8eb4031461017c57806370a53748146101a8578063715018a6146101d9575b600080fd5b61016a600480360360a081101561013c57600080fd5b508035906020810135906001600160a01b0360408201358116916060810135821691608090910135166103d4565b60408051918252519081900360200190f35b61016a6004803603604081101561019257600080fd5b506001600160a01b0381351690602001356104d1565b6101c5600480360360208110156101be57600080fd5b503561054e565b604080519115158252519081900360200190f35b6101e1610562565b005b6101eb6105f3565b604080516001600160a01b039092168252519081900360200190f35b6101eb610602565b61016a600480360361018081101561022657600080fd5b506001600160a01b0361016082013516610611565b6101eb6106a5565b6101c56106b4565b61016a6004803603604081101561026157600080fd5b506001600160a01b0381351690602001356106d8565b6101c56004803603604081101561028d57600080fd5b508035906020013561073e565b6101c5600480360360608110156102b057600080fd5b508035906001600160a01b0360208201351690604001356107b0565b61016a600480360360208110156102e257600080fd5b503561083d565b6101c5600480360360808110156102ff57600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356108c3565b6101eb6109a1565b61016a6004803603602081101561034357600080fd5b50356109b0565b6101c56004803603606081101561036057600080fd5b508035906001600160a01b0360208201351690604001356109c2565b6101e16004803603602081101561039257600080fd5b50356001600160a01b0316610a61565b6101c5600480360360608110156103b857600080fd5b508035906001600160a01b036020820135169060400135610ab4565b60035460408051634439bdaf60e11b815260048101889052602481018790526001600160a01b03858116604483015284811660648301529151600093849316916388737b5e91608480830192602092919082900301818787803b15801561043a57600080fd5b505af115801561044e573d6000803e3d6000fd5b505050506040513d602081101561046457600080fd5b5051604080518981526001600160a01b03871660208201528082018990529051919250309183917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a360008181526004602052604090204390559695505050505050565b604080516370a0823160e01b815230600482015290516000916001600160a01b038516916370a0823191602480820192602092909190829003018186803b15801561051b57600080fd5b505afa15801561052f573d6000803e3d6000fd5b505050506040513d602081101561054557600080fd5b50519392505050565b600090815260046020526040812043905590565b61056a6106b4565b6105a9576040805162461bcd60e51b81526020600482018190526024820152600080516020610c1e833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6002546001600160a01b031681565b6003546001600160a01b031681565b600354604051638894c41b60e01b81526000916001600160a01b031690638894c41b9085908590600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b03166001600160a01b0316815260200192505050602060405180830381600087803b15801561069157600080fd5b505af115801561052f573d6000803e3d6000fd5b6000546001600160a01b031690565b600080546001600160a01b03166106c9610b53565b6001600160a01b031614905090565b600154600082815260046020818152604080842054815163277166bf60e11b81526001600160a01b03898116958201959095526024810191909152905193949290921692634ee2cd7e926044808201939291829003018186803b15801561051b57600080fd5b6040805183815290516000917e9fd52f05c0ded31d6fb0ee580b923f85e99cf1a5a1da342f25e73c45829c83919081900360200190a16040805183815290517f1aa4309bfd99af8afa7454590e1bdaa5a9b3b63e5baa109ae9afa3ecd0c67f399181900360200190a150600192915050565b60015460408051632770a7eb60e21b81526001600160a01b0385811660048301526024820187905291516000939290921691639dc29fac9160448082019260209290919082900301818787803b15801561080957600080fd5b505af115801561081d573d6000803e3d6000fd5b505050506040513d602081101561083357600080fd5b5051949350505050565b6001546000828152600460208181526040808420548151630981b24d60e41b8152938401525192936001600160a01b03169263981b24d0926024808201939291829003018186803b15801561089157600080fd5b505afa1580156108a5573d6000803e3d6000fd5b505050506040513d60208110156108bb57600080fd5b505192915050565b60006108cd6106b4565b61090c576040805162461bcd60e51b81526020600482018190526024820152600080516020610c1e833981519152604482015290519081900360640190fd5b846001600160a01b031663a9059cbb85856040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561096c57600080fd5b505af1158015610980573d6000803e3d6000fd5b505050506040513d602081101561099657600080fd5b505195945050505050565b6001546001600160a01b031681565b60046020526000908152604090205481565b60006109cc6106b4565b610a0b576040805162461bcd60e51b81526020600482018190526024820152600080516020610c1e833981519152604482015290519081900360640190fd5b600154604080516340c10f1960e01b81526001600160a01b03868116600483015260248201889052915191909216916340c10f199160448083019260209291908290030181600087803b15801561080957600080fd5b610a696106b4565b610aa8576040805162461bcd60e51b81526020600482018190526024820152600080516020610c1e833981519152604482015290519081900360640190fd5b610ab181610b57565b50565b6000610abe6106b4565b610afd576040805162461bcd60e51b81526020600482018190526024820152600080516020610c1e833981519152604482015290519081900360640190fd5b60015460408051632770a7eb60e21b81526001600160a01b0386811660048301526024820188905291519190921691639dc29fac9160448083019260209291908290030181600087803b15801561080957600080fd5b3390565b6001600160a01b038116610b9c5760405162461bcd60e51b8152600401808060200182810382526026815260200180610bf86026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a723158205c1bbaa36f2869d0701fc81de61a0d55fda18a1a8b4a221012dbec50072550e264736f6c634300051100324f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573738be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c80639588378e116100ad578063c52164c611610071578063c52164c614610325578063d1c756501461032d578063d29b5d2f1461034a578063f2fde38b1461037c578063f81f8bf6146103a257610121565b80639588378e1461024b5780639d4c162d14610277578063abcc9cb91461029a578063b551c373146102cc578063bea75f28146102e957610121565b806372f702f3116100f457806372f702f3146101e35780637581d62f146102075780638894c41b1461020f5780638da5cb5b1461023b5780638f32d59b1461024357610121565b80630905c9f9146101265780636b8eb4031461017c57806370a53748146101a8578063715018a6146101d9575b600080fd5b61016a600480360360a081101561013c57600080fd5b508035906020810135906001600160a01b0360408201358116916060810135821691608090910135166103d4565b60408051918252519081900360200190f35b61016a6004803603604081101561019257600080fd5b506001600160a01b0381351690602001356104d1565b6101c5600480360360208110156101be57600080fd5b503561054e565b604080519115158252519081900360200190f35b6101e1610562565b005b6101eb6105f3565b604080516001600160a01b039092168252519081900360200190f35b6101eb610602565b61016a600480360361018081101561022657600080fd5b506001600160a01b0361016082013516610611565b6101eb6106a5565b6101c56106b4565b61016a6004803603604081101561026157600080fd5b506001600160a01b0381351690602001356106d8565b6101c56004803603604081101561028d57600080fd5b508035906020013561073e565b6101c5600480360360608110156102b057600080fd5b508035906001600160a01b0360208201351690604001356107b0565b61016a600480360360208110156102e257600080fd5b503561083d565b6101c5600480360360808110156102ff57600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356108c3565b6101eb6109a1565b61016a6004803603602081101561034357600080fd5b50356109b0565b6101c56004803603606081101561036057600080fd5b508035906001600160a01b0360208201351690604001356109c2565b6101e16004803603602081101561039257600080fd5b50356001600160a01b0316610a61565b6101c5600480360360608110156103b857600080fd5b508035906001600160a01b036020820135169060400135610ab4565b60035460408051634439bdaf60e11b815260048101889052602481018790526001600160a01b03858116604483015284811660648301529151600093849316916388737b5e91608480830192602092919082900301818787803b15801561043a57600080fd5b505af115801561044e573d6000803e3d6000fd5b505050506040513d602081101561046457600080fd5b5051604080518981526001600160a01b03871660208201528082018990529051919250309183917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a360008181526004602052604090204390559695505050505050565b604080516370a0823160e01b815230600482015290516000916001600160a01b038516916370a0823191602480820192602092909190829003018186803b15801561051b57600080fd5b505afa15801561052f573d6000803e3d6000fd5b505050506040513d602081101561054557600080fd5b50519392505050565b600090815260046020526040812043905590565b61056a6106b4565b6105a9576040805162461bcd60e51b81526020600482018190526024820152600080516020610c1e833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6002546001600160a01b031681565b6003546001600160a01b031681565b600354604051638894c41b60e01b81526000916001600160a01b031690638894c41b9085908590600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b03166001600160a01b0316815260200192505050602060405180830381600087803b15801561069157600080fd5b505af115801561052f573d6000803e3d6000fd5b6000546001600160a01b031690565b600080546001600160a01b03166106c9610b53565b6001600160a01b031614905090565b600154600082815260046020818152604080842054815163277166bf60e11b81526001600160a01b03898116958201959095526024810191909152905193949290921692634ee2cd7e926044808201939291829003018186803b15801561051b57600080fd5b6040805183815290516000917e9fd52f05c0ded31d6fb0ee580b923f85e99cf1a5a1da342f25e73c45829c83919081900360200190a16040805183815290517f1aa4309bfd99af8afa7454590e1bdaa5a9b3b63e5baa109ae9afa3ecd0c67f399181900360200190a150600192915050565b60015460408051632770a7eb60e21b81526001600160a01b0385811660048301526024820187905291516000939290921691639dc29fac9160448082019260209290919082900301818787803b15801561080957600080fd5b505af115801561081d573d6000803e3d6000fd5b505050506040513d602081101561083357600080fd5b5051949350505050565b6001546000828152600460208181526040808420548151630981b24d60e41b8152938401525192936001600160a01b03169263981b24d0926024808201939291829003018186803b15801561089157600080fd5b505afa1580156108a5573d6000803e3d6000fd5b505050506040513d60208110156108bb57600080fd5b505192915050565b60006108cd6106b4565b61090c576040805162461bcd60e51b81526020600482018190526024820152600080516020610c1e833981519152604482015290519081900360640190fd5b846001600160a01b031663a9059cbb85856040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561096c57600080fd5b505af1158015610980573d6000803e3d6000fd5b505050506040513d602081101561099657600080fd5b505195945050505050565b6001546001600160a01b031681565b60046020526000908152604090205481565b60006109cc6106b4565b610a0b576040805162461bcd60e51b81526020600482018190526024820152600080516020610c1e833981519152604482015290519081900360640190fd5b600154604080516340c10f1960e01b81526001600160a01b03868116600483015260248201889052915191909216916340c10f199160448083019260209291908290030181600087803b15801561080957600080fd5b610a696106b4565b610aa8576040805162461bcd60e51b81526020600482018190526024820152600080516020610c1e833981519152604482015290519081900360640190fd5b610ab181610b57565b50565b6000610abe6106b4565b610afd576040805162461bcd60e51b81526020600482018190526024820152600080516020610c1e833981519152604482015290519081900360640190fd5b60015460408051632770a7eb60e21b81526001600160a01b0386811660048301526024820188905291519190921691639dc29fac9160448083019260209291908290030181600087803b15801561080957600080fd5b3390565b6001600160a01b038116610b9c5760405162461bcd60e51b8152600401808060200182810382526026815260200180610bf86026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a723158205c1bbaa36f2869d0701fc81de61a0d55fda18a1a8b4a221012dbec50072550e264736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/GenesisProtocolInterface.json b/contracts/0.0.1-rc.53/GenesisProtocolInterface.json new file mode 100644 index 00000000..ac87ccab --- /dev/null +++ b/contracts/0.0.1-rc.53/GenesisProtocolInterface.json @@ -0,0 +1,35 @@ +{ + "contractName": "GenesisProtocolInterface", + "abi": [ + { + "constant": false, + "inputs": [ + { + "internalType": "uint256[11]", + "name": "_params", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/GenesisProtocolLogic.json b/contracts/0.0.1-rc.53/GenesisProtocolLogic.json new file mode 100644 index 00000000..1167d7ae --- /dev/null +++ b/contracts/0.0.1-rc.53/GenesisProtocolLogic.json @@ -0,0 +1,1070 @@ +{ + "contractName": "GenesisProtocolLogic", + "abi": [ + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "CancelProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "CancelVoting", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_confidenceThreshold", + "type": "uint256" + } + ], + "name": "ConfidenceLevelChange", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_decision", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_totalReputation", + "type": "uint256" + } + ], + "name": "ExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "ExpirationCallBounty", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "enum GenesisProtocolLogic.ExecutionState", + "name": "_executionState", + "type": "uint8" + } + ], + "name": "GPExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemDaoBounty", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemReputation", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_staker", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Stake", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "enum GenesisProtocolLogic.ProposalState", + "name": "_proposalState", + "type": "uint8" + } + ], + "name": "StateChange", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "VoteProposal", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "NO", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "NUM_OF_CHOICES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "YES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "averagesDownstakesOfBoosted", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "calcExecuteCallBounty", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "cancelVote", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "executeBoosted", + "outputs": [ + { + "internalType": "uint256", + "name": "expirationCallBounty", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAllowedRangeOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getNumberOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256[11]", + "name": "_params", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isAbstainAllow", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "isVotable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "orgBoostedProposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizations", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "uint256", + "name": "queuedVoteRequiredPercentage", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "queuedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "boostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "preBoostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thresholdConst", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "limitExponentValue", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "quietEndingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "proposingRepReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "votersReputationLossRatio", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minimumDaoBounty", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "daoBountyConst", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "activationTime", + "type": "uint256" + }, + { + "internalType": "address", + "name": "voteOnBehalf", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "bytes32", + "name": "organizationId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "callbacks", + "type": "address" + }, + { + "internalType": "enum GenesisProtocolLogic.ProposalState", + "name": "state", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + }, + { + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "internalType": "uint256", + "name": "currentBoostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "paramsHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "daoBountyRemain", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "daoBounty", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "totalStakes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "confidenceThreshold", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "secondsFromTimeOutTillExecuteBoosted", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "daoRedeemItsWinnings", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "proposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "rewards", + "type": "uint256[3]" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeemDaoBounty", + "outputs": [ + { + "internalType": "uint256", + "name": "redeemedAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "potentialAmount", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256[11]", + "name": "_params", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "shouldBoost", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "stakingToken", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_organizationId", + "type": "bytes32" + } + ], + "name": "threshold", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_rep", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_choice", + "type": "uint256" + } + ], + "name": "voteStatus", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/GlobalConstraintInterface.json b/contracts/0.0.1-rc.53/GlobalConstraintInterface.json new file mode 100644 index 00000000..5310c91f --- /dev/null +++ b/contracts/0.0.1-rc.53/GlobalConstraintInterface.json @@ -0,0 +1,88 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GlobalConstraintInterface", + "sourceName": "contracts/globalConstraints/GlobalConstraintInterface.sol", + "abi": [ + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_params", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_method", + "type": "bytes32" + } + ], + "name": "post", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_params", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_method", + "type": "bytes32" + } + ], + "name": "pre", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "when", + "outputs": [ + { + "internalType": "enum GlobalConstraintInterface.CallPhase", + "name": "", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/GlobalConstraintMock.json b/contracts/0.0.1-rc.53/GlobalConstraintMock.json new file mode 100644 index 00000000..b71290d1 --- /dev/null +++ b/contracts/0.0.1-rc.53/GlobalConstraintMock.json @@ -0,0 +1,160 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GlobalConstraintMock", + "sourceName": "contracts/test/GlobalConstraintMock.sol", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "currentCallPhase", + "outputs": [ + { + "internalType": "enum GlobalConstraintInterface.CallPhase", + "name": "", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "method", + "type": "bytes32" + } + ], + "name": "post", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "method", + "type": "bytes32" + } + ], + "name": "pre", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "method", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "pre", + "type": "bool" + }, + { + "internalType": "bool", + "name": "post", + "type": "bool" + } + ], + "name": "setConstraint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "testParams", + "outputs": [ + { + "internalType": "bool", + "name": "pre", + "type": "bool" + }, + { + "internalType": "bool", + "name": "post", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "when", + "outputs": [ + { + "internalType": "enum GlobalConstraintInterface.CallPhase", + "name": "", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610297806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80632414112b14610067578063696a72531461009357806373d2ea39146100d45780638043154d1461010c578063c1786ab21461013e578063e2b0caef14610170575b600080fd5b61006f610178565b6040518082600281111561007f57fe5b60ff16815260200191505060405180910390f35b6100c0600480360360608110156100a957600080fd5b508035906020810135151590604001351515610181565b604080519115158252519081900360200190f35b6100f1600480360360208110156100ea57600080fd5b5035610206565b60408051921515835290151560208301528051918290030190f35b6100c06004803603606081101561012257600080fd5b506001600160a01b038135169060208101359060400135610224565b6100c06004803603606081101561015457600080fd5b506001600160a01b038135169060208101359060400135610241565b61006f610259565b60015460ff1681565b6000838152602081905260408120805460ff19168415801591821761ff00191661010086151502179092556101b4575081155b156101d257600180546002919060ff191681835b02179055506101fc565b826101ea57600180546000919060ff191681836101c8565b816101fc576001805460ff1916811790555b5060019392505050565b60006020819052908152604090205460ff8082169161010090041682565b600090815260208190526040902054610100900460ff1692915050565b60009081526020819052604090205460ff1692915050565b60015460ff169056fea265627a7a72315820b5e92f09b5b2592ce8dfd00ced108d7561a32f70dc38dac5bd4e78115b67050e64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c80632414112b14610067578063696a72531461009357806373d2ea39146100d45780638043154d1461010c578063c1786ab21461013e578063e2b0caef14610170575b600080fd5b61006f610178565b6040518082600281111561007f57fe5b60ff16815260200191505060405180910390f35b6100c0600480360360608110156100a957600080fd5b508035906020810135151590604001351515610181565b604080519115158252519081900360200190f35b6100f1600480360360208110156100ea57600080fd5b5035610206565b60408051921515835290151560208301528051918290030190f35b6100c06004803603606081101561012257600080fd5b506001600160a01b038135169060208101359060400135610224565b6100c06004803603606081101561015457600080fd5b506001600160a01b038135169060208101359060400135610241565b61006f610259565b60015460ff1681565b6000838152602081905260408120805460ff19168415801591821761ff00191661010086151502179092556101b4575081155b156101d257600180546002919060ff191681835b02179055506101fc565b826101ea57600180546000919060ff191681836101c8565b816101fc576001805460ff1916811790555b5060019392505050565b60006020819052908152604090205460ff8082169161010090041682565b600090815260208190526040902054610100900460ff1692915050565b60009081526020819052604090205460ff1692915050565b60015460ff169056fea265627a7a72315820b5e92f09b5b2592ce8dfd00ced108d7561a32f70dc38dac5bd4e78115b67050e64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/GlobalConstraintRegistrar.json b/contracts/0.0.1-rc.53/GlobalConstraintRegistrar.json new file mode 100644 index 00000000..dca1e316 --- /dev/null +++ b/contracts/0.0.1-rc.53/GlobalConstraintRegistrar.json @@ -0,0 +1,586 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GlobalConstraintRegistrar", + "sourceName": "contracts/universalSchemes/GlobalConstraintRegistrar.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_gc", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_params", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_voteToRemoveParams", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewGlobalConstraintsProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_gc", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "RemoveGlobalConstraintsProposal", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_voteRegisterParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_intVote", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationsProposals", + "outputs": [ + { + "internalType": "address", + "name": "gc", + "type": "address" + }, + { + "internalType": "bool", + "name": "addGC", + "type": "bool" + }, + { + "internalType": "bytes32", + "name": "params", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "voteToRemoveParams", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "voteRegisterParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "intVote", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_gc", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_params", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_voteToRemoveParams", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeGlobalConstraint", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_gc", + "type": "address" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeToRemoveGC", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_voteRegisterParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_intVote", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "voteToRemoveParams", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611d95806100206000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80637a35630411610097578063b551c37311610066578063b551c37314610471578063bea75f281461048e578063d29b5d2f146104ca578063f81f8bf6146104fc576100f5565b80637a356304146103215780639588378e146103e05780639d4c162d1461040c578063a3379f9014610443576100f5565b806360bdbb3f116100d357806360bdbb3f146101d257806368e14dac146101fe5780636b8eb4031461022a578063776fdd2414610256576100f5565b806302506804146100fa57806306e3a978146101385780632453732a14610194575b600080fd5b6101176004803603602081101561011057600080fd5b503561052e565b604080519283526001600160a01b0390911660208301528051918290030190f35b6101646004803603604081101561014e57600080fd5b506001600160a01b038135169060200135610550565b604080516001600160a01b0390951685529215156020850152838301919091526060830152519081900360800190f35b6101c0600480360360408110156101aa57600080fd5b50803590602001356001600160a01b031661058f565b60408051918252519081900360200190f35b610117600480360360408110156101e857600080fd5b506001600160a01b0381351690602001356105d1565b6101c06004803603604081101561021457600080fd5b50803590602001356001600160a01b03166105fb565b6101c06004803603604081101561024057600080fd5b506001600160a01b038135169060200135610640565b6101c0600480360360a081101561026c57600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a0810160808201356401000000008111156102ac57600080fd5b8201836020820111156102be57600080fd5b803590602001918460018302840111640100000000831117156102e057600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106fe945050505050565b6101c06004803603606081101561033757600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561036b57600080fd5b82018360208201111561037d57600080fd5b8035906020019184600183028401116401000000008311171561039f57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109df945050505050565b6101c0600480360360408110156103f657600080fd5b506001600160a01b038135169060200135610db8565b61042f6004803603604081101561042257600080fd5b508035906020013561104a565b604080519115158252519081900360200190f35b6101c06004803603604081101561045957600080fd5b506001600160a01b03813581169160200135166113cb565b6101c06004803603602081101561048757600080fd5b50356113e8565b61042f600480360360808110156104a457600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611670565b61042f600480360360608110156104e057600080fd5b508035906001600160a01b036020820135169060400135611812565b61042f6004803603606081101561051257600080fd5b508035906001600160a01b0360208201351690604001356119ab565b600360205260009081526040902080546001909101546001600160a01b031682565b600160208181526000938452604080852090915291835291208054918101546002909101546001600160a01b03831692600160a01b900460ff16919084565b6040805160208082018590526bffffffffffffffffffffffff19606085901b168284015282516034818403018152605490920190925280519101205b92915050565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b600080610608848461058f565b600081815260036020526040902085815560010180546001600160a01b0386166001600160a01b031990911617905591505092915050565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806106745760009150506105cb565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156106ca57600080fd5b505afa1580156106de573d6000803e3d6000fd5b505050506040513d60208110156106f457600080fd5b5051949350505050565b6000610708611d22565b6003600061071589611b0c565b8152602080820192909252604090810160009081208251808401845281548082526001909201546001600160a01b039081168287018190528551634439bdaf60e11b8152600260048201526024810194909452336044850152908d16606484015293519095509293919284926388737b5e926084808201939182900301818787803b1580156107a357600080fd5b505af11580156107b7573d6000803e3d6000fd5b505050506040513d60208110156107cd57600080fd5b505190506107d9611d39565b60405180608001604052808a6001600160a01b0316815260200160011515815260200189815260200188815250905080600160008c6001600160a01b03166001600160a01b03168152602001908152602001600020600084815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160000160146101000a81548160ff0219169083151502179055506040820151816001015560608201518160020155905050826001600160a01b0316828b6001600160a01b03167f91844be4872bbec71676ddd1d7a85222f6e62f10f70887042e501b0a7a5e28f28c8c8c8c60405180856001600160a01b03166001600160a01b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561093e578181015183820152602001610926565b50505050905090810190601f16801561096b5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a4506040805180820182524381526001600160a01b039a8b166020808301918252948c166000908152808652838120858252909552919093209251835551600190920180546001600160a01b0319169290991691909117909755509495945050505050565b600080846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610a1b57600080fd5b505afa158015610a2f573d6000803e3d6000fd5b505050506040513d6020811015610a4557600080fd5b505160408051637bb2445f60e11b81526001600160a01b038781166004830152888116602483015291519293509083169163f76488be91604480820192602092909190829003018186803b158015610a9c57600080fd5b505afa158015610ab0573d6000803e3d6000fd5b505050506040513d6020811015610ac657600080fd5b5051610ad157600080fd5b610ad9611d22565b60036000610ae688611b0c565b81526020808201929092526040908101600090812082518084018452815481526001909101546001600160a01b039081168286018190528b82168085526002808852868620938d168652928752858520548651634439bdaf60e11b815260048101949094526024840152336044840152606483015293519195509293919284926388737b5e9260848084019382900301818787803b158015610b8757600080fd5b505af1158015610b9b573d6000803e3d6000fd5b505050506040513d6020811015610bb157600080fd5b50519050610bbd611d39565b6040518060800160405280896001600160a01b031681526020016000151581526020016000801b81526020016000801b815250905080600160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600084815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160000160146101000a81548160ff0219169083151502179055506040820151816001015560608201518160020155905050826001600160a01b0316828a6001600160a01b03167f4adc38b95e17c3b3410caa223e957ebc5cfdae71c60f1801e8fd328ca82858138b8b60405180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610d1a578181015183820152602001610d02565b50505050905090810190601f168015610d475780820380516001836020036101000a031916815260200191505b50935050505060405180910390a4506040805180820182524381526001600160a01b03998a166020808301918252948b166000908152808652838120858252909552919093209251835551600190920180546001600160a01b03191692909816919091179096555093949350505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610e1257600080fd5b505afa158015610e26573d6000803e3d6000fd5b505050506040513d6020811015610e3c57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610e8e57600080fd5b505afa158015610ea2573d6000803e3d6000fd5b505050506040513d6020811015610eb857600080fd5b5051610f06576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610f0e611d22565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610f55576000935050611042565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610f9257600080fd5b505afa158015610fa6573d6000803e3d6000fd5b505050506040513d6020811015610fbc57600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b15801561101257600080fd5b505afa158015611026573d6000803e3d6000fd5b505050506040513d602081101561103c57600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b03166110b7576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b3360009081526020818152604080832087845290915290206001908101546001600160a01b0316906110e7611d39565b506001600160a01b0382811660009081526001602081815260408084208b855282529283902083516080810185528154958616808252600160a01b90960460ff1615159281019290925291820154928101929092526002015460608201529061114f57600080fd5b6001600160a01b03831660008181526001602081815260408084208c855290915280832080546001600160a81b03191681559182018390556002909101829055518992917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a38560011415611381576000836001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111fa57600080fd5b505afa15801561120e573d6000803e3d6000fd5b505050506040513d602081101561122457600080fd5b50516020830151909150156112f15781516040808401518151633914de9d60e21b81526001600160a01b0393841660048201526024810191909152868316604482015290519183169163e4537a74916064808201926020929091908290030181600087803b15801561129557600080fd5b505af11580156112a9573d6000803e3d6000fd5b505050506040513d60208110156112bf57600080fd5b505160608301516001600160a01b03808716600090815260026020908152604080832088519094168352929052205592505b816020015161137f578151604080516327a95adf60e11b81526001600160a01b0392831660048201528683166024820152905191831691634f52b5be916044808201926020929091908290030181600087803b15801561135057600080fd5b505af1158015611364573d6000803e3d6000fd5b505050506040513d602081101561137a57600080fd5b505192505b505b60408051878152905188916001600160a01b038616917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc09181900360200190a35095945050505050565b600260209081526000928352604080842090915290825290205481565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561144257600080fd5b505afa158015611456573d6000803e3d6000fd5b505050506040513d602081101561146c57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156114be57600080fd5b505afa1580156114d2573d6000803e3d6000fd5b505050506040513d60208110156114e857600080fd5b5051611536576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61153e611d22565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052611585576000935050611669565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156115c257600080fd5b505afa1580156115d6573d6000803e3d6000fd5b505050506040513d60208110156115ec57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b15801561163957600080fd5b505afa15801561164d573d6000803e3d6000fd5b505050506040513d602081101561166357600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166116dd576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611711576000925050611809565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561174a57600080fd5b505afa15801561175e573d6000803e3d6000fd5b505050506040513d602081101561177457600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b1580156117d957600080fd5b505af11580156117ed573d6000803e3d6000fd5b505050506040513d602081101561180357600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661187f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806118b35760009250506119a3565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156118ec57600080fd5b505afa158015611900573d6000803e3d6000fd5b505050506040513d602081101561191657600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b15801561197357600080fd5b505af1158015611987573d6000803e3d6000fd5b505050506040513d602081101561199d57600080fd5b50519250505b509392505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611a18576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611a4c5760009250506119a3565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a8557600080fd5b505afa158015611a99573d6000803e3d6000fd5b505050506040513d6020811015611aaf57600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b15801561197357600080fd5b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b4757600080fd5b505afa158015611b5b573d6000803e3d6000fd5b505050506040513d6020811015611b7157600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015611bc357600080fd5b505afa158015611bd7573d6000803e3d6000fd5b505050506040513d6020811015611bed57600080fd5b5051611c3b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611c7457600080fd5b505afa158015611c88573d6000803e3d6000fd5b505050506040513d6020811015611c9e57600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b158015611cf057600080fd5b505afa158015611d04573d6000803e3d6000fd5b505050506040513d6020811015611d1a57600080fd5b505192915050565b604080518082019091526000808252602082015290565b6040805160808101825260008082526020820181905291810182905260608101919091529056fea265627a7a7231582064a7dc118a70c2ac04519b4b51435e1e25cf26158e66338aa5ef5775eff5e1b464736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80637a35630411610097578063b551c37311610066578063b551c37314610471578063bea75f281461048e578063d29b5d2f146104ca578063f81f8bf6146104fc576100f5565b80637a356304146103215780639588378e146103e05780639d4c162d1461040c578063a3379f9014610443576100f5565b806360bdbb3f116100d357806360bdbb3f146101d257806368e14dac146101fe5780636b8eb4031461022a578063776fdd2414610256576100f5565b806302506804146100fa57806306e3a978146101385780632453732a14610194575b600080fd5b6101176004803603602081101561011057600080fd5b503561052e565b604080519283526001600160a01b0390911660208301528051918290030190f35b6101646004803603604081101561014e57600080fd5b506001600160a01b038135169060200135610550565b604080516001600160a01b0390951685529215156020850152838301919091526060830152519081900360800190f35b6101c0600480360360408110156101aa57600080fd5b50803590602001356001600160a01b031661058f565b60408051918252519081900360200190f35b610117600480360360408110156101e857600080fd5b506001600160a01b0381351690602001356105d1565b6101c06004803603604081101561021457600080fd5b50803590602001356001600160a01b03166105fb565b6101c06004803603604081101561024057600080fd5b506001600160a01b038135169060200135610640565b6101c0600480360360a081101561026c57600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a0810160808201356401000000008111156102ac57600080fd5b8201836020820111156102be57600080fd5b803590602001918460018302840111640100000000831117156102e057600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106fe945050505050565b6101c06004803603606081101561033757600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561036b57600080fd5b82018360208201111561037d57600080fd5b8035906020019184600183028401116401000000008311171561039f57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109df945050505050565b6101c0600480360360408110156103f657600080fd5b506001600160a01b038135169060200135610db8565b61042f6004803603604081101561042257600080fd5b508035906020013561104a565b604080519115158252519081900360200190f35b6101c06004803603604081101561045957600080fd5b506001600160a01b03813581169160200135166113cb565b6101c06004803603602081101561048757600080fd5b50356113e8565b61042f600480360360808110156104a457600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611670565b61042f600480360360608110156104e057600080fd5b508035906001600160a01b036020820135169060400135611812565b61042f6004803603606081101561051257600080fd5b508035906001600160a01b0360208201351690604001356119ab565b600360205260009081526040902080546001909101546001600160a01b031682565b600160208181526000938452604080852090915291835291208054918101546002909101546001600160a01b03831692600160a01b900460ff16919084565b6040805160208082018590526bffffffffffffffffffffffff19606085901b168284015282516034818403018152605490920190925280519101205b92915050565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b600080610608848461058f565b600081815260036020526040902085815560010180546001600160a01b0386166001600160a01b031990911617905591505092915050565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806106745760009150506105cb565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156106ca57600080fd5b505afa1580156106de573d6000803e3d6000fd5b505050506040513d60208110156106f457600080fd5b5051949350505050565b6000610708611d22565b6003600061071589611b0c565b8152602080820192909252604090810160009081208251808401845281548082526001909201546001600160a01b039081168287018190528551634439bdaf60e11b8152600260048201526024810194909452336044850152908d16606484015293519095509293919284926388737b5e926084808201939182900301818787803b1580156107a357600080fd5b505af11580156107b7573d6000803e3d6000fd5b505050506040513d60208110156107cd57600080fd5b505190506107d9611d39565b60405180608001604052808a6001600160a01b0316815260200160011515815260200189815260200188815250905080600160008c6001600160a01b03166001600160a01b03168152602001908152602001600020600084815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160000160146101000a81548160ff0219169083151502179055506040820151816001015560608201518160020155905050826001600160a01b0316828b6001600160a01b03167f91844be4872bbec71676ddd1d7a85222f6e62f10f70887042e501b0a7a5e28f28c8c8c8c60405180856001600160a01b03166001600160a01b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561093e578181015183820152602001610926565b50505050905090810190601f16801561096b5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a4506040805180820182524381526001600160a01b039a8b166020808301918252948c166000908152808652838120858252909552919093209251835551600190920180546001600160a01b0319169290991691909117909755509495945050505050565b600080846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610a1b57600080fd5b505afa158015610a2f573d6000803e3d6000fd5b505050506040513d6020811015610a4557600080fd5b505160408051637bb2445f60e11b81526001600160a01b038781166004830152888116602483015291519293509083169163f76488be91604480820192602092909190829003018186803b158015610a9c57600080fd5b505afa158015610ab0573d6000803e3d6000fd5b505050506040513d6020811015610ac657600080fd5b5051610ad157600080fd5b610ad9611d22565b60036000610ae688611b0c565b81526020808201929092526040908101600090812082518084018452815481526001909101546001600160a01b039081168286018190528b82168085526002808852868620938d168652928752858520548651634439bdaf60e11b815260048101949094526024840152336044840152606483015293519195509293919284926388737b5e9260848084019382900301818787803b158015610b8757600080fd5b505af1158015610b9b573d6000803e3d6000fd5b505050506040513d6020811015610bb157600080fd5b50519050610bbd611d39565b6040518060800160405280896001600160a01b031681526020016000151581526020016000801b81526020016000801b815250905080600160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600084815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160000160146101000a81548160ff0219169083151502179055506040820151816001015560608201518160020155905050826001600160a01b0316828a6001600160a01b03167f4adc38b95e17c3b3410caa223e957ebc5cfdae71c60f1801e8fd328ca82858138b8b60405180836001600160a01b03166001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610d1a578181015183820152602001610d02565b50505050905090810190601f168015610d475780820380516001836020036101000a031916815260200191505b50935050505060405180910390a4506040805180820182524381526001600160a01b03998a166020808301918252948b166000908152808652838120858252909552919093209251835551600190920180546001600160a01b03191692909816919091179096555093949350505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610e1257600080fd5b505afa158015610e26573d6000803e3d6000fd5b505050506040513d6020811015610e3c57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610e8e57600080fd5b505afa158015610ea2573d6000803e3d6000fd5b505050506040513d6020811015610eb857600080fd5b5051610f06576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610f0e611d22565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610f55576000935050611042565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610f9257600080fd5b505afa158015610fa6573d6000803e3d6000fd5b505050506040513d6020811015610fbc57600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b15801561101257600080fd5b505afa158015611026573d6000803e3d6000fd5b505050506040513d602081101561103c57600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b03166110b7576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b3360009081526020818152604080832087845290915290206001908101546001600160a01b0316906110e7611d39565b506001600160a01b0382811660009081526001602081815260408084208b855282529283902083516080810185528154958616808252600160a01b90960460ff1615159281019290925291820154928101929092526002015460608201529061114f57600080fd5b6001600160a01b03831660008181526001602081815260408084208c855290915280832080546001600160a81b03191681559182018390556002909101829055518992917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a38560011415611381576000836001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111fa57600080fd5b505afa15801561120e573d6000803e3d6000fd5b505050506040513d602081101561122457600080fd5b50516020830151909150156112f15781516040808401518151633914de9d60e21b81526001600160a01b0393841660048201526024810191909152868316604482015290519183169163e4537a74916064808201926020929091908290030181600087803b15801561129557600080fd5b505af11580156112a9573d6000803e3d6000fd5b505050506040513d60208110156112bf57600080fd5b505160608301516001600160a01b03808716600090815260026020908152604080832088519094168352929052205592505b816020015161137f578151604080516327a95adf60e11b81526001600160a01b0392831660048201528683166024820152905191831691634f52b5be916044808201926020929091908290030181600087803b15801561135057600080fd5b505af1158015611364573d6000803e3d6000fd5b505050506040513d602081101561137a57600080fd5b505192505b505b60408051878152905188916001600160a01b038616917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc09181900360200190a35095945050505050565b600260209081526000928352604080842090915290825290205481565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561144257600080fd5b505afa158015611456573d6000803e3d6000fd5b505050506040513d602081101561146c57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156114be57600080fd5b505afa1580156114d2573d6000803e3d6000fd5b505050506040513d60208110156114e857600080fd5b5051611536576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61153e611d22565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052611585576000935050611669565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156115c257600080fd5b505afa1580156115d6573d6000803e3d6000fd5b505050506040513d60208110156115ec57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b15801561163957600080fd5b505afa15801561164d573d6000803e3d6000fd5b505050506040513d602081101561166357600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166116dd576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611711576000925050611809565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561174a57600080fd5b505afa15801561175e573d6000803e3d6000fd5b505050506040513d602081101561177457600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b1580156117d957600080fd5b505af11580156117ed573d6000803e3d6000fd5b505050506040513d602081101561180357600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661187f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806118b35760009250506119a3565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156118ec57600080fd5b505afa158015611900573d6000803e3d6000fd5b505050506040513d602081101561191657600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b15801561197357600080fd5b505af1158015611987573d6000803e3d6000fd5b505050506040513d602081101561199d57600080fd5b50519250505b509392505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611a18576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611a4c5760009250506119a3565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a8557600080fd5b505afa158015611a99573d6000803e3d6000fd5b505050506040513d6020811015611aaf57600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b15801561197357600080fd5b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b4757600080fd5b505afa158015611b5b573d6000803e3d6000fd5b505050506040513d6020811015611b7157600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015611bc357600080fd5b505afa158015611bd7573d6000803e3d6000fd5b505050506040513d6020811015611bed57600080fd5b5051611c3b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611c7457600080fd5b505afa158015611c88573d6000803e3d6000fd5b505050506040513d6020811015611c9e57600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b158015611cf057600080fd5b505afa158015611d04573d6000803e3d6000fd5b505050506040513d6020811015611d1a57600080fd5b505192915050565b604080518082019091526000808252602082015290565b6040805160808101825260008082526020820181905291810182905260608101919091529056fea265627a7a7231582064a7dc118a70c2ac04519b4b51435e1e25cf26158e66338aa5ef5775eff5e1b464736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/IERC20.json b/contracts/0.0.1-rc.53/IERC20.json new file mode 100644 index 00000000..3c210625 --- /dev/null +++ b/contracts/0.0.1-rc.53/IERC20.json @@ -0,0 +1,204 @@ +{ + "contractName": "IERC20", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/IntVoteInterface.json b/contracts/0.0.1-rc.53/IntVoteInterface.json new file mode 100644 index 00000000..97740b3a --- /dev/null +++ b/contracts/0.0.1-rc.53/IntVoteInterface.json @@ -0,0 +1,348 @@ +{ + "contractName": "IntVoteInterface", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "CancelProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "CancelVoting", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_decision", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_totalReputation", + "type": "uint256" + } + ], + "name": "ExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "VoteProposal", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "cancelVote", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAllowedRangeOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getNumberOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isAbstainAllow", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "isVotable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalParameters", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_rep", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_choice", + "type": "uint256" + } + ], + "name": "voteStatus", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Locking4Reputation.json b/contracts/0.0.1-rc.53/Locking4Reputation.json new file mode 100644 index 00000000..884d5877 --- /dev/null +++ b/contracts/0.0.1-rc.53/Locking4Reputation.json @@ -0,0 +1,339 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Locking4Reputation", + "sourceName": "contracts/schemes/Locking4Reputation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_period", + "type": "uint256" + } + ], + "name": "Lock", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Release", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "lockers", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "releaseTime", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingsCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "maxLockingPeriod", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "scores", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalLocked", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalLockedLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalScore", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610780806100206000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c806395a2251f11610097578063c006719f11610066578063c006719f146101f9578063c3201add14610201578063c348a24b14610209578063ed1ff6d814610211576100f5565b806395a2251f146101bb578063a8c33017146101e1578063afe0e33c146101e9578063bf0df445146101f1576100f5565b80635aef7de6116100d35780635aef7de614610124578063696da9211461014857806376dd110f146101505780638380574214610176576100f5565b80633d1678f4146100fa57806355bfec8814610114578063568914121461011c575b600080fd5b610102610219565b60408051918252519081900360200190f35b61010261021f565b610102610225565b61012c61022b565b604080516001600160a01b039092168252519081900360200190f35b61010261023a565b6101026004803603602081101561016657600080fd5b50356001600160a01b0316610240565b6101a26004803603604081101561018c57600080fd5b506001600160a01b038135169060200135610252565b6040805192835260208301919091528051918290030190f35b610102600480360360208110156101d157600080fd5b50356001600160a01b0316610276565b61010261051e565b610102610524565b61010261052a565b610102610530565b610102610536565b61010261053c565b610102610542565b600d5481565b600c5481565b60045481565b6001546001600160a01b031681565b60005490565b60036020526000908152604090205481565b60026020908152600092835260408084209091529082529020805460019091015482565b6000600d5442116102c7576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040902054610327576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040812080549082905560085490919061035c90839063ffffffff61054816565b9050610373600654826105aa90919063ffffffff16565b600954909350610389908463ffffffff6105ec16565b60095560015460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b1580156103d157600080fd5b505afa1580156103e5573d6000803e3d6000fd5b505050506040513d60208110156103fb57600080fd5b50516001546040805163757cca5960e11b8152600481018790526001600160a01b03888116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561045b57600080fd5b505af115801561046f573d6000803e3d6000fd5b505050506040513d602081101561048557600080fd5b50516104d8576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b600a5481565b60095481565b600b5481565b60065481565b60075481565b60055481565b60085481565b600082610557575060006105a4565b8282028284828161056457fe5b04146105a15760405162461bcd60e51b815260040180806020018281038252602181526020018061072b6021913960400191505060405180910390fd5b90505b92915050565b60006105a183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061062e565b60006105a183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506106d0565b600081836106ba5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561067f578181015183820152602001610667565b50505050905090810190601f1680156106ac5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816106c657fe5b0495945050505050565b600081848411156107225760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561067f578181015183820152602001610667565b50505090039056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a723158203e2c0fca614f4d2156e6610174fbf703173d49fb3c270e667df3d187d32b5b4964736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c806395a2251f11610097578063c006719f11610066578063c006719f146101f9578063c3201add14610201578063c348a24b14610209578063ed1ff6d814610211576100f5565b806395a2251f146101bb578063a8c33017146101e1578063afe0e33c146101e9578063bf0df445146101f1576100f5565b80635aef7de6116100d35780635aef7de614610124578063696da9211461014857806376dd110f146101505780638380574214610176576100f5565b80633d1678f4146100fa57806355bfec8814610114578063568914121461011c575b600080fd5b610102610219565b60408051918252519081900360200190f35b61010261021f565b610102610225565b61012c61022b565b604080516001600160a01b039092168252519081900360200190f35b61010261023a565b6101026004803603602081101561016657600080fd5b50356001600160a01b0316610240565b6101a26004803603604081101561018c57600080fd5b506001600160a01b038135169060200135610252565b6040805192835260208301919091528051918290030190f35b610102600480360360208110156101d157600080fd5b50356001600160a01b0316610276565b61010261051e565b610102610524565b61010261052a565b610102610530565b610102610536565b61010261053c565b610102610542565b600d5481565b600c5481565b60045481565b6001546001600160a01b031681565b60005490565b60036020526000908152604090205481565b60026020908152600092835260408084209091529082529020805460019091015482565b6000600d5442116102c7576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040902054610327576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040812080549082905560085490919061035c90839063ffffffff61054816565b9050610373600654826105aa90919063ffffffff16565b600954909350610389908463ffffffff6105ec16565b60095560015460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b1580156103d157600080fd5b505afa1580156103e5573d6000803e3d6000fd5b505050506040513d60208110156103fb57600080fd5b50516001546040805163757cca5960e11b8152600481018790526001600160a01b03888116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561045b57600080fd5b505af115801561046f573d6000803e3d6000fd5b505050506040513d602081101561048557600080fd5b50516104d8576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b600a5481565b60095481565b600b5481565b60065481565b60075481565b60055481565b60085481565b600082610557575060006105a4565b8282028284828161056457fe5b04146105a15760405162461bcd60e51b815260040180806020018281038252602181526020018061072b6021913960400191505060405180910390fd5b90505b92915050565b60006105a183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061062e565b60006105a183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506106d0565b600081836106ba5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561067f578181015183820152602001610667565b50505050905090810190601f1680156106ac5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816106c657fe5b0495945050505050565b600081848411156107225760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561067f578181015183820152602001610667565b50505090039056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a723158203e2c0fca614f4d2156e6610174fbf703173d49fb3c270e667df3d187d32b5b4964736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/LockingEth4Reputation.json b/contracts/0.0.1-rc.53/LockingEth4Reputation.json new file mode 100644 index 00000000..480e19d3 --- /dev/null +++ b/contracts/0.0.1-rc.53/LockingEth4Reputation.json @@ -0,0 +1,436 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "LockingEth4Reputation", + "sourceName": "contracts/schemes/LockingEth4Reputation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_period", + "type": "uint256" + } + ], + "name": "Lock", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Release", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_maxLockingPeriod", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_period", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "lock", + "outputs": [ + { + "internalType": "bytes32", + "name": "lockingId", + "type": "bytes32" + } + ], + "payable": true, + "stateMutability": "payable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "lockers", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "releaseTime", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingsCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "maxLockingPeriod", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + } + ], + "name": "release", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "scores", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalLocked", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalLockedLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalScore", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506111c5806100206000396000f3fe6080604052600436106101095760003560e01c806395a2251f11610095578063c006719f11610064578063c006719f14610318578063c3201add1461032d578063c348a24b14610342578063d7c2eec714610357578063ed1ff6d8146103a457610109565b806395a2251f146102a6578063a8c33017146102d9578063afe0e33c146102ee578063bf0df4451461030357610109565b80635aef7de6116100dc5780635aef7de614610182578063650e81f2146101b3578063696da9211461020c57806376dd110f14610221578063838057421461025457610109565b80633d1678f41461010e578063496a36f21461013557806355bfec8814610158578063568914121461016d575b600080fd5b34801561011a57600080fd5b506101236103b9565b60408051918252519081900360200190f35b6101236004803603604081101561014b57600080fd5b50803590602001356103bf565b34801561016457600080fd5b506101236103d9565b34801561017957600080fd5b506101236103df565b34801561018e57600080fd5b506101976103e5565b604080516001600160a01b039092168252519081900360200190f35b3480156101bf57600080fd5b5061020a600480360360e08110156101d657600080fd5b506001600160a01b038135169060208101359060408101359060608101359060808101359060a08101359060c001356103f4565b005b34801561021857600080fd5b5061012361040c565b34801561022d57600080fd5b506101236004803603602081101561024457600080fd5b50356001600160a01b0316610412565b34801561026057600080fd5b5061028d6004803603604081101561027757600080fd5b506001600160a01b038135169060200135610424565b6040805192835260208301919091528051918290030190f35b3480156102b257600080fd5b50610123600480360360208110156102c957600080fd5b50356001600160a01b0316610448565b3480156102e557600080fd5b506101236106f0565b3480156102fa57600080fd5b506101236106f6565b34801561030f57600080fd5b506101236106fc565b34801561032457600080fd5b50610123610702565b34801561033957600080fd5b50610123610708565b34801561034e57600080fd5b5061012361070e565b34801561036357600080fd5b506103906004803603604081101561037a57600080fd5b506001600160a01b038135169060200135610714565b604080519115158252519081900360200190f35b3480156103b057600080fd5b50610123610765565b600d5481565b60006103d03484336001808761076b565b90505b92915050565b600c5481565b60045481565b6001546001600160a01b031681565b61040387878787878787610b3f565b50505050505050565b60005490565b60036020526000908152604090205481565b60026020908152600092835260408084209091529082529020805460019091015482565b6000600d544211610499576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b0382166000908152600360205260409020546104f9576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040812080549082905560085490919061052e90839063ffffffff610caf16565b905061054560065482610d0890919063ffffffff16565b60095490935061055b908463ffffffff610d4a16565b60095560015460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b1580156105a357600080fd5b505afa1580156105b7573d6000803e3d6000fd5b505050506040513d60208110156105cd57600080fd5b50516001546040805163757cca5960e11b8152600481018790526001600160a01b03888116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561062d57600080fd5b505af1158015610641573d6000803e3d6000fd5b505050506040513d602081101561065757600080fd5b50516106aa576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b600a5481565b60095481565b600b5481565b60065481565b60075481565b60055481565b6000806107218484610d8c565b6040519091506001600160a01b0385169082156108fc029083906000818181858888f1935050505015801561075a573d6000803e3d6000fd5b506001949350505050565b60085481565b60008160005481146107ae5760405162461bcd60e51b815260040180806020018281038252602881526020018061111b6028913960400191505060405180910390fd5b60008811610803576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b600b548711156108445760405162461bcd60e51b815260040180806020018281038252602c815260200180611143602c913960400191505060405180910390fd5b60008711610899576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b600a544211156108da5760405162461bcd60e51b81526004018080602001828103825260308152602001806110906030913960400191505060405180910390fd5b600c5442101561091b5760405162461bcd60e51b81526004018080602001828103825260288152602001806110686028913960400191505060405180910390fd5b600754604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120925061096190600163ffffffff610eb716565b6007556001600160a01b0386166000908152600260209081526040808320858452909152902088815542880160018201556004546109a5908a63ffffffff610eb716565b6004556005546109bb908a63ffffffff610eb716565b60055560006109f0866109e4896109d88d8f63ffffffff610caf16565b9063ffffffff610caf16565b9063ffffffff610d0816565b905060008111610a3b576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b038816600090815260036020526040902054610a64908263ffffffff610eb716565b6001600160a01b03891660009081526003602052604090208190556008549081810281610a8d57fe5b0414610ad4576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b600654610ae7908263ffffffff610eb716565b600655604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b6001546001600160a01b031615610b9d576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038716610bf0576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b848411610c2e5760405162461bcd60e51b815260040180806020018281038252603a8152602001806110e1603a913960400191505060405180910390fd5b83831015610c6d5760405162461bcd60e51b815260040180806020018281038252602281526020018061116f6022913960400191505060405180910390fd5b60088690556009869055600a849055600b829055600180546001600160a01b0319166001600160a01b038916179055600c859055600d83905561040381610f11565b600082610cbe575060006103d3565b82820282848281610ccb57fe5b04146103d05760405162461bcd60e51b81526004018080602001828103825260218152602001806110c06021913960400191505060405180910390fd5b60006103d083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610f6b565b60006103d083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061100d565b6001600160a01b038216600090815260026020908152604080832084845290915281208054610df9576040805162461bcd60e51b81526020600482015260146024820152730616d6f756e742073686f756c64206265203e20360641b604482015290519081900360640190fd5b80546000825560018201549092504211610e5a576040805162461bcd60e51b815260206004820152601a60248201527f636865636b20746865206c6f636b20706572696f642070617373000000000000604482015290519081900360640190fd5b600554610e6d908363ffffffff610d4a16565b6005556040805183815290516001600160a01b0386169185917fcb7ab693259d2332e08e7666832578144deb74443e37a762847e848793fc29819181900360200190a35092915050565b6000828201838110156103d0576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60005415610f66576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b60008183610ff75760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610fbc578181015183820152602001610fa4565b50505050905090810190601f168015610fe95780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161100357fe5b0495945050505050565b6000818484111561105f5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610fbc578181015183820152602001610fa4565b50505090039056fe6c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f6472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d65a265627a7a723158203622da7b8602ed61152adc0bec94ddda5fa5ee741fb3d63833cf3c3e0fd90e5264736f6c63430005110032", + "deployedBytecode": "0x6080604052600436106101095760003560e01c806395a2251f11610095578063c006719f11610064578063c006719f14610318578063c3201add1461032d578063c348a24b14610342578063d7c2eec714610357578063ed1ff6d8146103a457610109565b806395a2251f146102a6578063a8c33017146102d9578063afe0e33c146102ee578063bf0df4451461030357610109565b80635aef7de6116100dc5780635aef7de614610182578063650e81f2146101b3578063696da9211461020c57806376dd110f14610221578063838057421461025457610109565b80633d1678f41461010e578063496a36f21461013557806355bfec8814610158578063568914121461016d575b600080fd5b34801561011a57600080fd5b506101236103b9565b60408051918252519081900360200190f35b6101236004803603604081101561014b57600080fd5b50803590602001356103bf565b34801561016457600080fd5b506101236103d9565b34801561017957600080fd5b506101236103df565b34801561018e57600080fd5b506101976103e5565b604080516001600160a01b039092168252519081900360200190f35b3480156101bf57600080fd5b5061020a600480360360e08110156101d657600080fd5b506001600160a01b038135169060208101359060408101359060608101359060808101359060a08101359060c001356103f4565b005b34801561021857600080fd5b5061012361040c565b34801561022d57600080fd5b506101236004803603602081101561024457600080fd5b50356001600160a01b0316610412565b34801561026057600080fd5b5061028d6004803603604081101561027757600080fd5b506001600160a01b038135169060200135610424565b6040805192835260208301919091528051918290030190f35b3480156102b257600080fd5b50610123600480360360208110156102c957600080fd5b50356001600160a01b0316610448565b3480156102e557600080fd5b506101236106f0565b3480156102fa57600080fd5b506101236106f6565b34801561030f57600080fd5b506101236106fc565b34801561032457600080fd5b50610123610702565b34801561033957600080fd5b50610123610708565b34801561034e57600080fd5b5061012361070e565b34801561036357600080fd5b506103906004803603604081101561037a57600080fd5b506001600160a01b038135169060200135610714565b604080519115158252519081900360200190f35b3480156103b057600080fd5b50610123610765565b600d5481565b60006103d03484336001808761076b565b90505b92915050565b600c5481565b60045481565b6001546001600160a01b031681565b61040387878787878787610b3f565b50505050505050565b60005490565b60036020526000908152604090205481565b60026020908152600092835260408084209091529082529020805460019091015482565b6000600d544211610499576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b0382166000908152600360205260409020546104f9576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040812080549082905560085490919061052e90839063ffffffff610caf16565b905061054560065482610d0890919063ffffffff16565b60095490935061055b908463ffffffff610d4a16565b60095560015460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b1580156105a357600080fd5b505afa1580156105b7573d6000803e3d6000fd5b505050506040513d60208110156105cd57600080fd5b50516001546040805163757cca5960e11b8152600481018790526001600160a01b03888116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561062d57600080fd5b505af1158015610641573d6000803e3d6000fd5b505050506040513d602081101561065757600080fd5b50516106aa576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b600a5481565b60095481565b600b5481565b60065481565b60075481565b60055481565b6000806107218484610d8c565b6040519091506001600160a01b0385169082156108fc029083906000818181858888f1935050505015801561075a573d6000803e3d6000fd5b506001949350505050565b60085481565b60008160005481146107ae5760405162461bcd60e51b815260040180806020018281038252602881526020018061111b6028913960400191505060405180910390fd5b60008811610803576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b600b548711156108445760405162461bcd60e51b815260040180806020018281038252602c815260200180611143602c913960400191505060405180910390fd5b60008711610899576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b600a544211156108da5760405162461bcd60e51b81526004018080602001828103825260308152602001806110906030913960400191505060405180910390fd5b600c5442101561091b5760405162461bcd60e51b81526004018080602001828103825260288152602001806110686028913960400191505060405180910390fd5b600754604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120925061096190600163ffffffff610eb716565b6007556001600160a01b0386166000908152600260209081526040808320858452909152902088815542880160018201556004546109a5908a63ffffffff610eb716565b6004556005546109bb908a63ffffffff610eb716565b60055560006109f0866109e4896109d88d8f63ffffffff610caf16565b9063ffffffff610caf16565b9063ffffffff610d0816565b905060008111610a3b576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b038816600090815260036020526040902054610a64908263ffffffff610eb716565b6001600160a01b03891660009081526003602052604090208190556008549081810281610a8d57fe5b0414610ad4576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b600654610ae7908263ffffffff610eb716565b600655604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b6001546001600160a01b031615610b9d576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038716610bf0576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b848411610c2e5760405162461bcd60e51b815260040180806020018281038252603a8152602001806110e1603a913960400191505060405180910390fd5b83831015610c6d5760405162461bcd60e51b815260040180806020018281038252602281526020018061116f6022913960400191505060405180910390fd5b60088690556009869055600a849055600b829055600180546001600160a01b0319166001600160a01b038916179055600c859055600d83905561040381610f11565b600082610cbe575060006103d3565b82820282848281610ccb57fe5b04146103d05760405162461bcd60e51b81526004018080602001828103825260218152602001806110c06021913960400191505060405180910390fd5b60006103d083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610f6b565b60006103d083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061100d565b6001600160a01b038216600090815260026020908152604080832084845290915281208054610df9576040805162461bcd60e51b81526020600482015260146024820152730616d6f756e742073686f756c64206265203e20360641b604482015290519081900360640190fd5b80546000825560018201549092504211610e5a576040805162461bcd60e51b815260206004820152601a60248201527f636865636b20746865206c6f636b20706572696f642070617373000000000000604482015290519081900360640190fd5b600554610e6d908363ffffffff610d4a16565b6005556040805183815290516001600160a01b0386169185917fcb7ab693259d2332e08e7666832578144deb74443e37a762847e848793fc29819181900360200190a35092915050565b6000828201838110156103d0576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60005415610f66576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b60008183610ff75760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610fbc578181015183820152602001610fa4565b50505050905090810190601f168015610fe95780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161100357fe5b0495945050505050565b6000818484111561105f5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610fbc578181015183820152602001610fa4565b50505090039056fe6c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f6472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d65a265627a7a723158203622da7b8602ed61152adc0bec94ddda5fa5ee741fb3d63833cf3c3e0fd90e5264736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/LockingToken4Reputation.json b/contracts/0.0.1-rc.53/LockingToken4Reputation.json new file mode 100644 index 00000000..aecb16f4 --- /dev/null +++ b/contracts/0.0.1-rc.53/LockingToken4Reputation.json @@ -0,0 +1,518 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "LockingToken4Reputation", + "sourceName": "contracts/schemes/LockingToken4Reputation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_period", + "type": "uint256" + } + ], + "name": "Lock", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_token", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numerator", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_denominator", + "type": "uint256" + } + ], + "name": "LockToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Release", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_maxLockingPeriod", + "type": "uint256" + }, + { + "internalType": "contract PriceOracleInterface", + "name": "_priceOracleContract", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_period", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_token", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "lock", + "outputs": [ + { + "internalType": "bytes32", + "name": "lockingId", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "lockedTokens", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "lockers", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "releaseTime", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lockingsCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "maxLockingPeriod", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "priceOracleContract", + "outputs": [ + { + "internalType": "contract PriceOracleInterface", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + } + ], + "name": "release", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "scores", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalLocked", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalLockedLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalScore", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506116af806100206000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c806395a2251f116100ad578063c3201add11610071578063c3201add146102cd578063c348a24b146102d5578063d7c2eec7146102dd578063e8d335881461031d578063ed1ff6d81461033a5761012c565b806395a2251f14610287578063a8c33017146102ad578063afe0e33c146102b5578063bf0df445146102bd578063c006719f146102c55761012c565b8063696da921116100f4578063696da9211461018757806376dd110f1461018f5780637ad88799146101b5578063838057421461020a57806394d0cb6e1461024f5761012c565b80633d1678f414610131578063457454db1461014b57806355bfec881461016f57806356891412146101775780635aef7de61461017f575b600080fd5b610139610342565b60408051918252519081900360200190f35b610153610348565b604080516001600160a01b039092168252519081900360200190f35b610139610357565b61013961035d565b610153610363565b610139610372565b610139600480360360208110156101a557600080fd5b50356001600160a01b0316610378565b61020860048036036101008110156101cc57600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c0820135169060e0013561038a565b005b6102366004803603604081101561022057600080fd5b506001600160a01b0381351690602001356103be565b6040805192835260208301919091528051918290030190f35b6101396004803603608081101561026557600080fd5b508035906020810135906001600160a01b0360408201351690606001356103e2565b6101396004803603602081101561029d57600080fd5b50356001600160a01b03166105ad565b610139610855565b61013961085b565b610139610861565b610139610867565b61013961086d565b610139610873565b610309600480360360408110156102f357600080fd5b506001600160a01b038135169060200135610879565b604080519115158252519081900360200190f35b6101536004803603602081101561033357600080fd5b50356108be565b6101396108d9565b600d5481565b600e546001600160a01b031681565b600c5481565b60045481565b6001546001600160a01b031681565b60005490565b60036020526000908152604090205481565b600e80546001600160a01b0319166001600160a01b0384161790556103b4888888888888876108df565b5050505050505050565b60026020908152600092835260408084209091529082529020805460019091015482565b600e54604080516341976e0960e01b81526001600160a01b03858116600483015282516000948594859493909116926341976e099260248083019392829003018186803b15801561043257600080fd5b505afa158015610446573d6000803e3d6000fd5b505050506040513d604081101561045c57600080fd5b5080516020909101519092509050816104bc576040805162461bcd60e51b815260206004820152601760248201527f6e756d657261746f722073686f756c64206265203e2030000000000000000000604482015290519081900360640190fd5b60008111610511576040805162461bcd60e51b815260206004820152601960248201527f64656e6f6d696e61746f722073686f756c64206265203e203000000000000000604482015290519081900360640190fd5b61052c6001600160a01b03861633308a63ffffffff610a5816565b61053a878733858589610bdb565b6000818152600f602090815260409182902080546001600160a01b0319166001600160a01b038a16908117909155825186815291820185905282519396509286927f09ae2accb7909b2605e5e74e2584c7f5aa396bc6ab76290633ae3819ff650e9f928290030190a35050949350505050565b6000600d5442116105fe576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b03821660009081526003602052604090205461065e576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040812080549082905560085490919061069390839063ffffffff610faf16565b90506106aa6006548261100f90919063ffffffff16565b6009549093506106c0908463ffffffff61105116565b60095560015460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561070857600080fd5b505afa15801561071c573d6000803e3d6000fd5b505050506040513d602081101561073257600080fd5b50516001546040805163757cca5960e11b8152600481018790526001600160a01b03888116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561079257600080fd5b505af11580156107a6573d6000803e3d6000fd5b505050506040513d60208110156107bc57600080fd5b505161080f576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b600a5481565b60095481565b600b5481565b60065481565b60075481565b60055481565b6000806108868484611093565b6000848152600f60205260409020549091506108b2906001600160a01b0316858363ffffffff6111be16565b60019150505b92915050565b600f602052600090815260409020546001600160a01b031681565b60085481565b6001546001600160a01b03161561093d576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038716610990576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b8484116109ce5760405162461bcd60e51b815260040180806020018281038252603a8152602001806115cb603a913960400191505060405180910390fd5b83831015610a0d5760405162461bcd60e51b81526004018080602001828103825260228152602001806116596022913960400191505060405180910390fd5b60088690556009869055600a849055600b829055600180546001600160a01b0319166001600160a01b038916179055600c859055600d839055610a4f81611340565b50505050505050565b610a6a846001600160a01b031661139a565b610a7357600080fd5b60006060856001600160a01b031660405180606001604052806025815260200161152d602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b60208310610b205780518252601f199092019160209182019101610b01565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610b82576040519150601f19603f3d011682016040523d82523d6000602084013e610b87565b606091505b509150915081610b9657600080fd5b80511580610bca575080516020148015610bca575080601f81518110610bb857fe5b01602001516001600160f81b03191615155b610bd357600080fd5b505050505050565b6000816000548114610c1e5760405162461bcd60e51b81526004018080602001828103825260288152602001806116056028913960400191505060405180910390fd5b60008811610c73576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b600b54871115610cb45760405162461bcd60e51b815260040180806020018281038252602c81526020018061162d602c913960400191505060405180910390fd5b60008711610d09576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b600a54421115610d4a5760405162461bcd60e51b815260040180806020018281038252603081526020018061157a6030913960400191505060405180910390fd5b600c54421015610d8b5760405162461bcd60e51b81526004018080602001828103825260288152602001806115526028913960400191505060405180910390fd5b600754604080513060601b602080830191909152603480830185905283518084039091018152605490920190925280519101209250610dd190600163ffffffff6113d616565b6007556001600160a01b038616600090815260026020908152604080832085845290915290208881554288016001820155600454610e15908a63ffffffff6113d616565b600455600554610e2b908a63ffffffff6113d616565b6005556000610e6086610e5489610e488d8f63ffffffff610faf16565b9063ffffffff610faf16565b9063ffffffff61100f16565b905060008111610eab576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b038816600090815260036020526040902054610ed4908263ffffffff6113d616565b6001600160a01b03891660009081526003602052604090208190556008549081810281610efd57fe5b0414610f44576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b600654610f57908263ffffffff6113d616565b600655604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b600082610fbe575060006108b8565b82820282848281610fcb57fe5b04146110085760405162461bcd60e51b81526004018080602001828103825260218152602001806115aa6021913960400191505060405180910390fd5b9392505050565b600061100883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611430565b600061100883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506114d2565b6001600160a01b038216600090815260026020908152604080832084845290915281208054611100576040805162461bcd60e51b81526020600482015260146024820152730616d6f756e742073686f756c64206265203e20360641b604482015290519081900360640190fd5b80546000825560018201549092504211611161576040805162461bcd60e51b815260206004820152601a60248201527f636865636b20746865206c6f636b20706572696f642070617373000000000000604482015290519081900360640190fd5b600554611174908363ffffffff61105116565b6005556040805183815290516001600160a01b0386169185917fcb7ab693259d2332e08e7666832578144deb74443e37a762847e848793fc29819181900360200190a35092915050565b6111d0836001600160a01b031661139a565b6111d957600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b1781529251815160009460609489169392918291908083835b602083106112865780518252601f199092019160209182019101611267565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146112e8576040519150601f19603f3d011682016040523d82523d6000602084013e6112ed565b606091505b5091509150816112fc57600080fd5b80511580611330575080516020148015611330575080601f8151811061131e57fe5b01602001516001600160f81b03191615155b61133957600080fd5b5050505050565b60005415611395576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906113ce5750808214155b949350505050565b600082820183811015611008576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600081836114bc5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611481578181015183820152602001611469565b50505050905090810190601f1680156114ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816114c857fe5b0495945050505050565b600081848411156115245760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611481578181015183820152602001611469565b50505090039056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536296c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f6472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d65a265627a7a7231582003a640411161fea590cfcb325d1c4a90ff9ce70c6c8a6dbb1997fbcdc393cc1364736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061012c5760003560e01c806395a2251f116100ad578063c3201add11610071578063c3201add146102cd578063c348a24b146102d5578063d7c2eec7146102dd578063e8d335881461031d578063ed1ff6d81461033a5761012c565b806395a2251f14610287578063a8c33017146102ad578063afe0e33c146102b5578063bf0df445146102bd578063c006719f146102c55761012c565b8063696da921116100f4578063696da9211461018757806376dd110f1461018f5780637ad88799146101b5578063838057421461020a57806394d0cb6e1461024f5761012c565b80633d1678f414610131578063457454db1461014b57806355bfec881461016f57806356891412146101775780635aef7de61461017f575b600080fd5b610139610342565b60408051918252519081900360200190f35b610153610348565b604080516001600160a01b039092168252519081900360200190f35b610139610357565b61013961035d565b610153610363565b610139610372565b610139600480360360208110156101a557600080fd5b50356001600160a01b0316610378565b61020860048036036101008110156101cc57600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c0820135169060e0013561038a565b005b6102366004803603604081101561022057600080fd5b506001600160a01b0381351690602001356103be565b6040805192835260208301919091528051918290030190f35b6101396004803603608081101561026557600080fd5b508035906020810135906001600160a01b0360408201351690606001356103e2565b6101396004803603602081101561029d57600080fd5b50356001600160a01b03166105ad565b610139610855565b61013961085b565b610139610861565b610139610867565b61013961086d565b610139610873565b610309600480360360408110156102f357600080fd5b506001600160a01b038135169060200135610879565b604080519115158252519081900360200190f35b6101536004803603602081101561033357600080fd5b50356108be565b6101396108d9565b600d5481565b600e546001600160a01b031681565b600c5481565b60045481565b6001546001600160a01b031681565b60005490565b60036020526000908152604090205481565b600e80546001600160a01b0319166001600160a01b0384161790556103b4888888888888876108df565b5050505050505050565b60026020908152600092835260408084209091529082529020805460019091015482565b600e54604080516341976e0960e01b81526001600160a01b03858116600483015282516000948594859493909116926341976e099260248083019392829003018186803b15801561043257600080fd5b505afa158015610446573d6000803e3d6000fd5b505050506040513d604081101561045c57600080fd5b5080516020909101519092509050816104bc576040805162461bcd60e51b815260206004820152601760248201527f6e756d657261746f722073686f756c64206265203e2030000000000000000000604482015290519081900360640190fd5b60008111610511576040805162461bcd60e51b815260206004820152601960248201527f64656e6f6d696e61746f722073686f756c64206265203e203000000000000000604482015290519081900360640190fd5b61052c6001600160a01b03861633308a63ffffffff610a5816565b61053a878733858589610bdb565b6000818152600f602090815260409182902080546001600160a01b0319166001600160a01b038a16908117909155825186815291820185905282519396509286927f09ae2accb7909b2605e5e74e2584c7f5aa396bc6ab76290633ae3819ff650e9f928290030190a35050949350505050565b6000600d5442116105fe576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b03821660009081526003602052604090205461065e576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040812080549082905560085490919061069390839063ffffffff610faf16565b90506106aa6006548261100f90919063ffffffff16565b6009549093506106c0908463ffffffff61105116565b60095560015460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561070857600080fd5b505afa15801561071c573d6000803e3d6000fd5b505050506040513d602081101561073257600080fd5b50516001546040805163757cca5960e11b8152600481018790526001600160a01b03888116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561079257600080fd5b505af11580156107a6573d6000803e3d6000fd5b505050506040513d60208110156107bc57600080fd5b505161080f576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b600a5481565b60095481565b600b5481565b60065481565b60075481565b60055481565b6000806108868484611093565b6000848152600f60205260409020549091506108b2906001600160a01b0316858363ffffffff6111be16565b60019150505b92915050565b600f602052600090815260409020546001600160a01b031681565b60085481565b6001546001600160a01b03161561093d576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038716610990576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b8484116109ce5760405162461bcd60e51b815260040180806020018281038252603a8152602001806115cb603a913960400191505060405180910390fd5b83831015610a0d5760405162461bcd60e51b81526004018080602001828103825260228152602001806116596022913960400191505060405180910390fd5b60088690556009869055600a849055600b829055600180546001600160a01b0319166001600160a01b038916179055600c859055600d839055610a4f81611340565b50505050505050565b610a6a846001600160a01b031661139a565b610a7357600080fd5b60006060856001600160a01b031660405180606001604052806025815260200161152d602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b60208310610b205780518252601f199092019160209182019101610b01565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610b82576040519150601f19603f3d011682016040523d82523d6000602084013e610b87565b606091505b509150915081610b9657600080fd5b80511580610bca575080516020148015610bca575080601f81518110610bb857fe5b01602001516001600160f81b03191615155b610bd357600080fd5b505050505050565b6000816000548114610c1e5760405162461bcd60e51b81526004018080602001828103825260288152602001806116056028913960400191505060405180910390fd5b60008811610c73576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b600b54871115610cb45760405162461bcd60e51b815260040180806020018281038252602c81526020018061162d602c913960400191505060405180910390fd5b60008711610d09576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b600a54421115610d4a5760405162461bcd60e51b815260040180806020018281038252603081526020018061157a6030913960400191505060405180910390fd5b600c54421015610d8b5760405162461bcd60e51b81526004018080602001828103825260288152602001806115526028913960400191505060405180910390fd5b600754604080513060601b602080830191909152603480830185905283518084039091018152605490920190925280519101209250610dd190600163ffffffff6113d616565b6007556001600160a01b038616600090815260026020908152604080832085845290915290208881554288016001820155600454610e15908a63ffffffff6113d616565b600455600554610e2b908a63ffffffff6113d616565b6005556000610e6086610e5489610e488d8f63ffffffff610faf16565b9063ffffffff610faf16565b9063ffffffff61100f16565b905060008111610eab576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b038816600090815260036020526040902054610ed4908263ffffffff6113d616565b6001600160a01b03891660009081526003602052604090208190556008549081810281610efd57fe5b0414610f44576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b600654610f57908263ffffffff6113d616565b600655604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b600082610fbe575060006108b8565b82820282848281610fcb57fe5b04146110085760405162461bcd60e51b81526004018080602001828103825260218152602001806115aa6021913960400191505060405180910390fd5b9392505050565b600061100883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611430565b600061100883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506114d2565b6001600160a01b038216600090815260026020908152604080832084845290915281208054611100576040805162461bcd60e51b81526020600482015260146024820152730616d6f756e742073686f756c64206265203e20360641b604482015290519081900360640190fd5b80546000825560018201549092504211611161576040805162461bcd60e51b815260206004820152601a60248201527f636865636b20746865206c6f636b20706572696f642070617373000000000000604482015290519081900360640190fd5b600554611174908363ffffffff61105116565b6005556040805183815290516001600160a01b0386169185917fcb7ab693259d2332e08e7666832578144deb74443e37a762847e848793fc29819181900360200190a35092915050565b6111d0836001600160a01b031661139a565b6111d957600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b1781529251815160009460609489169392918291908083835b602083106112865780518252601f199092019160209182019101611267565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146112e8576040519150601f19603f3d011682016040523d82523d6000602084013e6112ed565b606091505b5091509150816112fc57600080fd5b80511580611330575080516020148015611330575080601f8151811061131e57fe5b01602001516001600160f81b03191615155b61133957600080fd5b5050505050565b60005415611395576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906113ce5750808214155b949350505050565b600082820183811015611008576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600081836114bc5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611481578181015183820152602001611469565b50505050905090810190601f1680156114ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816114c857fe5b0495945050505050565b600081848411156115245760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611481578181015183820152602001611469565b50505090039056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e74323536296c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f6472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d65a265627a7a7231582003a640411161fea590cfcb325d1c4a90ff9ce70c6c8a6dbb1997fbcdc393cc1364736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Math.json b/contracts/0.0.1-rc.53/Math.json new file mode 100644 index 00000000..ce8ca31f --- /dev/null +++ b/contracts/0.0.1-rc.53/Math.json @@ -0,0 +1,8 @@ +{ + "contractName": "Math", + "abi": [], + "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820420d2077dd61ba43b368f9f65c9b52dd01c53d962d111cf27f7c1ee0af6870fb64736f6c63430005110032", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820420d2077dd61ba43b368f9f65c9b52dd01c53d962d111cf27f7c1ee0af6870fb64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Migrations.json b/contracts/0.0.1-rc.53/Migrations.json new file mode 100644 index 00000000..53a3611a --- /dev/null +++ b/contracts/0.0.1-rc.53/Migrations.json @@ -0,0 +1,1392 @@ +{ + "contractName": "Migrations", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "lastCompletedMigration", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "constant": false, + "inputs": [ + { + "name": "completed", + "type": "uint256" + } + ], + "name": "setCompleted", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "newAddress", + "type": "address" + } + ], + "name": "upgrade", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5060008054600160a060020a03191633179055610230806100326000396000f3fe608060405234801561001057600080fd5b5060043610610068577c010000000000000000000000000000000000000000000000000000000060003504630900f010811461006d5780638da5cb5b146100a2578063fbdbad3c146100d3578063fdacd576146100ed575b600080fd5b6100a06004803603602081101561008357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661010a565b005b6100aa6101bd565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100db6101d9565b60408051918252519081900360200190f35b6100a06004803603602081101561010357600080fd5b50356101df565b60005473ffffffffffffffffffffffffffffffffffffffff163314156101ba5760008190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b1580156101a057600080fd5b505af11580156101b4573d6000803e3d6000fd5b50505050505b50565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60015481565b60005473ffffffffffffffffffffffffffffffffffffffff163314156101ba5760015556fea165627a7a723058202bad0ba9dbcdcddb5c8f72c466666de04833c2bbe00f866c1830573f02c5adb90029", + "deployedBytecode": "0x608060405234801561001057600080fd5b5060043610610068577c010000000000000000000000000000000000000000000000000000000060003504630900f010811461006d5780638da5cb5b146100a2578063fbdbad3c146100d3578063fdacd576146100ed575b600080fd5b6100a06004803603602081101561008357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661010a565b005b6100aa6101bd565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100db6101d9565b60408051918252519081900360200190f35b6100a06004803603602081101561010357600080fd5b50356101df565b60005473ffffffffffffffffffffffffffffffffffffffff163314156101ba5760008190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b1580156101a057600080fd5b505af11580156101b4573d6000803e3d6000fd5b50505050505b50565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60015481565b60005473ffffffffffffffffffffffffffffffffffffffff163314156101ba5760015556fea165627a7a723058202bad0ba9dbcdcddb5c8f72c466666de04833c2bbe00f866c1830573f02c5adb90029", + "sourceMap": "26:542:1:-;;;217:56;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;248:5:1;:18;;-1:-1:-1;;;;;;248:18:1;256:10;248:18;;;26:542;;;;;;", + "deployedSourceMap": "26:542:1:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26:542:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;395:171;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;395:171:1;;;;:::i;:::-;;52:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;78:37;;;:::i;:::-;;;;;;;;;;;;;;;;279:110;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;279:110:1;;:::i;395:171::-;172:5;;;;158:10;:19;154:51;;;460:19;493:10;460:44;;514:8;:21;;;536:22;;514:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;514:45:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;514:45:1;;;;193:1;154:51;395:171;:::o;52:20::-;;;;;;:::o;78:37::-;;;;:::o;279:110::-;172:5;;;;158:10;:19;154:51;;;348:22;:34;279:110::o", + "source": "pragma solidity ^0.5.4;\n\n\ncontract Migrations {\n address public owner;\n uint256 public lastCompletedMigration;\n\n modifier restricted() {\n if (msg.sender == owner) {\n _;\n }\n }\n\n constructor() public {\n owner = msg.sender;\n }\n\n function setCompleted(uint256 completed) public restricted {\n lastCompletedMigration = completed;\n }\n\n function upgrade(address newAddress) public restricted {\n Migrations upgraded = Migrations(newAddress);\n upgraded.setCompleted(lastCompletedMigration);\n }\n}\n", + "sourcePath": "/Users/oren/daostack/daostack2/arc-hive/contracts/Migrations.sol", + "ast": { + "absolutePath": "/Users/oren/daostack/daostack2/arc-hive/contracts/Migrations.sol", + "exportedSymbols": { + "Migrations": [ + 153 + ] + }, + "id": 154, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 97, + "literals": [ + "solidity", + "^", + "0.5", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "0:23:1" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 153, + "linearizedBaseContracts": [ + 153 + ], + "name": "Migrations", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 99, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 153, + "src": "52:20:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 98, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 101, + "name": "lastCompletedMigration", + "nodeType": "VariableDeclaration", + "scope": 153, + "src": "78:37:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 100, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "78:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 110, + "nodeType": "Block", + "src": "144:67:1", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 103, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 277, + "src": "158:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "158:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 105, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "172:5:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "158:19:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 109, + "nodeType": "IfStatement", + "src": "154:51:1", + "trueBody": { + "id": 108, + "nodeType": "Block", + "src": "179:26:1", + "statements": [ + { + "id": 107, + "nodeType": "PlaceholderStatement", + "src": "193:1:1" + } + ] + } + } + ] + }, + "documentation": null, + "id": 111, + "name": "restricted", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 102, + "nodeType": "ParameterList", + "parameters": [], + "src": "141:2:1" + }, + "src": "122:89:1", + "visibility": "internal" + }, + { + "body": { + "id": 119, + "nodeType": "Block", + "src": "238:35:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 114, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "248:5:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 115, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 277, + "src": "256:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "256:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "248:18:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 118, + "nodeType": "ExpressionStatement", + "src": "248:18:1" + } + ] + }, + "documentation": null, + "id": 120, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 112, + "nodeType": "ParameterList", + "parameters": [], + "src": "228:2:1" + }, + "returnParameters": { + "id": 113, + "nodeType": "ParameterList", + "parameters": [], + "src": "238:0:1" + }, + "scope": 153, + "src": "217:56:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 131, + "nodeType": "Block", + "src": "338:51:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 127, + "name": "lastCompletedMigration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 101, + "src": "348:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 128, + "name": "completed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 122, + "src": "373:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "348:34:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 130, + "nodeType": "ExpressionStatement", + "src": "348:34:1" + } + ] + }, + "documentation": null, + "id": 132, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 125, + "modifierName": { + "argumentTypes": null, + "id": 124, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 111, + "src": "327:10:1", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "327:10:1" + } + ], + "name": "setCompleted", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 123, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 122, + "name": "completed", + "nodeType": "VariableDeclaration", + "scope": 132, + "src": "301:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 121, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "301:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "300:19:1" + }, + "returnParameters": { + "id": 126, + "nodeType": "ParameterList", + "parameters": [], + "src": "338:0:1" + }, + "scope": 153, + "src": "279:110:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 151, + "nodeType": "Block", + "src": "450:116:1", + "statements": [ + { + "assignments": [ + 140 + ], + "declarations": [ + { + "constant": false, + "id": 140, + "name": "upgraded", + "nodeType": "VariableDeclaration", + "scope": 151, + "src": "460:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$153", + "typeString": "contract Migrations" + }, + "typeName": { + "contractScope": null, + "id": 139, + "name": "Migrations", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 153, + "src": "460:10:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$153", + "typeString": "contract Migrations" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 144, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 142, + "name": "newAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 134, + "src": "493:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 141, + "name": "Migrations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 153, + "src": "482:10:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Migrations_$153_$", + "typeString": "type(contract Migrations)" + } + }, + "id": 143, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "482:22:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$153", + "typeString": "contract Migrations" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "460:44:1" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 148, + "name": "lastCompletedMigration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 101, + "src": "536:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 145, + "name": "upgraded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 140, + "src": "514:8:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$153", + "typeString": "contract Migrations" + } + }, + "id": 147, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "setCompleted", + "nodeType": "MemberAccess", + "referencedDeclaration": 132, + "src": "514:21:1", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 149, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "514:45:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 150, + "nodeType": "ExpressionStatement", + "src": "514:45:1" + } + ] + }, + "documentation": null, + "id": 152, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 137, + "modifierName": { + "argumentTypes": null, + "id": 136, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 111, + "src": "439:10:1", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "439:10:1" + } + ], + "name": "upgrade", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 135, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 134, + "name": "newAddress", + "nodeType": "VariableDeclaration", + "scope": 152, + "src": "412:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 133, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "412:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "411:20:1" + }, + "returnParameters": { + "id": 138, + "nodeType": "ParameterList", + "parameters": [], + "src": "450:0:1" + }, + "scope": 153, + "src": "395:171:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 154, + "src": "26:542:1" + } + ], + "src": "0:569:1" + }, + "legacyAST": { + "absolutePath": "/Users/oren/daostack/daostack2/arc-hive/contracts/Migrations.sol", + "exportedSymbols": { + "Migrations": [ + 153 + ] + }, + "id": 154, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 97, + "literals": [ + "solidity", + "^", + "0.5", + ".4" + ], + "nodeType": "PragmaDirective", + "src": "0:23:1" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 153, + "linearizedBaseContracts": [ + 153 + ], + "name": "Migrations", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 99, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 153, + "src": "52:20:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 98, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 101, + "name": "lastCompletedMigration", + "nodeType": "VariableDeclaration", + "scope": 153, + "src": "78:37:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 100, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "78:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 110, + "nodeType": "Block", + "src": "144:67:1", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 103, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 277, + "src": "158:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "158:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 105, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "172:5:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "158:19:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 109, + "nodeType": "IfStatement", + "src": "154:51:1", + "trueBody": { + "id": 108, + "nodeType": "Block", + "src": "179:26:1", + "statements": [ + { + "id": 107, + "nodeType": "PlaceholderStatement", + "src": "193:1:1" + } + ] + } + } + ] + }, + "documentation": null, + "id": 111, + "name": "restricted", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 102, + "nodeType": "ParameterList", + "parameters": [], + "src": "141:2:1" + }, + "src": "122:89:1", + "visibility": "internal" + }, + { + "body": { + "id": 119, + "nodeType": "Block", + "src": "238:35:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 114, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 99, + "src": "248:5:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 115, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 277, + "src": "256:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "256:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "248:18:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 118, + "nodeType": "ExpressionStatement", + "src": "248:18:1" + } + ] + }, + "documentation": null, + "id": 120, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 112, + "nodeType": "ParameterList", + "parameters": [], + "src": "228:2:1" + }, + "returnParameters": { + "id": 113, + "nodeType": "ParameterList", + "parameters": [], + "src": "238:0:1" + }, + "scope": 153, + "src": "217:56:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 131, + "nodeType": "Block", + "src": "338:51:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 127, + "name": "lastCompletedMigration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 101, + "src": "348:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 128, + "name": "completed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 122, + "src": "373:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "348:34:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 130, + "nodeType": "ExpressionStatement", + "src": "348:34:1" + } + ] + }, + "documentation": null, + "id": 132, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 125, + "modifierName": { + "argumentTypes": null, + "id": 124, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 111, + "src": "327:10:1", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "327:10:1" + } + ], + "name": "setCompleted", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 123, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 122, + "name": "completed", + "nodeType": "VariableDeclaration", + "scope": 132, + "src": "301:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 121, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "301:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "300:19:1" + }, + "returnParameters": { + "id": 126, + "nodeType": "ParameterList", + "parameters": [], + "src": "338:0:1" + }, + "scope": 153, + "src": "279:110:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 151, + "nodeType": "Block", + "src": "450:116:1", + "statements": [ + { + "assignments": [ + 140 + ], + "declarations": [ + { + "constant": false, + "id": 140, + "name": "upgraded", + "nodeType": "VariableDeclaration", + "scope": 151, + "src": "460:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$153", + "typeString": "contract Migrations" + }, + "typeName": { + "contractScope": null, + "id": 139, + "name": "Migrations", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 153, + "src": "460:10:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$153", + "typeString": "contract Migrations" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 144, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 142, + "name": "newAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 134, + "src": "493:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 141, + "name": "Migrations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 153, + "src": "482:10:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Migrations_$153_$", + "typeString": "type(contract Migrations)" + } + }, + "id": 143, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "482:22:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$153", + "typeString": "contract Migrations" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "460:44:1" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 148, + "name": "lastCompletedMigration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 101, + "src": "536:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 145, + "name": "upgraded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 140, + "src": "514:8:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$153", + "typeString": "contract Migrations" + } + }, + "id": 147, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "setCompleted", + "nodeType": "MemberAccess", + "referencedDeclaration": 132, + "src": "514:21:1", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 149, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "514:45:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 150, + "nodeType": "ExpressionStatement", + "src": "514:45:1" + } + ] + }, + "documentation": null, + "id": 152, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 137, + "modifierName": { + "argumentTypes": null, + "id": 136, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 111, + "src": "439:10:1", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "439:10:1" + } + ], + "name": "upgrade", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 135, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 134, + "name": "newAddress", + "nodeType": "VariableDeclaration", + "scope": 152, + "src": "412:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 133, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "412:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "411:20:1" + }, + "returnParameters": { + "id": 138, + "nodeType": "ParameterList", + "parameters": [], + "src": "450:0:1" + }, + "scope": 153, + "src": "395:171:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 154, + "src": "26:542:1" + } + ], + "src": "0:569:1" + }, + "compiler": { + "name": "solc", + "version": "0.5.4+commit.9549d8ff.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "3.0.2", + "updatedAt": "2019-03-28T13:02:44.900Z", + "devdoc": { + "methods": {} + }, + "userdoc": { + "methods": {} + } +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/MiniMeToken.json b/contracts/0.0.1-rc.53/MiniMeToken.json new file mode 100644 index 00000000..4759b6be --- /dev/null +++ b/contracts/0.0.1-rc.53/MiniMeToken.json @@ -0,0 +1,58 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "MiniMeToken", + "sourceName": "contracts/test/NectarRepAllocation.sol", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_blockNumber", + "type": "uint256" + } + ], + "name": "balanceOfAt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "_blockNumber", + "type": "uint256" + } + ], + "name": "totalSupplyAt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/NectarRepAllocation.json b/contracts/0.0.1-rc.53/NectarRepAllocation.json new file mode 100644 index 00000000..4876ca68 --- /dev/null +++ b/contracts/0.0.1-rc.53/NectarRepAllocation.json @@ -0,0 +1,157 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "NectarRepAllocation", + "sourceName": "contracts/test/NectarRepAllocation.sol", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "blockReference", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "claimingEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "claimingStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_claimingStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_claimingEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_blockReference", + "type": "uint256" + }, + { + "internalType": "contract MiniMeToken", + "name": "_token", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "token", + "outputs": [ + { + "internalType": "contract MiniMeToken", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalTokenSupplyAt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506105de806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063cba9794a1161005b578063cba9794a146100dd578063ccd65296146100e5578063ed1ff6d814610125578063fc0c546a1461012d57610088565b806350480fd21461008d5780635dd15cc5146100a757806370a08231146100af578063c6e5bc30146100d5575b600080fd5b610095610151565b60408051918252519081900360200190f35b610095610157565b610095600480360360208110156100c557600080fd5b50356001600160a01b031661015d565b61009561024c565b610095610252565b610123600480360360a08110156100fb57600080fd5b50803590602081013590604081013590606081013590608001356001600160a01b0316610258565b005b61009561040f565b610135610415565b604080516001600160a01b039092168252519081900360200190f35b60015481565b60045481565b60006001546000141580610172575060025415155b801561018b57506002544210158061018b575060015442105b1561019857506000610247565b600354600054600554600480546040805163277166bf60e11b81526001600160a01b038981169482019490945260248101929092525161024495946102389490931691634ee2cd7e916044808301926020929190829003018186803b15801561020057600080fd5b505afa158015610214573d6000803e3d6000fd5b505050506040513d602081101561022a57600080fd5b50519063ffffffff61042416565b9063ffffffff61048616565b90505b919050565b60035481565b60025481565b6005546001600160a01b0316156102b6576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038116610308576040805162461bcd60e51b8152602060048201526014602482015273746f6b656e2063616e6e6f74206265207a65726f60601b604482015290519081900360640190fd5b600580546001600160a01b0319166001600160a01b038316179055600085905560018490556002839055600482905583151580610346575060025415155b1561038d576001546002541161038d5760405162461bcd60e51b81526004018080602001828103825260238152602001806105666023913960400191505060405180910390fd5b60055460408051630981b24d60e41b81526004810185905290516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b1580156103d957600080fd5b505afa1580156103ed573d6000803e3d6000fd5b505050506040513d602081101561040357600080fd5b50516003555050505050565b60005481565b6005546001600160a01b031681565b60008261043357506000610480565b8282028284828161044057fe5b041461047d5760405162461bcd60e51b81526004018080602001828103825260218152602001806105896021913960400191505060405180910390fd5b90505b92915050565b600061047d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506000818361054f5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156105145781810151838201526020016104fc565b50505050905090810190601f1680156105415780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161055b57fe5b049594505050505056fe636c61696d696e67537461727454696d65203e20636c61696d696e67456e6454696d65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a723158204bab8c8540908d5f181853fca532a5848c31226d6f6f6367fd68e5ad64c1cb3964736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063cba9794a1161005b578063cba9794a146100dd578063ccd65296146100e5578063ed1ff6d814610125578063fc0c546a1461012d57610088565b806350480fd21461008d5780635dd15cc5146100a757806370a08231146100af578063c6e5bc30146100d5575b600080fd5b610095610151565b60408051918252519081900360200190f35b610095610157565b610095600480360360208110156100c557600080fd5b50356001600160a01b031661015d565b61009561024c565b610095610252565b610123600480360360a08110156100fb57600080fd5b50803590602081013590604081013590606081013590608001356001600160a01b0316610258565b005b61009561040f565b610135610415565b604080516001600160a01b039092168252519081900360200190f35b60015481565b60045481565b60006001546000141580610172575060025415155b801561018b57506002544210158061018b575060015442105b1561019857506000610247565b600354600054600554600480546040805163277166bf60e11b81526001600160a01b038981169482019490945260248101929092525161024495946102389490931691634ee2cd7e916044808301926020929190829003018186803b15801561020057600080fd5b505afa158015610214573d6000803e3d6000fd5b505050506040513d602081101561022a57600080fd5b50519063ffffffff61042416565b9063ffffffff61048616565b90505b919050565b60035481565b60025481565b6005546001600160a01b0316156102b6576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038116610308576040805162461bcd60e51b8152602060048201526014602482015273746f6b656e2063616e6e6f74206265207a65726f60601b604482015290519081900360640190fd5b600580546001600160a01b0319166001600160a01b038316179055600085905560018490556002839055600482905583151580610346575060025415155b1561038d576001546002541161038d5760405162461bcd60e51b81526004018080602001828103825260238152602001806105666023913960400191505060405180910390fd5b60055460408051630981b24d60e41b81526004810185905290516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b1580156103d957600080fd5b505afa1580156103ed573d6000803e3d6000fd5b505050506040513d602081101561040357600080fd5b50516003555050505050565b60005481565b6005546001600160a01b031681565b60008261043357506000610480565b8282028284828161044057fe5b041461047d5760405162461bcd60e51b81526004018080602001828103825260218152602001806105896021913960400191505060405180910390fd5b90505b92915050565b600061047d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506000818361054f5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156105145781810151838201526020016104fc565b50505050905090810190601f1680156105415780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161055b57fe5b049594505050505056fe636c61696d696e67537461727454696d65203e20636c61696d696e67456e6454696d65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a723158204bab8c8540908d5f181853fca532a5848c31226d6f6f6367fd68e5ad64c1cb3964736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/OrganizationRegister.json b/contracts/0.0.1-rc.53/OrganizationRegister.json new file mode 100644 index 00000000..70971a82 --- /dev/null +++ b/contracts/0.0.1-rc.53/OrganizationRegister.json @@ -0,0 +1,199 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "OrganizationRegister", + "sourceName": "contracts/universalSchemes/OrganizationRegister.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_registry", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_org", + "type": "address" + } + ], + "name": "OrgAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_registry", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_org", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Promotion", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_record", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "addOrPromoteAddress", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_fee", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "organizationsRegistry", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "uint256", + "name": "fee", + "type": "uint256" + }, + { + "internalType": "contract IERC20", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "beneficiary", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_fee", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506108fa806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063025068041461005c578063197275f1146100a157806343cfe6b2146100d95780638fd631af1461011957806399cc9e731461014f575b600080fd5b6100796004803603602081101561007257600080fd5b5035610185565b604080519384526001600160a01b039283166020850152911682820152519081900360600190f35b6100d7600480360360608110156100b757600080fd5b506001600160a01b038135811691602081013590911690604001356101b2565b005b610107600480360360408110156100ef57600080fd5b506001600160a01b0381358116916020013516610362565b60408051918252519081900360200190f35b6101076004803603606081101561012f57600080fd5b506001600160a01b0381358116916020810135916040909101351661037c565b6101076004803603606081101561016557600080fd5b506001600160a01b038135811691602081013591604090910135166103fb565b60016020819052600091825260409091208054918101546002909101546001600160a01b03918216911683565b6101ba610880565b600160006101c78661044a565b81526020808201929092526040908101600090812082516060810184528154815260018201546001600160a01b0390811682870152600290920154821681850152888216835282855283832091881683529352205490915015158061022d575080518210155b61023657600080fd5b61025e3382604001518484602001516001600160a01b0316610665909392919063ffffffff16565b6001600160a01b03808516600090815260208181526040808320938716835292905220546102c757826001600160a01b0316846001600160a01b03167fbb755c25de622371a070056e89daca3dffb2591e14bfeaf5a22a5ff538f6430460405160405180910390a35b6001600160a01b03808516600090815260208181526040808320938716835292905220546102fb908363ffffffff6107e816565b6001600160a01b03808616600081815260208181526040808320948916808452948252918290209490945580518681529051929391927fbd26cf001a8e3be5dc9ac9f95c5e8fef2258c1ded9c61814e107db3ce9bbf2ca929181900390910190a350505050565b600060208181529281526040808220909352908152205481565b60008061038a8585856103fb565b600081815260016020819052604090912001549091506001600160a01b03166103f357600081815260016020819052604090912090810180546001600160a01b038089166001600160a01b03199283161790925586835560029092018054918616919092161790555b949350505050565b604080516bffffffffffffffffffffffff19606095861b811660208084019190915260348301959095529290941b90911660548401528051604881850301815260689093019052815191012090565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561048557600080fd5b505afa158015610499573d6000803e3d6000fd5b505050506040513d60208110156104af57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561050157600080fd5b505afa158015610515573d6000803e3d6000fd5b505050506040513d602081101561052b57600080fd5b505161057e576040805162461bcd60e51b815260206004820152601860248201527f736368656d65206973206e6f7420726567697374657265640000000000000000604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156105b757600080fd5b505afa1580156105cb573d6000803e3d6000fd5b505050506040513d60208110156105e157600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b15801561063357600080fd5b505afa158015610647573d6000803e3d6000fd5b505050506040513d602081101561065d57600080fd5b505192915050565b610677846001600160a01b0316610849565b61068057600080fd5b60006060856001600160a01b03166040518060600160405280602581526020016108a1602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b6020831061072d5780518252601f19909201916020918201910161070e565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461078f576040519150601f19603f3d011682016040523d82523d6000602084013e610794565b606091505b5091509150816107a357600080fd5b805115806107d75750805160201480156107d7575080601f815181106107c557fe5b01602001516001600160f81b03191615155b6107e057600080fd5b505050505050565b600082820183811015610842576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906103f35750141592915050565b60408051606081018252600080825260208201819052918101919091529056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629a265627a7a723158202335b90e4969d756cd5a1fa7f902b39e2c68082e06bc85d8f2803c81f0f211f664736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c8063025068041461005c578063197275f1146100a157806343cfe6b2146100d95780638fd631af1461011957806399cc9e731461014f575b600080fd5b6100796004803603602081101561007257600080fd5b5035610185565b604080519384526001600160a01b039283166020850152911682820152519081900360600190f35b6100d7600480360360608110156100b757600080fd5b506001600160a01b038135811691602081013590911690604001356101b2565b005b610107600480360360408110156100ef57600080fd5b506001600160a01b0381358116916020013516610362565b60408051918252519081900360200190f35b6101076004803603606081101561012f57600080fd5b506001600160a01b0381358116916020810135916040909101351661037c565b6101076004803603606081101561016557600080fd5b506001600160a01b038135811691602081013591604090910135166103fb565b60016020819052600091825260409091208054918101546002909101546001600160a01b03918216911683565b6101ba610880565b600160006101c78661044a565b81526020808201929092526040908101600090812082516060810184528154815260018201546001600160a01b0390811682870152600290920154821681850152888216835282855283832091881683529352205490915015158061022d575080518210155b61023657600080fd5b61025e3382604001518484602001516001600160a01b0316610665909392919063ffffffff16565b6001600160a01b03808516600090815260208181526040808320938716835292905220546102c757826001600160a01b0316846001600160a01b03167fbb755c25de622371a070056e89daca3dffb2591e14bfeaf5a22a5ff538f6430460405160405180910390a35b6001600160a01b03808516600090815260208181526040808320938716835292905220546102fb908363ffffffff6107e816565b6001600160a01b03808616600081815260208181526040808320948916808452948252918290209490945580518681529051929391927fbd26cf001a8e3be5dc9ac9f95c5e8fef2258c1ded9c61814e107db3ce9bbf2ca929181900390910190a350505050565b600060208181529281526040808220909352908152205481565b60008061038a8585856103fb565b600081815260016020819052604090912001549091506001600160a01b03166103f357600081815260016020819052604090912090810180546001600160a01b038089166001600160a01b03199283161790925586835560029092018054918616919092161790555b949350505050565b604080516bffffffffffffffffffffffff19606095861b811660208084019190915260348301959095529290941b90911660548401528051604881850301815260689093019052815191012090565b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561048557600080fd5b505afa158015610499573d6000803e3d6000fd5b505050506040513d60208110156104af57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561050157600080fd5b505afa158015610515573d6000803e3d6000fd5b505050506040513d602081101561052b57600080fd5b505161057e576040805162461bcd60e51b815260206004820152601860248201527f736368656d65206973206e6f7420726567697374657265640000000000000000604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156105b757600080fd5b505afa1580156105cb573d6000803e3d6000fd5b505050506040513d60208110156105e157600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b15801561063357600080fd5b505afa158015610647573d6000803e3d6000fd5b505050506040513d602081101561065d57600080fd5b505192915050565b610677846001600160a01b0316610849565b61068057600080fd5b60006060856001600160a01b03166040518060600160405280602581526020016108a1602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b6020831061072d5780518252601f19909201916020918201910161070e565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461078f576040519150601f19603f3d011682016040523d82523d6000602084013e610794565b606091505b5091509150816107a357600080fd5b805115806107d75750805160201480156107d7575080601f815181106107c557fe5b01602001516001600160f81b03191615155b6107e057600080fd5b505050505050565b600082820183811015610842576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906103f35750141592915050565b60408051606081018252600080825260208201819052918101919091529056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629a265627a7a723158202335b90e4969d756cd5a1fa7f902b39e2c68082e06bc85d8f2803c81f0f211f664736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Ownable.json b/contracts/0.0.1-rc.53/Ownable.json new file mode 100644 index 00000000..fe1e2d2c --- /dev/null +++ b/contracts/0.0.1-rc.53/Ownable.json @@ -0,0 +1,2835 @@ +{ + "contractName": "Ownable", + "abi": [ + { + "inputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "sourceMap": "", + "deployedSourceMap": "", + "source": "pragma solidity ^0.5.2;\n\n/**\n * @title Ownable\n * @dev The Ownable contract has an owner address, and provides basic authorization control\n * functions, this simplifies the implementation of \"user permissions\".\n */\ncontract Ownable {\n address private _owner;\n\n event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\n\n /**\n * @dev The Ownable constructor sets the original `owner` of the contract to the sender\n * account.\n */\n constructor () internal {\n _owner = msg.sender;\n emit OwnershipTransferred(address(0), _owner);\n }\n\n /**\n * @return the address of the owner.\n */\n function owner() public view returns (address) {\n return _owner;\n }\n\n /**\n * @dev Throws if called by any account other than the owner.\n */\n modifier onlyOwner() {\n require(isOwner());\n _;\n }\n\n /**\n * @return true if `msg.sender` is the owner of the contract.\n */\n function isOwner() public view returns (bool) {\n return msg.sender == _owner;\n }\n\n /**\n * @dev Allows the current owner to relinquish control of the contract.\n * It will not be possible to call the functions with the `onlyOwner`\n * modifier anymore.\n * @notice Renouncing ownership will leave the contract without an owner,\n * thereby removing any functionality that is only available to the owner.\n */\n function renounceOwnership() public onlyOwner {\n emit OwnershipTransferred(_owner, address(0));\n _owner = address(0);\n }\n\n /**\n * @dev Allows the current owner to transfer control of the contract to a newOwner.\n * @param newOwner The address to transfer ownership to.\n */\n function transferOwnership(address newOwner) public onlyOwner {\n _transferOwnership(newOwner);\n }\n\n /**\n * @dev Transfers control of the contract to a newOwner.\n * @param newOwner The address to transfer ownership to.\n */\n function _transferOwnership(address newOwner) internal {\n require(newOwner != address(0));\n emit OwnershipTransferred(_owner, newOwner);\n _owner = newOwner;\n }\n}\n", + "sourcePath": "openzeppelin-solidity/contracts/ownership/Ownable.sol", + "ast": { + "absolutePath": "openzeppelin-solidity/contracts/ownership/Ownable.sol", + "exportedSymbols": { + "Ownable": [ + 262 + ] + }, + "id": 263, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 155, + "literals": [ + "solidity", + "^", + "0.5", + ".2" + ], + "nodeType": "PragmaDirective", + "src": "0:23:2" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": "@title Ownable\n@dev The Ownable contract has an owner address, and provides basic authorization control\nfunctions, this simplifies the implementation of \"user permissions\".", + "fullyImplemented": true, + "id": 262, + "linearizedBaseContracts": [ + 262 + ], + "name": "Ownable", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 157, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 262, + "src": "238:22:2", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 156, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "238:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "private" + }, + { + "anonymous": false, + "documentation": null, + "id": 163, + "name": "OwnershipTransferred", + "nodeType": "EventDefinition", + "parameters": { + "id": 162, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 159, + "indexed": true, + "name": "previousOwner", + "nodeType": "VariableDeclaration", + "scope": 163, + "src": "294:29:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 158, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "294:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 161, + "indexed": true, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 163, + "src": "325:24:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 160, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "325:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "293:57:2" + }, + "src": "267:84:2" + }, + { + "body": { + "id": 178, + "nodeType": "Block", + "src": "505:91:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 166, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "515:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 167, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 277, + "src": "524:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 168, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "524:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "515:19:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 170, + "nodeType": "ExpressionStatement", + "src": "515:19:2" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 173, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "578:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "570:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "570:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "argumentTypes": null, + "id": 175, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "582:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 171, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 163, + "src": "549:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "549:40:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 177, + "nodeType": "EmitStatement", + "src": "544:45:2" + } + ] + }, + "documentation": "@dev The Ownable constructor sets the original `owner` of the contract to the sender\naccount.", + "id": 179, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 164, + "nodeType": "ParameterList", + "parameters": [], + "src": "493:2:2" + }, + "returnParameters": { + "id": 165, + "nodeType": "ParameterList", + "parameters": [], + "src": "505:0:2" + }, + "scope": 262, + "src": "481:115:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 186, + "nodeType": "Block", + "src": "706:30:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 184, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "723:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 183, + "id": 185, + "nodeType": "Return", + "src": "716:13:2" + } + ] + }, + "documentation": "@return the address of the owner.", + "id": 187, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "owner", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 180, + "nodeType": "ParameterList", + "parameters": [], + "src": "673:2:2" + }, + "returnParameters": { + "id": 183, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 182, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 187, + "src": "697:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 181, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "697:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "696:9:2" + }, + "scope": 262, + "src": "659:77:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 195, + "nodeType": "Block", + "src": "845:46:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 190, + "name": "isOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 207, + "src": "863:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", + "typeString": "function () view returns (bool)" + } + }, + "id": 191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "863:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 189, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 280, + 281 + ], + "referencedDeclaration": 280, + "src": "855:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 192, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "855:18:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 193, + "nodeType": "ExpressionStatement", + "src": "855:18:2" + }, + { + "id": 194, + "nodeType": "PlaceholderStatement", + "src": "883:1:2" + } + ] + }, + "documentation": "@dev Throws if called by any account other than the owner.", + "id": 196, + "name": "onlyOwner", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 188, + "nodeType": "ParameterList", + "parameters": [], + "src": "842:2:2" + }, + "src": "824:67:2", + "visibility": "internal" + }, + { + "body": { + "id": 206, + "nodeType": "Block", + "src": "1025:44:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 204, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 201, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 277, + "src": "1042:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 202, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1042:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 203, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "1056:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1042:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 200, + "id": 205, + "nodeType": "Return", + "src": "1035:27:2" + } + ] + }, + "documentation": "@return true if `msg.sender` is the owner of the contract.", + "id": 207, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isOwner", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 197, + "nodeType": "ParameterList", + "parameters": [], + "src": "995:2:2" + }, + "returnParameters": { + "id": 200, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 199, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 207, + "src": "1019:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 198, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1019:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1018:6:2" + }, + "scope": 262, + "src": "979:90:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 225, + "nodeType": "Block", + "src": "1469:91:2", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 213, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "1505:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1521:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 214, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1513:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1513:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "id": 212, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 163, + "src": "1484:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1484:40:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 218, + "nodeType": "EmitStatement", + "src": "1479:45:2" + }, + { + "expression": { + "argumentTypes": null, + "id": 223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 219, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "1534:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 221, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1551:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 220, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1543:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1543:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "1534:19:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 224, + "nodeType": "ExpressionStatement", + "src": "1534:19:2" + } + ] + }, + "documentation": "@dev Allows the current owner to relinquish control of the contract.\nIt will not be possible to call the functions with the `onlyOwner`\nmodifier anymore.\n@notice Renouncing ownership will leave the contract without an owner,\nthereby removing any functionality that is only available to the owner.", + "id": 226, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 210, + "modifierName": { + "argumentTypes": null, + "id": 209, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 196, + "src": "1459:9:2", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1459:9:2" + } + ], + "name": "renounceOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 208, + "nodeType": "ParameterList", + "parameters": [], + "src": "1449:2:2" + }, + "returnParameters": { + "id": 211, + "nodeType": "ParameterList", + "parameters": [], + "src": "1469:0:2" + }, + "scope": 262, + "src": "1423:137:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 237, + "nodeType": "Block", + "src": "1793:45:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 234, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 228, + "src": "1822:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 233, + "name": "_transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 261, + "src": "1803:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1803:28:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 236, + "nodeType": "ExpressionStatement", + "src": "1803:28:2" + } + ] + }, + "documentation": "@dev Allows the current owner to transfer control of the contract to a newOwner.\n@param newOwner The address to transfer ownership to.", + "id": 238, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 231, + "modifierName": { + "argumentTypes": null, + "id": 230, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 196, + "src": "1783:9:2", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1783:9:2" + } + ], + "name": "transferOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 229, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 228, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 238, + "src": "1758:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 227, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1758:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1757:18:2" + }, + "returnParameters": { + "id": 232, + "nodeType": "ParameterList", + "parameters": [], + "src": "1793:0:2" + }, + "scope": 262, + "src": "1731:107:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 260, + "nodeType": "Block", + "src": "2037:128:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 244, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 240, + "src": "2055:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 246, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2075:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2067:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 247, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2067:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "2055:22:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 243, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 280, + 281 + ], + "referencedDeclaration": 280, + "src": "2047:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2047:31:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 250, + "nodeType": "ExpressionStatement", + "src": "2047:31:2" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 252, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "2114:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 253, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 240, + "src": "2122:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 251, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 163, + "src": "2093:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2093:38:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 255, + "nodeType": "EmitStatement", + "src": "2088:43:2" + }, + { + "expression": { + "argumentTypes": null, + "id": 258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 256, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "2141:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 257, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 240, + "src": "2150:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2141:17:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 259, + "nodeType": "ExpressionStatement", + "src": "2141:17:2" + } + ] + }, + "documentation": "@dev Transfers control of the contract to a newOwner.\n@param newOwner The address to transfer ownership to.", + "id": 261, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transferOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 241, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 240, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 261, + "src": "2010:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 239, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2010:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2009:18:2" + }, + "returnParameters": { + "id": 242, + "nodeType": "ParameterList", + "parameters": [], + "src": "2037:0:2" + }, + "scope": 262, + "src": "1982:183:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "internal" + } + ], + "scope": 263, + "src": "215:1952:2" + } + ], + "src": "0:2168:2" + }, + "legacyAST": { + "absolutePath": "openzeppelin-solidity/contracts/ownership/Ownable.sol", + "exportedSymbols": { + "Ownable": [ + 262 + ] + }, + "id": 263, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 155, + "literals": [ + "solidity", + "^", + "0.5", + ".2" + ], + "nodeType": "PragmaDirective", + "src": "0:23:2" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": "@title Ownable\n@dev The Ownable contract has an owner address, and provides basic authorization control\nfunctions, this simplifies the implementation of \"user permissions\".", + "fullyImplemented": true, + "id": 262, + "linearizedBaseContracts": [ + 262 + ], + "name": "Ownable", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 157, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 262, + "src": "238:22:2", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 156, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "238:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "private" + }, + { + "anonymous": false, + "documentation": null, + "id": 163, + "name": "OwnershipTransferred", + "nodeType": "EventDefinition", + "parameters": { + "id": 162, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 159, + "indexed": true, + "name": "previousOwner", + "nodeType": "VariableDeclaration", + "scope": 163, + "src": "294:29:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 158, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "294:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 161, + "indexed": true, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 163, + "src": "325:24:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 160, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "325:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "293:57:2" + }, + "src": "267:84:2" + }, + { + "body": { + "id": 178, + "nodeType": "Block", + "src": "505:91:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 166, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "515:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 167, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 277, + "src": "524:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 168, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "524:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "515:19:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 170, + "nodeType": "ExpressionStatement", + "src": "515:19:2" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 173, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "578:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "570:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "570:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "argumentTypes": null, + "id": 175, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "582:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 171, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 163, + "src": "549:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "549:40:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 177, + "nodeType": "EmitStatement", + "src": "544:45:2" + } + ] + }, + "documentation": "@dev The Ownable constructor sets the original `owner` of the contract to the sender\naccount.", + "id": 179, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 164, + "nodeType": "ParameterList", + "parameters": [], + "src": "493:2:2" + }, + "returnParameters": { + "id": 165, + "nodeType": "ParameterList", + "parameters": [], + "src": "505:0:2" + }, + "scope": 262, + "src": "481:115:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 186, + "nodeType": "Block", + "src": "706:30:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 184, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "723:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 183, + "id": 185, + "nodeType": "Return", + "src": "716:13:2" + } + ] + }, + "documentation": "@return the address of the owner.", + "id": 187, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "owner", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 180, + "nodeType": "ParameterList", + "parameters": [], + "src": "673:2:2" + }, + "returnParameters": { + "id": 183, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 182, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 187, + "src": "697:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 181, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "697:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "696:9:2" + }, + "scope": 262, + "src": "659:77:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 195, + "nodeType": "Block", + "src": "845:46:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 190, + "name": "isOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 207, + "src": "863:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", + "typeString": "function () view returns (bool)" + } + }, + "id": 191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "863:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 189, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 280, + 281 + ], + "referencedDeclaration": 280, + "src": "855:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 192, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "855:18:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 193, + "nodeType": "ExpressionStatement", + "src": "855:18:2" + }, + { + "id": 194, + "nodeType": "PlaceholderStatement", + "src": "883:1:2" + } + ] + }, + "documentation": "@dev Throws if called by any account other than the owner.", + "id": 196, + "name": "onlyOwner", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 188, + "nodeType": "ParameterList", + "parameters": [], + "src": "842:2:2" + }, + "src": "824:67:2", + "visibility": "internal" + }, + { + "body": { + "id": 206, + "nodeType": "Block", + "src": "1025:44:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 204, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 201, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 277, + "src": "1042:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 202, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1042:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 203, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "1056:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1042:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 200, + "id": 205, + "nodeType": "Return", + "src": "1035:27:2" + } + ] + }, + "documentation": "@return true if `msg.sender` is the owner of the contract.", + "id": 207, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isOwner", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 197, + "nodeType": "ParameterList", + "parameters": [], + "src": "995:2:2" + }, + "returnParameters": { + "id": 200, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 199, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 207, + "src": "1019:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 198, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1019:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1018:6:2" + }, + "scope": 262, + "src": "979:90:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 225, + "nodeType": "Block", + "src": "1469:91:2", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 213, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "1505:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1521:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 214, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1513:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1513:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "id": 212, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 163, + "src": "1484:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1484:40:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 218, + "nodeType": "EmitStatement", + "src": "1479:45:2" + }, + { + "expression": { + "argumentTypes": null, + "id": 223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 219, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "1534:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 221, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1551:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 220, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1543:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1543:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "1534:19:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 224, + "nodeType": "ExpressionStatement", + "src": "1534:19:2" + } + ] + }, + "documentation": "@dev Allows the current owner to relinquish control of the contract.\nIt will not be possible to call the functions with the `onlyOwner`\nmodifier anymore.\n@notice Renouncing ownership will leave the contract without an owner,\nthereby removing any functionality that is only available to the owner.", + "id": 226, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 210, + "modifierName": { + "argumentTypes": null, + "id": 209, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 196, + "src": "1459:9:2", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1459:9:2" + } + ], + "name": "renounceOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 208, + "nodeType": "ParameterList", + "parameters": [], + "src": "1449:2:2" + }, + "returnParameters": { + "id": 211, + "nodeType": "ParameterList", + "parameters": [], + "src": "1469:0:2" + }, + "scope": 262, + "src": "1423:137:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 237, + "nodeType": "Block", + "src": "1793:45:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 234, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 228, + "src": "1822:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 233, + "name": "_transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 261, + "src": "1803:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1803:28:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 236, + "nodeType": "ExpressionStatement", + "src": "1803:28:2" + } + ] + }, + "documentation": "@dev Allows the current owner to transfer control of the contract to a newOwner.\n@param newOwner The address to transfer ownership to.", + "id": 238, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 231, + "modifierName": { + "argumentTypes": null, + "id": 230, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 196, + "src": "1783:9:2", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1783:9:2" + } + ], + "name": "transferOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 229, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 228, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 238, + "src": "1758:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 227, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1758:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1757:18:2" + }, + "returnParameters": { + "id": 232, + "nodeType": "ParameterList", + "parameters": [], + "src": "1793:0:2" + }, + "scope": 262, + "src": "1731:107:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 260, + "nodeType": "Block", + "src": "2037:128:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 244, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 240, + "src": "2055:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 246, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2075:1:2", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2067:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 247, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2067:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "2055:22:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 243, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 280, + 281 + ], + "referencedDeclaration": 280, + "src": "2047:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2047:31:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 250, + "nodeType": "ExpressionStatement", + "src": "2047:31:2" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 252, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "2114:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 253, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 240, + "src": "2122:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 251, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 163, + "src": "2093:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2093:38:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 255, + "nodeType": "EmitStatement", + "src": "2088:43:2" + }, + { + "expression": { + "argumentTypes": null, + "id": 258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 256, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 157, + "src": "2141:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 257, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 240, + "src": "2150:8:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2141:17:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 259, + "nodeType": "ExpressionStatement", + "src": "2141:17:2" + } + ] + }, + "documentation": "@dev Transfers control of the contract to a newOwner.\n@param newOwner The address to transfer ownership to.", + "id": 261, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transferOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 241, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 240, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 261, + "src": "2010:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 239, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2010:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2009:18:2" + }, + "returnParameters": { + "id": 242, + "nodeType": "ParameterList", + "parameters": [], + "src": "2037:0:2" + }, + "scope": 262, + "src": "1982:183:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "internal" + } + ], + "scope": 263, + "src": "215:1952:2" + } + ], + "src": "0:2168:2" + }, + "compiler": { + "name": "solc", + "version": "0.5.4+commit.9549d8ff.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "3.0.2", + "updatedAt": "2019-03-28T13:02:44.900Z", + "devdoc": { + "details": "The Ownable contract has an owner address, and provides basic authorization control functions, this simplifies the implementation of \"user permissions\".", + "methods": { + "constructor": { + "details": "The Ownable constructor sets the original `owner` of the contract to the sender account." + }, + "isOwner()": { + "return": "true if `msg.sender` is the owner of the contract." + }, + "owner()": { + "return": "the address of the owner." + }, + "renounceOwnership()": { + "details": "Allows the current owner to relinquish control of the contract. It will not be possible to call the functions with the `onlyOwner` modifier anymore." + }, + "transferOwnership(address)": { + "details": "Allows the current owner to transfer control of the contract to a newOwner.", + "params": { + "newOwner": "The address to transfer ownership to." + } + } + }, + "title": "Ownable" + }, + "userdoc": { + "methods": { + "renounceOwnership()": { + "notice": "Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner." + } + } + } +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/PolkaCurve.json b/contracts/0.0.1-rc.53/PolkaCurve.json new file mode 100644 index 00000000..b9aa7e1e --- /dev/null +++ b/contracts/0.0.1-rc.53/PolkaCurve.json @@ -0,0 +1,62 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "PolkaCurve", + "sourceName": "contracts/test/PolkaCurve.sol", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "SUM_OF_SQRTS", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "TOTAL_REPUTATION", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "calc", + "outputs": [ + { + "internalType": "uint256", + "name": "sqrt", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061010e806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c806338c9027a1460415780633f4f781c14606d57806344cac103146073575b600080fd5b605b60048036036020811015605557600080fd5b50356079565b60408051918252519081900360200190f35b605b60cb565b605b60d2565b670de0b6b3a7640000810280600260018201045b8281101560b15780925060028182848160a257fe5b04018160aa57fe5b049050608d565b621a3722620c3500840204633b9aca000292505050919050565b621a372281565b620c35008156fea265627a7a72315820db4b0fb096e37e901d0637c372737dd91ea1dcdc8e2214248915beef0eaf9b9764736f6c63430005110032", + "deployedBytecode": "0x6080604052348015600f57600080fd5b5060043610603c5760003560e01c806338c9027a1460415780633f4f781c14606d57806344cac103146073575b600080fd5b605b60048036036020811015605557600080fd5b50356079565b60408051918252519081900360200190f35b605b60cb565b605b60d2565b670de0b6b3a7640000810280600260018201045b8281101560b15780925060028182848160a257fe5b04018160aa57fe5b049050608d565b621a3722620c3500840204633b9aca000292505050919050565b621a372281565b620c35008156fea265627a7a72315820db4b0fb096e37e901d0637c372737dd91ea1dcdc8e2214248915beef0eaf9b9764736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/PriceOracleInterface.json b/contracts/0.0.1-rc.53/PriceOracleInterface.json new file mode 100644 index 00000000..ad626390 --- /dev/null +++ b/contracts/0.0.1-rc.53/PriceOracleInterface.json @@ -0,0 +1,37 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "PriceOracleInterface", + "sourceName": "contracts/schemes/PriceOracleInterface.sol", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "getPrice", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/PriceOracleMock.json b/contracts/0.0.1-rc.53/PriceOracleMock.json new file mode 100644 index 00000000..7966ae62 --- /dev/null +++ b/contracts/0.0.1-rc.53/PriceOracleMock.json @@ -0,0 +1,161 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "PriceOracleMock", + "sourceName": "contracts/test/PriceOracleMock.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "getPrice", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "numerator", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "denominator", + "type": "uint256" + } + ], + "name": "setTokenPrice", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "tokenPrices", + "outputs": [ + { + "internalType": "uint256", + "name": "numerator", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "denominator", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040526100156001600160e01b0361006216565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610066565b3390565b6104c5806100756000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80638da5cb5b1161005b5780638da5cb5b146100f15780638f32d59b14610115578063eb1c031614610131578063f2fde38b146101635761007d565b8063204120bc1461008257806341976e09146100c1578063715018a6146100e7575b600080fd5b6100a86004803603602081101561009857600080fd5b50356001600160a01b0316610189565b6040805192835260208301919091528051918290030190f35b6100a8600480360360208110156100d757600080fd5b50356001600160a01b03166101a2565b6100ef6101e3565b005b6100f9610286565b604080516001600160a01b039092168252519081900360200190f35b61011d610295565b604080519115158252519081900360200190f35b6100ef6004803603606081101561014757600080fd5b506001600160a01b0381351690602081013590604001356102b9565b6100ef6004803603602081101561017957600080fd5b50356001600160a01b0316610347565b6001602081905260009182526040909120805491015482565b6000806101ad610450565b5050506001600160a01b031660009081526001602081815260409283902083518085019094528054808552920154920182905291565b6101eb610295565b61023c576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b03166102aa6103ac565b6001600160a01b031614905090565b6102c1610295565b610312576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60408051808201825292835260208084019283526001600160a01b039094166000908152600194859052209151825551910155565b61034f610295565b6103a0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6103a9816103b0565b50565b3390565b6001600160a01b0381166103f55760405162461bcd60e51b815260040180806020018281038252602681526020018061046b6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60405180604001604052806000815260200160008152509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373a265627a7a72315820aace9a02680236686ca8acfa1e522397c87bafc0bdaadc3c6ccbccb7db0d7abb64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007d5760003560e01c80638da5cb5b1161005b5780638da5cb5b146100f15780638f32d59b14610115578063eb1c031614610131578063f2fde38b146101635761007d565b8063204120bc1461008257806341976e09146100c1578063715018a6146100e7575b600080fd5b6100a86004803603602081101561009857600080fd5b50356001600160a01b0316610189565b6040805192835260208301919091528051918290030190f35b6100a8600480360360208110156100d757600080fd5b50356001600160a01b03166101a2565b6100ef6101e3565b005b6100f9610286565b604080516001600160a01b039092168252519081900360200190f35b61011d610295565b604080519115158252519081900360200190f35b6100ef6004803603606081101561014757600080fd5b506001600160a01b0381351690602081013590604001356102b9565b6100ef6004803603602081101561017957600080fd5b50356001600160a01b0316610347565b6001602081905260009182526040909120805491015482565b6000806101ad610450565b5050506001600160a01b031660009081526001602081815260409283902083518085019094528054808552920154920182905291565b6101eb610295565b61023c576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b03166102aa6103ac565b6001600160a01b031614905090565b6102c1610295565b610312576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60408051808201825292835260208084019283526001600160a01b039094166000908152600194859052209151825551910155565b61034f610295565b6103a0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6103a9816103b0565b50565b3390565b6001600160a01b0381166103f55760405162461bcd60e51b815260040180806020018281038252602681526020018061046b6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60405180604001604052806000815260200160008152509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373a265627a7a72315820aace9a02680236686ca8acfa1e522397c87bafc0bdaadc3c6ccbccb7db0d7abb64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ProposalExecuteInterface.json b/contracts/0.0.1-rc.53/ProposalExecuteInterface.json new file mode 100644 index 00000000..e6f621d3 --- /dev/null +++ b/contracts/0.0.1-rc.53/ProposalExecuteInterface.json @@ -0,0 +1,35 @@ +{ + "contractName": "ProposalExecuteInterface", + "abi": [ + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/QuorumVote.json b/contracts/0.0.1-rc.53/QuorumVote.json new file mode 100644 index 00000000..0d4a987b --- /dev/null +++ b/contracts/0.0.1-rc.53/QuorumVote.json @@ -0,0 +1,594 @@ +{ + "contractName": "QuorumVote", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bool", + "name": "_isProxyVote", + "type": "bool" + } + ], + "name": "AVVoteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "CancelProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "CancelVoting", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_decision", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_totalReputation", + "type": "uint256" + } + ], + "name": "ExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "VoteProposal", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "MAX_NUM_OF_CHOICES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "cancelVote", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "execute", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAllowedRangeOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getNumberOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "_precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isAbstainAllow", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "isVotable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizations", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "uint256", + "name": "precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "voteOnBehalf", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "bytes32", + "name": "organizationId", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "open", + "type": "bool" + }, + { + "internalType": "address", + "name": "callbacks", + "type": "address" + }, + { + "internalType": "uint256", + "name": "numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "paramsHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalVotes", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "proposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "voteInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_choice", + "type": "uint256" + } + ], + "name": "voteStatus", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506113da806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806351d997b2116100a2578063a003651d11610071578063a003651d1461031a578063b451291314610337578063ba51b14e1461035a578063c083510614610393578063e751f271146103b05761010b565b806351d997b2146102b157806388737b5e146102b95780638d22651e146102f35780639525c0cc146102fb5761010b565b8063289647e4116100de578063289647e4146101d957806332ed5b1214610205578063359afa491461025d5780635142bc1e146102a95761010b565b80630250680414610110578063119ce91b1461014e57806321b4b3dc1461019357806323d840f5146101ad575b600080fd5b61012d6004803603602081101561012657600080fd5b50356103cd565b604080519283526001600160a01b0390911660208301528051918290030190f35b61017a6004803603604081101561016457600080fd5b50803590602001356001600160a01b03166103ef565b6040805192835260208301919091528051918290030190f35b61019b610440565b60408051918252519081900360200190f35b61019b600480360360408110156101c357600080fd5b50803590602001356001600160a01b0316610446565b61019b600480360360408110156101ef57600080fd5b50803590602001356001600160a01b03166104fa565b6102226004803603602081101561021b57600080fd5b5035610539565b6040805196875294151560208701526001600160a01b03909316858501526060850191909152608084015260a0830152519081900360c00190f35b6102956004803603608081101561027357600080fd5b50803590602081013590604081013590606001356001600160a01b0316610579565b604080519115158252519081900360200190f35b61017a6106a3565b6102956106ab565b61019b600480360360808110156102cf57600080fd5b508035906020810135906001600160a01b03604082013581169160600135166106b0565b61019b610960565b6103186004803603602081101561031157600080fd5b5035610965565b005b61019b6004803603602081101561033057600080fd5b50356109d6565b61019b6004803603604081101561034d57600080fd5b50803590602001356109eb565b6103776004803603602081101561037057600080fd5b5035610a0c565b604080516001600160a01b039092168252519081900360200190f35b610295600480360360208110156103a957600080fd5b5035610a27565b610295600480360360208110156103c657600080fd5b5035610a40565b600060208190529081526040902080546001909101546001600160a01b031682565b6000806103fa6112f1565b50505060008281526001602081815260408084206001600160a01b0386168552600601825292839020835180850190945280548085529201549201829052909250929050565b60035481565b6000606483111580156104595750600083115b61049a576040805162461bcd60e51b815260206004820152600d60248201526c77726f6e67207072656352657160981b604482015290519081900360640190fd5b60006104a684846104fa565b6040805180820182529586526001600160a01b039485166020808801918252600084815290819052919091209551865551600190950180546001600160a01b03191695909416949094179092555090919050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b60016020819052600091825260409091208054918101546002820154600383015460049093015460ff8316936101009093046001600160a01b0316929086565b600084815260016020819052604082200154859060ff166105db576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008681526001602052604090206105f161130b565b506003810154600090815260208181526040808320815180830190925280548252600101546001600160a01b03169181018290529190156106875781602001516001600160a01b0316336001600160a01b0316146106805760405162461bcd60e51b81526004018080602001828103825260248152602001806113826024913960400191505060405180910390fd5b508461068a565b50335b61069689828a8a610ab4565b9998505050505050505050565b6000600a9091565b600190565b600083815260208190526040812054610710576040805162461bcd60e51b815260206004820152601c60248201527f6e6f20736574506172616d6574657273206265656e2063616c6c656400000000604482015290519081900360640190fd5b6000851180156107215750600a8511155b610772576040805162461bcd60e51b815260206004820152601960248201527f6e756d4f6643686f69636573206f7574206f662072616e676500000000000000604482015290519081900360640190fd5b600354604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906107b790600163ffffffff610d9016565b6003556107c2611322565b606081810188815260808301888152336040808601828152815192861b602084810191909152958a901b6bffffffffffffffffffffffff191660348401528151808403602801815260489093018252825192860192909220865260018587018181526000898152828852838120895180825592519381018054965160ff1990971694151594909417610100600160a81b0319166101006001600160a01b03978816021790935595516002808401919091559451600383015560a0880151600490920191909155845291909352902054166108f3576001600160a01b0384166108c9578051600090815260026020526040902080546001600160a01b031916331790556108f3565b8051600090815260026020526040902080546001600160a01b0319166001600160a01b0386161790555b80516000908152600260209081526040918290205482518a8152339281019290925281830189905291516001600160a01b039092169184917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a35095945050505050565b600a81565b60008181526001602081905260409091200154819060ff166109c8576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6109d28233610df1565b5050565b60009081526001602052604090206002015490565b60009182526001602090815260408084209284526005909201905290205490565b6002602052600090815260409020546001600160a01b031681565b6000908152600160208190526040909120015460ff1690565b600081815260016020819052604082200154829060ff16610aa2576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610aab83610ef6565b91505b50919050565b60008481526001602052604081206002810154841115610b12576040805162461bcd60e51b8152602060048201526014602482015273766f7465206973206f7574206f662072616e676560601b604482015290519081900360640190fd5b600181015460408051634ac41bc760e11b81526001600160a01b038881166004830152602482018a90529151600093610100900490921691639588378e91604480820192602092909190829003018186803b158015610b7057600080fd5b505afa158015610b84573d6000803e3d6000fd5b505050506040513d6020811015610b9a57600080fd5b5051905080610bf0576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b83811015610c2f5760405162461bcd60e51b815260040180806020018281038252602a815260200180611358602a913960400191505060405180910390fd5b8380610c385750805b6001600160a01b038716600090815260068401602052604090206001015415610c6557610c658888610df1565b6000868152600584016020526040902054610c8790829063ffffffff610d9016565b60008781526005850160205260409020556004830154610cae90829063ffffffff610d9016565b600484015560408051808201825287815260208082018481526001600160a01b03808c16600081815260068a0185528681209551865592516001909501949094558754825260028352908490205484518b8152928301869052845193949116928c927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92908290030190a4604080516001600160a01b0389163314158152905189917fe715e19c865cb724f3c292cc2fffc24d9cdd398e179fb366f008cc73028e1c52919081900360200190a2610d8488610ef6565b98975050505050505050565b600082820183811015610dea576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000828152600160205260409020610e076112f1565b506001600160a01b03821660009081526006820160209081526040808320815180830183528154808252600190920154818501819052918552600586019093529220549091610e5c919063ffffffff6111aa16565b815160009081526005840160209081526040909120919091558101516004830154610e8c9163ffffffff6111aa16565b60048301556001600160a01b03808416600081815260068501602090815260408083208381556001018390558654835260029091528082205490519293169187917f0ecab23267930de581498fac1af19a95c888ec6583921ee9c47473e16245d3c891a450505050565b600081815260016020819052604082200154829060ff16610f58576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600083815260016020818152604080842092830154815163b551c37360e01b81526004810189905291519394936101009091046001600160a01b03169263b551c3739260248082019391829003018186803b158015610fb657600080fd5b505afa158015610fca573d6000803e3d6000fd5b505050506040513d6020811015610fe057600080fd5b505160038301546000908152602081905260409020549091508060648304028360040154111561119e57600080805b8560020154811161105157600081815260058701602052604090205483101561104957600081815260058701602052604090205492509050805b60010161100f565b5061105a611322565b506040805160c08101825286548152600187015460ff81161515602083015261010090046001600160a01b0316918101919091526002860154606082015260038601546080820152600486015460a08201526110b5896111ec565b805160009081526002602090815260409182902054825185815291820188905282516001600160a01b03909116928c927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a380604001516001600160a01b0316639d4c162d8a846040518363ffffffff1660e01b81526004018083815260200182815260200192505050602060405180830381600087803b15801561116257600080fd5b505af1158015611176573d6000803e3d6000fd5b505050506040513d602081101561118c57600080fd5b5060019850610aae9650505050505050565b50600095945050505050565b6000610dea83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061125a565b6000818152600160205260408120905b816002015481116112205760008181526005830160205260408120556001016111fc565b50506000908152600160208190526040822082815590810180546001600160a81b0319169055600281018290556003810182905560040155565b600081848411156112e95760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112ae578181015183820152602001611296565b50505050905090810190601f1680156112db5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604051806040016040528060008152602001600081525090565b604080518082019091526000808252602082015290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe63616e6e6f7420766f74652077697468206d6f72652072657075746174696f6e20766f746572206861736d73672e73656e646572206973206e6f7420617574686f72697a656420746f20766f7465a265627a7a72315820a9c0501a600c90ebfcd66e781c9b4963ec0cdcc66bd8a3f4883dff28da6bfc3364736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806351d997b2116100a2578063a003651d11610071578063a003651d1461031a578063b451291314610337578063ba51b14e1461035a578063c083510614610393578063e751f271146103b05761010b565b806351d997b2146102b157806388737b5e146102b95780638d22651e146102f35780639525c0cc146102fb5761010b565b8063289647e4116100de578063289647e4146101d957806332ed5b1214610205578063359afa491461025d5780635142bc1e146102a95761010b565b80630250680414610110578063119ce91b1461014e57806321b4b3dc1461019357806323d840f5146101ad575b600080fd5b61012d6004803603602081101561012657600080fd5b50356103cd565b604080519283526001600160a01b0390911660208301528051918290030190f35b61017a6004803603604081101561016457600080fd5b50803590602001356001600160a01b03166103ef565b6040805192835260208301919091528051918290030190f35b61019b610440565b60408051918252519081900360200190f35b61019b600480360360408110156101c357600080fd5b50803590602001356001600160a01b0316610446565b61019b600480360360408110156101ef57600080fd5b50803590602001356001600160a01b03166104fa565b6102226004803603602081101561021b57600080fd5b5035610539565b6040805196875294151560208701526001600160a01b03909316858501526060850191909152608084015260a0830152519081900360c00190f35b6102956004803603608081101561027357600080fd5b50803590602081013590604081013590606001356001600160a01b0316610579565b604080519115158252519081900360200190f35b61017a6106a3565b6102956106ab565b61019b600480360360808110156102cf57600080fd5b508035906020810135906001600160a01b03604082013581169160600135166106b0565b61019b610960565b6103186004803603602081101561031157600080fd5b5035610965565b005b61019b6004803603602081101561033057600080fd5b50356109d6565b61019b6004803603604081101561034d57600080fd5b50803590602001356109eb565b6103776004803603602081101561037057600080fd5b5035610a0c565b604080516001600160a01b039092168252519081900360200190f35b610295600480360360208110156103a957600080fd5b5035610a27565b610295600480360360208110156103c657600080fd5b5035610a40565b600060208190529081526040902080546001909101546001600160a01b031682565b6000806103fa6112f1565b50505060008281526001602081815260408084206001600160a01b0386168552600601825292839020835180850190945280548085529201549201829052909250929050565b60035481565b6000606483111580156104595750600083115b61049a576040805162461bcd60e51b815260206004820152600d60248201526c77726f6e67207072656352657160981b604482015290519081900360640190fd5b60006104a684846104fa565b6040805180820182529586526001600160a01b039485166020808801918252600084815290819052919091209551865551600190950180546001600160a01b03191695909416949094179092555090919050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b60016020819052600091825260409091208054918101546002820154600383015460049093015460ff8316936101009093046001600160a01b0316929086565b600084815260016020819052604082200154859060ff166105db576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008681526001602052604090206105f161130b565b506003810154600090815260208181526040808320815180830190925280548252600101546001600160a01b03169181018290529190156106875781602001516001600160a01b0316336001600160a01b0316146106805760405162461bcd60e51b81526004018080602001828103825260248152602001806113826024913960400191505060405180910390fd5b508461068a565b50335b61069689828a8a610ab4565b9998505050505050505050565b6000600a9091565b600190565b600083815260208190526040812054610710576040805162461bcd60e51b815260206004820152601c60248201527f6e6f20736574506172616d6574657273206265656e2063616c6c656400000000604482015290519081900360640190fd5b6000851180156107215750600a8511155b610772576040805162461bcd60e51b815260206004820152601960248201527f6e756d4f6643686f69636573206f7574206f662072616e676500000000000000604482015290519081900360640190fd5b600354604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906107b790600163ffffffff610d9016565b6003556107c2611322565b606081810188815260808301888152336040808601828152815192861b602084810191909152958a901b6bffffffffffffffffffffffff191660348401528151808403602801815260489093018252825192860192909220865260018587018181526000898152828852838120895180825592519381018054965160ff1990971694151594909417610100600160a81b0319166101006001600160a01b03978816021790935595516002808401919091559451600383015560a0880151600490920191909155845291909352902054166108f3576001600160a01b0384166108c9578051600090815260026020526040902080546001600160a01b031916331790556108f3565b8051600090815260026020526040902080546001600160a01b0319166001600160a01b0386161790555b80516000908152600260209081526040918290205482518a8152339281019290925281830189905291516001600160a01b039092169184917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a35095945050505050565b600a81565b60008181526001602081905260409091200154819060ff166109c8576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6109d28233610df1565b5050565b60009081526001602052604090206002015490565b60009182526001602090815260408084209284526005909201905290205490565b6002602052600090815260409020546001600160a01b031681565b6000908152600160208190526040909120015460ff1690565b600081815260016020819052604082200154829060ff16610aa2576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610aab83610ef6565b91505b50919050565b60008481526001602052604081206002810154841115610b12576040805162461bcd60e51b8152602060048201526014602482015273766f7465206973206f7574206f662072616e676560601b604482015290519081900360640190fd5b600181015460408051634ac41bc760e11b81526001600160a01b038881166004830152602482018a90529151600093610100900490921691639588378e91604480820192602092909190829003018186803b158015610b7057600080fd5b505afa158015610b84573d6000803e3d6000fd5b505050506040513d6020811015610b9a57600080fd5b5051905080610bf0576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b83811015610c2f5760405162461bcd60e51b815260040180806020018281038252602a815260200180611358602a913960400191505060405180910390fd5b8380610c385750805b6001600160a01b038716600090815260068401602052604090206001015415610c6557610c658888610df1565b6000868152600584016020526040902054610c8790829063ffffffff610d9016565b60008781526005850160205260409020556004830154610cae90829063ffffffff610d9016565b600484015560408051808201825287815260208082018481526001600160a01b03808c16600081815260068a0185528681209551865592516001909501949094558754825260028352908490205484518b8152928301869052845193949116928c927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92908290030190a4604080516001600160a01b0389163314158152905189917fe715e19c865cb724f3c292cc2fffc24d9cdd398e179fb366f008cc73028e1c52919081900360200190a2610d8488610ef6565b98975050505050505050565b600082820183811015610dea576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000828152600160205260409020610e076112f1565b506001600160a01b03821660009081526006820160209081526040808320815180830183528154808252600190920154818501819052918552600586019093529220549091610e5c919063ffffffff6111aa16565b815160009081526005840160209081526040909120919091558101516004830154610e8c9163ffffffff6111aa16565b60048301556001600160a01b03808416600081815260068501602090815260408083208381556001018390558654835260029091528082205490519293169187917f0ecab23267930de581498fac1af19a95c888ec6583921ee9c47473e16245d3c891a450505050565b600081815260016020819052604082200154829060ff16610f58576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600083815260016020818152604080842092830154815163b551c37360e01b81526004810189905291519394936101009091046001600160a01b03169263b551c3739260248082019391829003018186803b158015610fb657600080fd5b505afa158015610fca573d6000803e3d6000fd5b505050506040513d6020811015610fe057600080fd5b505160038301546000908152602081905260409020549091508060648304028360040154111561119e57600080805b8560020154811161105157600081815260058701602052604090205483101561104957600081815260058701602052604090205492509050805b60010161100f565b5061105a611322565b506040805160c08101825286548152600187015460ff81161515602083015261010090046001600160a01b0316918101919091526002860154606082015260038601546080820152600486015460a08201526110b5896111ec565b805160009081526002602090815260409182902054825185815291820188905282516001600160a01b03909116928c927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a380604001516001600160a01b0316639d4c162d8a846040518363ffffffff1660e01b81526004018083815260200182815260200192505050602060405180830381600087803b15801561116257600080fd5b505af1158015611176573d6000803e3d6000fd5b505050506040513d602081101561118c57600080fd5b5060019850610aae9650505050505050565b50600095945050505050565b6000610dea83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061125a565b6000818152600160205260408120905b816002015481116112205760008181526005830160205260408120556001016111fc565b50506000908152600160208190526040822082815590810180546001600160a81b0319169055600281018290556003810182905560040155565b600081848411156112e95760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112ae578181015183820152602001611296565b50505050905090810190601f1680156112db5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604051806040016040528060008152602001600081525090565b604080518082019091526000808252602082015290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe63616e6e6f7420766f74652077697468206d6f72652072657075746174696f6e20766f746572206861736d73672e73656e646572206973206e6f7420617574686f72697a656420746f20766f7465a265627a7a72315820a9c0501a600c90ebfcd66e781c9b4963ec0cdcc66bd8a3f4883dff28da6bfc3364736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/RageQuitWithToken.json b/contracts/0.0.1-rc.53/RageQuitWithToken.json new file mode 100644 index 00000000..73428a01 --- /dev/null +++ b/contracts/0.0.1-rc.53/RageQuitWithToken.json @@ -0,0 +1,107 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "RageQuitWithToken", + "sourceName": "contracts/schemes/RageQuitWithToken.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_rageQuitter", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_refund", + "type": "uint256" + } + ], + "name": "RageQuit", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IERC20", + "name": "_rageQuitToken", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amountToRageQuitWith", + "type": "uint256" + } + ], + "name": "rageQuit", + "outputs": [ + { + "internalType": "uint256", + "name": "refund", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "rageQuitToken", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610766806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063485cc955146100515780635aef7de61461008157806365f969f6146100a5578063a22350b8146100d4575b600080fd5b61007f6004803603604081101561006757600080fd5b506001600160a01b03813581169160200135166100dc565b005b6100896101bb565b604080516001600160a01b039092168252519081900360200190f35b6100c2600480360360208110156100bb57600080fd5b50356101ca565b60408051918252519081900360200190f35b6100896105c0565b6001600160a01b03821661012f576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b6000546001600160a01b03161561018d576040805162461bcd60e51b815260206004820152601760248201527f63616e6e6f7420696e697469616c697a65207477696365000000000000000000604482015290519081900360640190fd5b600080546001600160a01b039384166001600160a01b03199182161790915560018054929093169116179055565b6000546001600160a01b031681565b6000805460408051631c2eb17b60e31b8152905183926001600160a01b03169163e1758bd8916004808301926020929190829003018186803b15801561020f57600080fd5b505afa158015610223573d6000803e3d6000fd5b505050506040513d602081101561023957600080fd5b5051604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b15801561027d57600080fd5b505afa158015610291573d6000803e3d6000fd5b505050506040513d60208110156102a757600080fd5b505160015460008054604080516370a0823160e01b81526001600160a01b039283166004820152905194955091939216916370a0823191602480820192602092909190829003018186803b1580156102fe57600080fd5b505afa158015610312573d6000803e3d6000fd5b505050506040513d602081101561032857600080fd5b5051905061034c82610340868463ffffffff6105cf16565b9063ffffffff61063116565b92506000809054906101000a90046001600160a01b03166001600160a01b031663e1758bd86040518163ffffffff1660e01b815260040160206040518083038186803b15801561039b57600080fd5b505afa1580156103af573d6000803e3d6000fd5b505050506040513d60208110156103c557600080fd5b50516040805163079cc67960e41b81523360048201526024810187905290516001600160a01b03909216916379cc67909160448082019260009290919082900301818387803b15801561041757600080fd5b505af115801561042b573d6000803e3d6000fd5b505050506000809054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561047c57600080fd5b505afa158015610490573d6000803e3d6000fd5b505050506040513d60208110156104a657600080fd5b5051600154600080546040805163b9a04cdd60e01b81526001600160a01b03948516600482015233602482015260448101899052918416606483015251929093169263b9a04cdd9260848083019360209383900390910190829087803b15801561050f57600080fd5b505af1158015610523573d6000803e3d6000fd5b505050506040513d602081101561053957600080fd5b5051610580576040805162461bcd60e51b81526020600482015260116024820152701cd95b99081d1bdad95b8819985a5b1959607a1b604482015290519081900360640190fd5b60008054604051859233926001600160a01b0316917f08edb737cb3d125a1b953b10d7d3c5829d48d7dbf05ab9f7aab98fe84671fc699190a45050919050565b6001546001600160a01b031681565b6000826105de5750600061062b565b828202828482816105eb57fe5b04146106285760405162461bcd60e51b81526004018080602001828103825260218152602001806107116021913960400191505060405180910390fd5b90505b92915050565b600061062883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836106fa5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156106bf5781810151838201526020016106a7565b50505050905090810190601f1680156106ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161070657fe5b049594505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a723158206e9dca27dda9b707e2925838e62f76d5ac5107b256aad7c314b64c9c8503d26264736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c8063485cc955146100515780635aef7de61461008157806365f969f6146100a5578063a22350b8146100d4575b600080fd5b61007f6004803603604081101561006757600080fd5b506001600160a01b03813581169160200135166100dc565b005b6100896101bb565b604080516001600160a01b039092168252519081900360200190f35b6100c2600480360360208110156100bb57600080fd5b50356101ca565b60408051918252519081900360200190f35b6100896105c0565b6001600160a01b03821661012f576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b6000546001600160a01b03161561018d576040805162461bcd60e51b815260206004820152601760248201527f63616e6e6f7420696e697469616c697a65207477696365000000000000000000604482015290519081900360640190fd5b600080546001600160a01b039384166001600160a01b03199182161790915560018054929093169116179055565b6000546001600160a01b031681565b6000805460408051631c2eb17b60e31b8152905183926001600160a01b03169163e1758bd8916004808301926020929190829003018186803b15801561020f57600080fd5b505afa158015610223573d6000803e3d6000fd5b505050506040513d602081101561023957600080fd5b5051604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b15801561027d57600080fd5b505afa158015610291573d6000803e3d6000fd5b505050506040513d60208110156102a757600080fd5b505160015460008054604080516370a0823160e01b81526001600160a01b039283166004820152905194955091939216916370a0823191602480820192602092909190829003018186803b1580156102fe57600080fd5b505afa158015610312573d6000803e3d6000fd5b505050506040513d602081101561032857600080fd5b5051905061034c82610340868463ffffffff6105cf16565b9063ffffffff61063116565b92506000809054906101000a90046001600160a01b03166001600160a01b031663e1758bd86040518163ffffffff1660e01b815260040160206040518083038186803b15801561039b57600080fd5b505afa1580156103af573d6000803e3d6000fd5b505050506040513d60208110156103c557600080fd5b50516040805163079cc67960e41b81523360048201526024810187905290516001600160a01b03909216916379cc67909160448082019260009290919082900301818387803b15801561041757600080fd5b505af115801561042b573d6000803e3d6000fd5b505050506000809054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561047c57600080fd5b505afa158015610490573d6000803e3d6000fd5b505050506040513d60208110156104a657600080fd5b5051600154600080546040805163b9a04cdd60e01b81526001600160a01b03948516600482015233602482015260448101899052918416606483015251929093169263b9a04cdd9260848083019360209383900390910190829087803b15801561050f57600080fd5b505af1158015610523573d6000803e3d6000fd5b505050506040513d602081101561053957600080fd5b5051610580576040805162461bcd60e51b81526020600482015260116024820152701cd95b99081d1bdad95b8819985a5b1959607a1b604482015290519081900360640190fd5b60008054604051859233926001600160a01b0316917f08edb737cb3d125a1b953b10d7d3c5829d48d7dbf05ab9f7aab98fe84671fc699190a45050919050565b6001546001600160a01b031681565b6000826105de5750600061062b565b828202828482816105eb57fe5b04146106285760405162461bcd60e51b81526004018080602001828103825260218152602001806107116021913960400191505060405180910390fd5b90505b92915050565b600061062883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836106fa5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156106bf5781810151838201526020016106a7565b50505050905090810190601f1680156106ec5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161070657fe5b049594505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a723158206e9dca27dda9b707e2925838e62f76d5ac5107b256aad7c314b64c9c8503d26264736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/RealMath.json b/contracts/0.0.1-rc.53/RealMath.json new file mode 100644 index 00000000..7c8e1822 --- /dev/null +++ b/contracts/0.0.1-rc.53/RealMath.json @@ -0,0 +1,8 @@ +{ + "contractName": "RealMath", + "abi": [], + "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158208e75b6f0b5fe8203892d3543846fde13a39264fb062558240eccd36529209c8a64736f6c63430005110032", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158208e75b6f0b5fe8203892d3543846fde13a39264fb062558240eccd36529209c8a64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/RealMathTester.json b/contracts/0.0.1-rc.53/RealMathTester.json new file mode 100644 index 00000000..23e1f768 --- /dev/null +++ b/contracts/0.0.1-rc.53/RealMathTester.json @@ -0,0 +1,66 @@ +{ + "contractName": "RealMathTester", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "uint216", + "name": "num", + "type": "uint216" + }, + { + "internalType": "uint216", + "name": "den", + "type": "uint216" + } + ], + "name": "fraction", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint216", + "name": "num", + "type": "uint216" + }, + { + "internalType": "uint216", + "name": "den", + "type": "uint216" + }, + { + "internalType": "uint256", + "name": "exp", + "type": "uint256" + } + ], + "name": "power", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610230806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063c92f92271461003b578063f27be26a14610083575b600080fd5b6100716004803603606081101561005157600080fd5b506001600160d81b038135811691602081013590911690604001356100b1565b60408051918252519081900360200190f35b6100716004803603604081101561009957600080fd5b506001600160d81b03813581169160200135166100e4565b60006100dc826100d06001600160d81b0387168663ffffffff61010616565b9063ffffffff61012916565b949350505050565b60006100ff6001600160d81b0384168363ffffffff61010616565b9392505050565b60006100ff6001600160d81b03808516650100000000009081029185160261017c565b60008282650100000000005b8115610173578160011660011415610154576101518184610197565b90505b60019190911c90811561016e5761016b8384610197565b92505b610135565b95945050505050565b6000816501000000000084028161018f57fe5b049392505050565b6000828202828482816101a657fe5b04146101f1576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c939250505056fea265627a7a723158209a2e0ad4d1b917800674a1c3c45575ea08d66d3fba737a6ce0d75862cdd400b164736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063c92f92271461003b578063f27be26a14610083575b600080fd5b6100716004803603606081101561005157600080fd5b506001600160d81b038135811691602081013590911690604001356100b1565b60408051918252519081900360200190f35b6100716004803603604081101561009957600080fd5b506001600160d81b03813581169160200135166100e4565b60006100dc826100d06001600160d81b0387168663ffffffff61010616565b9063ffffffff61012916565b949350505050565b60006100ff6001600160d81b0384168363ffffffff61010616565b9392505050565b60006100ff6001600160d81b03808516650100000000009081029185160261017c565b60008282650100000000005b8115610173578160011660011415610154576101518184610197565b90505b60019190911c90811561016e5761016b8384610197565b92505b610135565b95945050505050565b6000816501000000000084028161018f57fe5b049392505050565b6000828202828482816101a657fe5b04146101f1576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c939250505056fea265627a7a723158209a2e0ad4d1b917800674a1c3c45575ea08d66d3fba737a6ce0d75862cdd400b164736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Redeemer.json b/contracts/0.0.1-rc.53/Redeemer.json new file mode 100644 index 00000000..7515f62e --- /dev/null +++ b/contracts/0.0.1-rc.53/Redeemer.json @@ -0,0 +1,260 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Redeemer", + "sourceName": "contracts/utils/Redeemer.sol", + "abi": [ + { + "constant": false, + "inputs": [ + { + "internalType": "contract ContributionReward", + "name": "_contributionReward", + "type": "address" + }, + { + "internalType": "contract GenesisProtocol", + "name": "_genesisProtocol", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "gpRewards", + "type": "uint256[3]" + }, + { + "internalType": "uint256[2]", + "name": "gpDaoBountyReward", + "type": "uint256[2]" + }, + { + "internalType": "bool", + "name": "executed", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + }, + { + "internalType": "int256", + "name": "crReputationReward", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "crNativeTokenReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "crEthReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "crExternalTokenReward", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract ContributionRewardExt", + "name": "_contributionRewardExt", + "type": "address" + }, + { + "internalType": "contract GenesisProtocol", + "name": "_genesisProtocol", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeemFromCRExt", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "gpRewards", + "type": "uint256[3]" + }, + { + "internalType": "uint256[2]", + "name": "gpDaoBountyReward", + "type": "uint256[2]" + }, + { + "internalType": "bool", + "name": "executed", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + }, + { + "internalType": "int256", + "name": "crReputationReward", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "crNativeTokenReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "crEthReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "crExternalTokenReward", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract GenericScheme", + "name": "_genericScheme", + "type": "address" + }, + { + "internalType": "contract GenesisProtocol", + "name": "_genesisProtocol", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeemGenericScheme", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "gpRewards", + "type": "uint256[3]" + }, + { + "internalType": "uint256[2]", + "name": "gpDaoBountyReward", + "type": "uint256[2]" + }, + { + "internalType": "bool", + "name": "executed", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract GenericSchemeMultiCall", + "name": "_genericSchemeMultiCall", + "type": "address" + }, + { + "internalType": "contract GenesisProtocol", + "name": "_genesisProtocol", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeemGenericSchemeMultiCall", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "gpRewards", + "type": "uint256[3]" + }, + { + "internalType": "uint256[2]", + "name": "gpDaoBountyReward", + "type": "uint256[2]" + }, + { + "internalType": "bool", + "name": "executed", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061140f806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80632a900e951461005157806354ca023f1461011f578063735940aa146101655780637838883814610217575b600080fd5b61008d6004803603608081101561006757600080fd5b506001600160a01b03813581169160208101358216916040820135916060013516610253565b6040518089606080838360005b838110156100b257818101518382015260200161009a565b5050505090500188600260200280838360005b838110156100dd5781810151838201526020016100c5565b50505050905001871515151581526020018681526020018581526020018481526020018381526020018281526020019850505050505050505060405180910390f35b61008d600480360360a081101561013557600080fd5b506001600160a01b0381358116916020810135821691604082013591606081013582169160809091013516610325565b6101a16004803603608081101561017b57600080fd5b506001600160a01b03813581169160208101358216916040820135916060013516610416565b6040518085606080838360005b838110156101c65781810151838201526020016101ae565b5050505090500184600260200280838360005b838110156101f15781810151838201526020016101d9565b505050509050018315151515815260200182815260200194505050505060405180910390f35b6101a16004803603608081101561022d57600080fd5b506001600160a01b03813581169160208101358216916040820135916060013516610537565b61025b61135f565b61026361137d565b60008060008060008060006102798c8c8c6106f6565b939c50919a509850965090508015610315578c6001600160a01b031663cbba1f5a8c6040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156102cf57600080fd5b505afa1580156102e3573d6000803e3d6000fd5b505050506040513d60208110156102f957600080fd5b5051156103155761030a8d8c610aa3565b929750909550935091505b5094995094995094999196509450565b61032d61135f565b61033561137d565b600080600080600080600061034b8d8d8c6106f6565b939c50919a5098509650905080156104055760008e6001600160a01b0316633a256daa8e8e6040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b031681526020019250505060206040518083038186803b1580156103bd57600080fd5b505afa1580156103d1573d6000803e3d6000fd5b505050506040513d60208110156103e757600080fd5b50511115610405576103fa8e8d8d610e85565b929750909550935091505b50959b50959b939950955095509550565b61041e61135f565b61042661137d565b60008060006104368888886106f6565b60408051631976ad8960e11b8152600481018e90528151969b5094995092975090955093506000926001600160a01b038d16926332ed5b12926024808301939192829003018186803b15801561048b57600080fd5b505afa15801561049f573d6000803e3d6000fd5b505050506040513d60408110156104b557600080fd5b506020015190508180156104c65750805b1561052a57896001600160a01b031663e751f271896040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561051157600080fd5b505af1158015610525573d6000803e3d6000fd5b505050505b5050945094509450949050565b61053f61135f565b61054761137d565b60008060006105578888886106f6565b6040805163d8145e2d60e01b8152600481018e90529051959a50939850919650945092506000916001600160a01b038c169163d8145e2d9160248083019286929190829003018186803b1580156105ad57600080fd5b505afa1580156105c1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260808110156105ea57600080fd5b810190808051604051939291908464010000000082111561060a57600080fd5b90830190602082018581111561061f57600080fd5b825164010000000081118282018810171561063957600080fd5b82525081516020918201929091019080838360005b8381101561066657818101518382015260200161064e565b50505050905090810190601f1680156106935780820380516001836020036101000a031916815260200191505b5060405260600151935084925050811590506104c65750801561052a57896001600160a01b031663e751f271896040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561051157600080fd5b6106fe61135f565b61070661137d565b600080600080886001600160a01b03166361d585da896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561075057600080fd5b505afa158015610764573d6000803e3d6000fd5b505050506040513d602081101561077a57600080fd5b50519050600381600681111561078c57fe5b14806107a3575060048160068111156107a157fe5b145b806107b9575060058160068111156107b757fe5b145b806107cf575060068160068111156107cd57fe5b145b1561084957886001600160a01b031663e751f271896040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b15801561081a57600080fd5b505af115801561082e573d6000803e3d6000fd5b505050506040513d602081101561084457600080fd5b505193505b886001600160a01b03166361d585da896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561088d57600080fd5b505afa1580156108a1573d6000803e3d6000fd5b505050506040513d60208110156108b757600080fd5b5051905060028160068111156108c957fe5b14806108e0575060018160068111156108de57fe5b145b15610a9757886001600160a01b031663cc3bf9e989896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050606060405180830381600087803b15801561094557600080fd5b505af1158015610959573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250606081101561097e57600080fd5b509550600281600681111561098f57fe5b1415610a205760408051636359036b60e01b8152600481018a90526001600160a01b0389811660248301528251908c1692636359036b92604480820193918290030181600087803b1580156109e357600080fd5b505af11580156109f7573d6000803e3d6000fd5b505050506040513d6040811015610a0d57600080fd5b5080516020918201519187019190915285525b886001600160a01b0316633c133818896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6457600080fd5b505afa158015610a78573d6000803e3d6000fd5b505050506040513d6020811015610a8e57600080fd5b50519250600191505b50939792965093509350565b600080600080610ab161139b565b600180825260208083019190915260408051639f874c9960e01b81526004810189905290516000926001600160a01b038b1692639f874c999260248083019392829003018186803b158015610b0557600080fd5b505afa158015610b19573d6000803e3d6000fd5b505050506040513d6020811015610b2f57600080fd5b505160408051632938bd2f60e11b8152600481018a905290519192506000916001600160a01b038b16916352717a5e916024808301926020929190829003018186803b158015610b7e57600080fd5b505afa158015610b92573d6000803e3d6000fd5b505050506040513d6020811015610ba857600080fd5b505160408051637e078b5560e01b8152600481018b905290519192506000916001600160a01b038c1691637e078b55916024808301926020929190829003018186803b158015610bf757600080fd5b505afa158015610c0b573d6000803e3d6000fd5b505050506040513d6020811015610c2157600080fd5b50519050821580610c9f5750828a6001600160a01b0316635aef7de66040518163ffffffff1660e01b815260040160206040518083038186803b158015610c6757600080fd5b505afa158015610c7b573d6000803e3d6000fd5b505050506040513d6020811015610c9157600080fd5b50516001600160a01b031631105b15610cb05760006040850152610cb8565b600160408501525b811580610da8575081816001600160a01b03166370a082318c6001600160a01b0316635aef7de66040518163ffffffff1660e01b815260040160206040518083038186803b158015610d0957600080fd5b505afa158015610d1d573d6000803e3d6000fd5b505050506040513d6020811015610d3357600080fd5b5051604080516001600160e01b031960e085901b1681526001600160a01b039092166004830152516024808301926020929190829003018186803b158015610d7a57600080fd5b505afa158015610d8e573d6000803e3d6000fd5b505050506040513d6020811015610da457600080fd5b5051105b15610db95760006060850152610dc1565b600160608501525b604051633a0284ff60e01b8152600481018a81526001600160a01b038c1691633a0284ff918c9188919060240182608080838360005b83811015610e0f578181015183820152602001610df7565b5050505090500192505050608060405180830381600087803b158015610e3457600080fd5b505af1158015610e48573d6000803e3d6000fd5b505050506040513d6080811015610e5e57600080fd5b50805160208201516040830151606090930151919d909c50919a5098509650505050505050565b600080600080610e9361139b565b60018082526020808301919091526040805163e074ee5560e01b8152600481018a90526001600160a01b038981166024830152600260448301529151600093928c169263e074ee559260648082019391829003018186803b158015610ef757600080fd5b505afa158015610f0b573d6000803e3d6000fd5b505050506040513d6020811015610f2157600080fd5b505160408051636046f71d60e01b8152600481018b90526001600160a01b038a811660248301529151929350600092918c1691636046f71d91604480820192602092909190829003018186803b158015610f7a57600080fd5b505afa158015610f8e573d6000803e3d6000fd5b505050506040513d6020811015610fa457600080fd5b505160408051631c3a571360e01b8152600481018c90526001600160a01b038b811660248301529151929350600092918d1691631c3a571391604480820192602092909190829003018186803b158015610ffd57600080fd5b505afa158015611011573d6000803e3d6000fd5b505050506040513d602081101561102757600080fd5b505160408051637b85ddcd60e11b8152600481018d90526001600160a01b038c811660248301529151929350600092918e169163f70bbb9a91604480820192602092909190829003018186803b15801561108057600080fd5b505afa158015611094573d6000803e3d6000fd5b505050506040513d60208110156110aa57600080fd5b505190506110be848463ffffffff6112fd16565b92508215806110d65750828a6001600160a01b031631105b156110e757600060408601526110ef565b600160408601525b6040805163e074ee5560e01b8152600481018d90526001600160a01b038c81166024830152600360448301529151918e169163e074ee5591606480820192602092909190829003018186803b15801561114757600080fd5b505afa15801561115b573d6000803e3d6000fd5b505050506040513d602081101561117157600080fd5b50519350611185848363ffffffff6112fd16565b9150811580611214575081816001600160a01b03166370a082318c6040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156111e657600080fd5b505afa1580156111fa573d6000803e3d6000fd5b505050506040513d602081101561121057600080fd5b5051105b15611225576000606086015261122d565b600160608601525b604051636ac5f84d60e11b8152600481018c81526001600160a01b038c811660248401528e169163d58bf09a918e918e918a9160440182608080838360005b8381101561128457818101518382015260200161126c565b505050509050019350505050608060405180830381600087803b1580156112aa57600080fd5b505af11580156112be573d6000803e3d6000fd5b505050506040513d60808110156112d457600080fd5b50805160208201516040830151606090930151919f909e50919c509a5098505050505050505050565b60008261130c57506000611359565b8282028284828161131957fe5b04146113565760405162461bcd60e51b81526004018080602001828103825260218152602001806113ba6021913960400191505060405180910390fd5b90505b92915050565b60405180606001604052806003906020820280388339509192915050565b60405180604001604052806002906020820280388339509192915050565b6040518060800160405280600490602082028038833950919291505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a723158204eb51da97a28cb7873911be1596a937ab2a4b79013af91edfe7b953ff744740264736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80632a900e951461005157806354ca023f1461011f578063735940aa146101655780637838883814610217575b600080fd5b61008d6004803603608081101561006757600080fd5b506001600160a01b03813581169160208101358216916040820135916060013516610253565b6040518089606080838360005b838110156100b257818101518382015260200161009a565b5050505090500188600260200280838360005b838110156100dd5781810151838201526020016100c5565b50505050905001871515151581526020018681526020018581526020018481526020018381526020018281526020019850505050505050505060405180910390f35b61008d600480360360a081101561013557600080fd5b506001600160a01b0381358116916020810135821691604082013591606081013582169160809091013516610325565b6101a16004803603608081101561017b57600080fd5b506001600160a01b03813581169160208101358216916040820135916060013516610416565b6040518085606080838360005b838110156101c65781810151838201526020016101ae565b5050505090500184600260200280838360005b838110156101f15781810151838201526020016101d9565b505050509050018315151515815260200182815260200194505050505060405180910390f35b6101a16004803603608081101561022d57600080fd5b506001600160a01b03813581169160208101358216916040820135916060013516610537565b61025b61135f565b61026361137d565b60008060008060008060006102798c8c8c6106f6565b939c50919a509850965090508015610315578c6001600160a01b031663cbba1f5a8c6040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156102cf57600080fd5b505afa1580156102e3573d6000803e3d6000fd5b505050506040513d60208110156102f957600080fd5b5051156103155761030a8d8c610aa3565b929750909550935091505b5094995094995094999196509450565b61032d61135f565b61033561137d565b600080600080600080600061034b8d8d8c6106f6565b939c50919a5098509650905080156104055760008e6001600160a01b0316633a256daa8e8e6040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b031681526020019250505060206040518083038186803b1580156103bd57600080fd5b505afa1580156103d1573d6000803e3d6000fd5b505050506040513d60208110156103e757600080fd5b50511115610405576103fa8e8d8d610e85565b929750909550935091505b50959b50959b939950955095509550565b61041e61135f565b61042661137d565b60008060006104368888886106f6565b60408051631976ad8960e11b8152600481018e90528151969b5094995092975090955093506000926001600160a01b038d16926332ed5b12926024808301939192829003018186803b15801561048b57600080fd5b505afa15801561049f573d6000803e3d6000fd5b505050506040513d60408110156104b557600080fd5b506020015190508180156104c65750805b1561052a57896001600160a01b031663e751f271896040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561051157600080fd5b505af1158015610525573d6000803e3d6000fd5b505050505b5050945094509450949050565b61053f61135f565b61054761137d565b60008060006105578888886106f6565b6040805163d8145e2d60e01b8152600481018e90529051959a50939850919650945092506000916001600160a01b038c169163d8145e2d9160248083019286929190829003018186803b1580156105ad57600080fd5b505afa1580156105c1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260808110156105ea57600080fd5b810190808051604051939291908464010000000082111561060a57600080fd5b90830190602082018581111561061f57600080fd5b825164010000000081118282018810171561063957600080fd5b82525081516020918201929091019080838360005b8381101561066657818101518382015260200161064e565b50505050905090810190601f1680156106935780820380516001836020036101000a031916815260200191505b5060405260600151935084925050811590506104c65750801561052a57896001600160a01b031663e751f271896040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561051157600080fd5b6106fe61135f565b61070661137d565b600080600080886001600160a01b03166361d585da896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561075057600080fd5b505afa158015610764573d6000803e3d6000fd5b505050506040513d602081101561077a57600080fd5b50519050600381600681111561078c57fe5b14806107a3575060048160068111156107a157fe5b145b806107b9575060058160068111156107b757fe5b145b806107cf575060068160068111156107cd57fe5b145b1561084957886001600160a01b031663e751f271896040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b15801561081a57600080fd5b505af115801561082e573d6000803e3d6000fd5b505050506040513d602081101561084457600080fd5b505193505b886001600160a01b03166361d585da896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561088d57600080fd5b505afa1580156108a1573d6000803e3d6000fd5b505050506040513d60208110156108b757600080fd5b5051905060028160068111156108c957fe5b14806108e0575060018160068111156108de57fe5b145b15610a9757886001600160a01b031663cc3bf9e989896040518363ffffffff1660e01b815260040180838152602001826001600160a01b03166001600160a01b0316815260200192505050606060405180830381600087803b15801561094557600080fd5b505af1158015610959573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250606081101561097e57600080fd5b509550600281600681111561098f57fe5b1415610a205760408051636359036b60e01b8152600481018a90526001600160a01b0389811660248301528251908c1692636359036b92604480820193918290030181600087803b1580156109e357600080fd5b505af11580156109f7573d6000803e3d6000fd5b505050506040513d6040811015610a0d57600080fd5b5080516020918201519187019190915285525b886001600160a01b0316633c133818896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6457600080fd5b505afa158015610a78573d6000803e3d6000fd5b505050506040513d6020811015610a8e57600080fd5b50519250600191505b50939792965093509350565b600080600080610ab161139b565b600180825260208083019190915260408051639f874c9960e01b81526004810189905290516000926001600160a01b038b1692639f874c999260248083019392829003018186803b158015610b0557600080fd5b505afa158015610b19573d6000803e3d6000fd5b505050506040513d6020811015610b2f57600080fd5b505160408051632938bd2f60e11b8152600481018a905290519192506000916001600160a01b038b16916352717a5e916024808301926020929190829003018186803b158015610b7e57600080fd5b505afa158015610b92573d6000803e3d6000fd5b505050506040513d6020811015610ba857600080fd5b505160408051637e078b5560e01b8152600481018b905290519192506000916001600160a01b038c1691637e078b55916024808301926020929190829003018186803b158015610bf757600080fd5b505afa158015610c0b573d6000803e3d6000fd5b505050506040513d6020811015610c2157600080fd5b50519050821580610c9f5750828a6001600160a01b0316635aef7de66040518163ffffffff1660e01b815260040160206040518083038186803b158015610c6757600080fd5b505afa158015610c7b573d6000803e3d6000fd5b505050506040513d6020811015610c9157600080fd5b50516001600160a01b031631105b15610cb05760006040850152610cb8565b600160408501525b811580610da8575081816001600160a01b03166370a082318c6001600160a01b0316635aef7de66040518163ffffffff1660e01b815260040160206040518083038186803b158015610d0957600080fd5b505afa158015610d1d573d6000803e3d6000fd5b505050506040513d6020811015610d3357600080fd5b5051604080516001600160e01b031960e085901b1681526001600160a01b039092166004830152516024808301926020929190829003018186803b158015610d7a57600080fd5b505afa158015610d8e573d6000803e3d6000fd5b505050506040513d6020811015610da457600080fd5b5051105b15610db95760006060850152610dc1565b600160608501525b604051633a0284ff60e01b8152600481018a81526001600160a01b038c1691633a0284ff918c9188919060240182608080838360005b83811015610e0f578181015183820152602001610df7565b5050505090500192505050608060405180830381600087803b158015610e3457600080fd5b505af1158015610e48573d6000803e3d6000fd5b505050506040513d6080811015610e5e57600080fd5b50805160208201516040830151606090930151919d909c50919a5098509650505050505050565b600080600080610e9361139b565b60018082526020808301919091526040805163e074ee5560e01b8152600481018a90526001600160a01b038981166024830152600260448301529151600093928c169263e074ee559260648082019391829003018186803b158015610ef757600080fd5b505afa158015610f0b573d6000803e3d6000fd5b505050506040513d6020811015610f2157600080fd5b505160408051636046f71d60e01b8152600481018b90526001600160a01b038a811660248301529151929350600092918c1691636046f71d91604480820192602092909190829003018186803b158015610f7a57600080fd5b505afa158015610f8e573d6000803e3d6000fd5b505050506040513d6020811015610fa457600080fd5b505160408051631c3a571360e01b8152600481018c90526001600160a01b038b811660248301529151929350600092918d1691631c3a571391604480820192602092909190829003018186803b158015610ffd57600080fd5b505afa158015611011573d6000803e3d6000fd5b505050506040513d602081101561102757600080fd5b505160408051637b85ddcd60e11b8152600481018d90526001600160a01b038c811660248301529151929350600092918e169163f70bbb9a91604480820192602092909190829003018186803b15801561108057600080fd5b505afa158015611094573d6000803e3d6000fd5b505050506040513d60208110156110aa57600080fd5b505190506110be848463ffffffff6112fd16565b92508215806110d65750828a6001600160a01b031631105b156110e757600060408601526110ef565b600160408601525b6040805163e074ee5560e01b8152600481018d90526001600160a01b038c81166024830152600360448301529151918e169163e074ee5591606480820192602092909190829003018186803b15801561114757600080fd5b505afa15801561115b573d6000803e3d6000fd5b505050506040513d602081101561117157600080fd5b50519350611185848363ffffffff6112fd16565b9150811580611214575081816001600160a01b03166370a082318c6040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156111e657600080fd5b505afa1580156111fa573d6000803e3d6000fd5b505050506040513d602081101561121057600080fd5b5051105b15611225576000606086015261122d565b600160608601525b604051636ac5f84d60e11b8152600481018c81526001600160a01b038c811660248401528e169163d58bf09a918e918e918a9160440182608080838360005b8381101561128457818101518382015260200161126c565b505050509050019350505050608060405180830381600087803b1580156112aa57600080fd5b505af11580156112be573d6000803e3d6000fd5b505050506040513d60808110156112d457600080fd5b50805160208201516040830151606090930151919f909e50919c509a5098505050505050505050565b60008261130c57506000611359565b8282028284828161131957fe5b04146113565760405162461bcd60e51b81526004018080602001828103825260218152602001806113ba6021913960400191505060405180910390fd5b90505b92915050565b60405180606001604052806003906020820280388339509192915050565b60405180604001604052806002906020820280388339509192915050565b6040518060800160405280600490602082028038833950919291505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a723158204eb51da97a28cb7873911be1596a937ab2a4b79013af91edfe7b953ff744740264736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/RepAllocation.json b/contracts/0.0.1-rc.53/RepAllocation.json new file mode 100644 index 00000000..6002fb4f --- /dev/null +++ b/contracts/0.0.1-rc.53/RepAllocation.json @@ -0,0 +1,209 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "RepAllocation", + "sourceName": "contracts/utils/RepAllocation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "BeneficiaryAddressAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_beneficiaries", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_amounts", + "type": "uint256[]" + } + ], + "name": "addBeneficiaries", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "addBeneficiary", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "freeze", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isFreeze", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "reputationAllocations", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040526100156001600160e01b0361006216565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610066565b3390565b610749806100756000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80638f32d59b116100665780638f32d59b1461013757806396074e7014610153578063a96106551461017f578063c154d6ca146102a6578063f2fde38b146102ae5761009e565b80630b98d181146100a357806362a5af3b146100db57806370a08231146100e5578063715018a61461010b5780638da5cb5b14610113575b600080fd5b6100c9600480360360208110156100b957600080fd5b50356001600160a01b03166102d4565b60408051918252519081900360200190f35b6100e36102e6565b005b6100c9600480360360208110156100fb57600080fd5b50356001600160a01b031661033c565b6100e3610357565b61011b6103e8565b604080516001600160a01b039092168252519081900360200190f35b61013f6103f7565b604080519115158252519081900360200190f35b6100e36004803603604081101561016957600080fd5b506001600160a01b03813516906020013561041b565b6100e36004803603604081101561019557600080fd5b8101906020810181356401000000008111156101b057600080fd5b8201836020820111156101c257600080fd5b803590602001918460208302840111640100000000831117156101e457600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561023457600080fd5b82018360208201111561024657600080fd5b8035906020019184602083028401116401000000008311171561026857600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610509945050505050565b61013f6105a7565b6100e3600480360360208110156102c457600080fd5b50356001600160a01b03166105b0565b60016020526000908152604090205481565b6102ee6103f7565b61032d576040805162461bcd60e51b815260206004820181905260248201526000805160206106ce833981519152604482015290519081900360640190fd5b6002805460ff19166001179055565b6001600160a01b031660009081526001602052604090205490565b61035f6103f7565b61039e576040805162461bcd60e51b815260206004820181905260248201526000805160206106ce833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b031661040c610603565b6001600160a01b031614905090565b6104236103f7565b610462576040805162461bcd60e51b815260206004820181905260248201526000805160206106ce833981519152604482015290519081900360640190fd5b60025460ff16156104a45760405162461bcd60e51b81526004018080602001828103825260278152602001806106ee6027913960400191505060405180910390fd5b6001600160a01b038216600090815260016020526040902054610505576001600160a01b038216600081815260016020526040808220849055518392917fbf94baaff7b294d05de11f4ad7c615c6b8d41f4defab8fa5b962a0437842c58e91a35b5050565b6105116103f7565b610550576040805162461bcd60e51b815260206004820181905260248201526000805160206106ce833981519152604482015290519081900360640190fd5b805182511461055e57600080fd5b60005b82518110156105a25761059a83828151811061057957fe5b602002602001015183838151811061058d57fe5b602002602001015161041b565b600101610561565b505050565b60025460ff1681565b6105b86103f7565b6105f7576040805162461bcd60e51b815260206004820181905260248201526000805160206106ce833981519152604482015290519081900360640190fd5b61060081610607565b50565b3390565b6001600160a01b03811661064c5760405162461bcd60e51b81526004018080602001828103825260268152602001806106a86026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657263616e206164642062656e6566696369617279206f6e6c79206966206e6f742064697361626c65a265627a7a72315820a923e3ba2c825714b661d95db630a6fd2e6a5702d2c31b373291eae06cae816a64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061009e5760003560e01c80638f32d59b116100665780638f32d59b1461013757806396074e7014610153578063a96106551461017f578063c154d6ca146102a6578063f2fde38b146102ae5761009e565b80630b98d181146100a357806362a5af3b146100db57806370a08231146100e5578063715018a61461010b5780638da5cb5b14610113575b600080fd5b6100c9600480360360208110156100b957600080fd5b50356001600160a01b03166102d4565b60408051918252519081900360200190f35b6100e36102e6565b005b6100c9600480360360208110156100fb57600080fd5b50356001600160a01b031661033c565b6100e3610357565b61011b6103e8565b604080516001600160a01b039092168252519081900360200190f35b61013f6103f7565b604080519115158252519081900360200190f35b6100e36004803603604081101561016957600080fd5b506001600160a01b03813516906020013561041b565b6100e36004803603604081101561019557600080fd5b8101906020810181356401000000008111156101b057600080fd5b8201836020820111156101c257600080fd5b803590602001918460208302840111640100000000831117156101e457600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561023457600080fd5b82018360208201111561024657600080fd5b8035906020019184602083028401116401000000008311171561026857600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610509945050505050565b61013f6105a7565b6100e3600480360360208110156102c457600080fd5b50356001600160a01b03166105b0565b60016020526000908152604090205481565b6102ee6103f7565b61032d576040805162461bcd60e51b815260206004820181905260248201526000805160206106ce833981519152604482015290519081900360640190fd5b6002805460ff19166001179055565b6001600160a01b031660009081526001602052604090205490565b61035f6103f7565b61039e576040805162461bcd60e51b815260206004820181905260248201526000805160206106ce833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b031661040c610603565b6001600160a01b031614905090565b6104236103f7565b610462576040805162461bcd60e51b815260206004820181905260248201526000805160206106ce833981519152604482015290519081900360640190fd5b60025460ff16156104a45760405162461bcd60e51b81526004018080602001828103825260278152602001806106ee6027913960400191505060405180910390fd5b6001600160a01b038216600090815260016020526040902054610505576001600160a01b038216600081815260016020526040808220849055518392917fbf94baaff7b294d05de11f4ad7c615c6b8d41f4defab8fa5b962a0437842c58e91a35b5050565b6105116103f7565b610550576040805162461bcd60e51b815260206004820181905260248201526000805160206106ce833981519152604482015290519081900360640190fd5b805182511461055e57600080fd5b60005b82518110156105a25761059a83828151811061057957fe5b602002602001015183838151811061058d57fe5b602002602001015161041b565b600101610561565b505050565b60025460ff1681565b6105b86103f7565b6105f7576040805162461bcd60e51b815260206004820181905260248201526000805160206106ce833981519152604482015290519081900360640190fd5b61060081610607565b50565b3390565b6001600160a01b03811661064c5760405162461bcd60e51b81526004018080602001828103825260268152602001806106a86026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657263616e206164642062656e6566696369617279206f6e6c79206966206e6f742064697361626c65a265627a7a72315820a923e3ba2c825714b661d95db630a6fd2e6a5702d2c31b373291eae06cae816a64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Reputation.json b/contracts/0.0.1-rc.53/Reputation.json new file mode 100644 index 00000000..ca766ea2 --- /dev/null +++ b/contracts/0.0.1-rc.53/Reputation.json @@ -0,0 +1,270 @@ +{ + "contractName": "Reputation", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Burn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Mint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_blockNumber", + "type": "uint256" + } + ], + "name": "balanceOfAt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "_blockNumber", + "type": "uint256" + } + ], + "name": "totalSupplyAt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040526000805460ff60a01b1916600960a11b17815561001f61006e565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350610072565b3390565b610a6f806100816000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063715018a611610071578063715018a6146101785780638da5cb5b146101825780638f32d59b146101a6578063981b24d0146101ae5780639dc29fac146101cb578063f2fde38b146101f7576100a9565b806318160ddd146100ae578063313ce567146100c857806340c10f19146100e65780634ee2cd7e1461012657806370a0823114610152575b600080fd5b6100b661021d565b60408051918252519081900360200190f35b6100d061022e565b6040805160ff9092168252519081900360200190f35b610112600480360360408110156100fc57600080fd5b506001600160a01b03813516906020013561023e565b604080519115158252519081900360200190f35b6100b66004803603604081101561013c57600080fd5b506001600160a01b0381351690602001356103b5565b6100b66004803603602081101561016857600080fd5b50356001600160a01b0316610445565b610180610459565b005b61018a6104ea565b604080516001600160a01b039092168252519081900360200190f35b6101126104f9565b6100b6600480360360208110156101c457600080fd5b503561051d565b610112600480360360408110156101e157600080fd5b506001600160a01b03813516906020013561056f565b6101806004803603602081101561020d57600080fd5b50356001600160a01b031661065a565b60006102284361051d565b90505b90565b600054600160a01b900460ff1681565b60006102486104f9565b610287576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b600061029161021d565b90508083820110156102e2576040805162461bcd60e51b8152602060048201526015602482015274746f74616c20737570706c79206f766572666c6f7760581b604482015290519081900360640190fd5b60006102ed85610445565b9050808482011015610338576040805162461bcd60e51b815260206004820152600f60248201526e62616c616365206f766572666c6f7760881b604482015290519081900360640190fd5b61034560028584016106ad565b6001600160a01b0385166000908152600160205260409020610369908286016106ad565b6040805185815290516001600160a01b038716917f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885919081900360200190a26001925050505b92915050565b6001600160a01b038216600090815260016020526040812054158061040f57506001600160a01b038316600090815260016020526040812080548492906103f857fe5b6000918252602090912001546001600160801b0316115b1561041c575060006103af565b6001600160a01b038316600090815260016020526040902061043e90836107d9565b90506103af565b600061045182436103b5565b90505b919050565b6104616104f9565b6104a0576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b031661050e610909565b6001600160a01b031614905090565b6002546000901580610550575081600260008154811061053957fe5b6000918252602090912001546001600160801b0316115b1561055d57506000610454565b6105686002836107d9565b9050610454565b60006105796104f9565b6105b8576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b60006105c261021d565b90508260006105d086610445565b9050818110156105de578091505b6105eb60028385036106ad565b6001600160a01b038616600090815260016020526040902061060f908383036106ad565b6040805183815290516001600160a01b038816917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250600195945050505050565b6106626104f9565b6106a1576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b6106aa8161090d565b50565b80816001600160801b031614610700576040805162461bcd60e51b815260206004820152601360248201527272657075746174696f6e206f766572666c6f7760681b604482015290519081900360640190fd5b815415806107345750815443908390600019810190811061071d57fe5b6000918252602090912001546001600160801b0316105b1561079b578154600090839061074d82600183016109ad565b8154811061075757fe5b600091825260209091200180546001600160801b03848116600160801b024382166fffffffffffffffffffffffffffffffff199093169290921716179055506107d5565b8154600090839060001981019081106107b057fe5b600091825260209091200180546001600160801b03808516600160801b029116179055505b5050565b81546000906107ea575060006103af565b8254839060001981019081106107fc57fe5b6000918252602090912001546001600160801b0316821061084c5782548390600019810190811061082957fe5b600091825260209091200154600160801b90046001600160801b031690506103af565b8260008154811061085957fe5b6000918252602090912001546001600160801b031682101561087d575060006103af565b8254600090600019015b818111156108d85760006002600183850101049050848682815481106108a957fe5b6000918252602090912001546001600160801b0316116108cb578092506108d2565b6001810391505b50610887565b8482815481106108e457fe5b600091825260209091200154600160801b90046001600160801b031695945050505050565b3390565b6001600160a01b0381166109525760405162461bcd60e51b81526004018080602001828103825260268152602001806109f56026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b8154818355818111156109d1576000838152602090206109d19181019083016109d6565b505050565b61022b91905b808211156109f057600081556001016109dc565b509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820e44b358a8655857b697f0b3f3586d577dc891a18a32636e3bf8ee49466d45c0764736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c8063715018a611610071578063715018a6146101785780638da5cb5b146101825780638f32d59b146101a6578063981b24d0146101ae5780639dc29fac146101cb578063f2fde38b146101f7576100a9565b806318160ddd146100ae578063313ce567146100c857806340c10f19146100e65780634ee2cd7e1461012657806370a0823114610152575b600080fd5b6100b661021d565b60408051918252519081900360200190f35b6100d061022e565b6040805160ff9092168252519081900360200190f35b610112600480360360408110156100fc57600080fd5b506001600160a01b03813516906020013561023e565b604080519115158252519081900360200190f35b6100b66004803603604081101561013c57600080fd5b506001600160a01b0381351690602001356103b5565b6100b66004803603602081101561016857600080fd5b50356001600160a01b0316610445565b610180610459565b005b61018a6104ea565b604080516001600160a01b039092168252519081900360200190f35b6101126104f9565b6100b6600480360360208110156101c457600080fd5b503561051d565b610112600480360360408110156101e157600080fd5b506001600160a01b03813516906020013561056f565b6101806004803603602081101561020d57600080fd5b50356001600160a01b031661065a565b60006102284361051d565b90505b90565b600054600160a01b900460ff1681565b60006102486104f9565b610287576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b600061029161021d565b90508083820110156102e2576040805162461bcd60e51b8152602060048201526015602482015274746f74616c20737570706c79206f766572666c6f7760581b604482015290519081900360640190fd5b60006102ed85610445565b9050808482011015610338576040805162461bcd60e51b815260206004820152600f60248201526e62616c616365206f766572666c6f7760881b604482015290519081900360640190fd5b61034560028584016106ad565b6001600160a01b0385166000908152600160205260409020610369908286016106ad565b6040805185815290516001600160a01b038716917f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885919081900360200190a26001925050505b92915050565b6001600160a01b038216600090815260016020526040812054158061040f57506001600160a01b038316600090815260016020526040812080548492906103f857fe5b6000918252602090912001546001600160801b0316115b1561041c575060006103af565b6001600160a01b038316600090815260016020526040902061043e90836107d9565b90506103af565b600061045182436103b5565b90505b919050565b6104616104f9565b6104a0576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b031661050e610909565b6001600160a01b031614905090565b6002546000901580610550575081600260008154811061053957fe5b6000918252602090912001546001600160801b0316115b1561055d57506000610454565b6105686002836107d9565b9050610454565b60006105796104f9565b6105b8576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b60006105c261021d565b90508260006105d086610445565b9050818110156105de578091505b6105eb60028385036106ad565b6001600160a01b038616600090815260016020526040902061060f908383036106ad565b6040805183815290516001600160a01b038816917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250600195945050505050565b6106626104f9565b6106a1576040805162461bcd60e51b81526020600482018190526024820152600080516020610a1b833981519152604482015290519081900360640190fd5b6106aa8161090d565b50565b80816001600160801b031614610700576040805162461bcd60e51b815260206004820152601360248201527272657075746174696f6e206f766572666c6f7760681b604482015290519081900360640190fd5b815415806107345750815443908390600019810190811061071d57fe5b6000918252602090912001546001600160801b0316105b1561079b578154600090839061074d82600183016109ad565b8154811061075757fe5b600091825260209091200180546001600160801b03848116600160801b024382166fffffffffffffffffffffffffffffffff199093169290921716179055506107d5565b8154600090839060001981019081106107b057fe5b600091825260209091200180546001600160801b03808516600160801b029116179055505b5050565b81546000906107ea575060006103af565b8254839060001981019081106107fc57fe5b6000918252602090912001546001600160801b0316821061084c5782548390600019810190811061082957fe5b600091825260209091200154600160801b90046001600160801b031690506103af565b8260008154811061085957fe5b6000918252602090912001546001600160801b031682101561087d575060006103af565b8254600090600019015b818111156108d85760006002600183850101049050848682815481106108a957fe5b6000918252602090912001546001600160801b0316116108cb578092506108d2565b6001810391505b50610887565b8482815481106108e457fe5b600091825260209091200154600160801b90046001600160801b031695945050505050565b3390565b6001600160a01b0381166109525760405162461bcd60e51b81526004018080602001828103825260268152602001806109f56026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b8154818355818111156109d1576000838152602090206109d19181019083016109d6565b505050565b61022b91905b808211156109f057600081556001016109dc565b509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820e44b358a8655857b697f0b3f3586d577dc891a18a32636e3bf8ee49466d45c0764736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ReputationAdmin.json b/contracts/0.0.1-rc.53/ReputationAdmin.json new file mode 100644 index 00000000..cda6d9e7 --- /dev/null +++ b/contracts/0.0.1-rc.53/ReputationAdmin.json @@ -0,0 +1,229 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ReputationAdmin", + "sourceName": "contracts/schemes/ReputationAdmin.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "activationEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "activationStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_activationStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_activationEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_maxRepReward", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "limitRepReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "repRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_beneficiaries", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_amounts", + "type": "uint256[]" + } + ], + "name": "reputationBurn", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_beneficiaries", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_amounts", + "type": "uint256[]" + } + ], + "name": "reputationMint", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040526100156001600160e01b0361006216565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610066565b3390565b610eae806100756000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80638da5cb5b116100715780638da5cb5b146101ff5780638f32d59b14610207578063c0b7a42d14610223578063cc5cd2e7146102e1578063e843cc18146102e9578063f2fde38b146102f1576100b4565b80630f3ce408146100b95780634271f6d3146101795780634ec81af1146101935780635aef7de6146101cb5780636f15e1e0146101ef578063715018a6146101f7575b600080fd5b610177600480360360408110156100cf57600080fd5b810190602081018135600160201b8111156100e957600080fd5b8201836020820111156100fb57600080fd5b803590602001918460208302840111600160201b8311171561011c57600080fd5b919390929091602081019035600160201b81111561013957600080fd5b82018360208201111561014b57600080fd5b803590602001918460208302840111600160201b8311171561016c57600080fd5b509092509050610317565b005b6101816103fc565b60408051918252519081900360200190f35b610177600480360360808110156101a957600080fd5b506001600160a01b038135169060208101359060408101359060600135610402565b6101d361056c565b604080516001600160a01b039092168252519081900360200190f35b61018161057b565b610177610581565b6101d3610612565b61020f610621565b604080519115158252519081900360200190f35b6101776004803603604081101561023957600080fd5b810190602081018135600160201b81111561025357600080fd5b82018360208201111561026557600080fd5b803590602001918460208302840111600160201b8311171561028657600080fd5b919390929091602081019035600160201b8111156102a357600080fd5b8201836020820111156102b557600080fd5b803590602001918460208302840111600160201b831117156102d657600080fd5b509092509050610645565b610181610723565b610181610729565b6101776004803603602081101561030757600080fd5b50356001600160a01b031661072f565b61031f610621565b61035e576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b8281146103ab576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b838110156103f5576103ed8585838181106103c557fe5b905060200201356001600160a01b03168484848181106103e157fe5b90506020020135610782565b6001016103ae565b5050505050565b60045481565b61040a610621565b610449576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b6001546001600160a01b0316156104a7576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0384166104fa576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b8183106105385760405162461bcd60e51b8152600401808060200182810382526029815260200180610e316029913960400191505060405180910390fd5b600180546001600160a01b0319166001600160a01b0395909516949094179093556002919091556003556004819055600555565b6001546001600160a01b031681565b60055481565b610589610621565b6105c8576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b0316610636610989565b6001600160a01b031614905090565b61064d610621565b61068c576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b8281146106d9576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b838110156103f55761071b8585838181106106f357fe5b905060200201356001600160a01b031684848481811061070f57fe5b9050602002013561098d565b6001016106dc565b60035481565b60025481565b610737610621565b610776576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b61077f81610c0f565b50565b6002544210156107d9576040805162461bcd60e51b815260206004820181905260248201527f4d696e74696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b6003544210610827576040805162461bcd60e51b815260206004820152601560248201527426b4b73a34b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b6005541561084657600454610842908263ffffffff610caf16565b6004555b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561089457600080fd5b505afa1580156108a8573d6000803e3d6000fd5b505050506040513d60208110156108be57600080fd5b50516001546040805163757cca5960e11b8152600481018590526001600160a01b03868116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561091e57600080fd5b505af1158015610932573d6000803e3d6000fd5b505050506040513d602081101561094857600080fd5b50516109855760405162461bcd60e51b8152600401808060200182810382526021815260200180610e106021913960400191505060405180910390fd5b5050565b3390565b6002544210156109e4576040805162461bcd60e51b815260206004820181905260248201527f4275726e696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b6003544210610a32576040805162461bcd60e51b8152602060048201526015602482015274213ab93734b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b60055415610aba57600454600554610a4f9163ffffffff610caf16565b811115610aa3576040805162461bcd60e51b815260206004820152601c60248201527f43616e6e6f74206275726e206d6f7265207468616e206d696e74656400000000604482015290519081900360640190fd5b600454610ab6908263ffffffff610cf816565b6004555b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b0857600080fd5b505afa158015610b1c573d6000803e3d6000fd5b505050506040513d6020811015610b3257600080fd5b505160015460408051630dd29a4f60e31b8152600481018590526001600160a01b038681166024830152928316604482015290519190921691636e94d2789160648083019260209291908290030181600087803b158015610b9257600080fd5b505af1158015610ba6573d6000803e3d6000fd5b505050506040513d6020811015610bbc57600080fd5b5051610985576040805162461bcd60e51b815260206004820152601e60248201527f4275726e2072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6001600160a01b038116610c545760405162461bcd60e51b8152600401808060200182810382526026815260200180610dea6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000610cf183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d52565b9392505050565b600082820183811015610cf1576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008184841115610de15760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610da6578181015183820152602001610d8e565b50505050905090810190601f168015610dd35780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50505090039056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734d696e74696e672072657075746174696f6e2073686f756c6420737563636565645f61637469766174696f6e537461727454696d65203c205f61637469766174696f6e456e6454696d654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a7231582069dc432ff1ab385e8e1055857bd1773bb850fed7d5a31e07b683e2e008b4aa7264736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100b45760003560e01c80638da5cb5b116100715780638da5cb5b146101ff5780638f32d59b14610207578063c0b7a42d14610223578063cc5cd2e7146102e1578063e843cc18146102e9578063f2fde38b146102f1576100b4565b80630f3ce408146100b95780634271f6d3146101795780634ec81af1146101935780635aef7de6146101cb5780636f15e1e0146101ef578063715018a6146101f7575b600080fd5b610177600480360360408110156100cf57600080fd5b810190602081018135600160201b8111156100e957600080fd5b8201836020820111156100fb57600080fd5b803590602001918460208302840111600160201b8311171561011c57600080fd5b919390929091602081019035600160201b81111561013957600080fd5b82018360208201111561014b57600080fd5b803590602001918460208302840111600160201b8311171561016c57600080fd5b509092509050610317565b005b6101816103fc565b60408051918252519081900360200190f35b610177600480360360808110156101a957600080fd5b506001600160a01b038135169060208101359060408101359060600135610402565b6101d361056c565b604080516001600160a01b039092168252519081900360200190f35b61018161057b565b610177610581565b6101d3610612565b61020f610621565b604080519115158252519081900360200190f35b6101776004803603604081101561023957600080fd5b810190602081018135600160201b81111561025357600080fd5b82018360208201111561026557600080fd5b803590602001918460208302840111600160201b8311171561028657600080fd5b919390929091602081019035600160201b8111156102a357600080fd5b8201836020820111156102b557600080fd5b803590602001918460208302840111600160201b831117156102d657600080fd5b509092509050610645565b610181610723565b610181610729565b6101776004803603602081101561030757600080fd5b50356001600160a01b031661072f565b61031f610621565b61035e576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b8281146103ab576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b838110156103f5576103ed8585838181106103c557fe5b905060200201356001600160a01b03168484848181106103e157fe5b90506020020135610782565b6001016103ae565b5050505050565b60045481565b61040a610621565b610449576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b6001546001600160a01b0316156104a7576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0384166104fa576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b8183106105385760405162461bcd60e51b8152600401808060200182810382526029815260200180610e316029913960400191505060405180910390fd5b600180546001600160a01b0319166001600160a01b0395909516949094179093556002919091556003556004819055600555565b6001546001600160a01b031681565b60055481565b610589610621565b6105c8576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b0316610636610989565b6001600160a01b031614905090565b61064d610621565b61068c576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b8281146106d9576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b838110156103f55761071b8585838181106106f357fe5b905060200201356001600160a01b031684848481811061070f57fe5b9050602002013561098d565b6001016106dc565b60035481565b60025481565b610737610621565b610776576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5a833981519152604482015290519081900360640190fd5b61077f81610c0f565b50565b6002544210156107d9576040805162461bcd60e51b815260206004820181905260248201527f4d696e74696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b6003544210610827576040805162461bcd60e51b815260206004820152601560248201527426b4b73a34b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b6005541561084657600454610842908263ffffffff610caf16565b6004555b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561089457600080fd5b505afa1580156108a8573d6000803e3d6000fd5b505050506040513d60208110156108be57600080fd5b50516001546040805163757cca5960e11b8152600481018590526001600160a01b03868116602483015292831660448201529051919092169163eaf994b29160648083019260209291908290030181600087803b15801561091e57600080fd5b505af1158015610932573d6000803e3d6000fd5b505050506040513d602081101561094857600080fd5b50516109855760405162461bcd60e51b8152600401808060200182810382526021815260200180610e106021913960400191505060405180910390fd5b5050565b3390565b6002544210156109e4576040805162461bcd60e51b815260206004820181905260248201527f4275726e696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b6003544210610a32576040805162461bcd60e51b8152602060048201526015602482015274213ab93734b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b60055415610aba57600454600554610a4f9163ffffffff610caf16565b811115610aa3576040805162461bcd60e51b815260206004820152601c60248201527f43616e6e6f74206275726e206d6f7265207468616e206d696e74656400000000604482015290519081900360640190fd5b600454610ab6908263ffffffff610cf816565b6004555b600160009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b0857600080fd5b505afa158015610b1c573d6000803e3d6000fd5b505050506040513d6020811015610b3257600080fd5b505160015460408051630dd29a4f60e31b8152600481018590526001600160a01b038681166024830152928316604482015290519190921691636e94d2789160648083019260209291908290030181600087803b158015610b9257600080fd5b505af1158015610ba6573d6000803e3d6000fd5b505050506040513d6020811015610bbc57600080fd5b5051610985576040805162461bcd60e51b815260206004820152601e60248201527f4275726e2072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6001600160a01b038116610c545760405162461bcd60e51b8152600401808060200182810382526026815260200180610dea6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000610cf183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d52565b9392505050565b600082820183811015610cf1576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008184841115610de15760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610da6578181015183820152602001610d8e565b50505050905090810190601f168015610dd35780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50505090039056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734d696e74696e672072657075746174696f6e2073686f756c6420737563636565645f61637469766174696f6e537461727454696d65203c205f61637469766174696f6e456e6454696d654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a7231582069dc432ff1ab385e8e1055857bd1773bb850fed7d5a31e07b683e2e008b4aa7264736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/ReputationFromToken.json b/contracts/0.0.1-rc.53/ReputationFromToken.json new file mode 100644 index 00000000..1a7b1e6a --- /dev/null +++ b/contracts/0.0.1-rc.53/ReputationFromToken.json @@ -0,0 +1,224 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ReputationFromToken", + "sourceName": "contracts/schemes/ReputationFromToken.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "DELEGATION_HASH_EIP712", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "curve", + "outputs": [ + { + "internalType": "contract CurveInterface", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IERC20", + "name": "_tokenContract", + "type": "address" + }, + { + "internalType": "contract CurveInterface", + "name": "_curve", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_signatureType", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_signature", + "type": "bytes" + } + ], + "name": "redeemWithSignature", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "redeems", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "tokenContract", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610bfd806100206000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80635aef7de6116100665780635aef7de61461019c57806363acc14d146101a4578063696da921146101e25780637165485d146101ea578063c85c8925146101f257610093565b806330ca0a5314610098578063511ffbff146100b257806355a373d6146100ec5780635861cab114610110575b600080fd5b6100a061021e565b60408051918252519081900360200190f35b6100d8600480360360208110156100c857600080fd5b50356001600160a01b0316610286565b604080519115158252519081900360200190f35b6100f461029b565b604080516001600160a01b039092168252519081900360200190f35b6100a06004803603608081101561012657600080fd5b6001600160a01b03823516916020810135916040820135919081019060808101606082013564010000000081111561015d57600080fd5b82018360208201111561016f57600080fd5b8035906020019184600183028401116401000000008311171561019157600080fd5b5090925090506102aa565b6100f46104b4565b6101e0600480360360808110156101ba57600080fd5b506001600160a01b038135811691602081013582169160408201351690606001356104c3565b005b6100a06105c0565b6100f46105c6565b6100a06004803603604081101561020857600080fd5b506001600160a01b0381351690602001356105d5565b604051602001806022610b7f823972616464726573732042656e656669636961727960681b6022820152740c4f2e8cae666644082cee4cacadacadce890c2e6d605b1b603582015260408051602a818403018152604a90920190528051602090910120905081565b60036020526000908152604090205460ff1681565b6001546001600160a01b031681565b600080846002141561038a57604051602001806022610b7f823972616464726573732042656e656669636961727960681b6022820152740c4f2e8cae666644082cee4cacadacadce890c2e6d605b1b603582015260408051808303602a018152604a83018252805160209182012030606090811b606a8601528c901b6bffffffffffffffffffffffff1916607e85015260928085018c90528351808603909101815260b28501845280519083012060d285019190915260f28085019190915282518085039091018152610112909301909152815191012091506103f69050565b6103f330888860405160200180846001600160a01b03166001600160a01b031660601b8152601401836001600160a01b03166001600160a01b031660601b81526014018281526020019350505050604051602081830303815290604052805190602001206105eb565b90505b600061044085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869392505063ffffffff61063c169050565b90506001600160a01b03811661049d576040805162461bcd60e51b815260206004820152601c60248201527f72656465656d657220616464726573732063616e6e6f74206265203000000000604482015290519081900360640190fd5b6104a888828961072a565b98975050505050505050565b6004546001600160a01b031681565b6004546001600160a01b031615610521576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038416610574576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600180546001600160a01b038086166001600160a01b0319928316179092556004805487841690831617905560028054928516929091169190911790556105ba81610af0565b50505050565b60005490565b6002546001600160a01b031681565b60006105e283338461072a565b90505b92915050565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b6000815160411461064f575060006105e5565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561069557600093505050506105e5565b8060ff16601b141580156106ad57508060ff16601c14155b156106be57600093505050506105e5565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015610715573d6000803e3d6000fd5b5050604051601f190151979650505050505050565b600081600054811461076d5760405162461bcd60e51b8152600401808060200182810382526028815260200180610ba16028913960400191505060405180910390fd5b6004546001600160a01b03166107ca576040805162461bcd60e51b815260206004820152601760248201527f73686f756c6420696e697469616c697a65206669727374000000000000000000604482015290519081900360640190fd5b6001600160a01b03841660009081526003602052604090205460ff16156108225760405162461bcd60e51b8152600401808060200182810382526034815260200180610b4b6034913960400191505060405180910390fd5b6001600160a01b038085166000818152600360209081526040808320805460ff191660019081179091555481516370a0823160e01b815260048101959095529051929416926370a082319260248083019392829003018186803b15801561088857600080fd5b505afa15801561089c573d6000803e3d6000fd5b505050506040513d60208110156108b257600080fd5b50516002549091506001600160a01b0316156109435760025460408051631c64813d60e11b81526004810184905290516001600160a01b03909216916338c9027a91602480820192602092909190829003018186803b15801561091457600080fd5b505afa158015610928573d6000803e3d6000fd5b505050506040513d602081101561093e57600080fd5b505190505b6001600160a01b038616610955578495505b6004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561099757600080fd5b505afa1580156109ab573d6000803e3d6000fd5b505050506040513d60208110156109c157600080fd5b5051600480546040805163757cca5960e11b81529283018590526001600160a01b038a8116602485015291821660448401525192169163eaf994b2916064808201926020929091908290030181600087803b158015610a1f57600080fd5b505af1158015610a33573d6000803e3d6000fd5b505050506040513d6020811015610a4957600080fd5b5051610a9c576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b846001600160a01b0316866001600160a01b03167fd12200efa34901b99367694174c3b0d32c99585fdf37c7c26892136ddd0836d9836040518082815260200191505060405180910390a395945050505050565b60005415610b45576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b60005556fe72656465656d696e672074776963652066726f6d207468652073616d65206163636f756e74206973206e6f7420616c6c6f776564616464726573732052657075746174696f6e46726f6d546f6b656e4164647265737353656e646572206d7573742073656e64207468652072696768742061677265656d656e7448617368a265627a7a72315820e7504ab9e9113cf2c3e8fc4e2e165df8121d94ad195bd60e0f2f01a1fa0804ce64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c80635aef7de6116100665780635aef7de61461019c57806363acc14d146101a4578063696da921146101e25780637165485d146101ea578063c85c8925146101f257610093565b806330ca0a5314610098578063511ffbff146100b257806355a373d6146100ec5780635861cab114610110575b600080fd5b6100a061021e565b60408051918252519081900360200190f35b6100d8600480360360208110156100c857600080fd5b50356001600160a01b0316610286565b604080519115158252519081900360200190f35b6100f461029b565b604080516001600160a01b039092168252519081900360200190f35b6100a06004803603608081101561012657600080fd5b6001600160a01b03823516916020810135916040820135919081019060808101606082013564010000000081111561015d57600080fd5b82018360208201111561016f57600080fd5b8035906020019184600183028401116401000000008311171561019157600080fd5b5090925090506102aa565b6100f46104b4565b6101e0600480360360808110156101ba57600080fd5b506001600160a01b038135811691602081013582169160408201351690606001356104c3565b005b6100a06105c0565b6100f46105c6565b6100a06004803603604081101561020857600080fd5b506001600160a01b0381351690602001356105d5565b604051602001806022610b7f823972616464726573732042656e656669636961727960681b6022820152740c4f2e8cae666644082cee4cacadacadce890c2e6d605b1b603582015260408051602a818403018152604a90920190528051602090910120905081565b60036020526000908152604090205460ff1681565b6001546001600160a01b031681565b600080846002141561038a57604051602001806022610b7f823972616464726573732042656e656669636961727960681b6022820152740c4f2e8cae666644082cee4cacadacadce890c2e6d605b1b603582015260408051808303602a018152604a83018252805160209182012030606090811b606a8601528c901b6bffffffffffffffffffffffff1916607e85015260928085018c90528351808603909101815260b28501845280519083012060d285019190915260f28085019190915282518085039091018152610112909301909152815191012091506103f69050565b6103f330888860405160200180846001600160a01b03166001600160a01b031660601b8152601401836001600160a01b03166001600160a01b031660601b81526014018281526020019350505050604051602081830303815290604052805190602001206105eb565b90505b600061044085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869392505063ffffffff61063c169050565b90506001600160a01b03811661049d576040805162461bcd60e51b815260206004820152601c60248201527f72656465656d657220616464726573732063616e6e6f74206265203000000000604482015290519081900360640190fd5b6104a888828961072a565b98975050505050505050565b6004546001600160a01b031681565b6004546001600160a01b031615610521576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b038416610574576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600180546001600160a01b038086166001600160a01b0319928316179092556004805487841690831617905560028054928516929091169190911790556105ba81610af0565b50505050565b60005490565b6002546001600160a01b031681565b60006105e283338461072a565b90505b92915050565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b6000815160411461064f575060006105e5565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561069557600093505050506105e5565b8060ff16601b141580156106ad57508060ff16601c14155b156106be57600093505050506105e5565b6040805160008152602080820180845289905260ff8416828401526060820186905260808201859052915160019260a0808401939192601f1981019281900390910190855afa158015610715573d6000803e3d6000fd5b5050604051601f190151979650505050505050565b600081600054811461076d5760405162461bcd60e51b8152600401808060200182810382526028815260200180610ba16028913960400191505060405180910390fd5b6004546001600160a01b03166107ca576040805162461bcd60e51b815260206004820152601760248201527f73686f756c6420696e697469616c697a65206669727374000000000000000000604482015290519081900360640190fd5b6001600160a01b03841660009081526003602052604090205460ff16156108225760405162461bcd60e51b8152600401808060200182810382526034815260200180610b4b6034913960400191505060405180910390fd5b6001600160a01b038085166000818152600360209081526040808320805460ff191660019081179091555481516370a0823160e01b815260048101959095529051929416926370a082319260248083019392829003018186803b15801561088857600080fd5b505afa15801561089c573d6000803e3d6000fd5b505050506040513d60208110156108b257600080fd5b50516002549091506001600160a01b0316156109435760025460408051631c64813d60e11b81526004810184905290516001600160a01b03909216916338c9027a91602480820192602092909190829003018186803b15801561091457600080fd5b505afa158015610928573d6000803e3d6000fd5b505050506040513d602081101561093e57600080fd5b505190505b6001600160a01b038616610955578495505b6004805460408051638da5cb5b60e01b815290516001600160a01b0390921692638da5cb5b928282019260209290829003018186803b15801561099757600080fd5b505afa1580156109ab573d6000803e3d6000fd5b505050506040513d60208110156109c157600080fd5b5051600480546040805163757cca5960e11b81529283018590526001600160a01b038a8116602485015291821660448401525192169163eaf994b2916064808201926020929091908290030181600087803b158015610a1f57600080fd5b505af1158015610a33573d6000803e3d6000fd5b505050506040513d6020811015610a4957600080fd5b5051610a9c576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b846001600160a01b0316866001600160a01b03167fd12200efa34901b99367694174c3b0d32c99585fdf37c7c26892136ddd0836d9836040518082815260200191505060405180910390a395945050505050565b60005415610b45576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b60005556fe72656465656d696e672074776963652066726f6d207468652073616d65206163636f756e74206973206e6f7420616c6c6f776564616464726573732052657075746174696f6e46726f6d546f6b656e4164647265737353656e646572206d7573742073656e64207468652072696768742061677265656d656e7448617368a265627a7a72315820e7504ab9e9113cf2c3e8fc4e2e165df8121d94ad195bd60e0f2f01a1fa0804ce64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/SafeERC20.json b/contracts/0.0.1-rc.53/SafeERC20.json new file mode 100644 index 00000000..16cc811c --- /dev/null +++ b/contracts/0.0.1-rc.53/SafeERC20.json @@ -0,0 +1,10 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "SafeERC20", + "sourceName": "contracts/libs/SafeERC20.sol", + "abi": [], + "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a7231582026bd26b5690a912154082a3abd2eeccd781bf00a0ad00f38db853711fc0cc3dd64736f6c63430005110032", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a7231582026bd26b5690a912154082a3abd2eeccd781bf00a0ad00f38db853711fc0cc3dd64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/SafeERC20Mock.json b/contracts/0.0.1-rc.53/SafeERC20Mock.json new file mode 100644 index 00000000..39057894 --- /dev/null +++ b/contracts/0.0.1-rc.53/SafeERC20Mock.json @@ -0,0 +1,147 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "SafeERC20Mock", + "sourceName": "contracts/test/SafeERC20Mock.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_token", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "approveWithFix", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "token", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "transferFromWithFix", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "transferWithFix", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506040516107ad3803806107ad8339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b0319909216919091179055610748806100656000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80633a4ac55d1461005c5780638a076ab21461009c578063a9059cbb146100c8578063ac6e0f90146100f4578063fc0c546a1461012a575b600080fd5b6100886004803603604081101561007257600080fd5b506001600160a01b03813516906020013561014e565b604080519115158252519081900360200190f35b610088600480360360408110156100b257600080fd5b506001600160a01b038135169060200135610176565b610088600480360360408110156100de57600080fd5b506001600160a01b038135169060200135610194565b6100886004803603606081101561010a57600080fd5b506001600160a01b0381358116916020810135909116906040013561021f565b610132610248565b604080516001600160a01b039092168252519081900360200190f35b6000805461016c906001600160a01b0316848463ffffffff61025716565b5060015b92915050565b6000805461016c906001600160a01b0316848463ffffffff61046816565b600080546040805163a9059cbb60e01b81526001600160a01b038681166004830152602482018690529151919092169163a9059cbb91604480830192602092919082900301818787803b1580156101ea57600080fd5b505af11580156101fe573d6000803e3d6000fd5b505050506040513d602081101561021457600080fd5b505161017057600080fd5b6000805461023e906001600160a01b031685858563ffffffff61052f16565b5060019392505050565b6000546001600160a01b031681565b610269836001600160a01b03166106b2565b61027257600080fd5b8015806102f8575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b1580156102ca57600080fd5b505afa1580156102de573d6000803e3d6000fd5b505050506040513d60208110156102f457600080fd5b5051155b61030157600080fd5b604080518082018252601881527f617070726f766528616464726573732c75696e7432353629000000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663095ea7b360e01b1781529251815160009460609489169392918291908083835b602083106103ae5780518252601f19909201916020918201910161038f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610410576040519150601f19603f3d011682016040523d82523d6000602084013e610415565b606091505b50915091508161042457600080fd5b80511580610458575080516020148015610458575080601f8151811061044657fe5b01602001516001600160f81b03191615155b61046157600080fd5b5050505050565b61047a836001600160a01b03166106b2565b61048357600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b178152925181516000946060948916939291829190808383602083106103ae5780518252601f19909201916020918201910161038f565b610541846001600160a01b03166106b2565b61054a57600080fd5b60006060856001600160a01b03166040518060600160405280602581526020016106ef602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b602083106105f75780518252601f1990920191602091820191016105d8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610659576040519150601f19603f3d011682016040523d82523d6000602084013e61065e565b606091505b50915091508161066d57600080fd5b805115806106a15750805160201480156106a1575080601f8151811061068f57fe5b01602001516001600160f81b03191615155b6106aa57600080fd5b505050505050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906106e65750808214155b94935050505056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629a265627a7a723158205a89c613d778436ed83b874f4fd36c6d92dccfa106418b61d70df7cdceecbd9864736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c80633a4ac55d1461005c5780638a076ab21461009c578063a9059cbb146100c8578063ac6e0f90146100f4578063fc0c546a1461012a575b600080fd5b6100886004803603604081101561007257600080fd5b506001600160a01b03813516906020013561014e565b604080519115158252519081900360200190f35b610088600480360360408110156100b257600080fd5b506001600160a01b038135169060200135610176565b610088600480360360408110156100de57600080fd5b506001600160a01b038135169060200135610194565b6100886004803603606081101561010a57600080fd5b506001600160a01b0381358116916020810135909116906040013561021f565b610132610248565b604080516001600160a01b039092168252519081900360200190f35b6000805461016c906001600160a01b0316848463ffffffff61025716565b5060015b92915050565b6000805461016c906001600160a01b0316848463ffffffff61046816565b600080546040805163a9059cbb60e01b81526001600160a01b038681166004830152602482018690529151919092169163a9059cbb91604480830192602092919082900301818787803b1580156101ea57600080fd5b505af11580156101fe573d6000803e3d6000fd5b505050506040513d602081101561021457600080fd5b505161017057600080fd5b6000805461023e906001600160a01b031685858563ffffffff61052f16565b5060019392505050565b6000546001600160a01b031681565b610269836001600160a01b03166106b2565b61027257600080fd5b8015806102f8575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b1580156102ca57600080fd5b505afa1580156102de573d6000803e3d6000fd5b505050506040513d60208110156102f457600080fd5b5051155b61030157600080fd5b604080518082018252601881527f617070726f766528616464726573732c75696e7432353629000000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663095ea7b360e01b1781529251815160009460609489169392918291908083835b602083106103ae5780518252601f19909201916020918201910161038f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610410576040519150601f19603f3d011682016040523d82523d6000602084013e610415565b606091505b50915091508161042457600080fd5b80511580610458575080516020148015610458575080601f8151811061044657fe5b01602001516001600160f81b03191615155b61046157600080fd5b5050505050565b61047a836001600160a01b03166106b2565b61048357600080fd5b604080518082018252601981527f7472616e7366657228616464726573732c75696e74323536290000000000000060209182015281516001600160a01b0385811660248301526044808301869052845180840390910181526064909201845291810180516001600160e01b031663a9059cbb60e01b178152925181516000946060948916939291829190808383602083106103ae5780518252601f19909201916020918201910161038f565b610541846001600160a01b03166106b2565b61054a57600080fd5b60006060856001600160a01b03166040518060600160405280602581526020016106ef602591398051602091820120604080516001600160a01b03808b166024830152891660448201526064808201899052825180830390910181526084909101825292830180516001600160e01b03166001600160e01b0319909316929092178252518251909182918083835b602083106105f75780518252601f1990920191602091820191016105d8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610659576040519150601f19603f3d011682016040523d82523d6000602084013e61065e565b606091505b50915091508161066d57600080fd5b805115806106a15750805160201480156106a1575080601f8151811061068f57fe5b01602001516001600160f81b03191615155b6106aa57600080fd5b505050505050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906106e65750808214155b94935050505056fe7472616e7366657246726f6d28616464726573732c616464726573732c75696e7432353629a265627a7a723158205a89c613d778436ed83b874f4fd36c6d92dccfa106418b61d70df7cdceecbd9864736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/SafeMath.json b/contracts/0.0.1-rc.53/SafeMath.json new file mode 100644 index 00000000..a904b37e --- /dev/null +++ b/contracts/0.0.1-rc.53/SafeMath.json @@ -0,0 +1,8 @@ +{ + "contractName": "SafeMath", + "abi": [], + "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158207820b59c2bd390f4c912ecf82694080b08a1f58d7497dbd6e2f3a70ae036ac8464736f6c63430005110032", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158207820b59c2bd390f4c912ecf82694080b08a1f58d7497dbd6e2f3a70ae036ac8464736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/SchemeConstraints.json b/contracts/0.0.1-rc.53/SchemeConstraints.json new file mode 100644 index 00000000..c546d291 --- /dev/null +++ b/contracts/0.0.1-rc.53/SchemeConstraints.json @@ -0,0 +1,134 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "SchemeConstraints", + "sourceName": "contracts/schemes/SchemeConstraints.sol", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "contractsWhiteList", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "descriptionHash", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getContractsWhiteList", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_contractsToCall", + "type": "address[]" + }, + { + "internalType": "bytes[]", + "name": "_callsData", + "type": "bytes[]" + }, + { + "internalType": "uint256[]", + "name": "_values", + "type": "uint256[]" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "isAllowedToCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_contractsToCall", + "type": "address[]" + }, + { + "internalType": "bytes[]", + "name": "_callsData", + "type": "bytes[]" + }, + { + "internalType": "uint256[]", + "name": "_values", + "type": "uint256[]" + }, + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + } + ], + "name": "isAllowedToPropose", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/SchemeRegistrar.json b/contracts/0.0.1-rc.53/SchemeRegistrar.json new file mode 100644 index 00000000..23a28417 --- /dev/null +++ b/contracts/0.0.1-rc.53/SchemeRegistrar.json @@ -0,0 +1,575 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "SchemeRegistrar", + "sourceName": "contracts/universalSchemes/SchemeRegistrar.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_parametersHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes4", + "name": "_permissions", + "type": "bytes4" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewSchemeProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "RemoveSchemeProposal", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_voteRegisterParams", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_voteRemoveParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_intVote", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationsProposals", + "outputs": [ + { + "internalType": "address", + "name": "scheme", + "type": "address" + }, + { + "internalType": "bool", + "name": "addScheme", + "type": "bool" + }, + { + "internalType": "bytes32", + "name": "parametersHash", + "type": "bytes32" + }, + { + "internalType": "bytes4", + "name": "permissions", + "type": "bytes4" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "voteRegisterParams", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "voteRemoveParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "intVote", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_parametersHash", + "type": "bytes32" + }, + { + "internalType": "bytes4", + "name": "_permissions", + "type": "bytes4" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeScheme", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeToRemoveScheme", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_voteRegisterParams", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_voteRemoveParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_intVote", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611ca5806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639588378e1161008c578063bea75f2811610066578063bea75f28146103dd578063d29b5d2f14610419578063e7ac593e1461044b578063f81f8bf61461050a576100ea565b80639588378e1461035d5780639d4c162d14610389578063b551c373146103c0576100ea565b80635099e006116100c85780635099e006146101dd57806360bdbb3f146102b25780636b8eb403146102ff578063771822611461032b576100ea565b806302506804146100ef57806306e3a978146101335780630a6687fd14610199575b600080fd5b61010c6004803603602081101561010557600080fd5b503561053c565b6040805193845260208401929092526001600160a01b031682820152519081900360600190f35b61015f6004803603604081101561014957600080fd5b506001600160a01b038135169060200135610565565b604080516001600160a01b0390951685529215156020850152838301919091526001600160e01b0319166060830152519081900360800190f35b6101cb600480360360608110156101af57600080fd5b50803590602081013590604001356001600160a01b03166105a7565b60408051918252519081900360200190f35b6101cb600480360360a08110156101f357600080fd5b6001600160a01b0382358116926020810135909116916040820135916001600160e01b03196060820135169181019060a08101608082013564010000000081111561023d57600080fd5b82018360208201111561024f57600080fd5b8035906020019184600183028401116401000000008311171561027157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105f6945050505050565b6102de600480360360408110156102c857600080fd5b506001600160a01b03813516906020013561091b565b604080519283526001600160a01b0390911660208301528051918290030190f35b6101cb6004803603604081101561031557600080fd5b506001600160a01b038135169060200135610945565b6101cb6004803603606081101561034157600080fd5b50803590602081013590604001356001600160a01b0316610a05565b6101cb6004803603604081101561037357600080fd5b506001600160a01b038135169060200135610a4d565b6103ac6004803603604081101561039f57600080fd5b5080359060200135610cdf565b604080519115158252519081900360200190f35b6101cb600480360360208110156103d657600080fd5b5035611067565b6103ac600480360360808110156103f357600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356112ef565b6103ac6004803603606081101561042f57600080fd5b508035906001600160a01b036020820135169060400135611491565b6101cb6004803603606081101561046157600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561049557600080fd5b8201836020820111156104a757600080fd5b803590602001918460018302840111640100000000831117156104c957600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061162a945050505050565b6103ac6004803603606081101561052057600080fd5b508035906001600160a01b03602082013516906040013561189b565b60026020819052600091825260409091208054600182015491909201546001600160a01b031683565b600160208181526000938452604080852090915291835291208054918101546002909101546001600160a01b03831692600160a01b900460ff16919060e01b84565b6000806105b5858585610a05565b6000818152600260208190526040909120878155600181018790550180546001600160a01b0386166001600160a01b03199091161790559150509392505050565b60006001600160a01b03851661064b576040805162461bcd60e51b8152602060048201526015602482015274736368656d652063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b610653611c12565b60026000610660896119fc565b815260208082019290925260409081016000908120825160608101845281548082526001830154828701526002928301546001600160a01b039081168387018190528651634439bdaf60e11b8152600481019590955260248501929092523360448501528d166064840152935190955091936388737b5e9260848084019382900301818787803b1580156106f357600080fd5b505af1158015610707573d6000803e3d6000fd5b505050506040513d602081101561071d57600080fd5b50519050610729611c32565b6040518060800160405280896001600160a01b03168152602001600115158152602001888152602001876001600160e01b031916815250905082604001516001600160a01b0316828a6001600160a01b03167fcc9180a05805acc3615b472c3ba00cdc9cd2c6e0e0b3648d60eb58f2c1001b848b8b8b8b60405180856001600160a01b03166001600160a01b03168152602001848152602001836001600160e01b0319166001600160e01b031916815260200180602001828103825283818151815260200191508051906020019080838360005b838110156108155781810151838201526020016107fd565b50505050905090810190601f1680156108425780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a46001600160a01b03808a166000818152600160208181526040808420888552825280842087518154848a01511515600160a01b0260ff60a01b19928a166001600160a01b0319928316179290921691909117825582890151828601556060909801516002909101805460e09290921c63ffffffff1990921691909117905580518082018252438152808301958652988101518616845283825280842088855290915290912095518655905194018054949091169390911692909217909155905095945050505050565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806109795760009150506109ff565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156109cf57600080fd5b505afa1580156109e3573d6000803e3d6000fd5b505050506040513d60208110156109f957600080fd5b50519150505b92915050565b6040805160208082019590955280820193909352606091821b6bffffffffffffffffffffffff1916918301919091528051808303605401815260749092019052805191012090565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610aa757600080fd5b505afa158015610abb573d6000803e3d6000fd5b505050506040513d6020811015610ad157600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610b2357600080fd5b505afa158015610b37573d6000803e3d6000fd5b505050506040513d6020811015610b4d57600080fd5b5051610b9b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610ba3611c59565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610bea576000935050610cd7565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610c2757600080fd5b505afa158015610c3b573d6000803e3d6000fd5b505050506040513d6020811015610c5157600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b158015610ca757600080fd5b505afa158015610cbb573d6000803e3d6000fd5b505050506040513d6020811015610cd157600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316610d4c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208784529091529020600101546001600160a01b0316610d79611c32565b506001600160a01b0381811660009081526001602081815260408084208a855282529283902083516080810185528154958616808252600160a01b90960460ff1615159281019290925291820154928101929092526002015460e01b6001600160e01b031916606082015290610dee57600080fd5b6001600160a01b03821660008181526001602081815260408084208b855290915280832080546001600160a81b03191681559182018390556002909101805463ffffffff19169055518892917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3846001141561101b576000826001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ea157600080fd5b505afa158015610eb5573d6000803e3d6000fd5b505050506040513d6020811015610ecb57600080fd5b5051602083015190915015610f855781516040808401516060850151825163e869d45f60e01b81526001600160a01b03948516600482015260248101929092526001600160e01b0319166044820152858316606482015290519183169163e869d45f916084808201926020929091908290030181600087803b158015610f5057600080fd5b505af1158015610f64573d6000803e3d6000fd5b505050506040513d6020811015610f7a57600080fd5b5051610f8557600080fd5b81602001516110195781516040805163039de01d60e01b81526001600160a01b039283166004820152858316602482015290519183169163039de01d916044808201926020929091908290030181600087803b158015610fe457600080fd5b505af1158015610ff8573d6000803e3d6000fd5b505050506040513d602081101561100e57600080fd5b505161101957600080fd5b505b60408051868152905187916001600160a01b038516917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc09181900360200190a350600195945050505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b1580156110c157600080fd5b505afa1580156110d5573d6000803e3d6000fd5b505050506040513d60208110156110eb57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561113d57600080fd5b505afa158015611151573d6000803e3d6000fd5b505050506040513d602081101561116757600080fd5b50516111b5576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6111bd611c59565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526112045760009350506112e8565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561124157600080fd5b505afa158015611255573d6000803e3d6000fd5b505050506040513d602081101561126b57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b1580156112b857600080fd5b505afa1580156112cc573d6000803e3d6000fd5b505050506040513d60208110156112e257600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661135c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611390576000925050611488565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156113c957600080fd5b505afa1580156113dd573d6000803e3d6000fd5b505050506040513d60208110156113f357600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b15801561145857600080fd5b505af115801561146c573d6000803e3d6000fd5b505050506040513d602081101561148257600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166114fe576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611532576000925050611622565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561156b57600080fd5b505afa15801561157f573d6000803e3d6000fd5b505050506040513d602081101561159557600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b1580156115f257600080fd5b505af1158015611606573d6000803e3d6000fd5b505050506040513d602081101561161c57600080fd5b50519250505b509392505050565b60006001600160a01b03831661167f576040805162461bcd60e51b8152602060048201526015602482015274736368656d652063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600061168a856119fc565b9050611694611c12565b5060008181526002602081815260408084208151606081018352815481526001820154818501819052918501546001600160a01b039081168285018190528451634439bdaf60e11b8152600481019790975260248701939093523360448701528b166064860152915191949093909284926388737b5e92608480820193929182900301818787803b15801561172857600080fd5b505af115801561173c573d6000803e3d6000fd5b505050506040513d602081101561175257600080fd5b50516001600160a01b038981166000818152600160209081526040808320868452825280832080546001600160a01b0319168e871690811790915581519081528083018281528d51928201929092528c519697509488169587957f504b6bd2558241a5f0532c970f3444e1fc24e1f7cf3d7c49a8d213bd612e9055948f948f9492936060850192918601918190849084905b838110156117fc5781810151838201526020016117e4565b50505050905090810190601f1680156118295780820380516001836020036101000a031916815260200191505b50935050505060405180910390a46040805180820182524381526001600160a01b03998a166020808301918252958301518b166000908152808752838120858252909652919094209351845551600190930180546001600160a01b031916939098169290921790965595945050505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611908576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061193c576000925050611622565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561197557600080fd5b505afa158015611989573d6000803e3d6000fd5b505050506040513d602081101561199f57600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b1580156115f257600080fd5b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a3757600080fd5b505afa158015611a4b573d6000803e3d6000fd5b505050506040513d6020811015611a6157600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015611ab357600080fd5b505afa158015611ac7573d6000803e3d6000fd5b505050506040513d6020811015611add57600080fd5b5051611b2b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b6457600080fd5b505afa158015611b78573d6000803e3d6000fd5b505050506040513d6020811015611b8e57600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b158015611be057600080fd5b505afa158015611bf4573d6000803e3d6000fd5b505050506040513d6020811015611c0a57600080fd5b505192915050565b604080516060810182526000808252602082018190529181019190915290565b60408051608081018252600080825260208201819052918101829052606081019190915290565b60408051808201909152600080825260208201529056fea265627a7a72315820c18dcf05ce56357eb507d1cde50edad0840f5be16b0d46e597b13a91a0cdd02664736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639588378e1161008c578063bea75f2811610066578063bea75f28146103dd578063d29b5d2f14610419578063e7ac593e1461044b578063f81f8bf61461050a576100ea565b80639588378e1461035d5780639d4c162d14610389578063b551c373146103c0576100ea565b80635099e006116100c85780635099e006146101dd57806360bdbb3f146102b25780636b8eb403146102ff578063771822611461032b576100ea565b806302506804146100ef57806306e3a978146101335780630a6687fd14610199575b600080fd5b61010c6004803603602081101561010557600080fd5b503561053c565b6040805193845260208401929092526001600160a01b031682820152519081900360600190f35b61015f6004803603604081101561014957600080fd5b506001600160a01b038135169060200135610565565b604080516001600160a01b0390951685529215156020850152838301919091526001600160e01b0319166060830152519081900360800190f35b6101cb600480360360608110156101af57600080fd5b50803590602081013590604001356001600160a01b03166105a7565b60408051918252519081900360200190f35b6101cb600480360360a08110156101f357600080fd5b6001600160a01b0382358116926020810135909116916040820135916001600160e01b03196060820135169181019060a08101608082013564010000000081111561023d57600080fd5b82018360208201111561024f57600080fd5b8035906020019184600183028401116401000000008311171561027157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506105f6945050505050565b6102de600480360360408110156102c857600080fd5b506001600160a01b03813516906020013561091b565b604080519283526001600160a01b0390911660208301528051918290030190f35b6101cb6004803603604081101561031557600080fd5b506001600160a01b038135169060200135610945565b6101cb6004803603606081101561034157600080fd5b50803590602081013590604001356001600160a01b0316610a05565b6101cb6004803603604081101561037357600080fd5b506001600160a01b038135169060200135610a4d565b6103ac6004803603604081101561039f57600080fd5b5080359060200135610cdf565b604080519115158252519081900360200190f35b6101cb600480360360208110156103d657600080fd5b5035611067565b6103ac600480360360808110156103f357600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356112ef565b6103ac6004803603606081101561042f57600080fd5b508035906001600160a01b036020820135169060400135611491565b6101cb6004803603606081101561046157600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561049557600080fd5b8201836020820111156104a757600080fd5b803590602001918460018302840111640100000000831117156104c957600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061162a945050505050565b6103ac6004803603606081101561052057600080fd5b508035906001600160a01b03602082013516906040013561189b565b60026020819052600091825260409091208054600182015491909201546001600160a01b031683565b600160208181526000938452604080852090915291835291208054918101546002909101546001600160a01b03831692600160a01b900460ff16919060e01b84565b6000806105b5858585610a05565b6000818152600260208190526040909120878155600181018790550180546001600160a01b0386166001600160a01b03199091161790559150509392505050565b60006001600160a01b03851661064b576040805162461bcd60e51b8152602060048201526015602482015274736368656d652063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b610653611c12565b60026000610660896119fc565b815260208082019290925260409081016000908120825160608101845281548082526001830154828701526002928301546001600160a01b039081168387018190528651634439bdaf60e11b8152600481019590955260248501929092523360448501528d166064840152935190955091936388737b5e9260848084019382900301818787803b1580156106f357600080fd5b505af1158015610707573d6000803e3d6000fd5b505050506040513d602081101561071d57600080fd5b50519050610729611c32565b6040518060800160405280896001600160a01b03168152602001600115158152602001888152602001876001600160e01b031916815250905082604001516001600160a01b0316828a6001600160a01b03167fcc9180a05805acc3615b472c3ba00cdc9cd2c6e0e0b3648d60eb58f2c1001b848b8b8b8b60405180856001600160a01b03166001600160a01b03168152602001848152602001836001600160e01b0319166001600160e01b031916815260200180602001828103825283818151815260200191508051906020019080838360005b838110156108155781810151838201526020016107fd565b50505050905090810190601f1680156108425780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a46001600160a01b03808a166000818152600160208181526040808420888552825280842087518154848a01511515600160a01b0260ff60a01b19928a166001600160a01b0319928316179290921691909117825582890151828601556060909801516002909101805460e09290921c63ffffffff1990921691909117905580518082018252438152808301958652988101518616845283825280842088855290915290912095518655905194018054949091169390911692909217909155905095945050505050565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806109795760009150506109ff565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156109cf57600080fd5b505afa1580156109e3573d6000803e3d6000fd5b505050506040513d60208110156109f957600080fd5b50519150505b92915050565b6040805160208082019590955280820193909352606091821b6bffffffffffffffffffffffff1916918301919091528051808303605401815260749092019052805191012090565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610aa757600080fd5b505afa158015610abb573d6000803e3d6000fd5b505050506040513d6020811015610ad157600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610b2357600080fd5b505afa158015610b37573d6000803e3d6000fd5b505050506040513d6020811015610b4d57600080fd5b5051610b9b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610ba3611c59565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610bea576000935050610cd7565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610c2757600080fd5b505afa158015610c3b573d6000803e3d6000fd5b505050506040513d6020811015610c5157600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b158015610ca757600080fd5b505afa158015610cbb573d6000803e3d6000fd5b505050506040513d6020811015610cd157600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316610d4c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208784529091529020600101546001600160a01b0316610d79611c32565b506001600160a01b0381811660009081526001602081815260408084208a855282529283902083516080810185528154958616808252600160a01b90960460ff1615159281019290925291820154928101929092526002015460e01b6001600160e01b031916606082015290610dee57600080fd5b6001600160a01b03821660008181526001602081815260408084208b855290915280832080546001600160a81b03191681559182018390556002909101805463ffffffff19169055518892917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3846001141561101b576000826001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ea157600080fd5b505afa158015610eb5573d6000803e3d6000fd5b505050506040513d6020811015610ecb57600080fd5b5051602083015190915015610f855781516040808401516060850151825163e869d45f60e01b81526001600160a01b03948516600482015260248101929092526001600160e01b0319166044820152858316606482015290519183169163e869d45f916084808201926020929091908290030181600087803b158015610f5057600080fd5b505af1158015610f64573d6000803e3d6000fd5b505050506040513d6020811015610f7a57600080fd5b5051610f8557600080fd5b81602001516110195781516040805163039de01d60e01b81526001600160a01b039283166004820152858316602482015290519183169163039de01d916044808201926020929091908290030181600087803b158015610fe457600080fd5b505af1158015610ff8573d6000803e3d6000fd5b505050506040513d602081101561100e57600080fd5b505161101957600080fd5b505b60408051868152905187916001600160a01b038516917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc09181900360200190a350600195945050505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b1580156110c157600080fd5b505afa1580156110d5573d6000803e3d6000fd5b505050506040513d60208110156110eb57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561113d57600080fd5b505afa158015611151573d6000803e3d6000fd5b505050506040513d602081101561116757600080fd5b50516111b5576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6111bd611c59565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526112045760009350506112e8565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561124157600080fd5b505afa158015611255573d6000803e3d6000fd5b505050506040513d602081101561126b57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b1580156112b857600080fd5b505afa1580156112cc573d6000803e3d6000fd5b505050506040513d60208110156112e257600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661135c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611390576000925050611488565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156113c957600080fd5b505afa1580156113dd573d6000803e3d6000fd5b505050506040513d60208110156113f357600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b15801561145857600080fd5b505af115801561146c573d6000803e3d6000fd5b505050506040513d602081101561148257600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166114fe576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611532576000925050611622565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561156b57600080fd5b505afa15801561157f573d6000803e3d6000fd5b505050506040513d602081101561159557600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b1580156115f257600080fd5b505af1158015611606573d6000803e3d6000fd5b505050506040513d602081101561161c57600080fd5b50519250505b509392505050565b60006001600160a01b03831661167f576040805162461bcd60e51b8152602060048201526015602482015274736368656d652063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600061168a856119fc565b9050611694611c12565b5060008181526002602081815260408084208151606081018352815481526001820154818501819052918501546001600160a01b039081168285018190528451634439bdaf60e11b8152600481019790975260248701939093523360448701528b166064860152915191949093909284926388737b5e92608480820193929182900301818787803b15801561172857600080fd5b505af115801561173c573d6000803e3d6000fd5b505050506040513d602081101561175257600080fd5b50516001600160a01b038981166000818152600160209081526040808320868452825280832080546001600160a01b0319168e871690811790915581519081528083018281528d51928201929092528c519697509488169587957f504b6bd2558241a5f0532c970f3444e1fc24e1f7cf3d7c49a8d213bd612e9055948f948f9492936060850192918601918190849084905b838110156117fc5781810151838201526020016117e4565b50505050905090810190601f1680156118295780820380516001836020036101000a031916815260200191505b50935050505060405180910390a46040805180820182524381526001600160a01b03998a166020808301918252958301518b166000908152808752838120858252909652919094209351845551600190930180546001600160a01b031916939098169290921790965595945050505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611908576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061193c576000925050611622565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561197557600080fd5b505afa158015611989573d6000803e3d6000fd5b505050506040513d602081101561199f57600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b1580156115f257600080fd5b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a3757600080fd5b505afa158015611a4b573d6000803e3d6000fd5b505050506040513d6020811015611a6157600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015611ab357600080fd5b505afa158015611ac7573d6000803e3d6000fd5b505050506040513d6020811015611add57600080fd5b5051611b2b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b6457600080fd5b505afa158015611b78573d6000803e3d6000fd5b505050506040513d6020811015611b8e57600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b158015611be057600080fd5b505afa158015611bf4573d6000803e3d6000fd5b505050506040513d6020811015611c0a57600080fd5b505192915050565b604080516060810182526000808252602082018190529181019190915290565b60408051608081018252600080825260208201819052918101829052606081019190915290565b60408051808201909152600080825260208201529056fea265627a7a72315820c18dcf05ce56357eb507d1cde50edad0840f5be16b0d46e597b13a91a0cdd02664736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/SignalScheme.json b/contracts/0.0.1-rc.53/SignalScheme.json new file mode 100644 index 00000000..c005f0e4 --- /dev/null +++ b/contracts/0.0.1-rc.53/SignalScheme.json @@ -0,0 +1,408 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "SignalScheme", + "sourceName": "contracts/schemes/SignalScheme.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_signalType", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewSignalProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_signalType", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "Signal", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_signalType", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_voteApproveParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_intVote", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "params", + "outputs": [ + { + "internalType": "bytes32", + "name": "voteApproveParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "intVote", + "type": "address" + }, + { + "internalType": "uint256", + "name": "signalType", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "string", + "name": "descriptionHash", + "type": "string" + }, + { + "internalType": "bool", + "name": "executed", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeSignal", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611591806100206000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80639d4c162d116100715780639d4c162d146102bc578063b551c373146102f3578063bea75f2814610310578063cff0ab961461034c578063d29b5d2f14610385578063f81f8bf6146103b7576100b4565b8063294e8d0e146100b957806332ed5b12146100f557806360bdbb3f146101955780636b8eb403146101e257806385434788146102205780639588378e14610290575b600080fd5b6100f3600480360360808110156100cf57600080fd5b506001600160a01b03813581169160208101359160408201359160600135166103e9565b005b6101126004803603602081101561010b57600080fd5b50356104fa565b604051808060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610159578181015183820152602001610141565b50505050905090810190601f1680156101865780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6101c1600480360360408110156101ab57600080fd5b506001600160a01b03813516906020013561059f565b604080519283526001600160a01b0390911660208301528051918290030190f35b61020e600480360360408110156101f857600080fd5b506001600160a01b0381351690602001356105c9565b60408051918252519081900360200190f35b61020e6004803603602081101561023657600080fd5b81019060208101813564010000000081111561025157600080fd5b82018360208201111561026357600080fd5b8035906020019184600183028401116401000000008311171561028557600080fd5b509092509050610689565b61020e600480360360408110156102a657600080fd5b506001600160a01b03813516906020013561094f565b6102df600480360360408110156102d257600080fd5b5080359060200135610be1565b604080519115158252519081900360200190f35b61020e6004803603602081101561030957600080fd5b5035610d6a565b6102df6004803603608081101561032657600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610ff2565b610354611194565b604080519485526001600160a01b039384166020860152848101929092529091166060830152519081900360800190f35b6102df6004803603606081101561039b57600080fd5b508035906001600160a01b0360208201351690604001356111b0565b6102df600480360360608110156103cd57600080fd5b508035906001600160a01b036020820135169060400135611349565b6005546001600160a01b031615610447576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b03841661049a576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b604080516080810182528381526001600160a01b0392831660208201819052918101859052949091166060909401849052600291909155600380546001600160a01b03199081169092179055600491909155600580549091169091179055565b60016020818152600092835260409283902080548451600294821615610100026000190190911693909304601f810183900483028401830190945283835292839183018282801561058c5780601f106105615761010080835404028352916020019161058c565b820191906000526020600020905b81548152906001019060200180831161056f57829003601f168201915b5050506001909301549192505060ff1682565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806105fd576000915050610683565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561065357600080fd5b505afa158015610667573d6000803e3d6000fd5b505050506040513d602081101561067d57600080fd5b50519150505b92915050565b60055460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156106ce57600080fd5b505afa1580156106e2573d6000803e3d6000fd5b505050506040513d60208110156106f857600080fd5b505160055460408051639be2faed60e01b81523060048201526001600160a01b03928316602482015290519190921691639be2faed916044808301926020929190829003018186803b15801561074d57600080fd5b505afa158015610761573d6000803e3d6000fd5b505050506040513d602081101561077757600080fd5b50516107c5576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6003546002805460055460408051634439bdaf60e11b8152600481019490945260248401929092523360448401526001600160a01b039081166064840152905160009391909116916388737b5e91608480830192602092919082900301818787803b15801561083357600080fd5b505af1158015610847573d6000803e3d6000fd5b505050506040513d602081101561085d57600080fd5b5051600081815260016020526040902090915061087b9085856114aa565b50600454600554604080516020808252810187905284926001600160a01b0316917f940af78fa85d990be5623aeca8b988922784c8c782b1c2c2fb416d83c05547fb91899189919081908101848480828437600083820152604051601f909101601f19169092018290039550909350505050a46040805180820182524381526005546001600160a01b0390811660208084019182526003548316600090815280825285812087825290915293909320915182559151600190910180546001600160a01b031916919092161790559392505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b1580156109a957600080fd5b505afa1580156109bd573d6000803e3d6000fd5b505050506040513d60208110156109d357600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610a2557600080fd5b505afa158015610a39573d6000803e3d6000fd5b505050506040513d6020811015610a4f57600080fd5b5051610a9d576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610aa5611528565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610aec576000935050610bd9565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610b2957600080fd5b505afa158015610b3d573d6000803e3d6000fd5b505050506040513d6020811015610b5357600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b158015610ba957600080fd5b505afa158015610bbd573d6000803e3d6000fd5b505050506040513d6020811015610bd357600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316610c4e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152600160208190526040909120015460ff1615610c6e57600080fd5b60008481526001602081905260409091208101805460ff191682179055831415610d6057600454600554600086815260016020818152604092839020835182815281546002600019958216156101000295909501169390930491830182905289946001600160a01b0316937fefc186437cd31fb390ee7bfa83473db0ede42b31121c466bb7afb8b3f665ca98939192829182019084908015610d515780601f10610d2657610100808354040283529160200191610d51565b820191906000526020600020905b815481529060010190602001808311610d3457829003601f168201915b50509250505060405180910390a45b5060019392505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610dc457600080fd5b505afa158015610dd8573d6000803e3d6000fd5b505050506040513d6020811015610dee57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610e4057600080fd5b505afa158015610e54573d6000803e3d6000fd5b505050506040513d6020811015610e6a57600080fd5b5051610eb8576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610ec0611528565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610f07576000935050610feb565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610f4457600080fd5b505afa158015610f58573d6000803e3d6000fd5b505050506040513d6020811015610f6e57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b158015610fbb57600080fd5b505afa158015610fcf573d6000803e3d6000fd5b505050506040513d6020811015610fe557600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661105f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061109357600092505061118b565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110cc57600080fd5b505afa1580156110e0573d6000803e3d6000fd5b505050506040513d60208110156110f657600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b15801561115b57600080fd5b505af115801561116f573d6000803e3d6000fd5b505050506040513d602081101561118557600080fd5b50519250505b50949350505050565b6002546003546004546005546001600160a01b03928316921684565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661121d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611251576000925050611341565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561128a57600080fd5b505afa15801561129e573d6000803e3d6000fd5b505050506040513d60208110156112b457600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b15801561131157600080fd5b505af1158015611325573d6000803e3d6000fd5b505050506040513d602081101561133b57600080fd5b50519250505b509392505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166113b6576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806113ea576000925050611341565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561142357600080fd5b505afa158015611437573d6000803e3d6000fd5b505050506040513d602081101561144d57600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b15801561131157600080fd5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106114eb5782800160ff19823516178555611518565b82800160010185558215611518579182015b828111156115185782358255916020019190600101906114fd565b5061152492915061153f565b5090565b604080518082019091526000808252602082015290565b61155991905b808211156115245760008155600101611545565b9056fea265627a7a72315820ace84bc121a22d4273db03f24bb891aa59d925de8755e0e5aa9c1df31f76048f64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100b45760003560e01c80639d4c162d116100715780639d4c162d146102bc578063b551c373146102f3578063bea75f2814610310578063cff0ab961461034c578063d29b5d2f14610385578063f81f8bf6146103b7576100b4565b8063294e8d0e146100b957806332ed5b12146100f557806360bdbb3f146101955780636b8eb403146101e257806385434788146102205780639588378e14610290575b600080fd5b6100f3600480360360808110156100cf57600080fd5b506001600160a01b03813581169160208101359160408201359160600135166103e9565b005b6101126004803603602081101561010b57600080fd5b50356104fa565b604051808060200183151515158152602001828103825284818151815260200191508051906020019080838360005b83811015610159578181015183820152602001610141565b50505050905090810190601f1680156101865780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6101c1600480360360408110156101ab57600080fd5b506001600160a01b03813516906020013561059f565b604080519283526001600160a01b0390911660208301528051918290030190f35b61020e600480360360408110156101f857600080fd5b506001600160a01b0381351690602001356105c9565b60408051918252519081900360200190f35b61020e6004803603602081101561023657600080fd5b81019060208101813564010000000081111561025157600080fd5b82018360208201111561026357600080fd5b8035906020019184600183028401116401000000008311171561028557600080fd5b509092509050610689565b61020e600480360360408110156102a657600080fd5b506001600160a01b03813516906020013561094f565b6102df600480360360408110156102d257600080fd5b5080359060200135610be1565b604080519115158252519081900360200190f35b61020e6004803603602081101561030957600080fd5b5035610d6a565b6102df6004803603608081101561032657600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610ff2565b610354611194565b604080519485526001600160a01b039384166020860152848101929092529091166060830152519081900360800190f35b6102df6004803603606081101561039b57600080fd5b508035906001600160a01b0360208201351690604001356111b0565b6102df600480360360608110156103cd57600080fd5b508035906001600160a01b036020820135169060400135611349565b6005546001600160a01b031615610447576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b03841661049a576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b604080516080810182528381526001600160a01b0392831660208201819052918101859052949091166060909401849052600291909155600380546001600160a01b03199081169092179055600491909155600580549091169091179055565b60016020818152600092835260409283902080548451600294821615610100026000190190911693909304601f810183900483028401830190945283835292839183018282801561058c5780601f106105615761010080835404028352916020019161058c565b820191906000526020600020905b81548152906001019060200180831161056f57829003601f168201915b5050506001909301549192505060ff1682565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806105fd576000915050610683565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561065357600080fd5b505afa158015610667573d6000803e3d6000fd5b505050506040513d602081101561067d57600080fd5b50519150505b92915050565b60055460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156106ce57600080fd5b505afa1580156106e2573d6000803e3d6000fd5b505050506040513d60208110156106f857600080fd5b505160055460408051639be2faed60e01b81523060048201526001600160a01b03928316602482015290519190921691639be2faed916044808301926020929190829003018186803b15801561074d57600080fd5b505afa158015610761573d6000803e3d6000fd5b505050506040513d602081101561077757600080fd5b50516107c5576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6003546002805460055460408051634439bdaf60e11b8152600481019490945260248401929092523360448401526001600160a01b039081166064840152905160009391909116916388737b5e91608480830192602092919082900301818787803b15801561083357600080fd5b505af1158015610847573d6000803e3d6000fd5b505050506040513d602081101561085d57600080fd5b5051600081815260016020526040902090915061087b9085856114aa565b50600454600554604080516020808252810187905284926001600160a01b0316917f940af78fa85d990be5623aeca8b988922784c8c782b1c2c2fb416d83c05547fb91899189919081908101848480828437600083820152604051601f909101601f19169092018290039550909350505050a46040805180820182524381526005546001600160a01b0390811660208084019182526003548316600090815280825285812087825290915293909320915182559151600190910180546001600160a01b031916919092161790559392505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b1580156109a957600080fd5b505afa1580156109bd573d6000803e3d6000fd5b505050506040513d60208110156109d357600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610a2557600080fd5b505afa158015610a39573d6000803e3d6000fd5b505050506040513d6020811015610a4f57600080fd5b5051610a9d576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610aa5611528565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610aec576000935050610bd9565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610b2957600080fd5b505afa158015610b3d573d6000803e3d6000fd5b505050506040513d6020811015610b5357600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b158015610ba957600080fd5b505afa158015610bbd573d6000803e3d6000fd5b505050506040513d6020811015610bd357600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316610c4e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152600160208190526040909120015460ff1615610c6e57600080fd5b60008481526001602081905260409091208101805460ff191682179055831415610d6057600454600554600086815260016020818152604092839020835182815281546002600019958216156101000295909501169390930491830182905289946001600160a01b0316937fefc186437cd31fb390ee7bfa83473db0ede42b31121c466bb7afb8b3f665ca98939192829182019084908015610d515780601f10610d2657610100808354040283529160200191610d51565b820191906000526020600020905b815481529060010190602001808311610d3457829003601f168201915b50509250505060405180910390a45b5060019392505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610dc457600080fd5b505afa158015610dd8573d6000803e3d6000fd5b505050506040513d6020811015610dee57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610e4057600080fd5b505afa158015610e54573d6000803e3d6000fd5b505050506040513d6020811015610e6a57600080fd5b5051610eb8576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610ec0611528565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610f07576000935050610feb565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610f4457600080fd5b505afa158015610f58573d6000803e3d6000fd5b505050506040513d6020811015610f6e57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b158015610fbb57600080fd5b505afa158015610fcf573d6000803e3d6000fd5b505050506040513d6020811015610fe557600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661105f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061109357600092505061118b565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110cc57600080fd5b505afa1580156110e0573d6000803e3d6000fd5b505050506040513d60208110156110f657600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b15801561115b57600080fd5b505af115801561116f573d6000803e3d6000fd5b505050506040513d602081101561118557600080fd5b50519250505b50949350505050565b6002546003546004546005546001600160a01b03928316921684565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661121d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680611251576000925050611341565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561128a57600080fd5b505afa15801561129e573d6000803e3d6000fd5b505050506040513d60208110156112b457600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b15801561131157600080fd5b505af1158015611325573d6000803e3d6000fd5b505050506040513d602081101561133b57600080fd5b50519250505b509392505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166113b6576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806113ea576000925050611341565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561142357600080fd5b505afa158015611437573d6000803e3d6000fd5b505050506040513d602081101561144d57600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b15801561131157600080fd5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106114eb5782800160ff19823516178555611518565b82800160010185558215611518579182015b828111156115185782358255916020019190600101906114fd565b5061152492915061153f565b5090565b604080518082019091526000808252602082015290565b61155991905b808211156115245760008155600101611545565b9056fea265627a7a72315820ace84bc121a22d4273db03f24bb891aa59d925de8755e0e5aa9c1df31f76048f64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/SimpleSchemeConstraints.json b/contracts/0.0.1-rc.53/SimpleSchemeConstraints.json new file mode 100644 index 00000000..a221abab --- /dev/null +++ b/contracts/0.0.1-rc.53/SimpleSchemeConstraints.json @@ -0,0 +1,190 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "SimpleSchemeConstraints", + "sourceName": "contracts/schemes/SimpleSchemeConstraints.sol", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "contractsWhiteList", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "contractsWhiteListMap", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "descriptionHash", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getContractsWhiteList", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_contractsWhiteList", + "type": "address[]" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "initialized", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_contractsToCall", + "type": "address[]" + }, + { + "internalType": "bytes[]", + "name": "", + "type": "bytes[]" + }, + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + }, + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "name": "isAllowedToCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address[]", + "name": "_contractsToCall", + "type": "address[]" + }, + { + "internalType": "bytes[]", + "name": "", + "type": "bytes[]" + }, + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + }, + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "name": "isAllowedToPropose", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506109d2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806385dcee931161005b57806385dcee93146100e8578063b7f59236146100fd578063da6f0d9b1461011d578063e5e48a341461013057610088565b8063158ef93e1461008d5780633233efe5146100ab5780633b7fdf09146100c057806364ab2de9146100d5575b600080fd5b610095610143565b6040516100a291906108b3565b60405180910390f35b6100be6100b93660046106d0565b61014c565b005b6100c8610208565b6040516100a2919061089b565b6100956100e336600461061a565b61026b565b6100f06102ec565b6040516100a291906108c1565b61011061010b366004610740565b610379565b6040516100a2919061088d565b61009561012b36600461061a565b6103a0565b61009561013e3660046105f4565b610412565b60035460ff1681565b60035460ff16156101785760405162461bcd60e51b815260040161016f906108d2565b60405180910390fd5b6003805460ff1916600117905560005b838110156101e7576001600260008787858181106101a257fe5b90506020020160206101b791908101906105f4565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055600101610188565b506101f460008585610427565b506102016001838361048a565b5050505050565b6060600080548060200260200160405190810160405280929190818152602001828054801561026057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610242575b505050505090505b90565b6000805b878110156102dd57600260008a8a8481811061028757fe5b905060200201602061029c91908101906105f4565b6001600160a01b0316815260208101919091526040016000205460ff166102d55760405162461bcd60e51b815260040161016f906108e2565b60010161026f565b50600198975050505050505050565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156103715780601f1061034657610100808354040283529160200191610371565b820191906000526020600020905b81548152906001019060200180831161035457829003601f168201915b505050505081565b6000818154811061038657fe5b6000918252602090912001546001600160a01b0316905081565b6000805b878110156102dd57600260008a8a848181106103bc57fe5b90506020020160206103d191908101906105f4565b6001600160a01b0316815260208101919091526040016000205460ff1661040a5760405162461bcd60e51b815260040161016f906108e2565b6001016103a4565b60026020526000908152604090205460ff1681565b82805482825590600052602060002090810192821561047a579160200282015b8281111561047a5781546001600160a01b0319166001600160a01b03843516178255602090920191600190910190610447565b50610486929150610504565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106104cb5782800160ff198235161785556104f8565b828001600101855582156104f8579182015b828111156104f85782358255916020019190600101906104dd565b50610486929150610528565b61026891905b808211156104865780546001600160a01b031916815560010161050a565b61026891905b80821115610486576000815560010161052e565b803561054d81610966565b92915050565b60008083601f84011261056557600080fd5b50813567ffffffffffffffff81111561057d57600080fd5b60208301915083602082028301111561059557600080fd5b9250929050565b803561054d8161097d565b60008083601f8401126105b957600080fd5b50813567ffffffffffffffff8111156105d157600080fd5b60208301915083600182028301111561059557600080fd5b803561054d81610986565b60006020828403121561060657600080fd5b60006106128484610542565b949350505050565b60008060008060008060006080888a03121561063557600080fd5b873567ffffffffffffffff81111561064c57600080fd5b6106588a828b01610553565b9750975050602088013567ffffffffffffffff81111561067757600080fd5b6106838a828b01610553565b9550955050604088013567ffffffffffffffff8111156106a257600080fd5b6106ae8a828b01610553565b935093505060606106c18a828b0161059c565b91505092959891949750929550565b600080600080604085870312156106e657600080fd5b843567ffffffffffffffff8111156106fd57600080fd5b61070987828801610553565b9450945050602085013567ffffffffffffffff81111561072857600080fd5b610734878288016105a7565b95989497509550505050565b60006020828403121561075257600080fd5b600061061284846105e9565b600061076a8383610772565b505060200190565b61077b81610905565b82525050565b600061078c826108f8565b61079681856108fc565b93506107a1836108f2565b8060005b838110156107cf5781516107b9888261075e565b97506107c4836108f2565b9250506001016107a5565b509495945050505050565b61077b81610910565b60006107ee826108f8565b6107f881856108fc565b935061080881856020860161092c565b6108118161095c565b9093019392505050565b60006108286017836108fc565b7f63616e6e6f7420696e697469616c697a65207477696365000000000000000000815260200192915050565b60006108616018836108fc565b7f636f6e7472616374206e6f742077686974656c69737465640000000000000000815260200192915050565b6020810161054d8284610772565b602080825281016108ac8184610781565b9392505050565b6020810161054d82846107da565b602080825281016108ac81846107e3565b6020808252810161054d8161081b565b6020808252810161054d81610854565b60200190565b5190565b90815260200190565b600061054d82610920565b151590565b600061054d82610905565b6001600160a01b031690565b60005b8381101561094757818101518382015260200161092f565b83811115610956576000848401525b50505050565b601f01601f191690565b61096f81610905565b811461097a57600080fd5b50565b61096f81610915565b61096f8161026856fea365627a7a72315820901377e5d27152b2fd61b0aa3d1aba073dffa89124914d2256b63ae8f2e4c0966c6578706572696d656e74616cf564736f6c63430005110040", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c806385dcee931161005b57806385dcee93146100e8578063b7f59236146100fd578063da6f0d9b1461011d578063e5e48a341461013057610088565b8063158ef93e1461008d5780633233efe5146100ab5780633b7fdf09146100c057806364ab2de9146100d5575b600080fd5b610095610143565b6040516100a291906108b3565b60405180910390f35b6100be6100b93660046106d0565b61014c565b005b6100c8610208565b6040516100a2919061089b565b6100956100e336600461061a565b61026b565b6100f06102ec565b6040516100a291906108c1565b61011061010b366004610740565b610379565b6040516100a2919061088d565b61009561012b36600461061a565b6103a0565b61009561013e3660046105f4565b610412565b60035460ff1681565b60035460ff16156101785760405162461bcd60e51b815260040161016f906108d2565b60405180910390fd5b6003805460ff1916600117905560005b838110156101e7576001600260008787858181106101a257fe5b90506020020160206101b791908101906105f4565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055600101610188565b506101f460008585610427565b506102016001838361048a565b5050505050565b6060600080548060200260200160405190810160405280929190818152602001828054801561026057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610242575b505050505090505b90565b6000805b878110156102dd57600260008a8a8481811061028757fe5b905060200201602061029c91908101906105f4565b6001600160a01b0316815260208101919091526040016000205460ff166102d55760405162461bcd60e51b815260040161016f906108e2565b60010161026f565b50600198975050505050505050565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156103715780601f1061034657610100808354040283529160200191610371565b820191906000526020600020905b81548152906001019060200180831161035457829003601f168201915b505050505081565b6000818154811061038657fe5b6000918252602090912001546001600160a01b0316905081565b6000805b878110156102dd57600260008a8a848181106103bc57fe5b90506020020160206103d191908101906105f4565b6001600160a01b0316815260208101919091526040016000205460ff1661040a5760405162461bcd60e51b815260040161016f906108e2565b6001016103a4565b60026020526000908152604090205460ff1681565b82805482825590600052602060002090810192821561047a579160200282015b8281111561047a5781546001600160a01b0319166001600160a01b03843516178255602090920191600190910190610447565b50610486929150610504565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106104cb5782800160ff198235161785556104f8565b828001600101855582156104f8579182015b828111156104f85782358255916020019190600101906104dd565b50610486929150610528565b61026891905b808211156104865780546001600160a01b031916815560010161050a565b61026891905b80821115610486576000815560010161052e565b803561054d81610966565b92915050565b60008083601f84011261056557600080fd5b50813567ffffffffffffffff81111561057d57600080fd5b60208301915083602082028301111561059557600080fd5b9250929050565b803561054d8161097d565b60008083601f8401126105b957600080fd5b50813567ffffffffffffffff8111156105d157600080fd5b60208301915083600182028301111561059557600080fd5b803561054d81610986565b60006020828403121561060657600080fd5b60006106128484610542565b949350505050565b60008060008060008060006080888a03121561063557600080fd5b873567ffffffffffffffff81111561064c57600080fd5b6106588a828b01610553565b9750975050602088013567ffffffffffffffff81111561067757600080fd5b6106838a828b01610553565b9550955050604088013567ffffffffffffffff8111156106a257600080fd5b6106ae8a828b01610553565b935093505060606106c18a828b0161059c565b91505092959891949750929550565b600080600080604085870312156106e657600080fd5b843567ffffffffffffffff8111156106fd57600080fd5b61070987828801610553565b9450945050602085013567ffffffffffffffff81111561072857600080fd5b610734878288016105a7565b95989497509550505050565b60006020828403121561075257600080fd5b600061061284846105e9565b600061076a8383610772565b505060200190565b61077b81610905565b82525050565b600061078c826108f8565b61079681856108fc565b93506107a1836108f2565b8060005b838110156107cf5781516107b9888261075e565b97506107c4836108f2565b9250506001016107a5565b509495945050505050565b61077b81610910565b60006107ee826108f8565b6107f881856108fc565b935061080881856020860161092c565b6108118161095c565b9093019392505050565b60006108286017836108fc565b7f63616e6e6f7420696e697469616c697a65207477696365000000000000000000815260200192915050565b60006108616018836108fc565b7f636f6e7472616374206e6f742077686974656c69737465640000000000000000815260200192915050565b6020810161054d8284610772565b602080825281016108ac8184610781565b9392505050565b6020810161054d82846107da565b602080825281016108ac81846107e3565b6020808252810161054d8161081b565b6020808252810161054d81610854565b60200190565b5190565b90815260200190565b600061054d82610920565b151590565b600061054d82610905565b6001600160a01b031690565b60005b8381101561094757818101518382015260200161092f565b83811115610956576000848401525b50505050565b601f01601f191690565b61096f81610905565b811461097a57600080fd5b50565b61096f81610915565b61096f8161026856fea365627a7a72315820901377e5d27152b2fd61b0aa3d1aba073dffa89124914d2256b63ae8f2e4c0966c6578706572696d656e74616cf564736f6c63430005110040", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/TokenCapGC.json b/contracts/0.0.1-rc.53/TokenCapGC.json new file mode 100644 index 00000000..65d8ee8c --- /dev/null +++ b/contracts/0.0.1-rc.53/TokenCapGC.json @@ -0,0 +1,166 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "TokenCapGC", + "sourceName": "contracts/globalConstraints/TokenCapGC.sol", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_cap", + "type": "uint256" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "post", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "pre", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_cap", + "type": "uint256" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "when", + "outputs": [ + { + "internalType": "enum GlobalConstraintInterface.CallPhase", + "name": "", + "type": "uint8" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610360806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063025068041461006757806378fc063c146100a75780638043154d146100e5578063c1786ab21461012b578063c41981611461015d578063e2b0caef14610189575b600080fd5b6100846004803603602081101561007d57600080fd5b50356101b5565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6100d3600480360360408110156100bd57600080fd5b506001600160a01b0381351690602001356101da565b60408051918252519081900360200190f35b610117600480360360608110156100fb57600080fd5b506001600160a01b03813516906020810135906040013561021e565b604080519115158252519081900360200190f35b6101176004803603606081101561014157600080fd5b506001600160a01b0381351690602081013590604001356102d8565b6100d36004803603604081101561017357600080fd5b506001600160a01b0381351690602001356102e1565b610191610326565b604051808260028111156101a157fe5b60ff16815260200191505060405180910390f35b600060208190529081526040902080546001909101546001600160a01b039091169082565b6040805160609390931b6bffffffffffffffffffffffff19166020808501919091526034808501939093528151808503909301835260549093019052805191012090565b6000828152602081905260408120546001600160a01b0316158015906102c05750600083815260208181526040918290206001810154905483516318160ddd60e01b8152935191936001600160a01b03909116926318160ddd92600480840193829003018186803b15801561029257600080fd5b505afa1580156102a6573d6000803e3d6000fd5b505050506040513d60208110156102bc57600080fd5b5051115b156102cd575060006102d1565b5060015b9392505050565b60019392505050565b6000806102ee84846101da565b600081815260208190526040902080546001600160a01b0387166001600160a01b031990911617815560010184905591505092915050565b60019056fea265627a7a7231582091f4833cb6d374a65fcaac9da98c23c1aa279aa58a971436c344f7fa08996dbc64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c8063025068041461006757806378fc063c146100a75780638043154d146100e5578063c1786ab21461012b578063c41981611461015d578063e2b0caef14610189575b600080fd5b6100846004803603602081101561007d57600080fd5b50356101b5565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6100d3600480360360408110156100bd57600080fd5b506001600160a01b0381351690602001356101da565b60408051918252519081900360200190f35b610117600480360360608110156100fb57600080fd5b506001600160a01b03813516906020810135906040013561021e565b604080519115158252519081900360200190f35b6101176004803603606081101561014157600080fd5b506001600160a01b0381351690602081013590604001356102d8565b6100d36004803603604081101561017357600080fd5b506001600160a01b0381351690602001356102e1565b610191610326565b604051808260028111156101a157fe5b60ff16815260200191505060405180910390f35b600060208190529081526040902080546001909101546001600160a01b039091169082565b6040805160609390931b6bffffffffffffffffffffffff19166020808501919091526034808501939093528151808503909301835260549093019052805191012090565b6000828152602081905260408120546001600160a01b0316158015906102c05750600083815260208181526040918290206001810154905483516318160ddd60e01b8152935191936001600160a01b03909116926318160ddd92600480840193829003018186803b15801561029257600080fd5b505afa1580156102a6573d6000803e3d6000fd5b505050506040513d60208110156102bc57600080fd5b5051115b156102cd575060006102d1565b5060015b9392505050565b60019392505050565b6000806102ee84846101da565b600081815260208190526040902080546001600160a01b0387166001600160a01b031990911617815560010184905591505092915050565b60019056fea265627a7a7231582091f4833cb6d374a65fcaac9da98c23c1aa279aa58a971436c344f7fa08996dbc64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/TransitionScheme.json b/contracts/0.0.1-rc.53/TransitionScheme.json new file mode 100644 index 00000000..7d8c03c4 --- /dev/null +++ b/contracts/0.0.1-rc.53/TransitionScheme.json @@ -0,0 +1,218 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "TransitionScheme", + "sourceName": "contracts/schemes/TransitionScheme.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_newAvatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_asset", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "ASSETS_CAP", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "assetAddresses", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "externalTokens", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address payable", + "name": "_newAvatar", + "type": "address" + }, + { + "internalType": "address[]", + "name": "_externalTokens", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "_assetAddresses", + "type": "address[]" + }, + { + "internalType": "bytes4[]", + "name": "_selectors", + "type": "bytes4[]" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "newAvatar", + "outputs": [ + { + "internalType": "address payable", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "selectors", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "sendEther", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256[]", + "name": "_amounts", + "type": "uint256[]" + } + ], + "name": "sendExternalToken", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "transferAssets", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610de8806100206000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063b1cc005911610066578063b1cc005914610123578063bd7750ab1461024c578063c3f349f2146102ba578063f58b911d146102c2578063f88d331a146102fc5761009e565b8063389f1e09146100a35780635aef7de6146100bd5780636c8e7103146100e15780638ebe67f4146100e9578063a6df16d714610106575b600080fd5b6100ab610319565b60408051918252519081900360200190f35b6100c561031e565b604080516001600160a01b039092168252519081900360200190f35b6100c561032d565b6100c5600480360360208110156100ff57600080fd5b503561033c565b6100c56004803603602081101561011c57600080fd5b5035610363565b61024a600480360360a081101561013957600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b81111561016c57600080fd5b82018360208201111561017e57600080fd5b803590602001918460208302840111600160201b8311171561019f57600080fd5b919390929091602081019035600160201b8111156101bc57600080fd5b8201836020820111156101ce57600080fd5b803590602001918460208302840111600160201b831117156101ef57600080fd5b919390929091602081019035600160201b81111561020c57600080fd5b82018360208201111561021e57600080fd5b803590602001918460208302840111600160201b8311171561023f57600080fd5b509092509050610370565b005b61024a6004803603602081101561026257600080fd5b810190602081018135600160201b81111561027c57600080fd5b82018360208201111561028e57600080fd5b803590602001918460208302840111600160201b831117156102af57600080fd5b50909250905061050f565b61024a610729565b6102df600480360360208110156102d857600080fd5b5035610a82565b604080516001600160e01b03199092168252519081900360200190f35b61024a6004803603602081101561031257600080fd5b5035610ab6565b606481565b6000546001600160a01b031681565b6001546001600160a01b031681565b6002818154811061034957fe5b6000918252602090912001546001600160a01b0316905081565b6003818154811061034957fe5b60648311156103b05760405162461bcd60e51b8152600401808060200182810382526024815260200180610d6b6024913960400191505060405180910390fd5b8281146103fd576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b6000546001600160a01b03161561045b576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0388166104ae576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600080546001600160a01b03808b166001600160a01b03199283161790925560018054928a16929091169190911790556104ea60028787610c0d565b506104f760038585610c0d565b5061050460048383610c70565b505050505050505050565b600254811461055e576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b60025481101561072457600083838381811061057957fe5b90506020020135111561071c576000809054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156105d357600080fd5b505afa1580156105e7573d6000803e3d6000fd5b505050506040513d60208110156105fd57600080fd5b5051600280546001600160a01b039092169163b9a04cdd91908490811061062057fe5b6000918252602090912001546001546001600160a01b03918216911686868681811061064857fe5b60008054604080516001600160e01b031960e08b901b1681526001600160a01b039889166004820152968816602488015260209384029590950135604487015295909516606485015291516084808501959394919391849003019150829087803b1580156106b557600080fd5b505af11580156106c9573d6000803e3d6000fd5b505050506040513d60208110156106df57600080fd5b505161071c5760405162461bcd60e51b8152600401808060200182810382526025815260200180610d8f6025913960400191505060405180910390fd5b600101610561565b505050565b60005b600354811015610a7f5760606000806000809054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561078857600080fd5b505afa15801561079c573d6000803e3d6000fd5b505050506040513d60208110156107b257600080fd5b5051600380549192506001600160a01b0383169163d1b7089a9190879081106107d757fe5b600091825260209091200154600480546001600160a01b0390921691889081106107fd57fe5b60009182526020808320600883040154600154604080516001600160a01b039283166024808301919091528251808303820181526044928301845295860180516001600160e01b03166001600160e01b031960046007909a168a026101000a90970460e090811b881691909117825289549451908c901b909616865289851697860197885292909316908401819052606484018790526080928401928352845160848501528451949690959094909360a4019190808383885b838110156108ce5781810151838201526020016108b6565b50505050905090810190601f1680156108fb5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561091d57600080fd5b505af1158015610931573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561095a57600080fd5b815160208301805160405192949293830192919084600160201b82111561098057600080fd5b90830190602082018581111561099557600080fd5b8251600160201b8111828201881017156109ae57600080fd5b82525081516020918201929091019080838360005b838110156109db5781810151838201526020016109c3565b50505050905090810190601f168015610a085780820380516001836020036101000a031916815260200191505b50604052509195509193505082159050610a745760038481548110610a2957fe5b600091825260208220015460015482546040516001600160a01b039384169492841693909116917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a45b50505060010161072c565b50565b60048181548110610a8f57fe5b9060005260206000209060089182820401919006600402915054906101000a900460e01b81565b6000809054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b0357600080fd5b505afa158015610b17573d6000803e3d6000fd5b505050506040513d6020811015610b2d57600080fd5b505160015460008054604080516331a4b2ed60e11b8152600481018790526001600160a01b039485166024820152918416604483015251929093169263634965da9260648083019360209383900390910190829087803b158015610b9057600080fd5b505af1158015610ba4573d6000803e3d6000fd5b505050506040513d6020811015610bba57600080fd5b5051610a7f576040805162461bcd60e51b815260206004820152601c60248201527f53656e64696e672065746865722073686f756c64207375636365656400000000604482015290519081900360640190fd5b828054828255906000526020600020908101928215610c60579160200282015b82811115610c605781546001600160a01b0319166001600160a01b03843516178255602090920191600190910190610c2d565b50610c6c929150610d22565b5090565b82805482825590600052602060002090600701600890048101928215610d165791602002820160005b83821115610ce45783356001600160e01b03191683826101000a81548163ffffffff021916908360e01c02179055509260200192600401602081600301049283019260010302610c99565b8015610d145782816101000a81549063ffffffff0219169055600401602081600301049283019260010302610ce4565b505b50610c6c929150610d49565b610d4691905b80821115610c6c5780546001600160a01b0319168155600101610d28565b90565b610d4691905b80821115610c6c57805463ffffffff19168155600101610d4f56fe63616e6e6f74207472616e73666572206d6f7265207468616e203130302061737365747353656e64696e672065787465726e616c20746f6b656e2073686f756c642073756363656564a265627a7a7231582090d3e5b9ab60859f9fb0f22dfb34bb2af385f5b142a75b2ee718ed5e6073fc8e64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061009e5760003560e01c8063b1cc005911610066578063b1cc005914610123578063bd7750ab1461024c578063c3f349f2146102ba578063f58b911d146102c2578063f88d331a146102fc5761009e565b8063389f1e09146100a35780635aef7de6146100bd5780636c8e7103146100e15780638ebe67f4146100e9578063a6df16d714610106575b600080fd5b6100ab610319565b60408051918252519081900360200190f35b6100c561031e565b604080516001600160a01b039092168252519081900360200190f35b6100c561032d565b6100c5600480360360208110156100ff57600080fd5b503561033c565b6100c56004803603602081101561011c57600080fd5b5035610363565b61024a600480360360a081101561013957600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b81111561016c57600080fd5b82018360208201111561017e57600080fd5b803590602001918460208302840111600160201b8311171561019f57600080fd5b919390929091602081019035600160201b8111156101bc57600080fd5b8201836020820111156101ce57600080fd5b803590602001918460208302840111600160201b831117156101ef57600080fd5b919390929091602081019035600160201b81111561020c57600080fd5b82018360208201111561021e57600080fd5b803590602001918460208302840111600160201b8311171561023f57600080fd5b509092509050610370565b005b61024a6004803603602081101561026257600080fd5b810190602081018135600160201b81111561027c57600080fd5b82018360208201111561028e57600080fd5b803590602001918460208302840111600160201b831117156102af57600080fd5b50909250905061050f565b61024a610729565b6102df600480360360208110156102d857600080fd5b5035610a82565b604080516001600160e01b03199092168252519081900360200190f35b61024a6004803603602081101561031257600080fd5b5035610ab6565b606481565b6000546001600160a01b031681565b6001546001600160a01b031681565b6002818154811061034957fe5b6000918252602090912001546001600160a01b0316905081565b6003818154811061034957fe5b60648311156103b05760405162461bcd60e51b8152600401808060200182810382526024815260200180610d6b6024913960400191505060405180910390fd5b8281146103fd576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b6000546001600160a01b03161561045b576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b0388166104ae576040805162461bcd60e51b81526020600482015260156024820152746176617461722063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b600080546001600160a01b03808b166001600160a01b03199283161790925560018054928a16929091169190911790556104ea60028787610c0d565b506104f760038585610c0d565b5061050460048383610c70565b505050505050505050565b600254811461055e576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b60025481101561072457600083838381811061057957fe5b90506020020135111561071c576000809054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156105d357600080fd5b505afa1580156105e7573d6000803e3d6000fd5b505050506040513d60208110156105fd57600080fd5b5051600280546001600160a01b039092169163b9a04cdd91908490811061062057fe5b6000918252602090912001546001546001600160a01b03918216911686868681811061064857fe5b60008054604080516001600160e01b031960e08b901b1681526001600160a01b039889166004820152968816602488015260209384029590950135604487015295909516606485015291516084808501959394919391849003019150829087803b1580156106b557600080fd5b505af11580156106c9573d6000803e3d6000fd5b505050506040513d60208110156106df57600080fd5b505161071c5760405162461bcd60e51b8152600401808060200182810382526025815260200180610d8f6025913960400191505060405180910390fd5b600101610561565b505050565b60005b600354811015610a7f5760606000806000809054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561078857600080fd5b505afa15801561079c573d6000803e3d6000fd5b505050506040513d60208110156107b257600080fd5b5051600380549192506001600160a01b0383169163d1b7089a9190879081106107d757fe5b600091825260209091200154600480546001600160a01b0390921691889081106107fd57fe5b60009182526020808320600883040154600154604080516001600160a01b039283166024808301919091528251808303820181526044928301845295860180516001600160e01b03166001600160e01b031960046007909a168a026101000a90970460e090811b881691909117825289549451908c901b909616865289851697860197885292909316908401819052606484018790526080928401928352845160848501528451949690959094909360a4019190808383885b838110156108ce5781810151838201526020016108b6565b50505050905090810190601f1680156108fb5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561091d57600080fd5b505af1158015610931573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561095a57600080fd5b815160208301805160405192949293830192919084600160201b82111561098057600080fd5b90830190602082018581111561099557600080fd5b8251600160201b8111828201881017156109ae57600080fd5b82525081516020918201929091019080838360005b838110156109db5781810151838201526020016109c3565b50505050905090810190601f168015610a085780820380516001836020036101000a031916815260200191505b50604052509195509193505082159050610a745760038481548110610a2957fe5b600091825260208220015460015482546040516001600160a01b039384169492841693909116917fc8894f26f396ce8c004245c8b7cd1b92103a6e4302fcbab883987149ac01b7ec91a45b50505060010161072c565b50565b60048181548110610a8f57fe5b9060005260206000209060089182820401919006600402915054906101000a900460e01b81565b6000809054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b0357600080fd5b505afa158015610b17573d6000803e3d6000fd5b505050506040513d6020811015610b2d57600080fd5b505160015460008054604080516331a4b2ed60e11b8152600481018790526001600160a01b039485166024820152918416604483015251929093169263634965da9260648083019360209383900390910190829087803b158015610b9057600080fd5b505af1158015610ba4573d6000803e3d6000fd5b505050506040513d6020811015610bba57600080fd5b5051610a7f576040805162461bcd60e51b815260206004820152601c60248201527f53656e64696e672065746865722073686f756c64207375636365656400000000604482015290519081900360640190fd5b828054828255906000526020600020908101928215610c60579160200282015b82811115610c605781546001600160a01b0319166001600160a01b03843516178255602090920191600190910190610c2d565b50610c6c929150610d22565b5090565b82805482825590600052602060002090600701600890048101928215610d165791602002820160005b83821115610ce45783356001600160e01b03191683826101000a81548163ffffffff021916908360e01c02179055509260200192600401602081600301049283019260010302610c99565b8015610d145782816101000a81549063ffffffff0219169055600401602081600301049283019260010302610ce4565b505b50610c6c929150610d49565b610d4691905b80821115610c6c5780546001600160a01b0319168155600101610d28565b90565b610d4691905b80821115610c6c57805463ffffffff19168155600101610d4f56fe63616e6e6f74207472616e73666572206d6f7265207468616e203130302061737365747353656e64696e672065787465726e616c20746f6b656e2073686f756c642073756363656564a265627a7a7231582090d3e5b9ab60859f9fb0f22dfb34bb2af385f5b142a75b2ee718ed5e6073fc8e64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/UniversalScheme.json b/contracts/0.0.1-rc.53/UniversalScheme.json new file mode 100644 index 00000000..41ccf091 --- /dev/null +++ b/contracts/0.0.1-rc.53/UniversalScheme.json @@ -0,0 +1,10 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "UniversalScheme", + "sourceName": "contracts/universalSchemes/UniversalScheme.sol", + "abi": [], + "bytecode": "0x6080604052348015600f57600080fd5b50603e80601d6000396000f3fe6080604052600080fdfea265627a7a72315820643471e9ccc7c66c3e13c1f207c9df276a92096fd3236fa009e0e782bb37590c64736f6c63430005110032", + "deployedBytecode": "0x6080604052600080fdfea265627a7a72315820643471e9ccc7c66c3e13c1f207c9df276a92096fd3236fa009e0e782bb37590c64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/UniversalSchemeInterface.json b/contracts/0.0.1-rc.53/UniversalSchemeInterface.json new file mode 100644 index 00000000..36dcff5e --- /dev/null +++ b/contracts/0.0.1-rc.53/UniversalSchemeInterface.json @@ -0,0 +1,10 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "UniversalSchemeInterface", + "sourceName": "contracts/universalSchemes/UniversalSchemeInterface.sol", + "abi": [], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/UniversalSchemeMock.json b/contracts/0.0.1-rc.53/UniversalSchemeMock.json new file mode 100644 index 00000000..411ae2e0 --- /dev/null +++ b/contracts/0.0.1-rc.53/UniversalSchemeMock.json @@ -0,0 +1,113 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "UniversalSchemeMock", + "sourceName": "contracts/test/UniversalSchemeMock.sol", + "abi": [ + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_a", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_b", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_c", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "genericCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_a", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_b", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_c", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "genericCallDirect", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610661806100206000396000f3fe608060405234801561001057600080fd5b50600436106100355760003560e01c80624080961461003a578063b9642c0e14610107575b600080fd5b610084600480360360c081101561005057600080fd5b506001600160a01b038135811691602081013582169160408201359160608101359091169060808101359060a00135610151565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b838110156100cb5781810151838201526020016100b3565b50505050905090810190601f1680156100f85780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b610084600480360360c081101561011d57600080fd5b506001600160a01b038135811691602081013582169160408201359160608101359091169060808101359060a0013561035c565b6040805160248082018790526001600160a01b038681166044808501919091526064808501889052855180860382018152608495860187526020810180516001600160e01b0316630f3e8dcd60e41b178152965163057e2c8b60e31b81528c851660048201908152938101899052606095810186815282519382019390935281516000989697958f1696632bf16458968f9694958c95949093910191908083838e5b8381101561020b5781810151838201526020016101f3565b50505050905090810190601f1680156102385780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561025957600080fd5b505af115801561026d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561029657600080fd5b8151602083018051604051929492938301929190846401000000008211156102bd57600080fd5b9083019060208201858111156102d257600080fd5b82516401000000008111828201881017156102ec57600080fd5b82525081516020918201929091019080838360005b83811015610319578181015183820152602001610301565b50505050905090810190601f1680156103465780820380516001836020036101000a031916815260200191505b5060405250505091509150965096945050505050565b600060606000886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561039b57600080fd5b505afa1580156103af573d6000803e3d6000fd5b505050506040513d60208110156103c557600080fd5b81019080805190602001909291905050509050806001600160a01b031663d1b7089a8989898960405160240180848152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050604051602081830303815290604052630f3e8dcd60e41b6001600160e01b0319166020820180516001600160e01b0383818316178352505050508c886040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b0316815260200180602001846001600160a01b03166001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156104d95781810151838201526020016104c1565b50505050905090810190601f1680156105065780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561052857600080fd5b505af115801561053c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561056557600080fd5b81516020830180516040519294929383019291908464010000000082111561058c57600080fd5b9083019060208201858111156105a157600080fd5b82516401000000008111828201881017156105bb57600080fd5b82525081516020918201929091019080838360005b838110156105e85781810151838201526020016105d0565b50505050905090810190601f1680156106155780820380516001836020036101000a031916815260200191505b50604052505050925092505096509694505050505056fea265627a7a72315820ef8b490e4c47f5320ac13f1ec4cac13608f257d02a8d65ac561689c0309c712e64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100355760003560e01c80624080961461003a578063b9642c0e14610107575b600080fd5b610084600480360360c081101561005057600080fd5b506001600160a01b038135811691602081013582169160408201359160608101359091169060808101359060a00135610151565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b838110156100cb5781810151838201526020016100b3565b50505050905090810190601f1680156100f85780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b610084600480360360c081101561011d57600080fd5b506001600160a01b038135811691602081013582169160408201359160608101359091169060808101359060a0013561035c565b6040805160248082018790526001600160a01b038681166044808501919091526064808501889052855180860382018152608495860187526020810180516001600160e01b0316630f3e8dcd60e41b178152965163057e2c8b60e31b81528c851660048201908152938101899052606095810186815282519382019390935281516000989697958f1696632bf16458968f9694958c95949093910191908083838e5b8381101561020b5781810151838201526020016101f3565b50505050905090810190601f1680156102385780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561025957600080fd5b505af115801561026d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561029657600080fd5b8151602083018051604051929492938301929190846401000000008211156102bd57600080fd5b9083019060208201858111156102d257600080fd5b82516401000000008111828201881017156102ec57600080fd5b82525081516020918201929091019080838360005b83811015610319578181015183820152602001610301565b50505050905090810190601f1680156103465780820380516001836020036101000a031916815260200191505b5060405250505091509150965096945050505050565b600060606000886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561039b57600080fd5b505afa1580156103af573d6000803e3d6000fd5b505050506040513d60208110156103c557600080fd5b81019080805190602001909291905050509050806001600160a01b031663d1b7089a8989898960405160240180848152602001836001600160a01b03166001600160a01b031681526020018281526020019350505050604051602081830303815290604052630f3e8dcd60e41b6001600160e01b0319166020820180516001600160e01b0383818316178352505050508c886040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b0316815260200180602001846001600160a01b03166001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019080838360005b838110156104d95781810151838201526020016104c1565b50505050905090810190601f1680156105065780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561052857600080fd5b505af115801561053c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561056557600080fd5b81516020830180516040519294929383019291908464010000000082111561058c57600080fd5b9083019060208201858111156105a157600080fd5b82516401000000008111828201881017156105bb57600080fd5b82525081516020918201929091019080838360005b838110156105e85781810151838201526020016105d0565b50505050905090810190601f1680156106155780820380516001836020036101000a031916815260200191505b50604052505050925092505096509694505050505056fea265627a7a72315820ef8b490e4c47f5320ac13f1ec4cac13608f257d02a8d65ac561689c0309c712e64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/UpgradeScheme.json b/contracts/0.0.1-rc.53/UpgradeScheme.json new file mode 100644 index 00000000..62814e2a --- /dev/null +++ b/contracts/0.0.1-rc.53/UpgradeScheme.json @@ -0,0 +1,544 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "UpgradeScheme", + "sourceName": "contracts/universalSchemes/UpgradeScheme.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_newUpgradeScheme", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_params", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "ChangeUpgradeSchemeProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_newController", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewUpgradeProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_voteParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_intVote", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationsProposals", + "outputs": [ + { + "internalType": "address", + "name": "upgradeContract", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "params", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "proposalType", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "voteParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "intVote", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_params", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeChangeUpgradingScheme", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_newController", + "type": "address" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeUpgrade", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_voteParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_intVote", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611c97806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639588378e1161008c578063bea75f2811610066578063bea75f2814610382578063d29b5d2f146103be578063da816894146103f0578063f81f8bf6146104b6576100ea565b80639588378e146103025780639d4c162d1461032e578063b551c37314610365576100ea565b806360bdbb3f116100c857806360bdbb3f146101bf57806368e14dac146101eb5780636b8eb4031461021757806374ad5c3314610243576100ea565b806302506804146100ef57806306e3a9781461012d5780632453732a14610181575b600080fd5b61010c6004803603602081101561010557600080fd5b50356104e8565b604080519283526001600160a01b0390911660208301528051918290030190f35b6101596004803603604081101561014357600080fd5b506001600160a01b03813516906020013561050a565b604080516001600160a01b039094168452602084019290925282820152519081900360600190f35b6101ad6004803603604081101561019757600080fd5b50803590602001356001600160a01b031661053e565b60408051918252519081900360200190f35b61010c600480360360408110156101d557600080fd5b506001600160a01b038135169060200135610580565b6101ad6004803603604081101561020157600080fd5b50803590602001356001600160a01b03166105aa565b6101ad6004803603604081101561022d57600080fd5b506001600160a01b0381351690602001356105ef565b6101ad6004803603606081101561025957600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561028d57600080fd5b82018360208201111561029f57600080fd5b803590602001918460018302840111640100000000831117156102c157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106ad945050505050565b6101ad6004803603604081101561031857600080fd5b506001600160a01b0381351690602001356108fe565b6103516004803603604081101561034457600080fd5b5080359060200135610b90565b604080519115158252519081900360200190f35b6101ad6004803603602081101561037b57600080fd5b503561100b565b6103516004803603608081101561039857600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611293565b610351600480360360608110156103d457600080fd5b508035906001600160a01b036020820135169060400135611435565b6101ad6004803603608081101561040657600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561044157600080fd5b82018360208201111561045357600080fd5b8035906020019184600183028401116401000000008311171561047557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506115ce945050505050565b610351600480360360608110156104cc57600080fd5b508035906001600160a01b0360208201351690604001356118b4565b600260205260009081526040902080546001909101546001600160a01b031682565b600160208181526000938452604080852090915291835291208054918101546002909101546001600160a01b039092169183565b6040805160208082018590526bffffffffffffffffffffffff19606085901b168284015282516034818403018152605490920190925280519101205b92915050565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b6000806105b7848461053e565b600081815260026020526040902085815560010180546001600160a01b0386166001600160a01b031990911617905591505092915050565b336000908152602081815260408083208484529091528120600101546001600160a01b03168061062357600091505061057a565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561067957600080fd5b505afa15801561068d573d6000803e3d6000fd5b505050506040513d60208110156106a357600080fd5b5051949350505050565b60006106b7611c2b565b600260006106c487611a15565b8152602080820192909252604090810160009081208251808401845281548082526001909201546001600160a01b039081168287018190528551634439bdaf60e11b8152600260048201526024810194909452336044850152908b166064840152935190955091936388737b5e9260848084019382900301818787803b15801561074d57600080fd5b505af1158015610761573d6000803e3d6000fd5b505050506040513d602081101561077757600080fd5b50519050610783611c42565b5060408051606080820183526001600160a01b038881168084526000602080860182815260018789018181528f87168086528285528a86208c875285528a86208a5181546001600160a01b031916908a16178155935192840192909255516002909201919091558982015188519485528483018981528d51998601999099528c519798951696899691957f5378fb6111ece3f1032a0e9b60cb0caa886ec384da4300631570473ae5a4fbc0958f958f95919492939285019291860191908190849084905b8381101561085f578181015183820152602001610847565b50505050905090810190601f16801561088c5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a4506040805180820182524381526001600160a01b0397881660208083019182529485015189166000908152808652838120858252909552919093209251835551600190920180546001600160a01b0319169290961691909117909455509192915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561095857600080fd5b505afa15801561096c573d6000803e3d6000fd5b505050506040513d602081101561098257600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156109d457600080fd5b505afa1580156109e8573d6000803e3d6000fd5b505050506040513d60208110156109fe57600080fd5b5051610a4c576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610a54611c2b565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610a9b576000935050610b88565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610ad857600080fd5b505afa158015610aec573d6000803e3d6000fd5b505050506040513d6020811015610b0257600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b158015610b5857600080fd5b505afa158015610b6c573d6000803e3d6000fd5b505050506040513d6020811015610b8257600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316610bfd576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208784529091529020600101546001600160a01b0316610c2a611c42565b506001600160a01b0380821660009081526001602081815260408084208a8552825292839020835160608101855281549095168552918201549084015260020154908201819052610c7a57600080fd5b6001600160a01b03821660008181526001602081815260408084208b855290915280832080546001600160a01b03191681559182018390556002909101829055518892917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a38460011415610fbf576000826001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610d2557600080fd5b505afa158015610d39573d6000803e3d6000fd5b505050506040513d6020811015610d4f57600080fd5b5051604083015190915060011415610dec578151604080516308484f7f60e31b81526001600160a01b03928316600482015285831660248201529051918316916342427bf8916044808201926020929091908290030181600087803b158015610db757600080fd5b505af1158015610dcb573d6000803e3d6000fd5b505050506040513d6020811015610de157600080fd5b5051610dec57600080fd5b816040015160021415610fbd5760408051634da8f1ad60e11b81523060048201526001600160a01b0385811660248301529151600092841691639b51e35a916044808301926020929190829003018186803b158015610e4a57600080fd5b505afa158015610e5e573d6000803e3d6000fd5b505050506040513d6020811015610e7457600080fd5b505183516020858101516040805163e869d45f60e01b81526001600160a01b03948516600482015260248101929092526001600160e01b0319851660448301528884166064830152519394509185169263e869d45f9260848082019392918290030181600087803b158015610ee857600080fd5b505af1158015610efc573d6000803e3d6000fd5b505050506040513d6020811015610f1257600080fd5b5051610f1d57600080fd5b82516001600160a01b03163014610fbb57816001600160a01b0316636c525b13856040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b03168152602001915050602060405180830381600087803b158015610f8657600080fd5b505af1158015610f9a573d6000803e3d6000fd5b505050506040513d6020811015610fb057600080fd5b5051610fbb57600080fd5b505b505b60408051868152905187916001600160a01b038516917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc09181900360200190a350600195945050505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561106557600080fd5b505afa158015611079573d6000803e3d6000fd5b505050506040513d602081101561108f57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156110e157600080fd5b505afa1580156110f5573d6000803e3d6000fd5b505050506040513d602081101561110b57600080fd5b5051611159576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b611161611c2b565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526111a857600093505061128c565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156111e557600080fd5b505afa1580156111f9573d6000803e3d6000fd5b505050506040513d602081101561120f57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b15801561125c57600080fd5b505afa158015611270573d6000803e3d6000fd5b505050506040513d602081101561128657600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611300576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061133457600092505061142c565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561136d57600080fd5b505afa158015611381573d6000803e3d6000fd5b505050506040513d602081101561139757600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b1580156113fc57600080fd5b505af1158015611410573d6000803e3d6000fd5b505050506040513d602081101561142657600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166114a2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806114d65760009250506115c6565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561150f57600080fd5b505afa158015611523573d6000803e3d6000fd5b505050506040513d602081101561153957600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b15801561159657600080fd5b505af11580156115aa573d6000803e3d6000fd5b505050506040513d60208110156115c057600080fd5b50519250505b509392505050565b60006115d8611c2b565b600260006115e588611a15565b8152602080820192909252604090810160009081208251808401845281548082526001909201546001600160a01b039081168287018190528551634439bdaf60e11b8152600260048201526024810194909452336044850152908c16606484015293519095509293919284926388737b5e926084808201939182900301818787803b15801561167357600080fd5b505af1158015611687573d6000803e3d6000fd5b505050506040513d602081101561169d57600080fd5b50516001600160a01b0389166000908152600160209081526040808320848452909152902060020154909150156116d357600080fd5b6116db611c42565b6040518060600160405280896001600160a01b031681526020018881526020016002815250905080600160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600084815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550602082015181600101556040820151816002015590505083602001516001600160a01b0316828a6001600160a01b03167f54db9b1773952b7528e7872ab8f8411827fe4d14f722aecf6dc0f0fd59de99b88b8b8b60405180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156118155781810151838201526020016117fd565b50505050905090810190601f1680156118425780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a4506040805180820182524381526001600160a01b03998a166020808301918252948b166000908152808652838120858252909552919093209251835551600190920180546001600160a01b03191692909816919091179096555093949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611921576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806119555760009250506115c6565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561198e57600080fd5b505afa1580156119a2573d6000803e3d6000fd5b505050506040513d60208110156119b857600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b15801561159657600080fd5b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a5057600080fd5b505afa158015611a64573d6000803e3d6000fd5b505050506040513d6020811015611a7a57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015611acc57600080fd5b505afa158015611ae0573d6000803e3d6000fd5b505050506040513d6020811015611af657600080fd5b5051611b44576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b7d57600080fd5b505afa158015611b91573d6000803e3d6000fd5b505050506040513d6020811015611ba757600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b158015611bf957600080fd5b505afa158015611c0d573d6000803e3d6000fd5b505050506040513d6020811015611c2357600080fd5b505192915050565b604080518082019091526000808252602082015290565b60408051606081018252600080825260208201819052918101919091529056fea265627a7a72315820f03bf49c8eb0558b0928c6f1063df8aaa17240af0c3aad7d8e008a3d6d6bfc2f64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639588378e1161008c578063bea75f2811610066578063bea75f2814610382578063d29b5d2f146103be578063da816894146103f0578063f81f8bf6146104b6576100ea565b80639588378e146103025780639d4c162d1461032e578063b551c37314610365576100ea565b806360bdbb3f116100c857806360bdbb3f146101bf57806368e14dac146101eb5780636b8eb4031461021757806374ad5c3314610243576100ea565b806302506804146100ef57806306e3a9781461012d5780632453732a14610181575b600080fd5b61010c6004803603602081101561010557600080fd5b50356104e8565b604080519283526001600160a01b0390911660208301528051918290030190f35b6101596004803603604081101561014357600080fd5b506001600160a01b03813516906020013561050a565b604080516001600160a01b039094168452602084019290925282820152519081900360600190f35b6101ad6004803603604081101561019757600080fd5b50803590602001356001600160a01b031661053e565b60408051918252519081900360200190f35b61010c600480360360408110156101d557600080fd5b506001600160a01b038135169060200135610580565b6101ad6004803603604081101561020157600080fd5b50803590602001356001600160a01b03166105aa565b6101ad6004803603604081101561022d57600080fd5b506001600160a01b0381351690602001356105ef565b6101ad6004803603606081101561025957600080fd5b6001600160a01b03823581169260208101359091169181019060608101604082013564010000000081111561028d57600080fd5b82018360208201111561029f57600080fd5b803590602001918460018302840111640100000000831117156102c157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106ad945050505050565b6101ad6004803603604081101561031857600080fd5b506001600160a01b0381351690602001356108fe565b6103516004803603604081101561034457600080fd5b5080359060200135610b90565b604080519115158252519081900360200190f35b6101ad6004803603602081101561037b57600080fd5b503561100b565b6103516004803603608081101561039857600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611293565b610351600480360360608110156103d457600080fd5b508035906001600160a01b036020820135169060400135611435565b6101ad6004803603608081101561040657600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561044157600080fd5b82018360208201111561045357600080fd5b8035906020019184600183028401116401000000008311171561047557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506115ce945050505050565b610351600480360360608110156104cc57600080fd5b508035906001600160a01b0360208201351690604001356118b4565b600260205260009081526040902080546001909101546001600160a01b031682565b600160208181526000938452604080852090915291835291208054918101546002909101546001600160a01b039092169183565b6040805160208082018590526bffffffffffffffffffffffff19606085901b168284015282516034818403018152605490920190925280519101205b92915050565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b6000806105b7848461053e565b600081815260026020526040902085815560010180546001600160a01b0386166001600160a01b031990911617905591505092915050565b336000908152602081815260408083208484529091528120600101546001600160a01b03168061062357600091505061057a565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561067957600080fd5b505afa15801561068d573d6000803e3d6000fd5b505050506040513d60208110156106a357600080fd5b5051949350505050565b60006106b7611c2b565b600260006106c487611a15565b8152602080820192909252604090810160009081208251808401845281548082526001909201546001600160a01b039081168287018190528551634439bdaf60e11b8152600260048201526024810194909452336044850152908b166064840152935190955091936388737b5e9260848084019382900301818787803b15801561074d57600080fd5b505af1158015610761573d6000803e3d6000fd5b505050506040513d602081101561077757600080fd5b50519050610783611c42565b5060408051606080820183526001600160a01b038881168084526000602080860182815260018789018181528f87168086528285528a86208c875285528a86208a5181546001600160a01b031916908a16178155935192840192909255516002909201919091558982015188519485528483018981528d51998601999099528c519798951696899691957f5378fb6111ece3f1032a0e9b60cb0caa886ec384da4300631570473ae5a4fbc0958f958f95919492939285019291860191908190849084905b8381101561085f578181015183820152602001610847565b50505050905090810190601f16801561088c5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a4506040805180820182524381526001600160a01b0397881660208083019182529485015189166000908152808652838120858252909552919093209251835551600190920180546001600160a01b0319169290961691909117909455509192915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561095857600080fd5b505afa15801561096c573d6000803e3d6000fd5b505050506040513d602081101561098257600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156109d457600080fd5b505afa1580156109e8573d6000803e3d6000fd5b505050506040513d60208110156109fe57600080fd5b5051610a4c576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610a54611c2b565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610a9b576000935050610b88565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610ad857600080fd5b505afa158015610aec573d6000803e3d6000fd5b505050506040513d6020811015610b0257600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b158015610b5857600080fd5b505afa158015610b6c573d6000803e3d6000fd5b505050506040513d6020811015610b8257600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316610bfd576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208784529091529020600101546001600160a01b0316610c2a611c42565b506001600160a01b0380821660009081526001602081815260408084208a8552825292839020835160608101855281549095168552918201549084015260020154908201819052610c7a57600080fd5b6001600160a01b03821660008181526001602081815260408084208b855290915280832080546001600160a01b03191681559182018390556002909101829055518892917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a38460011415610fbf576000826001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610d2557600080fd5b505afa158015610d39573d6000803e3d6000fd5b505050506040513d6020811015610d4f57600080fd5b5051604083015190915060011415610dec578151604080516308484f7f60e31b81526001600160a01b03928316600482015285831660248201529051918316916342427bf8916044808201926020929091908290030181600087803b158015610db757600080fd5b505af1158015610dcb573d6000803e3d6000fd5b505050506040513d6020811015610de157600080fd5b5051610dec57600080fd5b816040015160021415610fbd5760408051634da8f1ad60e11b81523060048201526001600160a01b0385811660248301529151600092841691639b51e35a916044808301926020929190829003018186803b158015610e4a57600080fd5b505afa158015610e5e573d6000803e3d6000fd5b505050506040513d6020811015610e7457600080fd5b505183516020858101516040805163e869d45f60e01b81526001600160a01b03948516600482015260248101929092526001600160e01b0319851660448301528884166064830152519394509185169263e869d45f9260848082019392918290030181600087803b158015610ee857600080fd5b505af1158015610efc573d6000803e3d6000fd5b505050506040513d6020811015610f1257600080fd5b5051610f1d57600080fd5b82516001600160a01b03163014610fbb57816001600160a01b0316636c525b13856040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b03168152602001915050602060405180830381600087803b158015610f8657600080fd5b505af1158015610f9a573d6000803e3d6000fd5b505050506040513d6020811015610fb057600080fd5b5051610fbb57600080fd5b505b505b60408051868152905187916001600160a01b038516917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc09181900360200190a350600195945050505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561106557600080fd5b505afa158015611079573d6000803e3d6000fd5b505050506040513d602081101561108f57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156110e157600080fd5b505afa1580156110f5573d6000803e3d6000fd5b505050506040513d602081101561110b57600080fd5b5051611159576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b611161611c2b565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526111a857600093505061128c565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156111e557600080fd5b505afa1580156111f9573d6000803e3d6000fd5b505050506040513d602081101561120f57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b15801561125c57600080fd5b505afa158015611270573d6000803e3d6000fd5b505050506040513d602081101561128657600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611300576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061133457600092505061142c565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561136d57600080fd5b505afa158015611381573d6000803e3d6000fd5b505050506040513d602081101561139757600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b1580156113fc57600080fd5b505af1158015611410573d6000803e3d6000fd5b505050506040513d602081101561142657600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166114a2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806114d65760009250506115c6565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561150f57600080fd5b505afa158015611523573d6000803e3d6000fd5b505050506040513d602081101561153957600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b15801561159657600080fd5b505af11580156115aa573d6000803e3d6000fd5b505050506040513d60208110156115c057600080fd5b50519250505b509392505050565b60006115d8611c2b565b600260006115e588611a15565b8152602080820192909252604090810160009081208251808401845281548082526001909201546001600160a01b039081168287018190528551634439bdaf60e11b8152600260048201526024810194909452336044850152908c16606484015293519095509293919284926388737b5e926084808201939182900301818787803b15801561167357600080fd5b505af1158015611687573d6000803e3d6000fd5b505050506040513d602081101561169d57600080fd5b50516001600160a01b0389166000908152600160209081526040808320848452909152902060020154909150156116d357600080fd5b6116db611c42565b6040518060600160405280896001600160a01b031681526020018881526020016002815250905080600160008b6001600160a01b03166001600160a01b03168152602001908152602001600020600084815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550602082015181600101556040820151816002015590505083602001516001600160a01b0316828a6001600160a01b03167f54db9b1773952b7528e7872ab8f8411827fe4d14f722aecf6dc0f0fd59de99b88b8b8b60405180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156118155781810151838201526020016117fd565b50505050905090810190601f1680156118425780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a4506040805180820182524381526001600160a01b03998a166020808301918252948b166000908152808652838120858252909552919093209251835551600190920180546001600160a01b03191692909816919091179096555093949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316611921576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806119555760009250506115c6565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561198e57600080fd5b505afa1580156119a2573d6000803e3d6000fd5b505050506040513d60208110156119b857600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b15801561159657600080fd5b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a5057600080fd5b505afa158015611a64573d6000803e3d6000fd5b505050506040513d6020811015611a7a57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015611acc57600080fd5b505afa158015611ae0573d6000803e3d6000fd5b505050506040513d6020811015611af657600080fd5b5051611b44576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b7d57600080fd5b505afa158015611b91573d6000803e3d6000fd5b505050506040513d6020811015611ba757600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b158015611bf957600080fd5b505afa158015611c0d573d6000803e3d6000fd5b505050506040513d6020811015611c2357600080fd5b505192915050565b604080518082019091526000808252602082015290565b60408051606081018252600080825260208201819052918101919091529056fea265627a7a72315820f03bf49c8eb0558b0928c6f1063df8aaa17240af0c3aad7d8e008a3d6d6bfc2f64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/VoteInOrganizationScheme.json b/contracts/0.0.1-rc.53/VoteInOrganizationScheme.json new file mode 100644 index 00000000..51f79f55 --- /dev/null +++ b/contracts/0.0.1-rc.53/VoteInOrganizationScheme.json @@ -0,0 +1,498 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "VoteInOrganizationScheme", + "sourceName": "contracts/universalSchemes/VoteInOrganizationScheme.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "contract IntVoteInterface", + "name": "_originalIntVote", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_originalProposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewVoteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_callReturnValue", + "type": "bytes" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_voteParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_intVote", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationsProposals", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "originalIntVote", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "originalProposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "vote", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "exist", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "intVote", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "voteParams", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_originalIntVote", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_originalProposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeVote", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "bytes32", + "name": "_voteParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_intVote", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611c2f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636b8eb4031161008c578063b551c37311610066578063b551c37314610383578063bea75f28146103a0578063d29b5d2f146103dc578063f81f8bf61461040e576100cf565b80636b8eb403146102f45780639588378e146103205780639d4c162d1461034c576100cf565b806302506804146100d457806306e3a9781461011457806319910699146101725780632453732a1461024f57806360bdbb3f1461027b57806368e14dac146102c8575b600080fd5b6100f1600480360360208110156100ea57600080fd5b5035610440565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6101406004803603604081101561012a57600080fd5b506001600160a01b038135169060200135610465565b604080516001600160a01b03909516855260208501939093528383019190915215156060830152519081900360800190f35b61023d600480360360a081101561018857600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a0810160808201356401000000008111156101c857600080fd5b8201836020820111156101da57600080fd5b803590602001918460018302840111640100000000831117156101fc57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506104a4945050505050565b60408051918252519081900360200190f35b61023d6004803603604081101561026557600080fd5b50803590602001356001600160a01b0316610909565b6102a76004803603604081101561029157600080fd5b506001600160a01b03813516906020013561094b565b604080519283526001600160a01b0390911660208301528051918290030190f35b61023d600480360360408110156102de57600080fd5b50803590602001356001600160a01b0316610975565b61023d6004803603604081101561030a57600080fd5b506001600160a01b0381351690602001356109bb565b61023d6004803603604081101561033657600080fd5b506001600160a01b038135169060200135610a79565b61036f6004803603604081101561036257600080fd5b5080359060200135610d0b565b604080519115158252519081900360200190f35b61023d6004803603602081101561039957600080fd5b503561122a565b61036f600480360360808110156103b657600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356114b2565b61036f600480360360608110156103f257600080fd5b508035906001600160a01b036020820135169060400135611654565b61036f6004803603606081101561042457600080fd5b508035906001600160a01b0360208201351690604001356117ed565b600260205260009081526040902080546001909101546001600160a01b039091169082565b6001602081815260009384526040808520909152918352912080549181015460028201546003909201546001600160a01b039093169290919060ff1684565b60006104ae611b64565b600260006104bb8961194e565b8152602080820192909252604090810160009081208251808401845281546001600160a01b039081168083526001909301549582019590955283516328a15e0f60e11b815284519196509194929384938c1692635142bc1e9260048083019392829003018186803b15801561052f57600080fd5b505afa158015610543573d6000803e3d6000fd5b505050506040513d604081101561055957600080fd5b50805160209091015190925090508087118015906105775750818710155b6105b25760405162461bcd60e51b8152600401808060200182810382526023815260200180611ba36023913960400191505060405180910390fd5b886001600160a01b031663a003651d896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156105f657600080fd5b505afa15801561060a573d6000803e3d6000fd5b505050506040513d602081101561062057600080fd5b50518711156106605760405162461bcd60e51b8152600401808060200182810382526035815260200180611bc66035913960400191505060405180910390fd5b60208085015160408051634439bdaf60e11b81526002600482015260248101929092523360448301526001600160a01b038d811660648401529051600093918716926388737b5e92608480830193919282900301818787803b1580156106c557600080fd5b505af11580156106d9573d6000803e3d6000fd5b505050506040513d60208110156106ef57600080fd5b8101908080519060200190929190505050905060405180608001604052808b6001600160a01b031681526020018a815260200189815260200160011515815250600160008d6001600160a01b03166001600160a01b03168152602001908152602001600020600083815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550602082015181600101556040820151816002015560608201518160030160006101000a81548160ff02191690831515021790555090505084600001516001600160a01b0316818c6001600160a01b03167f612d055dc0e586b349ae636d1de3fc64fbcf367d8c8c7406bd1823267cfe7e208d8d8d8d60405180856001600160a01b03166001600160a01b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610868578181015183820152602001610850565b50505050905090810190601f1680156108955780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a46040805180820182524381526001600160a01b039c8d166020808301918252968e166000908152808852838120858252909752919095209451855551600190940180546001600160a01b03191694909b169390931790995550979650505050505050565b6040805160208082018590526bffffffffffffffffffffffff19606085901b168284015282516034818403018152605490920190925280519101205b92915050565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b6000806109828484610909565b60008181526002602052604090206001810186905580546001600160a01b0386166001600160a01b031990911617905591505092915050565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806109ef576000915050610945565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610a4557600080fd5b505afa158015610a59573d6000803e3d6000fd5b505050506040513d6020811015610a6f57600080fd5b5051949350505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610ad357600080fd5b505afa158015610ae7573d6000803e3d6000fd5b505050506040513d6020811015610afd57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610b4f57600080fd5b505afa158015610b63573d6000803e3d6000fd5b505050506040513d6020811015610b7957600080fd5b5051610bc7576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610bcf611b64565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610c16576000935050610d03565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610c5357600080fd5b505afa158015610c67573d6000803e3d6000fd5b505050506040513d6020811015610c7d57600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b158015610cd357600080fd5b505afa158015610ce7573d6000803e3d6000fd5b505050506040513d6020811015610cfd57600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316610d78576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208784529091529020600101546001600160a01b0316610da5611b7b565b506001600160a01b0380821660009081526001602081815260408084208a855282529283902083516080810185528154909516855291820154908401526002810154918301919091526003015460ff16151560608201819052610e0757600080fd5b6001600160a01b03821660008181526001602081815260408084208b855290915280832080546001600160a01b0319168155918201839055600282018390556003909101805460ff19169055518892917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3606060008660011415611170576000846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ec257600080fd5b505afa158015610ed6573d6000803e3d6000fd5b505050506040513d6020811015610eec57600080fd5b81019080805190602001909291905050509050806001600160a01b031663d1b7089a856000015186602001518760400151600030604051602401808581526020018481526020018360ff168152602001826001600160a01b03166001600160a01b0316815260200194505050505060405160208183030381529060405263359afa4960e01b6001600160e01b0319166020820180516001600160e01b0383818316178352505050508860006040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b0316815260200180602001846001600160a01b03166001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015611019578181015183820152602001611001565b50505050905090810190601f1680156110465780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561106857600080fd5b505af115801561107c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160409081528110156110a557600080fd5b8151602083018051604051929492938301929190846401000000008211156110cc57600080fd5b9083019060208201858111156110e157600080fd5b82516401000000008111828201881017156110fb57600080fd5b82525081516020918201929091019080838360005b83811015611128578181015183820152602001611110565b50505050905090810190601f1680156111555780820380516001836020036101000a031916815260200191505b5060405250505080945081935050508161116e57600080fd5b505b87846001600160a01b03167f7c1ea889aeb873862488f79e0228a2240ec23e80244de201dd45f39f603fc3c489856040518083815260200180602001828103825283818151815260200191508051906020019080838360005b838110156111e15781810151838201526020016111c9565b50505050905090810190601f16801561120e5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a3506001979650505050505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561128457600080fd5b505afa158015611298573d6000803e3d6000fd5b505050506040513d60208110156112ae57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561130057600080fd5b505afa158015611314573d6000803e3d6000fd5b505050506040513d602081101561132a57600080fd5b5051611378576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b611380611b64565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526113c75760009350506114ab565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561140457600080fd5b505afa158015611418573d6000803e3d6000fd5b505050506040513d602081101561142e57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b15801561147b57600080fd5b505afa15801561148f573d6000803e3d6000fd5b505050506040513d60208110156114a557600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661151f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061155357600092505061164b565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561158c57600080fd5b505afa1580156115a0573d6000803e3d6000fd5b505050506040513d60208110156115b657600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b15801561161b57600080fd5b505af115801561162f573d6000803e3d6000fd5b505050506040513d602081101561164557600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166116c1576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806116f55760009250506117e5565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561172e57600080fd5b505afa158015611742573d6000803e3d6000fd5b505050506040513d602081101561175857600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b1580156117b557600080fd5b505af11580156117c9573d6000803e3d6000fd5b505050506040513d60208110156117df57600080fd5b50519250505b509392505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661185a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061188e5760009250506117e5565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156118c757600080fd5b505afa1580156118db573d6000803e3d6000fd5b505050506040513d60208110156118f157600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b1580156117b557600080fd5b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561198957600080fd5b505afa15801561199d573d6000803e3d6000fd5b505050506040513d60208110156119b357600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015611a0557600080fd5b505afa158015611a19573d6000803e3d6000fd5b505050506040513d6020811015611a2f57600080fd5b5051611a7d576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611ab657600080fd5b505afa158015611aca573d6000803e3d6000fd5b505050506040513d6020811015611ae057600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b158015611b3257600080fd5b505afa158015611b46573d6000803e3d6000fd5b505050506040513d6020811015611b5c57600080fd5b505192915050565b604080518082019091526000808252602082015290565b6040805160808101825260008082526020820181905291810182905260608101919091529056fe766f74652073686f756c6420626520696e2074686520616c6c6f7765642072616e6765766f74652073686f756c64206265203c3d206f726967696e616c2070726f706f73616c206e756d626572206f662063686f69636573a265627a7a72315820b742c0eda33ee54c5f6e695b6f869191255f3502df671fe4ecb1ea0816efee2c64736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636b8eb4031161008c578063b551c37311610066578063b551c37314610383578063bea75f28146103a0578063d29b5d2f146103dc578063f81f8bf61461040e576100cf565b80636b8eb403146102f45780639588378e146103205780639d4c162d1461034c576100cf565b806302506804146100d457806306e3a9781461011457806319910699146101725780632453732a1461024f57806360bdbb3f1461027b57806368e14dac146102c8575b600080fd5b6100f1600480360360208110156100ea57600080fd5b5035610440565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6101406004803603604081101561012a57600080fd5b506001600160a01b038135169060200135610465565b604080516001600160a01b03909516855260208501939093528383019190915215156060830152519081900360800190f35b61023d600480360360a081101561018857600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a0810160808201356401000000008111156101c857600080fd5b8201836020820111156101da57600080fd5b803590602001918460018302840111640100000000831117156101fc57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506104a4945050505050565b60408051918252519081900360200190f35b61023d6004803603604081101561026557600080fd5b50803590602001356001600160a01b0316610909565b6102a76004803603604081101561029157600080fd5b506001600160a01b03813516906020013561094b565b604080519283526001600160a01b0390911660208301528051918290030190f35b61023d600480360360408110156102de57600080fd5b50803590602001356001600160a01b0316610975565b61023d6004803603604081101561030a57600080fd5b506001600160a01b0381351690602001356109bb565b61023d6004803603604081101561033657600080fd5b506001600160a01b038135169060200135610a79565b61036f6004803603604081101561036257600080fd5b5080359060200135610d0b565b604080519115158252519081900360200190f35b61023d6004803603602081101561039957600080fd5b503561122a565b61036f600480360360808110156103b657600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356114b2565b61036f600480360360608110156103f257600080fd5b508035906001600160a01b036020820135169060400135611654565b61036f6004803603606081101561042457600080fd5b508035906001600160a01b0360208201351690604001356117ed565b600260205260009081526040902080546001909101546001600160a01b039091169082565b6001602081815260009384526040808520909152918352912080549181015460028201546003909201546001600160a01b039093169290919060ff1684565b60006104ae611b64565b600260006104bb8961194e565b8152602080820192909252604090810160009081208251808401845281546001600160a01b039081168083526001909301549582019590955283516328a15e0f60e11b815284519196509194929384938c1692635142bc1e9260048083019392829003018186803b15801561052f57600080fd5b505afa158015610543573d6000803e3d6000fd5b505050506040513d604081101561055957600080fd5b50805160209091015190925090508087118015906105775750818710155b6105b25760405162461bcd60e51b8152600401808060200182810382526023815260200180611ba36023913960400191505060405180910390fd5b886001600160a01b031663a003651d896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156105f657600080fd5b505afa15801561060a573d6000803e3d6000fd5b505050506040513d602081101561062057600080fd5b50518711156106605760405162461bcd60e51b8152600401808060200182810382526035815260200180611bc66035913960400191505060405180910390fd5b60208085015160408051634439bdaf60e11b81526002600482015260248101929092523360448301526001600160a01b038d811660648401529051600093918716926388737b5e92608480830193919282900301818787803b1580156106c557600080fd5b505af11580156106d9573d6000803e3d6000fd5b505050506040513d60208110156106ef57600080fd5b8101908080519060200190929190505050905060405180608001604052808b6001600160a01b031681526020018a815260200189815260200160011515815250600160008d6001600160a01b03166001600160a01b03168152602001908152602001600020600083815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550602082015181600101556040820151816002015560608201518160030160006101000a81548160ff02191690831515021790555090505084600001516001600160a01b0316818c6001600160a01b03167f612d055dc0e586b349ae636d1de3fc64fbcf367d8c8c7406bd1823267cfe7e208d8d8d8d60405180856001600160a01b03166001600160a01b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610868578181015183820152602001610850565b50505050905090810190601f1680156108955780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a46040805180820182524381526001600160a01b039c8d166020808301918252968e166000908152808852838120858252909752919095209451855551600190940180546001600160a01b03191694909b169390931790995550979650505050505050565b6040805160208082018590526bffffffffffffffffffffffff19606085901b168284015282516034818403018152605490920190925280519101205b92915050565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b6000806109828484610909565b60008181526002602052604090206001810186905580546001600160a01b0386166001600160a01b031990911617905591505092915050565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806109ef576000915050610945565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610a4557600080fd5b505afa158015610a59573d6000803e3d6000fd5b505050506040513d6020811015610a6f57600080fd5b5051949350505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b158015610ad357600080fd5b505afa158015610ae7573d6000803e3d6000fd5b505050506040513d6020811015610afd57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015610b4f57600080fd5b505afa158015610b63573d6000803e3d6000fd5b505050506040513d6020811015610b7957600080fd5b5051610bc7576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b610bcf611b64565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610c16576000935050610d03565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610c5357600080fd5b505afa158015610c67573d6000803e3d6000fd5b505050506040513d6020811015610c7d57600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b158015610cd357600080fd5b505afa158015610ce7573d6000803e3d6000fd5b505050506040513d6020811015610cfd57600080fd5b50519350505b505092915050565b3360009081526020818152604080832085845290915281206001015483906001600160a01b0316610d78576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208784529091529020600101546001600160a01b0316610da5611b7b565b506001600160a01b0380821660009081526001602081815260408084208a855282529283902083516080810185528154909516855291820154908401526002810154918301919091526003015460ff16151560608201819052610e0757600080fd5b6001600160a01b03821660008181526001602081815260408084208b855290915280832080546001600160a01b0319168155918201839055600282018390556003909101805460ff19169055518892917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3606060008660011415611170576000846001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ec257600080fd5b505afa158015610ed6573d6000803e3d6000fd5b505050506040513d6020811015610eec57600080fd5b81019080805190602001909291905050509050806001600160a01b031663d1b7089a856000015186602001518760400151600030604051602401808581526020018481526020018360ff168152602001826001600160a01b03166001600160a01b0316815260200194505050505060405160208183030381529060405263359afa4960e01b6001600160e01b0319166020820180516001600160e01b0383818316178352505050508860006040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b0316815260200180602001846001600160a01b03166001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019080838360005b83811015611019578181015183820152602001611001565b50505050905090810190601f1680156110465780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561106857600080fd5b505af115801561107c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160409081528110156110a557600080fd5b8151602083018051604051929492938301929190846401000000008211156110cc57600080fd5b9083019060208201858111156110e157600080fd5b82516401000000008111828201881017156110fb57600080fd5b82525081516020918201929091019080838360005b83811015611128578181015183820152602001611110565b50505050905090810190601f1680156111555780820380516001836020036101000a031916815260200191505b5060405250505080945081935050508161116e57600080fd5b505b87846001600160a01b03167f7c1ea889aeb873862488f79e0228a2240ec23e80244de201dd45f39f603fc3c489856040518083815260200180602001828103825283818151815260200191508051906020019080838360005b838110156111e15781810151838201526020016111c9565b50505050905090810190601f16801561120e5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a3506001979650505050505050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561128457600080fd5b505afa158015611298573d6000803e3d6000fd5b505050506040513d60208110156112ae57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561130057600080fd5b505afa158015611314573d6000803e3d6000fd5b505050506040513d602081101561132a57600080fd5b5051611378576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b611380611b64565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b03169082018190526113c75760009350506114ab565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561140457600080fd5b505afa158015611418573d6000803e3d6000fd5b505050506040513d602081101561142e57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b15801561147b57600080fd5b505afa15801561148f573d6000803e3d6000fd5b505050506040513d60208110156114a557600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661151f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061155357600092505061164b565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561158c57600080fd5b505afa1580156115a0573d6000803e3d6000fd5b505050506040513d60208110156115b657600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b15801561161b57600080fd5b505af115801561162f573d6000803e3d6000fd5b505050506040513d602081101561164557600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b03166116c1576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806116f55760009250506117e5565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561172e57600080fd5b505afa158015611742573d6000803e3d6000fd5b505050506040513d602081101561175857600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b1580156117b557600080fd5b505af11580156117c9573d6000803e3d6000fd5b505050506040513d60208110156117df57600080fd5b50519250505b509392505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661185a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b03168061188e5760009250506117e5565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156118c757600080fd5b505afa1580156118db573d6000803e3d6000fd5b505050506040513d60208110156118f157600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b1580156117b557600080fd5b6000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561198957600080fd5b505afa15801561199d573d6000803e3d6000fd5b505050506040513d60208110156119b357600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03858116602483015291519190921691639be2faed916044808301926020929190829003018186803b158015611a0557600080fd5b505afa158015611a19573d6000803e3d6000fd5b505050506040513d6020811015611a2f57600080fd5b5051611a7d576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611ab657600080fd5b505afa158015611aca573d6000803e3d6000fd5b505050506040513d6020811015611ae057600080fd5b505160408051630389aac160e31b81523060048201526001600160a01b03858116602483015291519190921691631c4d5608916044808301926020929190829003018186803b158015611b3257600080fd5b505afa158015611b46573d6000803e3d6000fd5b505050506040513d6020811015611b5c57600080fd5b505192915050565b604080518082019091526000808252602082015290565b6040805160808101825260008082526020820181905291810182905260608101919091529056fe766f74652073686f756c6420626520696e2074686520616c6c6f7765642072616e6765766f74652073686f756c64206265203c3d206f726967696e616c2070726f706f73616c206e756d626572206f662063686f69636573a265627a7a72315820b742c0eda33ee54c5f6e695b6f869191255f3502df671fe4ecb1ea0816efee2c64736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/VotingMachineCallbacks.json b/contracts/0.0.1-rc.53/VotingMachineCallbacks.json new file mode 100644 index 00000000..1a66bb85 --- /dev/null +++ b/contracts/0.0.1-rc.53/VotingMachineCallbacks.json @@ -0,0 +1,213 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "VotingMachineCallbacks", + "sourceName": "contracts/votingMachines/VotingMachineCallbacks.sol", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "blockNumber", + "type": "uint256" + }, + { + "internalType": "contract Avatar", + "name": "avatar", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610cf6806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c8063b551c3731161005b578063b551c37314610139578063bea75f2814610156578063d29b5d2f146101a6578063f81f8bf6146101d85761007d565b806360bdbb3f146100825780636b8eb403146100cf5780639588378e1461010d575b600080fd5b6100ae6004803603604081101561009857600080fd5b506001600160a01b03813516906020013561020a565b604080519283526001600160a01b0390911660208301528051918290030190f35b6100fb600480360360408110156100e557600080fd5b506001600160a01b038135169060200135610234565b60408051918252519081900360200190f35b6100fb6004803603604081101561012357600080fd5b506001600160a01b0381351690602001356102f4565b6100fb6004803603602081101561014f57600080fd5b5035610586565b6101926004803603608081101561016c57600080fd5b506001600160a01b0381358116916020810135909116906040810135906060013561080e565b604080519115158252519081900360200190f35b610192600480360360608110156101bc57600080fd5b508035906001600160a01b0360208201351690604001356109b0565b610192600480360360608110156101ee57600080fd5b508035906001600160a01b036020820135169060400135610b49565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806102685760009150506102ee565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156102be57600080fd5b505afa1580156102d2573d6000803e3d6000fd5b505050506040513d60208110156102e857600080fd5b50519150505b92915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561034e57600080fd5b505afa158015610362573d6000803e3d6000fd5b505050506040513d602081101561037857600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156103ca57600080fd5b505afa1580156103de573d6000803e3d6000fd5b505050506040513d60208110156103f457600080fd5b5051610442576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61044a610caa565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b031690820181905261049157600093505061057e565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156104ce57600080fd5b505afa1580156104e2573d6000803e3d6000fd5b505050506040513d60208110156104f857600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b15801561054e57600080fd5b505afa158015610562573d6000803e3d6000fd5b505050506040513d602081101561057857600080fd5b50519350505b505092915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b1580156105e057600080fd5b505afa1580156105f4573d6000803e3d6000fd5b505050506040513d602081101561060a57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561065c57600080fd5b505afa158015610670573d6000803e3d6000fd5b505050506040513d602081101561068657600080fd5b50516106d4576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6106dc610caa565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610723576000935050610807565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561076057600080fd5b505afa158015610774573d6000803e3d6000fd5b505050506040513d602081101561078a57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b1580156107d757600080fd5b505afa1580156107eb573d6000803e3d6000fd5b505050506040513d602081101561080157600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661087b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806108af5760009250506109a7565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108e857600080fd5b505afa1580156108fc573d6000803e3d6000fd5b505050506040513d602081101561091257600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b15801561097757600080fd5b505af115801561098b573d6000803e3d6000fd5b505050506040513d60208110156109a157600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610a1d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610a51576000925050610b41565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610a8a57600080fd5b505afa158015610a9e573d6000803e3d6000fd5b505050506040513d6020811015610ab457600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b158015610b1157600080fd5b505af1158015610b25573d6000803e3d6000fd5b505050506040513d6020811015610b3b57600080fd5b50519250505b509392505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610bb6576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610bea576000925050610b41565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610c2357600080fd5b505afa158015610c37573d6000803e3d6000fd5b505050506040513d6020811015610c4d57600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b158015610b1157600080fd5b60408051808201909152600080825260208201529056fea265627a7a7231582002b61463d911d9af3e296b44d7d40320f6b02945deb9535f7fedc1f90d7e2c4764736f6c63430005110032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007d5760003560e01c8063b551c3731161005b578063b551c37314610139578063bea75f2814610156578063d29b5d2f146101a6578063f81f8bf6146101d85761007d565b806360bdbb3f146100825780636b8eb403146100cf5780639588378e1461010d575b600080fd5b6100ae6004803603604081101561009857600080fd5b506001600160a01b03813516906020013561020a565b604080519283526001600160a01b0390911660208301528051918290030190f35b6100fb600480360360408110156100e557600080fd5b506001600160a01b038135169060200135610234565b60408051918252519081900360200190f35b6100fb6004803603604081101561012357600080fd5b506001600160a01b0381351690602001356102f4565b6100fb6004803603602081101561014f57600080fd5b5035610586565b6101926004803603608081101561016c57600080fd5b506001600160a01b0381358116916020810135909116906040810135906060013561080e565b604080519115158252519081900360200190f35b610192600480360360608110156101bc57600080fd5b508035906001600160a01b0360208201351690604001356109b0565b610192600480360360608110156101ee57600080fd5b508035906001600160a01b036020820135169060400135610b49565b6000602081815292815260408082209093529081522080546001909101546001600160a01b031682565b336000908152602081815260408083208484529091528120600101546001600160a01b0316806102685760009150506102ee565b836001600160a01b03166370a08231826040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156102be57600080fd5b505afa1580156102d2573d6000803e3d6000fd5b505050506040513d60208110156102e857600080fd5b50519150505b92915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b15801561034e57600080fd5b505afa158015610362573d6000803e3d6000fd5b505050506040513d602081101561037857600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b1580156103ca57600080fd5b505afa1580156103de573d6000803e3d6000fd5b505050506040513d60208110156103f457600080fd5b5051610442576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b61044a610caa565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b031690820181905261049157600093505061057e565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156104ce57600080fd5b505afa1580156104e2573d6000803e3d6000fd5b505050506040513d60208110156104f857600080fd5b505181516040805163277166bf60e11b81526001600160a01b038a81166004830152602482019390935290519190921691634ee2cd7e916044808301926020929190829003018186803b15801561054e57600080fd5b505afa158015610562573d6000803e3d6000fd5b505050506040513d602081101561057857600080fd5b50519350505b505092915050565b336000908152602081815260408083208484528252808320600101548151638da5cb5b60e01b8152915185936001600160a01b03909216928392638da5cb5b92600480840193829003018186803b1580156105e057600080fd5b505afa1580156105f4573d6000803e3d6000fd5b505050506040513d602081101561060a57600080fd5b505160408051639be2faed60e01b81523060048201526001600160a01b03848116602483015291519190921691639be2faed916044808301926020929190829003018186803b15801561065c57600080fd5b505afa158015610670573d6000803e3d6000fd5b505050506040513d602081101561068657600080fd5b50516106d4576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6106dc610caa565b5033600090815260208181526040808320878452825291829020825180840190935280548352600101546001600160a01b0316908201819052610723576000935050610807565b80602001516001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561076057600080fd5b505afa158015610774573d6000803e3d6000fd5b505050506040513d602081101561078a57600080fd5b5051815160408051630981b24d60e41b81526004810192909252516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b1580156107d757600080fd5b505afa1580156107eb573d6000803e3d6000fd5b505050506040513d602081101561080157600080fd5b50519350505b5050919050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b031661087b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b0316806108af5760009250506109a7565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108e857600080fd5b505afa1580156108fc573d6000803e3d6000fd5b505050506040513d602081101561091257600080fd5b50516040805163b9a04cdd60e01b81526001600160a01b038a8116600483015289811660248301526044820189905284811660648301529151919092169163b9a04cdd9160848083019260209291908290030181600087803b15801561097757600080fd5b505af115801561098b573d6000803e3d6000fd5b505050506040513d60208110156109a157600080fd5b50519250505b50949350505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610a1d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610a51576000925050610b41565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610a8a57600080fd5b505afa158015610a9e573d6000803e3d6000fd5b505050506040513d6020811015610ab457600080fd5b50516040805163757cca5960e11b8152600481018990526001600160a01b03888116602483015284811660448301529151919092169163eaf994b29160648083019260209291908290030181600087803b158015610b1157600080fd5b505af1158015610b25573d6000803e3d6000fd5b505050506040513d6020811015610b3b57600080fd5b50519250505b509392505050565b3360009081526020818152604080832084845290915281206001015482906001600160a01b0316610bb6576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b336000908152602081815260408083208684529091529020600101546001600160a01b031680610bea576000925050610b41565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610c2357600080fd5b505afa158015610c37573d6000803e3d6000fd5b505050506040513d6020811015610c4d57600080fd5b505160408051630dd29a4f60e31b8152600481018990526001600160a01b038881166024830152848116604483015291519190921691636e94d2789160648083019260209291908290030181600087803b158015610b1157600080fd5b60408051808201909152600080825260208201529056fea265627a7a7231582002b61463d911d9af3e296b44d7d40320f6b02945deb9535f7fedc1f90d7e2c4764736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/VotingMachineCallbacksInterface.json b/contracts/0.0.1-rc.53/VotingMachineCallbacksInterface.json new file mode 100644 index 00000000..fe9cc8a8 --- /dev/null +++ b/contracts/0.0.1-rc.53/VotingMachineCallbacksInterface.json @@ -0,0 +1,180 @@ +{ + "contractName": "VotingMachineCallbacksInterface", + "abi": [ + { + "constant": true, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.0.1-rc.53/Wallet.json b/contracts/0.0.1-rc.53/Wallet.json new file mode 100644 index 00000000..df24f17b --- /dev/null +++ b/contracts/0.0.1-rc.53/Wallet.json @@ -0,0 +1,142 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Wallet", + "sourceName": "contracts/test/Wallet.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "Pay", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ReceiveEther", + "type": "event" + }, + { + "payable": true, + "stateMutability": "payable", + "type": "fallback" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "pay", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040526100156001600160e01b0361006216565b600080546001600160a01b0319166001600160a01b03928316178082556040519216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610066565b3390565b610468806100756000396000f3fe60806040526004361061004a5760003560e01c80630c11dedd14610082578063715018a6146100b75780638da5cb5b146100cc5780638f32d59b146100fd578063f2fde38b14610126575b60408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b34801561008e57600080fd5b506100b5600480360360208110156100a557600080fd5b50356001600160a01b0316610159565b005b3480156100c357600080fd5b506100b561022e565b3480156100d857600080fd5b506100e16102d1565b604080516001600160a01b039092168252519081900360200190f35b34801561010957600080fd5b506101126102e0565b604080519115158252519081900360200190f35b34801561013257600080fd5b506100b56004803603602081101561014957600080fd5b50356001600160a01b0316610304565b6101616102e0565b6101b2576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f193505050501580156101ea573d6000803e3d6000fd5b506040805182815290516001600160a01b038416917f357b676c439b9e49b4410f8eb8680bee4223724802d8e3fd422e1756f87b475f919081900360200190a25050565b6102366102e0565b610287576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b03166102f5610369565b6001600160a01b031614905090565b61030c6102e0565b61035d576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6103668161036d565b50565b3390565b6001600160a01b0381166103b25760405162461bcd60e51b815260040180806020018281038252602681526020018061040e6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373a265627a7a72315820fa2b1e50ad5ba02df8b63817c3c244b26f90028e6f160f23f65cf2f555058ef064736f6c63430005110032", + "deployedBytecode": "0x60806040526004361061004a5760003560e01c80630c11dedd14610082578063715018a6146100b75780638da5cb5b146100cc5780638f32d59b146100fd578063f2fde38b14610126575b60408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b34801561008e57600080fd5b506100b5600480360360208110156100a557600080fd5b50356001600160a01b0316610159565b005b3480156100c357600080fd5b506100b561022e565b3480156100d857600080fd5b506100e16102d1565b604080516001600160a01b039092168252519081900360200190f35b34801561010957600080fd5b506101126102e0565b604080519115158252519081900360200190f35b34801561013257600080fd5b506100b56004803603602081101561014957600080fd5b50356001600160a01b0316610304565b6101616102e0565b6101b2576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f193505050501580156101ea573d6000803e3d6000fd5b506040805182815290516001600160a01b038416917f357b676c439b9e49b4410f8eb8680bee4223724802d8e3fd422e1756f87b475f919081900360200190a25050565b6102366102e0565b610287576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b600080546001600160a01b03166102f5610369565b6001600160a01b031614905090565b61030c6102e0565b61035d576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6103668161036d565b50565b3390565b6001600160a01b0381166103b25760405162461bcd60e51b815260040180806020018281038252602681526020018061040e6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373a265627a7a72315820fa2b1e50ad5ba02df8b63817c3c244b26f90028e6f160f23f65cf2f555058ef064736f6c63430005110032", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/migration.json b/migration.json index a350d5a3..2fd88cca 100644 --- a/migration.json +++ b/migration.json @@ -650,11 +650,30 @@ "OrganizationRegister": "0x040C01780bbad4646b2AacA5617E775FaA8902eb", "Redeemer": "0x10Dd9B803DEE6f81451c55d9c6109E74FD54E9A1", "GenericSchemeMultiCallFactory": "0x69aE123fce574568CEDcbACE4F48Ed23Cad240ab" + }, + "0.0.1-rc.53": { + "GEN": "0xe78A0F7E598Cc8b0Bb87894B0F60dD2a88d6a8Ab", + "DAORegistry": "0x6F933aD21437BA6E312E28930D13ea117f7fe843", + "DAOTracker": "0xa8ff3Cb524eC855638AD68Db32d1DE3bd56fe9F4", + "ControllerCreator": "0xB7518416f9F97D6e9f4b5F576E6DdF106F8C254C", + "DaoCreator": "0xe0aef1CCB958dE084C4E8aE9200Ce599d9c7a3cF", + "GenesisProtocol": "0x6f2814199231F391ec4181001347e878319A7AD4", + "SchemeRegistrar": "0xE6a42955B9f3bdc4cD05B716C7Ce540911a578b5", + "UpgradeScheme": "0x2Ee46a1c4677CE39901f67779Ca6284d219165B4", + "GlobalConstraintRegistrar": "0xCC4b7c815e19245B6cCBB87917FD9c1500D50a07", + "ContributionReward": "0x895842798c3e07Cda890345d5B73582D85BFC72a", + "AbsoluteVote": "0xf6fA8BA4070480c28f872FBF70A36903224E36aE", + "QuorumVote": "0xfe966E61bc1df0B50E9250dCB1DdD7C1746f1EAF", + "TokenCapGC": "0x92C23F0849B7a27e3A763A8B401ac49A6cCB19F1", + "VoteInOrganizationScheme": "0xB253d32c2514347856143a7A6ea2D1Be88e75dbd", + "OrganizationRegister": "0x0d7C75e14F1DE3182ac78a329284d0983A61F779", + "Redeemer": "0x1Db7AC8F103806CD44294Ac9Cc0E803de667934B", + "GenericSchemeMultiCallFactory": "0xa48Ce94310AA975CCB4Bc9012674529C95c59e3E" } }, "dao": { "0.0.1-rc.16": { - "name": "Mordant Soaper", + "name": "Concomitant Nibblets", "Avatar": "0xE7A2C59e134ee81D4035Ae6DB2254f79308e334f", "DAOToken": "0xcDbe8b52A6c60A5f101d4A0F1f049f19a9e1D35F", "Reputation": "0x93cdbf39fB9e13BD253CA5819247D52fbabf0F2f", @@ -714,7 +733,7 @@ "arcVersion": "0.0.1-rc.16" }, "0.0.1-rc.17": { - "name": "Precipitate Foreman", + "name": "Sagacious Engineering", "Avatar": "0xf238365CD7B15ab0e94Db61128ef8987271831A1", "DAOToken": "0x1Ea7Fd2dDAF45F1a724Ab43AdA3FdA2D8b300C65", "Reputation": "0xbDa3A4faD2b35991caB475eb42a2158a5eAAaF94", @@ -774,7 +793,7 @@ "arcVersion": "0.0.1-rc.17" }, "0.0.1-rc.18": { - "name": "Corpulent Teacher", + "name": "Meretricious Stylist", "Avatar": "0xe5F1F656F3d515384374a53451166Ed72aC5d5cC", "DAOToken": "0xC4A9B58b9a5639FA8c2848395B54a2232F0D4FdD", "Reputation": "0x523Df3A5e7622090De25602240273420e9AdcB74", @@ -834,7 +853,7 @@ "arcVersion": "0.0.1-rc.18" }, "0.0.1-rc.19": { - "name": "Amatory Senor", + "name": "Ubiquitous Animator", "Avatar": "0xb504490A5017413D014DD97916C3FFf889D555b5", "DAOToken": "0xAAEd128A9572E981A405543aFFEf60E2BC3AF07A", "Reputation": "0xb000e6d46e178c6784586E6e1aB440A7d1c1d9da", @@ -894,7 +913,7 @@ "arcVersion": "0.0.1-rc.19" }, "0.0.1-rc.21": { - "name": "Didactic Nibblets", + "name": "Defamatory Laser", "Avatar": "0x80597B5Addc13464166B7A1929EA664ABbB411CE", "DAOToken": "0xb0575045735103905617Aa55034eB933C640506D", "Reputation": "0xb5A43ae6082cD4a7D6DDd23f5a150FE201d404F7", @@ -954,7 +973,7 @@ "arcVersion": "0.0.1-rc.21" }, "0.0.1-rc.22": { - "name": "Arcadian Unicorn", + "name": "Taciturn Inker", "Avatar": "0x4e26464f10f58F66c4E9AB06A5A6BBf6acc07336", "DAOToken": "0x917be32237Aaf4Ed560FE5c448AD083e9430a5bF", "Reputation": "0xe59f6d2537f700C855ef3804c613f183E0bf3fA5", @@ -1014,7 +1033,7 @@ "arcVersion": "0.0.1-rc.22" }, "0.0.1-rc.23": { - "name": "Trenchant Model", + "name": "Uxorious Coppersmith", "Avatar": "0x22a4663F618b39861b0053793282e9B1B99e79E6", "DAOToken": "0x331990CAcc361D6FA9432c24FB50ec796444b16B", "Reputation": "0x7fF3Dc13616865e6a3F498607fa26Aa50e2eEe75", @@ -1074,7 +1093,7 @@ "arcVersion": "0.0.1-rc.23" }, "0.0.1-rc.24": { - "name": "Munificent Patternmaker", + "name": "Trenchant Circus", "Avatar": "0x53ed8A448f019Bf47F7032abADD913114B821a9F", "DAOToken": "0x49197048170b34a662121EeAaF522300534915C0", "Reputation": "0x370a1a22337Cb60342A9f7b8f929116888D2805b", @@ -1140,7 +1159,7 @@ "arcVersion": "0.0.1-rc.24" }, "0.0.1-rc.25": { - "name": "Mordant Statue", + "name": "Baleful Scenographer", "Avatar": "0x1822f04b4d6Eaa51F21f3A2501a30124074B3A7E", "DAOToken": "0x95A92099A796d2e87aAdF0b2B656b3375db6f5A9", "Reputation": "0xF50a81906A565B6e96670D5d783F1bA2CD07004E", @@ -1206,7 +1225,7 @@ "arcVersion": "0.0.1-rc.25" }, "0.0.1-rc.27": { - "name": "Bellicose Musician", + "name": "Pendulous Teacher", "Avatar": "0x1d59700e73E41F98d7eb149ADEeDA05Fe8EACA60", "DAOToken": "0x5dE5Daa4181f3372F7379bE8c2fb1Ab83B5D802a", "Reputation": "0x9A66Baa636cf4459A2ce4c2780DA20F42d3c6588", @@ -1272,7 +1291,7 @@ "arcVersion": "0.0.1-rc.27" }, "0.0.1-rc.28": { - "name": "Munificent Model", + "name": "Munificent Inker", "Avatar": "0x512d87069e9aE2B14c888D70cbd3255Dd51Fe33a", "DAOToken": "0x11eDaBB47bBE5C421580cD021018148cC00279a7", "Reputation": "0x614c99aB8Bd42F3CfAEd7bC088070b3D6617bd6B", @@ -1338,7 +1357,7 @@ "arcVersion": "0.0.1-rc.28" }, "0.0.1-rc.29": { - "name": "Loquacious Soaper", + "name": "Effulgent Maintenance", "Avatar": "0xE55d2134bB0dE1f16F09fB33DC3403812b518E5C", "DAOToken": "0x71909Bb938e01d097164d16b232d1388B0eb2FAc", "Reputation": "0x2f632B778299afF2A9ec7510579c65cAa5238469", @@ -1404,7 +1423,7 @@ "arcVersion": "0.0.1-rc.29" }, "0.0.1-rc.30": { - "name": "Salubrious Stylist", + "name": "Fecund Foreman", "Avatar": "0xb3059be5AC020Bd3DF1999881EF95Ea29796c5F1", "DAOToken": "0x9763602568512E028d11a3F5DD5429108410FEa2", "Reputation": "0x543A4d95d223afd63Ad01DB2a4a5199C8baBd184", @@ -1470,7 +1489,7 @@ "arcVersion": "0.0.1-rc.30" }, "0.0.1-rc.31": { - "name": "Pervasive Penciller", + "name": "Defamatory Curtains", "Avatar": "0x5703b5b92BEea10c5084fE95567D6Bffe4a1bc24", "DAOToken": "0x8771ABd8332514d314073D701cbA027EdB746294", "Reputation": "0xBD4B04c5D66756F9366DAe30534783870a8e720C", @@ -1536,7 +1555,7 @@ "arcVersion": "0.0.1-rc.31" }, "0.0.1-rc.32": { - "name": "Efficacious Patternmaker", + "name": "Irksome Stick figures", "Avatar": "0x670342000f14eF31bc98f8239829618B0D6f18E4", "DAOToken": "0x5c5970aa0EDEcBBD9075cF8aa93754Aa800DCfc4", "Reputation": "0xC4aD251A22F774F7C056318A89F18E72dbAac683", @@ -1602,7 +1621,7 @@ "arcVersion": "0.0.1-rc.32" }, "0.0.1-rc.33": { - "name": "Withering Toejam", + "name": "Friable Beets", "Avatar": "0x31e897BBc421b5D233BC343B7d88121589fc0513", "DAOToken": "0x56B720e202A2ef253c5968e0e0f5661c1f7408c2", "Reputation": "0x1a1BDc2581D4bC796dfbB500A77Cc86A7b44CC87", @@ -1668,7 +1687,7 @@ "arcVersion": "0.0.1-rc.33" }, "0.0.1-rc.34": { - "name": "Strident Senor", + "name": "Effulgent Plumber", "Avatar": "0x21835a9F0d8045Ca17d5BB495e356A843929FC6b", "DAOToken": "0xC5780764B348D4db76896e8ce60C9e41066bEf00", "Reputation": "0xA0FdA53e2b8C09B068686eAFaE895326D076e99F", @@ -1734,7 +1753,7 @@ "arcVersion": "0.0.1-rc.34" }, "0.0.1-rc.35": { - "name": "Pervasive Toejam", + "name": "Invidious Teacher", "Avatar": "0xE457633AD14Fb05941d95FAEdfb0D4ee9701545C", "DAOToken": "0x387307e67B2F2915e9fF10B33057EDE232B8361E", "Reputation": "0x71A14e479dD7D18c63a8c47e552cfE775324c95d", @@ -1800,7 +1819,7 @@ "arcVersion": "0.0.1-rc.35" }, "0.0.1-rc.36": { - "name": "Dowdy Artist", + "name": "Corpulent Moldmaker", "Avatar": "0x87DED286b1D2a3B6E815E0963f5f620dC1537102", "DAOToken": "0xf4896584207dBE85704eA2dab6d5962f799147b8", "Reputation": "0x78bEa62d758cC8e3d6Ca1270c124317c7e4C15Db", @@ -1866,7 +1885,7 @@ "arcVersion": "0.0.1-rc.36" }, "0.0.1-rc.37": { - "name": "Irksome Beader", + "name": "Querulous Laser", "Avatar": "0x86f0815831b0F4A9C7090BFAb3f501516A4f622A", "DAOToken": "0x9842981c62c360F5c95e81A71F130593DC3F3C5C", "Reputation": "0x6Ac3a8755faDa222998A359D773ca520E999b5Fb", @@ -1932,7 +1951,7 @@ "arcVersion": "0.0.1-rc.37" }, "0.0.1-rc.38": { - "name": "Boorish Stylist", + "name": "Dilatory Leadman", "Avatar": "0xFaAC213Eb3FF50a8d98A399e2fb7e3b9B4c1BDBE", "DAOToken": "0x645591beDAa1f73aeC8EeA5369a5e68E9A70Df53", "Reputation": "0x4332Af45F4F32b7D2A6C7e2a366eD730fCfdBbaa", @@ -1998,7 +2017,7 @@ "arcVersion": "0.0.1-rc.38" }, "0.0.1-rc.39": { - "name": "Redolent Make-up artist", + "name": "Incendiary Inker", "Avatar": "0x711611ec00D1516bF014c58E23Ec04a021Da84d1", "DAOToken": "0x3325a7C175ce58FAE2D547Dea468D27eC07Bd32B", "Reputation": "0xdD9681B367cd5EDE1FbD2a6A07533863a1ae3d42", @@ -2064,7 +2083,7 @@ "arcVersion": "0.0.1-rc.39" }, "0.0.1-rc.40": { - "name": "Friable Model", + "name": "Contumacious Snakes", "Avatar": "0x8775f9A70C43970a085624a3CCDF042A55dB8244", "DAOToken": "0x8ba78623418EcC10cc9CB4f359458e15ed3D4667", "Reputation": "0xc3a88D82cA2ED681F6A3752412f8D12ba9652544", @@ -2130,7 +2149,7 @@ "arcVersion": "0.0.1-rc.40" }, "0.0.1-rc.41": { - "name": "Serpentine Beader", + "name": "Arcadian Flatter", "Avatar": "0x79587259c3141bDc79f5AEfFDFE219fcBA2c5740", "DAOToken": "0xbFE4cE5729a4E9e193EFABB538F95556A3fC5f5d", "Reputation": "0xFffCE877f57272F13f0Dc606B9525c0dF72AA78d", @@ -2196,7 +2215,7 @@ "arcVersion": "0.0.1-rc.41" }, "0.0.1-rc.42": { - "name": "Risible Rainbows", + "name": "Mendacious Trampoline", "Avatar": "0x651c86BB1972c1222fF194A1d3856fd07AA7cB36", "DAOToken": "0x96c668322A12B44e00B008AAA3E26CD29608D9Df", "Reputation": "0x7378F52dE9770CcC2B8592eE1764DE8929f06D0B", @@ -2262,7 +2281,7 @@ "arcVersion": "0.0.1-rc.42" }, "0.0.1-rc.43": { - "name": "Contumacious Toejam", + "name": "Corpulent Senor", "Avatar": "0xf2b39a48D30223F691216F3c0724018dDDCe8255", "DAOToken": "0xaEd845d73e0A438cfcE30D708563E0740495fe21", "Reputation": "0x30fb77A0e175A6500a578ce0417116b3Fc07F689", @@ -2328,7 +2347,7 @@ "arcVersion": "0.0.1-rc.43" }, "0.0.1-rc.44": { - "name": "Fecund Plant operator", + "name": "Gustatory Snakes", "Avatar": "0x0e69dCBA242789c0CD8E98b33C559182e130068d", "DAOToken": "0x6C3D3459B483986F184aCDD8ca418F1f22c05751", "Reputation": "0xd22aBC708b3DbdA063181b18674774ACABd5D1ed", @@ -2394,7 +2413,7 @@ "arcVersion": "0.0.1-rc.44" }, "0.0.1-rc.45": { - "name": "Insidious Wheelwright", + "name": "Antic Hot air balloon", "Avatar": "0x548E16f14Bc6b02e506c677820b3Ba6891535854", "DAOToken": "0xaD64EA3a8DD4Fa702A245049613F172C75290E25", "Reputation": "0x06F3f9c2bce237ff8110aA4F5D0dd086F1A3fAf9", @@ -2460,7 +2479,7 @@ "arcVersion": "0.0.1-rc.45" }, "0.0.1-rc.46": { - "name": "Minatory Penciller", + "name": "Risible Senor", "Avatar": "0xeB05c2d79243925D343a13488F08815Dc73Ec317", "DAOToken": "0x8634A94e4599D7b1b2B34f89118f33763541683a", "Reputation": "0x9CA2678f4E1211B5Ae5613862A63662B88b5Ea81", @@ -2526,7 +2545,7 @@ "arcVersion": "0.0.1-rc.46" }, "0.0.1-rc.47": { - "name": "Mordant Toilet", + "name": "Rhadamanthine Animator", "Avatar": "0x0372Ec73802F97093e19B7db26064C64FD9aE590", "DAOToken": "0xb06756fB63A6d800f39F855139BDbc7ab6E25D4b", "Reputation": "0x4E6199eeB916B12703502bE41F654E3Eb79e85F7", @@ -2592,7 +2611,7 @@ "arcVersion": "0.0.1-rc.47" }, "0.0.1-rc.48": { - "name": "Verdant Banjo", + "name": "Adroit Bushes", "Avatar": "0x30231b3441Ef766B56A8dA7F7786951CfDF59f6A", "DAOToken": "0xE994c5ADacdB45BFD74651C95ED83700B4da96a5", "Reputation": "0x0d0DE30E5BE837f10b7d65D3cF394A2fcd11eA8a", @@ -2658,7 +2677,7 @@ "arcVersion": "0.0.1-rc.48" }, "0.0.1-rc.49": { - "name": "Amatory Scenographer", + "name": "Petulant Inker", "Avatar": "0x4092f64313CcbB85Cb77BB1798c7dA9EEE0ee72d", "DAOToken": "0x2EEaA01b69168462Aec065ACba7AEce2fEEe5CB6", "Reputation": "0xc3442dBa11C659ED36Bd74FDE0824FcBDd2fCc80", @@ -2724,7 +2743,7 @@ "arcVersion": "0.0.1-rc.49" }, "0.0.1-rc.50": { - "name": "Quiescent Moldmaker", + "name": "Concomitant Sea barnacles", "Avatar": "0x792F104810d39227F4d3DA4c0efF1a06476228B8", "DAOToken": "0x27958cf05cdad7122518BE4e11CCe36efCA6A9a0", "Reputation": "0xFdB5C68082dd587df5ad7a885c74502FB3Dd79f0", @@ -2790,7 +2809,7 @@ "arcVersion": "0.0.1-rc.50" }, "0.0.1-rc.51": { - "name": "Salubrious Maintenance", + "name": "Insolent Circus", "Avatar": "0x13a6FAb6fdc6F08A88fabD2e333a672076B6c320", "DAOToken": "0x9ed8Bf5ac4C33E6Af1523a1EE47efb3F208ceb6C", "Reputation": "0xd33b7977253cbb5b7E3b4b7c7ced1bD5ca6c6AAa", @@ -2856,7 +2875,7 @@ "arcVersion": "0.0.1-rc.51" }, "0.0.1-rc.52": { - "name": "Fastidious Sawfiler", + "name": "Friable Curtains", "Avatar": "0xb0E414DC3d6C6B24352d5c604246Aa80c65F3EFF", "DAOToken": "0x2C0504bb6ebad3e19d2821e5B06c448Cd765257E", "Reputation": "0x1Efc0F98355F343439402D54264301f46DeA32ce", @@ -2920,11 +2939,77 @@ } ], "arcVersion": "0.0.1-rc.52" + }, + "0.0.1-rc.53": { + "name": "Sagacious Artist", + "Avatar": "0x786E7BA19b24c470461B3632730884ECD09eD4F7", + "DAOToken": "0x57b50Ff749Bf410c45DafF03F68f7Fea6101A7f5", + "Reputation": "0x2B3B505DBdF400aB0D3A982e137d759f4C368c3a", + "Controller": "0x3C58F5455ec29A0CfAcF87Bd11ACf901aF22A029", + "Schemes": [ + { + "name": "GenericScheme", + "alias": "GenericSchemeAlias", + "address": "0x4F66D0973E4cA6DB14ac5797D30C253CA1caCABe", + "arcVersion": "0.0.1-rc.53" + }, + { + "name": "ContributionRewardExt", + "alias": "ContributionRewardExt", + "address": "0xDAa07300351665a33b746153c000Ac8522987FDb", + "arcVersion": "0.0.1-rc.43" + }, + { + "name": "GenericSchemeMultiCall", + "alias": "GenericSchemeMultiCall", + "address": "0x9D2d0841d83EC12741EAbb17daC51FBC7c49a150", + "arcVersion": "0.0.1-rc.51" + }, + { + "name": "ContinuousLocking4Reputation", + "alias": "ContinuousLocking4Reputation", + "address": "0x69C8Cac1353aBFBB2089f826F565200bCB3B5c32", + "arcVersion": "0.0.1-rc.51" + } + ], + "StandAloneContracts": [ + { + "name": "Wallet", + "address": "0x1c112B9c1B23F066f3F0048B5938547448381dec", + "arcVersion": "0.0.1-rc.53" + }, + { + "name": "ContributionRewardExt", + "address": "0xDAa07300351665a33b746153c000Ac8522987FDb", + "arcVersion": "0.0.1-rc.43" + }, + { + "name": "Competition", + "address": "0xc5db9dB3CabE6CC3A313F634656Dbed2867D6EFD", + "arcVersion": "0.0.1-rc.43" + }, + { + "name": "GenericSchemeMultiCall", + "address": "0x9D2d0841d83EC12741EAbb17daC51FBC7c49a150", + "arcVersion": "0.0.1-rc.51" + }, + { + "name": "ActionMock", + "address": "0x1279Ebc99aDCa8336c387dfcF76d41595b3C3a5A", + "arcVersion": "0.0.1-rc.53" + }, + { + "name": "DxDaoSchemeConstraints", + "address": "0x2e20944BC58B0641ce77c5a6F5288c0baacAB291", + "arcVersion": "0.0.1-rc.51" + } + ], + "arcVersion": "0.0.1-rc.53" } }, "test": { "0.0.1-rc.16": { - "name": "Contumacious Colorist", + "name": "Execrable Shop foreman", "Controller": "0x5fD287667AC7D13161648e82dA6e8B8A3C9Bc432", "Avatar": "0x86e9Fe552E75e4Fc51f46E4efc128628eCd5ada7", "DAOToken": "0xeA4eB8B837F0f5B4d43259e5FAB1Ce3761869D2A", @@ -2942,7 +3027,7 @@ } }, "0.0.1-rc.17": { - "name": "Defamatory Miller", + "name": "Puckish Carousel", "Controller": "0xddF3d512d33D9A7D41aCB85E0A370D632E38F80c", "Avatar": "0xbF536d4460DeE83A123fb092EB38987efA5D0dD1", "DAOToken": "0x53297313b281FE0eA5a90C29a14A8C62403227a7", @@ -2960,7 +3045,7 @@ } }, "0.0.1-rc.18": { - "name": "Guileless Exorcism", + "name": "Ubiquitous Kazoo", "Controller": "0xc29f9C6A1734439CBAA8bf4FCEc55762D951F91d", "Avatar": "0x8B8187af902a6041e5f1acf97Ff89A80B041296f", "DAOToken": "0x5f5bb7837fA1009e5BaE2459cD33e7530E1f618d", @@ -2978,7 +3063,7 @@ } }, "0.0.1-rc.19": { - "name": "Meretricious Opera singer", + "name": "Boorish Kazoo", "Controller": "0x733aD5E7982BbB6D18328fed07071250039f1436", "Avatar": "0x62fB061Ec968D9Eb87f0576C0483FbEC08B97a0B", "DAOToken": "0x397FF2E658CD66d46Be72CfAc5041A2Cb727e5c4", @@ -2996,7 +3081,7 @@ } }, "0.0.1-rc.21": { - "name": "Arcadian Make-up artist", + "name": "Turgid Apples", "Controller": "0xd6c22357Dbd137Dd01F07dFc2a38D3eD4f3aE518", "Avatar": "0xaDA606D97fd38f386a9a562B5440367bb22B2FA4", "DAOToken": "0xec1fed61a012B50AC4f3fC4c83809804d8EB2C00", @@ -3014,7 +3099,7 @@ } }, "0.0.1-rc.22": { - "name": "Turgid Locomotive", + "name": "Limpid Artist", "Controller": "0x8ce58A1f286e89EEd39FA8fe32BEAFA5A9f1f457", "Avatar": "0x29F5362D9922daa585970dD42A7000155611cf81", "DAOToken": "0xD69B987f0fF1ebfedf229d958993c35979226FfE", @@ -3032,7 +3117,7 @@ } }, "0.0.1-rc.23": { - "name": "Redolent Carnival", + "name": "Efficacious Apples", "Controller": "0x297a2beB1bbfA5fa7a776FF1A04a0Ac0aae606A0", "Avatar": "0x755DA06a3c5b03f1A7a25937784687E18604a65b", "DAOToken": "0x49b39900c4abF2Cb8c9F4FEA166C841e919359A0", @@ -3050,7 +3135,7 @@ } }, "0.0.1-rc.24": { - "name": "Turbulent Ninja", + "name": "Salubrious Banjo", "Controller": "0x232F0f9b6E587d7758e1C10147DbFF5fC8dD416C", "Avatar": "0xc63cD873AB7a523317a61ecc4B4e627270BD069E", "DAOToken": "0x8e0b665e43051b584c1be14B70532a0c2605Bd7c", @@ -3068,7 +3153,7 @@ } }, "0.0.1-rc.25": { - "name": "Didactic Dolls", + "name": "Irksome Producer", "Controller": "0x72ACdf9e301695D98DcDC1025D595ed5D0fb261B", "Avatar": "0x6026Ce0AA75486a1B3D75Ad793C0cF5841810d4B", "DAOToken": "0xbEfFF6040347DD1c0DbF395dEFEABd83C3bA1948", @@ -3086,7 +3171,7 @@ } }, "0.0.1-rc.27": { - "name": "Sagacious Beader", + "name": "Risible Silversmith", "Controller": "0x2919b1FAC9B7B1e359C6fE2662b282d8eAe4b6C2", "Avatar": "0x9F5dE0fe6c49E2893CD36B7f8D663da4e857b0B9", "DAOToken": "0x21feF5163Ae7779ce01F1AaA3844b208Dcc14cd8", @@ -3104,7 +3189,7 @@ } }, "0.0.1-rc.28": { - "name": "Guileless Ukulele", + "name": "Amatory Exorcism", "Controller": "0x80bFAB2dD8f87a3404Db835a0fAf6567f74511cF", "Avatar": "0x5Db9E2DDB0f2Ce073E66281c0AC31b98a044317F", "DAOToken": "0xdBb7627500F0C1eA4D5625e8B877272F35Fa9FC3", @@ -3122,7 +3207,7 @@ } }, "0.0.1-rc.29": { - "name": "Querulous Toilet", + "name": "Caustic Woodworkers", "Controller": "0xa836A3548fF66C04057F15cC86647deD67FA7691", "Avatar": "0xeC2bF87ED1abE01426A2Bf9E76f169da1bB3dBb0", "DAOToken": "0x3b5E5E4cD37112883e7E3165B5E7352AfE02a993", @@ -3140,7 +3225,7 @@ } }, "0.0.1-rc.30": { - "name": "Puckish Foreman", + "name": "Minatory Exorcism", "Controller": "0x43a2ae1Dc4d66D35691d57fd1118836a9Deff73C", "Avatar": "0x856A351C0f4D9fBB66B2e0C09FABBcD51BFb3c94", "DAOToken": "0x0b9E6fA76f2a2c9b1Ad43C762dBB0CC4fF47f217", @@ -3158,7 +3243,7 @@ } }, "0.0.1-rc.31": { - "name": "Propitious Limner", + "name": "Egregious Foreman", "Controller": "0xAC8d151778De3188E2102993707f3E81904d1A59", "Avatar": "0x87499e03eaf6b1C2F7F6468202a02A4E00aDaFDf", "DAOToken": "0x0203188806D5334b697F01215289505D73a54714", @@ -3176,7 +3261,7 @@ } }, "0.0.1-rc.32": { - "name": "Serpentine Stylist", + "name": "Insidious Maintenance", "Controller": "0x9b5BbDF6DDeA5f3F40f2bd303e48e526f121c54B", "Avatar": "0x89c1417513bAcBabAF4665B24b01CF895be766f6", "DAOToken": "0x49cDE07485288950980E0E1BAE079013B68bD57d", @@ -3194,7 +3279,7 @@ } }, "0.0.1-rc.33": { - "name": "Garrulous Moldmaker", + "name": "Amatory Pancake", "Controller": "0x3C934fC6367dD028912A53a645032B2fF45d89b8", "Avatar": "0x4Da071cddaAcd4D3C169b459d85E71b79F9dB203", "DAOToken": "0x0624870EDA2B6c6484F69F1ab2bec744D78cdB50", @@ -3212,7 +3297,7 @@ } }, "0.0.1-rc.34": { - "name": "Mannered Trampoline", + "name": "Turgid Cupcake", "Controller": "0x3cB35bE42c6842c04Ef3437ff3b24244c4B46FAD", "Avatar": "0x1084124d079eEB896a4c06C150F255858864CAEe", "DAOToken": "0xf3E525eA1AFF7F65dBCaA56410Fe2F580Cb41A61", @@ -3230,7 +3315,7 @@ } }, "0.0.1-rc.35": { - "name": "Quiescent Dolls", + "name": "Pervasive Patternmaker", "Controller": "0x355Ef87B5C48288ef66912315547277558A01F99", "Avatar": "0x305A6e5d9876bBAaDAA369574aAFA96efEa7828e", "DAOToken": "0xeE34Cc7A51534C09971464428aB8892fCd728914", @@ -3248,7 +3333,7 @@ } }, "0.0.1-rc.36": { - "name": "Dilatory Make-up artist", + "name": "Intransigent Beader", "Controller": "0xa3268826e5e34E657E87A524B98f7207B00D0741", "Avatar": "0x0a880a2A9c54fce5263A35C8E9E32a5984c16701", "DAOToken": "0x7b0B9b8c83c9091aCbEF1DBafdD561F1F905cE27", @@ -3266,7 +3351,7 @@ } }, "0.0.1-rc.37": { - "name": "Risible Sawfiler", + "name": "Arcadian Director", "Controller": "0x4fdc8ec38Cc1e98d92AB8081Ff9b6055c2691116", "Avatar": "0xcB1456BA91E3D2DDb5a2621b1Bcd562b604eC470", "DAOToken": "0x443eF67B5Da9079ee02486D97F855dcB9446bd0E", @@ -3284,7 +3369,7 @@ } }, "0.0.1-rc.38": { - "name": "Pernicious Potato", + "name": "Loquacious Cookies", "Controller": "0x5f7971E28aaFD866116489b2356665185C18698f", "Avatar": "0x2c4D2303AFba4150E864F1ddfA89A793D780e1ef", "DAOToken": "0x7d9b0E5Bf2D3eAba1Bcf343C4c0C0EB8FE37e5F9", @@ -3302,7 +3387,7 @@ } }, "0.0.1-rc.39": { - "name": "Insidious Beader", + "name": "Quiescent Nibblets", "Controller": "0x27f5BA453f783bAbF94859D0D21Cd2F46429Fd40", "Avatar": "0x7bf31A1002d08Ca0E56C234B6CB5508964b1eA9A", "DAOToken": "0x382749643c56bdaa19cdae8faa8f03bf85032018", @@ -3320,7 +3405,7 @@ } }, "0.0.1-rc.40": { - "name": "Minatory Chair", + "name": "Rhadamanthine Limner", "Controller": "0xa4b489af0cA331B70cac60063C62bCAe228E5B40", "Avatar": "0x8B4267174403bf8200aFe291F93c1D99Dd25dB47", "DAOToken": "0x10087845DeC38F01d5DD65fbd65dda1a25e2C268", @@ -3338,7 +3423,7 @@ } }, "0.0.1-rc.41": { - "name": "Noxious Stick figures", + "name": "Turgid Director", "Controller": "0xBb1225E98514500F80973c219dA8D448cC274dA1", "Avatar": "0xe3896d9f7F2A63315480724eC9811bFA1fA7Af4b", "DAOToken": "0xaD32B9c15d6c6A0db9bB5Ac8B40D97D250e6C00c", @@ -3356,7 +3441,7 @@ } }, "0.0.1-rc.42": { - "name": "Egregious Panel beater", + "name": "Parsimonious Foreman", "Controller": "0xACB6CD6B783a08583E4E0939EEaeB02b337E6324", "Avatar": "0x83b2A8Bc441dA4564e7F9B1066b25007AcFfBF06", "DAOToken": "0x4db3DBEf077bB02584299f4799B530dD80e42a74", @@ -3374,7 +3459,7 @@ } }, "0.0.1-rc.43": { - "name": "Bellicose Toilet", + "name": "Pervasive Beader", "Controller": "0xEb9b2B602730C947cc1f5D25df8C6a61EbF1a462", "Avatar": "0xd0eE0abC9dE02fF03ef52D7154caF132a8281986", "DAOToken": "0xfa05b428caa0CdDF893F4C52577268DaA34cF3Ac", @@ -3392,7 +3477,7 @@ } }, "0.0.1-rc.44": { - "name": "Recalcitant Locomotive", + "name": "Rhadamanthine Flatter", "Controller": "0x1f550C248164D56B4687233199F358d2d07613D3", "Avatar": "0x4b1C7Ff8399659Ad9A328302630384fCbEbF5565", "DAOToken": "0x5ec8956Cc25eF7c0DA6c170478d80A1f1C457DC4", @@ -3410,7 +3495,7 @@ } }, "0.0.1-rc.45": { - "name": "Invidious Circus", + "name": "Parsimonious Producer", "Controller": "0x3Dd0Ef3380D3Ed0f85d5aD450107917182e0b424", "Avatar": "0xa3295ffE93c0367439f7e0aB8F6098F0AFC0e033", "DAOToken": "0xae0f7afC750Cd521d1FD3124310B695E921a3FaC", @@ -3428,7 +3513,7 @@ } }, "0.0.1-rc.46": { - "name": "Dilatory Miller", + "name": "Redolent Potato", "Controller": "0x7A8688A13794B93C6AB19bAe31d1a2E7502DD86E", "Avatar": "0xe7bb34A04392C38d43a70b0Df0a2718De7342137", "DAOToken": "0xC11C09A362f30A3c4BCEDabf56523E451B6a66A0", @@ -3446,7 +3531,7 @@ } }, "0.0.1-rc.47": { - "name": "Fulsome Moldmaker", + "name": "Defamatory Stick figures", "Controller": "0xAD5CdcDF8EC2B3c7368c8A296e4991D3503e7F0D", "Avatar": "0xCbDB539Fcfda1a04B743df01B95927f298ABEDe2", "DAOToken": "0xD1749118c166abed5b04Bac27a2EB35D5e321Dc7", @@ -3464,7 +3549,7 @@ } }, "0.0.1-rc.48": { - "name": "Dilatory Leadman", + "name": "Pervasive Patternmaker", "Controller": "0x53f3FDFA279CD0e746D2918adBEc582021b6c26b", "Avatar": "0xE1a54b1F6F00eFEE0C040BDCAde1d620dE6F5296", "DAOToken": "0x1530BcD161c33625C26227c380636d1901E48709", @@ -3482,7 +3567,7 @@ } }, "0.0.1-rc.49": { - "name": "Uxorious Carnival", + "name": "Precipitate Bushes", "Controller": "0x760783a5d1c5faB89d5c6F4aDCb0A810d63867e2", "Avatar": "0x1D420fb202536F577E0A6588E50b667000105EFd", "DAOToken": "0x372D28B3dAe8bf706886ED938fd428bCd9C4f396", @@ -3500,7 +3585,7 @@ } }, "0.0.1-rc.50": { - "name": "Caustic Artist", + "name": "Spasmodic Bushes", "Controller": "0xdE1308dFfE6dcd88B59AEC84cBFA62634131f115", "Avatar": "0xf21d2B69685bfB313690872281C94d35f0e2Fee1", "DAOToken": "0x0D0D262f4D3DE52d876915B081e9EAcB6718F8Dc", @@ -3518,7 +3603,7 @@ } }, "0.0.1-rc.51": { - "name": "Gustatory Colorist", + "name": "Taciturn Sea barnacles", "Controller": "0x7bcD99E186Ac019A219269775F166327E9Ae8d2D", "Avatar": "0x43a51A5015C764CC2FF0Fe284e113c3780D27bb7", "DAOToken": "0xc0004D94d95b0D14A9377b51566a5c6F72874F42", @@ -3536,7 +3621,7 @@ } }, "0.0.1-rc.52": { - "name": "Judicious Make-up artist", + "name": "Effulgent Miller", "Controller": "0xf530049e4995c6840e4e4eD1309E165819b96527", "Avatar": "0x9B796B5146D5f8bc4d37bdAC7cd8B19Fc0A1076B", "DAOToken": "0x1ed7feC1E9d6E9d73b60cbd43ea805DB0745Ea2f", @@ -3552,6 +3637,24 @@ "DemoDAOToken": "0x107f6806F6B132485Db9F1819481208e4D011E24", "DemoReputation": "0x628E9AF026A42A6f10489be06f3Ff438205Fb1DC" } + }, + "0.0.1-rc.53": { + "name": "Voluble Exorcism", + "Controller": "0xd92576ef8dF11c6fc3873e587d70430d65852D9C", + "Avatar": "0x8726970A8815816d5150FfD07C1A78eC21007037", + "DAOToken": "0xFD7add689F760af282B1b7f88cEd578704A37Eb5", + "Reputation": "0xDf05800c59d193e6bd15df82177a6ab828fAF94d", + "ActionMock": "0x6a66cCA8AA1b2c983b408c8732A6A661cF8BAd00", + "gsProposalId": "0x0000000000000000000000000000000000000000000000000000000000000000", + "queuedProposalId": "0x0e9b7d5e59a624c3c3384c61b15160b1140bf5fcabcf0e3a7cf1d1d8bdbbd1bc", + "preBoostedProposalId": "0xb81cb747858a808ff3b153736f5b34b27c997dde4a3c4ed229c70dea31b5fd81", + "boostedProposalId": "0xe895d92733e71339fdda3aca3d704c3b349fd1bd80505ab1a069e15e4eafe8fe", + "executedProposalId": "0x1b5ce05667e15284448b17ca2fb2b6e1ed619ab7df74dc743832c5e53caa3d15", + "organs": { + "DemoAvatar": "0xdfb4d31dC3B40461C6cd697830229Ae82BB09e54", + "DemoDAOToken": "0x516a54a42E4615590b3816C7cFbD73F98ed14816", + "DemoReputation": "0x361B19f32b5eCA5337BA8486c6e770BCae1FA6Cc" + } } } }, @@ -3835,6 +3938,25 @@ "OrganizationRegister": "0x42D9b123cDB73085272805eCaFD781a5fc0bFcFd", "Redeemer": "0x195AcF643a581C3b3C8F8818fF1CBB2ef24934e2", "GenericSchemeMultiCallFactory": "0x9E77Ae4Df36A78C9805103FE0d2c4c37FB7c99E3" + }, + "0.0.1-rc.53": { + "GEN": "0x543Ff227F64Aa17eA132Bf9886cAb5DB55DCAddf", + "DAORegistry": "0xf7f490C714Cd5920eB5de0a060EE2D5962450401", + "DAOTracker": "0x0D6C70163d29Df62e59832A99dB55EDA452d967C", + "ControllerCreator": "0x6C2bD989C0D0d4a361062d95426eB32aCd7Cd138", + "DaoCreator": "0x116B10f72c0055dd88F539Fe044C537dDcc975eC", + "GenesisProtocol": "0x4abD71aA290d772919a1E837b1a15a745D65713c", + "SchemeRegistrar": "0x59B755D11fDe9c98E3552b7D9a279084b804F726", + "UpgradeScheme": "0x9eDa438eff653995E307e778c7A2207f05D1E2C8", + "GlobalConstraintRegistrar": "0xd45807004E5ae4e7b3e6238830747E8a6A48bdfF", + "ContributionReward": "0x16dea149815D5EDFE2cE3aE2EBc79967C6C17c45", + "AbsoluteVote": "0x6944b397Ea8A2BF11d51ab324eF26366802B338E", + "QuorumVote": "0x3BE62fDaf511e16098f98a4dd60F9c73F704C7f5", + "TokenCapGC": "0x62E0F9b7AFc7395c9B73144E61fd3377Bc1a1ED6", + "VoteInOrganizationScheme": "0x1946897AfcaDa89c85F8729b8c1d0C6A89d70d07", + "OrganizationRegister": "0x42D9b123cDB73085272805eCaFD781a5fc0bFcFd", + "Redeemer": "0x195AcF643a581C3b3C8F8818fF1CBB2ef24934e2", + "GenericSchemeMultiCallFactory": "0x9E77Ae4Df36A78C9805103FE0d2c4c37FB7c99E3" } }, "dao": { @@ -4602,6 +4724,25 @@ "OrganizationRegister": "0x9059d97bD27B27C5f9E22b0bec9BFda4897F59be", "Redeemer": "0xF0346eb95232c43f831AD26Bd4eF1061F96360aE", "GenericSchemeMultiCallFactory": "0x5e758CA1F282502790DcBEC17cBF5Cf8F031752B" + }, + "0.0.1-rc.53": { + "GEN": "0x543Ff227F64Aa17eA132Bf9886cAb5DB55DCAddf", + "DAORegistry": "0xE9f949fee2ae09a408C9b902031bC2A1BFF3AEe2", + "DAOTracker": "0x0CDA08edB47414536D515B0e66aBEBD01f13DBDA", + "ControllerCreator": "0x8A548263c634Cc2ffAd9360b39E00b6166b71118", + "DaoCreator": "0x438e317b0F0280736d63DD3002eF55643beD2A73", + "GenesisProtocol": "0x37D93C4cE04e9E9C22478482C8b41894aa59d27D", + "SchemeRegistrar": "0x3B6D2cF8f38168BA9B5C87FdbEA98372447D3A51", + "UpgradeScheme": "0xe2565e1A0647CaFbE00C0bfa0B0b603F5381C022", + "GlobalConstraintRegistrar": "0xb1Da7A3626d4AF7F3e687168261A9f1795ac4B3C", + "ContributionReward": "0x981A559536bC31b6903c3D847B84165AFa483599", + "AbsoluteVote": "0x02Dce537a7c9DfB12B81b1d3142e49DcC172418e", + "QuorumVote": "0x5b1e36E5dB4Dc072010dc5314e9bb4b2224316e4", + "TokenCapGC": "0x88a69337461A3AbB66b8d35CcB009282e9F6B59F", + "VoteInOrganizationScheme": "0xbE3320B1D3bFf94651639C041D1608b52eB65802", + "OrganizationRegister": "0x9059d97bD27B27C5f9E22b0bec9BFda4897F59be", + "Redeemer": "0xF0346eb95232c43f831AD26Bd4eF1061F96360aE", + "GenericSchemeMultiCallFactory": "0x5e758CA1F282502790DcBEC17cBF5Cf8F031752B" } }, "dao": { @@ -5360,6 +5501,25 @@ "OrganizationRegister": "0xA66a3e281b3dc8EE926dCBDBeb878cF5C54046Fe", "Redeemer": "0x4301ACE195B1797d9035113e679489c53280a019", "GenericSchemeMultiCallFactory": "0x02CF3E5759C9150B65C8476D0121f2BB66BFfFcd" + }, + "0.0.1-rc.53": { + "GEN": "0x543Ff227F64Aa17eA132Bf9886cAb5DB55DCAddf", + "DAORegistry": "0x41C24232452057b9c812A94f84b8643Ee0253C44", + "DAOTracker": "0xe89625Ef4174D3dE05D4Ba4945773d7A6D27fC0D", + "ControllerCreator": "0xAA3Cd873E5076DFac9D42e2837Cc260452F51271", + "DaoCreator": "0x16D0132814b4D427381c96Cf1F4741A32315f31B", + "GenesisProtocol": "0xB99f1936CFeAb1Aa9C2c6C3520D89e223227F23f", + "SchemeRegistrar": "0x4F7a0b98CCFab5f723c5001e92ea0ac3A02E78a7", + "UpgradeScheme": "0xA461dc2850d68040785cC846Fd637D0427B3AbD9", + "GlobalConstraintRegistrar": "0xe375C85d475ebaaCCEc2Bc4c39DcdC23EcF58246", + "ContributionReward": "0x8D3b1f439b7C1e25ebE5e19123d0451EaDDCe407", + "AbsoluteVote": "0x718a138868a76436ec038B1AcC2aA70097578299", + "QuorumVote": "0x160a66E2834F4484dEBC4a59C0Ea7E1eb25Aaf87", + "TokenCapGC": "0x5Ca9Aa78E1A11F1577D274d536b015D8fDF9146A", + "VoteInOrganizationScheme": "0x66B96E7928D5D85D0360B8FdAF1B5C80168FAE6A", + "OrganizationRegister": "0xA66a3e281b3dc8EE926dCBDBeb878cF5C54046Fe", + "Redeemer": "0x4301ACE195B1797d9035113e679489c53280a019", + "GenericSchemeMultiCallFactory": "0x02CF3E5759C9150B65C8476D0121f2BB66BFfFcd" } }, "dao": { @@ -5618,6 +5778,25 @@ "OrganizationRegister": "0xBBEaF0fc7B527B674Bae8d81944D1Dea5c032010", "Redeemer": "0xA83CEC88B3843c042B0bf9a572F78A2cA87FB8c9", "GenericSchemeMultiCallFactory": "0x99e226ff96C96C9ec8e4908b152fD334B2ABEBCC" + }, + "0.0.1-rc.53": { + "GEN": "0x543Ff227F64Aa17eA132Bf9886cAb5DB55DCAddf", + "DAORegistry": "0x870CcB43aB901979A82D1281F9bE1F1825ad3D21", + "DAOTracker": "0x4a48e656cB9D6a34bC6D30130Cb6A07eeb89a208", + "ControllerCreator": "0x7468D6ea1D43FC4AB52f958a3C53b812a0Dc5bb5", + "DaoCreator": "0xA0b72D6c1869fACb77BD074AeD41A4D56baB5b82", + "GenesisProtocol": "0x70a886eB4a044C58e283ea43DD87739fbeC68880", + "SchemeRegistrar": "0x1F42b0605C33B6757e07d6ed477f081b066b0949", + "UpgradeScheme": "0xdBD43BdA8e7D3ea7867FB921276dE10e4380f1D9", + "GlobalConstraintRegistrar": "0xda31AfF37b6dC4a5EcDd14ce56a9C8539010339d", + "ContributionReward": "0xD0384b6d88Ea290B60AdBc9aA1993B23FF715412", + "AbsoluteVote": "0x11A992913961169228071037D3155aaCEf132Ef7", + "QuorumVote": "0x1E04D1E5c4731Fc26B8C4A836cF47ad3cE77AC52", + "TokenCapGC": "0xFB4Bbe8d65A94d0F67B7C7BaC660A203b61A3e39", + "VoteInOrganizationScheme": "0xcAcc791F489909EBa4Dd5E65c98403E117c43d33", + "OrganizationRegister": "0xBBEaF0fc7B527B674Bae8d81944D1Dea5c032010", + "Redeemer": "0xA83CEC88B3843c042B0bf9a572F78A2cA87FB8c9", + "GenericSchemeMultiCallFactory": "0x99e226ff96C96C9ec8e4908b152fD334B2ABEBCC" } }, "dao": { diff --git a/package-lock.json b/package-lock.json index 1f4eb0b9..0b57210b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@daostack/migration", - "version": "0.0.1-rc.52-v1", + "version": "0.0.1-rc.53-v0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -31,9 +31,9 @@ } }, "@daostack/arc": { - "version": "0.0.1-rc.52", - "resolved": "https://registry.npmjs.org/@daostack/arc/-/arc-0.0.1-rc.52.tgz", - "integrity": "sha512-WotT6bOWiiAqEYPdiaqJZjmv2a71uu7/W2A3NAb9Iww473oE649UMfMgp6aWh4MWy8RObJ9hc6S+DHhxcD/scA==", + "version": "0.0.1-rc.53", + "resolved": "https://registry.npmjs.org/@daostack/arc/-/arc-0.0.1-rc.53.tgz", + "integrity": "sha512-HlkLYNtrZfjIN8lt/ppTN4f5qedYMBcGcqC87vnQ/tfZ0e+wTuNq2rAXjHWT81xNAoGqi7EVWJ6ttWV3VTNKrA==", "requires": { "@daostack/infra": "0.0.1-rc.21", "math": "0.0.3", @@ -3249,9 +3249,9 @@ "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" }, "get-intrinsic": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.1.tgz", - "integrity": "sha512-ZnWP+AmS1VUaLgTRy47+zKtjTxz+0xMpx3I52i+aalBK1QP19ggLF3Db89KJX7kjfOfP2eoa01qc++GwPgufPg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.2.tgz", + "integrity": "sha512-aeX0vrFm21ILl3+JpFFRNe9aUvp6VFZb2/CTbgLb8j75kOhvoNYjt9d8KA/tJG4gSo8nzEDedRl0h7vDmBYRVg==", "dev": true, "requires": { "function-bind": "^1.1.1", @@ -6796,9 +6796,9 @@ } }, "web3-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.3.0.tgz", - "integrity": "sha512-2mS5axFCbkhicmoDRuJeuo0TVGQDgC2sPi/5dblfVC+PMtX0efrb8Xlttv/eGkq7X4E83Pds34FH98TP2WOUZA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.3.1.tgz", + "integrity": "sha512-9gPwFm8SXtIJuzdrZ37PRlalu40fufXxo+H2PiCwaO6RpKGAvlUlWU0qQbyToFNXg7W2H8djEgoAVac8NLMCKQ==", "requires": { "bn.js": "^4.11.9", "eth-lib": "0.2.8", diff --git a/package.json b/package.json index 2f913459..f4c20799 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@daostack/migration", - "version": "0.0.1-rc.52-v1", + "version": "0.0.1-rc.53-v0", "description": "A repo for handling DAOstack contract migrations", "main": "index.js", "bin": { @@ -47,7 +47,7 @@ }, "homepage": "https://github.com/daostack/migration#readme", "dependencies": { - "@daostack/arc": "0.0.1-rc.52", + "@daostack/arc": "0.0.1-rc.53", "@daostack/arc-hive": "0.0.1-rc.4", "ethereumjs-wallet": "^0.6.3", "fstream": "^1.0.12",