0 txs
1 call
constructor
constructor(address _tellerV2, address _factory, address _WETH9)
functions
calculateRolloverAmount
viewfunction calculateRolloverAmount(uint16 marketFeePct, uint16 protocolFeePct, uint256 _loanId, uint256 principalAmount, uint256 _rewardAmount, uint16 _flashloanFeePct, uint256 _timestamp) view returns (uint256 _flashAmount, int256 _borrowerAmount)
factory
viewfunction factory() view returns (address)
getMarketFeePct
viewfunction getMarketFeePct(uint256 _marketId) view returns (uint16)
getMarketIdForCommitment
viewfunction getMarketIdForCommitment(address _lenderCommitmentForwarder, uint256 _commitmentId) view returns (uint256)
getUniswapPoolAddress
viewfunction getUniswapPoolAddress(address token0, address token1, uint24 fee) view returns (address)
TELLER_V2
viewfunction TELLER_V2() view returns (address)
WETH9
viewfunction WETH9() view returns (address)
refundETH
payablefunction refundETH() payable
rolloverLoanWithFlashSwap
nonpayablefunction rolloverLoanWithFlashSwap(address _lenderCommitmentForwarder, uint256 _loanId, uint256 _borrowerAmount, tuple _flashSwapArgs, tuple _acceptCommitmentArgs)
rolloverLoanWithFlashSwapRewards
nonpayablefunction rolloverLoanWithFlashSwapRewards(address _lenderCommitmentForwarder, uint256 _loanId, uint256 _borrowerAmount, uint256 _rewardAmount, address _rewardRecipient, uint256 _atmId, tuple _flashSwapArgs, tuple _acceptCommitmentArgs)
sweepToken
payablefunction sweepToken(address token, uint256 amountMinimum, address recipient) payable
uniswapV3FlashCallback
nonpayablefunction uniswapV3FlashCallback(uint256 fee0, uint256 fee1, bytes data)
unwrapWETH9
payablefunction unwrapWETH9(uint256 amountMinimum, address recipient) payable
events
RolloverLoanComplete
event RolloverLoanComplete(address borrower, uint256 originalLoanId, uint256 newLoanId, uint256 fundsRemaining)
RolloverWithReferral
event RolloverWithReferral(uint256 newLoanId, address flashToken, address rewardRecipient, uint256 rewardAmount, uint256 atmId)
errors
No errors.
creation bytecode
0x60e06040523480156200001157600080fd5b5060405162002da138038062002da183398101604081905262000034916200006e565b6001600160a01b03918216608052811660a0521660c052620000b8565b80516001600160a01b03811681146200006957600080fd5b919050565b6000806000606084860312156200008457600080fd5b6200008f8462000051565b92506200009f6020850162000051565b9150620000af6040850162000051565b90509250925092565b60805160a05160c051612c4a6200015760003960008181610241015281816103510152818161042a015281816106940152818161092701528181610a00015281816111af0152818161157a015261161101526000818160d6015281816101f5015281816107b20152818161088801528181611a9c01528181611ae20152611b770152600081816102c301528181610c8e01526114690152612c4a6000f3fe6080604052600436106100c65760003560e01c80636051f2101161007f578063c45a015511610059578063c45a0155146102b1578063cdafbdb0146102e5578063df2ab5bb14610305578063e9cbafb01461031857600080fd5b80636051f2101461022f5780638d0de50f14610263578063997a6d861461029157600080fd5b80630f29fee21461013b57806312210e8a1461015b57806315f922cf146101635780631a7c762b1461019b57806349404b7c146101d05780634aa4a4fc146101e357600080fd5b3661013657336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146101345760405162461bcd60e51b81526020600482015260096024820152684e6f7420574554483960b81b60448201526064015b60405180910390fd5b005b600080fd5b34801561014757600080fd5b50610134610156366004611e3b565b610338565b610134610645565b34801561016f57600080fd5b5061018361017e366004611eb2565b610657565b60405161ffff90911681526020015b60405180910390f35b3480156101a757600080fd5b506101bb6101b6366004611ee6565b610668565b60408051928352602083019190915201610192565b6101346101de366004611f58565b61079a565b3480156101ef57600080fd5b506102177f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610192565b34801561023b57600080fd5b506102177f000000000000000000000000000000000000000000000000000000000000000081565b34801561026f57600080fd5b5061028361027e366004611f88565b6108fb565b604051908152602001610192565b34801561029d57600080fd5b506101346102ac366004611fb4565b61090e565b3480156102bd57600080fd5b506102177f000000000000000000000000000000000000000000000000000000000000000081565b3480156102f157600080fd5b50610217610300366004612061565b610c59565b6101346103133660046120ac565b610d03565b34801561032457600080fd5b506101346103333660046120e3565b610dcc565b604051633ef0a2f760e01b8152600481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690633ef0a2f790602401602060405180830381865afa1580156103a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c4919061216e565b90506001600160a01b03811633146104115760405162461bcd60e51b815260206004820152601060248201526f26bab9ba103132903137b93937bbb2b960811b604482015260640161012b565b604051631457303360e01b8152600481018690526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631457303390602401602060405180830381865afa158015610479573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061049d919061216e565b905084156104b1576104b181833088610ffd565b506104e26104c2602085018561218b565b6104d2604086016020870161218b565b61030060608701604088016121a8565b6001600160a01b031663490e6cbc3061050160a08701608088016121d3565b61050f578560600135610512565b60005b61052260a08801608089016121d3565b61052d576000610533565b86606001355b6040518061012001604052808c6001600160a01b031681526020018b8152602001876001600160a01b031681526020018a81526020016000815260200160006001600160a01b0316815260200160008152602001886040516020016105989190612293565b6040516020818303038152906040528152602001896040516020016105bd919061235c565b60408051601f198184030181529181529152516105dd9190602001612424565b6040516020818303038152906040526040518563ffffffff1660e01b815260040161060b94939291906124d8565b600060405180830381600087803b15801561062557600080fd5b505af1158015610639573d6000803e3d6000fd5b50505050505050505050565b4715610655576106553347611107565b565b6000610662826111aa565b92915050565b604051631042b85f60e01b81526004810186905260248101829052600090819081906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631042b85f906044016040805180830381865afa1580156106da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106fe9190612576565b905086600061070d828d61129b565b9050600061071b838d61129b565b905060008161072a84866125db565b61073491906125db565b905060008560200151866000015161074c91906125f2565b975087905060006107638261ffff8d1660046112a9565b90508b81610771848661260a565b61077b919061260a565b610785919061260a565b97505050505050505097509795505050505050565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015610801573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108259190612649565b90508281101561086c5760405162461bcd60e51b8152602060048201526012602482015271496e73756666696369656e7420574554483960701b604482015260640161012b565b80156108f657604051632e1a7d4d60e01b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632e1a7d4d90602401600060405180830381600087803b1580156108d457600080fd5b505af11580156108e8573d6000803e3d6000fd5b505050506108f68282611107565b505050565b600061090783836112c8565b9392505050565b604051633ef0a2f760e01b8152600481018890526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690633ef0a2f790602401602060405180830381865afa158015610976573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099a919061216e565b90506001600160a01b03811633146109e75760405162461bcd60e51b815260206004820152601060248201526f26bab9ba103132903137b93937bbb2b960811b604482015260640161012b565b604051631457303360e01b8152600481018990526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631457303390602401602060405180830381865afa158015610a4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a73919061216e565b9050610a84600a6060860135612662565b871115610ad35760405162461bcd60e51b815260206004820152601760248201527f4578636573736976652072657761726420616d6f756e74000000000000000000604482015260640161012b565b8715610ae557610ae58183308b610ffd565b50610af66104c2602085018561218b565b6001600160a01b031663490e6cbc30610b1560a08701608088016121d3565b610b23578560600135610b26565b60005b610b3660a08801608089016121d3565b610b41576000610b47565b86606001355b6040518061012001604052808f6001600160a01b031681526020018e8152602001876001600160a01b031681526020018d81526020018a81526020018b6001600160a01b031681526020018c815260200188604051602001610ba99190612293565b604051602081830303815290604052815260200189604051602001610bce919061235c565b60408051601f19818403018152918152915251610bee9190602001612424565b6040516020818303038152906040526040518563ffffffff1660e01b8152600401610c1c94939291906124d8565b600060405180830381600087803b158015610c3657600080fd5b505af1158015610c4a573d6000803e3d6000fd5b50505050505050505050505050565b604051630b4c774160e11b81526001600160a01b038481166004830152838116602483015262ffffff831660448301526000917f000000000000000000000000000000000000000000000000000000000000000090911690631698ee8290606401602060405180830381865afa158015610cd7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cfb919061216e565b949350505050565b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a0823190602401602060405180830381865afa158015610d4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d6e9190612649565b905082811015610db55760405162461bcd60e51b815260206004820152601260248201527124b739bab33334b1b4b2b73a103a37b5b2b760711b604482015260640161012b565b8015610dc657610dc6848383611334565b50505050565b6000610dda828401846126f4565b905060008160e00151806020019051810190610df69190612870565b90506000826101000151806020019051810190610e13919061293d565b9050610e2d81600001518260200151836040015133611434565b60008160800151610e3f578151610e45565b81602001515b905060008260800151610e585788610e5a565b875b90506000610e7186602001518486606001516114f6565b9050600080610e8a88600001518960400151878a6116f6565b915091506000610e9e876060015186611a7f565b90508015610eb257610eb286303384611a9a565b600081858b60600151858b60600151610ecb91906125f2565b610ed591906125f2565b610edf91906125db565b610ee991906125db565b90508015610f945760c08a015115610f855760c08a0151610f0a90826125db565b9050610f1f878b60a001518c60c00151611334565b60a08a81015160c08c01516080808e0151604080518a81526001600160a01b03808f1660208301529095169085015260608401929092528201527f75f1a5a575d3646e05973fd2ee5bbdaf258b7c41d992d798fd52dd57921c8b94910160405180910390a15b610f94878b6040015183611334565b6040808b01516020808d015183516001600160a01b03909316835290820152908101859052606081018290527f7fc6c3a5d0857fbad5d5ecc01d80b34b34b792a1c269283eaff02bcd0c7535fb9060800160405180910390a15050505050505050505050505050565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b179052915160009283929088169161106191906129cc565b6000604051808303816000865af19150503d806000811461109e576040519150601f19603f3d011682016040523d82523d6000602084013e6110a3565b606091505b50915091508180156110cd5750805115806110cd5750808060200190518101906110cd91906129e8565b6110ff5760405162461bcd60e51b815260206004820152600360248201526229aa2360e91b604482015260640161012b565b505050505050565b604080516000808252602082019092526001600160a01b03841690839060405161113191906129cc565b60006040518083038185875af1925050503d806000811461116e576040519150601f19603f3d011682016040523d82523d6000602084013e611173565b606091505b50509050806108f65760405162461bcd60e51b815260206004820152600360248201526253544560e81b604482015260640161012b565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ecb96fe66040518163ffffffff1660e01b8152600401602060405180830381865afa15801561120b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061122f919061216e565b60405163028ba63960e21b8152600481018590529091506001600160a01b03821690630a2e98e490602401602060405180830381865afa158015611277573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109079190612a05565b6000610907838361ffff1660025b60006112b482611c1b565b6112be8486612a22565b610cfb9190612662565b6040516331a1afb960e01b8152600481018290526000906001600160a01b038416906331a1afb990602401602060405180830381865afa158015611310573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109079190612649565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b179052915160009283929087169161139091906129cc565b6000604051808303816000865af19150503d80600081146113cd576040519150601f19603f3d011682016040523d82523d6000602084013e6113d2565b606091505b50915091508180156113fc5750805115806113fc5750808060200190518101906113fc91906129e8565b61142d5760405162461bcd60e51b815260206004820152600260248201526114d560f21b604482015260640161012b565b5050505050565b604051630b4c774160e11b81526001600160a01b038581166004830152848116602483015262ffffff841660448301526000917f000000000000000000000000000000000000000000000000000000000000000090911690631698ee8290606401602060405180830381865afa1580156114b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d6919061216e565b9050806001600160a01b0316826001600160a01b03161461142d57600080fd5b6040516370a0823160e01b815230600482015260009081906001600160a01b038516906370a0823190602401602060405180830381865afa15801561153f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115639190612649565b60405163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018690529192509085169063095ea7b3906044016020604051808303816000875af11580156115d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115fa91906129e8565b50604051639a11e33960e01b8152600481018690527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690639a11e33990602401600060405180830381600087803b15801561165d57600080fd5b505af1158015611671573d6000803e3d6000fd5b50506040516370a0823160e01b8152306004820152600092506001600160a01b03871691506370a0823190602401602060405180830381865afa1580156116bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e09190612649565b90506116ec81836125db565b9695505050505050565b6040516370a0823160e01b8152306004820152600090819081906001600160a01b038616906370a0823190602401602060405180830381865afa158015611741573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117659190612649565b60208501519091506001600160a01b0316156118815760208401516040808601516060870151608088015160a089015160c08a015160e08b015195516001600160a01b0397881660248201526044810195909552606485019390935260848401919091529390931660a48201523060c482015261ffff90921660e483015263ffffffff1661010482015260009061186390633425aa5760e11b906101240160408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b03199095169490941790935251611843928b9101612a41565b60408051601f198184030181529190526001600160a01b038a1690611c33565b9050808060200190518101906118799190612649565b9350506119fb565b610100840151511580159061195d57600061193f63e767e97360e01b8760000151886040015189606001518a608001518b60a00151308d60c001518e60e001518f61010001516040516024016118df99989796959493929190612a78565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b0319909516949094179093525161191f928c9101612a41565b60408051601f198184030181529190526001600160a01b038b1690611c33565b9050808060200190518101906119559190612649565b9450506119f9565b84516040808701516060880151608089015160a08a015160c08b015160e08c0151955160248101979097526044870194909452606486019290925260848501526001600160a01b031660a48401523060c484015261ffff1660e483015263ffffffff166101048201526000906119df90634bfc440160e01b90610124016118df565b9050808060200190518101906119f59190612649565b9450505b505b6040516370a0823160e01b81523060048201526000906001600160a01b038716906370a0823190602401602060405180830381865afa158015611a42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a669190612649565b9050611a7282826125db565b9250505094509492505050565b600082611a8c83826125f2565b915081101561066257600080fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316148015611adb5750804710155b15611bee577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0826040518263ffffffff1660e01b81526004016000604051808303818588803b158015611b3b57600080fd5b505af1158015611b4f573d6000803e3d6000fd5b505060405163a9059cbb60e01b81526001600160a01b038681166004830152602482018690527f000000000000000000000000000000000000000000000000000000000000000016935063a9059cbb925060440190506020604051808303816000875af1158015611bc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611be891906129e8565b50610dc6565b6001600160a01b038316301415611c0f57611c0a848383611334565b610dc6565b610dc684848484610ffd565b6000611c2882600a612bf5565b610662906064612a22565b6060610907838360006040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250606082471015611cd35760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161012b565b600080866001600160a01b03168587604051611cef91906129cc565b60006040518083038185875af1925050503d8060008114611d2c576040519150601f19603f3d011682016040523d82523d6000602084013e611d31565b606091505b5091509150611d4287838387611d4d565b979650505050505050565b60608315611db9578251611db2576001600160a01b0385163b611db25760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161012b565b5081610cfb565b610cfb8383815115611dce5781518083602001fd5b8060405162461bcd60e51b815260040161012b9190612c01565b6001600160a01b0381168114611dfd57600080fd5b50565b8035611e0b81611de8565b919050565b600060a08284031215611e2257600080fd5b50919050565b60006101208284031215611e2257600080fd5b60008060008060006101208688031215611e5457600080fd5b8535611e5f81611de8565b94506020860135935060408601359250611e7c8760608801611e10565b915061010086013567ffffffffffffffff811115611e9957600080fd5b611ea588828901611e28565b9150509295509295909350565b600060208284031215611ec457600080fd5b5035919050565b61ffff81168114611dfd57600080fd5b8035611e0b81611ecb565b600080600080600080600060e0888a031215611f0157600080fd5b8735611f0c81611ecb565b96506020880135611f1c81611ecb565b955060408801359450606088013593506080880135925060a0880135611f4181611ecb565b8092505060c0880135905092959891949750929550565b60008060408385031215611f6b57600080fd5b823591506020830135611f7d81611de8565b809150509250929050565b60008060408385031215611f9b57600080fd5b8235611fa681611de8565b946020939093013593505050565b600080600080600080600080610180898b031215611fd157600080fd5b8835611fdc81611de8565b9750602089013596506040890135955060608901359450608089013561200181611de8565b935060a089013592506120178a60c08b01611e10565b915061016089013567ffffffffffffffff81111561203457600080fd5b6120408b828c01611e28565b9150509295985092959890939650565b62ffffff81168114611dfd57600080fd5b60008060006060848603121561207657600080fd5b833561208181611de8565b9250602084013561209181611de8565b915060408401356120a181612050565b809150509250925092565b6000806000606084860312156120c157600080fd5b83356120cc81611de8565b92506020840135915060408401356120a181611de8565b600080600080606085870312156120f957600080fd5b8435935060208501359250604085013567ffffffffffffffff8082111561211f57600080fd5b818701915087601f83011261213357600080fd5b81358181111561214257600080fd5b88602082850101111561215457600080fd5b95989497505060200194505050565b8051611e0b81611de8565b60006020828403121561218057600080fd5b815161090781611de8565b60006020828403121561219d57600080fd5b813561090781611de8565b6000602082840312156121ba57600080fd5b813561090781612050565b8015158114611dfd57600080fd5b6000602082840312156121e557600080fd5b8135610907816121c5565b63ffffffff81168114611dfd57600080fd5b8035611e0b816121f0565b6000808335601e1984360301811261222457600080fd5b830160208101925035905067ffffffffffffffff81111561224457600080fd5b8060051b360383131561225657600080fd5b9250929050565b81835260006001600160fb1b0383111561227657600080fd5b8260051b8083602087013760009401602001938452509192915050565b602081528135602082015260006122ac60208401611e00565b6001600160a01b0381166040840152506040830135606083015260608301356080830152608083013560a08301526122e660a08401611e00565b6001600160a01b03811660c08401525061230260c08401611edb565b61ffff811660e08401525061231960e08401612202565b61010061232d8185018363ffffffff169052565b6123398186018661220d565b61012086810152925090506123536101408501838361225d565b95945050505050565b60a08101823561236b81611de8565b6001600160a01b03908116835260208401359061238782611de8565b166020830152604083013561239b81612050565b62ffffff1660408301526060838101359083015260808301356123bd816121c5565b80151560808401525092915050565b60005b838110156123e75781810151838201526020016123cf565b83811115610dc65750506000910152565b600081518084526124108160208601602086016123cc565b601f01601f19169290920160200192915050565b6020815261243e6020820183516001600160a01b03169052565b602082015160408201526000604083015161246460608401826001600160a01b03169052565b5060608301516080830152608083015160a083015260a083015161249360c08401826001600160a01b03169052565b5060c083015160e083015260e083015161012061010081818601526124bc6101408601846123f8565b90860151858203601f1901838701529092506116ec83826123f8565b60018060a01b03851681528360208201528260408201526080606082015260006116ec60808301846123f8565b634e487b7160e01b600052604160045260246000fd5b604051610120810167ffffffffffffffff8111828210171561253f5761253f612505565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171561256e5761256e612505565b604052919050565b60006040828403121561258857600080fd5b6040516040810181811067ffffffffffffffff821117156125ab576125ab612505565b604052825181526020928301519281019290925250919050565b634e487b7160e01b600052601160045260246000fd5b6000828210156125ed576125ed6125c5565b500390565b60008219821115612605576126056125c5565b500190565b60008083128015600160ff1b850184121615612628576126286125c5565b6001600160ff1b0384018313811615612643576126436125c5565b50500390565b60006020828403121561265b57600080fd5b5051919050565b60008261267f57634e487b7160e01b600052601260045260246000fd5b500490565b600082601f83011261269557600080fd5b813567ffffffffffffffff8111156126af576126af612505565b6126c2601f8201601f1916602001612545565b8181528460208386010111156126d757600080fd5b816020850160208301376000918101602001919091529392505050565b60006020828403121561270657600080fd5b813567ffffffffffffffff8082111561271e57600080fd5b90830190610120828603121561273357600080fd5b61273b61251b565b61274483611e00565b81526020830135602082015261275c60408401611e00565b6040820152606083013560608201526080830135608082015261278160a08401611e00565b60a082015260c083013560c082015260e0830135828111156127a257600080fd5b6127ae87828601612684565b60e08301525061010080840135838111156127c857600080fd5b6127d488828701612684565b918301919091525095945050505050565b8051611e0b81611ecb565b8051611e0b816121f0565b600082601f83011261280c57600080fd5b8151602067ffffffffffffffff82111561282857612828612505565b8160051b612837828201612545565b928352848101820192828101908785111561285157600080fd5b83870192505b84831015611d4257825182529183019190830190612857565b60006020828403121561288257600080fd5b815167ffffffffffffffff8082111561289a57600080fd5b9083019061012082860312156128af57600080fd5b6128b761251b565b825181526128c760208401612163565b60208201526040830151604082015260608301516060820152608083015160808201526128f660a08401612163565b60a082015261290760c084016127e5565b60c082015261291860e084016127f0565b60e0820152610100808401518381111561293157600080fd5b6127d4888287016127fb565b600060a0828403121561294f57600080fd5b60405160a0810181811067ffffffffffffffff8211171561297257612972612505565b604052825161298081611de8565b8152602083015161299081611de8565b602082015260408301516129a381612050565b60408201526060838101519082015260808301516129c0816121c5565b60808201529392505050565b600082516129de8184602087016123cc565b9190910192915050565b6000602082840312156129fa57600080fd5b8151610907816121c5565b600060208284031215612a1757600080fd5b815161090781611ecb565b6000816000190483118215151615612a3c57612a3c6125c5565b500290565b60008351612a538184602088016123cc565b60609390931b6bffffffffffffffffffffffff19169190920190815260140192915050565b89815260208082018a905260408201899052606082018890526001600160a01b038781166080840152861660a083015261ffff851660c083015263ffffffff841660e0830152610120610100830181905283519083018190526000916101408401918582019190845b81811015612afd57835185529382019392820192600101612ae1565b50929e9d5050505050505050505050505050565b600181815b80851115612b4c578160001904821115612b3257612b326125c5565b80851615612b3f57918102915b93841c9390800290612b16565b509250929050565b600082612b6357506001610662565b81612b7057506000610662565b8160018114612b865760028114612b9057612bac565b6001915050610662565b60ff841115612ba157612ba16125c5565b50506001821b610662565b5060208310610133831016604e8410600b8410161715612bcf575081810a610662565b612bd98383612b11565b8060001904821115612bed57612bed6125c5565b029392505050565b60006109078383612b54565b60208152600061090760208301846123f856fea2646970667358221220cad239f88c6d0248616c2e39fb3ae10fe8b14559504dfe386378c7afc0b4ee6464736f6c634300080b00330000000000000000000000007c9cdf020e476704702a5c82e52c7539d26b0a940000000000000000000000001f98431c8ad98523631ae4a59f267346ea31f9840000000000000000000000004200000000000000000000000000000000000006