0 txs
0 calls
constructor
No constructor.
functions
earned
viewfunction earned(address account, uint256 tokenId) view returns (uint256)
fees0
viewfunction fees0() view returns (uint256)
fees1
viewfunction fees1() view returns (uint256)
feesVotingReward
viewfunction feesVotingReward() view returns (address)
gaugeFactory
viewfunction gaugeFactory() view returns (address)
isPool
viewfunction isPool() view returns (bool)
lastUpdateTime
viewfunction lastUpdateTime(uint256) view returns (uint256)
left
viewfunction left() view returns (uint256)
nft
viewfunction nft() view returns (address)
periodFinish
viewfunction periodFinish() view returns (uint256)
pool
viewfunction pool() view returns (address)
rewardGrowthInside
viewfunction rewardGrowthInside(uint256) view returns (uint256)
rewardRate
viewfunction rewardRate() view returns (uint256)
rewardRateByEpoch
viewfunction rewardRateByEpoch(uint256) view returns (uint256)
rewards
viewfunction rewards(uint256) view returns (uint256)
rewardToken
viewfunction rewardToken() view returns (address)
stakedContains
viewfunction stakedContains(address depositor, uint256 tokenId) view returns (bool)
stakedLength
viewfunction stakedLength(address depositor) view returns (uint256)
tickSpacing
viewfunction tickSpacing() view returns (int24)
token0
viewfunction token0() view returns (address)
token1
viewfunction token1() view returns (address)
voter
viewfunction voter() view returns (address)
decreaseStakedLiquidity
nonpayablefunction decreaseStakedLiquidity(uint256 tokenId, uint128 liquidity, uint256 amount0Min, uint256 amount1Min, uint256 deadline) returns (uint256 amount0, uint256 amount1)
deposit
nonpayablefunction deposit(uint256 tokenId)
getReward
nonpayablefunction getReward(address account)
getReward
nonpayablefunction getReward(uint256 tokenId)
increaseStakedLiquidity
nonpayablefunction increaseStakedLiquidity(uint256 tokenId, uint256 amount0Desired, uint256 amount1Desired, uint256 amount0Min, uint256 amount1Min, uint256 deadline) returns (uint128 liquidity, uint256 amount0, uint256 amount1)
initialize
nonpayablefunction initialize(address _pool, address _feesVotingReward, address _rewardToken, address _voter, address _nft, address _token0, address _token1, int24 _tickSpacing, bool _isPool)
notifyRewardAmount
nonpayablefunction notifyRewardAmount(uint256 _amount)
notifyRewardWithoutClaim
nonpayablefunction notifyRewardWithoutClaim(uint256 _amount)
onERC721Received
nonpayablefunction onERC721Received(address, address, uint256, bytes) returns (bytes4)
withdraw
nonpayablefunction withdraw(uint256 tokenId)
events
ClaimFees
event ClaimFees(address indexed from, uint256 claimed0, uint256 claimed1)
ClaimRewards
event ClaimRewards(address indexed from, uint256 amount)
Deposit
event Deposit(address indexed user, uint256 indexed tokenId, uint128 indexed liquidityToStake)
NotifyReward
event NotifyReward(address indexed from, uint256 amount)
Withdraw
event Withdraw(address indexed user, uint256 indexed tokenId, uint128 indexed liquidityToStake)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b50600160005561365d806100256000396000f3fe608060405234801561001057600080fd5b50600436106101f05760003560e01c806393f1c4421161010f578063d0c93a7c116100a2578063e2e1c6db11610071578063e2e1c6db146103ee578063ebe2b12b146103f6578063f301af42146103fe578063f7c618c114610411576101f0565b8063d0c93a7c1461039d578063d21220a7146103b2578063dcdc18dc146103ba578063dd4997ee146103cd576101f0565b8063b06fcac3116100de578063b06fcac314610335578063b6b55f2514610357578063c00007b01461036a578063c69deec51461037d576101f0565b806393f1c442146102f457806394af5b63146102fc578063ac789c081461030f578063ae775c3214610322576101f0565b8063391ffff81161018757806347ccca021161015657806347ccca02146102c95780634bcddb1f146102d15780634c02a21c146102e45780637b0a47ee146102ec576101f0565b8063391ffff8146102885780633c6b16ab1461029b5780633e491d47146102ae57806346c96aac146102c1576101f0565b806316e64048116101c357806316e640481461024357806316f0115b146102585780631c4b774b146102605780632e1a7d4d14610275576101f0565b80630d52333c146101f55780630dfe1681146102135780630fe2f7111461021b578063150b7a0214610223575b600080fd5b6101fd610419565b60405161020a91906132b0565b60405180910390f35b6101fd610428565b6101fd610437565b610236610231366004612f3b565b610446565b60405161020a919061330c565b61024b610456565b60405161020a9190613540565b6101fd610479565b61027361026e3660046130d1565b610488565b005b6102736102833660046130d1565b6105ba565b610273610296366004612e80565b6108ce565b6102736102a93660046130d1565b6109b6565b61024b6102bc366004612fff565b610a65565b6101fd610ab5565b6101fd610ac4565b61024b6102df3660046130d1565b610ad3565b61024b610ae5565b61024b610aeb565b61024b610af1565b61024b61030a3660046130d1565b610af7565b61024b61031d3660046130d1565b610b09565b61024b610330366004612e48565b610b1b565b61034861034336600461316b565b610b44565b60405161020a9392919061351f565b6102736103653660046130d1565b610ef3565b610273610378366004612e48565b6114a6565b61039061038b366004612fff565b611620565b60405161020a9190613301565b6103a5611642565b60405161020a9190613347565b6101fd611652565b6102736103c83660046130d1565b611661565b6103e06103db366004613101565b611776565b60405161020a929190613549565b610390611a81565b61024b611a91565b61024b61040c3660046130d1565b611a97565b6101fd611aa9565b6004546001600160a01b031681565b6010546001600160a01b031681565b6005546001600160a01b031681565b630a85bd0160e11b949350505050565b6000600754421061046957506000610476565b5060075460085442909103025b90565b6003546001600160a01b031681565b600260005414156104ce576040805162461bcd60e51b815260206004820152601f60248201526000805160206135b8833981519152604482015290519081900360640190fd5b60026000908155338152600a602052604090206104eb9082611ab8565b6105105760405162461bcd60e51b815260040161050790613439565b60405180910390fd5b60015460405163133f757160e31b815260009182916001600160a01b03909116906399fbab8890610545908690600401613540565b6101806040518083038186803b15801561055e57600080fd5b505afa158015610572573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059691906131d1565b50505050509650965050505050506105b082828533611ac4565b5050600160005550565b60026000541415610600576040805162461bcd60e51b815260206004820152601f60248201526000805160206135b8833981519152604482015290519081900360640190fd5b60026000908155338152600a6020526040902061061d9082611ab8565b6106395760405162461bcd60e51b815260040161050790613439565b600154604080516080810182528381523360208201526001600160801b038183018190526060820152905163fc6f786560e01b81526001600160a01b039092169163fc6f78659161068c91600401613455565b6040805180830381600087803b1580156106a557600080fd5b505af11580156106b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106dd9190613148565b505060015460405163133f757160e31b8152600091829182916001600160a01b0316906399fbab8890610714908790600401613540565b6101806040518083038186803b15801561072d57600080fd5b505afa158015610741573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061076591906131d1565b50505050975097509750505050505061078083838633611ac4565b6001600160801b0381161561080b576003546001600160a01b0316634ed6210f6107b26001600160801b038416611b53565b600003858560016040518563ffffffff1660e01b81526004016107d89493929190613321565b600060405180830381600087803b1580156107f257600080fd5b505af1158015610806573d6000803e3d6000fd5b505050505b336000908152600a602052604090206108249085611b72565b50600154604051632142170760e11b81526001600160a01b03909116906342842e0e90610859903090339089906004016132c4565b600060405180830381600087803b15801561087357600080fd5b505af1158015610887573d6000803e3d6000fd5b50506040516001600160801b038416925086915033907f8903a5b5d08a841e7f68438387f1da20c84dea756379ed37e633ff3854b99b8490600090a4505060016000555050565b6003546001600160a01b0316156108f75760405162461bcd60e51b8152600401610507906133c8565b60048054336001600160a01b0319918216179091556003805482166001600160a01b039b8c16179055600580548216998b1699909917909855600680548916978a169790971790965560028054881695891695909517855560018054881694891694909417909355601080548716928816929092179091556011805490951695169490941762ffffff60a01b1916600160a01b62ffffff9590920b94909416029290921760ff60b81b1916600160b81b92151592909202919091179055565b600260005414156109fc576040805162461bcd60e51b815260206004820152601f60248201526000805160206135b8833981519152604482015290519081900360640190fd5b600260008190555433906001600160a01b03168114610a2d5760405162461bcd60e51b81526004016105079061338f565b81610a4a5760405162461bcd60e51b815260040161050790613373565b610a52611b7e565b610a5c8183611ddc565b50506001600055565b6001600160a01b0382166000908152600a60205260408120610a879083611ab8565b610aa35760405162461bcd60e51b815260040161050790613439565b610aac82612128565b90505b92915050565b6002546001600160a01b031681565b6001546001600160a01b031681565b600d6020526000908152604090205481565b600f5481565b60085481565b600e5481565b60096020526000908152604090205481565b600b6020526000908152604090205481565b6001600160a01b0381166000908152600a60205260408120610b3c9061259c565b90505b919050565b600080600060026000541415610b8f576040805162461bcd60e51b815260206004820152601f60248201526000805160206135b8833981519152604482015290519081900360640190fd5b60026000908155338152600a60205260409020610bac908a611ab8565b610bc85760405162461bcd60e51b815260040161050790613439565b600254604051631703e5f960e01b81526001600160a01b0390911690631703e5f990610bf89030906004016132b0565b60206040518083038186803b158015610c1057600080fd5b505afa158015610c24573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c48919061302a565b610c645760405162461bcd60e51b81526004016105079061341d565b600154601054610c81916001600160a01b0391821691168a6125a7565b600154601154610c9e916001600160a01b039182169116896125a7565b601054610cb6906001600160a01b031633308b612698565b601154610cce906001600160a01b031633308a612698565b60015460405163133f757160e31b815260009182916001600160a01b03909116906399fbab8890610d03908e90600401613540565b6101806040518083038186803b158015610d1c57600080fd5b505afa158015610d30573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d5491906131d1565b5050505050965096505050505050610d6d8b83836126f2565b6001546040805160c0810182528d8152602081018d90528082018c9052606081018b9052608081018a905260a08101899052905163219f5d1760e01b81526001600160a01b039092169163219f5d1791610dc9916004016134db565b606060405180830381600087803b158015610de357600080fd5b505af1158015610df7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1b919061309b565b60035492975090955093506001600160a01b0316634ed6210f610e466001600160801b038816611b53565b848460006040518563ffffffff1660e01b8152600401610e699493929190613321565b600060405180830381600087803b158015610e8357600080fd5b505af1158015610e97573d6000803e3d6000fd5b505050848b039050838a038115610ebf57601054610ebf906001600160a01b0316338461283c565b8015610edc57601154610edc906001600160a01b0316338361283c565b505060016000555092999198509650945050505050565b60026000541415610f39576040805162461bcd60e51b815260206004820152601f60248201526000805160206135b8833981519152604482015290519081900360640190fd5b60026000556001546040516331a9108f60e11b815233916001600160a01b031690636352211e90610f6e908590600401613540565b60206040518083038186803b158015610f8657600080fd5b505afa158015610f9a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fbe9190612e64565b6001600160a01b031614610fe45760405162461bcd60e51b815260040161050790613439565b600254604051631703e5f960e01b81526001600160a01b0390911690631703e5f9906110149030906004016132b0565b60206040518083038186803b15801561102c57600080fd5b505afa158015611040573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611064919061302a565b6110805760405162461bcd60e51b81526004016105079061341d565b60015460405163133f757160e31b815260009182918291829182916001600160a01b0316906399fbab88906110b9908990600401613540565b6101806040518083038186803b1580156110d257600080fd5b505afa1580156110e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110a91906131d1565b5050601054979e50959c50939a5091985096505050506001600160a01b0390811690881614915050801561114b57506011546001600160a01b038581169116145b80156111685750601154600284810b600160a01b909204810b900b145b6111845760405162461bcd60e51b815260040161050790613401565b600154604080516080810182528881523360208201526001600160801b038183018190526060820152905163fc6f786560e01b81526001600160a01b039092169163fc6f7865916111d791600401613455565b6040805180830381600087803b1580156111f057600080fd5b505af1158015611204573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112289190613148565b5050600154604051632142170760e11b81526001600160a01b03909116906342842e0e9061125e90339030908b906004016132c4565b600060405180830381600087803b15801561127857600080fd5b505af115801561128c573d6000803e3d6000fd5b5050336000908152600a602052604090206112aa925090508761288e565b5060015460405163133f757160e31b81526000916001600160a01b0316906399fbab88906112dc908a90600401613540565b6101806040518083038186803b1580156112f557600080fd5b505afa158015611309573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061132d91906131d1565b5050600354929a50506001600160a01b039091169750634ed6210f96506113659550506001600160801b0388169350611b5392505050565b858560016040518563ffffffff1660e01b81526004016113889493929190613321565b600060405180830381600087803b1580156113a257600080fd5b505af11580156113b6573d6000803e3d6000fd5b505060035460405163a16368c960e01b8152600093506001600160a01b03909116915063a16368c9906113f190879087908690600401613355565b60206040518083038186803b15801561140957600080fd5b505afa15801561141d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061144191906130e9565b6000898152600b60209081526040808320849055600d909152808220429055519192506001600160801b038416918a9133917f1c8ab8c7f45390d58f58f1d655213a82cca5d12179761a87c16f098813b8f2119190a450506001600055505050505050565b600260005414156114ec576040805162461bcd60e51b815260206004820152601f60248201526000805160206135b8833981519152604482015290519081900360640190fd5b60026000819055546001600160a01b0316331461151b5760405162461bcd60e51b81526004016105079061338f565b6001600160a01b0381166000908152600a6020526040812061153c9061289a565b805190915060008080805b848110156116125785818151811061155b57fe5b602090810291909101015160015460405163133f757160e31b81529195506001600160a01b0316906399fbab8890611597908790600401613540565b6101806040518083038186803b1580156115b057600080fd5b505afa1580156115c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e891906131d1565b50949c50929a5061160a98508b97508a96508c95508f9450611ac49350505050565b600101611547565b505060016000555050505050565b6001600160a01b0382166000908152600a60205260408120610aac9083611ab8565b601154600160a01b900460020b81565b6011546001600160a01b031681565b600260005414156116a7576040805162461bcd60e51b815260206004820152601f60248201526000805160206135b8833981519152604482015290519081900360640190fd5b6002600055600480546040805163111d656d60e21b8152905133936001600160a01b039093169263447595b492808201926020929091829003018186803b1580156116f157600080fd5b505afa158015611705573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117299190612e64565b6001600160a01b0316816001600160a01b0316146117595760405162461bcd60e51b815260040161050790613439565b81610a525760405162461bcd60e51b815260040161050790613373565b600080600260005414156117bf576040805162461bcd60e51b815260206004820152601f60248201526000805160206135b8833981519152604482015290519081900360640190fd5b60026000908155338152600a602052604090206117dc9088611ab8565b6117f85760405162461bcd60e51b815260040161050790613439565b60015460405163133f757160e31b815260009182916001600160a01b03909116906399fbab889061182d908c90600401613540565b6101806040518083038186803b15801561184657600080fd5b505afa15801561185a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061187e91906131d1565b50505050509650965050505050506118978983836126f2565b6001546040805160a0810182528b81526001600160801b038b1660208201528082018a905260608101899052608081018890529051630624e65f60e11b81526001600160a01b0390921691630c49ccbe916118f491600401613498565b6040805180830381600087803b15801561190d57600080fd5b505af1158015611921573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119459190613148565b60035491955093506001600160a01b0316634ed6210f61196d6001600160801b038b16611b53565b600003848460006040518563ffffffff1660e01b81526004016119939493929190613321565b600060405180830381600087803b1580156119ad57600080fd5b505af11580156119c1573d6000803e3d6000fd5b5050600154604080516080810182528d81523360208201526001600160801b03808a168284015288166060820152905163fc6f786560e01b81526001600160a01b03909216935063fc6f78659250611a1b91600401613455565b6040805180830381600087803b158015611a3457600080fd5b505af1158015611a48573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a6c9190613148565b50506001600055509197909650945050505050565b601154600160b81b900460ff1681565b60075481565b600c6020526000908152604090205481565b6006546001600160a01b031681565b6000610aac83836128ae565b611acf8285856126f2565b6000828152600c60205260409020548015611b4c576000838152600c6020526040812055600654611b0a906001600160a01b0316838361283c565b816001600160a01b03167f1f89f96333d3133000ee447473151fa9606543368f02271c9d95ae14f13bcc6782604051611b439190613540565b60405180910390a25b5050505050565b60006001607f1b826001600160801b031610611b6e57600080fd5b5090565b6000610aac83836128c6565b601154600160b81b900460ff16611b9457611dda565b6003546040805163643cb2b960e11b8152815160009384936001600160a01b039091169263c8796572926004808301939282900301818787803b158015611bda57600080fd5b505af1158015611bee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c129190613062565b6001600160801b031691506001600160801b031691506000821180611c375750600081115b15611dd757600e54600f5460105460115492850192918401916001600160a01b03918216911662093a80841115611cf0576000600e55600554611c87906001600160a01b038481169116866125a7565b60055460405163b66503cf60e01b81526001600160a01b039091169063b66503cf90611cb990859088906004016132e8565b600060405180830381600087803b158015611cd357600080fd5b505af1158015611ce7573d6000803e3d6000fd5b50505050611cf6565b600e8490555b62093a80831115611d89576000600f55600554611d20906001600160a01b038381169116856125a7565b60055460405163b66503cf60e01b81526001600160a01b039091169063b66503cf90611d5290849087906004016132e8565b600060405180830381600087803b158015611d6c57600080fd5b505af1158015611d80573d6000803e3d6000fd5b50505050611d8f565b600f8390555b336001600160a01b03167fbc567d6cbad26368064baa0ab5a757be46aae4d70f707f9203d9d9b6c8ccbfa38787604051611dca929190613549565b60405180910390a2505050505b50505b565b42600081611de98161298e565b039050600360009054906101000a90046001600160a01b03166001600160a01b0316631b4109606040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611e3c57600080fd5b505af1158015611e50573d6000803e3d6000fd5b50506006548484019250611e7091506001600160a01b0316863087612698565b600360009054906101000a90046001600160a01b03166001600160a01b031663b056b49a6040518163ffffffff1660e01b815260040160206040518083038186803b158015611ebe57600080fd5b505afa158015611ed2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ef691906130e9565b6007549401938310611f7b57818481611f0b57fe5b0460088190556003546040516360a73f9b60e01b81526001600160a01b03909116916360a73f9b91611f44919088908690600401613557565b600060405180830381600087803b158015611f5e57600080fd5b505af1158015611f72573d6000803e3d6000fd5b50505050611ffa565b60085482028285820181611f8b57fe5b0460088190556003546040516360a73f9b60e01b81526001600160a01b03909116916360a73f9b91611fc69190898601908790600401613557565b600060405180830381600087803b158015611fe057600080fd5b505af1158015611ff4573d6000803e3d6000fd5b50505050505b6008546009600061200a8661299c565b815260208101919091526040016000205560085461203a5760405162461bcd60e51b8152600401610507906133ab565b6006546040516370a0823160e01b81526000916001600160a01b0316906370a082319061206b9030906004016132b0565b60206040518083038186803b15801561208357600080fd5b505afa158015612097573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120bb91906130e9565b90508281816120c657fe5b0460085411156120e85760405162461bcd60e51b8152600401610507906133e4565b81600781905550856001600160a01b03167f095667752957714306e1a6ad83495404412df6fdb932fca6dc849a7ee910d4c186604051611dca9190613540565b600080600360009054906101000a90046001600160a01b03166001600160a01b031663d0b06f5d6040518163ffffffff1660e01b815260040160206040518083038186803b15801561217957600080fd5b505afa15801561218d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121b191906131ad565b63ffffffff169050600081420390506000600360009054906101000a90046001600160a01b03166001600160a01b03166357806ada6040518163ffffffff1660e01b815260040160206040518083038186803b15801561221057600080fd5b505afa158015612224573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061224891906130e9565b90506000600360009054906101000a90046001600160a01b03166001600160a01b031663cab64bcd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561229a57600080fd5b505afa1580156122ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122d291906130e9565b905082158015906122e35750600081115b80156123725750600354604080516301d5825960e51b815290516000926001600160a01b031691633ab04b20916004808301926020929190829003018186803b15801561232f57600080fd5b505afa158015612343573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123679190613046565b6001600160801b0316115b1561242a576008548302818111156123875750805b61242481600160801b600360009054906101000a90046001600160a01b03166001600160a01b0316633ab04b206040518163ffffffff1660e01b815260040160206040518083038186803b1580156123de57600080fd5b505afa1580156123f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124169190613046565b6001600160801b03166129a7565b83019250505b60015460405163133f757160e31b8152600091829182916001600160a01b0316906399fbab889061245f908c90600401613540565b6101806040518083038186803b15801561247857600080fd5b505afa15801561248c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124b091906131d1565b5050505097509750975050505050506000600b60008b81526020019081526020016000205490506000600360009054906101000a90046001600160a01b03166001600160a01b031663a16368c986868a6040518463ffffffff1660e01b815260040161251e93929190613355565b60206040518083038186803b15801561253657600080fd5b505afa15801561254a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061256e91906130e9565b9050600061258c838303856001600160801b0316600160801b6129a7565b9c9b505050505050505050505050565b6000610b3c82612a56565b600061263d82856001600160a01b031663dd62ed3e30876040518363ffffffff1660e01b815260040180836001600160a01b03168152602001826001600160a01b031681526020019250505060206040518083038186803b15801561260b57600080fd5b505afa15801561261f573d6000803e3d6000fd5b505050506040513d602081101561263557600080fd5b505190612a5a565b604080516001600160a01b038616602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b179052909150612692908590612ab4565b50505050565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052612692908590612ab4565b6000838152600d602052604090205442141561270d57612837565b600360009054906101000a90046001600160a01b03166001600160a01b0316631b4109606040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561275d57600080fd5b505af1158015612771573d6000803e3d6000fd5b5050506000848152600d602052604090204290555061278f83612128565b6000848152600c60205260408082208054909301909255600354915163a16368c960e01b81526001600160a01b039092169163a16368c9916127d79186918691600401613355565b60206040518083038186803b1580156127ef57600080fd5b505afa158015612803573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061282791906130e9565b6000848152600b60205260409020555b505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052612837908490612ab4565b6000610aac8383612b65565b606060006128a783612baf565b9392505050565b60009081526001919091016020526040902054151590565b60008181526001830160205260408120548015612984578354600019808301910180821461293e5760008660000182815481106128ff57fe5b906000526020600020015490508087600001848154811061291c57fe5b6000918252602080832090910192909255918252600188019052604090208390555b855486908061294957fe5b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610aaf565b6000915050610aaf565b62093a808082069091030190565b62093a808106900390565b60008080600019858709868602925082811090839003039050806129dd57600084116129d257600080fd5b5082900490506128a7565b8084116129e957600080fd5b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b5490565b600082820183811015610aac576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000612b09826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316612c0b9092919063ffffffff16565b80519091501561283757808060200190516020811015612b2857600080fd5b50516128375760405162461bcd60e51b815260040180806020018281038252602a8152602001806135fe602a913960400191505060405180910390fd5b6000612b7183836128ae565b612ba757508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610aaf565b506000610aaf565b606081600001805480602002602001604051908101604052809291908181526020018280548015612bff57602002820191906000526020600020905b815481526020019060010190808311612beb575b50505050509050919050565b6060612c1a8484600085612c22565b949350505050565b606082471015612c635760405162461bcd60e51b81526004018080602001828103825260268152602001806135d86026913960400191505060405180910390fd5b612c6c85612d7d565b612cbd576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b60208310612cfb5780518252601f199092019160209182019101612cdc565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114612d5d576040519150601f19603f3d011682016040523d82523d6000602084013e612d62565b606091505b5091509150612d72828286612d83565b979650505050505050565b3b151590565b60608315612d925750816128a7565b825115612da25782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612dec578181015183820152602001612dd4565b50505050905090810190601f168015612e195780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b8051610b3f8161356d565b8051610b3f81613593565b8051610b3f816135a2565b600060208284031215612e59578081fd5b8135610aac8161356d565b600060208284031215612e75578081fd5b8151610aac8161356d565b60008060008060008060008060006101208a8c031215612e9e578485fd5b8935612ea98161356d565b985060208a0135612eb98161356d565b975060408a0135612ec98161356d565b965060608a0135612ed98161356d565b955060808a0135612ee98161356d565b945060a08a0135612ef98161356d565b935060c08a0135612f098161356d565b925060e08a0135612f1981613593565b91506101008a0135612f2a81613585565b809150509295985092959850929598565b60008060008060808587031215612f50578384fd5b8435612f5b8161356d565b9350602085810135612f6c8161356d565b935060408601359250606086013567ffffffffffffffff80821115612f8f578384fd5b818801915088601f830112612fa2578384fd5b813581811115612fae57fe5b604051601f8201601f1916810185018381118282101715612fcb57fe5b60405281815283820185018b1015612fe1578586fd5b81858501868301379081019093019390935250939692955090935050565b60008060408385031215613011578182fd5b823561301c8161356d565b946020939093013593505050565b60006020828403121561303b578081fd5b8151610aac81613585565b600060208284031215613057578081fd5b8151610aac816135a2565b60008060408385031215613074578182fd5b825161307f816135a2565b6020840151909250613090816135a2565b809150509250929050565b6000806000606084860312156130af578283fd5b83516130ba816135a2565b602085015160409095015190969495509392505050565b6000602082840312156130e2578081fd5b5035919050565b6000602082840312156130fa578081fd5b5051919050565b600080600080600060a08688031215613118578283fd5b85359450602086013561312a816135a2565b94979496505050506040830135926060810135926080909101359150565b6000806040838503121561315a578182fd5b505080516020909101519092909150565b60008060008060008060c08789031215613183578384fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b6000602082840312156131be578081fd5b815163ffffffff81168114610aac578182fd5b6000806000806000806000806000806000806101808d8f0312156131f3578586fd5b8c516bffffffffffffffffffffffff8116811461320e578687fd5b9b5061321c60208e01612e27565b9a5061322a60408e01612e27565b995061323860608e01612e27565b985061324660808e01612e32565b975061325460a08e01612e32565b965061326260c08e01612e32565b955061327060e08e01612e3d565b94506101008d015193506101208d0151925061328f6101408e01612e3d565b915061329e6101608e01612e3d565b90509295989b509295989b509295989b565b6001600160a01b0391909116815260200190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b6001600160e01b031991909116815260200190565b600f9490940b8452600292830b6020850152910b60408301521515606082015260800190565b60029190910b815260200190565b600293840b81529190920b6020820152604081019190915260600190565b6020808252600290820152612d2960f11b604082015260600190565b602080825260029082015261272b60f11b604082015260600190565b6020808252600390820152622d292960e91b604082015260600190565b602080825260029082015261414960f01b604082015260600190565b6020808252600390820152620a4a4960eb1b604082015260600190565b602080825260029082015261504d60f01b604082015260600190565b602080825260029082015261474b60f01b604082015260600190565b6020808252600290820152614e4160f01b604082015260600190565b815181526020808301516001600160a01b0316908201526040808301516001600160801b0390811691830191909152606092830151169181019190915260800190565b600060a082019050825182526001600160801b03602084015116602083015260408301516040830152606083015160608301526080830151608083015292915050565b600060c082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015292915050565b6001600160801b039390931683526020830191909152604082015260600190565b90815260200190565b918252602082015260400190565b9283526020830191909152604082015260600190565b6001600160a01b038116811461358257600080fd5b50565b801515811461358257600080fd5b8060020b811461358257600080fd5b6001600160801b038116811461358257600080fdfe5265656e7472616e637947756172643a207265656e7472616e742063616c6c00416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a26469706673582212204e189c883281ed611e8970c5fc50e3f15c9c6e49e27309e955ba8e3a75024f5b64736f6c63430007060033