0 txs
0 calls
constructor
No constructor.
functions
getActivatedNFTLoanOffers
viewfunction getActivatedNFTLoanOffers(uint256 _loanId) view returns (tuple)
getLoanOfferNFT
viewfunction getLoanOfferNFT(uint256 _loanId) view returns (tuple)
activateNFTLoan
nonpayablefunction activateNFTLoan(uint256 _nftloanId)
createLoanNft
nonpayablefunction createLoanNft(tuple loanDetailsNFT)
liquidateBorrowerNFT
nonpayablefunction liquidateBorrowerNFT(uint256 _loanId)
nftLoanCancelBulk
nonpayablefunction nftLoanCancelBulk(uint256[] _loanIds)
nftloanOfferCancel
nonpayablefunction nftloanOfferCancel(uint256 _nftloanId)
nftLoanPaybackBeforeTermEnd
nonpayablefunction nftLoanPaybackBeforeTermEnd(uint256 _nftLoanId)
onERC721Received
nonpayablefunction onERC721Received(address, address, uint256, bytes) returns (bytes4)
updateNftLoan
nonpayablefunction updateNftLoan(uint256 _nftloanIdAdjusted, uint256 _newLoanAmountBorrowed, uint256 _newTermsLengthInDays, uint32 _newAPYOffer, bool _isInsured)
events
No events.
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b50613a9f806100206000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c806393a6461f1161006657806393a6461f146101a457806393d1d318146101b7578063a77b0418146101ca578063bb16cf38146101dd578063c399bb2f146101fd57600080fd5b8063150b7a02146100a357806333578115146100d457806369cb4403146101695780636cc7d6b61461017e578063766bb70d14610191575b600080fd5b6100b66100b1366004612f50565b610210565b6040516001600160e01b031990911681526020015b60405180910390f35b6101456100e2366004613014565b604080518082018252600080825260209182018190529283527f44fad6a3077d967f592f5890986a1c7e89eb67704a2f0b8954457a590036e179815291819020815180830190925280546001600160a01b03168252600101549181019190915290565b6040805182516001600160a01b0316815260209283015192810192909252016100cb565b61017c6101773660046130bc565b610221565b005b61017c61018c366004613014565b61049d565b61017c61019f36600461311e565b6109e1565b61017c6101b2366004613014565b611085565b61017c6101c5366004613014565b61179f565b61017c6101d83660046131e5565b61191f565b6101f06101eb366004613014565b6120ce565b6040516100cb91906133a6565b61017c61020b366004613014565b6122f1565b630a85bd0160e11b5b949350505050565b3360008181527f5ef7c3ea0ba0c99d287ea9c77cd249ce525e87a93b496ebfa18512bf671041af602081905260409091205460ff166102985760405162461bcd60e51b815260206004820152600e60248201526d3737ba103634b8bab4b230ba37b960911b60448201526064015b60405180910390fd5b8251600080516020613a2a8339815191529060005b818110156104955760018360040160008884815181106102cf576102cf6134c1565b6020026020010151815260200190815260200160002060040160049054906101000a900460ff1660048111156103075761030761336c565b146103545760405162461bcd60e51b815260206004820152601a60248201527f474c4d2c204c6f616e2063616e6e6f742062652063616e63656c000000000000604482015260640161028f565b600383600401600088848151811061036e5761036e6134c1565b6020026020010151815260200190815260200160002060040160046101000a81548160ff021916908360048111156103a8576103a861336c565b02179055507fd0df7dbeb32f761ccf220dacee10f77576456bf18218d8ddcc7d24d4dfd635fe8682815181106103e0576103e06134c1565b6020026020010151846004016000898581518110610400576104006134c1565b6020026020010151815260200190815260200160002060060160019054906101000a90046001600160a01b03168560040160008a8681518110610445576104456134c1565b6020026020010151815260200190815260200160002060040160049054906101000a900460ff1660405161047b939291906134d7565b60405180910390a18061048d81613510565b9150506102ad565b505050505050565b3360008181527f5ef7c3ea0ba0c99d287ea9c77cd249ce525e87a93b496ebfa18512bf671041af602081905260409091205460ff1661050f5760405162461bcd60e51b815260206004820152600e60248201526d3737ba103634b8bab4b230ba37b960911b604482015260640161028f565b6000838152600080516020613a4a833981519152602090815260408083208151815493840281016101c09081019093526101a08101848152600080516020613a2a833981519152959491938492849184018282801561059757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610579575b50505050508152602001600182018054806020026020016040519081016040528092919081815260200182805480156105ef57602002820191906000526020600020905b8154815260200190600101908083116105db575b505050505081526020016002820180548060200260200160405190810160405280929190818152602001828054801561064757602002820191906000526020600020905b815481526020019060010190808311610633575b50505091835250506003820154602082015260048083015463ffffffff81166040840152606090920191600160201b900460ff169081111561068b5761068b61336c565b600481111561069c5761069c61336c565b815260058201546020820152600682015460ff808216151560408401526001600160a01b03610100909204821660608401526007840154918216608084015260a090920191600160a01b9091041660038111156106fb576106fb61336c565b600381111561070c5761070c61336c565b815260088201546020808301919091526009909201546040918201526000888152600586018352818120825180840190935280546001600160a01b0316835260010154928201929092529192508260a00151600481111561076f5761076f61336c565b146107bc5760405162461bcd60e51b815260206004820152601a60248201527f474c4d2c206c6f616e2073686f756c6420626520416374697665000000000000604482015260640161028f565b60008160200151426107ce919061352b565b905060006107df6201518083613542565b905060006108008560600151866080015163ffffffff168760c00151612879565b9050600061081d8660600151876080015163ffffffff1685612879565b90508181111561082a5750805b8560c0015183101561088a5760405162461bcd60e51b815260206004820152602360248201527f474e4d3a204c6f616e206e6f7420726561647920666f72206c6971756964617460448201526234b7b760e91b606482015260840161028f565b60008a8152600488810160209081526040808420909201805464ff00000000191664040000000017905560058a0190529020546101208701516108da916001600160a01b039182169116836128b4565b85515160005b818110156109995787518051829081106108fc576108fc6134c1565b60200260200101516001600160a01b03166342842e0e3089600001518b60200151858151811061092e5761092e6134c1565b60200260200101516040518463ffffffff1660e01b815260040161095493929190613564565b600060405180830381600087803b15801561096e57600080fd5b505af1158015610982573d6000803e3d6000fd5b50505050808061099190613510565b9150506108e0565b507f0e20024060f4ca9481b1c9721140a4fae4c520c10944886eebe0c2eda6c500ae8b60046040516109cc929190613588565b60405180910390a15050505050505050505050565b6109e961291c565b6000858152600080516020613a4a83398151915260205260409020600480820154600080516020613a2a8339815191529291600191600160201b900460ff1690811115610a3857610a3861336c565b14610a855760405162461bcd60e51b815260206004820152601e60248201527f6c6f616e207374617475732068617320746f20626520696e6163746976650000604482015260640161028f565b60068101546001600160a01b03610100909104163314610adc5760405162461bcd60e51b81526020600482015260126024820152713137b93937bbb2b9103737ba1037bbb732b960711b604482015260640161028f565b60078101546040805163313ce56760e01b815290516000926001600160a01b03169163313ce5679160048083019260209291908290030181865afa158015610b28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4c919061359c565b60ff169050610b5c81600a6136a3565b306001600160a01b0316638a66828c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b9a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bbe91906136af565b610bc891906136c8565b871015610c175760405162461bcd60e51b815260206004820152601760248201527f6d696e206c6f616e20616d6f756e7420696e76616c6964000000000000000000604482015260640161028f565b6000805b6002840154811015610c765760008a81526004860160205260409020600201805482908110610c4c57610c4c6134c1565b906000526020600020015482610c6291906136e7565b915080610c6e81613510565b915050610c1b565b50600030633559ae9d33600787015460405160e084901b6001600160e01b0319168152610cb892918e9188918b91600160a01b90910460ff169060040161373d565b602060405180830381865afa158015610cd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf991906136af565b90508060c814610d425760405162461bcd60e51b815260206004820152601460248201527337b33332b9103737ba103ab73232b9103a34b2b960611b604482015260640161028f565b6040805185546101c060208202830181019093526101a0820181815291928392918891840182828015610d9e57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610d80575b5050505050815260200185600101805480602002602001604051908101604052809291908181526020018280548015610df657602002820191906000526020600020905b815481526020019060010190808311610de2575b5050505050815260200185600201805480602002602001604051908101604052809291908181526020018280548015610e4e57602002820191906000526020600020905b815481526020019060010190808311610e3a575b5050509183525050602081018b905263ffffffff89166040820152606001600181526020018981526020018715158152602001610e883390565b6001600160a01b03908116825260078701549081166020830152604090910190600160a01b900460ff166003811115610ec357610ec361336c565b8152602001610ed34260146136e7565b8152600986015460209182015260008c815260048801825260409020825180519192610f0492849290910190612d83565b506020828101518051610f1d9260018501920190612de8565b5060408201518051610f39916002840191602090910190612de8565b506060820151600382015560808201516004808301805463ffffffff90931663ffffffff1984168117825560a086015193919264ffffffffff199092161790600160201b908490811115610f8f57610f8f61336c565b021790555060c0820151600582015560e0820151600682018054610100808601516001600160a81b0319928316941515610100600160a81b031916949094176001600160a01b03948516909102179091556101208401516007840180546001600160a01b031981169290941691821781556101408601519390921617600160a01b8360038111156110225761102261336c565b0217905550610160820151816008015561018082015181600901559050507f1a449e4ea97f8562e77681d027ddea53634a877f36979b8d12a24b8f16b704448a856040516110719291906138aa565b60405180910390a150505050505050505050565b61108d61291c565b6000818152600080516020613a4a833981519152602090815260408083208151815493840281016101c09081019093526101a08101848152600080516020613a2a833981519152959491938492849184018282801561111557602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116110f7575b505050505081526020016001820180548060200260200160405190810160405280929190818152602001828054801561116d57602002820191906000526020600020905b815481526020019060010190808311611159575b50505050508152602001600282018054806020026020016040519081016040528092919081815260200182805480156111c557602002820191906000526020600020905b8154815260200190600101908083116111b1575b50505091835250506003820154602082015260048083015463ffffffff81166040840152606090920191600160201b900460ff16908111156112095761120961336c565b600481111561121a5761121a61336c565b815260058201546020820152600682015460ff808216151560408401526001600160a01b03610100909204821660608401526007840154918216608084015260a090920191600160a01b9091041660038111156112795761127961336c565b600381111561128a5761128a61336c565b815260200160088201548152602001600982015481525050905080610160015142116112ef5760405162461bcd60e51b8152602060048201526014602482015273131bd85b881a5cc81d1a5b5959081b1bd8dad95960621b604482015260640161028f565b60018160a0015160048111156113075761130761336c565b146113545760405162461bcd60e51b815260206004820152601c60248201527f474c4d2c206c6f616e2073686f756c6420626520496e41637469766500000000604482015260640161028f565b6101008101516001600160a01b03163314156113b25760405162461bcd60e51b815260206004820152601c60248201527f474c4d2c206f6e6c79204c656e646572732063616e2041637469766500000000604482015260640161028f565b60008381526004838101602090815260408084208301805464ff00000000191690553384526007860182528084208054600181018255908552828520018790558051631b69fec960e31b8152905161271093309363db4ff64893808301939192908290030181865afa15801561142c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061145091906136af565b836060015161145f91906136c8565b6114699190613542565b6101208301516001600160a01b03166000908152600c8501602052604081208054929350839290919061149d9084906136e7565b90915550506040805180820190915280336001600160a01b03908116825242602092830152600087815260058701835260409020835181546001600160a01b031916921691909117815591015160019091015530633a55b55a336040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024016020604051808303816000875af115801561153d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061156191906138c3565b61165557306001600160a01b03166371d0f7686040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115c791906136af565b336000908152600f850160205260409020546115e49060016136e7565b11156116325760405162461bcd60e51b815260206004820152601f60248201527f47544d3a20796f752063616e6e6f74206c656e64206d6f7265206c6f616e7300604482015260640161028f565b336000908152600f84016020526040812080549161164f83613510565b91905055505b61166d82600001518360200151846101000151612983565b6116b05760405162461bcd60e51b815260206004820152601460248201527311d5134e88151c985b9cd9995c8811985a5b195960621b604482015260640161028f565b60006116cf8360600151846080015163ffffffff168560c00151612879565b905060006116dd83836136e7565b84606001516116ec919061352b565b905061170f3360608601516101208701516001600160a01b031691903090612a42565b611737846101000151828661012001516001600160a01b03166128b49092919063ffffffff16565b7f092fb70b767878eb3cae26c14ae3be77d156967d2d6aae1d3047e419bef68f868633838760c00151886080015189600001518a602001518b604001518c610120015160405161178f999897969594939291906138e0565b60405180910390a1505050505050565b6117a761291c565b6000818152600080516020613a4a83398151915260205260409020600490810154600080516020613a2a83398151915291600191600160201b900460ff16908111156117f5576117f561336c565b1461183a5760405162461bcd60e51b815260206004820152601560248201527411d3134b0818d85b9b9bdd0818994818d85b98d95b605a1b604482015260640161028f565b60008281526004820160205260409020600601546001600160a01b036101009091041633146118ab5760405162461bcd60e51b815260206004820152601d60248201527f474c4d2c206f6e6c7920626f72726f7765722063616e2063616e63656c000000604482015260640161028f565b6000828152600482810160205260409182902001805464030000000064ff0000000019909116179081905590517fd0df7dbeb32f761ccf220dacee10f77576456bf18218d8ddcc7d24d4dfd635fe916119139185913391600160201b90910460ff16906134d7565b60405180910390a15050565b61192761291c565b6000600080516020613a2a83398151915260e0830151604051630638474f60e51b81526001600160a01b039091166004820152909150309063c708e9e090602401602060405180830381865afa158015611985573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119a991906138c3565b6119f55760405162461bcd60e51b815260206004820152601d60248201527f474c4d3a206e6f7420617070726f76656420737461626c6520636f696e000000604482015260640161028f565b600081601101546001611a0891906136e7565b905060008360e001516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a4e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a72919061359c565b60ff169050611a8281600a6136a3565b306001600160a01b0316638a66828c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ac0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ae491906136af565b611aee91906136c8565b84606001511015611b415760405162461bcd60e51b815260206004820152601c60248201527f474c4d3a206d696e206c6f616e20616d6f756e7420696e76616c696400000000604482015260640161028f565b8351516040805163c58f501b60e01b81529051309163c58f501b9160048083019260209291908290030181865afa158015611b80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ba491906136af565b811115611bf35760405162461bcd60e51b815260206004820152601f60248201527f474c4d3a20436f6c6c61746572616c204c656e67746820457863656564656400604482015260640161028f565b6040850151516020860151518651518114911414611c4b5760405162461bcd60e51b815260206004820152601560248201527411d3134e8813195b99dd1a081b9bdd08195c5d585b605a1b604482015260640161028f565b6000805b82811015611c945786604001518181518110611c6d57611c6d6134c1565b602002602001015182611c8091906136e7565b915080611c8c81613510565b915050611c4f565b5060608601518651610100880151604051633559ae9d60e01b81526000933093633559ae9d93611ccd9333939289929091600401613964565b602060405180830381865afa158015611cea573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d0e91906136af565b90508060c814611d575760405162461bcd60e51b815260206004820152601460248201527337b33332b9103737ba103ab73232b9103a34b2b960611b604482015260640161028f565b33600090815260068701602090815260408220805460018101825590835291819020909101869055875190880151611d8f9190612a69565b611de65760405162461bcd60e51b815260206004820152602260248201527f474c4d3a206f6e65206f72206d6f7265206e667473206e6f7420617070726f76604482015261195960f21b606482015260840161028f565b604051806101a0016040528088600001518152602001886020015181526020018860400151815260200188606001518152602001886080015163ffffffff16815260200160016004811115611e3d57611e3d61336c565b815260a0890151602082015260c089015115156040820152606001336001600160a01b031681526020018860e001516001600160a01b031681526020018861010001516003811115611e9157611e9161336c565b815260200160008152602001306001600160a01b03166363e97f586040518163ffffffff1660e01b8152600401602060405180830381865afa158015611edb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eff91906136af565b905260008681526004880160209081526040909120825180519192611f2992849290910190612d83565b506020828101518051611f429260018501920190612de8565b5060408201518051611f5e916002840191602090910190612de8565b506060820151600382015560808201516004808301805463ffffffff90931663ffffffff1984168117825560a086015193919264ffffffffff199092161790600160201b908490811115611fb457611fb461336c565b021790555060c0820151600582015560e0820151600682018054610100808601516001600160a81b0319928316941515610100600160a81b031916949094176001600160a01b03948516909102179091556101208401516007840180546001600160a01b031981169290941691821781556101408601519390921617600160a01b8360038111156120475761204761336c565b021790555061016082015160088201556101809091015160099091015560008581526004870160205260409081902090517f14ff9684bf8b3367ce6ce774e58405b8b5ae7c9125f9516eeab4f5e3e6d0bfd4916120a6918891906138aa565b60405180910390a16011860180549060006120c083613510565b919050555050505050505050565b6120d6612e23565b6000828152600080516020613a4a8339815191526020908152604091829020825181546101c0938102820184019094526101a08101848152600080516020613a2a8339815191529491938492849184018282801561215d57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161213f575b50505050508152602001600182018054806020026020016040519081016040528092919081815260200182805480156121b557602002820191906000526020600020905b8154815260200190600101908083116121a1575b505050505081526020016002820180548060200260200160405190810160405280929190818152602001828054801561220d57602002820191906000526020600020905b8154815260200190600101908083116121f9575b50505091835250506003820154602082015260048083015463ffffffff81166040840152606090920191600160201b900460ff16908111156122515761225161336c565b60048111156122625761226261336c565b815260058201546020820152600682015460ff808216151560408401526001600160a01b03610100909204821660608401526007840154918216608084015260a090920191600160a01b9091041660038111156122c1576122c161336c565b60038111156122d2576122d261336c565b8152600882015460208201526009909101546040909101529392505050565b6122f961291c565b6000818152600080516020613a4a833981519152602090815260408083208151815493840281016101c09081019093526101a08101848152600080516020613a2a8339815191529533959094929392849291849184018282801561238657602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311612368575b50505050508152602001600182018054806020026020016040519081016040528092919081815260200182805480156123de57602002820191906000526020600020905b8154815260200190600101908083116123ca575b505050505081526020016002820180548060200260200160405190810160405280929190818152602001828054801561243657602002820191906000526020600020905b815481526020019060010190808311612422575b50505091835250506003820154602082015260048083015463ffffffff81166040840152606090920191600160201b900460ff169081111561247a5761247a61336c565b600481111561248b5761248b61336c565b815260058201546020820152600682015460ff808216151560408401526001600160a01b03610100909204821660608401526007840154918216608084015260a090920191600160a01b9091041660038111156124ea576124ea61336c565b60038111156124fb576124fb61336c565b8152602001600882015481526020016009820154815250509050816001600160a01b03168161010001516001600160a01b03161461257b5760405162461bcd60e51b815260206004820152601e60248201527f474c4d2c206f6e6c7920626f72726f7765722063616e207061796261636b0000604482015260640161028f565b60008160a0015160048111156125935761259361336c565b146125e05760405162461bcd60e51b815260206004820152601a60248201527f474c4d2c206c6f616e2073686f756c6420626520416374697665000000000000604482015260640161028f565b60008481526005840160205260408120600101546125fe904261352b565b9050600061260f6201518083613542565b90508260c0015181106126765760405162461bcd60e51b815260206004820152602960248201527f474c4d3a204c6f616e20616c7265616479207061796261636b6564206f72206c6044820152681a5c5d5a59185d195960ba1b606482015260840161028f565b60006126958460600151856080015163ffffffff168660c00151612879565b905060006126b28560600151866080015163ffffffff1685612879565b905060008186606001516126c691906136e7565b905060006126d4838561352b565b6101208801516001600160a01b03166000908152600c8b0160205260408120805492935083929091906127089084906136e7565b909155505060008a815260048a8101602052604090912001805464ff000000001916640200000000179055610100870151606088015161012089015161275b926001600160a01b03909116913090612a42565b60008a815260058a016020526040902054610120880151612789916001600160a01b039182169116846128b4565b86515160005b818110156128445788518051829081106127ab576127ab6134c1565b60200260200101516001600160a01b03166342842e0e308c8c6020015185815181106127d9576127d96134c1565b60200260200101516040518463ffffffff1660e01b81526004016127ff93929190613564565b600060405180830381600087803b15801561281957600080fd5b505af115801561282d573d6000803e3d6000fd5b50505050808061283c90613510565b91505061278f565b507fbac4ba48f56602b66ce35a477e70fd6e149e3286967f302766cbda24073446eb8b8a60026040516109cc939291906134d7565b600061016d6127108361288c86886136c8565b61289691906136c8565b6128a09190613542565b6128aa9190613542565b90505b9392505050565b6040516001600160a01b03831660248201526044810182905261291790849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152612b8e565b505050565b7f85f1d300b37d2205f311d98649bde4db58f700d29190cccc9ae3bd7af49ff1375460ff16156129815760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161028f565b565b6000805b8451811015612a37578481815181106129a2576129a26134c1565b60200260200101516001600160a01b03166342842e0e84308785815181106129cc576129cc6134c1565b60200260200101516040518463ffffffff1660e01b81526004016129f293929190613564565b600060405180830381600087803b158015612a0c57600080fd5b505af1158015612a20573d6000803e3d6000fd5b505050508080612a2f90613510565b915050612987565b506001949350505050565b612a63846323b872dd60e01b8585856040516024016128e093929190613564565b50505050565b8151600090815b81811015612b8157306001600160a01b0316858281518110612a9457612a946134c1565b60200260200101516001600160a01b031663081812fc868481518110612abc57612abc6134c1565b60200260200101516040518263ffffffff1660e01b8152600401612ae291815260200190565b602060405180830381865afa158015612aff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b239190613991565b6001600160a01b031614612b6f5760405162461bcd60e51b815260206004820152601360248201527223a6269d1020b8383937bb30b61022b93937b960691b604482015260640161028f565b80612b7981613510565b915050612a70565b5060019150505b92915050565b6000612be3826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316612c639092919063ffffffff16565b9050805160001480612c04575080806020019051810190612c0491906138c3565b6129175760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161028f565b60606128aa848460008585600080866001600160a01b03168587604051612c8a91906139da565b60006040518083038185875af1925050503d8060008114612cc7576040519150601f19603f3d011682016040523d82523d6000602084013e612ccc565b606091505b5091509150612cdd87838387612ce8565b979650505050505050565b60608315612d54578251612d4d576001600160a01b0385163b612d4d5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161028f565b5081610219565b6102198383815115612d695781518083602001fd5b8060405162461bcd60e51b815260040161028f91906139f6565b828054828255906000526020600020908101928215612dd8579160200282015b82811115612dd857825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190612da3565b50612de4929150612ea2565b5090565b828054828255906000526020600020908101928215612dd8579160200282015b82811115612dd8578251825591602001919060010190612e08565b604051806101a0016040528060608152602001606081526020016060815260200160008152602001600063ffffffff16815260200160006004811115612e6b57612e6b61336c565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c0820181905260e09091015290565b5b80821115612de45760008155600101612ea3565b6001600160a01b0381168114612ecc57600080fd5b50565b8035612eda81612eb7565b919050565b634e487b7160e01b600052604160045260246000fd5b604051610120810167ffffffffffffffff81118282101715612f1957612f19612edf565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612f4857612f48612edf565b604052919050565b60008060008060808587031215612f6657600080fd5b8435612f7181612eb7565b9350602085810135612f8281612eb7565b935060408601359250606086013567ffffffffffffffff80821115612fa657600080fd5b818801915088601f830112612fba57600080fd5b813581811115612fcc57612fcc612edf565b612fde601f8201601f19168501612f1f565b91508082528984828501011115612ff457600080fd5b808484018584013760008482840101525080935050505092959194509250565b60006020828403121561302657600080fd5b5035919050565b600067ffffffffffffffff82111561304757613047612edf565b5060051b60200190565b600082601f83011261306257600080fd5b813560206130776130728361302d565b612f1f565b82815260059290921b8401810191818101908684111561309657600080fd5b8286015b848110156130b1578035835291830191830161309a565b509695505050505050565b6000602082840312156130ce57600080fd5b813567ffffffffffffffff8111156130e557600080fd5b61021984828501613051565b803563ffffffff81168114612eda57600080fd5b8015158114612ecc57600080fd5b8035612eda81613105565b600080600080600060a0868803121561313657600080fd5b853594506020860135935060408601359250613154606087016130f1565b9150608086013561316481613105565b809150509295509295909350565b600082601f83011261318357600080fd5b813560206131936130728361302d565b82815260059290921b840181019181810190868411156131b257600080fd5b8286015b848110156130b15780356131c981612eb7565b83529183019183016131b6565b803560048110612eda57600080fd5b6000602082840312156131f757600080fd5b813567ffffffffffffffff8082111561320f57600080fd5b90830190610120828603121561322457600080fd5b61322c612ef5565b82358281111561323b57600080fd5b61324787828601613172565b82525060208301358281111561325c57600080fd5b61326887828601613051565b60208301525060408301358281111561328057600080fd5b61328c87828601613051565b604083015250606083013560608201526132a8608084016130f1565b608082015260a083013560a08201526132c360c08401613113565b60c08201526132d460e08401612ecf565b60e082015261010091506132e98284016131d6565b91810191909152949350505050565b600081518084526020808501945080840160005b838110156133315781516001600160a01b03168752958201959082019060010161330c565b509495945050505050565b600081518084526020808501945080840160005b8381101561333157815187529582019590820190600101613350565b634e487b7160e01b600052602160045260246000fd5b600581106133925761339261336c565b9052565b600481106133925761339261336c565b60208152600082516101a08060208501526133c56101c08501836132f8565b91506020850151601f19808685030160408701526133e3848361333c565b9350604087015191508086850301606087015250613401838261333c565b92505060608501516080850152608085015161342560a086018263ffffffff169052565b5060a085015161343860c0860182613382565b5060c085015160e085015260e08501516101006134588187018315159052565b8601519050610120613474868201836001600160a01b03169052565b8601519050610140613490868201836001600160a01b03169052565b86015190506101606134a486820183613396565b860151610180868101919091529095015193019290925250919050565b634e487b7160e01b600052603260045260246000fd5b8381526001600160a01b0383166020820152606081016102196040830184613382565b634e487b7160e01b600052601160045260246000fd5b6000600019821415613524576135246134fa565b5060010190565b60008282101561353d5761353d6134fa565b500390565b60008261355f57634e487b7160e01b600052601260045260246000fd5b500490565b6001600160a01b039384168152919092166020820152604081019190915260600190565b828152604081016128ad6020830184613382565b6000602082840312156135ae57600080fd5b815160ff811681146128ad57600080fd5b600181815b808511156135fa5781600019048211156135e0576135e06134fa565b808516156135ed57918102915b93841c93908002906135c4565b509250929050565b60008261361157506001612b88565b8161361e57506000612b88565b8160018114613634576002811461363e5761365a565b6001915050612b88565b60ff84111561364f5761364f6134fa565b50506001821b612b88565b5060208310610133831016604e8410600b841016171561367d575081810a612b88565b61368783836135bf565b806000190482111561369b5761369b6134fa565b029392505050565b60006128ad8383613602565b6000602082840312156136c157600080fd5b5051919050565b60008160001904831182151516156136e2576136e26134fa565b500290565b600082198211156136fa576136fa6134fa565b500190565b6000815480845260208085019450836000528060002060005b838110156133315781546001600160a01b031687529582019560019182019101613718565b60018060a01b038616815284602082015283604082015260a06060820152600061376a60a08301856136ff565b90506137796080830184613396565b9695505050505050565b6000815480845260208085019450836000528060002060005b838110156133315781548752958201956001918201910161379c565b60006101a08084526137cc818501846136ff565b905083810360208501526137e38160018501613783565b905083810360408501526137fa8160028501613783565b60038401546060860152600484015463ffffffff8116608087015290915061382b60a0860160ff8360201c16613382565b50600583015460c0850152600683015460ff8116151560e08601526001600160a01b03600882901c811661010087015260078501546001600160a01b0382821616610120880152915050613889610140860160ff8360a01c16613396565b50600883015461016085015260098301546101808501528091505092915050565b8281526040602082015260006128aa60408301846137b8565b6000602082840312156138d557600080fd5b81516128ad81613105565b60006101208b835260018060a01b03808c1660208501528a604085015289606085015263ffffffff891660808501528160a0850152613921828501896132f8565b915083820360c0850152613935828861333c565b915083820360e0850152613949828761333c565b925080851661010085015250509a9950505050505050505050565b60018060a01b038616815284602082015283604082015260a06060820152600061376a60a08301856132f8565b6000602082840312156139a357600080fd5b81516128ad81612eb7565b60005b838110156139c95781810151838201526020016139b1565b83811115612a635750506000910152565b600082516139ec8184602087016139ae565b9190910192915050565b6020815260008251806020840152613a158160408501602087016139ae565b601f01601f1916919091016040019291505056fe44fad6a3077d967f592f5890986a1c7e89eb67704a2f0b8954457a590036e17444fad6a3077d967f592f5890986a1c7e89eb67704a2f0b8954457a590036e178a264697066735822122028034b8d1fcb0d82c307461575538138781bc4e459327ba636a8d3575bc8720564736f6c634300080a0033