[ { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "address", "name": "_voter", "type": "address" }, { "internalType": "address[]", "name": "_assetTokens", "type": "address[]" }, { "internalType": "address[]", "name": "_bribeTokens", "type": "address[]" }, { "internalType": "address", "name": "_vaultFactory", "type": "address" }, { "internalType": "address", "name": "_infraredVault", "type": "address" }, { "internalType": "string", "name": "_protocol", "type": "string" }, { "internalType": "string", "name": "_name", "type": "string" }, { "internalType": "string", "name": "_vaultName", "type": "string" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "Plugin__InvalidZeroInput", "type": "error" }, { "inputs": [], "name": "Plugin__NotAuthorizedVoter", "type": "error" }, { "anonymous": false, "inputs": [], "name": "Plugin__ClaimedAnDistributed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "Plugin__Deposited", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "Plugin__Withdrawn", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "claimAndDistribute", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "depositFor", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getAssetTokens", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getBribe", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getBribeTokens", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getGauge", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getName", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getProtocol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getRewardVault", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getToken", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getVaultToken", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getVoter", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "infraredVault", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_bribe", "type": "address" } ], "name": "setBribe", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_gauge", "type": "address" } ], "name": "setGauge", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "withdrawTo", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60e06040523480156200001157600080fd5b5060405162002c9b38038062002c9b833981016040819052620000349162000442565b60016000556001600160a01b03808a16608052881660c0528651899089908990899089908890889088906200007190600790602089019062000222565b5084516200008790600890602088019062000222565b506005620000968482620005fe565b506006620000a58382620005fe565b50866001600160a01b031663c544df0c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200010b9190620006ca565b6001600160a01b031660a0526040518190819062000129906200028c565b620001369291906200071d565b604051809103906000f08015801562000153573d6000803e3d6000fd5b50600380546001600160a01b0319166001600160a01b039283169081179091556040516301a0761760e01b81526004810191909152908516906301a07617906024016020604051808303816000875af1158015620001b5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001db9190620006ca565b600480546001600160a01b039283166001600160a01b031991821617909155600b80549e9092169d169c909c17909b55506200074f9e505050505050505050505050505050565b8280548282559060005260206000209081019282156200027a579160200282015b828111156200027a57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019062000243565b50620002889291506200029a565b5090565b610fba8062001ce183390190565b5b808211156200028857600081556001016200029b565b80516001600160a01b0381168114620002c957600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156200030f576200030f620002ce565b604052919050565b600082601f8301126200032957600080fd5b815160206001600160401b03821115620003475762000347620002ce565b8160051b62000358828201620002e4565b92835284810182019282810190878511156200037357600080fd5b83870192505b848310156200039d576200038d83620002b1565b8252918301919083019062000379565b979650505050505050565b60005b83811015620003c5578181015183820152602001620003ab565b50506000910152565b600082601f830112620003e057600080fd5b81516001600160401b03811115620003fc57620003fc620002ce565b62000411601f8201601f1916602001620002e4565b8181528460208386010111156200042757600080fd5b6200043a826020830160208701620003a8565b949350505050565b60008060008060008060008060006101208a8c0312156200046257600080fd5b6200046d8a620002b1565b98506200047d60208b01620002b1565b60408b01519098506001600160401b03808211156200049b57600080fd5b620004a98d838e0162000317565b985060608c0151915080821115620004c057600080fd5b620004ce8d838e0162000317565b9750620004de60808d01620002b1565b9650620004ee60a08d01620002b1565b955060c08c01519150808211156200050557600080fd5b620005138d838e01620003ce565b945060e08c01519150808211156200052a57600080fd5b620005388d838e01620003ce565b93506101008c01519150808211156200055057600080fd5b506200055f8c828d01620003ce565b9150509295985092959850929598565b600181811c908216806200058457607f821691505b602082108103620005a557634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620005f957600081815260208120601f850160051c81016020861015620005d45750805b601f850160051c820191505b81811015620005f557828155600101620005e0565b5050505b505050565b81516001600160401b038111156200061a576200061a620002ce565b62000632816200062b84546200056f565b84620005ab565b602080601f8311600181146200066a5760008415620006515750858301515b600019600386901b1c1916600185901b178555620005f5565b600085815260208120601f198616915b828110156200069b578886015182559484019460019091019084016200067a565b5085821015620006ba5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620006dd57600080fd5b620006e882620002b1565b9392505050565b6000815180845262000709816020860160208601620003a8565b601f01601f19169290920160200192915050565b604081526000620007326040830185620006ef565b8281036020840152620007468185620006ef565b95945050505050565b60805160a05160c05161153b620007a66000396000818161019c0152818161049601526108bb01526000505060008181610162015281816103c201528181610405015281816109cc0152610bef015261153b6000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806370a08231116100a2578063d16352af11610071578063d16352af1461026a578063dfb89c3714610272578063e33ca8391461027a578063e81defce14610282578063f2803f031461029557600080fd5b806370a082311461020a57806376d0c864146102335780638df972be14610244578063d015d5771461025557600080fd5b80632b37f53c116100e95780632b37f53c1461019a5780632f4f21e2146101c057806355a68ed3146101d35780635f0f4c83146101e65780636ab3b0e5146101f757600080fd5b806317d7de7c1461011b57806318160ddd14610139578063205c28781461014b57806321df0da714610160575b600080fd5b6101236102a6565b6040516101309190611230565b60405180910390f35b6009545b604051908152602001610130565b61015e61015936600461127b565b610338565b005b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b039091168152602001610130565b7f0000000000000000000000000000000000000000000000000000000000000000610182565b61015e6101ce36600461127b565b6103a4565b61015e6101e13660046112a7565b61048b565b6004546001600160a01b0316610182565b600b54610182906001600160a01b031681565b61013d6102183660046112a7565b6001600160a01b03166000908152600a602052604090205490565b6003546001600160a01b0316610182565b6002546001600160a01b0316610182565b61025d6104f6565b60405161013091906112cb565b610123610557565b61015e610566565b61025d610850565b61015e6102903660046112a7565b6108b0565b6001546001600160a01b0316610182565b6060600680546102b590611318565b80601f01602080910402602001604051908101604052809291908181526020018280546102e190611318565b801561032e5780601f106103035761010080835404028352916020019161032e565b820191906000526020600020905b81548152906001019060200180831161031157829003601f168201915b5050505050905090565b600b54604051632e1a7d4d60e01b8152600481018390526001600160a01b0390911690632e1a7d4d90602401600060405180830381600087803b15801561037e57600080fd5b505af1158015610392573d6000803e3d6000fd5b505050506103a0828261091b565b5050565b6103ae8282610b2c565b600b546103f2906001600160a01b031660007f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190610d57565b600b54610429906001600160a01b0316827f00000000000000000000000000000000000000000000000000000000000000006103e2565b600b5460405163534a7e1d60e11b8152600481018390526001600160a01b039091169063a694fc3a90602401600060405180830381600087803b15801561046f57600080fd5b505af1158015610483573d6000803e3d6000fd5b505050505050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146104d4576040516366dce48d60e11b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6060600780548060200260200160405190810160405280929190818152602001828054801561032e57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610530575050505050905090565b6060600580546102b590611318565b61056e610ea9565b600b60009054906101000a90046001600160a01b03166001600160a01b0316633d18b9126040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156105be57600080fd5b505af11580156105d2573d6000803e3d6000fd5b5050505060006105ea6002546001600160a01b031690565b90506000816001600160a01b0316631be052896040518163ffffffff1660e01b8152600401602060405180830381865afa15801561062c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106509190611352565b90506000826001600160a01b031663c4f59f9b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015610692573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106ba9190810190611391565b905060005b815181101561084a5760008282815181106106dc576106dc611456565b60209081029190910101516040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa15801561072c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107509190611352565b9050838111156108375761079285600085858151811061077257610772611456565b60200260200101516001600160a01b0316610d579092919063ffffffff16565b6107a9858285858151811061077257610772611456565b846001600160a01b031663b66503cf8484815181106107ca576107ca611456565b6020026020010151836040518363ffffffff1660e01b81526004016108049291906001600160a01b03929092168252602082015260400190565b600060405180830381600087803b15801561081e57600080fd5b505af1158015610832573d6000803e3d6000fd5b505050505b508061084281611482565b9150506106bf565b50505050565b6060600880548060200260200160405190810160405280929190818152602001828054801561032e576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610530575050505050905090565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146108f9576040516366dce48d60e11b815260040160405180910390fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b610923610ee6565b80806000036109455760405163f6ec1bed60e01b815260040160405180910390fd5b81600954610953919061149b565b600955336000908152600a602052604090205461097190839061149b565b336000818152600a6020526040908190209290925590517f3d9b7cdf60349a62a2f52625a9697e0e2782b9ef0985bec5e10de869ec541ac5906109b79085815260200190565b60405180910390a26109f36001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168484610f3f565b60015460405163b790a77b60e01b8152336004820152602481018490526001600160a01b039091169063b790a77b90604401600060405180830381600087803b158015610a3f57600080fd5b505af1158015610a53573d6000803e3d6000fd5b505060048054604051635281244f60e01b81523392810192909252602482018690526001600160a01b03169250635281244f9150604401600060405180830381600087803b158015610aa457600080fd5b505af1158015610ab8573d6000803e3d6000fd5b5050600354604051632770a7eb60e21b8152306004820152602481018690526001600160a01b039091169250639dc29fac91506044015b600060405180830381600087803b158015610b0957600080fd5b505af1158015610b1d573d6000803e3d6000fd5b50505050506103a06001600055565b610b34610ee6565b8080600003610b565760405163f6ec1bed60e01b815260040160405180910390fd5b81600954610b6491906114b4565b6009556001600160a01b0383166000908152600a6020526040902054610b8b9083906114b4565b6001600160a01b0384166000818152600a6020526040908190209290925590517f9a5084d92dfc874319b7345834de998ed1154f2ed11a4a6d353cf77a1bdb456e90610bda9085815260200190565b60405180910390a2610c176001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016333085610f6f565b600154604051631b684ce760e21b81526001600160a01b0385811660048301526024820185905290911690636da1339c90604401600060405180830381600087803b158015610c6557600080fd5b505af1158015610c79573d6000803e3d6000fd5b50506003546040516340c10f1960e01b8152306004820152602481018690526001600160a01b0390911692506340c10f199150604401600060405180830381600087803b158015610cc957600080fd5b505af1158015610cdd573d6000803e3d6000fd5b5050600454600354610cff93506001600160a01b039081169250166000610d57565b600454600354610d1c916001600160a01b03918216911684610d57565b60048054604051633c323a1b60e01b81526001600160a01b038681169382019390935260248101859052911690633c323a1b90604401610aef565b801580610dd15750604051636eb1769f60e11b81523060048201526001600160a01b03838116602483015284169063dd62ed3e90604401602060405180830381865afa158015610dab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dcf9190611352565b155b610e415760405162461bcd60e51b815260206004820152603660248201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60448201527520746f206e6f6e2d7a65726f20616c6c6f77616e636560501b60648201526084015b60405180910390fd5b6040516001600160a01b038316602482015260448101829052610ea490849063095ea7b360e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152610fa7565b505050565b610eb1610ee6565b6040517f8fef40a30af028d208f06e01ada64f23e76ce003c6b015a945795b0cb268b53490600090a1610ee46001600055565b565b600260005403610f385760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610e38565b6002600055565b6040516001600160a01b038316602482015260448101829052610ea490849063a9059cbb60e01b90606401610e6d565b6040516001600160a01b038085166024830152831660448201526064810182905261084a9085906323b872dd60e01b90608401610e6d565b6000610ffc826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661107c9092919063ffffffff16565b905080516000148061101d57508080602001905181019061101d91906114c7565b610ea45760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610e38565b606061108b8484600085611093565b949350505050565b6060824710156110f45760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610e38565b600080866001600160a01b0316858760405161111091906114e9565b60006040518083038185875af1925050503d806000811461114d576040519150601f19603f3d011682016040523d82523d6000602084013e611152565b606091505b50915091506111638783838761116e565b979650505050505050565b606083156111dd5782516000036111d6576001600160a01b0385163b6111d65760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610e38565b508161108b565b61108b83838151156111f25781518083602001fd5b8060405162461bcd60e51b8152600401610e389190611230565b60005b8381101561122757818101518382015260200161120f565b50506000910152565b602081526000825180602084015261124f81604085016020870161120c565b601f01601f19169190910160400192915050565b6001600160a01b038116811461127857600080fd5b50565b6000806040838503121561128e57600080fd5b823561129981611263565b946020939093013593505050565b6000602082840312156112b957600080fd5b81356112c481611263565b9392505050565b6020808252825182820181905260009190848201906040850190845b8181101561130c5783516001600160a01b0316835292840192918401916001016112e7565b50909695505050505050565b600181811c9082168061132c57607f821691505b60208210810361134c57634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561136457600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b805161138c81611263565b919050565b600060208083850312156113a457600080fd5b825167ffffffffffffffff808211156113bc57600080fd5b818501915085601f8301126113d057600080fd5b8151818111156113e2576113e261136b565b8060051b604051601f19603f830116810181811085821117156114075761140761136b565b60405291825284820192508381018501918883111561142557600080fd5b938501935b8285101561144a5761143b85611381565b8452938501939285019261142a565b98975050505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016114945761149461146c565b5060010190565b818103818111156114ae576114ae61146c565b92915050565b808201808211156114ae576114ae61146c565b6000602082840312156114d957600080fd5b815180151581146112c457600080fd5b600082516114fb81846020870161120c565b919091019291505056fea2646970667358221220aaabbafa63d78dfb7ad68ffe91fa58bfada1de2995d8ae905baf35c1f0da47f464736f6c6343000813003360806040523480156200001157600080fd5b5060405162000fba38038062000fba833981016040819052620000349162000193565b818160036200004483826200028c565b5060046200005382826200028c565b505050620000706200006a6200007860201b60201c565b6200007c565b505062000358565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620000f657600080fd5b81516001600160401b0380821115620001135762000113620000ce565b604051601f8301601f19908116603f011681019082821181831017156200013e576200013e620000ce565b816040528381526020925086838588010111156200015b57600080fd5b600091505b838210156200017f578582018301518183018401529082019062000160565b600093810190920192909252949350505050565b60008060408385031215620001a757600080fd5b82516001600160401b0380821115620001bf57600080fd5b620001cd86838701620000e4565b93506020850151915080821115620001e457600080fd5b50620001f385828601620000e4565b9150509250929050565b600181811c908216806200021257607f821691505b6020821081036200023357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200028757600081815260208120601f850160051c81016020861015620002625750805b601f850160051c820191505b8181101562000283578281556001016200026e565b5050505b505050565b81516001600160401b03811115620002a857620002a8620000ce565b620002c081620002b98454620001fd565b8462000239565b602080601f831160018114620002f85760008415620002df5750858301515b600019600386901b1c1916600185901b17855562000283565b600085815260208120601f198616915b82811015620003295788860151825594840194600190910190840162000308565b5085821015620003485787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610c5280620003686000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c8063715018a611610097578063a457c2d711610066578063a457c2d714610209578063a9059cbb1461021c578063dd62ed3e1461022f578063f2fde38b1461024257600080fd5b8063715018a6146101cb5780638da5cb5b146101d357806395d89b41146101ee5780639dc29fac146101f657600080fd5b8063313ce567116100d3578063313ce5671461016b578063395093511461017a57806340c10f191461018d57806370a08231146101a257600080fd5b806306fdde0314610105578063095ea7b31461012357806318160ddd1461014657806323b872dd14610158575b600080fd5b61010d610255565b60405161011a9190610a9c565b60405180910390f35b610136610131366004610b06565b6102e7565b604051901515815260200161011a565b6002545b60405190815260200161011a565b610136610166366004610b30565b610301565b6040516012815260200161011a565b610136610188366004610b06565b610325565b6101a061019b366004610b06565b610347565b005b61014a6101b0366004610b6c565b6001600160a01b031660009081526020819052604090205490565b6101a061035d565b6005546040516001600160a01b03909116815260200161011a565b61010d610371565b6101a0610204366004610b06565b610380565b610136610217366004610b06565b610392565b61013661022a366004610b06565b610412565b61014a61023d366004610b8e565b610420565b6101a0610250366004610b6c565b61044b565b60606003805461026490610bc1565b80601f016020809104026020016040519081016040528092919081815260200182805461029090610bc1565b80156102dd5780601f106102b2576101008083540402835291602001916102dd565b820191906000526020600020905b8154815290600101906020018083116102c057829003601f168201915b5050505050905090565b6000336102f58185856104c4565b60019150505b92915050565b60003361030f8582856105e9565b61031a858585610663565b506001949350505050565b6000336102f58185856103388383610420565b6103429190610bfb565b6104c4565b61034f610807565b6103598282610861565b5050565b610365610807565b61036f6000610920565b565b60606004805461026490610bc1565b610388610807565b6103598282610972565b600033816103a08286610420565b9050838110156104055760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b61031a82868684036104c4565b6000336102f5818585610663565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b610453610807565b6001600160a01b0381166104b85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103fc565b6104c181610920565b50565b6001600160a01b0383166105265760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103fc565b6001600160a01b0382166105875760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103fc565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b60006105f58484610420565b9050600019811461065d57818110156106505760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016103fc565b61065d84848484036104c4565b50505050565b6001600160a01b0383166106c75760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103fc565b6001600160a01b0382166107295760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103fc565b6001600160a01b038316600090815260208190526040902054818110156107a15760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103fc565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361065d565b6005546001600160a01b0316331461036f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103fc565b6001600160a01b0382166108b75760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016103fc565b80600260008282546108c99190610bfb565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166109d25760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103fc565b6001600160a01b03821660009081526020819052604090205481811015610a465760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016103fc565b6001600160a01b0383166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016105dc565b600060208083528351808285015260005b81811015610ac957858101830151858201604001528201610aad565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610b0157600080fd5b919050565b60008060408385031215610b1957600080fd5b610b2283610aea565b946020939093013593505050565b600080600060608486031215610b4557600080fd5b610b4e84610aea565b9250610b5c60208501610aea565b9150604084013590509250925092565b600060208284031215610b7e57600080fd5b610b8782610aea565b9392505050565b60008060408385031215610ba157600080fd5b610baa83610aea565b9150610bb860208401610aea565b90509250929050565b600181811c90821680610bd557607f821691505b602082108103610bf557634e487b7160e01b600052602260045260246000fd5b50919050565b808201808211156102fb57634e487b7160e01b600052601160045260246000fdfea26469706673582212209833fff1f4eb98ea44a7db6cdf2ab4c1de7ac0c8efb963154bea53bc7eb75ef864736f6c63430008130033000000000000000000000000d28d852cbcc68dcec922f6d5c7a8185dbaa104b70000000000000000000000001f9505ae18755915dcd2a95f38c7560cab149d9c000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001800000000000000000000000002b6e40f65d82a0cb98795bc7587a71bfa49fbb2b0000000000000000000000005c5f9a838747fb83678ece15d85005fd4f55823700000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000e4aaf1351de4c0264c5c7056ef3777b41bd8e030000000000000000000000007507c1dc16935b82698e4c63f2746a2fcf994df8000000000000000000000000000000000000000000000000000000000000000100000000000000000000000046efc86f0d7455f135cc9df501673739d513e9820000000000000000000000000000000000000000000000000000000000000008496e667261726564000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f42657820484f4e45592d57424552410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002e4265726164726f6d6520496e6672617265642042657820484f4e45592d5742455241205661756c7420546f6b656e000000000000000000000000000000000000