@daostack/arc-experimental
Version:
A platform for building DAOs
561 lines (560 loc) • 32.2 kB
JSON
{
"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"
},
{
"inputs": [],
"name": "MAX_NUM_OF_CHOICES",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "cancelVote",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "execute",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "getAllowedRangeOfChoices",
"outputs": [
{
"internalType": "uint256",
"name": "min",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "max",
"type": "uint256"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "getNumberOfChoices",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_precReq",
"type": "uint256"
},
{
"internalType": "address",
"name": "_voteOnBehalf",
"type": "address"
}
],
"name": "getParametersHash",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [],
"name": "isAbstainAllow",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_proposalId",
"type": "bytes32"
}
],
"name": "isVotable",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"name": "organizations",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"name": "parameters",
"outputs": [
{
"internalType": "uint256",
"name": "precReq",
"type": "uint256"
},
{
"internalType": "address",
"name": "voteOnBehalf",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"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"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "proposalsCnt",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"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"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_precReq",
"type": "uint256"
},
{
"internalType": "address",
"name": "_voteOnBehalf",
"type": "address"
}
],
"name": "setParameters",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"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"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"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"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_proposalId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "_choice",
"type": "uint256"
}
],
"name": "voteStatus",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x608060405234801561001057600080fd5b506113c4806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806351d997b2116100a2578063a003651d11610071578063a003651d1461031a578063b451291314610337578063ba51b14e1461035a578063c083510614610393578063e751f271146103b05761010b565b806351d997b2146102b157806388737b5e146102b95780638d22651e146102f35780639525c0cc146102fb5761010b565b8063289647e4116100de578063289647e4146101d957806332ed5b1214610205578063359afa491461025d5780635142bc1e146102a95761010b565b80630250680414610110578063119ce91b1461014e57806321b4b3dc1461019357806323d840f5146101ad575b600080fd5b61012d6004803603602081101561012657600080fd5b50356103cd565b604080519283526001600160a01b0390911660208301528051918290030190f35b61017a6004803603604081101561016457600080fd5b50803590602001356001600160a01b03166103ef565b6040805192835260208301919091528051918290030190f35b61019b610440565b60408051918252519081900360200190f35b61019b600480360360408110156101c357600080fd5b50803590602001356001600160a01b0316610446565b61019b600480360360408110156101ef57600080fd5b50803590602001356001600160a01b031661050a565b6102226004803603602081101561021b57600080fd5b5035610549565b6040805196875294151560208701526001600160a01b03909316858501526060850191909152608084015260a0830152519081900360c00190f35b6102956004803603608081101561027357600080fd5b50803590602081013590604081013590606001356001600160a01b0316610589565b604080519115158252519081900360200190f35b61017a6106c9565b6102956106d1565b61019b600480360360808110156102cf57600080fd5b508035906020810135906001600160a01b03604082013581169160600135166106d6565b61019b610961565b6103186004803603602081101561031157600080fd5b5035610966565b005b61019b6004803603602081101561033057600080fd5b50356109d7565b61019b6004803603604081101561034d57600080fd5b50803590602001356109ec565b6103776004803603602081101561037057600080fd5b5035610a0d565b604080516001600160a01b039092168252519081900360200190f35b610295600480360360208110156103a957600080fd5b5035610a28565b610295600480360360208110156103c657600080fd5b5035610a41565b600060208190529081526040902080546001909101546001600160a01b031682565b6000806103fa6112e4565b50505060008281526001602081815260408084206001600160a01b0386168552600601825292839020835180850190945280548085529201549201829052909250929050565b60035481565b6000606483111580156104595750600083115b6104aa576040805162461bcd60e51b815260206004820152601860248201527f5f70726563526571206973206f7574206f662072616e67650000000000000000604482015290519081900360640190fd5b60006104b6848461050a565b6040805180820182529586526001600160a01b039485166020808801918252600084815290819052919091209551865551600190950180546001600160a01b03191695909416949094179092555090919050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b60016020819052600091825260409091208054918101546002820154600383015460049093015460ff8316936101009093046001600160a01b0316929086565b600084815260016020819052604082200154859060ff166105eb576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008681526001602052604090206106016112fe565b506003810154600090815260208181526040808320815180830190925280548252600101546001600160a01b03169181018290529190156106ad5781602001516001600160a01b0316336001600160a01b0316146106a6576040805162461bcd60e51b815260206004820152601760248201527f766f746572206973206e6f7420617574686f72697a6564000000000000000000604482015290519081900360640190fd5b50846106b0565b50335b6106bc89828a8a610ab5565b9998505050505050505050565b6000600a9091565b600190565b60008381526020819052604081205461072d576040805162461bcd60e51b81526020600482015260146024820152731c185c985b595d195c9cc81b9bdd08195e1a5cdd60621b604482015290519081900360640190fd5b60008511801561073e5750600a8511155b6107795760405162461bcd60e51b815260040180806020018281038252602181526020018061134b6021913960400191505060405180910390fd5b600354604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906107b8906001610d8e565b6003556107c3611315565b606081810188815260808301888152336040808601828152815192861b602084810191909152958a901b6bffffffffffffffffffffffff191660348401528151808403602801815260489093018252825192860192909220865260018587018181526000898152828852838120895180825592519381018054965160ff1990971694151594909417610100600160a81b0319166101006001600160a01b03978816021790935595516002808401919091559451600383015560a0880151600490920191909155845291909352902054166108f4576001600160a01b0384166108ca578051600090815260026020526040902080546001600160a01b031916331790556108f4565b8051600090815260026020526040902080546001600160a01b0319166001600160a01b0386161790555b80516000908152600260209081526040918290205482518a8152339281019290925281830189905291516001600160a01b039092169184917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a35095945050505050565b600a81565b60008181526001602081905260409091200154819060ff166109c9576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6109d38233610def565b5050565b60009081526001602052604090206002015490565b60009182526001602090815260408084209284526005909201905290205490565b6002602052600090815260409020546001600160a01b031681565b6000908152600160208190526040909120015460ff1690565b600081815260016020819052604082200154829060ff16610aa3576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610aac83610ee8565b91505b50919050565b60008481526001602052604081206002810154841115610b1c576040805162461bcd60e51b815260206004820152601960248201527f766f74696e672076616c7565206973206e6f742076616c696400000000000000604482015290519081900360640190fd5b600181015460408051634ac41bc760e11b81526001600160a01b038881166004830152602482018a90529151600093610100900490921691639588378e91604480820192602092909190829003018186803b158015610b7a57600080fd5b505afa158015610b8e573d6000803e3d6000fd5b505050506040513d6020811015610ba457600080fd5b5051905080610bfa576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b83811015610c395760405162461bcd60e51b815260040180806020018281038252602381526020018061136c6023913960400191505060405180910390fd5b8380610c425750805b6001600160a01b038716600090815260068401602052604090206001015415610c6f57610c6f8888610def565b6000868152600584016020526040902054610c8b908290610d8e565b60008781526005850160205260409020556004830154610cac908290610d8e565b600484015560408051808201825287815260208082018481526001600160a01b03808c16600081815260068a0185528681209551865592516001909501949094558754825260028352908490205484518b8152928301869052845193949116928c927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92908290030190a4604080516001600160a01b0389163314158152905189917fe715e19c865cb724f3c292cc2fffc24d9cdd398e179fb366f008cc73028e1c52919081900360200190a2610d8288610ee8565b98975050505050505050565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000828152600160205260409020610e056112e4565b506001600160a01b03821660009081526006820160209081526040808320815180830183528154808252600190920154818501819052918552600586019093529220549091610e54919061119d565b815160009081526005840160209081526040909120919091558101516004830154610e7e9161119d565b60048301556001600160a01b03808416600081815260068501602090815260408083208381556001018390558654835260029091528082205490519293169187917f0ecab23267930de581498fac1af19a95c888ec6583921ee9c47473e16245d3c891a450505050565b600081815260016020819052604082200154829060ff16610f4a576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600083815260016020818152604080842092830154815163b551c37360e01b81526004810189905291519394936101009091046001600160a01b03169263b551c3739260248082019391829003018186803b158015610fa857600080fd5b505afa158015610fbc573d6000803e3d6000fd5b505050506040513d6020811015610fd257600080fd5b50516003830154600090815260208190526040902054909150806064830402836004015411156111915760008060005b8560020154811161104457600081815260058701602052604090205483101561103c57600081815260058701602052604090205492509050805b600101611002565b5061104d611315565b506040805160c08101825286548152600187015460ff81161515602083015261010090046001600160a01b0316918101919091526002860154606082015260038601546080820152600486015460a08201526110a8896111df565b805160009081526002602090815260409182902054825185815291820188905282516001600160a01b03909116928c927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a380604001516001600160a01b0316639d4c162d8a846040518363ffffffff1660e01b81526004018083815260200182815260200192505050602060405180830381600087803b15801561115557600080fd5b505af1158015611169573d6000803e3d6000fd5b505050506040513d602081101561117f57600080fd5b5060019850610aaf9650505050505050565b50600095945050505050565b6000610de883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061124d565b6000818152600160205260408120905b816002015481116112135760008181526005830160205260408120556001016111ef565b50506000908152600160208190526040822082815590810180546001600160a81b0319169055600281018290556003810182905560040155565b600081848411156112dc5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112a1578181015183820152602001611289565b50505050905090810190601f1680156112ce5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604051806040016040528060008152602001600081525090565b604080518082019091526000808252602082015290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe6e756d626572206f662063686f69636573206973206f7574206f662072616e676563616e6e6f7420766f74652077697468206d6f72652072657020766f74657220686173a26469706673582212205ca84e969a5bb5a3a198d5b44c6986ddcc11505507e5f980e06308490a98e4de64736f6c634300060c0033",
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806351d997b2116100a2578063a003651d11610071578063a003651d1461031a578063b451291314610337578063ba51b14e1461035a578063c083510614610393578063e751f271146103b05761010b565b806351d997b2146102b157806388737b5e146102b95780638d22651e146102f35780639525c0cc146102fb5761010b565b8063289647e4116100de578063289647e4146101d957806332ed5b1214610205578063359afa491461025d5780635142bc1e146102a95761010b565b80630250680414610110578063119ce91b1461014e57806321b4b3dc1461019357806323d840f5146101ad575b600080fd5b61012d6004803603602081101561012657600080fd5b50356103cd565b604080519283526001600160a01b0390911660208301528051918290030190f35b61017a6004803603604081101561016457600080fd5b50803590602001356001600160a01b03166103ef565b6040805192835260208301919091528051918290030190f35b61019b610440565b60408051918252519081900360200190f35b61019b600480360360408110156101c357600080fd5b50803590602001356001600160a01b0316610446565b61019b600480360360408110156101ef57600080fd5b50803590602001356001600160a01b031661050a565b6102226004803603602081101561021b57600080fd5b5035610549565b6040805196875294151560208701526001600160a01b03909316858501526060850191909152608084015260a0830152519081900360c00190f35b6102956004803603608081101561027357600080fd5b50803590602081013590604081013590606001356001600160a01b0316610589565b604080519115158252519081900360200190f35b61017a6106c9565b6102956106d1565b61019b600480360360808110156102cf57600080fd5b508035906020810135906001600160a01b03604082013581169160600135166106d6565b61019b610961565b6103186004803603602081101561031157600080fd5b5035610966565b005b61019b6004803603602081101561033057600080fd5b50356109d7565b61019b6004803603604081101561034d57600080fd5b50803590602001356109ec565b6103776004803603602081101561037057600080fd5b5035610a0d565b604080516001600160a01b039092168252519081900360200190f35b610295600480360360208110156103a957600080fd5b5035610a28565b610295600480360360208110156103c657600080fd5b5035610a41565b600060208190529081526040902080546001909101546001600160a01b031682565b6000806103fa6112e4565b50505060008281526001602081815260408084206001600160a01b0386168552600601825292839020835180850190945280548085529201549201829052909250929050565b60035481565b6000606483111580156104595750600083115b6104aa576040805162461bcd60e51b815260206004820152601860248201527f5f70726563526571206973206f7574206f662072616e67650000000000000000604482015290519081900360640190fd5b60006104b6848461050a565b6040805180820182529586526001600160a01b039485166020808801918252600084815290819052919091209551865551600190950180546001600160a01b03191695909416949094179092555090919050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b60016020819052600091825260409091208054918101546002820154600383015460049093015460ff8316936101009093046001600160a01b0316929086565b600084815260016020819052604082200154859060ff166105eb576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008681526001602052604090206106016112fe565b506003810154600090815260208181526040808320815180830190925280548252600101546001600160a01b03169181018290529190156106ad5781602001516001600160a01b0316336001600160a01b0316146106a6576040805162461bcd60e51b815260206004820152601760248201527f766f746572206973206e6f7420617574686f72697a6564000000000000000000604482015290519081900360640190fd5b50846106b0565b50335b6106bc89828a8a610ab5565b9998505050505050505050565b6000600a9091565b600190565b60008381526020819052604081205461072d576040805162461bcd60e51b81526020600482015260146024820152731c185c985b595d195c9cc81b9bdd08195e1a5cdd60621b604482015290519081900360640190fd5b60008511801561073e5750600a8511155b6107795760405162461bcd60e51b815260040180806020018281038252602181526020018061134b6021913960400191505060405180910390fd5b600354604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906107b8906001610d8e565b6003556107c3611315565b606081810188815260808301888152336040808601828152815192861b602084810191909152958a901b6bffffffffffffffffffffffff191660348401528151808403602801815260489093018252825192860192909220865260018587018181526000898152828852838120895180825592519381018054965160ff1990971694151594909417610100600160a81b0319166101006001600160a01b03978816021790935595516002808401919091559451600383015560a0880151600490920191909155845291909352902054166108f4576001600160a01b0384166108ca578051600090815260026020526040902080546001600160a01b031916331790556108f4565b8051600090815260026020526040902080546001600160a01b0319166001600160a01b0386161790555b80516000908152600260209081526040918290205482518a8152339281019290925281830189905291516001600160a01b039092169184917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a35095945050505050565b600a81565b60008181526001602081905260409091200154819060ff166109c9576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6109d38233610def565b5050565b60009081526001602052604090206002015490565b60009182526001602090815260408084209284526005909201905290205490565b6002602052600090815260409020546001600160a01b031681565b6000908152600160208190526040909120015460ff1690565b600081815260016020819052604082200154829060ff16610aa3576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610aac83610ee8565b91505b50919050565b60008481526001602052604081206002810154841115610b1c576040805162461bcd60e51b815260206004820152601960248201527f766f74696e672076616c7565206973206e6f742076616c696400000000000000604482015290519081900360640190fd5b600181015460408051634ac41bc760e11b81526001600160a01b038881166004830152602482018a90529151600093610100900490921691639588378e91604480820192602092909190829003018186803b158015610b7a57600080fd5b505afa158015610b8e573d6000803e3d6000fd5b505050506040513d6020811015610ba457600080fd5b5051905080610bfa576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b83811015610c395760405162461bcd60e51b815260040180806020018281038252602381526020018061136c6023913960400191505060405180910390fd5b8380610c425750805b6001600160a01b038716600090815260068401602052604090206001015415610c6f57610c6f8888610def565b6000868152600584016020526040902054610c8b908290610d8e565b60008781526005850160205260409020556004830154610cac908290610d8e565b600484015560408051808201825287815260208082018481526001600160a01b03808c16600081815260068a0185528681209551865592516001909501949094558754825260028352908490205484518b8152928301869052845193949116928c927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92908290030190a4604080516001600160a01b0389163314158152905189917fe715e19c865cb724f3c292cc2fffc24d9cdd398e179fb366f008cc73028e1c52919081900360200190a2610d8288610ee8565b98975050505050505050565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000828152600160205260409020610e056112e4565b506001600160a01b03821660009081526006820160209081526040808320815180830183528154808252600190920154818501819052918552600586019093529220549091610e54919061119d565b815160009081526005840160209081526040909120919091558101516004830154610e7e9161119d565b60048301556001600160a01b03808416600081815260068501602090815260408083208381556001018390558654835260029091528082205490519293169187917f0ecab23267930de581498fac1af19a95c888ec6583921ee9c47473e16245d3c891a450505050565b600081815260016020819052604082200154829060ff16610f4a576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600083815260016020818152604080842092830154815163b551c37360e01b81526004810189905291519394936101009091046001600160a01b03169263b551c3739260248082019391829003018186803b158015610fa857600080fd5b505afa158015610fbc573d6000803e3d6000fd5b505050506040513d6020811015610fd257600080fd5b50516003830154600090815260208190526040902054909150806064830402836004015411156111915760008060005b8560020154811161104457600081815260058701602052604090205483101561103c57600081815260058701602052604090205492509050805b600101611002565b5061104d611315565b506040805160c08101825286548152600187015460ff81161515602083015261010090046001600160a01b0316918101919091526002860154606082015260038601546080820152600486015460a08201526110a8896111df565b805160009081526002602090815260409182902054825185815291820188905282516001600160a01b03909116928c927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a380604001516001600160a01b0316639d4c162d8a846040518363ffffffff1660e01b81526004018083815260200182815260200192505050602060405180830381600087803b15801561115557600080fd5b505af1158015611169573d6000803e3d6000fd5b505050506040513d602081101561117f57600080fd5b5060019850610aaf9650505050505050565b50600095945050505050565b6000610de883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061124d565b6000818152600160205260408120905b816002015481116112135760008181526005830160205260408120556001016111ef565b50506000908152600160208190526040822082815590810180546001600160a81b0319169055600281018290556003810182905560040155565b600081848411156112dc5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112a1578181015183820152602001611289565b50505050905090810190601f1680156112ce5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604051806040016040528060008152602001600081525090565b604080518082019091526000808252602082015290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe6e756d626572206f662063686f69636573206973206f7574206f662072616e676563616e6e6f7420766f74652077697468206d6f72652072657020766f74657220686173a26469706673582212205ca84e969a5bb5a3a198d5b44c6986ddcc11505507e5f980e06308490a98e4de64736f6c634300060c0033",
"linkReferences": {},
"deployedLinkReferences": {}
}