0 txs
16 calls
constructor
constructor()
functions
calculator
viewfunction calculator() view returns (address)
configStorage
viewfunction configStorage() view returns (address)
glpManager
viewfunction glpManager() view returns (address)
minHLPValueLossBPS
viewfunction minHLPValueLossBPS() view returns (uint16)
oneInchRouter
viewfunction oneInchRouter() view returns (address)
owner
viewfunction owner() view returns (address)
rewardRouter
viewfunction rewardRouter() view returns (address)
sglp
viewfunction sglp() view returns (address)
switchRouter
viewfunction switchRouter() view returns (address)
vaultStorage
viewfunction vaultStorage() view returns (address)
addGlp
nonpayablefunction addGlp(tuple[] _params) returns (uint256 receivedGlp)
initialize
nonpayablefunction initialize(address _sglp, address _rewardRouter, address _glpManager, address _vaultStorage, address _configStorage, address _calculator, address _switchCollateralRouter, uint16 _minHLPValueLossBPS)
oneInchSwap
nonpayablefunction oneInchSwap(tuple _params, bytes _oneInchCalldata) returns (uint256 _amountOut)
renounceOwnership
nonpayablefunction renounceOwnership()
setMinHLPValueLossBPS
nonpayablefunction setMinHLPValueLossBPS(uint16 _HLPValueLossBPS)
setOneInchRouter
nonpayablefunction setOneInchRouter(address _oneInchRouter)
swap
nonpayablefunction swap(tuple _params) returns (uint256 _amountOut)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdrawGlp
nonpayablefunction withdrawGlp(tuple[] _params) returns (tuple[] returnData)
events
Initialized
event Initialized(uint8 version)
LogSetMinHLPValueLossBPS
event LogSetMinHLPValueLossBPS(uint16 oldValue, uint16 newValue)
LogSetOneInchRouter
event LogSetOneInchRouter(address oldValue, address newValue)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
RebalanceHLPService_AmountIsZero
error RebalanceHLPService_AmountIsZero()
RebalanceHLPService_HlpTvlDropExceedMin
error RebalanceHLPService_HlpTvlDropExceedMin()
RebalanceHLPService_InvalidPath
error RebalanceHLPService_InvalidPath()
RebalanceHLPService_InvalidTokenAddress
error RebalanceHLPService_InvalidTokenAddress()
RebalanceHLPService_InvalidTokenAmount
error RebalanceHLPService_InvalidTokenAmount()
RebalanceHLPService_OneInchSwapFailed
error RebalanceHLPService_OneInchSwapFailed()
RebalanceHLPService_Slippage
error RebalanceHLPService_Slippage()
creation bytecode
0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161015620000e2576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b612c7580620000f46000396000f3fe608060405234801561001057600080fd5b50600436106100f05760003560e01c8062fe9ad4146100f5578063036fcf581461011e5780631c660a79146101315780631d2dc7c3146101525780632d38419414610167578063443b17861461017a5780634c82cff01461018d5780635a3bb989146101a05780636174323a146101b3578063715018a6146101d35780638da5cb5b146101db578063a849b70f146101e3578063aa891c4a146101f6578063ac3af2081461021e578063b225e3b214610231578063c2844e0b14610244578063ce3e39c014610257578063f2fde38b1461026a578063fa6db1bc1461027d575b600080fd5b606854610108906001600160a01b031681565b6040516101159190612637565b60405180910390f35b606554610108906001600160a01b031681565b61014461013f366004612663565b610290565b604051908152602001610115565b610165610160366004612715565b610893565b005b610165610175366004612749565b610904565b606954610108906001600160a01b031681565b61016561019b3660046127e0565b610aad565b606654610108906001600160a01b031681565b6101c66101c13660046127fb565b610b45565b604051610115919061286f565b6101656111f4565b610108611208565b6101446101f13660046128c7565b611217565b606b5461020b90600160a01b900461ffff1681565b60405161ffff9091168152602001610115565b606c54610108906001600160a01b031681565b61014461023f3660046128fb565b611793565b606b54610108906001600160a01b031681565b606a54610108906001600160a01b031681565b610165610278366004612715565b612072565b606754610108906001600160a01b031681565b60695460405162019dd360ee1b81526000916001600160a01b031690636774c000906102c2903090339060040161295d565b60006040518083038186803b1580156102da57600080fd5b505afa1580156102ee573d6000803e3d6000fd5b50600292506103039150506040860186612977565b9050101561032457604051631aa03d1b60e01b815260040160405180910390fd5b6068546069546001600160a01b03918216911680637d04285561034a6040890189612977565b600081811061035b5761035b6129c7565b90506020020160208101906103709190612715565b6040518263ffffffff1660e01b815260040161038c9190612637565b60006040518083038186803b1580156103a457600080fd5b505afa1580156103b8573d6000803e3d6000fd5b5050506001600160a01b0382169050637d0428556103d96040890189612977565b60016103e860408c018c612977565b6103f39291506129f3565b818110610402576104026129c7565b90506020020160208101906104179190612715565b6040518263ffffffff1660e01b81526004016104339190612637565b60006040518083038186803b15801561044b57600080fd5b505afa15801561045f573d6000803e3d6000fd5b505050863560000390506104865760405163dda8c35960e01b815260040160405180910390fd5b606a54604051633f656e2760e11b8152600160048201526000916001600160a01b031690637ecadc4e90602401602060405180830381865afa1580156104d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f49190612a0c565b905060008061050660408a018a612977565b6000818110610517576105176129c7565b905060200201602081019061052c9190612715565b61053960408b018b612977565b600161054860408e018e612977565b6105539291506129f3565b818110610562576105626129c7565b90506020020160208101906105779190612715565b6040516302456a3160e01b815291935091506001600160a01b038616906302456a31906105ab9085908d3590600401612a25565b600060405180830381600087803b1580156105c557600080fd5b505af11580156105d9573d6000803e3d6000fd5b50506040516301826f6f60e41b81526001600160a01b0388169250631826f6f0915061060e90859030908e3590600401612a3e565b600060405180830381600087803b15801561062857600080fd5b505af115801561063c573d6000803e3d6000fd5b5050606c5461065b92506001600160a01b038581169250168b356120eb565b606c546040516000916001600160a01b03169061067b908b908b90612a62565b6000604051808303816000865af19150503d80600081146106b8576040519150601f19603f3d011682016040523d82523d6000602084013e6106bd565b606091505b50509050806106df57604051631331625d60e31b815260040160405180910390fd5b6040516370a0823160e01b81526001600160a01b038316906370a082319061070b903090600401612637565b602060405180830381865afa158015610728573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061074c9190612a0c565b965089602001358710156107735760405163cf5c582b60e01b815260040160405180910390fd5b6107876001600160a01b03831687896121c5565b60405163f0ca5ad560e01b81526000906001600160a01b0388169063f0ca5ad5906107b6908690600401612637565b6020604051808303816000875af11580156107d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f99190612a0c565b90508781101561081c5760405163662dcf3f60e01b815260040160405180910390fd5b60405163112076bb60e21b81526001600160a01b03881690634481daec9061084a9086908c90600401612a25565b600060405180830381600087803b15801561086457600080fd5b505af1158015610878573d6000803e3d6000fd5b50505050610885856121e9565b505050505050509392505050565b61089b6122b8565b606c546040517f9471c0ef35ebf9f5f09b9f5d04a42c2bb8681ba9cf1b35d4b60c107f0ba81d31916108da916001600160a01b0390911690849061295d565b60405180910390a1606c80546001600160a01b0319166001600160a01b0392909216919091179055565b600054610100900460ff16158080156109245750600054600160ff909116105b80610945575061093330612317565b158015610945575060005460ff166001145b6109ad5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156109d0576000805461ff0019166101001790555b6109d8612326565b606580546001600160a01b03199081166001600160a01b038c8116919091179092556066805482168b84161790556067805482168a8416179055606880548216898416179055606980548216888416179055606a8054909116868316179055606b80549185166001600160b01b031990921691909117600160a01b61ffff8516021790558015610aa2576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050505050565b610ab56122b8565b8061ffff16600003610ada5760405163dda8c35960e01b815260040160405180910390fd5b606b546040805161ffff600160a01b9093048316815291831660208301527f3b5450d4135d58a0678fbcea2807d6456502ee21dfc3aa35fee8c3d7200e8973910160405180910390a1606b805461ffff909216600160a01b0261ffff60a01b19909216919091179055565b60695460405162019dd360ee1b81526060916001600160a01b031690636774c00090610b77903090339060040161295d565b60006040518083038186803b158015610b8f57600080fd5b505afa158015610ba3573d6000803e3d6000fd5b50506068546065546001600160a01b0391821693501690506000805b85811015610c49576000878783818110610bdb57610bdb6129c7565b610bf19260206060909202019081019150612715565b6001600160a01b031603610c1857604051633b4a82c560e11b815260040160405180910390fd5b868682818110610c2a57610c2a6129c7565b9050606002016020013582610c3f9190612a72565b9150600101610bbf565b506065546040516312049d0360e31b815282916001600160a01b0380871692639024e81892610c7c921690600401612637565b602060405180830381865afa158015610c99573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cbd9190612a0c565b1015610cdc5760405163662dcf3f60e01b815260040160405180910390fd5b606a54604051633f656e2760e11b8152600160048201526000916001600160a01b031690637ecadc4e90602401602060405180830381865afa158015610d26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d4a9190612a0c565b9050856001600160401b03811115610d6457610d64612a85565b604051908082528060200260200182016040528015610da957816020015b6040805180820190915260008082526020820152815260200190600190039081610d825790505b50945060005b868110156111e057878782818110610dc957610dc96129c7565b610ddf9260206060909202019081019150612715565b868281518110610df157610df16129c7565b6020026020010151600001906001600160a01b031690816001600160a01b0316815250506000868281518110610e2957610e296129c7565b60200260200101516020018181525050846001600160a01b0316631826f6f085308b8b86818110610e5c57610e5c6129c7565b905060600201602001356040518463ffffffff1660e01b8152600401610e8493929190612a3e565b600060405180830381600087803b158015610e9e57600080fd5b505af1158015610eb2573d6000803e3d6000fd5b50505050846001600160a01b03166302456a31858a8a85818110610ed857610ed86129c7565b905060600201602001356040518363ffffffff1660e01b8152600401610eff929190612a25565b600060405180830381600087803b158015610f1957600080fd5b505af1158015610f2d573d6000803e3d6000fd5b5050606754610f7792506001600160a01b03169050898984818110610f5457610f546129c7565b90506060020160200135866001600160a01b03166120eb9092919063ffffffff16565b6066546001600160a01b0316630f3aa554898984818110610f9a57610f9a6129c7565b610fb09260206060909202019081019150612715565b8a8a85818110610fc257610fc26129c7565b905060600201602001358b8b86818110610fde57610fde6129c7565b604080516001600160e01b031960e089901b1681526001600160a01b0396871660048201526024810195909552606090910292909201919091013560448301525090881660648201526084016020604051808303816000875af1158015611049573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061106d9190612a0c565b86828151811061107f5761107f6129c7565b60200260200101516020018181516110979190612a72565b9052506001600160a01b03851663f0ca5ad58989848181106110bb576110bb6129c7565b6110d19260206060909202019081019150612715565b6040518263ffffffff1660e01b81526004016110ed9190612637565b6020604051808303816000875af115801561110c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111309190612a0c565b50846001600160a01b0316634481daec898984818110611152576111526129c7565b6111689260206060909202019081019150612715565b88848151811061117a5761117a6129c7565b6020026020010151602001516040518363ffffffff1660e01b81526004016111a3929190612a25565b600060405180830381600087803b1580156111bd57600080fd5b505af11580156111d1573d6000803e3d6000fd5b50505050806001019050610daf565b506111ea816121e9565b5050505092915050565b6111fc6122b8565b6112066000612355565b565b6033546001600160a01b031690565b60695460405162019dd360ee1b81526000916001600160a01b031690636774c00090611249903090339060040161295d565b60006040518083038186803b15801561126157600080fd5b505afa158015611275573d6000803e3d6000fd5b506002925061128a9150506040840184612977565b905010156112ab57604051631aa03d1b60e01b815260040160405180910390fd5b6068546069546001600160a01b03918216911680637d0428556112d16040870187612977565b60008181106112e2576112e26129c7565b90506020020160208101906112f79190612715565b6040518263ffffffff1660e01b81526004016113139190612637565b60006040518083038186803b15801561132b57600080fd5b505afa15801561133f573d6000803e3d6000fd5b5050506001600160a01b0382169050637d0428556113606040870187612977565b600161136f60408a018a612977565b61137a9291506129f3565b818110611389576113896129c7565b905060200201602081019061139e9190612715565b6040518263ffffffff1660e01b81526004016113ba9190612637565b60006040518083038186803b1580156113d257600080fd5b505afa1580156113e6573d6000803e3d6000fd5b5050508435600003905061140d5760405163dda8c35960e01b815260040160405180910390fd5b606a54604051633f656e2760e11b8152600160048201526000916001600160a01b031690637ecadc4e90602401602060405180830381865afa158015611457573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061147b9190612a0c565b905060008061148d6040880188612977565b600081811061149e5761149e6129c7565b90506020020160208101906114b39190612715565b6114c06040890189612977565b60016114cf60408c018c612977565b6114da9291506129f3565b8181106114e9576114e96129c7565b90506020020160208101906114fe9190612715565b6040516302456a3160e01b815291935091506001600160a01b038616906302456a31906115329085908b3590600401612a25565b600060405180830381600087803b15801561154c57600080fd5b505af1158015611560573d6000803e3d6000fd5b5050606b546040516301826f6f60e41b81526001600160a01b03808a169450631826f6f0935061159a9287929116908c3590600401612a3e565b600060405180830381600087803b1580156115b457600080fd5b505af11580156115c8573d6000803e3d6000fd5b5050606b546001600160a01b03169150634c796628905088356115ee60408b018b612977565b6040518463ffffffff1660e01b815260040161160c93929190612a9b565b6020604051808303816000875af115801561162b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061164f9190612a0c565b955086602001358610156116765760405163cf5c582b60e01b815260040160405180910390fd5b61168a6001600160a01b03821686886121c5565b60405163f0ca5ad560e01b81526000906001600160a01b0387169063f0ca5ad5906116b9908590600401612637565b6020604051808303816000875af11580156116d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116fc9190612a0c565b90508681101561171f5760405163662dcf3f60e01b815260040160405180910390fd5b60405163112076bb60e21b81526001600160a01b03871690634481daec9061174d9085908b90600401612a25565b600060405180830381600087803b15801561176757600080fd5b505af115801561177b573d6000803e3d6000fd5b50505050611788846121e9565b505050505050919050565b60695460405162019dd360ee1b81526000916001600160a01b031690636774c000906117c5903090339060040161295d565b60006040518083038186803b1580156117dd57600080fd5b505afa1580156117f1573d6000803e3d6000fd5b5050606554606854606b546001600160a01b03928316945090821692501660005b8581101561196857600087878381811061182e5761182e6129c7565b61184492602060a0909202019081019150612715565b6001600160a01b03160361186b57604051633b4a82c560e11b815260040160405180910390fd5b826001600160a01b0316639024e81888888481811061188c5761188c6129c7565b6118a292602060a0909202019081019150612715565b6040518263ffffffff1660e01b81526004016118be9190612637565b602060405180830381865afa1580156118db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118ff9190612a0c565b878783818110611911576119116129c7565b905060a002016040013511806119425750868682818110611934576119346129c7565b905060a00201604001356000145b156119605760405163662dcf3f60e01b815260040160405180910390fd5b600101611812565b50606a54604051633f656e2760e11b8152600160048201526000916001600160a01b031690637ecadc4e90602401602060405180830381865afa1580156119b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119d79190612a0c565b90506000945060005b86811015611f7e57600080808a8a858181106119fe576119fe6129c7565b905060a002016020016020810190611a169190612715565b6001600160a01b031614611cf1576040805160028082526060820183526000926020830190803683370190505090508a8a85818110611a5757611a576129c7565b611a6d92602060a0909202019081019150612715565b81600081518110611a8057611a806129c7565b60200260200101906001600160a01b031690816001600160a01b0316815250508a8a85818110611ab257611ab26129c7565b905060a002016020016020810190611aca9190612715565b81600181518110611add57611add6129c7565b6001600160a01b0392831660209182029290920101528716631826f6f08c8c87818110611b0c57611b0c6129c7565b611b2292602060a0909202019081019150612715565b888e8e89818110611b3557611b356129c7565b905060a00201604001356040518463ffffffff1660e01b8152600401611b5d93929190612a3e565b600060405180830381600087803b158015611b7757600080fd5b505af1158015611b8b573d6000803e3d6000fd5b50505050866001600160a01b03166302456a318c8c87818110611bb057611bb06129c7565b611bc692602060a0909202019081019150612715565b8d8d88818110611bd857611bd86129c7565b905060a00201604001356040518363ffffffff1660e01b8152600401611bff929190612a25565b600060405180830381600087803b158015611c1957600080fd5b505af1158015611c2d573d6000803e3d6000fd5b505050508a8a85818110611c4357611c436129c7565b905060a002016020016020810190611c5b9190612715565b9250856001600160a01b0316634c7966288c8c87818110611c7e57611c7e6129c7565b905060a0020160400135836040518363ffffffff1660e01b8152600401611ca6929190612af1565b6020604051808303816000875af1158015611cc5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ce99190612a0c565b915050611e80565b856001600160a01b0316631826f6f08b8b86818110611d1257611d126129c7565b611d2892602060a0909202019081019150612715565b308d8d88818110611d3b57611d3b6129c7565b905060a00201604001356040518463ffffffff1660e01b8152600401611d6393929190612a3e565b600060405180830381600087803b158015611d7d57600080fd5b505af1158015611d91573d6000803e3d6000fd5b50505050856001600160a01b03166302456a318b8b86818110611db657611db66129c7565b611dcc92602060a0909202019081019150612715565b8c8c87818110611dde57611dde6129c7565b905060a00201604001356040518363ffffffff1660e01b8152600401611e05929190612a25565b600060405180830381600087803b158015611e1f57600080fd5b505af1158015611e33573d6000803e3d6000fd5b50505050898984818110611e4957611e496129c7565b611e5f92602060a0909202019081019150612715565b9150898984818110611e7357611e736129c7565b905060a002016040013590505b606754611e9a906001600160a01b038481169116836120eb565b6066546001600160a01b031663364e231183838d8d88818110611ebf57611ebf6129c7565b905060a00201606001358e8e89818110611edb57611edb6129c7565b6040516001600160e01b031960e089901b1681526001600160a01b0390961660048701526024860194909452506044840191909152608060a090920201013560648201526084016020604051808303816000875af1158015611f41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f659190612a0c565b611f6f9089612a72565b975082600101925050506119e0565b50606854611f99906001600160a01b038681169116876121c5565b60405163f0ca5ad560e01b81526001600160a01b0384169063f0ca5ad590611fc5908790600401612637565b6020604051808303816000875af1158015611fe4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120089190612a0c565b5060405163112076bb60e21b81526001600160a01b03841690634481daec906120379087908990600401612a25565b600060405180830381600087803b15801561205157600080fd5b505af1158015612065573d6000803e3d6000fd5b505050506111ea816121e9565b61207a6122b8565b6001600160a01b0381166120df5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109a4565b6120e881612355565b50565b600081846001600160a01b031663dd62ed3e30866040518363ffffffff1660e01b815260040161211c92919061295d565b602060405180830381865afa158015612139573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061215d9190612a0c565b6121679190612a72565b90506121bf8463095ea7b360e01b8584604051602401612188929190612a25565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526123a7565b50505050565b6121e48363a9059cbb60e01b8484604051602401612188929190612a25565b505050565b606a54604051633f656e2760e11b8152600160048201526000916001600160a01b031690637ecadc4e90602401602060405180830381865afa158015612233573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122579190612a0c565b9050808211156122b457600061226d82846129f3565b606b54909150612289908490600160a01b900461ffff16612b48565b61229582612710612b48565b11156121e457604051632749952560e11b815260040160405180910390fd5b5050565b336122c1611208565b6001600160a01b0316146112065760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109a4565b6001600160a01b03163b151590565b600054610100900460ff1661234d5760405162461bcd60e51b81526004016109a490612b5f565b611206612479565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006123fc826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166124a99092919063ffffffff16565b8051909150156121e4578080602001905181019061241a9190612baa565b6121e45760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016109a4565b600054610100900460ff166124a05760405162461bcd60e51b81526004016109a490612b5f565b61120633612355565b60606124b884846000856124c0565b949350505050565b6060824710156125215760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016109a4565b600080866001600160a01b0316858760405161253d9190612bf0565b60006040518083038185875af1925050503d806000811461257a576040519150601f19603f3d011682016040523d82523d6000602084013e61257f565b606091505b50915091506125908783838761259b565b979650505050505050565b60608315612608578251600003612601576125b585612317565b6126015760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016109a4565b50816124b8565b6124b8838381511561261d5781518083602001fd5b8060405162461bcd60e51b81526004016109a49190612c0c565b6001600160a01b0391909116815260200190565b60006060828403121561265d57600080fd5b50919050565b60008060006040848603121561267857600080fd5b83356001600160401b038082111561268f57600080fd5b61269b8783880161264b565b945060208601359150808211156126b157600080fd5b818601915086601f8301126126c557600080fd5b8135818111156126d457600080fd5b8760208285010111156126e657600080fd5b6020830194508093505050509250925092565b80356001600160a01b038116811461271057600080fd5b919050565b60006020828403121561272757600080fd5b612730826126f9565b9392505050565b803561ffff8116811461271057600080fd5b600080600080600080600080610100898b03121561276657600080fd5b61276f896126f9565b975061277d60208a016126f9565b965061278b60408a016126f9565b955061279960608a016126f9565b94506127a760808a016126f9565b93506127b560a08a016126f9565b92506127c360c08a016126f9565b91506127d160e08a01612737565b90509295985092959890939650565b6000602082840312156127f257600080fd5b61273082612737565b6000806020838503121561280e57600080fd5b82356001600160401b038082111561282557600080fd5b818501915085601f83011261283957600080fd5b81358181111561284857600080fd5b86602060608302850101111561285d57600080fd5b60209290920196919550909350505050565b602080825282518282018190526000919060409081850190868401855b828110156128ba57815180516001600160a01b0316855286015186850152928401929085019060010161288c565b5091979650505050505050565b6000602082840312156128d957600080fd5b81356001600160401b038111156128ef57600080fd5b6124b88482850161264b565b6000806020838503121561290e57600080fd5b82356001600160401b038082111561292557600080fd5b818501915085601f83011261293957600080fd5b81358181111561294857600080fd5b86602060a08302850101111561285d57600080fd5b6001600160a01b0392831681529116602082015260400190565b6000808335601e1984360301811261298e57600080fd5b8301803591506001600160401b038211156129a857600080fd5b6020019150600581901b36038213156129c057600080fd5b9250929050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115612a0657612a066129dd565b92915050565b600060208284031215612a1e57600080fd5b5051919050565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b8183823760009101908152919050565b80820180821115612a0657612a066129dd565b634e487b7160e01b600052604160045260246000fd5b83815260406020808301829052908201839052600090849060608401835b86811015612ae5576001600160a01b03612ad2856126f9565b1682529282019290820190600101612ab9565b50979650505050505050565b6000604082018483526020604081850152818551808452606086019150828701935060005b81811015612b3b5784516001600160a01b031683529383019391830191600101612b16565b5090979650505050505050565b8082028115828204841417612a0657612a066129dd565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600060208284031215612bbc57600080fd5b8151801515811461273057600080fd5b60005b83811015612be7578181015183820152602001612bcf565b50506000910152565b60008251612c02818460208701612bcc565b9190910192915050565b6020815260008251806020840152612c2b816040850160208701612bcc565b601f01601f1916919091016040019291505056fea2646970667358221220395313fb7f209fe6bc95d962aaa3f539dd4720d804762db895c44d21e875b6c164736f6c63430008120033