UNPKG

@perp/hottub-deployments

Version:

Perpetual Protocol Hot Tub contract artifacts (ABIs) and deployed addresses

577 lines (576 loc) 42.4 kB
{ "_format": "hh-sol-artifact-1", "contractName": "VaultToken", "sourceName": "contracts/VaultToken.sol", "abi": [ { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "oldMinter", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newMinter", "type": "address" } ], "name": "UpdateMinter", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "oldTotalSupplyCap", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newTotalSupplyCap", "type": "uint256" } ], "name": "UpdateTotalSupplyCap", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint24", "name": "oldTransferCooldown", "type": "uint24" }, { "indexed": false, "internalType": "uint24", "name": "newTransferCooldown", "type": "uint24" } ], "name": "UpdateTransferCooldown", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "candidate", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "getLastMintedAt", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getMinter", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTotalSupplyCap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTransferCooldown", "outputs": [ { "internalType": "uint24", "name": "", "type": "uint24" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "nameArg", "type": "string" }, { "internalType": "string", "name": "symbolArg", "type": "string" }, { "internalType": "uint8", "name": "decimalsArg", "type": "uint8" }, { "internalType": "uint24", "name": "transferCoolDownArg", "type": "uint24" }, { "internalType": "uint256", "name": "totalSupplyCapArg", "type": "uint256" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "minterArg", "type": "address" } ], "name": "setMinter", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "setOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "totalSupplyCapArg", "type": "uint256" } ], "name": "setTotalSupplyCap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint24", "name": "transferCooldownArg", "type": "uint24" } ], "name": "setTransferCooldown", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "updateOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x608060405234801561001057600080fd5b50611dac806100206000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c8063715018a6116100de578063a457c2d711610097578063dd62ed3e11610071578063dd62ed3e146105f1578063e88fa1891461061f578063f366751714610627578063fca3b5aa1461062f5761018e565b8063a457c2d714610591578063a9059cbb146105bd578063bc5920ba146105e95761018e565b8063715018a6146103ed5780637711ec87146103f55780638da5cb5b1461053557806395d89b411461053d57806398fb0bb0146105455780639dc29fac146105655761018e565b806324a107041161014b5780633950935111610125578063395093511461034b57806340c10f19146103775780636c8381f8146103a357806370a08231146103c75761018e565b806324a10704146102ea578063313ce5671461031057806331d05b111461032e5761018e565b806306fdde0314610193578063095ea7b31461021057806313af40351461025057806313f290631461027857806318160ddd1461029a57806323b872dd146102b4575b600080fd5b61019b610655565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101d55781810151838201526020016101bd565b50505050905090810190601f1680156102025780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023c6004803603604081101561022657600080fd5b506001600160a01b0381351690602001356106eb565b604080519115158252519081900360200190f35b6102766004803603602081101561026657600080fd5b50356001600160a01b0316610708565b005b6102766004803603602081101561028e57600080fd5b503562ffffff16610863565b6102a261096d565b60408051918252519081900360200190f35b61023c600480360360608110156102ca57600080fd5b506001600160a01b03813581169160208101359091169060400135610973565b6102a26004803603602081101561030057600080fd5b50356001600160a01b03166109fa565b610318610a15565b6040805160ff9092168252519081900360200190f35b6102766004803603602081101561034457600080fd5b5035610a1e565b61023c6004803603604081101561036157600080fd5b506001600160a01b038135169060200135610b01565b6102766004803603604081101561038d57600080fd5b506001600160a01b038135169060200135610b4f565b6103ab610bcd565b604080516001600160a01b039092168252519081900360200190f35b6102a2600480360360208110156103dd57600080fd5b50356001600160a01b0316610bdc565b610276610bf7565b610276600480360360a081101561040b57600080fd5b81019060208101813564010000000081111561042657600080fd5b82018360208201111561043857600080fd5b8035906020019184600183028401116401000000008311171561045a57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092959493602081019350359150506401000000008111156104ad57600080fd5b8201836020820111156104bf57600080fd5b803590602001918460018302840111640100000000831117156104e157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050813560ff16925050602081013562ffffff169060400135610caa565b6103ab610d8d565b61019b610d9c565b61054d610dfd565b6040805162ffffff9092168252519081900360200190f35b6102766004803603604081101561057b57600080fd5b506001600160a01b038135169060200135610e0f565b61023c600480360360408110156105a757600080fd5b506001600160a01b038135169060200135610e74565b61023c600480360360408110156105d357600080fd5b506001600160a01b038135169060200135610edc565b610276610ef0565b6102a26004803603604081101561060757600080fd5b506001600160a01b0381358116916020013516610fee565b6102a2611019565b6103ab61101f565b6102766004803603602081101561064557600080fd5b50356001600160a01b031661102e565b606a8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156106e15780601f106106b6576101008083540402835291602001916106e1565b820191906000526020600020905b8154815290600101906020018083116106c457829003601f168201915b5050505050905090565b60006106ff6106f86110ee565b84846110f2565b50600192915050565b6107106110ee565b6001600160a01b0316610721610d8d565b6001600160a01b031614610765576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4f60d01b604482015290519081900360640190fd5b6001600160a01b0381166107a9576040805162461bcd60e51b81526020600482015260066024820152650534f5f4e57360d41b604482015290519081900360640190fd5b6033546001600160a01b03828116911614156107f5576040805162461bcd60e51b8152602060048201526006602482015265534f5f53414f60d01b604482015290519081900360640190fd5b6034546001600160a01b0382811691161415610841576040805162461bcd60e51b8152602060048201526006602482015265534f5f53414360d01b604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0392909216919091179055565b61086b6110ee565b6001600160a01b031661087c610d8d565b6001600160a01b0316146108c0576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4f60d01b604482015290519081900360640190fd5b8062ffffff1660008111610903576040805162461bcd60e51b815260206004820152600560248201526456545f5a5560d81b604482015290519081900360640190fd5b6099805462ffffff848116600160a01b81810262ffffff60a01b198516179094556040805194909304919091168084526020840191909152815190927f668fb6c423c664e78f32dfefdc9c1f0bc8e4ab7f6ebd38a9fc332fd4bd6a9bb192908290030190a1505050565b60695490565b60006109808484846111de565b6109f08461098c6110ee565b6109eb85604051806060016040528060288152602001611cc0602891396001600160a01b038a166000908152606860205260408120906109ca6110ee565b6001600160a01b03168152602081019190915260400160002054919061133b565b6110f2565b5060019392505050565b6001600160a01b03166000908152609b602052604090205490565b606c5460ff1690565b610a266110ee565b6001600160a01b0316610a37610d8d565b6001600160a01b031614610a7b576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4f60d01b604482015290519081900360640190fd5b8060008111610ab9576040805162461bcd60e51b815260206004820152600560248201526456545f5a5560d81b604482015290519081900360640190fd5b609a805490839055604080518281526020810185905281517febbcbe45f84825d61ac8d640e637527510094c41054f1e7133b743655401a5eb929181900390910190a1505050565b60006106ff610b0e6110ee565b846109eb8560686000610b1f6110ee565b6001600160a01b03908116825260208083019390935260409182016000908120918c1681529252902054906113d2565b6099546001600160a01b0316610b636110ee565b6001600160a01b031614610ba6576040805162461bcd60e51b815260206004820152600560248201526456545f4f4d60d81b604482015290519081900360640190fd5b610bb08282611433565b506001600160a01b03166000908152609b60205260409020429055565b6034546001600160a01b031690565b6001600160a01b031660009081526067602052604090205490565b610bff6110ee565b6001600160a01b0316610c10610d8d565b6001600160a01b031614610c54576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4f60d01b604482015290519081900360640190fd5b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319908116909155603480549091169055565b600054610100900460ff1680610cc35750610cc3611525565b80610cd1575060005460ff16155b610d0c5760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff16158015610d37576000805460ff1961ff0019909116610100171660011790555b610d3f611536565b610d498686611638565b610d52846116ee565b6099805462ffffff60a01b1916600160a01b62ffffff861602179055609a8290558015610d85576000805461ff00191690555b505050505050565b6033546001600160a01b031690565b606b8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156106e15780601f106106b6576101008083540402835291602001916106e1565b609954600160a01b900462ffffff1690565b6099546001600160a01b0316610e236110ee565b6001600160a01b031614610e66576040805162461bcd60e51b815260206004820152600560248201526456545f4f4d60d81b604482015290519081900360640190fd5b610e708282611704565b5050565b60006106ff610e816110ee565b846109eb85604051806060016040528060258152602001611d526025913960686000610eab6110ee565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919061133b565b60006106ff610ee96110ee565b84846111de565b6034546001600160a01b0316610f35576040805162461bcd60e51b81526020600482015260056024820152640534f5f43360dc1b604482015290519081900360640190fd5b610f3d6110ee565b6034546001600160a01b03908116911614610f88576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4360d01b604482015290519081900360640190fd5b6034546033546040516001600160a01b0392831692909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a360348054603380546001600160a01b03199081166001600160a01b03841617909155169055565b6001600160a01b03918216600090815260686020908152604080832093909416825291909152205490565b609a5490565b6099546001600160a01b031690565b6110366110ee565b6001600160a01b0316611047610d8d565b6001600160a01b03161461108b576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4f60d01b604482015290519081900360640190fd5b609980546001600160a01b038381166001600160a01b0319831681179093556040805191909216808252602082019390935281517ffb80f39493422136408edd986f7ca83c10534204422dd1dfebb055de4ef0fd53929181900390910190a15050565b3390565b6001600160a01b0383166111375760405162461bcd60e51b8152600401808060200182810382526024815260200180611d2e6024913960400191505060405180910390fd5b6001600160a01b03821661117c5760405162461bcd60e51b8152600401808060200182810382526022815260200180611c4a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260686020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166112235760405162461bcd60e51b8152600401808060200182810382526025815260200180611d096025913960400191505060405180910390fd5b6001600160a01b0382166112685760405162461bcd60e51b8152600401808060200182810382526023815260200180611c056023913960400191505060405180910390fd5b611273838383611800565b6112b081604051806060016040528060268152602001611c6c602691396001600160a01b038616600090815260676020526040902054919061133b565b6001600160a01b0380851660009081526067602052604080822093909355908416815220546112df90826113d2565b6001600160a01b0380841660008181526067602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600081848411156113ca5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561138f578181015183820152602001611377565b50505050905090810190601f1680156113bc5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008282018381101561142c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b03821661148e576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b61149a60008383611800565b6069546114a790826113d2565b6069556001600160a01b0382166000908152606760205260409020546114cd90826113d2565b6001600160a01b03831660008181526067602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6000611530306118df565b15905090565b600054610100900460ff168061154f575061154f611525565b8061155d575060005460ff16155b6115985760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff161580156115c3576000805460ff1961ff0019909116610100171660011790555b6115cb6118e5565b60006115d56110ee565b603380546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015611635576000805461ff00191690555b50565b600054610100900460ff16806116515750611651611525565b8061165f575060005460ff16155b61169a5760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff161580156116c5576000805460ff1961ff0019909116610100171660011790555b6116cd61198e565b6116d78383611a2e565b80156116e9576000805461ff00191690555b505050565b606c805460ff191660ff92909216919091179055565b6001600160a01b0382166117495760405162461bcd60e51b8152600401808060200182810382526021815260200180611ce86021913960400191505060405180910390fd5b61175582600083611800565b61179281604051806060016040528060228152602001611c28602291396001600160a01b038516600090815260676020526040902054919061133b565b6001600160a01b0383166000908152606760205260409020556069546117b89082611b06565b6069556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b61180b8383836116e9565b6001600160a01b03831661187057609a5461182e8261182861096d565b906113d2565b111561186b576040805162461bcd60e51b815260206004820152600760248201526656545f5453434560c81b604482015290519081900360640190fd5b6116e9565b6099546001600160a01b0384166000908152609b602052604090205442916118a49190600160a01b900462ffffff166113d2565b11156116e9576040805162461bcd60e51b8152602060048201526005602482015264159517d0d160da1b604482015290519081900360640190fd5b3b151590565b600054610100900460ff16806118fe57506118fe611525565b8061190c575060005460ff16155b6119475760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff16158015611972576000805460ff1961ff0019909116610100171660011790555b61197a61198e565b8015611635576000805461ff001916905550565b600054610100900460ff16806119a757506119a7611525565b806119b5575060005460ff16155b6119f05760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff1615801561197a576000805460ff1961ff0019909116610100171660011790558015611635576000805461ff001916905550565b600054610100900460ff1680611a475750611a47611525565b80611a55575060005460ff16155b611a905760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff16158015611abb576000805460ff1961ff0019909116610100171660011790555b8251611ace90606a906020860190611b63565b508151611ae290606b906020850190611b63565b50606c805460ff1916601217905580156116e9576000805461ff0019169055505050565b600082821115611b5d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282611b995760008555611bdf565b82601f10611bb257805160ff1916838001178555611bdf565b82800160010185558215611bdf579182015b82811115611bdf578251825591602001919060010190611bc4565b50611beb929150611bef565b5090565b5b80821115611beb5760008155600101611bf056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220b9cb985ab1607d6b8c2ab480423cc3bc1c38d776f00dacfdd0cbc297871a3dfc64736f6c63430007060033", "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061018e5760003560e01c8063715018a6116100de578063a457c2d711610097578063dd62ed3e11610071578063dd62ed3e146105f1578063e88fa1891461061f578063f366751714610627578063fca3b5aa1461062f5761018e565b8063a457c2d714610591578063a9059cbb146105bd578063bc5920ba146105e95761018e565b8063715018a6146103ed5780637711ec87146103f55780638da5cb5b1461053557806395d89b411461053d57806398fb0bb0146105455780639dc29fac146105655761018e565b806324a107041161014b5780633950935111610125578063395093511461034b57806340c10f19146103775780636c8381f8146103a357806370a08231146103c75761018e565b806324a10704146102ea578063313ce5671461031057806331d05b111461032e5761018e565b806306fdde0314610193578063095ea7b31461021057806313af40351461025057806313f290631461027857806318160ddd1461029a57806323b872dd146102b4575b600080fd5b61019b610655565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101d55781810151838201526020016101bd565b50505050905090810190601f1680156102025780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023c6004803603604081101561022657600080fd5b506001600160a01b0381351690602001356106eb565b604080519115158252519081900360200190f35b6102766004803603602081101561026657600080fd5b50356001600160a01b0316610708565b005b6102766004803603602081101561028e57600080fd5b503562ffffff16610863565b6102a261096d565b60408051918252519081900360200190f35b61023c600480360360608110156102ca57600080fd5b506001600160a01b03813581169160208101359091169060400135610973565b6102a26004803603602081101561030057600080fd5b50356001600160a01b03166109fa565b610318610a15565b6040805160ff9092168252519081900360200190f35b6102766004803603602081101561034457600080fd5b5035610a1e565b61023c6004803603604081101561036157600080fd5b506001600160a01b038135169060200135610b01565b6102766004803603604081101561038d57600080fd5b506001600160a01b038135169060200135610b4f565b6103ab610bcd565b604080516001600160a01b039092168252519081900360200190f35b6102a2600480360360208110156103dd57600080fd5b50356001600160a01b0316610bdc565b610276610bf7565b610276600480360360a081101561040b57600080fd5b81019060208101813564010000000081111561042657600080fd5b82018360208201111561043857600080fd5b8035906020019184600183028401116401000000008311171561045a57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092959493602081019350359150506401000000008111156104ad57600080fd5b8201836020820111156104bf57600080fd5b803590602001918460018302840111640100000000831117156104e157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050813560ff16925050602081013562ffffff169060400135610caa565b6103ab610d8d565b61019b610d9c565b61054d610dfd565b6040805162ffffff9092168252519081900360200190f35b6102766004803603604081101561057b57600080fd5b506001600160a01b038135169060200135610e0f565b61023c600480360360408110156105a757600080fd5b506001600160a01b038135169060200135610e74565b61023c600480360360408110156105d357600080fd5b506001600160a01b038135169060200135610edc565b610276610ef0565b6102a26004803603604081101561060757600080fd5b506001600160a01b0381358116916020013516610fee565b6102a2611019565b6103ab61101f565b6102766004803603602081101561064557600080fd5b50356001600160a01b031661102e565b606a8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156106e15780601f106106b6576101008083540402835291602001916106e1565b820191906000526020600020905b8154815290600101906020018083116106c457829003601f168201915b5050505050905090565b60006106ff6106f86110ee565b84846110f2565b50600192915050565b6107106110ee565b6001600160a01b0316610721610d8d565b6001600160a01b031614610765576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4f60d01b604482015290519081900360640190fd5b6001600160a01b0381166107a9576040805162461bcd60e51b81526020600482015260066024820152650534f5f4e57360d41b604482015290519081900360640190fd5b6033546001600160a01b03828116911614156107f5576040805162461bcd60e51b8152602060048201526006602482015265534f5f53414f60d01b604482015290519081900360640190fd5b6034546001600160a01b0382811691161415610841576040805162461bcd60e51b8152602060048201526006602482015265534f5f53414360d01b604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0392909216919091179055565b61086b6110ee565b6001600160a01b031661087c610d8d565b6001600160a01b0316146108c0576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4f60d01b604482015290519081900360640190fd5b8062ffffff1660008111610903576040805162461bcd60e51b815260206004820152600560248201526456545f5a5560d81b604482015290519081900360640190fd5b6099805462ffffff848116600160a01b81810262ffffff60a01b198516179094556040805194909304919091168084526020840191909152815190927f668fb6c423c664e78f32dfefdc9c1f0bc8e4ab7f6ebd38a9fc332fd4bd6a9bb192908290030190a1505050565b60695490565b60006109808484846111de565b6109f08461098c6110ee565b6109eb85604051806060016040528060288152602001611cc0602891396001600160a01b038a166000908152606860205260408120906109ca6110ee565b6001600160a01b03168152602081019190915260400160002054919061133b565b6110f2565b5060019392505050565b6001600160a01b03166000908152609b602052604090205490565b606c5460ff1690565b610a266110ee565b6001600160a01b0316610a37610d8d565b6001600160a01b031614610a7b576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4f60d01b604482015290519081900360640190fd5b8060008111610ab9576040805162461bcd60e51b815260206004820152600560248201526456545f5a5560d81b604482015290519081900360640190fd5b609a805490839055604080518281526020810185905281517febbcbe45f84825d61ac8d640e637527510094c41054f1e7133b743655401a5eb929181900390910190a1505050565b60006106ff610b0e6110ee565b846109eb8560686000610b1f6110ee565b6001600160a01b03908116825260208083019390935260409182016000908120918c1681529252902054906113d2565b6099546001600160a01b0316610b636110ee565b6001600160a01b031614610ba6576040805162461bcd60e51b815260206004820152600560248201526456545f4f4d60d81b604482015290519081900360640190fd5b610bb08282611433565b506001600160a01b03166000908152609b60205260409020429055565b6034546001600160a01b031690565b6001600160a01b031660009081526067602052604090205490565b610bff6110ee565b6001600160a01b0316610c10610d8d565b6001600160a01b031614610c54576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4f60d01b604482015290519081900360640190fd5b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319908116909155603480549091169055565b600054610100900460ff1680610cc35750610cc3611525565b80610cd1575060005460ff16155b610d0c5760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff16158015610d37576000805460ff1961ff0019909116610100171660011790555b610d3f611536565b610d498686611638565b610d52846116ee565b6099805462ffffff60a01b1916600160a01b62ffffff861602179055609a8290558015610d85576000805461ff00191690555b505050505050565b6033546001600160a01b031690565b606b8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156106e15780601f106106b6576101008083540402835291602001916106e1565b609954600160a01b900462ffffff1690565b6099546001600160a01b0316610e236110ee565b6001600160a01b031614610e66576040805162461bcd60e51b815260206004820152600560248201526456545f4f4d60d81b604482015290519081900360640190fd5b610e708282611704565b5050565b60006106ff610e816110ee565b846109eb85604051806060016040528060258152602001611d526025913960686000610eab6110ee565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919061133b565b60006106ff610ee96110ee565b84846111de565b6034546001600160a01b0316610f35576040805162461bcd60e51b81526020600482015260056024820152640534f5f43360dc1b604482015290519081900360640190fd5b610f3d6110ee565b6034546001600160a01b03908116911614610f88576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4360d01b604482015290519081900360640190fd5b6034546033546040516001600160a01b0392831692909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a360348054603380546001600160a01b03199081166001600160a01b03841617909155169055565b6001600160a01b03918216600090815260686020908152604080832093909416825291909152205490565b609a5490565b6099546001600160a01b031690565b6110366110ee565b6001600160a01b0316611047610d8d565b6001600160a01b03161461108b576040805162461bcd60e51b8152602060048201526006602482015265534f5f434e4f60d01b604482015290519081900360640190fd5b609980546001600160a01b038381166001600160a01b0319831681179093556040805191909216808252602082019390935281517ffb80f39493422136408edd986f7ca83c10534204422dd1dfebb055de4ef0fd53929181900390910190a15050565b3390565b6001600160a01b0383166111375760405162461bcd60e51b8152600401808060200182810382526024815260200180611d2e6024913960400191505060405180910390fd5b6001600160a01b03821661117c5760405162461bcd60e51b8152600401808060200182810382526022815260200180611c4a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260686020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166112235760405162461bcd60e51b8152600401808060200182810382526025815260200180611d096025913960400191505060405180910390fd5b6001600160a01b0382166112685760405162461bcd60e51b8152600401808060200182810382526023815260200180611c056023913960400191505060405180910390fd5b611273838383611800565b6112b081604051806060016040528060268152602001611c6c602691396001600160a01b038616600090815260676020526040902054919061133b565b6001600160a01b0380851660009081526067602052604080822093909355908416815220546112df90826113d2565b6001600160a01b0380841660008181526067602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600081848411156113ca5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561138f578181015183820152602001611377565b50505050905090810190601f1680156113bc5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008282018381101561142c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b03821661148e576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b61149a60008383611800565b6069546114a790826113d2565b6069556001600160a01b0382166000908152606760205260409020546114cd90826113d2565b6001600160a01b03831660008181526067602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6000611530306118df565b15905090565b600054610100900460ff168061154f575061154f611525565b8061155d575060005460ff16155b6115985760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff161580156115c3576000805460ff1961ff0019909116610100171660011790555b6115cb6118e5565b60006115d56110ee565b603380546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015611635576000805461ff00191690555b50565b600054610100900460ff16806116515750611651611525565b8061165f575060005460ff16155b61169a5760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff161580156116c5576000805460ff1961ff0019909116610100171660011790555b6116cd61198e565b6116d78383611a2e565b80156116e9576000805461ff00191690555b505050565b606c805460ff191660ff92909216919091179055565b6001600160a01b0382166117495760405162461bcd60e51b8152600401808060200182810382526021815260200180611ce86021913960400191505060405180910390fd5b61175582600083611800565b61179281604051806060016040528060228152602001611c28602291396001600160a01b038516600090815260676020526040902054919061133b565b6001600160a01b0383166000908152606760205260409020556069546117b89082611b06565b6069556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b61180b8383836116e9565b6001600160a01b03831661187057609a5461182e8261182861096d565b906113d2565b111561186b576040805162461bcd60e51b815260206004820152600760248201526656545f5453434560c81b604482015290519081900360640190fd5b6116e9565b6099546001600160a01b0384166000908152609b602052604090205442916118a49190600160a01b900462ffffff166113d2565b11156116e9576040805162461bcd60e51b8152602060048201526005602482015264159517d0d160da1b604482015290519081900360640190fd5b3b151590565b600054610100900460ff16806118fe57506118fe611525565b8061190c575060005460ff16155b6119475760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff16158015611972576000805460ff1961ff0019909116610100171660011790555b61197a61198e565b8015611635576000805461ff001916905550565b600054610100900460ff16806119a757506119a7611525565b806119b5575060005460ff16155b6119f05760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff1615801561197a576000805460ff1961ff0019909116610100171660011790558015611635576000805461ff001916905550565b600054610100900460ff1680611a475750611a47611525565b80611a55575060005460ff16155b611a905760405162461bcd60e51b815260040180806020018281038252602e815260200180611c92602e913960400191505060405180910390fd5b600054610100900460ff16158015611abb576000805460ff1961ff0019909116610100171660011790555b8251611ace90606a906020860190611b63565b508151611ae290606b906020850190611b63565b50606c805460ff1916601217905580156116e9576000805461ff0019169055505050565b600082821115611b5d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282611b995760008555611bdf565b82601f10611bb257805160ff1916838001178555611bdf565b82800160010185558215611bdf579182015b82811115611bdf578251825591602001919060010190611bc4565b50611beb929150611bef565b5090565b5b80821115611beb5760008155600101611bf056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220b9cb985ab1607d6b8c2ab480423cc3bc1c38d776f00dacfdd0cbc297871a3dfc64736f6c63430007060033", "linkReferences": {}, "deployedLinkReferences": {} }