@daostack/arc-experimental
Version:
A platform for building DAOs
417 lines (416 loc) • 34 kB
JSON
{
"contractName": "SignalScheme",
"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"
},
{
"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": "_param",
"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": "uint256",
"name": "_signalType",
"type": "uint256"
},
{
"internalType": "bytes32",
"name": "_voteApproveParams",
"type": "bytes32"
},
{
"internalType": "contract IntVoteInterface",
"name": "_votingMachine",
"type": "address"
},
{
"internalType": "uint256[11]",
"name": "_votingParams",
"type": "uint256[11]"
},
{
"internalType": "address",
"name": "_voteOnBehalf",
"type": "address"
}
],
"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": [],
"name": "params",
"outputs": [
{
"internalType": "bytes32",
"name": "voteApproveParams",
"type": "bytes32"
},
{
"internalType": "contract IntVoteInterface",
"name": "intVote",
"type": "address"
},
{
"internalType": "uint256",
"name": "signalType",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"name": "proposals",
"outputs": [
{
"internalType": "string",
"name": "descriptionHash",
"type": "string"
},
{
"internalType": "bool",
"name": "executed",
"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": "string",
"name": "_descriptionHash",
"type": "string"
}
],
"name": "proposeSignal",
"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": "0x608060405234801561001057600080fd5b5061186f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80639588378e11610097578063cff0ab9611610066578063cff0ab9614610353578063d176ffc214610381578063d29b5d2f146103cc578063f81f8bf6146103fe576100f5565b80639588378e146102975780639d4c162d146102c3578063b551c373146102fa578063bea75f2814610317576100f5565b80635aef7de6116100d35780635aef7de6146101d65780636b8eb403146101de5780637a5cb92c1461020a5780638543478814610227576100f5565b806332ed5b12146100fa5780633edf7ca1146101985780634ea2c7ec146101bc575b600080fd5b6101176004803603602081101561011057600080fd5b5035610430565b60405180806020018315158152602001828103825284818151815260200191508051906020019080838360005b8381101561015c578181015183820152602001610144565b50505050905090810190601f1680156101895780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6101a06104da565b604080516001600160a01b039092168252519081900360200190f35b6101c46104e9565b60408051918252519081900360200190f35b6101a06104ef565b6101c4600480360360408110156101f457600080fd5b506001600160a01b0381351690602001356104fe565b6101c46004803603602081101561022057600080fd5b50356105d8565b6101c46004803603602081101561023d57600080fd5b81019060208101813564010000000081111561025857600080fd5b82018360208201111561026a57600080fd5b8035906020019184600183028401116401000000008311171561028c57600080fd5b5090925090506105ea565b6101c4600480360360408110156102ad57600080fd5b506001600160a01b038135169060200135610993565b6102e6600480360360408110156102d957600080fd5b5080359060200135610ac4565b604080519115158252519081900360200190f35b6101c46004803603602081101561031057600080fd5b5035610c33565b6102e66004803603608081101561032d57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610eca565b61035b61102e565b604080519384526001600160a01b03909216602084015282820152519081900360600190f35b6103ca600480360361020081101561039857600080fd5b506001600160a01b038135811691602081013591604082013591606081013582169160808201916101e0013516611046565b005b6102e6600480360360608110156103e257600080fd5b508035906001600160a01b03602082013516906040013561116b565b6102e66004803603606081101561041457600080fd5b508035906001600160a01b0360208201351690604001356112c6565b60376020908152600091825260409182902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529092918391908301828280156104c75780601f1061049c576101008083540402835291602001916104c7565b820191906000526020600020905b8154815290600101906020018083116104aa57829003601f168201915b5050506001909301549192505060ff1682565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610557576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d60208110156105ce57600080fd5b5051949350505050565b60366020526000908152604090205481565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561062f57600080fd5b505afa158015610643573d6000803e3d6000fd5b505050506040513d602081101561065957600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156106a357600080fd5b505afa1580156106b7573d6000803e3d6000fd5b505050506040513d60208110156106cd57600080fd5b505161071b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561076957600080fd5b505afa15801561077d573d6000803e3d6000fd5b505050506040513d602081101561079357600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156107dd57600080fd5b505afa1580156107f1573d6000803e3d6000fd5b505050506040513d602081101561080757600080fd5b5051610855576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60395460385460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b505050506040513d60208110156108ea57600080fd5b50516000818152603760205260409020909150610908908585611778565b50603a54603354604080516020808252810187905284926001600160a01b0316917f940af78fa85d990be5623aeca8b988922784c8c782b1c2c2fb416d83c05547fb91899189919081908101848480828437600083820152604051601f909101601f19169092018290039550909350505050a460008181526036602052604090204390559392505050565b60345460009082906001600160a01b031633146109ec576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610a3a57600080fd5b505afa158015610a4e573d6000803e3d6000fd5b505050506040513d6020811015610a6457600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156105a457600080fd5b60345460009083906001600160a01b03163314610b1d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b60008481526037602052604090206001015460ff1615610b3c57600080fd5b60008481526037602052604090206001908101805460ff191682179055831415610c2957603a54603354600086815260376020908152604091829020825182815281546002600019600183161561010002019091160492810183905289946001600160a01b0316937fefc186437cd31fb390ee7bfa83473db0ede42b31121c466bb7afb8b3f665ca9893829182019084908015610c1a5780601f10610bef57610100808354040283529160200191610c1a565b820191906000526020600020905b815481529060010190602001808311610bfd57829003601f168201915b50509250505060405180910390a45b5060019392505050565b60345460009082906001600160a01b03163314610c8c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cda57600080fd5b505afa158015610cee573d6000803e3d6000fd5b505050506040513d6020811015610d0457600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610d4e57600080fd5b505afa158015610d62573d6000803e3d6000fd5b505050506040513d6020811015610d7857600080fd5b5051610dc6576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610e1457600080fd5b505afa158015610e28573d6000803e3d6000fd5b505050506040513d6020811015610e3e57600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015610e9757600080fd5b505afa158015610eab573d6000803e3d6000fd5b505050506040513d6020811015610ec157600080fd5b50519392505050565b60345460009082906001600160a01b03163314610f23576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f7157600080fd5b505afa158015610f85573d6000803e3d6000fd5b505050506040513d6020811015610f9b57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015610ff857600080fd5b505af115801561100c573d6000803e3d6000fd5b505050506040513d602081101561102257600080fd5b50519695505050505050565b603854603954603a546001600160a01b039091169083565b600054610100900460ff168061105f575061105f6113ec565b8061106d575060005460ff16155b6110a85760405162461bcd60e51b815260040180806020018281038252602e81526020018061180c602e913960400191505060405180910390fd5b600054610100900460ff161580156110d3576000805460ff1961ff0019909116610100171660011790555b61110a87858786600b806020026040519081016040528092919082600b602002808284376000920191909152508891506113f29050565b604080516060810182526035548082526001600160a01b0387166020830181905291909201889052603891909155603980546001600160a01b0319169091179055603a8690558015611162576000805461ff00191690555b50505050505050565b60345460009082906001600160a01b031633146111c4576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561121257600080fd5b505afa158015611226573d6000803e3d6000fd5b505050506040513d602081101561123c57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561129157600080fd5b505af11580156112a5573d6000803e3d6000fd5b505050506040513d60208110156112bb57600080fd5b505195945050505050565b60345460009082906001600160a01b0316331461131f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561136d57600080fd5b505afa158015611381573d6000803e3d6000fd5b505050506040513d602081101561139757600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561129157600080fd5b303b1590565b6001600160a01b03841661144d576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6114568561165f565b603480546001600160a01b0319166001600160a01b03861617905582611652576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b838110156114c05781810151838201526020016114a8565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156114f257600080fd5b505afa158015611506573d6000803e3d6000fd5b505050506040513d602081101561151c57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561156e57600080fd5b505afa158015611582573d6000803e3d6000fd5b505050506040513d6101a081101561159957600080fd5b505190508061164b57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156115ea5781810151838201526020016115d2565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561161e57600080fd5b505af1158015611632573d6000803e3d6000fd5b505050506040513d602081101561164857600080fd5b50505b5050611658565b60358390555b5050505050565b600054610100900460ff168061167857506116786113ec565b80611686575060005460ff16155b6116c15760405162461bcd60e51b815260040180806020018281038252602e81526020018061180c602e913960400191505060405180910390fd5b600054610100900460ff161580156116ec576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611747576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611774576000805461ff00191690555b5050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117b95782800160ff198235161785556117e6565b828001600101855582156117e6579182015b828111156117e65782358255916020019190600101906117cb565b506117f29291506117f6565b5090565b5b808211156117f257600081556001016117f756fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220ae93608691bae1b1514eef8c03ab47f928aeaa11dea25940f6f44c40b828bef864736f6c634300060c0033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80639588378e11610097578063cff0ab9611610066578063cff0ab9614610353578063d176ffc214610381578063d29b5d2f146103cc578063f81f8bf6146103fe576100f5565b80639588378e146102975780639d4c162d146102c3578063b551c373146102fa578063bea75f2814610317576100f5565b80635aef7de6116100d35780635aef7de6146101d65780636b8eb403146101de5780637a5cb92c1461020a5780638543478814610227576100f5565b806332ed5b12146100fa5780633edf7ca1146101985780634ea2c7ec146101bc575b600080fd5b6101176004803603602081101561011057600080fd5b5035610430565b60405180806020018315158152602001828103825284818151815260200191508051906020019080838360005b8381101561015c578181015183820152602001610144565b50505050905090810190601f1680156101895780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6101a06104da565b604080516001600160a01b039092168252519081900360200190f35b6101c46104e9565b60408051918252519081900360200190f35b6101a06104ef565b6101c4600480360360408110156101f457600080fd5b506001600160a01b0381351690602001356104fe565b6101c46004803603602081101561022057600080fd5b50356105d8565b6101c46004803603602081101561023d57600080fd5b81019060208101813564010000000081111561025857600080fd5b82018360208201111561026a57600080fd5b8035906020019184600183028401116401000000008311171561028c57600080fd5b5090925090506105ea565b6101c4600480360360408110156102ad57600080fd5b506001600160a01b038135169060200135610993565b6102e6600480360360408110156102d957600080fd5b5080359060200135610ac4565b604080519115158252519081900360200190f35b6101c46004803603602081101561031057600080fd5b5035610c33565b6102e66004803603608081101561032d57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610eca565b61035b61102e565b604080519384526001600160a01b03909216602084015282820152519081900360600190f35b6103ca600480360361020081101561039857600080fd5b506001600160a01b038135811691602081013591604082013591606081013582169160808201916101e0013516611046565b005b6102e6600480360360608110156103e257600080fd5b508035906001600160a01b03602082013516906040013561116b565b6102e66004803603606081101561041457600080fd5b508035906001600160a01b0360208201351690604001356112c6565b60376020908152600091825260409182902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529092918391908301828280156104c75780601f1061049c576101008083540402835291602001916104c7565b820191906000526020600020905b8154815290600101906020018083116104aa57829003601f168201915b5050506001909301549192505060ff1682565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610557576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d60208110156105ce57600080fd5b5051949350505050565b60366020526000908152604090205481565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561062f57600080fd5b505afa158015610643573d6000803e3d6000fd5b505050506040513d602081101561065957600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156106a357600080fd5b505afa1580156106b7573d6000803e3d6000fd5b505050506040513d60208110156106cd57600080fd5b505161071b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561076957600080fd5b505afa15801561077d573d6000803e3d6000fd5b505050506040513d602081101561079357600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156107dd57600080fd5b505afa1580156107f1573d6000803e3d6000fd5b505050506040513d602081101561080757600080fd5b5051610855576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60395460385460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b505050506040513d60208110156108ea57600080fd5b50516000818152603760205260409020909150610908908585611778565b50603a54603354604080516020808252810187905284926001600160a01b0316917f940af78fa85d990be5623aeca8b988922784c8c782b1c2c2fb416d83c05547fb91899189919081908101848480828437600083820152604051601f909101601f19169092018290039550909350505050a460008181526036602052604090204390559392505050565b60345460009082906001600160a01b031633146109ec576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610a3a57600080fd5b505afa158015610a4e573d6000803e3d6000fd5b505050506040513d6020811015610a6457600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156105a457600080fd5b60345460009083906001600160a01b03163314610b1d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b60008481526037602052604090206001015460ff1615610b3c57600080fd5b60008481526037602052604090206001908101805460ff191682179055831415610c2957603a54603354600086815260376020908152604091829020825182815281546002600019600183161561010002019091160492810183905289946001600160a01b0316937fefc186437cd31fb390ee7bfa83473db0ede42b31121c466bb7afb8b3f665ca9893829182019084908015610c1a5780601f10610bef57610100808354040283529160200191610c1a565b820191906000526020600020905b815481529060010190602001808311610bfd57829003601f168201915b50509250505060405180910390a45b5060019392505050565b60345460009082906001600160a01b03163314610c8c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cda57600080fd5b505afa158015610cee573d6000803e3d6000fd5b505050506040513d6020811015610d0457600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610d4e57600080fd5b505afa158015610d62573d6000803e3d6000fd5b505050506040513d6020811015610d7857600080fd5b5051610dc6576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610e1457600080fd5b505afa158015610e28573d6000803e3d6000fd5b505050506040513d6020811015610e3e57600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015610e9757600080fd5b505afa158015610eab573d6000803e3d6000fd5b505050506040513d6020811015610ec157600080fd5b50519392505050565b60345460009082906001600160a01b03163314610f23576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f7157600080fd5b505afa158015610f85573d6000803e3d6000fd5b505050506040513d6020811015610f9b57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015610ff857600080fd5b505af115801561100c573d6000803e3d6000fd5b505050506040513d602081101561102257600080fd5b50519695505050505050565b603854603954603a546001600160a01b039091169083565b600054610100900460ff168061105f575061105f6113ec565b8061106d575060005460ff16155b6110a85760405162461bcd60e51b815260040180806020018281038252602e81526020018061180c602e913960400191505060405180910390fd5b600054610100900460ff161580156110d3576000805460ff1961ff0019909116610100171660011790555b61110a87858786600b806020026040519081016040528092919082600b602002808284376000920191909152508891506113f29050565b604080516060810182526035548082526001600160a01b0387166020830181905291909201889052603891909155603980546001600160a01b0319169091179055603a8690558015611162576000805461ff00191690555b50505050505050565b60345460009082906001600160a01b031633146111c4576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561121257600080fd5b505afa158015611226573d6000803e3d6000fd5b505050506040513d602081101561123c57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561129157600080fd5b505af11580156112a5573d6000803e3d6000fd5b505050506040513d60208110156112bb57600080fd5b505195945050505050565b60345460009082906001600160a01b0316331461131f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561136d57600080fd5b505afa158015611381573d6000803e3d6000fd5b505050506040513d602081101561139757600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561129157600080fd5b303b1590565b6001600160a01b03841661144d576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6114568561165f565b603480546001600160a01b0319166001600160a01b03861617905582611652576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b838110156114c05781810151838201526020016114a8565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156114f257600080fd5b505afa158015611506573d6000803e3d6000fd5b505050506040513d602081101561151c57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561156e57600080fd5b505afa158015611582573d6000803e3d6000fd5b505050506040513d6101a081101561159957600080fd5b505190508061164b57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156115ea5781810151838201526020016115d2565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561161e57600080fd5b505af1158015611632573d6000803e3d6000fd5b505050506040513d602081101561164857600080fd5b50505b5050611658565b60358390555b5050505050565b600054610100900460ff168061167857506116786113ec565b80611686575060005460ff16155b6116c15760405162461bcd60e51b815260040180806020018281038252602e81526020018061180c602e913960400191505060405180910390fd5b600054610100900460ff161580156116ec576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611747576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611774576000805461ff00191690555b5050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117b95782800160ff198235161785556117e6565b828001600101855582156117e6579182015b828111156117e65782358255916020019190600101906117cb565b506117f29291506117f6565b5090565b5b808211156117f257600081556001016117f756fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220ae93608691bae1b1514eef8c03ab47f928aeaa11dea25940f6f44c40b828bef864736f6c634300060c0033",
"linkReferences": {},
"deployedLinkReferences": {}
}