0 txs
0 calls
constructor
No constructor.
functions
ADDRESS_PROVIDER
viewfunction ADDRESS_PROVIDER() view returns (address)
getDepositAmount
viewfunction getDepositAmount(uint256 _pairIndex, uint256 _lpAmount, uint256 price) view returns (uint256 depositIndexAmount, uint256 depositStableAmount)
getMintLpAmount
viewfunction getMintLpAmount(uint256 _pairIndex, uint256 _indexAmount, uint256 _stableAmount, uint256 price) view returns (uint256 mintAmount, address slipToken, uint256 slipAmount, uint256 indexFeeAmount, uint256 stableFeeAmount, uint256 afterFeeIndexAmount, uint256 afterFeeStableAmount)
getReceivedAmount
viewfunction getReceivedAmount(uint256 _pairIndex, uint256 _lpAmount, uint256 price) view returns (uint256 receiveIndexTokenAmount, uint256 receiveStableTokenAmount, uint256 feeAmount, uint256 feeIndexTokenAmount, uint256 feeStableTokenAmount)
lpFairPrice
viewfunction lpFairPrice(uint256 _pairIndex, uint256 price) view returns (uint256)
pool
viewfunction pool() view returns (address)
positionManager
viewfunction positionManager() view returns (address)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
initialize
nonpayablefunction initialize(address addressProvider)
setPool
nonpayablefunction setPool(address _pool)
setPositionManager
nonpayablefunction setPositionManager(address _positionManager)
upgradeTo
nonpayablefunction upgradeTo(address newImplementation)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
events
AdminChanged
event AdminChanged(address previousAdmin, address newAdmin)
BeaconUpgraded
event BeaconUpgraded(address indexed beacon)
Initialized
event Initialized(uint8 version)
UpdatePool
event UpdatePool(address sender, address oldAddress, address newAddress)
UpdatePositionManager
event UpdatePositionManager(address sender, address oldAddress, address newAddress)
Upgraded
event Upgraded(address indexed implementation)
errors
No errors.
creation bytecode
0x60a080604052346100315730608052612e639081610037823960805181818161048f015281816105b70152610a9d0152f35b600080fdfe604061018081526004908136101561001657600080fd5b600091823560e01c908163044e9a1b14610ddd57816316f0115b14610db45781631848effa14610d8b578163203c533d14610d655781633659cfe614610a755781634437152a146108ea5781634f1ef2861461053c57816352d1902d146104795781635760f2e3146102cc578163791b98bc146102a357816379f45a0714610233578163c4d66de8146100ee575063fb13d655146100b357600080fd5b346100ea5760a0906100cd6100c736610e07565b91612769565b939490928151958652602086015284015260608301526080820152f35b5080fd5b90503461022f57602036600319011261022f5780356001600160a01b0381169081900361022b57835460ff8160081c16159283809461021e575b8015610207575b156101ad575060ff19811660011785558261019c575b506bffffffffffffffffffffffff60a01b6065541617606555610166575080f35b60207f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989161ff001984541684555160018152a180f35b61ffff191661010117845538610145565b608490602086519162461bcd60e51b8352820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152fd5b50303b15801561012f5750600160ff83161461012f565b50600160ff831610610128565b8380fd5b8280fd5b8284346102a05760803660031901126102a0575061025f60e09260643590604435906024359035611304565b60809391929351926101405192610160519060a05196815197885260018060a01b031660208801528601526060850152608084015260a083015260c0820152f35b80fd5b5050346100ea57816003193601126100ea5760675490516001600160a01b039091168152602090f35b90503461022f576020918260031936011261022b576102e9610e26565b9260018060a01b03928082856065541685519384809262435da560e01b82525afa91821561046f579183918693899261042d575b5060249086519485938492637be53ca160e01b84523390840152165afa9182156104235786926103be575b50507f888f67ba778372c27e79bbfc2b6a7933c7f94ac44ea6110df376637c513641e4936103786103b8926110f3565b606780548583166001600160a01b03198216179091559251338152939092166001600160a01b039081166020850152909116604083015281906060820190565b0390a180f35b90809250813d831161041c575b6103d58183610e6e565b81010312610418577f888f67ba778372c27e79bbfc2b6a7933c7f94ac44ea6110df376637c513641e49361037861040e6103b8936110e6565b9250819550610348565b8480fd5b503d6103cb565b83513d88823e3d90fd5b92839194508092503d8311610468575b6104478183610e6e565b81010312610464578491602461045d85936110d2565b919061031d565b8680fd5b503d61043d565b84513d89823e3d90fd5b905082346102a057806003193601126102a057507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036104d45760208251600080516020612e0e8339815191528152f35b6020608492519162461bcd60e51b8352820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152fd5b9180915060031936011261022f57610552610e26565b9060249081359067ffffffffffffffff82116108e657366023830112156108e6578185013561058081610e90565b61058c83519182610e6e565b81815287602094858301933688828401011161022f5780888893018637830101526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116906105e530831415610eac565b610602600080516020612e0e833981519152928284541614610f0d565b888682606554168751928380926334cc866d60e21b82525afa9081156108dc579082918c916108a0575b50163303610868577f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610672575050505050505061066f9150610f6e565b80f35b87929394959697169085516352d1902d60e01b815287818b81865afa8b9181610835575b506106f457865162461bcd60e51b8152808b01899052602e818b01527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9892949897919397036107e157505061070c82610f6e565b7fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8780a2858451158015906107d9575b61074a575b50505050505080f35b806107c39684519661075b88610e3c565b602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b868901525190845af4913d156107cf573d6107b56107ac82610e90565b92519283610e6e565b81528681943d92013e610ffe565b50388080808085610741565b5060609250610ffe565b50600161073c565b845162461bcd60e51b81529182018690526029908201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608490fd5b9091508881813d8311610861575b61084d8183610e6e565b8101031261085d57519038610696565b8b80fd5b503d610843565b845162461bcd60e51b8152808a0187905260138189015272556e617574686f72697a65642061636365737360681b6044820152606490fd5b809250888092503d83116108d5575b6108b98183610e6e565b810103126108d1576108cb82916110d2565b3861062c565b8a80fd5b503d6108af565b86513d8d823e3d90fd5b8580fd5b90503461022f576020918260031936011261022b57610907610e26565b9260018060a01b03928082856065541685519384809262435da560e01b82525afa91821561046f5791839186938992610a37575b5060249086519485938492637be53ca160e01b84523390840152165afa9182156104235786926109d6575b50507f862d6af1d27b6f452f1e71f1adc92e0fce53d862faeee6a7ca92d2bfdf5fc58d936109966103b8926110f3565b606680548583166001600160a01b03198216179091559251338152939092166001600160a01b039081166020850152909116604083015281906060820190565b90809250813d8311610a30575b6109ed8183610e6e565b81010312610418577f862d6af1d27b6f452f1e71f1adc92e0fce53d862faeee6a7ca92d2bfdf5fc58d93610996610a266103b8936110e6565b9250819550610966565b503d6109e3565b92839194508092503d8311610a6e575b610a518183610e6e565b810103126104645784916024610a6785936110d2565b919061093b565b503d610a47565b9190503461022f5760208060031936011261022b57610a92610e26565b916001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116610aca30821415610eac565b610ae7600080516020612e0e833981519152918383541614610f0d565b858483606554168551928380926334cc866d60e21b82525afa908115610d5b579083918991610d1f575b50163303610ce6578251908482019282841067ffffffffffffffff851117610cd3578385528883527f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610b735750505050505061066f9150610f6e565b869293949596169085516352d1902d60e01b815287818a81865afa8a9181610ca4575b50610bf557865162461bcd60e51b8152808a01899052602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b979192939695949703610c4f5750610c0c82610f6e565b7fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8780a285845115801590610c485761074a5750505050505080f35b508061073c565b835162461bcd60e51b8152908101859052602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608490fd5b9091508881813d8311610ccc575b610cbc8183610e6e565b810103126108d157519038610b96565b503d610cb2565b634e487b7160e01b895260418852602489fd5b825162461bcd60e51b81528087018590526013602482015272556e617574686f72697a65642061636365737360681b6044820152606490fd5b809250868092503d8311610d54575b610d388183610e6e565b81010312610d5057610d4a83916110d2565b38610b11565b8780fd5b503d610d2e565b84513d8a823e3d90fd5b8284346102a05750610d7f610d7936610e07565b91612407565b82519182526020820152f35b5050346100ea57816003193601126100ea5760655490516001600160a01b039091168152602090f35b5050346100ea57816003193601126100ea5760665490516001600160a01b039091168152602090f35b8284346102a057816003193601126102a05750610e0060209260243590356120e0565b9051908152f35b6060906003190112610e2157600435906024359060443590565b600080fd5b600435906001600160a01b0382168203610e2157565b6060810190811067ffffffffffffffff821117610e5857604052565b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff821117610e5857604052565b67ffffffffffffffff8111610e5857601f01601f191660200190565b15610eb357565b60405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b15610f1457565b60405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b6163746976652070726f787960a01b6064820152608490fd5b803b15610fa357600080516020612e0e83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b919290156110605750815115611012575090565b3b1561101b5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156110735750805190602001fd5b6040519062461bcd60e51b82528160208060048301528251908160248401526000935b8285106110b9575050604492506000838284010152601f80199101168101030190fd5b8481018201518686016044015293810193859350611096565b51906001600160a01b0382168203610e2157565b51908115158203610e2157565b156110fa57565b60405162461bcd60e51b815260206004820152600d60248201526c37b7363ca837b7b620b236b4b760991b6044820152606490fd5b1561113657565b60405162461bcd60e51b8152602060048201526002602482015261069760f41b6044820152606490fd5b80916101609283910312610e215760405191820182811067ffffffffffffffff821117610e58576040528051825261119a602082016110d2565b60208301526111ab604082016110d2565b60408301526111bc606082016110d2565b60608301526111cd608082016110e6565b608083015260a081015160a083015260c081015160c083015260e081015160e083015261010080820151908301526101208082015190830152610140809101519082015290565b908160a0910312610e21576040519060a082019082821067ffffffffffffffff831117610e5857608091604052805183526020810151602084015260408101516040840152606081015160608401520151608082015290565b906305f5e10091820391821161127f57565b634e487b7160e01b600052601160045260246000fd5b601203906012821161127f57565b9190820391821161127f57565b90816020910312610e21575160ff81168103610e215790565b9190820180921161127f57565b604d811161127f57600a0a90565b81156112ee570490565b634e487b7160e01b600052601260045260246000fd5b91929083610100526000610140526000608052600060a052600093600061016052811580918192611a67575b50611a575761134083151561112f565b606654604051632f7ce47360e21b81526004810186905292906001600160a01b031661016084602481845afa9081156119c15760249460a092600061012052611a23575b5061139e600180841b03606061012051015116151561112f565b60405194858092632500ed8d60e21b82528960048301525afa9283156119c1576000936119ee575b506113f8906113ec6101208051016113df815184611c79565b60e0525161010051611c79565b60c05260e051906112a3565b6101405261140b60c051610100516112a3565b60805260018060a01b036020610120510151166040519160208360048163313ce56760e01b958682525afa9283156119c1576000936119cd575b50602060018060a01b036040610120510151169260046040518095819382525afa9182156119c157600092611990575b506114c261149f8661012051611499828960018060a01b0360208501511693612d66565b90611aae565b946114bc87610120519260018060a01b0360408501511693612c90565b90611bc8565b926114e0866101405160018060a01b03602061012051015116611aae565b906114fc60805160018060a01b03604061012051015116611bc8565b9260009460009660009861151082826112c9565b6115db575b505050505061152d9291611528916112c9565b6112a3565b9181611573575b50508061154a575b5050509060e0519060c05190565b61155a61156092611568946120e0565b90611d22565b60a0516112c9565b60a05238808061153c565b9091818111156115b8576115a96115606115a36115b19561159d611597898b6120e0565b9161126d565b90611c79565b84611d22565b60a0526112a3565b3880611534565b611560915061155a6115d19361159d61159787896120e0565b60a05260006115b1565b866115ed876115f3939a96979a6112c9565b926112c9565b926115fe84836112c9565b9261161060c061012051015185611c79565b9361161b85826112a3565b96801580611985575b6118f8575b61010051151590816118f0575b50611858575b5060a0610120510151958c156118235786156117f2578c90611670611669611664848b611d22565b611f21565b80996112e4565b968686111561172d575050505050916116906116ab926116b195946112a3565b80861015611727575084925b6116a68b85611d22565b612064565b906112a3565b9260ff6116be8886611d22565b9116601203906012821161127f576116d86116de926112d6565b906112e4565b80610160528061170f575b91611528916116ff61152d9594610140516112a3565b610140525b918193943880611515565b61012051602001516001600160a01b031698506116e9565b9261169c565b929794509299509350818111611752575b50505050505061152d929161152891611704565b60ff9598506116ab9261176d61178496959361177f936112a3565b808a10156117ec575088945b85612064565b611db3565b93166012036012811161127f5761179d6117a3916112d6565b846112e4565b8061016052806117d4575b91611528916117c361152d95946080516112a3565b60805291819394508738808061173e565b61012051604001516001600160a01b031698506117ae565b94611779565b60405162461bcd60e51b8152602060048201526009602482015268496e76616c6964206b60b81b6044820152606490fd5b60405162461bcd60e51b815260206004820152600d60248201526c496e76616c696420707269636560981b6044820152606490fd5b9a50985060009961188461186e60009287611e2f565b61187e60c061012051015161126d565b90611e2f565b806305f5e0ff1981011360011661127f5760006305f5e0ff1982011290816118d0575b506118b5575b99983861163c565b5061012051610100015199506118cb84866112a3565b6118ad565b6118e191506305f5e0ff1901612c60565b60e061012051015110386118a7565b905038611636565b60009c509a508b61191a61190c8387611e2f565b60c061012051015190611e2f565b806305f5e0ff1981011360011661127f5760006305f5e0ff198201129081611965575b5061194a575b9b9a611629565b506101205161010001519b5061196084866112a3565b611943565b61197691506305f5e0ff1901612c60565b60e0610120510151103861193d565b506101005115611624565b6119b391925060203d6020116119ba575b6119ab8183610e6e565b8101906112b0565b9038611475565b503d6119a1565b6040513d6000823e3d90fd5b6119e791935060203d6020116119ba576119ab8183610e6e565b9138611445565b6113f8919350611a159060a03d60a011611a1c575b611a0d8183610e6e565b810190611214565b92906113c6565b503d611a03565b611a46906101603d61016011611a50575b611a3e8183610e6e565b810190611160565b6101205238611384565b503d611a34565b5050505050600090600090600090565b90501538611330565b818102929160008212600160ff1b82141661127f57818405149015171561127f57565b81156112ee57600160ff1b811460001983141661127f570590565b90918215611b3e5760405163313ce56760e01b815291602090839060049082906001600160a01b03165afa80156119c15768327cb2734119d3b7a9601e1b93611b11611b0c60ff611b1794611b1c97600091611b20575b5016611295565b6112d6565b90611a70565b611a70565b0590565b611b38915060203d81116119ba576119ab8183610e6e565b38611b05565b505050600090565b928115611bbf5760405163313ce56760e01b815293602090859060049082906001600160a01b03165afa9081156119c157611b17611b1c94611bb4611b0c60ff611bad611b0c82611bba9968327cb2734119d3b7a9601e1b9d600091611b20575016611295565b9316611295565b94611a70565b611a93565b50505050600090565b908015611c175760405163313ce56760e01b815291602090839060049082906001600160a01b03165afa9182156119c157611b0c60ff611c1494611b1193600091611b20575016611295565b90565b5050600090565b8115611b3e5760405163313ce56760e01b815290602090829060049082906001600160a01b03165afa9283156119c157611c73611b0c60ff611bad611b0c82611c1499611bba98600091611b20575016611295565b92611a70565b9060001981830981830291828083109203918083039214611d15576305f5e1009082821115611cd8577facbe0e98f503f8881186e60dbb7f727bf36b7213ee9f5a78c767074b22e90e21940990828211900360f81b910360081c170290565b60405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606490fd5b50506305f5e10091500490565b9068327cb2734119d3b7a9601e1b906000198284099282810292838086109503948086039514611da65784831115611cd8578291096001821901821680920460028082600302188083028203028083028203028083028203028083028203028083028203028092029003029360018380600003040190848311900302920304170290565b505090611c1492506112e4565b9060001981830981830291828083109203918083039214611e1a5768327cb2734119d3b7a9601e1b9082821115611cd8577f7d33c22789773a07feda8b6f0930e26fa397c439f1d5cf4b2eb27d7306d2dc99940990828211900360e21b9103601e1c170290565b505068327cb2734119d3b7a9601e1b91500490565b906305f5e100906000198284099282810292838086109503948086039514611da65784831115611cd8578291096001821901821680920460028082600302188083028203028083028203028083028203028083028203028083028203028092029003029360018380600003040190848311900302920304170290565b916000198284099282810292838086109503948086039514611da65784831115611cd8578291096001821901821680920460028082600302188083028203028083028203028083028203028083028203028083028203028092029003029360018380600003040190848311900302920304170290565b801561205e57611fec816000908360801c80612052575b508060401c80612045575b508060201c80612038575b508060101c8061202b575b508060081c8061201e575b508060041c80612011575b508060021c80612004575b50600191828092811c611ffd575b1c1b611f9481856112e4565b01811c611fa181856112e4565b01811c611fae81856112e4565b01811c611fbb81856112e4565b01811c611fc881856112e4565b01811c611fd581856112e4565b01811c611fe281856112e4565b01901c80926112e4565b80821015611ff8575090565b905090565b0181611f88565b6002915091019038611f7a565b6004915091019038611f6f565b6008915091019038611f64565b6010915091019038611f59565b6020915091019038611f4e565b6040915091019038611f43565b91505060809038611f38565b50600090565b90918115611b3e57821515806120c4575b1561208d5761208782611c14946112c9565b91611eab565b60405162461bcd60e51b815260206004820152600f60248201526e496e76616c6964207265736572766560881b6044820152606490fd5b50801515612075565b8181029291811591840414171561127f57565b60665460408051632f7ce47360e21b8152600480820185905291959461016094929390926001600160a01b0392918316918681602481865afa9687156123ca576000976123a6575b505060a0906024895180948193632500ed8d60e21b8352898301525afa90811561239b5760009161237d575b5060209282848701511688518581888163313ce56760e01b958682525afa90811561235557600091612360575b5085858b8a01511692888c518095819382525afa91821561235557600092612336575b5060ff6121b284868b612d66565b91166012036012811161232157836121d860ff936121d26121df946112d6565b906120cd565b958a612c90565b91166012036012811161230c5791612201612207926121d261220c96956112d6565b92611db3565b6112c9565b93841515806122a1575b1561228b576060015186516318160ddd60e01b815293839285928391165afa9485156122815750600094612252575b505091611c149192611d22565b81813d831161227a575b6122668183610e6e565b8101031261022b57519250611c1438612245565b503d61225c565b513d6000823e3d90fd5b5068327cb2734119d3b7a9601e1b955050505050565b508383836060840151168951928380926318160ddd60e01b82525afa908115612301576000916122d4575b501515612216565b908482813d83116122fa575b6122ea8183610e6e565b810103126102a0575051386122cc565b503d6122e0565b88513d6000823e3d90fd5b601187634e487b7160e01b6000525260246000fd5b601188634e487b7160e01b6000525260246000fd5b61234e919250863d88116119ba576119ab8183610e6e565b90386121a4565b8a513d6000823e3d90fd5b6123779150863d88116119ba576119ab8183610e6e565b38612181565b612395915060a03d8111611a1c57611a0d8183610e6e565b38612154565b87513d6000823e3d90fd5b60a092975090816123c292903d10611a5057611a3e8183610e6e565b959038612128565b89513d6000823e3d90fd5b156123dc57565b60405162461bcd60e51b815260206004820152600360248201526234b83960e91b6044820152606490fd5b929190801561275d5761241b8215156123d5565b60018060a01b0390816066541690604093845192632f7ce47360e21b845260049780898601526101609560249587818881875afa9788156123ca5760009861273e575b5050606087019461247382875116151561112f565b60a083888d8c519788938492632500ed8d60e21b84528301525afa9384156123ca579188868d979695938c9560009761271e575b50602094848685019888828b51168683516124c192611aae565b960198828a51169101516124d491611bc8565b9b5116926124e1916120e0565b906124eb92611aae565b90816124f78a836112c9565b90612501916112c9565b60c08c01516125109082611c79565b908161251b916112a3565b60009a8b918484106126ea5750505090612534916112a3565b8181106126d457508190945b511692828b5180988163313ce56760e01b978882525afa9687156126c9576000976126a6575b509082915116928c8b518095819382525afa9889156122815750600098612687575b505068327cb2734119d3b7a9601e1b908181029181830414901517156126735760ff916125b4916112e4565b91166012036012811161265f5760ff916116d86125d0926112d6565b94166012036012811161264b57610120916116d86125ed926112d6565b9201948551936305f5e10094850390858211612637579061260d91611e2f565b9551840393841161262457505090611c1491611e2f565b601190634e487b7160e01b600052526000fd5b83601184634e487b7160e01b600052526000fd5b82601188634e487b7160e01b600052526000fd5b83601189634e487b7160e01b600052526000fd5b8460118a634e487b7160e01b600052526000fd5b61269e929850803d106119ba576119ab8183610e6e565b953880612588565b83929197506126c190833d85116119ba576119ab8183610e6e565b969091612566565b8b513d6000823e3d90fd5b8291959850806126e491966112a3565b97612540565b91989b5091506126fa92506112a3565b81811061270a5750819097612540565b94506127178583926112a3565b9497612540565b61273791975060a03d8111611a1c57611a0d8183610e6e565b95386124a7565b612755929850803d10611a5057611a3e8183610e6e565b95388061245e565b50509050600090600090565b90918215612b685761277c8115156123d5565b606654604051632f7ce47360e21b81526004810184905261016095909390916001600160a01b03168685602481845afa9485156119c157602497600096612b44575b5050606085015160a091906127dd906001600160a01b0316151561112f565b60405197888092632500ed8d60e21b82528560048301525afa9586156119c157600096612b24575b506020848101805160405163313ce56760e01b8082529893909291839060049082906001600160a01b03165afa9182156119c157600092612b03575b506040870190602060018060a01b03835116996004604051809c819382525afa9889156119c157600099612ad8575b505189516128c89161288c9189916001600160a01b0316611aae565b915160408b0180519096916128aa91906001600160a01b0316611bc8565b946128c28960018060a01b0360608d015116936120e0565b91611aae565b806128d385846112c9565b10612a9a57816128e882611528878b966112c9565b906129016128fa60c08c015184611c79565b80936112a3565b6000908197848411600014612a64575050509061291d916112a3565b818110612a4a575060ff91612932915b611d22565b91166012036012811161127f5760ff916116d861294e926112d6565b9616601203906012821161127f576116d8612968926112d6565b9361014081019461298561297d875189611c79565b965182611c79565b946129ca6129ac876129a68a6129a08361220788848c612b7c565b9c6112a3565b946112a3565b9960606129bf82516020840151906112a3565b9651910151906112a3565b906000938495848110612a2b575b508a83106129fe575b5050506129f892916129f2916112c9565b966112c9565b93929190565b6129f89594509061292d612a2092612a1a856129f2979e6112a3565b90612bf0565b9098918193946129e1565b95509281612a3c87612a42936112a3565b85612b7c565b9492386129d8565b61293291945091612a5e8360ff94966112a3565b94611d22565b9197509150612a7392506112a3565b818110612a88575060ff916129329194611d22565b935060ff9161292d85612932936112a3565b60405162461bcd60e51b8152602060048201526016602482015275696e73756666696369656e74206c697175696469747960501b6044820152606490fd5b6128c891995087612afa61288c9260203d6020116119ba576119ab8183610e6e565b9a925050612870565b612b1d91925060203d6020116119ba576119ab8183610e6e565b9038612841565b612b3d91965060a03d8111611a1c57611a0d8183610e6e565b9438612805565b60a09296509081612b6092903d10611a5057611a3e8183610e6e565b9490386127be565b505050600090600090600090600090600090565b9190918215611b3e57604081810151905163313ce56760e01b815293906001600160a01b03906020908690600490829085165afa9283156119c157611c1495600094612bce575b506020015116611b46565b6020919450612be990823d81116119ba576119ab8183610e6e565b9390612bc3565b8115611c175760208181015160405163313ce56760e01b815293916001600160a01b03918590600490829085165afa9283156119c157611c1494600094612c3d575b506040015116611c1e565b6040919450612c599060203d81116119ba576119ab8183610e6e565b9390612c32565b6000808212612c6d575090565b600160ff1b8214612c7c570390565b634e487b7160e01b81526011600452602490fd5b60675481516040928301519251631c8a90e760e31b815260048101919091526001600160a01b039283166024820152604481019490945260209184916064918391165afa9182156119c157600092612d33575b506000821215612d1c57604001908151612cfc82612c60565b10600090600014612d1657506116ab611c14925191612c60565b91505090565b60400151611c1491612d2d90612c60565b906112c9565b90916020823d8211612d5e575b81612d4d60209383610e6e565b810103126102a05750519038612ce3565b3d9150612d40565b6067548151602092830151604051631c8a90e760e31b815260048101929092526001600160a01b0390811660248301526044820195909552929383916064918391165afa9081156119c157600091612ddc575b506000811215612dce578151612cfc82612c60565b612d2d611c14925191612c60565b906020823d8211612e05575b81612df560209383610e6e565b810103126102a057505138612db9565b3d9150612de856fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220ad2b7ea2fc0663df24c38930ceb404ecd002b7681deb16e82bc848bfe2343da764736f6c63430008130033