@daostack/arc-experimental
Version:
A platform for building DAOs
451 lines (450 loc) • 37.6 kB
JSON
{
"contractName": "VoteInOrganizationScheme",
"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"
},
{
"inputs": [],
"name": "avatar",
"outputs": [
{
"internalType": "contract Avatar",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "contract IERC20",
"name": "_stakingToken",
"type": "address"
},
{
"internalType": "bytes32",
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "balanceOfStakingToken",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"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"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_proposalId",
"type": "bytes32"
},
{
"internalType": "int256",
"name": "_decision",
"type": "int256"
}
],
"name": "executeProposal",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "getTotalReputationSupply",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "contract Avatar",
"name": "_avatar",
"type": "address"
},
{
"internalType": "contract IntVoteInterface",
"name": "_votingMachine",
"type": "address"
},
{
"internalType": "uint256[11]",
"name": "_votingParams",
"type": "uint256[11]"
},
{
"internalType": "address",
"name": "_voteOnBehalf",
"type": "address"
},
{
"internalType": "bytes32",
"name": "_voteParamsHash",
"type": "bytes32"
}
],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"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"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"name": "organizationProposals",
"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"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"name": "proposalsBlockNumber",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"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"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_owner",
"type": "address"
},
{
"internalType": "bytes32",
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "reputationOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"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"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "voteParamsHash",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "votingMachine",
"outputs": [
{
"internalType": "contract IntVoteInterface",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x608060405234801561001057600080fd5b50611b18806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639588378e1161008c578063bea75f2811610066578063bea75f2814610308578063d29b5d2f14610344578063d8145e2d14610376578063f81f8bf6146103c5576100ea565b80639588378e146102885780639d4c162d146102b4578063b551c373146102eb576100ea565b80635aef7de6116100c85780635aef7de6146101755780636b8eb4031461017d5780637a5cb92c146101a95780637d6513b2146101c6576100ea565b80633edf7ca1146100ef5780634ea2c7ec14610113578063540fbeb31461012d575b600080fd5b6100f76103f7565b604080516001600160a01b039092168252519081900360200190f35b61011b610406565b60408051918252519081900360200190f35b61017360048036036101e081101561014457600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c0013561040c565b005b6100f761044a565b61011b6004803603604081101561019357600080fd5b506001600160a01b038135169060200135610459565b61011b600480360360208110156101bf57600080fd5b5035610533565b61011b600480360360808110156101dc57600080fd5b6001600160a01b03823516916020810135916040820135919081019060808101606082013564010000000081111561021357600080fd5b82018360208201111561022557600080fd5b8035906020019184600183028401116401000000008311171561024757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610545945050505050565b61011b6004803603604081101561029e57600080fd5b506001600160a01b038135169060200135610a43565b6102d7600480360360408110156102ca57600080fd5b5080359060200135610b74565b604080519115158252519081900360200190f35b61011b6004803603602081101561030157600080fd5b5035610ffd565b6102d76004803603608081101561031e57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611294565b6102d76004803603606081101561035a57600080fd5b508035906001600160a01b0360208201351690604001356113f8565b6103936004803603602081101561038c57600080fd5b5035611553565b604080516001600160a01b03909516855260208501939093528383019190915215156060830152519081900360800190f35b6102d7600480360360608110156103db57600080fd5b508035906001600160a01b036020820135169060400135611587565b6034546001600160a01b031681565b60355481565b61044385858386600b806020026040519081016040528092919082600b602002808284376000920191909152508891506116ad9050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b031633146104b2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156104ff57600080fd5b505afa158015610513573d6000803e3d6000fd5b505050506040513d602081101561052957600080fd5b5051949350505050565b60366020526000908152604090205481565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561058a57600080fd5b505afa15801561059e573d6000803e3d6000fd5b505050506040513d60208110156105b457600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156105fe57600080fd5b505afa158015610612573d6000803e3d6000fd5b505050506040513d602081101561062857600080fd5b5051610676576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b600080866001600160a01b0316635142bc1e6040518163ffffffff1660e01b8152600401604080518083038186803b1580156106b157600080fd5b505afa1580156106c5573d6000803e3d6000fd5b505050506040513d60408110156106db57600080fd5b50805160209091015190925090508085118015906106f95750818510155b6107345760405162461bcd60e51b8152600401808060200182810382526023815260200180611a5d6023913960400191505060405180910390fd5b866001600160a01b031663a003651d876040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561077857600080fd5b505afa15801561078c573d6000803e3d6000fd5b505050506040513d60208110156107a257600080fd5b50518511156107e25760405162461bcd60e51b8152600401808060200182810382526035815260200180611a806035913960400191505060405180910390fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561084d57600080fd5b505af1158015610861573d6000803e3d6000fd5b505050506040513d602081101561087757600080fd5b810190808051906020019092919050505090506040518060800160405280896001600160a01b03168152602001888152602001878152602001600115158152506037600083815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550602082015181600101556040820151816002015560608201518160030160006101000a81548160ff021916908315150217905550905050603460009054906101000a90046001600160a01b03166001600160a01b031681603360009054906101000a90046001600160a01b03166001600160a01b03167f612d055dc0e586b349ae636d1de3fc64fbcf367d8c8c7406bd1823267cfe7e208b8b8b8b60405180856001600160a01b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156109ea5781810151838201526020016109d2565b50505050905090810190601f168015610a175780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a46000818152603660205260409020439055979650505050505050565b60345460009082906001600160a01b03163314610a9c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610aea57600080fd5b505afa158015610afe573d6000803e3d6000fd5b505050506040513d6020811015610b1457600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156104ff57600080fd5b60345460009083906001600160a01b03163314610bcd576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b610bd5611a35565b50600084815260376020908152604091829020825160808101845281546001600160a01b0316815260018201549281019290925260028101549282019290925260039091015460ff16151560608201819052610c3057600080fd5b60008581526037602052604080822080546001600160a01b03191681556001810183905560028101839055600301805460ff19169055603354905187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3606060008560011415610f3d5760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610cee57600080fd5b505afa158015610d02573d6000803e3d6000fd5b505050506040513d6020811015610d1857600080fd5b505184516020868101516040808901518151602480820194909452604480820192909252600060648083018290523060848085019190915285518085038201815260a4909401865296830180516001600160e01b031663359afa4960e01b178152945163057e2c8b60e31b81526001600160a01b038981166004830190815295820184905260609782019788528451928201929092528351999a50908a1698632bf164589897939692959293919091019190808383885b83811015610de7578181015183820152602001610dcf565b50505050905090810190601f168015610e145780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610e3557600080fd5b505af1158015610e49573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040908152811015610e7257600080fd5b815160208301805160405192949293830192919084640100000000821115610e9957600080fd5b908301906020820185811115610eae57600080fd5b8251640100000000811182820188101715610ec857600080fd5b82525081516020918201929091019080838360005b83811015610ef5578181015183820152602001610edd565b50505050905090810190601f168015610f225780820380516001836020036101000a031916815260200191505b50604052505050809450819350505081610f3b57600080fd5b505b60335460408051888152602080820183815286519383019390935285518b946001600160a01b0316937f7c1ea889aeb873862488f79e0228a2240ec23e80244de201dd45f39f603fc3c4938c938993919291606084019185019080838360005b83811015610fb5578181015183820152602001610f9d565b50505050905090810190601f168015610fe25780820380516001836020036101000a031916815260200191505b50935050505060405180910390a35060019695505050505050565b60345460009082906001600160a01b03163314611056576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110a457600080fd5b505afa1580156110b8573d6000803e3d6000fd5b505050506040513d60208110156110ce57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561111857600080fd5b505afa15801561112c573d6000803e3d6000fd5b505050506040513d602081101561114257600080fd5b5051611190576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156111de57600080fd5b505afa1580156111f2573d6000803e3d6000fd5b505050506040513d602081101561120857600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561126157600080fd5b505afa158015611275573d6000803e3d6000fd5b505050506040513d602081101561128b57600080fd5b50519392505050565b60345460009082906001600160a01b031633146112ed576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561133b57600080fd5b505afa15801561134f573d6000803e3d6000fd5b505050506040513d602081101561136557600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156113c257600080fd5b505af11580156113d6573d6000803e3d6000fd5b505050506040513d60208110156113ec57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611451576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561149f57600080fd5b505afa1580156114b3573d6000803e3d6000fd5b505050506040513d60208110156114c957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561151e57600080fd5b505af1158015611532573d6000803e3d6000fd5b505050506040513d602081101561154857600080fd5b505195945050505050565b60376020526000908152604090208054600182015460028301546003909301546001600160a01b0390921692909160ff1684565b60345460009082906001600160a01b031633146115e0576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561162e57600080fd5b505afa158015611642573d6000803e3d6000fd5b505050506040513d602081101561165857600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561151e57600080fd5b6001600160a01b038416611708576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61171185611916565b603480546001600160a01b0319166001600160a01b0386161790558261190d576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561177b578181015183820152602001611763565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156117ad57600080fd5b505afa1580156117c1573d6000803e3d6000fd5b505050506040513d60208110156117d757600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561182957600080fd5b505afa15801561183d573d6000803e3d6000fd5b505050506040513d6101a081101561185457600080fd5b505190508061190657604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156118a557818101518382015260200161188d565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b1580156118d957600080fd5b505af11580156118ed573d6000803e3d6000fd5b505050506040513d602081101561190357600080fd5b50505b5050610443565b50506035555050565b600054610100900460ff168061192f575061192f611a2f565b8061193d575060005460ff16155b6119785760405162461bcd60e51b815260040180806020018281038252602e815260200180611ab5602e913960400191505060405180910390fd5b600054610100900460ff161580156119a3576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166119fe576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611a2b576000805461ff00191690555b5050565b303b1590565b6040805160808101825260008082526020820181905291810182905260608101919091529056fe766f74652073686f756c6420626520696e2074686520616c6c6f7765642072616e6765766f74652073686f756c64206265203c3d206f726967696e616c2070726f706f73616c206e756d626572206f662063686f69636573436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212202081b41d9a301de67be95b7acecc65764df028ecc6a27a08a86ecd140b83d7bf64736f6c634300060c0033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639588378e1161008c578063bea75f2811610066578063bea75f2814610308578063d29b5d2f14610344578063d8145e2d14610376578063f81f8bf6146103c5576100ea565b80639588378e146102885780639d4c162d146102b4578063b551c373146102eb576100ea565b80635aef7de6116100c85780635aef7de6146101755780636b8eb4031461017d5780637a5cb92c146101a95780637d6513b2146101c6576100ea565b80633edf7ca1146100ef5780634ea2c7ec14610113578063540fbeb31461012d575b600080fd5b6100f76103f7565b604080516001600160a01b039092168252519081900360200190f35b61011b610406565b60408051918252519081900360200190f35b61017360048036036101e081101561014457600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c0013561040c565b005b6100f761044a565b61011b6004803603604081101561019357600080fd5b506001600160a01b038135169060200135610459565b61011b600480360360208110156101bf57600080fd5b5035610533565b61011b600480360360808110156101dc57600080fd5b6001600160a01b03823516916020810135916040820135919081019060808101606082013564010000000081111561021357600080fd5b82018360208201111561022557600080fd5b8035906020019184600183028401116401000000008311171561024757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610545945050505050565b61011b6004803603604081101561029e57600080fd5b506001600160a01b038135169060200135610a43565b6102d7600480360360408110156102ca57600080fd5b5080359060200135610b74565b604080519115158252519081900360200190f35b61011b6004803603602081101561030157600080fd5b5035610ffd565b6102d76004803603608081101561031e57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611294565b6102d76004803603606081101561035a57600080fd5b508035906001600160a01b0360208201351690604001356113f8565b6103936004803603602081101561038c57600080fd5b5035611553565b604080516001600160a01b03909516855260208501939093528383019190915215156060830152519081900360800190f35b6102d7600480360360608110156103db57600080fd5b508035906001600160a01b036020820135169060400135611587565b6034546001600160a01b031681565b60355481565b61044385858386600b806020026040519081016040528092919082600b602002808284376000920191909152508891506116ad9050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b031633146104b2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156104ff57600080fd5b505afa158015610513573d6000803e3d6000fd5b505050506040513d602081101561052957600080fd5b5051949350505050565b60366020526000908152604090205481565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561058a57600080fd5b505afa15801561059e573d6000803e3d6000fd5b505050506040513d60208110156105b457600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156105fe57600080fd5b505afa158015610612573d6000803e3d6000fd5b505050506040513d602081101561062857600080fd5b5051610676576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b600080866001600160a01b0316635142bc1e6040518163ffffffff1660e01b8152600401604080518083038186803b1580156106b157600080fd5b505afa1580156106c5573d6000803e3d6000fd5b505050506040513d60408110156106db57600080fd5b50805160209091015190925090508085118015906106f95750818510155b6107345760405162461bcd60e51b8152600401808060200182810382526023815260200180611a5d6023913960400191505060405180910390fd5b866001600160a01b031663a003651d876040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561077857600080fd5b505afa15801561078c573d6000803e3d6000fd5b505050506040513d60208110156107a257600080fd5b50518511156107e25760405162461bcd60e51b8152600401808060200182810382526035815260200180611a806035913960400191505060405180910390fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561084d57600080fd5b505af1158015610861573d6000803e3d6000fd5b505050506040513d602081101561087757600080fd5b810190808051906020019092919050505090506040518060800160405280896001600160a01b03168152602001888152602001878152602001600115158152506037600083815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550602082015181600101556040820151816002015560608201518160030160006101000a81548160ff021916908315150217905550905050603460009054906101000a90046001600160a01b03166001600160a01b031681603360009054906101000a90046001600160a01b03166001600160a01b03167f612d055dc0e586b349ae636d1de3fc64fbcf367d8c8c7406bd1823267cfe7e208b8b8b8b60405180856001600160a01b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156109ea5781810151838201526020016109d2565b50505050905090810190601f168015610a175780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a46000818152603660205260409020439055979650505050505050565b60345460009082906001600160a01b03163314610a9c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610aea57600080fd5b505afa158015610afe573d6000803e3d6000fd5b505050506040513d6020811015610b1457600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156104ff57600080fd5b60345460009083906001600160a01b03163314610bcd576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b610bd5611a35565b50600084815260376020908152604091829020825160808101845281546001600160a01b0316815260018201549281019290925260028101549282019290925260039091015460ff16151560608201819052610c3057600080fd5b60008581526037602052604080822080546001600160a01b03191681556001810183905560028101839055600301805460ff19169055603354905187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3606060008560011415610f3d5760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610cee57600080fd5b505afa158015610d02573d6000803e3d6000fd5b505050506040513d6020811015610d1857600080fd5b505184516020868101516040808901518151602480820194909452604480820192909252600060648083018290523060848085019190915285518085038201815260a4909401865296830180516001600160e01b031663359afa4960e01b178152945163057e2c8b60e31b81526001600160a01b038981166004830190815295820184905260609782019788528451928201929092528351999a50908a1698632bf164589897939692959293919091019190808383885b83811015610de7578181015183820152602001610dcf565b50505050905090810190601f168015610e145780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610e3557600080fd5b505af1158015610e49573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040908152811015610e7257600080fd5b815160208301805160405192949293830192919084640100000000821115610e9957600080fd5b908301906020820185811115610eae57600080fd5b8251640100000000811182820188101715610ec857600080fd5b82525081516020918201929091019080838360005b83811015610ef5578181015183820152602001610edd565b50505050905090810190601f168015610f225780820380516001836020036101000a031916815260200191505b50604052505050809450819350505081610f3b57600080fd5b505b60335460408051888152602080820183815286519383019390935285518b946001600160a01b0316937f7c1ea889aeb873862488f79e0228a2240ec23e80244de201dd45f39f603fc3c4938c938993919291606084019185019080838360005b83811015610fb5578181015183820152602001610f9d565b50505050905090810190601f168015610fe25780820380516001836020036101000a031916815260200191505b50935050505060405180910390a35060019695505050505050565b60345460009082906001600160a01b03163314611056576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110a457600080fd5b505afa1580156110b8573d6000803e3d6000fd5b505050506040513d60208110156110ce57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561111857600080fd5b505afa15801561112c573d6000803e3d6000fd5b505050506040513d602081101561114257600080fd5b5051611190576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156111de57600080fd5b505afa1580156111f2573d6000803e3d6000fd5b505050506040513d602081101561120857600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561126157600080fd5b505afa158015611275573d6000803e3d6000fd5b505050506040513d602081101561128b57600080fd5b50519392505050565b60345460009082906001600160a01b031633146112ed576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561133b57600080fd5b505afa15801561134f573d6000803e3d6000fd5b505050506040513d602081101561136557600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156113c257600080fd5b505af11580156113d6573d6000803e3d6000fd5b505050506040513d60208110156113ec57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611451576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561149f57600080fd5b505afa1580156114b3573d6000803e3d6000fd5b505050506040513d60208110156114c957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561151e57600080fd5b505af1158015611532573d6000803e3d6000fd5b505050506040513d602081101561154857600080fd5b505195945050505050565b60376020526000908152604090208054600182015460028301546003909301546001600160a01b0390921692909160ff1684565b60345460009082906001600160a01b031633146115e0576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561162e57600080fd5b505afa158015611642573d6000803e3d6000fd5b505050506040513d602081101561165857600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561151e57600080fd5b6001600160a01b038416611708576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61171185611916565b603480546001600160a01b0319166001600160a01b0386161790558261190d576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561177b578181015183820152602001611763565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156117ad57600080fd5b505afa1580156117c1573d6000803e3d6000fd5b505050506040513d60208110156117d757600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561182957600080fd5b505afa15801561183d573d6000803e3d6000fd5b505050506040513d6101a081101561185457600080fd5b505190508061190657604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156118a557818101518382015260200161188d565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b1580156118d957600080fd5b505af11580156118ed573d6000803e3d6000fd5b505050506040513d602081101561190357600080fd5b50505b5050610443565b50506035555050565b600054610100900460ff168061192f575061192f611a2f565b8061193d575060005460ff16155b6119785760405162461bcd60e51b815260040180806020018281038252602e815260200180611ab5602e913960400191505060405180910390fd5b600054610100900460ff161580156119a3576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166119fe576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611a2b576000805461ff00191690555b5050565b303b1590565b6040805160808101825260008082526020820181905291810182905260608101919091529056fe766f74652073686f756c6420626520696e2074686520616c6c6f7765642072616e6765766f74652073686f756c64206265203c3d206f726967696e616c2070726f706f73616c206e756d626572206f662063686f69636573436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212202081b41d9a301de67be95b7acecc65764df028ecc6a27a08a86ecd140b83d7bf64736f6c634300060c0033",
"linkReferences": {},
"deployedLinkReferences": {}
}