diff --git a/contracts/lendingpool/LendingPool.sol b/contracts/lendingpool/LendingPool.sol index 53012be8..24021478 100644 --- a/contracts/lendingpool/LendingPool.sol +++ b/contracts/lendingpool/LendingPool.sol @@ -353,14 +353,11 @@ contract LendingPool is ReentrancyGuard, VersionedInitializable { addressesProvider.getPriceOracle() ); - //borrow passed - reserve.updateCumulativeIndexesAndTimestamp(); - - //solium-disable-next-line - reserve.lastUpdateTimestamp = uint40(block.timestamp); - + //caching the current stable borrow rate uint256 userStableRate = reserve.currentStableBorrowRate; + reserve.updateCumulativeIndexesAndTimestamp(); + if (ReserveLogic.InterestRateMode(_interestRateMode) == ReserveLogic.InterestRateMode.STABLE) { IStableDebtToken(reserve.stableDebtTokenAddress).mint(msg.sender, _amount, userStableRate); uint40 stableRateLastUpdated = IStableDebtToken(reserve.stableDebtTokenAddress) diff --git a/contracts/libraries/ReserveLogic.sol b/contracts/libraries/ReserveLogic.sol index 3645c1d9..36d61fe8 100644 --- a/contracts/libraries/ReserveLogic.sol +++ b/contracts/libraries/ReserveLogic.sol @@ -71,8 +71,14 @@ library ReserveLogic { * @return the normalized income. expressed in ray **/ function getNormalizedIncome(ReserveData storage _reserve) internal view returns (uint256) { + uint40 timestamp = _reserve.lastUpdateTimestamp; + + if(timestamp == uint40(block.timestamp)) { //if the index was updated in the same block, no need to perform any calculation + return _reserve.lastLiquidityCumulativeIndex; + } + uint256 cumulated = MathUtils - .calculateLinearInterest(_reserve.currentLiquidityRate, _reserve.lastUpdateTimestamp) + .calculateLinearInterest(_reserve.currentLiquidityRate, timestamp) .rayMul(_reserve.lastLiquidityCumulativeIndex); return cumulated; @@ -86,8 +92,15 @@ library ReserveLogic { * @return the normalized variable debt. expressed in ray **/ function getNormalizedDebt(ReserveData storage _reserve) internal view returns (uint256) { + + uint40 timestamp = _reserve.lastUpdateTimestamp; + + if(timestamp == uint40(block.timestamp)) { //if the index was updated in the same block, no need to perform any calculation + return _reserve.lastVariableBorrowCumulativeIndex; + } + uint256 cumulated = MathUtils - .calculateCompoundedInterest(_reserve.currentVariableBorrowRate, _reserve.lastUpdateTimestamp) + .calculateCompoundedInterest(_reserve.currentVariableBorrowRate, timestamp) .rayMul(_reserve.lastVariableBorrowCumulativeIndex); return cumulated; diff --git a/deployed-contracts.json b/deployed-contracts.json index 4ff3d1e7..77502e30 100644 --- a/deployed-contracts.json +++ b/deployed-contracts.json @@ -5,7 +5,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x147A4B84ff4AB1ABb753da1DC86b84D90899A021", + "address": "0xB00cC45B4a7d3e1FEE684cFc4417998A1c183e6d", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -15,7 +15,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x3672a553BDF3f9c335104943B1Ab3C59a3EF7050", + "address": "0x58F132FBB86E21545A4Bace3C19f1C05d86d7A22", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -25,7 +25,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x11df1AF606b85226Ab9a8B1FDa90395298e7494F", + "address": "0x22474D350EC2dA53D717E30b96e9a2B7628Ede5b", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -34,7 +34,7 @@ "address": "0x852e3718A320aD93Ad8692E8D663d247e4c1b400" }, "localhost": { - "address": "0x680e96F1C955007F4e03eF95e3842086f0cd7516" + "address": "0x852e3718A320aD93Ad8692E8D663d247e4c1b400" } }, "LendingPoolParametersProvider": { @@ -52,7 +52,7 @@ "address": "0xA10958a24032283FbE2D23cedf264d6eC9411CBA" }, "localhost": { - "address": "0x18B81F8cb5D303D08338134B677e70d6bc58AEaB" + "address": "0xA10958a24032283FbE2D23cedf264d6eC9411CBA" } }, "LendingPoolDataProvider": { @@ -65,7 +65,7 @@ "address": "0x2C4603396dE2F08642354A3A102760827FfFe113" }, "localhost": { - "address": "0x071720423B44c851112D8F867df5ed08339A738c" + "address": "0x2C4603396dE2F08642354A3A102760827FfFe113" } }, "PriceOracle": { @@ -74,7 +74,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x273D60904A8DBa3Ae6B20505c59902644124fF0E", + "address": "0xE4C10Db67595aF2Cb4166c8C274e0140f7E43059", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -84,7 +84,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x95e262CAb9d868799F12C2D4030483fA54415a3d", + "address": "0xEC1C93A9f6a9e18E97784c76aC52053587FcDB89", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -94,7 +94,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x292eb99ddca578F7c9Db6719B44B1a5721387Ad6", + "address": "0x7B6C3e5486D9e6959441ab554A889099eed76290", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -104,7 +104,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x5eD7553Dc8a0D541130020f9965Ea951cAC1b573", + "address": "0xD83D2773a7873ae2b5f8Fb92097e20a8C64F691E", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -114,7 +114,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x0983e14968474E44aE2Db3814DFd6c41688DDA12", + "address": "0x09d728F76D543DB1925f7d1Fd8823e4e82700F99", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -149,7 +149,7 @@ "address": "0x03A6802eF9060a8E1f0e56Bafc9C9AB1A26a1f06" }, "localhost": { - "address": "0xB220Bf2c59d990FBC0aE67F3a2723f5b5a713202" + "address": "0x03A6802eF9060a8E1f0e56Bafc9C9AB1A26a1f06" } }, "InitializableAdminUpgradeabilityProxy": { @@ -158,7 +158,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xB220Bf2c59d990FBC0aE67F3a2723f5b5a713202", + "address": "0x03A6802eF9060a8E1f0e56Bafc9C9AB1A26a1f06", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -167,7 +167,7 @@ "address": "0x9D37fB22EA7d655f12E68DABBf6B6585A00774C3" }, "localhost": { - "address": "0xc486732FA6A9e7aFBc13D2226845DC37C5ec0476" + "address": "0x9D37fB22EA7d655f12E68DABBf6B6585A00774C3" } }, "WalletBalanceProvider": { @@ -176,7 +176,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x263Db66558DDDaD8C2B0e01fd291F227a3Fe212b", + "address": "0x2005823e074313cd644035557bF4FFa0ca0Bddff", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -186,7 +186,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x3bAF7C82FcD0AA4E0eB9eB84900805F97CdB3e02", + "address": "0x7c2C195CD6D34B8F845992d380aADB2730bB9C6F", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -196,7 +196,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x0158B479b096452e929efdce37d9d36a1703E092", + "address": "0x8858eeB3DfffA017D4BCE9801D340D36Cf895CCf", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -206,7 +206,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x08054EdDc690165Ea3C83DB71c3be1f4287B66cE", + "address": "0x0078371BDeDE8aAc7DeBfFf451B74c5EDB385Af7", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -216,7 +216,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xEaC39f548f170681799f52201636f98241506b25", + "address": "0xf4e77E5Da47AC3125140c470c71cBca77B5c638c", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -226,7 +226,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x690f32e5CB1A8613f19b0eA886Dc1b861fc46581", + "address": "0xf784709d2317D872237C4bC22f867d1BAe2913AB", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -236,7 +236,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xCF6566a2CDe18a7BA1852A24E20906804D6455F6", + "address": "0x3619DbE27d7c1e7E91aA738697Ae7Bc5FC3eACA5", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -246,7 +246,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x874C1B4201E6D97e6A5E4410ca7dCB8bDFE3d257", + "address": "0x038B86d9d8FAFdd0a02ebd1A476432877b0107C8", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -256,7 +256,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x7E0F9675f10a9725245858c098d30cB763A2a040", + "address": "0x1A1FEe7EeD918BD762173e4dc5EfDB8a78C924A8", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -266,7 +266,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x0Bd4069eF735Db440F4D1D4B24c001D7B417037E", + "address": "0x500D1d6A4c7D8Ae28240b47c8FCde034D827fD5e", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -276,7 +276,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xA79F0417aA29836bBBa7D4ee06D7BaBc4930BC4f", + "address": "0xc4905364b78a742ccce7B890A89514061E47068D", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -286,7 +286,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x5559372F41261bdBf6E9067796a427D2D514bf85", + "address": "0xD6C850aeBFDC46D7F4c207e445cC0d6B0919BDBe", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -296,7 +296,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x227B215F961B75be343fE751494e300c6a300d53", + "address": "0x8B5B7a6055E54a36fF574bbE40cf2eA68d5554b3", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -306,7 +306,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x38B2C97074727B078241Dc72d57DE34dF8ECfC9C", + "address": "0xEcc0a6dbC0bb4D51E4F84A315a9e5B0438cAD4f0", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -316,7 +316,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x20e04C71b81a2C818a1a62EefBD94bbC9B302E29", + "address": "0x20Ce94F404343aD2752A2D01b43fa407db9E0D00", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -326,7 +326,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x4e8eDb229774D6d975689F7F910C889cb3Ca9c39", + "address": "0x1d80315fac6aBd3EfeEbE97dEc44461ba7556160", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -336,7 +336,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xBEd64c6Ca683EF92595Bf32C37f7f7B23cC8B417", + "address": "0x2D8553F9ddA85A9B3259F6Bf26911364B85556F5", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -346,7 +346,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x8d274866817928093002cc52aBc48c6EAb3B5Aea", + "address": "0x52d3b94181f8654db2530b0fEe1B19173f519C52", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -356,7 +356,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x10bee3F9993F918Da27360D32C552E327FC3C5E0", + "address": "0xd15468525c35BDBC1eD8F2e09A00F8a173437f2f", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -366,7 +366,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x1581aD6aaDCd767B447881E14021a7b764C67fE4", + "address": "0x7e35Eaf7e8FBd7887ad538D4A38Df5BbD073814a", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -376,7 +376,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x72579C72d3Aaa35f3DBdbDd35573daDc5f77666b", + "address": "0x5bcb88A0d20426e451332eE6C4324b0e663c50E0", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -386,7 +386,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x9F48a96f72043aE76CD0f9b035E38215396eFb5B", + "address": "0x3521eF8AaB0323004A6dD8b03CE890F4Ea3A13f5", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -396,7 +396,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xb9781A7f001aa3e2Bb056B79a3bDbeEf2BA0C344", + "address": "0x53369fd4680FfE3DfF39Fc6DDa9CfbfD43daeA2E", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -406,7 +406,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x147A4B84ff4AB1ABb753da1DC86b84D90899A021", + "address": "0xB00cC45B4a7d3e1FEE684cFc4417998A1c183e6d", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -415,7 +415,7 @@ "address": "0x850Fae11E1313e6C23Db7c2410Ec0985d9Ea325A" }, "localhost": { - "address": "0x3717c045414269985A69b5eF256bB87C77ef6C6e" + "address": "0x850Fae11E1313e6C23Db7c2410Ec0985d9Ea325A" } }, "StableDebtToken": { @@ -424,7 +424,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x58bDC18EC8Aba196F01e8488e7A87F1A5128D4B1", + "address": "0xb2B548BE73010C188C083c510d255Aed74843b05", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -434,13 +434,13 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xF835f4edBa9d08FE5E49923b8a86a7C08FB5978C", + "address": "0x5Ea694f66BD0CBd08FC7967af01b67Dcef68cC5c", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, "AToken": { "localhost": { - "address": "0x96AFa17ef7cf813BaD59f395830bE4EaB2e64BF4", + "address": "0xd4e934C2749CA8C1618659D02E7B28B074bf4df7", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "buidlerevm": { diff --git a/types/ATokenFactory.ts b/types/ATokenFactory.ts index 201530ab..ba6d55f7 100644 --- a/types/ATokenFactory.ts +++ b/types/ATokenFactory.ts @@ -895,4 +895,4 @@ const _abi = [ ]; const _bytecode = - "0x60c0604052600080553480156200001557600080fd5b506040516200300138038062003001833981810160405260808110156200003b57600080fd5b815160208301516040808501805191519395929483019291846401000000008211156200006757600080fd5b9083019060208201858111156200007d57600080fd5b82516401000000008111828201881017156200009857600080fd5b82525081516020918201929091019080838360005b83811015620000c7578181015183820152602001620000ad565b50505050905090810190601f168015620000f55780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200011957600080fd5b9083019060208201858111156200012f57600080fd5b82516401000000008111828201881017156200014a57600080fd5b82525081516020918201929091019080838360005b83811015620001795781810151838201526020016200015f565b50505050905090810190601f168015620001a75780820380516001836020036101000a031916815260200191505b50604052505082518391508290620001c79060379060208501906200020e565b508051620001dd9060389060208401906200020e565b50506039805460ff191660121790555050506001600160601b0319606092831b811660a052911b16608052620002b3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200025157805160ff191683800117855562000281565b8280016001018555821562000281579182015b828111156200028157825182559160200191906001019062000264565b506200028f92915062000293565b5090565b620002b091905b808211156200028f57600081556001016200029a565b90565b60805160601c60a05160601c612cd96200032860003980610a705280610d8a5280610ebd5280610fad5280611108528061143952806115a15280611b1f52806120405250806101c55280610a9f5280610f265280610f7152806110db52806114605280611b4e528061206f5250612cd96000f3fe6080604052600436106101bb5760003560e01c80634efecaa5116100ec578063a9059cbb1161008a578063db006a7511610064578063db006a75146107e5578063dd62ed3e1461080f578063ee9907a41461084a578063f866c3191461087d5761022f565b8063a9059cbb14610764578063c634dfaa1461079d578063d0fc81d2146107d05761022f565b806389d1a0fc116100c657806389d1a0fc146106c857806394362e8b146106dd57806395d89b4114610716578063a457c2d71461072b5761022f565b80634efecaa5146106235780635eae177c1461065c57806370a08231146106955761022f565b806323b872dd11610159578063325a9b1311610133578063325a9b131461052757806339509351146105625780633edb7cb81461059b578063445e8010146105d45761022f565b806323b872dd146103e05780633118724e14610423578063313ce567146104fc5761022f565b80630e49072d116101955780630e49072d1461033257806312c87c2d1461036557806318160ddd146103985780631d51e7cf146103ad5761022f565b806306fdde0314610234578063095ea7b3146102be5780630bd7ad3b1461030b5761022f565b3661022f576101f27f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166108c0565b61022d5760405162461bcd60e51b8152600401808060200182810382526039815260200180612a0e6039913960400191505060405180910390fd5b005b600080fd5b34801561024057600080fd5b506102496108e6565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028357818101518382015260200161026b565b50505050905090810190601f1680156102b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102ca57600080fd5b506102f7600480360360408110156102e157600080fd5b506001600160a01b03813516906020013561097d565b604080519115158252519081900360200190f35b34801561031757600080fd5b5061032061099b565b60408051918252519081900360200190f35b34801561033e57600080fd5b5061022d6004803603602081101561035557600080fd5b50356001600160a01b03166109a0565b34801561037157600080fd5b5061022d6004803603602081101561038857600080fd5b50356001600160a01b03166109ad565b3480156103a457600080fd5b50610320610a4c565b3480156103b957600080fd5b50610320600480360360208110156103d057600080fd5b50356001600160a01b0316610b50565b3480156103ec57600080fd5b506102f76004803603606081101561040357600080fd5b506001600160a01b03813581169160208101359091169060400135610b6b565b34801561042f57600080fd5b5061022d6004803603606081101561044657600080fd5b60ff823516919081019060408101602082013564010000000081111561046b57600080fd5b82018360208201111561047d57600080fd5b8035906020019184600183028401116401000000008311171561049f57600080fd5b9193909290916020810190356401000000008111156104bd57600080fd5b8201836020820111156104cf57600080fd5b803590602001918460018302840111640100000000831117156104f157600080fd5b509092509050610bf8565b34801561050857600080fd5b50610511610cbc565b6040805160ff9092168252519081900360200190f35b34801561053357600080fd5b5061022d6004803603604081101561054a57600080fd5b506001600160a01b0381358116916020013516610cc5565b34801561056e57600080fd5b506102f76004803603604081101561058557600080fd5b506001600160a01b038135169060200135610d2b565b3480156105a757600080fd5b5061022d600480360360408110156105be57600080fd5b506001600160a01b038135169060200135610d7f565b3480156105e057600080fd5b50610607600480360360208110156105f757600080fd5b50356001600160a01b0316610e92565b604080516001600160a01b039092168252519081900360200190f35b34801561062f57600080fd5b506103206004803603604081101561064657600080fd5b506001600160a01b038135169060200135610eb0565b34801561066857600080fd5b506102f76004803603604081101561067f57600080fd5b506001600160a01b038135169060200135610f59565b3480156106a157600080fd5b50610320600480360360208110156106b857600080fd5b50356001600160a01b0316611026565b3480156106d457600080fd5b506106076110d9565b3480156106e957600080fd5b5061022d6004803603604081101561070057600080fd5b506001600160a01b0381351690602001356110fd565b34801561072257600080fd5b506102496111f0565b34801561073757600080fd5b506102f76004803603604081101561074e57600080fd5b506001600160a01b038135169060200135611251565b34801561077057600080fd5b506102f76004803603604081101561078757600080fd5b506001600160a01b0381351690602001356112bf565b3480156107a957600080fd5b50610320600480360360208110156107c057600080fd5b50356001600160a01b03166112d3565b3480156107dc57600080fd5b506103206112de565b3480156107f157600080fd5b5061022d6004803603602081101561080857600080fd5b50356112e4565b34801561081b57600080fd5b506103206004803603604081101561083257600080fd5b506001600160a01b0381358116916020013516611550565b34801561085657600080fd5b506103206004803603602081101561086d57600080fd5b50356001600160a01b031661157b565b34801561088957600080fd5b5061022d600480360360608110156108a057600080fd5b506001600160a01b03813581169160208101359091169060400135611596565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee145b919050565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156109725780601f1061094757610100808354040283529160200191610972565b820191906000526020600020905b81548152906001019060200180831161095557829003601f168201915b505050505090505b90565b600061099161098a61160d565b8484611611565b5060015b92915050565b600181565b6109aa33826116fd565b50565b6001600160a01b0381163314156109f55760405162461bcd60e51b8152600401808060200182810382526025815260200180612a476025913960400191505060405180910390fd5b336000818152603d602052604080822080546001600160a01b0319166001600160a01b03861690811790915590519092917fc2d6a42a9d5273283f73009a07aacfb043f2f91173a8d9d33b504afe898db08b91a350565b600080610a576118ec565b905080610a6857600091505061097a565b610b4a610b457f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d15e00537f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610b0457600080fd5b505afa158015610b18573d6000803e3d6000fd5b505050506040513d6020811015610b2e57600080fd5b5051610b39846118f2565b9063ffffffff61190816565b611953565b91505090565b6001600160a01b03166000908152603c602052604090205490565b6000610b7884848461196c565b610bee84610b8461160d565b610be985604051806060016040528060288152602001612a8d602891396001600160a01b038a16600090815260356020526040812090610bc261160d565b6001600160a01b03168152602081019190915260400160002054919063ffffffff6119db16565b611611565b5060019392505050565b6000610c02611a72565b60015490915060ff1680610c195750610c19611a77565b80610c25575060005481115b610c605760405162461bcd60e51b815260040180806020018281038252602e815260200180612adf602e913960400191505060405180910390fd5b60015460ff16158015610c7f576001805460ff19168117905560008290555b610c8b603787876128b6565b50610c98603885856128b6565b50610ca287611a7d565b8015610cb3576001805460ff191690555b50505050505050565b60395460ff1690565b6001600160a01b038281166000908152603d6020526040902054163314610d1d5760405162461bcd60e51b815260040180806020018281038252603a815260200180612c6a603a913960400191505060405180910390fd5b610d2782826116fd565b5050565b6000610991610d3861160d565b84610be98560356000610d4961160d565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff611a9316565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610de65760405162461bcd60e51b8152600401808060200182810382526032815260200180612c136032913960400191505060405180910390fd5b6000806000610df485611aed565b93509350935050610e06858386611c1d565b610e108585611d1d565b6000610e22848663ffffffff611e2516565b610e3257610e2f86611e67565b90505b856001600160a01b03167f90e5d3d68ec162d9c7de393037a3ede04dd44f68e051bf2ace4a73c299dbc4db868584610e6a5785610e6d565b60005b60408051938452602084019290925282820152519081900360600190a2505050505050565b6001600160a01b039081166000908152603b60205260409020541690565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610f195760405162461bcd60e51b8152600401808060200182810382526032815260200180612c136032913960400191505060405180910390fd5b610f536001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016848463ffffffff611f1916565b50919050565b604080516376e9d61560e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015284811660248301526044820184905291516000927f000000000000000000000000000000000000000000000000000000000000000016916376e9d615916064808301926020929190829003018186803b158015610ff357600080fd5b505afa158015611007573d6000803e3d6000fd5b505050506040513d602081101561101d57600080fd5b50519392505050565b60008061103283611ff2565b6001600160a01b0384166000908152603c60205260409020549091508115801561105a575080155b1561106a576000925050506108e1565b6001600160a01b038481166000908152603b6020526040902054166110bb576110b2816110a6866110a1868463ffffffff611a9316565b61200d565b9063ffffffff611e2516565b925050506108e1565b6110b26110cc826110a6878561200d565b839063ffffffff611a9316565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146111645760405162461bcd60e51b8152600401808060200182810382526032815260200180612c136032913960400191505060405180910390fd5b60008061117084611aed565b9350935050506111948461118d8585611a9390919063ffffffff16565b6000611c1d565b61119e8484612115565b604080518481526020810184905280820183905290516001600160a01b038616917fbe7799898ca2d813ff902b487c1b434ab45b47edd8f38b77ad5e99aae8341b7a919081900360600190a250505050565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156109725780601f1061094757610100808354040283529160200191610972565b600061099161125e61160d565b84610be985604051806060016040528060258152602001612c45602591396035600061128861160d565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff6119db16565b60006109916112cc61160d565b848461196c565b600061099582611ff2565b60001981565b60008111611339576040805162461bcd60e51b815260206004820181905260248201527f416d6f756e7420746f2072656465656d206e6565647320746f206265203e2030604482015290519081900360640190fd5b600080600061134733611aed565b9195509350915084905060001981141561135e5750825b8381111561139d5760405162461bcd60e51b81526004018080602001828103825260328152602001806129946032913960400191505060405180910390fd5b6113a73382610f59565b6113f8576040805162461bcd60e51b815260206004820152601b60248201527f5472616e736665722063616e6e6f7420626520616c6c6f7765642e0000000000604482015290519081900360640190fd5b611403338483611c1d565b61140d3382611d1d565b600061141f858363ffffffff611e2516565b61142f5761142c33611e67565b90505b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016639895e3d87f000000000000000000000000000000000000000000000000000000000000000033856114918a8263ffffffff611e2516565b6040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001838152602001828152602001945050505050600060405180830381600087803b15801561150057600080fd5b505af1158015611514573d6000803e3d6000fd5b50505050336001600160a01b03167fbd5034ffbd47e4e72a94baa2cdb74c6fad73cb3bcdc13036b72ec8306f5a7646838684610e6a5786610e6d565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001600160a01b03166000908152603a602052604090205490565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146115fd5760405162461bcd60e51b8152600401808060200182810382526032815260200180612c136032913960400191505060405180910390fd5b611608838383612213565b505050565b3390565b6001600160a01b0383166116565760405162461bcd60e51b8152600401808060200182810382526024815260200180612bc56024913960400191505060405180910390fd5b6001600160a01b03821661169b5760405162461bcd60e51b81526004018080602001828103825260228152602001806129c66022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038083166000908152603b6020526040902054811690821681141561175a5760405162461bcd60e51b815260040180806020018281038252602a815260200180612ab5602a913960400191505060405180910390fd5b60008060008061176987611aed565b9350935093509350600083116117b05760405162461bcd60e51b8152600401808060200182810382526042815260200180612b0d6042913960600191505060405180910390fd5b6001600160a01b038516156117cb576117cb87600086611c1d565b866001600160a01b0316866001600160a01b03161415611857576001600160a01b0387166000818152603b6020908152604080832080546001600160a01b03191690558051878152918201869052818101859052519192917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a73487355949181900360600190a35050505050610d27565b6001600160a01b038781166000908152603b6020526040812080546001600160a01b031916928916929092179091556118939088908590611c1d565b604080518481526020810184905280820183905290516001600160a01b0380891692908a16917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a73487355949181900360600190a350505050505050565b60365490565b600061099582633b9aca0063ffffffff61236216565b600061194c6b033b2e3c9fd0803ce800000061194061192d868663ffffffff61236216565b6b019d971e4fe8401e7400000090611a93565b9063ffffffff6123bb16565b9392505050565b6000631dcd650061194c633b9aca006119408386611a93565b82816119788282610f59565b6119c9576040805162461bcd60e51b815260206004820152601b60248201527f5472616e736665722063616e6e6f7420626520616c6c6f7765642e0000000000604482015290519081900360640190fd5b6119d4858585612213565b5050505050565b60008184841115611a6a5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a2f578181015183820152602001611a17565b50505050905090810190601f168015611a5c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600190565b303b1590565b6039805460ff191660ff92909216919091179055565b60008282018381101561194c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000806000611afe86611ff2565b90506000611b0f826110a689611026565b9050611b1b8782612115565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d15e00537f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015611bb357600080fd5b505afa158015611bc7573d6000803e3d6000fd5b505050506040513d6020811015611bdd57600080fd5b50516001600160a01b0389166000908152603a60205260409020819055905082611c0d818463ffffffff611a9316565b9099909850919650945092505050565b6001600160a01b038084166000908152603b60205260409020541680611c435750611608565b600080611c4f83611aed565b6001600160a01b0387166000908152603c60205260409020549195509350611c8592508691506110a6908863ffffffff611a9316565b6001600160a01b038085166000908152603c6020908152604080832094909455603b90529190912054168015611cc157611cc184846000611c1d565b60408051848152602081018490528082018890526060810187905290516001600160a01b038616917f70ff8cf632603e2bfd1afb7e4061acce53d95356b1be9726b99fa22ba733b01f919081900360800190a250505050505050565b6001600160a01b038216611d625760405162461bcd60e51b8152600401808060200182810382526021815260200180612b7f6021913960400191505060405180910390fd5b611d6e82600083611608565b611db181604051806060016040528060228152602001612972602291396001600160a01b038516600090815260346020526040902054919063ffffffff6119db16565b6001600160a01b038316600090815260346020526040902055603654611ddd908263ffffffff611e2516565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b600061194c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506119db565b6001600160a01b0381166000818152603b6020908152604080832080546001600160a01b03191690558051838152918201839052818101839052519192839290917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a7348735594919081900360600190a36001600160a01b0382166000908152603c6020526040902054611f1157506001600160a01b0381166000908152603a602052604081205560016108e1565b5060006108e1565b80611f2357611608565b611f2c836108c0565b15611fd8576040516000906001600160a01b0384169061c35090849084818181858888f193505050503d8060008114611f81576040519150601f19603f3d011682016040523d82523d6000602084013e611f86565b606091505b5050905080611fd2576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b50611608565b6116086001600160a01b038416838363ffffffff6123fd16565b6001600160a01b031660009081526034602052604090205490565b600061194c610b45603a6000866001600160a01b03166001600160a01b03168152602001908152602001600020546121097f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d15e00537f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156120d457600080fd5b505afa1580156120e8573d6000803e3d6000fd5b505050506040513d60208110156120fe57600080fd5b5051610b39876118f2565b9063ffffffff61244f16565b6001600160a01b038216612170576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b61217c60008383611608565b60365461218f908263ffffffff611a9316565b6036556001600160a01b0382166000908152603460205260409020546121bb908263ffffffff611a9316565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b600081116122525760405162461bcd60e51b8152600401808060200182810382526030815260200180612b4f6030913960400191505060405180910390fd5b600080600061226086611aed565b9350935093505060008061227387611aed565b935093505050612284888588611c1d565b6122988761118d848963ffffffff611a9316565b6122a3888888612487565b60006122b5868863ffffffff611e2516565b1580156122d45750876001600160a01b0316896001600160a01b031614155b156122e5576122e289611e67565b90505b876001600160a01b0316896001600160a01b03167f89a178eaa27e0cd201bd795ca8ff716ac0df9618494510ca79771cfc66ffcde889888786612328578961232b565b60005b60408051948552602085019390935283830191909152606083015260808201879052519081900360a00190a3505050505050505050565b60008261237157506000610995565b8282028284828161237e57fe5b041461194c5760405162461bcd60e51b8152600401808060200182810382526021815260200180612a6c6021913960400191505060405180910390fd5b600061194c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506125f0565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052611608908490612655565b60006002820461247f83611940612472876b033b2e3c9fd0803ce8000000612362565b849063ffffffff611a9316565b949350505050565b6001600160a01b0383166124cc5760405162461bcd60e51b8152600401808060200182810382526025815260200180612ba06025913960400191505060405180910390fd5b6001600160a01b0382166125115760405162461bcd60e51b815260040180806020018281038252602381526020018061294f6023913960400191505060405180910390fd5b61251c838383611608565b61255f816040518060600160405280602681526020016129e8602691396001600160a01b038616600090815260346020526040902054919063ffffffff6119db16565b6001600160a01b038085166000908152603460205260408082209390935590841681522054612594908263ffffffff611a9316565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818361263f5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611a2f578181015183820152602001611a17565b50600083858161264b57fe5b0495945050505050565b60606126aa826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166127069092919063ffffffff16565b805190915015611608578080602001905160208110156126c957600080fd5b50516116085760405162461bcd60e51b815260040180806020018281038252602a815260200180612be9602a913960400191505060405180910390fd5b606061247f8484600085606061271b8561287d565b61276c576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106127ab5780518252601f19909201916020918201910161278c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d806000811461280d576040519150601f19603f3d011682016040523d82523d6000602084013e612812565b606091505b5091509150811561282657915061247f9050565b8051156128365780518082602001fd5b60405162461bcd60e51b8152602060048201818152865160248401528651879391928392604401919085019080838360008315611a2f578181015183820152602001611a17565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061247f575050151592915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106128f75782800160ff19823516178555612924565b82800160010185558215612924579182015b82811115612924578235825591602001919060010190612909565b50612930929150612934565b5090565b61097a91905b80821115612930576000815560010161293a56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e6365557365722063616e6e6f742072656465656d206d6f7265207468616e2074686520617661696c61626c652062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e63655472616e736665727320617265206f6e6c7920616c6c6f7765642069662074686520756e6465726c79696e6720617373657420697320455448557365722063616e6e6f74206769766520616c6c6f77616e636520746f2068696d73656c66536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365496e74657265737420697320616c7265616479207265646972656374656420746f207468652075736572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564496e7465726573742073747265616d2063616e206f6e6c79206265207265646972656374656420696620746865726520697320612076616c69642062616c616e63655472616e7366657272656420616d6f756e74206e6565647320746f2062652067726561746572207468616e207a65726f45524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573735361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6c45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f43616c6c6572206973206e6f7420616c6c6f77656420746f2072656469726563742074686520696e746572657374206f66207468652075736572a26469706673582212209754600ccd670a635aeee1c1ba140565730ad6b9da050e6eb2814f2f0a03411864736f6c63430006080033"; + "0x60c0604052600080553480156200001557600080fd5b506040516200300338038062003003833981810160405260808110156200003b57600080fd5b815160208301516040808501805191519395929483019291846401000000008211156200006757600080fd5b9083019060208201858111156200007d57600080fd5b82516401000000008111828201881017156200009857600080fd5b82525081516020918201929091019080838360005b83811015620000c7578181015183820152602001620000ad565b50505050905090810190601f168015620000f55780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200011957600080fd5b9083019060208201858111156200012f57600080fd5b82516401000000008111828201881017156200014a57600080fd5b82525081516020918201929091019080838360005b83811015620001795781810151838201526020016200015f565b50505050905090810190601f168015620001a75780820380516001836020036101000a031916815260200191505b50604052505082518391508290620001c79060379060208501906200020e565b508051620001dd9060389060208401906200020e565b50506039805460ff191660121790555050506001600160601b0319606092831b811660a052911b16608052620002b3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200025157805160ff191683800117855562000281565b8280016001018555821562000281579182015b828111156200028157825182559160200191906001019062000264565b506200028f92915062000293565b5090565b620002b091905b808211156200028f57600081556001016200029a565b90565b60805160601c60a05160601c612cdb6200032860003980610a705280610d8a5280610ebd5280610fad5280611108528061143952806115a15280611b3452806120425250806101c55280610a9f5280610f265280610f7152806110db52806114605280611b6352806120715250612cdb6000f3fe6080604052600436106101bb5760003560e01c80634efecaa5116100ec578063a9059cbb1161008a578063db006a7511610064578063db006a75146107e5578063dd62ed3e1461080f578063ee9907a41461084a578063f866c3191461087d5761022f565b8063a9059cbb14610764578063c634dfaa1461079d578063d0fc81d2146107d05761022f565b806389d1a0fc116100c657806389d1a0fc146106c857806394362e8b146106dd57806395d89b4114610716578063a457c2d71461072b5761022f565b80634efecaa5146106235780635eae177c1461065c57806370a08231146106955761022f565b806323b872dd11610159578063325a9b1311610133578063325a9b131461052757806339509351146105625780633edb7cb81461059b578063445e8010146105d45761022f565b806323b872dd146103e05780633118724e14610423578063313ce567146104fc5761022f565b80630e49072d116101955780630e49072d1461033257806312c87c2d1461036557806318160ddd146103985780631d51e7cf146103ad5761022f565b806306fdde0314610234578063095ea7b3146102be5780630bd7ad3b1461030b5761022f565b3661022f576101f27f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166108c0565b61022d5760405162461bcd60e51b8152600401808060200182810382526039815260200180612a106039913960400191505060405180910390fd5b005b600080fd5b34801561024057600080fd5b506102496108e6565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028357818101518382015260200161026b565b50505050905090810190601f1680156102b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102ca57600080fd5b506102f7600480360360408110156102e157600080fd5b506001600160a01b03813516906020013561097d565b604080519115158252519081900360200190f35b34801561031757600080fd5b5061032061099b565b60408051918252519081900360200190f35b34801561033e57600080fd5b5061022d6004803603602081101561035557600080fd5b50356001600160a01b03166109a0565b34801561037157600080fd5b5061022d6004803603602081101561038857600080fd5b50356001600160a01b03166109ad565b3480156103a457600080fd5b50610320610a4c565b3480156103b957600080fd5b50610320600480360360208110156103d057600080fd5b50356001600160a01b0316610b50565b3480156103ec57600080fd5b506102f76004803603606081101561040357600080fd5b506001600160a01b03813581169160208101359091169060400135610b6b565b34801561042f57600080fd5b5061022d6004803603606081101561044657600080fd5b60ff823516919081019060408101602082013564010000000081111561046b57600080fd5b82018360208201111561047d57600080fd5b8035906020019184600183028401116401000000008311171561049f57600080fd5b9193909290916020810190356401000000008111156104bd57600080fd5b8201836020820111156104cf57600080fd5b803590602001918460018302840111640100000000831117156104f157600080fd5b509092509050610bf8565b34801561050857600080fd5b50610511610cbc565b6040805160ff9092168252519081900360200190f35b34801561053357600080fd5b5061022d6004803603604081101561054a57600080fd5b506001600160a01b0381358116916020013516610cc5565b34801561056e57600080fd5b506102f76004803603604081101561058557600080fd5b506001600160a01b038135169060200135610d2b565b3480156105a757600080fd5b5061022d600480360360408110156105be57600080fd5b506001600160a01b038135169060200135610d7f565b3480156105e057600080fd5b50610607600480360360208110156105f757600080fd5b50356001600160a01b0316610e92565b604080516001600160a01b039092168252519081900360200190f35b34801561062f57600080fd5b506103206004803603604081101561064657600080fd5b506001600160a01b038135169060200135610eb0565b34801561066857600080fd5b506102f76004803603604081101561067f57600080fd5b506001600160a01b038135169060200135610f59565b3480156106a157600080fd5b50610320600480360360208110156106b857600080fd5b50356001600160a01b0316611026565b3480156106d457600080fd5b506106076110d9565b3480156106e957600080fd5b5061022d6004803603604081101561070057600080fd5b506001600160a01b0381351690602001356110fd565b34801561072257600080fd5b506102496111f0565b34801561073757600080fd5b506102f76004803603604081101561074e57600080fd5b506001600160a01b038135169060200135611251565b34801561077057600080fd5b506102f76004803603604081101561078757600080fd5b506001600160a01b0381351690602001356112bf565b3480156107a957600080fd5b50610320600480360360208110156107c057600080fd5b50356001600160a01b03166112d3565b3480156107dc57600080fd5b506103206112de565b3480156107f157600080fd5b5061022d6004803603602081101561080857600080fd5b50356112e4565b34801561081b57600080fd5b506103206004803603604081101561083257600080fd5b506001600160a01b0381358116916020013516611550565b34801561085657600080fd5b506103206004803603602081101561086d57600080fd5b50356001600160a01b031661157b565b34801561088957600080fd5b5061022d600480360360608110156108a057600080fd5b506001600160a01b03813581169160208101359091169060400135611596565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee145b919050565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156109725780601f1061094757610100808354040283529160200191610972565b820191906000526020600020905b81548152906001019060200180831161095557829003601f168201915b505050505090505b90565b600061099161098a61160d565b8484611611565b5060015b92915050565b600181565b6109aa33826116fd565b50565b6001600160a01b0381163314156109f55760405162461bcd60e51b8152600401808060200182810382526025815260200180612a496025913960400191505060405180910390fd5b336000818152603d602052604080822080546001600160a01b0319166001600160a01b03861690811790915590519092917fc2d6a42a9d5273283f73009a07aacfb043f2f91173a8d9d33b504afe898db08b91a350565b600080610a576118ec565b905080610a6857600091505061097a565b610b4a610b457f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d15e00537f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610b0457600080fd5b505afa158015610b18573d6000803e3d6000fd5b505050506040513d6020811015610b2e57600080fd5b5051610b39846118f2565b9063ffffffff61190816565b611953565b91505090565b6001600160a01b03166000908152603c602052604090205490565b6000610b7884848461196c565b610bee84610b8461160d565b610be985604051806060016040528060288152602001612a8f602891396001600160a01b038a16600090815260356020526040812090610bc261160d565b6001600160a01b03168152602081019190915260400160002054919063ffffffff6119db16565b611611565b5060019392505050565b6000610c02611a72565b60015490915060ff1680610c195750610c19611a77565b80610c25575060005481115b610c605760405162461bcd60e51b815260040180806020018281038252602e815260200180612ae1602e913960400191505060405180910390fd5b60015460ff16158015610c7f576001805460ff19168117905560008290555b610c8b603787876128b8565b50610c98603885856128b8565b50610ca287611a7d565b8015610cb3576001805460ff191690555b50505050505050565b60395460ff1690565b6001600160a01b038281166000908152603d6020526040902054163314610d1d5760405162461bcd60e51b815260040180806020018281038252603a815260200180612c6c603a913960400191505060405180910390fd5b610d2782826116fd565b5050565b6000610991610d3861160d565b84610be98560356000610d4961160d565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff611a9316565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610de65760405162461bcd60e51b8152600401808060200182810382526032815260200180612c156032913960400191505060405180910390fd5b6000806000610df485611aed565b93509350935050610e06858386611c1f565b610e108585611d1f565b6000610e22848663ffffffff611e2716565b610e3257610e2f86611e69565b90505b856001600160a01b03167f90e5d3d68ec162d9c7de393037a3ede04dd44f68e051bf2ace4a73c299dbc4db868584610e6a5785610e6d565b60005b60408051938452602084019290925282820152519081900360600190a2505050505050565b6001600160a01b039081166000908152603b60205260409020541690565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610f195760405162461bcd60e51b8152600401808060200182810382526032815260200180612c156032913960400191505060405180910390fd5b610f536001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016848463ffffffff611f1b16565b50919050565b604080516376e9d61560e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015284811660248301526044820184905291516000927f000000000000000000000000000000000000000000000000000000000000000016916376e9d615916064808301926020929190829003018186803b158015610ff357600080fd5b505afa158015611007573d6000803e3d6000fd5b505050506040513d602081101561101d57600080fd5b50519392505050565b60008061103283611ff4565b6001600160a01b0384166000908152603c60205260409020549091508115801561105a575080155b1561106a576000925050506108e1565b6001600160a01b038481166000908152603b6020526040902054166110bb576110b2816110a6866110a1868463ffffffff611a9316565b61200f565b9063ffffffff611e2716565b925050506108e1565b6110b26110cc826110a6878561200f565b839063ffffffff611a9316565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146111645760405162461bcd60e51b8152600401808060200182810382526032815260200180612c156032913960400191505060405180910390fd5b60008061117084611aed565b9350935050506111948461118d8585611a9390919063ffffffff16565b6000611c1f565b61119e8484612117565b604080518481526020810184905280820183905290516001600160a01b038616917fbe7799898ca2d813ff902b487c1b434ab45b47edd8f38b77ad5e99aae8341b7a919081900360600190a250505050565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156109725780601f1061094757610100808354040283529160200191610972565b600061099161125e61160d565b84610be985604051806060016040528060258152602001612c47602591396035600061128861160d565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff6119db16565b60006109916112cc61160d565b848461196c565b600061099582611ff4565b60001981565b60008111611339576040805162461bcd60e51b815260206004820181905260248201527f416d6f756e7420746f2072656465656d206e6565647320746f206265203e2030604482015290519081900360640190fd5b600080600061134733611aed565b9195509350915084905060001981141561135e5750825b8381111561139d5760405162461bcd60e51b81526004018080602001828103825260328152602001806129966032913960400191505060405180910390fd5b6113a73382610f59565b6113f8576040805162461bcd60e51b815260206004820152601b60248201527f5472616e736665722063616e6e6f7420626520616c6c6f7765642e0000000000604482015290519081900360640190fd5b611403338483611c1f565b61140d3382611d1f565b600061141f858363ffffffff611e2716565b61142f5761142c33611e69565b90505b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016639895e3d87f000000000000000000000000000000000000000000000000000000000000000033856114918a8263ffffffff611e2716565b6040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001838152602001828152602001945050505050600060405180830381600087803b15801561150057600080fd5b505af1158015611514573d6000803e3d6000fd5b50505050336001600160a01b03167fbd5034ffbd47e4e72a94baa2cdb74c6fad73cb3bcdc13036b72ec8306f5a7646838684610e6a5786610e6d565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001600160a01b03166000908152603a602052604090205490565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146115fd5760405162461bcd60e51b8152600401808060200182810382526032815260200180612c156032913960400191505060405180910390fd5b611608838383612215565b505050565b3390565b6001600160a01b0383166116565760405162461bcd60e51b8152600401808060200182810382526024815260200180612bc76024913960400191505060405180910390fd5b6001600160a01b03821661169b5760405162461bcd60e51b81526004018080602001828103825260228152602001806129c86022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038083166000908152603b6020526040902054811690821681141561175a5760405162461bcd60e51b815260040180806020018281038252602a815260200180612ab7602a913960400191505060405180910390fd5b60008060008061176987611aed565b9350935093509350600083116117b05760405162461bcd60e51b8152600401808060200182810382526042815260200180612b0f6042913960600191505060405180910390fd5b6001600160a01b038516156117cb576117cb87600086611c1f565b866001600160a01b0316866001600160a01b03161415611857576001600160a01b0387166000818152603b6020908152604080832080546001600160a01b03191690558051878152918201869052818101859052519192917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a73487355949181900360600190a35050505050610d27565b6001600160a01b038781166000908152603b6020526040812080546001600160a01b031916928916929092179091556118939088908590611c1f565b604080518481526020810184905280820183905290516001600160a01b0380891692908a16917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a73487355949181900360600190a350505050505050565b60365490565b600061099582633b9aca0063ffffffff61236416565b600061194c6b033b2e3c9fd0803ce800000061194061192d868663ffffffff61236416565b6b019d971e4fe8401e7400000090611a93565b9063ffffffff6123bd16565b9392505050565b6000631dcd650061194c633b9aca006119408386611a93565b82816119788282610f59565b6119c9576040805162461bcd60e51b815260206004820152601b60248201527f5472616e736665722063616e6e6f7420626520616c6c6f7765642e0000000000604482015290519081900360640190fd5b6119d4858585612215565b5050505050565b60008184841115611a6a5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a2f578181015183820152602001611a17565b50505050905090810190601f168015611a5c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600190565b303b1590565b6039805460ff191660ff92909216919091179055565b60008282018381101561194c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000806000611afe86611026565b90506000808215611b3057611b1288611ff4565b9050611b24838263ffffffff611e2716565b9150611b308883612117565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d15e00537f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015611bc857600080fd5b505afa158015611bdc573d6000803e3d6000fd5b505050506040513d6020811015611bf257600080fd5b50516001600160a01b03999099166000908152603a60205260409020899055509791969095509350915050565b6001600160a01b038084166000908152603b60205260409020541680611c455750611608565b600080611c5183611aed565b6001600160a01b0387166000908152603c60205260409020549195509350611c8792508691506110a6908863ffffffff611a9316565b6001600160a01b038085166000908152603c6020908152604080832094909455603b90529190912054168015611cc357611cc384846000611c1f565b60408051848152602081018490528082018890526060810187905290516001600160a01b038616917f70ff8cf632603e2bfd1afb7e4061acce53d95356b1be9726b99fa22ba733b01f919081900360800190a250505050505050565b6001600160a01b038216611d645760405162461bcd60e51b8152600401808060200182810382526021815260200180612b816021913960400191505060405180910390fd5b611d7082600083611608565b611db381604051806060016040528060228152602001612974602291396001600160a01b038516600090815260346020526040902054919063ffffffff6119db16565b6001600160a01b038316600090815260346020526040902055603654611ddf908263ffffffff611e2716565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b600061194c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506119db565b6001600160a01b0381166000818152603b6020908152604080832080546001600160a01b03191690558051838152918201839052818101839052519192839290917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a7348735594919081900360600190a36001600160a01b0382166000908152603c6020526040902054611f1357506001600160a01b0381166000908152603a602052604081205560016108e1565b5060006108e1565b80611f2557611608565b611f2e836108c0565b15611fda576040516000906001600160a01b0384169061c35090849084818181858888f193505050503d8060008114611f83576040519150601f19603f3d011682016040523d82523d6000602084013e611f88565b606091505b5050905080611fd4576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b50611608565b6116086001600160a01b038416838363ffffffff6123ff16565b6001600160a01b031660009081526034602052604090205490565b600061194c610b45603a6000866001600160a01b03166001600160a01b031681526020019081526020016000205461210b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d15e00537f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156120d657600080fd5b505afa1580156120ea573d6000803e3d6000fd5b505050506040513d602081101561210057600080fd5b5051610b39876118f2565b9063ffffffff61245116565b6001600160a01b038216612172576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b61217e60008383611608565b603654612191908263ffffffff611a9316565b6036556001600160a01b0382166000908152603460205260409020546121bd908263ffffffff611a9316565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b600081116122545760405162461bcd60e51b8152600401808060200182810382526030815260200180612b516030913960400191505060405180910390fd5b600080600061226286611aed565b9350935093505060008061227587611aed565b935093505050612286888588611c1f565b61229a8761118d848963ffffffff611a9316565b6122a5888888612489565b60006122b7868863ffffffff611e2716565b1580156122d65750876001600160a01b0316896001600160a01b031614155b156122e7576122e489611e69565b90505b876001600160a01b0316896001600160a01b03167f89a178eaa27e0cd201bd795ca8ff716ac0df9618494510ca79771cfc66ffcde88988878661232a578961232d565b60005b60408051948552602085019390935283830191909152606083015260808201879052519081900360a00190a3505050505050505050565b60008261237357506000610995565b8282028284828161238057fe5b041461194c5760405162461bcd60e51b8152600401808060200182810382526021815260200180612a6e6021913960400191505060405180910390fd5b600061194c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506125f2565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052611608908490612657565b60006002820461248183611940612474876b033b2e3c9fd0803ce8000000612364565b849063ffffffff611a9316565b949350505050565b6001600160a01b0383166124ce5760405162461bcd60e51b8152600401808060200182810382526025815260200180612ba26025913960400191505060405180910390fd5b6001600160a01b0382166125135760405162461bcd60e51b81526004018080602001828103825260238152602001806129516023913960400191505060405180910390fd5b61251e838383611608565b612561816040518060600160405280602681526020016129ea602691396001600160a01b038616600090815260346020526040902054919063ffffffff6119db16565b6001600160a01b038085166000908152603460205260408082209390935590841681522054612596908263ffffffff611a9316565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600081836126415760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611a2f578181015183820152602001611a17565b50600083858161264d57fe5b0495945050505050565b60606126ac826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166127089092919063ffffffff16565b805190915015611608578080602001905160208110156126cb57600080fd5b50516116085760405162461bcd60e51b815260040180806020018281038252602a815260200180612beb602a913960400191505060405180910390fd5b60606124818484600085606061271d8561287f565b61276e576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106127ad5780518252601f19909201916020918201910161278e565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d806000811461280f576040519150601f19603f3d011682016040523d82523d6000602084013e612814565b606091505b509150915081156128285791506124819050565b8051156128385780518082602001fd5b60405162461bcd60e51b8152602060048201818152865160248401528651879391928392604401919085019080838360008315611a2f578181015183820152602001611a17565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590612481575050151592915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106128f95782800160ff19823516178555612926565b82800160010185558215612926579182015b8281111561292657823582559160200191906001019061290b565b50612932929150612936565b5090565b61097a91905b80821115612932576000815560010161293c56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e6365557365722063616e6e6f742072656465656d206d6f7265207468616e2074686520617661696c61626c652062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e63655472616e736665727320617265206f6e6c7920616c6c6f7765642069662074686520756e6465726c79696e6720617373657420697320455448557365722063616e6e6f74206769766520616c6c6f77616e636520746f2068696d73656c66536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365496e74657265737420697320616c7265616479207265646972656374656420746f207468652075736572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564496e7465726573742073747265616d2063616e206f6e6c79206265207265646972656374656420696620746865726520697320612076616c69642062616c616e63655472616e7366657272656420616d6f756e74206e6565647320746f2062652067726561746572207468616e207a65726f45524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573735361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6c45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f43616c6c6572206973206e6f7420616c6c6f77656420746f2072656469726563742074686520696e746572657374206f66207468652075736572a2646970667358221220ca2db7253f82a50ee96c4009e456e51c85124486a580f45dbdc7511b414f2eff64736f6c63430006080033"; diff --git a/types/AaveProtocolTestHelpersFactory.ts b/types/AaveProtocolTestHelpersFactory.ts index 98dacd03..2db16b10 100644 --- a/types/AaveProtocolTestHelpersFactory.ts +++ b/types/AaveProtocolTestHelpersFactory.ts @@ -123,4 +123,4 @@ const _abi = [ ]; const _bytecode = - "0x60a060405234801561001057600080fd5b506040516109e23803806109e283398101604081905261002f91610044565b60601b6001600160601b031916608052610072565b600060208284031215610055578081fd5b81516001600160a01b038116811461006b578182fd5b9392505050565b60805160601c61094b610097600039806083528060ab528061035f525061094b6000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630542975c14610046578063b316ff8914610064578063f561ae4114610079575b600080fd5b61004e610081565b60405161005b91906107fa565b60405180910390f35b61006c6100a5565b60405161005b919061080e565b61006c610359565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561010257600080fd5b505afa158015610116573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061013a9190610648565b90506060816001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160006040518083038186803b15801561017757600080fd5b505afa15801561018b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101b391908101906106b6565b90506060815167ffffffffffffffff811180156101cf57600080fd5b5060405190808252806020026020018201604052801561020957816020015b6101f6610613565b8152602001906001900390816101ee5790505b50905060005b825181101561035157604051806040016040528084838151811061022f57fe5b60200260200101516001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0316146102f05784838151811061026f57fe5b60200260200101516001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156102af57600080fd5b505afa1580156102c3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102eb9190810190610761565b61030d565b6040518060400160405280600381526020016208aa8960eb1b8152505b815260200184838151811061031e57fe5b60200260200101516001600160a01b031681525082828151811061033e57fe5b602090810291909101015260010161020f565b509250505090565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b657600080fd5b505afa1580156103ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ee9190610648565b90506060816001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160006040518083038186803b15801561042b57600080fd5b505afa15801561043f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261046791908101906106b6565b90506060815167ffffffffffffffff8111801561048357600080fd5b506040519080825280602002602001820160405280156104bd57816020015b6104aa610613565b8152602001906001900390816104a25790505b50905060005b8251811015610351576000846001600160a01b031663d2493b6c8584815181106104e957fe5b60200260200101516040518263ffffffff1660e01b815260040161050d91906107fa565b60606040518083038186803b15801561052557600080fd5b505afa158015610539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055d919061066a565b505090506040518060400160405280826001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156105a557600080fd5b505afa1580156105b9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105e19190810190610761565b8152602001826001600160a01b03168152508383815181106105ff57fe5b6020908102919091010152506001016104c3565b60408051808201909152606081526000602082015290565b80516001600160a01b038116811461064257600080fd5b92915050565b600060208284031215610659578081fd5b610663838361062b565b9392505050565b60008060006060848603121561067e578182fd5b8351610689816108fd565b602085015190935061069a816108fd565b60408501519092506106ab816108fd565b809150509250925092565b600060208083850312156106c8578182fd5b825167ffffffffffffffff808211156106df578384fd5b81850186601f8201126106f0578485fd5b8051925081831115610700578485fd5b83830291506107108483016108a6565b8381528481019082860184840187018a101561072a578788fd5b8794505b85851015610754576107408a8261062b565b83526001949094019391860191860161072e565b5098975050505050505050565b600060208284031215610772578081fd5b815167ffffffffffffffff80821115610789578283fd5b81840185601f82011261079a578384fd5b80519250818311156107aa578384fd5b6107bd601f8401601f19166020016108a6565b91508282528560208483010111156107d3578384fd5b6107e48360208401602084016108cd565b50949350505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b60208082528251828201819052600091906040908185019080840286018301878501865b8381101561089857603f1989840301855281518051878552805180898701526060610862828289018d86016108cd565b8a84015192506108748b8801846107ed565b978a0197601f91909101601f19169590950190940193505090860190600101610832565b509098975050505050505050565b60405181810167ffffffffffffffff811182821017156108c557600080fd5b604052919050565b60005b838110156108e85781810151838201526020016108d0565b838111156108f7576000848401525b50505050565b6001600160a01b038116811461091257600080fd5b5056fea2646970667358221220b389fd936ab71c2d0abf42c45c20d01abb38a699a54755e46397dffebced222a64736f6c63430006080033"; + "0x60a060405234801561001057600080fd5b506040516109e23803806109e283398101604081905261002f91610044565b60601b6001600160601b031916608052610072565b600060208284031215610055578081fd5b81516001600160a01b038116811461006b578182fd5b9392505050565b60805160601c61094b610097600039806083528060ab528061035f525061094b6000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630542975c14610046578063b316ff8914610064578063f561ae4114610079575b600080fd5b61004e610081565b60405161005b91906107fa565b60405180910390f35b61006c6100a5565b60405161005b919061080e565b61006c610359565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561010257600080fd5b505afa158015610116573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061013a9190610648565b90506060816001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160006040518083038186803b15801561017757600080fd5b505afa15801561018b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101b391908101906106b6565b90506060815167ffffffffffffffff811180156101cf57600080fd5b5060405190808252806020026020018201604052801561020957816020015b6101f6610613565b8152602001906001900390816101ee5790505b50905060005b825181101561035157604051806040016040528084838151811061022f57fe5b60200260200101516001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0316146102f05784838151811061026f57fe5b60200260200101516001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156102af57600080fd5b505afa1580156102c3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102eb9190810190610761565b61030d565b6040518060400160405280600381526020016208aa8960eb1b8152505b815260200184838151811061031e57fe5b60200260200101516001600160a01b031681525082828151811061033e57fe5b602090810291909101015260010161020f565b509250505090565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b657600080fd5b505afa1580156103ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ee9190610648565b90506060816001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160006040518083038186803b15801561042b57600080fd5b505afa15801561043f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261046791908101906106b6565b90506060815167ffffffffffffffff8111801561048357600080fd5b506040519080825280602002602001820160405280156104bd57816020015b6104aa610613565b8152602001906001900390816104a25790505b50905060005b8251811015610351576000846001600160a01b031663d2493b6c8584815181106104e957fe5b60200260200101516040518263ffffffff1660e01b815260040161050d91906107fa565b60606040518083038186803b15801561052557600080fd5b505afa158015610539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055d919061066a565b505090506040518060400160405280826001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156105a557600080fd5b505afa1580156105b9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105e19190810190610761565b8152602001826001600160a01b03168152508383815181106105ff57fe5b6020908102919091010152506001016104c3565b60408051808201909152606081526000602082015290565b80516001600160a01b038116811461064257600080fd5b92915050565b600060208284031215610659578081fd5b610663838361062b565b9392505050565b60008060006060848603121561067e578182fd5b8351610689816108fd565b602085015190935061069a816108fd565b60408501519092506106ab816108fd565b809150509250925092565b600060208083850312156106c8578182fd5b825167ffffffffffffffff808211156106df578384fd5b81850186601f8201126106f0578485fd5b8051925081831115610700578485fd5b83830291506107108483016108a6565b8381528481019082860184840187018a101561072a578788fd5b8794505b85851015610754576107408a8261062b565b83526001949094019391860191860161072e565b5098975050505050505050565b600060208284031215610772578081fd5b815167ffffffffffffffff80821115610789578283fd5b81840185601f82011261079a578384fd5b80519250818311156107aa578384fd5b6107bd601f8401601f19166020016108a6565b91508282528560208483010111156107d3578384fd5b6107e48360208401602084016108cd565b50949350505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b60208082528251828201819052600091906040908185019080840286018301878501865b8381101561089857603f1989840301855281518051878552805180898701526060610862828289018d86016108cd565b8a84015192506108748b8801846107ed565b978a0197601f91909101601f19169590950190940193505090860190600101610832565b509098975050505050505050565b60405181810167ffffffffffffffff811182821017156108c557600080fd5b604052919050565b60005b838110156108e85781810151838201526020016108d0565b838111156108f7576000848401525b50505050565b6001600160a01b038116811461091257600080fd5b5056fea2646970667358221220eab514b134310c773a98641e84a9093bf17d75d263a1384f38976f1da9f157b564736f6c63430006080033"; diff --git a/types/GenericLogicFactory.ts b/types/GenericLogicFactory.ts index f4bcf2dd..dc8bf7eb 100644 --- a/types/GenericLogicFactory.ts +++ b/types/GenericLogicFactory.ts @@ -79,4 +79,4 @@ const _abi = [ ]; const _bytecode = - "0x610e85610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061004b5760003560e01c8063865cb0ce14610050578063c3525c2814610079578063d609bd1b1461008e575b600080fd5b61006361005e366004610c0b565b6100a1565b6040516100709190610d70565b60405180910390f35b610081610326565b6040516100709190610e46565b61008161009c366004610d31565b610332565b60006100ba6100b536879003870187610cdc565b610374565b158061010857506001600160a01b03891660009081526020879052604090206009015461010690600160d01b900460ff166100fa36889003880188610cdc565b9063ffffffff61039c16565b155b156101155750600161031a565b61011d610af7565b6001600160a01b038a166000908152602088905260409020610141906005016103b4565b845250506020820181905261015a57600191505061031a565b6101a9898861016e368a90038a018a610cdc565b8888808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508a92506103fb915050565b506080850152506060830181905260408301919091526101cd57600191505061031a565b6102708160000151600a0a6102648a866001600160a01b031663b3596f078f6040518263ffffffff1660e01b81526004016102089190610d5c565b60206040518083038186803b15801561022057600080fd5b505afa158015610234573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102589190610d19565b9063ffffffff6108fb16565b9063ffffffff61093e16565b60c08201819052604082015161028b9163ffffffff61098016565b60e082018190526102a057600091505061031a565b6102eb8160e001516102646102c68460a001518560c001516108fb90919063ffffffff16565b608085015160408601516102df9163ffffffff6108fb16565b9063ffffffff61098016565b610100820181905260e0820151606083015160009261030b9291906109c2565b670de0b6b3a764000010925050505b98975050505050505050565b670de0b6b3a764000081565b600080610345858463ffffffff6109fa16565b90508381101561035957600091505061036d565b610369818563ffffffff61098016565b9150505b9392505050565b517f555555555555555555555555555555555555555555555555555555555555555516151590565b815160016002830281019190911c1615155b92915050565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b600080600080600061040b610b53565b61041489610a1e565b1561043157506000945084935083925082915060001990506108ee565b600060e08201525b87518160e0015110156108415760e081015161045c908a9063ffffffff610a2316565b61046557610831565b878160e001518151811061047557fe5b6020908102919091018101516001600160a01b031661020083018190526000908152908b9052604090206104ab600582016103b4565b6080860181905260c08601929092525060a0840191909152600a0a602083015261020082015160405163b3596f0760e01b81526001600160a01b038a169163b3596f07916104fc9190600401610d5c565b60206040518083038186803b15801561051457600080fd5b505afa158015610528573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054c9190610d19565b825260a082015115801590610572575060e0820151610572908b9063ffffffff61039c16565b156106a35760068101546040516370a0823160e01b81526001600160a01b03909116906370a08231906105a9908f90600401610d5c565b60206040518083038186803b1580156105c157600080fd5b505afa1580156105d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f99190610d19565b604083018190526020830151835160009261061e92916102649163ffffffff6108fb16565b610120840151909150610637908263ffffffff610a3316565b61012084015260a08301516106699061065790839063ffffffff6108fb16565b6101808501519063ffffffff610a3316565b61018084015260c083015161069b9061068990839063ffffffff6108fb16565b6101a08501519063ffffffff610a3316565b6101a0840152505b60e08201516106b9908b9063ffffffff610a5816565b1561082f5760078101546040516370a0823160e01b81526001600160a01b03909116906370a08231906106f0908f90600401610d5c565b60206040518083038186803b15801561070857600080fd5b505afa15801561071c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107409190610d19565b8260600181815250506107f08160080160009054906101000a90046001600160a01b03166001600160a01b03166370a082318e6040518263ffffffff1660e01b815260040161078f9190610d5c565b60206040518083038186803b1580156107a757600080fd5b505afa1580156107bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107df9190610d19565b60608401519063ffffffff610a3316565b60608301819052602083015183516108289261081692916102649163ffffffff6108fb16565b6101408401519063ffffffff610a3316565b6101408301525b505b60e0810180516001019052610439565b600081610120015111610855576000610870565b6101208101516101808201516108709163ffffffff61093e16565b6101808201526101208101516108875760006108a2565b6101208101516101a08201516108a29163ffffffff61093e16565b6101a082018190526101208201516101408301516108bf926109c2565b61010082018190526101208201516101408301516101808401516101a090940151919850965091945090925090505b9550955095509550959050565b60008261090a575060006103ae565b8282028284828161091757fe5b041461036d5760405162461bcd60e51b815260040161093590610e05565b60405180910390fd5b600061036d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610a68565b600061036d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a9f565b6000826109d2575060001961036d565b6109f2836109e6868563ffffffff6109fa16565b9063ffffffff610acb16565b949350505050565b600061036d612710610264610a15868663ffffffff6108fb16565b61138890610a33565b511590565b9051600360029092021c16151590565b60008282018381101561036d5760405162461bcd60e51b815260040161093590610dce565b9051600160029092021c16151590565b60008183610a895760405162461bcd60e51b81526004016109359190610d7b565b506000838581610a9557fe5b0495945050505050565b60008184841115610ac35760405162461bcd60e51b81526004016109359190610d7b565b505050900390565b6000600282046109f283610264610aea87670de0b6b3a76400006108fb565b849063ffffffff610a3316565b604051806101600160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581525090565b60405180610260016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160006001600160a01b031681526020016000151581526020016000151581525090565b80356001600160a01b03811681146103ae57600080fd5b600080600080600080600080888a0360e0811215610c27578485fd5b610c318b8b610bf4565b9850610c408b60208c01610bf4565b975060408a0135965060608a013595506020607f1982011215610c61578485fd5b5060808901935060a089013567ffffffffffffffff80821115610c82578485fd5b818b018c601f820112610c93578586fd5b8035925081831115610ca3578586fd5b8c60208085028301011115610cb6578586fd5b6020019450909250610ccd90508a60c08b01610bf4565b90509295985092959890939650565b600060208284031215610ced578081fd5b6040516020810181811067ffffffffffffffff82111715610d0c578283fd5b6040529135825250919050565b600060208284031215610d2a578081fd5b5051919050565b600080600060608486031215610d45578283fd5b505081359360208301359350604090920135919050565b6001600160a01b0391909116815260200190565b901515815260200190565b6000602080835283518082850152825b81811015610da757858101830151858201604001528201610d8b565b81811115610db85783604083870101525b50601f01601f1916929092016040019392505050565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b9081526020019056fea2646970667358221220fe1996172119da34d352bda93e33fab5310de70a2961ad5bd46478053747d41264736f6c63430006080033"; + "0x610e9f610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061004b5760003560e01c8063865cb0ce14610050578063c3525c2814610079578063d609bd1b1461008e575b600080fd5b61006361005e366004610c0b565b6100a1565b6040516100709190610d72565b60405180910390f35b610081610326565b6040516100709190610e48565b61008161009c366004610d33565b610332565b60006100ba6100b536879003870187610cde565b610374565b158061010857506001600160a01b03891660009081526020879052604090206009015461010690600160d01b900460ff166100fa36889003880188610cde565b9063ffffffff61039c16565b155b156101155750600161031a565b61011d610af7565b6001600160a01b038a166000908152602088905260409020610141906005016103b4565b845250506020820181905261015a57600191505061031a565b6101a9898861016e368a90038a018a610cde565b8888808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508a92506103fb915050565b506080850152506060830181905260408301919091526101cd57600191505061031a565b6102708160000151600a0a6102648a866001600160a01b031663b3596f078f6040518263ffffffff1660e01b81526004016102089190610d5e565b60206040518083038186803b15801561022057600080fd5b505afa158015610234573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102589190610d1b565b9063ffffffff6108fb16565b9063ffffffff61093e16565b60c08201819052604082015161028b9163ffffffff61098016565b60e082018190526102a057600091505061031a565b6102eb8160e001516102646102c68460a001518560c001516108fb90919063ffffffff16565b608085015160408601516102df9163ffffffff6108fb16565b9063ffffffff61098016565b610100820181905260e0820151606083015160009261030b9291906109c2565b670de0b6b3a764000010925050505b98975050505050505050565b670de0b6b3a764000081565b600080610345858463ffffffff6109fa16565b90508381101561035957600091505061036d565b610369818563ffffffff61098016565b9150505b9392505050565b517f555555555555555555555555555555555555555555555555555555555555555516151590565b815160016002830281019190911c1615155b92915050565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b600080600080600061040b610b53565b61041489610a1e565b1561043157506000945084935083925082915060001990506108ee565b600060e08201525b87518160e0015110156108415760e081015161045c908a9063ffffffff610a2316565b61046557610831565b878160e001518151811061047557fe5b6020908102919091018101516001600160a01b031661020083018190526000908152908b9052604090206104ab600582016103b4565b6080860181905260c08601929092525060a0840191909152600a0a602083015261020082015160405163b3596f0760e01b81526001600160a01b038a169163b3596f07916104fc9190600401610d5e565b60206040518083038186803b15801561051457600080fd5b505afa158015610528573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054c9190610d1b565b825260a082015115801590610572575060e0820151610572908b9063ffffffff61039c16565b156106a35760068101546040516370a0823160e01b81526001600160a01b03909116906370a08231906105a9908f90600401610d5e565b60206040518083038186803b1580156105c157600080fd5b505afa1580156105d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f99190610d1b565b604083018190526020830151835160009261061e92916102649163ffffffff6108fb16565b610120840151909150610637908263ffffffff610a3316565b61012084015260a08301516106699061065790839063ffffffff6108fb16565b6101808501519063ffffffff610a3316565b61018084015260c083015161069b9061068990839063ffffffff6108fb16565b6101a08501519063ffffffff610a3316565b6101a0840152505b60e08201516106b9908b9063ffffffff610a5816565b1561082f5760078101546040516370a0823160e01b81526001600160a01b03909116906370a08231906106f0908f90600401610d5e565b60206040518083038186803b15801561070857600080fd5b505afa15801561071c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107409190610d1b565b8260600181815250506107f08160080160009054906101000a90046001600160a01b03166001600160a01b03166370a082318e6040518263ffffffff1660e01b815260040161078f9190610d5e565b60206040518083038186803b1580156107a757600080fd5b505afa1580156107bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107df9190610d1b565b60608401519063ffffffff610a3316565b60608301819052602083015183516108289261081692916102649163ffffffff6108fb16565b6101408401519063ffffffff610a3316565b6101408301525b505b60e0810180516001019052610439565b600081610120015111610855576000610870565b6101208101516101808201516108709163ffffffff61093e16565b6101808201526101208101516108875760006108a2565b6101208101516101a08201516108a29163ffffffff61093e16565b6101a082018190526101208201516101408301516108bf926109c2565b61010082018190526101208201516101408301516101808401516101a090940151919850965091945090925090505b9550955095509550959050565b60008261090a575060006103ae565b8282028284828161091757fe5b041461036d5760405162461bcd60e51b815260040161093590610e07565b60405180910390fd5b600061036d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610a68565b600061036d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a9f565b6000826109d2575060001961036d565b6109f2836109e6868563ffffffff6109fa16565b9063ffffffff610acb16565b949350505050565b600061036d612710610264610a15868663ffffffff6108fb16565b61138890610a33565b511590565b9051600360029092021c16151590565b60008282018381101561036d5760405162461bcd60e51b815260040161093590610dd0565b9051600160029092021c16151590565b60008183610a895760405162461bcd60e51b81526004016109359190610d7d565b506000838581610a9557fe5b0495945050505050565b60008184841115610ac35760405162461bcd60e51b81526004016109359190610d7d565b505050900390565b6000600282046109f283610264610aea87670de0b6b3a76400006108fb565b849063ffffffff610a3316565b604051806101600160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581525090565b60405180610260016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160006001600160a01b031681526020016000151581526020016000151581525090565b80356001600160a01b03811681146103ae57600080fd5b600080600080600080600080888a0360e0811215610c27578485fd5b8935610c3281610e51565b985060208a0135610c4281610e51565b975060408a0135965060608a013595506020607f1982011215610c63578485fd5b5060808901935060a089013567ffffffffffffffff80821115610c84578485fd5b818b018c601f820112610c95578586fd5b8035925081831115610ca5578586fd5b8c60208085028301011115610cb8578586fd5b6020019450909250610ccf90508a60c08b01610bf4565b90509295985092959890939650565b600060208284031215610cef578081fd5b6040516020810181811067ffffffffffffffff82111715610d0e578283fd5b6040529135825250919050565b600060208284031215610d2c578081fd5b5051919050565b600080600060608486031215610d47578283fd5b505081359360208301359350604090920135919050565b6001600160a01b0391909116815260200190565b901515815260200190565b6000602080835283518082850152825b81811015610da957858101830151858201604001528201610d8d565b81811115610dba5783604083870101525b50601f01601f1916929092016040019392505050565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b90815260200190565b6001600160a01b0381168114610e6657600080fd5b5056fea2646970667358221220ce4e5e6d7f13f869e006f22bbfb5575047622e372ebb41d9403b06a3854a6a4564736f6c63430006080033"; diff --git a/types/LendingPoolConfiguratorFactory.ts b/types/LendingPoolConfiguratorFactory.ts index 7d323438..e08c8b97 100644 --- a/types/LendingPoolConfiguratorFactory.ts +++ b/types/LendingPoolConfiguratorFactory.ts @@ -645,4 +645,4 @@ const _abi = [ ]; const _bytecode = - "0x60806040526000805534801561001457600080fd5b5061351d806100246000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c806380e17d87116100ad578063c4d66de811610071578063c4d66de814610252578063e8ae2f5b14610265578063eede87c114610278578063ef1f93731461028b578063f53a25151461029e5761012c565b806380e17d87146101fe578063a5bc826c14610206578063a8dc0f4514610219578063b75d6f341461022c578063bf3441831461023f5761012c565b80636fd435ac116100f45780636fd435ac1461019d57806372f46aaa146101b05780637aca76eb146101c35780637af635a6146101d65780637cadffd9146101eb5761012c565b80630e30428d1461013157806316f0115b146101465780631d2118f9146101645780633e72a4541461017757806366bbd9281461018a575b600080fd5b61014461013f3660046126d3565b6102b1565b005b61014e610499565b60405161015b919061289c565b60405180910390f35b6101446101723660046125e4565b6104a8565b6101446101853660046125a5565b6105eb565b6101446101983660046126d3565b61088f565b6101446101ab36600461261c565b610a61565b6101446101be3660046126d3565b610ea0565b6101446101d13660046125a5565b611072565b6101de61124c565b60405161015b9190612a46565b6101446101f93660046126d3565b611251565b61014e611423565b6101446102143660046126fe565b611432565b6101446102273660046125a5565b61163f565b61014461023a3660046125a5565b611819565b61014461024d3660046125a5565b6119f3565b6101446102603660046125a5565b611bcd565b6101446102733660046125a5565b611cff565b6101446102863660046126a2565b611ed9565b6101446102993660046125a5565b6120bc565b6101446102ac3660046125a5565b612296565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156102f557600080fd5b505afa158015610309573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032d91906125c8565b6001600160a01b03161461035c5760405162461bcd60e51b815260040161035390612965565b60405180910390fd5b610364612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061039490869060040161289c565b60206040518083038186803b1580156103ac57600080fd5b505afa1580156103c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103e491906127c4565b90506103f6818363ffffffff61247016565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916104299187919060040161294c565b600060405180830381600087803b15801561044357600080fd5b505af1158015610457573d6000803e3d6000fd5b505050507f437dd3b61b7c7eee7fc70515c8846482dfca92e2e1e02af5d638c5d4878d6714838360405161048c92919061294c565b60405180910390a1505050565b6035546001600160a01b031681565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156104ec57600080fd5b505afa158015610500573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052491906125c8565b6001600160a01b03161461054a5760405162461bcd60e51b815260040161035390612965565b603554604051631d2118f960e01b81526001600160a01b0390911690631d2118f99061057c90859085906004016128b0565b600060405180830381600087803b15801561059657600080fd5b505af11580156105aa573d6000803e3d6000fd5b505050507f5644b64ebb0ce18c4032248ca52f58355469092ff072866c3dcd8640e817d6a582826040516105df9291906128b0565b60405180910390a15050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561062f57600080fd5b505afa158015610643573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066791906125c8565b6001600160a01b03161461068d5760405162461bcd60e51b815260040161035390612965565b6035546040516335ea6a7560e01b8152600091829182916001600160a01b0316906335ea6a75906106c290879060040161289c565b6101406040518083038186803b1580156106db57600080fd5b505afa1580156106ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071391906127e9565b5050505050505092509250925082600014801561072e575081155b8015610738575080155b6107545760405162461bcd60e51b8152600401610353906129fc565b61075c612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061078c90889060040161289c565b60206040518083038186803b1580156107a457600080fd5b505afa1580156107b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107dc91906127c4565b90506107ef81600063ffffffff61248716565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916108229189919060040161294c565b600060405180830381600087803b15801561083c57600080fd5b505af1158015610850573d6000803e3d6000fd5b50506040516001600160a01b03881692507f6f60cf8bd0f218cabe1ea3150bd07b0b758c35c4cfdf7138017a283e65564d5e9150600090a25050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156108d357600080fd5b505afa1580156108e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090b91906125c8565b6001600160a01b0316146109315760405162461bcd60e51b815260040161035390612965565b610939612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061096990869060040161289c565b60206040518083038186803b15801561098157600080fd5b505afa158015610995573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b991906127c4565b90506109cb818363ffffffff6124b416565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916109fe9187919060040161294c565b600060405180830381600087803b158015610a1857600080fd5b505af1158015610a2c573d6000803e3d6000fd5b505050507f2e73b7f1df792712003e6859f940c1e8711c3f1329474771fee71d2ec1163129838360405161048c92919061294c565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015610aa557600080fd5b505afa158015610ab9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610add91906125c8565b6001600160a01b031614610b035760405162461bcd60e51b815260040161035390612965565b6000604051610b1190612598565b604051809103906000f080158015610b2d573d6000803e3d6000fd5b509050606083876001600160a01b03166306fdde036040518163ffffffff1660e01b815260040160006040518083038186803b158015610b6c57600080fd5b505afa158015610b80573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ba89190810190612738565b886001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b158015610be157600080fd5b505afa158015610bf5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610c1d9190810190612738565b604051602401610c2f93929190612a65565b60408051601f198184030181529181526020820180516001600160e01b031663188c392760e11b1790525163cf7a1d7760e01b81529091506001600160a01b0383169063cf7a1d7790610c8a908a90309086906004016128fc565b600060405180830381600087803b158015610ca457600080fd5b505af1158015610cb8573d6000803e3d6000fd5b5050603554604051633d38474960e11b81526001600160a01b039091169250637a708e929150610cf4908b9086908b908b908a906004016128ca565b600060405180830381600087803b158015610d0e57600080fd5b505af1158015610d22573d6000803e3d6000fd5b50505050610d2e612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790610d5e908c9060040161289c565b60206040518083038186803b158015610d7657600080fd5b505afa158015610d8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dae91906127c4565b9050610dc38160ff871663ffffffff6124b416565b610dd481600163ffffffff61248716565b610de581600063ffffffff6124cb16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691610e18918d919060040161294c565b600060405180830381600087803b158015610e3257600080fd5b505af1158015610e46573d6000803e3d6000fd5b50505050826001600160a01b0316896001600160a01b03167f1d9fcd0dc935b4778d5af97f55c4d7b2553257382f1ef25c412114c8eeebd88e86604051610e8d919061289c565b60405180910390a3505050505050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015610ee457600080fd5b505afa158015610ef8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f1c91906125c8565b6001600160a01b031614610f425760405162461bcd60e51b815260040161035390612965565b610f4a612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790610f7a90869060040161289c565b60206040518083038186803b158015610f9257600080fd5b505afa158015610fa6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fca91906127c4565b9050610fdc818363ffffffff6124f816565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d292769161100f9187919060040161294c565b600060405180830381600087803b15801561102957600080fd5b505af115801561103d573d6000803e3d6000fd5b505050507fda47540c7f7fd5a68c3285f3bb708f322424f948f41df6f51622fa24b3968664838360405161048c92919061294c565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156110b657600080fd5b505afa1580156110ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ee91906125c8565b6001600160a01b0316146111145760405162461bcd60e51b815260040161035390612965565b61111c612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061114c90859060040161289c565b60206040518083038186803b15801561116457600080fd5b505afa158015611178573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061119c91906127c4565b90506111af81600163ffffffff6124cb16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916111e29186919060040161294c565b600060405180830381600087803b1580156111fc57600080fd5b505af1158015611210573d6000803e3d6000fd5b50506040516001600160a01b03851692507fda5cdb66c77023db6abe5226a4d4a40c3b8e768012f4ff4e446f62f60127fc569150600090a25050565b600381565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561129557600080fd5b505afa1580156112a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112cd91906125c8565b6001600160a01b0316146112f35760405162461bcd60e51b815260040161035390612965565b6112fb612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061132b90869060040161289c565b60206040518083038186803b15801561134357600080fd5b505afa158015611357573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061137b91906127c4565b905061138d818363ffffffff61250916565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916113c09187919060040161294c565b600060405180830381600087803b1580156113da57600080fd5b505af11580156113ee573d6000803e3d6000fd5b505050507fe3ba662f7011e701056a43e8cf832242322eeff01453e7a72d01ec2af36d9aec838360405161048c92919061294c565b6034546001600160a01b031681565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561147657600080fd5b505afa15801561148a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ae91906125c8565b6001600160a01b0316146114d45760405162461bcd60e51b815260040161035390612965565b6114dc612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061150c90889060040161289c565b60206040518083038186803b15801561152457600080fd5b505afa158015611538573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155c91906127c4565b905061156e818563ffffffff6124f816565b61157e818463ffffffff61247016565b61158e818363ffffffff61250916565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916115c19189919060040161294c565b600060405180830381600087803b1580156115db57600080fd5b505af11580156115ef573d6000803e3d6000fd5b50505050846001600160a01b03167fdfe62f53e7707d64f99bca15d2bdf3facc4074bc047e7dec2ea130300e99274485858560405161163093929190612a4f565b60405180910390a25050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561168357600080fd5b505afa158015611697573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116bb91906125c8565b6001600160a01b0316146116e15760405162461bcd60e51b815260040161035390612965565b6116e9612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061171990859060040161289c565b60206040518083038186803b15801561173157600080fd5b505afa158015611745573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061176991906127c4565b905061177c81600063ffffffff61252016565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916117af9186919060040161294c565b600060405180830381600087803b1580156117c957600080fd5b505af11580156117dd573d6000803e3d6000fd5b50506040516001600160a01b03851692507fe9a7e5fd4fc8ea18e602350324bf48e8f05d12434af0ce0be05743e6a5fdcb9e9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561185d57600080fd5b505afa158015611871573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189591906125c8565b6001600160a01b0316146118bb5760405162461bcd60e51b815260040161035390612965565b6118c3612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f7906118f390859060040161289c565b60206040518083038186803b15801561190b57600080fd5b505afa15801561191f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061194391906127c4565b905061195681600163ffffffff61248716565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916119899186919060040161294c565b600060405180830381600087803b1580156119a357600080fd5b505af11580156119b7573d6000803e3d6000fd5b50506040516001600160a01b03851692507f35b80cd8ea3440e9a8454f116fa658b858da1b64c86c48451f4559cefcdfb56c9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015611a3757600080fd5b505afa158015611a4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a6f91906125c8565b6001600160a01b031614611a955760405162461bcd60e51b815260040161035390612965565b611a9d612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790611acd90859060040161289c565b60206040518083038186803b158015611ae557600080fd5b505afa158015611af9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b1d91906127c4565b9050611b3081600163ffffffff61254d16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691611b639186919060040161294c565b600060405180830381600087803b158015611b7d57600080fd5b505af1158015611b91573d6000803e3d6000fd5b50506040516001600160a01b03851692507f8dee2b2f3e98319ae6347eda521788f73f4086c9be9a594942b370b137fb8cb19150600090a25050565b6000611bd761257a565b60015490915060ff1680611bee5750611bee61257f565b80611bfa575060005481115b611c165760405162461bcd60e51b8152600401610353906129ae565b60015460ff16158015611c35576001805460ff19168117905560008290555b603480546001600160a01b0319166001600160a01b03858116919091179182905560408051630261bf8b60e01b815290519290911691630261bf8b91600480820192602092909190829003018186803b158015611c9157600080fd5b505afa158015611ca5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cc991906125c8565b603580546001600160a01b0319166001600160a01b03929092169190911790558015611cfa576001805460ff191690555b505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015611d4357600080fd5b505afa158015611d57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d7b91906125c8565b6001600160a01b031614611da15760405162461bcd60e51b815260040161035390612965565b611da9612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790611dd990859060040161289c565b60206040518083038186803b158015611df157600080fd5b505afa158015611e05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e2991906127c4565b9050611e3c81600063ffffffff6124f816565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691611e6f9186919060040161294c565b600060405180830381600087803b158015611e8957600080fd5b505af1158015611e9d573d6000803e3d6000fd5b50506040516001600160a01b03851692507f9cc75e4cafc9a556a369bc53468649075680eb554d225d5918f199453824796d9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015611f1d57600080fd5b505afa158015611f31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f5591906125c8565b6001600160a01b031614611f7b5760405162461bcd60e51b815260040161035390612965565b611f83612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790611fb390869060040161289c565b60206040518083038186803b158015611fcb57600080fd5b505afa158015611fdf573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061200391906127c4565b905061201681600163ffffffff61252016565b612026818363ffffffff61254d16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916120599187919060040161294c565b600060405180830381600087803b15801561207357600080fd5b505af1158015612087573d6000803e3d6000fd5b505050507fab2f7f9e5ca2772fafa94f355c1842a80ae6b9e41f83083098d81f67d7a0b508838360405161048c929190612931565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561210057600080fd5b505afa158015612114573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061213891906125c8565b6001600160a01b03161461215e5760405162461bcd60e51b815260040161035390612965565b612166612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061219690859060040161289c565b60206040518083038186803b1580156121ae57600080fd5b505afa1580156121c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121e691906127c4565b90506121f981600063ffffffff6124cb16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d292769161222c9186919060040161294c565b600060405180830381600087803b15801561224657600080fd5b505af115801561225a573d6000803e3d6000fd5b50506040516001600160a01b03851692507f995959c2ceab6ce20e8cd89c904e449fd3e21918a0f420c9ec9340595585526b9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156122da57600080fd5b505afa1580156122ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061231291906125c8565b6001600160a01b0316146123385760405162461bcd60e51b815260040161035390612965565b612340612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061237090859060040161289c565b60206040518083038186803b15801561238857600080fd5b505afa15801561239c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123c091906127c4565b90506123d381600063ffffffff61254d16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916124069186919060040161294c565b600060405180830381600087803b15801561242057600080fd5b505af1158015612434573d6000803e3d6000fd5b50506040516001600160a01b03851692507f8bbf35441ac2c607ddecadd3d8ee58636d32f217fad201fb2655581502dd84e39150600090a25050565b8151670fffffff0000ffff1660109190911b179052565b603881612495576000612498565b60015b8351670effffffffffffff1660ff9190911690911b1790915250565b8151670f00ffffffffffff1660309190911b179052565b6039816124d95760006124dc565b60015b8351670dffffffffffffff1660ff9190911690911b1790915250565b8151670fffffffffff000016179052565b8151670fff0000ffffffff1660209190911b179052565b603a8161252e576000612531565b60015b8351670bffffffffffffff1660ff9190911690911b1790915250565b603b8161255b57600061255e565b60015b83516707ffffffffffffff1660ff9190911690911b1790915250565b600390565b303b1590565b6040518060200160405280600081525090565b6109db80612b0d83390190565b6000602082840312156125b6578081fd5b81356125c181612af4565b9392505050565b6000602082840312156125d9578081fd5b81516125c181612af4565b600080604083850312156125f6578081fd5b823561260181612af4565b9150602083013561261181612af4565b809150509250929050565b60008060008060008060c08789031215612634578182fd5b863561263f81612af4565b9550602087013561264f81612af4565b9450604087013561265f81612af4565b9350606087013561266f81612af4565b9250608087013560ff81168114612684578283fd5b915060a087013561269481612af4565b809150509295509295509295565b600080604083850312156126b4578182fd5b82356126bf81612af4565b915060208301358015158114612611578182fd5b600080604083850312156126e5578182fd5b82356126f081612af4565b946020939093013593505050565b60008060008060808587031215612713578384fd5b843561271e81612af4565b966020860135965060408601359560600135945092505050565b600060208284031215612749578081fd5b815167ffffffffffffffff80821115612760578283fd5b81840185601f820112612771578384fd5b8051925081831115612781578384fd5b612794601f8401601f1916602001612a9d565b91508282528560208483010111156127aa578384fd5b6127bb836020840160208401612ac4565b50949350505050565b6000602082840312156127d5578081fd5b6127df6020612a9d565b9151825250919050565b6000806000806000806000806000806101408b8d031215612808578384fd5b8a51995060208b0151985060408b0151975060608b0151965060808b0151955060a08b0151945060c08b0151935060e08b015192506101008b015191506101208b015164ffffffffff8116811461285d578182fd5b809150509295989b9194979a5092959850565b60008151808452612888816020860160208601612ac4565b601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b0395861681529385166020850152918416604084015283166060830152909116608082015260a00190565b6001600160a01b0384811682528316602082015260606040820181905260009061292890830184612870565b95945050505050565b6001600160a01b039290921682521515602082015260400190565b6001600160a01b03929092168252602082015260400190565b60208082526029908201527f5468652063616c6c6572206d7573742062652061206c656e64696e6720706f6f604082015268361036b0b730b3b2b960b91b606082015260800190565b6020808252602e908201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560408201526d195b881a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602a908201527f546865206c6971756964697479206f66207468652072657365727665206e65656040820152690647320746f20626520360b41b606082015260800190565b90815260200190565b9283526020830191909152604082015260600190565b600060ff8516825260606020830152612a816060830185612870565b8281036040840152612a938185612870565b9695505050505050565b60405181810167ffffffffffffffff81118282101715612abc57600080fd5b604052919050565b60005b83811015612adf578181015183820152602001612ac7565b83811115612aee576000848401525b50505050565b6001600160a01b0381168114612b0957600080fd5b5056fe608060405234801561001057600080fd5b506109bb806100206000396000f3fe6080604052600436106100705760003560e01c80638f2839701161004e5780638f2839701461015e578063cf7a1d7714610191578063d1f5789414610250578063f851a4401461030657610070565b80633659cfe61461007a5780634f1ef286146100ad5780635c60da1b1461012d575b61007861031b565b005b34801561008657600080fd5b506100786004803603602081101561009d57600080fd5b50356001600160a01b0316610335565b610078600480360360408110156100c357600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100ee57600080fd5b82018360208201111561010057600080fd5b8035906020019184600183028401116401000000008311171561012257600080fd5b50909250905061036f565b34801561013957600080fd5b5061014261041c565b604080516001600160a01b039092168252519081900360200190f35b34801561016a57600080fd5b506100786004803603602081101561018157600080fd5b50356001600160a01b0316610459565b610078600480360360608110156101a757600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101db57600080fd5b8201836020820111156101ed57600080fd5b8035906020019184600183028401116401000000008311171561020f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610513945050505050565b6100786004803603604081101561026657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561029157600080fd5b8201836020820111156102a357600080fd5b803590602001918460018302840111640100000000831117156102c557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610599945050505050565b34801561031257600080fd5b506101426106d9565b610323610704565b61033361032e61070c565b610731565b565b61033d610755565b6001600160a01b0316336001600160a01b031614156103645761035f8161077a565b61036c565b61036c61031b565b50565b610377610755565b6001600160a01b0316336001600160a01b0316141561040f576103998361077a565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b505090508061040957600080fd5b50610417565b61041761031b565b505050565b6000610426610755565b6001600160a01b0316336001600160a01b0316141561044e5761044761070c565b9050610456565b61045661031b565b90565b610461610755565b6001600160a01b0316336001600160a01b03161415610364576001600160a01b0381166104bf5760405162461bcd60e51b81526004018080602001828103825260368152602001806109156036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104e8610755565b604080516001600160a01b03928316815291841660208301528051918290030190a161035f816107ba565b600061051d61070c565b6001600160a01b03161461053057600080fd5b61053a8382610599565b604080517232b4b8189c9b1b97383937bc3c9730b236b4b760691b815290519081900360130190207fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036000199091011461059057fe5b610417826107ba565b60006105a361070c565b6001600160a01b0316146105b657600080fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6000199091011461061657fe5b61061f826107de565b8051156106d5576000826001600160a01b0316826040518082805190602001908083835b602083106106625780518252601f199092019160209182019101610643565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146106c2576040519150601f19603f3d011682016040523d82523d6000602084013e6106c7565b606091505b505090508061041757600080fd5b5050565b60006106e3610755565b6001600160a01b0316336001600160a01b0316141561044e57610447610755565b610333610846565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e808015610750573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b610783816107de565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b6107e7816108a6565b6108225760405162461bcd60e51b815260040180806020018281038252603b81526020018061094b603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b61084e610755565b6001600160a01b0316336001600160a01b0316141561089e5760405162461bcd60e51b81526004018080602001828103825260328152602001806108e36032913960400191505060405180910390fd5b610333610333565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906108da57508115155b94935050505056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212205332daad1efa09e03cc1b95b9d51cadb3cf32e2d57907a628c0b4a5a20d8051f64736f6c63430006080033a2646970667358221220175beb956da19651610e3d1749256ae09a118f4ee4d7614bc6641626ac8a3ed464736f6c63430006080033"; + "0x60806040526000805534801561001457600080fd5b5061351d806100246000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c806380e17d87116100ad578063c4d66de811610071578063c4d66de814610252578063e8ae2f5b14610265578063eede87c114610278578063ef1f93731461028b578063f53a25151461029e5761012c565b806380e17d87146101fe578063a5bc826c14610206578063a8dc0f4514610219578063b75d6f341461022c578063bf3441831461023f5761012c565b80636fd435ac116100f45780636fd435ac1461019d57806372f46aaa146101b05780637aca76eb146101c35780637af635a6146101d65780637cadffd9146101eb5761012c565b80630e30428d1461013157806316f0115b146101465780631d2118f9146101645780633e72a4541461017757806366bbd9281461018a575b600080fd5b61014461013f3660046126d3565b6102b1565b005b61014e610499565b60405161015b919061289c565b60405180910390f35b6101446101723660046125e4565b6104a8565b6101446101853660046125a5565b6105eb565b6101446101983660046126d3565b61088f565b6101446101ab36600461261c565b610a61565b6101446101be3660046126d3565b610ea0565b6101446101d13660046125a5565b611072565b6101de61124c565b60405161015b9190612a46565b6101446101f93660046126d3565b611251565b61014e611423565b6101446102143660046126fe565b611432565b6101446102273660046125a5565b61163f565b61014461023a3660046125a5565b611819565b61014461024d3660046125a5565b6119f3565b6101446102603660046125a5565b611bcd565b6101446102733660046125a5565b611cff565b6101446102863660046126a2565b611ed9565b6101446102993660046125a5565b6120bc565b6101446102ac3660046125a5565b612296565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156102f557600080fd5b505afa158015610309573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032d91906125c8565b6001600160a01b03161461035c5760405162461bcd60e51b815260040161035390612965565b60405180910390fd5b610364612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061039490869060040161289c565b60206040518083038186803b1580156103ac57600080fd5b505afa1580156103c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103e491906127c4565b90506103f6818363ffffffff61247016565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916104299187919060040161294c565b600060405180830381600087803b15801561044357600080fd5b505af1158015610457573d6000803e3d6000fd5b505050507f437dd3b61b7c7eee7fc70515c8846482dfca92e2e1e02af5d638c5d4878d6714838360405161048c92919061294c565b60405180910390a1505050565b6035546001600160a01b031681565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156104ec57600080fd5b505afa158015610500573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052491906125c8565b6001600160a01b03161461054a5760405162461bcd60e51b815260040161035390612965565b603554604051631d2118f960e01b81526001600160a01b0390911690631d2118f99061057c90859085906004016128b0565b600060405180830381600087803b15801561059657600080fd5b505af11580156105aa573d6000803e3d6000fd5b505050507f5644b64ebb0ce18c4032248ca52f58355469092ff072866c3dcd8640e817d6a582826040516105df9291906128b0565b60405180910390a15050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561062f57600080fd5b505afa158015610643573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066791906125c8565b6001600160a01b03161461068d5760405162461bcd60e51b815260040161035390612965565b6035546040516335ea6a7560e01b8152600091829182916001600160a01b0316906335ea6a75906106c290879060040161289c565b6101406040518083038186803b1580156106db57600080fd5b505afa1580156106ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071391906127e9565b5050505050505092509250925082600014801561072e575081155b8015610738575080155b6107545760405162461bcd60e51b8152600401610353906129fc565b61075c612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061078c90889060040161289c565b60206040518083038186803b1580156107a457600080fd5b505afa1580156107b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107dc91906127c4565b90506107ef81600063ffffffff61248716565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916108229189919060040161294c565b600060405180830381600087803b15801561083c57600080fd5b505af1158015610850573d6000803e3d6000fd5b50506040516001600160a01b03881692507f6f60cf8bd0f218cabe1ea3150bd07b0b758c35c4cfdf7138017a283e65564d5e9150600090a25050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156108d357600080fd5b505afa1580156108e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090b91906125c8565b6001600160a01b0316146109315760405162461bcd60e51b815260040161035390612965565b610939612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061096990869060040161289c565b60206040518083038186803b15801561098157600080fd5b505afa158015610995573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b991906127c4565b90506109cb818363ffffffff6124b416565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916109fe9187919060040161294c565b600060405180830381600087803b158015610a1857600080fd5b505af1158015610a2c573d6000803e3d6000fd5b505050507f2e73b7f1df792712003e6859f940c1e8711c3f1329474771fee71d2ec1163129838360405161048c92919061294c565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015610aa557600080fd5b505afa158015610ab9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610add91906125c8565b6001600160a01b031614610b035760405162461bcd60e51b815260040161035390612965565b6000604051610b1190612598565b604051809103906000f080158015610b2d573d6000803e3d6000fd5b509050606083876001600160a01b03166306fdde036040518163ffffffff1660e01b815260040160006040518083038186803b158015610b6c57600080fd5b505afa158015610b80573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ba89190810190612738565b886001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b158015610be157600080fd5b505afa158015610bf5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610c1d9190810190612738565b604051602401610c2f93929190612a65565b60408051601f198184030181529181526020820180516001600160e01b031663188c392760e11b1790525163cf7a1d7760e01b81529091506001600160a01b0383169063cf7a1d7790610c8a908a90309086906004016128fc565b600060405180830381600087803b158015610ca457600080fd5b505af1158015610cb8573d6000803e3d6000fd5b5050603554604051633d38474960e11b81526001600160a01b039091169250637a708e929150610cf4908b9086908b908b908a906004016128ca565b600060405180830381600087803b158015610d0e57600080fd5b505af1158015610d22573d6000803e3d6000fd5b50505050610d2e612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790610d5e908c9060040161289c565b60206040518083038186803b158015610d7657600080fd5b505afa158015610d8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dae91906127c4565b9050610dc38160ff871663ffffffff6124b416565b610dd481600163ffffffff61248716565b610de581600063ffffffff6124cb16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691610e18918d919060040161294c565b600060405180830381600087803b158015610e3257600080fd5b505af1158015610e46573d6000803e3d6000fd5b50505050826001600160a01b0316896001600160a01b03167f1d9fcd0dc935b4778d5af97f55c4d7b2553257382f1ef25c412114c8eeebd88e86604051610e8d919061289c565b60405180910390a3505050505050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015610ee457600080fd5b505afa158015610ef8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f1c91906125c8565b6001600160a01b031614610f425760405162461bcd60e51b815260040161035390612965565b610f4a612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790610f7a90869060040161289c565b60206040518083038186803b158015610f9257600080fd5b505afa158015610fa6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fca91906127c4565b9050610fdc818363ffffffff6124f816565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d292769161100f9187919060040161294c565b600060405180830381600087803b15801561102957600080fd5b505af115801561103d573d6000803e3d6000fd5b505050507fda47540c7f7fd5a68c3285f3bb708f322424f948f41df6f51622fa24b3968664838360405161048c92919061294c565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156110b657600080fd5b505afa1580156110ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ee91906125c8565b6001600160a01b0316146111145760405162461bcd60e51b815260040161035390612965565b61111c612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061114c90859060040161289c565b60206040518083038186803b15801561116457600080fd5b505afa158015611178573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061119c91906127c4565b90506111af81600163ffffffff6124cb16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916111e29186919060040161294c565b600060405180830381600087803b1580156111fc57600080fd5b505af1158015611210573d6000803e3d6000fd5b50506040516001600160a01b03851692507fda5cdb66c77023db6abe5226a4d4a40c3b8e768012f4ff4e446f62f60127fc569150600090a25050565b600381565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561129557600080fd5b505afa1580156112a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112cd91906125c8565b6001600160a01b0316146112f35760405162461bcd60e51b815260040161035390612965565b6112fb612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061132b90869060040161289c565b60206040518083038186803b15801561134357600080fd5b505afa158015611357573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061137b91906127c4565b905061138d818363ffffffff61250916565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916113c09187919060040161294c565b600060405180830381600087803b1580156113da57600080fd5b505af11580156113ee573d6000803e3d6000fd5b505050507fe3ba662f7011e701056a43e8cf832242322eeff01453e7a72d01ec2af36d9aec838360405161048c92919061294c565b6034546001600160a01b031681565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561147657600080fd5b505afa15801561148a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ae91906125c8565b6001600160a01b0316146114d45760405162461bcd60e51b815260040161035390612965565b6114dc612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061150c90889060040161289c565b60206040518083038186803b15801561152457600080fd5b505afa158015611538573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155c91906127c4565b905061156e818563ffffffff6124f816565b61157e818463ffffffff61247016565b61158e818363ffffffff61250916565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916115c19189919060040161294c565b600060405180830381600087803b1580156115db57600080fd5b505af11580156115ef573d6000803e3d6000fd5b50505050846001600160a01b03167fdfe62f53e7707d64f99bca15d2bdf3facc4074bc047e7dec2ea130300e99274485858560405161163093929190612a4f565b60405180910390a25050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561168357600080fd5b505afa158015611697573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116bb91906125c8565b6001600160a01b0316146116e15760405162461bcd60e51b815260040161035390612965565b6116e9612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061171990859060040161289c565b60206040518083038186803b15801561173157600080fd5b505afa158015611745573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061176991906127c4565b905061177c81600063ffffffff61252016565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916117af9186919060040161294c565b600060405180830381600087803b1580156117c957600080fd5b505af11580156117dd573d6000803e3d6000fd5b50506040516001600160a01b03851692507fe9a7e5fd4fc8ea18e602350324bf48e8f05d12434af0ce0be05743e6a5fdcb9e9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561185d57600080fd5b505afa158015611871573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189591906125c8565b6001600160a01b0316146118bb5760405162461bcd60e51b815260040161035390612965565b6118c3612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f7906118f390859060040161289c565b60206040518083038186803b15801561190b57600080fd5b505afa15801561191f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061194391906127c4565b905061195681600163ffffffff61248716565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916119899186919060040161294c565b600060405180830381600087803b1580156119a357600080fd5b505af11580156119b7573d6000803e3d6000fd5b50506040516001600160a01b03851692507f35b80cd8ea3440e9a8454f116fa658b858da1b64c86c48451f4559cefcdfb56c9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015611a3757600080fd5b505afa158015611a4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a6f91906125c8565b6001600160a01b031614611a955760405162461bcd60e51b815260040161035390612965565b611a9d612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790611acd90859060040161289c565b60206040518083038186803b158015611ae557600080fd5b505afa158015611af9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b1d91906127c4565b9050611b3081600163ffffffff61254d16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691611b639186919060040161294c565b600060405180830381600087803b158015611b7d57600080fd5b505af1158015611b91573d6000803e3d6000fd5b50506040516001600160a01b03851692507f8dee2b2f3e98319ae6347eda521788f73f4086c9be9a594942b370b137fb8cb19150600090a25050565b6000611bd761257a565b60015490915060ff1680611bee5750611bee61257f565b80611bfa575060005481115b611c165760405162461bcd60e51b8152600401610353906129ae565b60015460ff16158015611c35576001805460ff19168117905560008290555b603480546001600160a01b0319166001600160a01b03858116919091179182905560408051630261bf8b60e01b815290519290911691630261bf8b91600480820192602092909190829003018186803b158015611c9157600080fd5b505afa158015611ca5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cc991906125c8565b603580546001600160a01b0319166001600160a01b03929092169190911790558015611cfa576001805460ff191690555b505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015611d4357600080fd5b505afa158015611d57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d7b91906125c8565b6001600160a01b031614611da15760405162461bcd60e51b815260040161035390612965565b611da9612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790611dd990859060040161289c565b60206040518083038186803b158015611df157600080fd5b505afa158015611e05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e2991906127c4565b9050611e3c81600063ffffffff6124f816565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691611e6f9186919060040161294c565b600060405180830381600087803b158015611e8957600080fd5b505af1158015611e9d573d6000803e3d6000fd5b50506040516001600160a01b03851692507f9cc75e4cafc9a556a369bc53468649075680eb554d225d5918f199453824796d9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015611f1d57600080fd5b505afa158015611f31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f5591906125c8565b6001600160a01b031614611f7b5760405162461bcd60e51b815260040161035390612965565b611f83612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790611fb390869060040161289c565b60206040518083038186803b158015611fcb57600080fd5b505afa158015611fdf573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061200391906127c4565b905061201681600163ffffffff61252016565b612026818363ffffffff61254d16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916120599187919060040161294c565b600060405180830381600087803b15801561207357600080fd5b505af1158015612087573d6000803e3d6000fd5b505050507fab2f7f9e5ca2772fafa94f355c1842a80ae6b9e41f83083098d81f67d7a0b508838360405161048c929190612931565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561210057600080fd5b505afa158015612114573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061213891906125c8565b6001600160a01b03161461215e5760405162461bcd60e51b815260040161035390612965565b612166612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061219690859060040161289c565b60206040518083038186803b1580156121ae57600080fd5b505afa1580156121c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121e691906127c4565b90506121f981600063ffffffff6124cb16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d292769161222c9186919060040161294c565b600060405180830381600087803b15801561224657600080fd5b505af115801561225a573d6000803e3d6000fd5b50506040516001600160a01b03851692507f995959c2ceab6ce20e8cd89c904e449fd3e21918a0f420c9ec9340595585526b9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156122da57600080fd5b505afa1580156122ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061231291906125c8565b6001600160a01b0316146123385760405162461bcd60e51b815260040161035390612965565b612340612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061237090859060040161289c565b60206040518083038186803b15801561238857600080fd5b505afa15801561239c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123c091906127c4565b90506123d381600063ffffffff61254d16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916124069186919060040161294c565b600060405180830381600087803b15801561242057600080fd5b505af1158015612434573d6000803e3d6000fd5b50506040516001600160a01b03851692507f8bbf35441ac2c607ddecadd3d8ee58636d32f217fad201fb2655581502dd84e39150600090a25050565b8151670fffffff0000ffff1660109190911b179052565b603881612495576000612498565b60015b8351670effffffffffffff1660ff9190911690911b1790915250565b8151670f00ffffffffffff1660309190911b179052565b6039816124d95760006124dc565b60015b8351670dffffffffffffff1660ff9190911690911b1790915250565b8151670fffffffffff000016179052565b8151670fff0000ffffffff1660209190911b179052565b603a8161252e576000612531565b60015b8351670bffffffffffffff1660ff9190911690911b1790915250565b603b8161255b57600061255e565b60015b83516707ffffffffffffff1660ff9190911690911b1790915250565b600390565b303b1590565b6040518060200160405280600081525090565b6109db80612b0d83390190565b6000602082840312156125b6578081fd5b81356125c181612af4565b9392505050565b6000602082840312156125d9578081fd5b81516125c181612af4565b600080604083850312156125f6578081fd5b823561260181612af4565b9150602083013561261181612af4565b809150509250929050565b60008060008060008060c08789031215612634578182fd5b863561263f81612af4565b9550602087013561264f81612af4565b9450604087013561265f81612af4565b9350606087013561266f81612af4565b9250608087013560ff81168114612684578283fd5b915060a087013561269481612af4565b809150509295509295509295565b600080604083850312156126b4578182fd5b82356126bf81612af4565b915060208301358015158114612611578182fd5b600080604083850312156126e5578182fd5b82356126f081612af4565b946020939093013593505050565b60008060008060808587031215612713578384fd5b843561271e81612af4565b966020860135965060408601359560600135945092505050565b600060208284031215612749578081fd5b815167ffffffffffffffff80821115612760578283fd5b81840185601f820112612771578384fd5b8051925081831115612781578384fd5b612794601f8401601f1916602001612a9d565b91508282528560208483010111156127aa578384fd5b6127bb836020840160208401612ac4565b50949350505050565b6000602082840312156127d5578081fd5b6127df6020612a9d565b9151825250919050565b6000806000806000806000806000806101408b8d031215612808578384fd5b8a51995060208b0151985060408b0151975060608b0151965060808b0151955060a08b0151945060c08b0151935060e08b015192506101008b015191506101208b015164ffffffffff8116811461285d578182fd5b809150509295989b9194979a5092959850565b60008151808452612888816020860160208601612ac4565b601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b0395861681529385166020850152918416604084015283166060830152909116608082015260a00190565b6001600160a01b0384811682528316602082015260606040820181905260009061292890830184612870565b95945050505050565b6001600160a01b039290921682521515602082015260400190565b6001600160a01b03929092168252602082015260400190565b60208082526029908201527f5468652063616c6c6572206d7573742062652061206c656e64696e6720706f6f604082015268361036b0b730b3b2b960b91b606082015260800190565b6020808252602e908201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560408201526d195b881a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602a908201527f546865206c6971756964697479206f66207468652072657365727665206e65656040820152690647320746f20626520360b41b606082015260800190565b90815260200190565b9283526020830191909152604082015260600190565b600060ff8516825260606020830152612a816060830185612870565b8281036040840152612a938185612870565b9695505050505050565b60405181810167ffffffffffffffff81118282101715612abc57600080fd5b604052919050565b60005b83811015612adf578181015183820152602001612ac7565b83811115612aee576000848401525b50505050565b6001600160a01b0381168114612b0957600080fd5b5056fe608060405234801561001057600080fd5b506109bb806100206000396000f3fe6080604052600436106100705760003560e01c80638f2839701161004e5780638f2839701461015e578063cf7a1d7714610191578063d1f5789414610250578063f851a4401461030657610070565b80633659cfe61461007a5780634f1ef286146100ad5780635c60da1b1461012d575b61007861031b565b005b34801561008657600080fd5b506100786004803603602081101561009d57600080fd5b50356001600160a01b0316610335565b610078600480360360408110156100c357600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100ee57600080fd5b82018360208201111561010057600080fd5b8035906020019184600183028401116401000000008311171561012257600080fd5b50909250905061036f565b34801561013957600080fd5b5061014261041c565b604080516001600160a01b039092168252519081900360200190f35b34801561016a57600080fd5b506100786004803603602081101561018157600080fd5b50356001600160a01b0316610459565b610078600480360360608110156101a757600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101db57600080fd5b8201836020820111156101ed57600080fd5b8035906020019184600183028401116401000000008311171561020f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610513945050505050565b6100786004803603604081101561026657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561029157600080fd5b8201836020820111156102a357600080fd5b803590602001918460018302840111640100000000831117156102c557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610599945050505050565b34801561031257600080fd5b506101426106d9565b610323610704565b61033361032e61070c565b610731565b565b61033d610755565b6001600160a01b0316336001600160a01b031614156103645761035f8161077a565b61036c565b61036c61031b565b50565b610377610755565b6001600160a01b0316336001600160a01b0316141561040f576103998361077a565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b505090508061040957600080fd5b50610417565b61041761031b565b505050565b6000610426610755565b6001600160a01b0316336001600160a01b0316141561044e5761044761070c565b9050610456565b61045661031b565b90565b610461610755565b6001600160a01b0316336001600160a01b03161415610364576001600160a01b0381166104bf5760405162461bcd60e51b81526004018080602001828103825260368152602001806109156036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104e8610755565b604080516001600160a01b03928316815291841660208301528051918290030190a161035f816107ba565b600061051d61070c565b6001600160a01b03161461053057600080fd5b61053a8382610599565b604080517232b4b8189c9b1b97383937bc3c9730b236b4b760691b815290519081900360130190207fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036000199091011461059057fe5b610417826107ba565b60006105a361070c565b6001600160a01b0316146105b657600080fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6000199091011461061657fe5b61061f826107de565b8051156106d5576000826001600160a01b0316826040518082805190602001908083835b602083106106625780518252601f199092019160209182019101610643565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146106c2576040519150601f19603f3d011682016040523d82523d6000602084013e6106c7565b606091505b505090508061041757600080fd5b5050565b60006106e3610755565b6001600160a01b0316336001600160a01b0316141561044e57610447610755565b610333610846565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e808015610750573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b610783816107de565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b6107e7816108a6565b6108225760405162461bcd60e51b815260040180806020018281038252603b81526020018061094b603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b61084e610755565b6001600160a01b0316336001600160a01b0316141561089e5760405162461bcd60e51b81526004018080602001828103825260328152602001806108e36032913960400191505060405180910390fd5b610333610333565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906108da57508115155b94935050505056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212205332daad1efa09e03cc1b95b9d51cadb3cf32e2d57907a628c0b4a5a20d8051f64736f6c63430006080033a2646970667358221220ca2a4fcb813ff669e9a07e81a0802c372c70d9723ed71a99cc8fa6e26cc533a764736f6c63430006080033"; diff --git a/types/LendingPoolFactory.ts b/types/LendingPoolFactory.ts index abf9f604..78feabc4 100644 --- a/types/LendingPoolFactory.ts +++ b/types/LendingPoolFactory.ts @@ -1200,7 +1200,7 @@ const _abi = [ ]; const _bytecode = - "0x6080604052600060015534801561001557600080fd5b50600160005561573b806200002b6000396000f3fe60806040526004361061019f5760003560e01c80638afaff02116100ec578063c72c4d101161008a578063d0fc81d211610064578063d0fc81d21461051c578063d15e005314610531578063d2493b6c14610551578063d2d0e06614610580576101d4565b8063c72c4d10146104c7578063c858f5f9146104dc578063cd112382146104fc576101d4565b8063b8d29276116100c6578063b8d2927614610428578063bf92857c14610448578063c44b11f71461047a578063c4d66de8146104a7576101d4565b80638afaff02146103d357806394ba89a2146103e85780639895e3d814610408576101d4565b80633e150141116101595780635a3b74b9116101335780635a3b74b9146103465780635cffe9de1461036657806376e9d615146103865780637a708e92146103b3576101d4565b80633e150141146102d05780634fe7a6e514610306578063573ade8114610333576101d4565b8062a718a9146101d95780630902f1ac146101ec5780631d2118f91461021757806328dd2d011461023757806335ea6a751461026d578063386497fd146102a3576101d4565b366101d4576101ad33610593565b6101d25760405162461bcd60e51b81526004016101c990615245565b60405180910390fd5b005b600080fd5b6101d26101e7366004614913565b6105d1565b3480156101f857600080fd5b506102016107a3565b60405161020e9190614ec4565b60405180910390f35b34801561022357600080fd5b506101d2610232366004614826565b610805565b34801561024357600080fd5b50610257610252366004614826565b6108d8565b60405161020e9a9998979695949392919061560f565b34801561027957600080fd5b5061028d6102883660046147ee565b610b83565b60405161020e9a999897969594939291906155c3565b3480156102af57600080fd5b506102c36102be3660046147ee565b610e22565b60405161020e9190615509565b3480156102dc57600080fd5b506102f06102eb3660046147ee565b610e49565b60405161020e9a99989796959493929190615543565b34801561031257600080fd5b50610326610321366004614b9f565b610f1f565b60405161020e9190614d34565b6101d2610341366004614af6565b610f46565b34801561035257600080fd5b506101d2610361366004614a57565b6112d8565b34801561037257600080fd5b506101d26103813660046149ac565b6114b4565b34801561039257600080fd5b506103a66103a136600461496c565b611918565b60405161020e9190614f11565b3480156103bf57600080fd5b506101d26103ce3660046148a3565b611a62565b3480156103df57600080fd5b506102c3611b9b565b3480156103f457600080fd5b506101d2610403366004614a84565b611ba0565b34801561041457600080fd5b506101d261042336600461485e565b611ea9565b34801561043457600080fd5b506101d2610443366004614a84565b612081565b34801561045457600080fd5b506104686104633660046147ee565b612142565b60405161020e9695949392919061559b565b34801561048657600080fd5b5061049a6104953660046147ee565b6122f3565b60405161020e9190615334565b3480156104b357600080fd5b506101d26104c23660046147ee565b61232a565b3480156104d357600080fd5b5061032661245e565b3480156104e857600080fd5b506101d26104f7366004614b3f565b61246d565b34801561050857600080fd5b506101d2610517366004614826565b612a14565b34801561052857600080fd5b506102c3612d1a565b34801561053d57600080fd5b506102c361054c3660046147ee565b612d20565b34801561055d57600080fd5b5061057161056c3660046147ee565b612d41565b60405161020e93929190614dc7565b6101d261058e366004614aaf565b612d76565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906105c757508115155b925050505b919050565b600260005414156105f45760405162461bcd60e51b81526004016101c9906152fd565b6002600090815560355460408051632c1a75cd60e11b815290516001600160a01b0390921691635834eb9a91600480820192602092909190829003018186803b15801561064057600080fd5b505afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610678919061480a565b905060006060826001600160a01b031688888888886040516024016106a1959493929190614dea565b60408051601f198184030181529181526020820180516001600160e01b031662a718a960e01b179052516106d59190614d15565b600060405180830381855af49150503d8060008114610710576040519150601f19603f3d011682016040523d82523d6000602084013e610715565b606091505b5091509150816107375760405162461bcd60e51b81526004016101c990615144565b600060608280602001905181019061074f9190614bcf565b9150915081600014610792578060405160200161076c9190614d15565b60408051601f198184030181529082905262461bcd60e51b82526101c991600401614f1c565b505060016000555050505050505050565b606060398054806020026020016040519081016040528092919081815260200182805480156107fb57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116107dd575b5050505050905090565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b15801561084957600080fd5b505afa15801561085d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610881919061480a565b6001600160a01b0316146108a75760405162461bcd60e51b81526004016101c99061517b565b6001600160a01b03918216600090815260376020526040902060090180546001600160a01b03191691909216179055565b6001600160a01b03808316600090815260376020526040808220600681015491516370a0823160e01b81529293849384938493849384938493849384938493919216906370a082319061092f908f90600401614d34565b60206040518083038186803b15801561094757600080fd5b505afa15801561095b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097f9190614bb7565b9a5061098b8c82612fcb565b909a50985061099a8c826130df565b6001830154600784015460405163e78c9b3b60e01b8152939b5091995096506001600160a01b03169063e78c9b3b906109d7908f90600401614d34565b60206040518083038186803b1580156109ef57600080fd5b505afa158015610a03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a279190614bb7565b6007820154604051631e739ae360e21b81529197506001600160a01b0316906379ce6b8c90610a5a908f90600401614d34565b60206040518083038186803b158015610a7257600080fd5b505afa158015610a86573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aaa9190614c7e565b60098201546001600160a01b038e16600090815260386020908152604091829020825191820190925290548152919450610aee9190600160d01b900460ff16613198565b6008820154604051633ba641e960e21b81529193506001600160a01b03169063ee9907a490610b21908f90600401614d34565b60206040518083038186803b158015610b3957600080fd5b505afa158015610b4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b719190614bb7565b9350509295989b9194979a5092959850565b600080600080600080600080600080610b9a61465e565b506001600160a01b03808c1660008181526037602090815260409182902082516101a08101845281548152600182015481840152600282015481850152600382015460608201526004820154608082015283519283019093526005810154825260a08301919091526006810154841660c083018190526007820154851660e08401526008820154851661010084015260099091015493841661012083015264ffffffffff600160a01b85041661014083015260ff600160c81b850481161515610160840152600160d01b90940490931661018082015291610c81919063ffffffff6131af16565b8160e001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cbe57600080fd5b505afa158015610cd2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf69190614bb7565b8261010001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610d3457600080fd5b505afa158015610d48573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d6c9190614bb7565b8360200151846040015185606001518660e001516001600160a01b03166390f6fcf26040518163ffffffff1660e01b815260040160206040518083038186803b158015610db857600080fd5b505afa158015610dcc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df09190614bb7565b876000015188608001518961014001519a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b6001600160a01b0381166000908152603760205260408120610e4390613253565b92915050565b6000806000806000806000806000806000603760008d6001600160a01b03166001600160a01b031681526020019081526020016000209050610e8d8160050161328d565b610e998260050161329e565b610ea5836005016132ad565b610eb1846005016132c2565b60098501546001600160a01b0316610ecb6005870161329e565b1515610ed9600588016132d5565b610ee5886005016132e7565b610ef1896005016132f0565b610efd8a600501613302565b9a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b60398181548110610f2c57fe5b6000918252602090912001546001600160a01b0316905081565b60026000541415610f695760405162461bcd60e51b81526004016101c9906152fd565b6002600055610f766146cc565b6001600160a01b0385166000908152603760205260409020610f988382612fcb565b60208401819052818452610fb2919063ffffffff61331416565b60808301526000846002811115610fc557fe5b90506001816002811115610fd557fe5b14610fe4578260200151610fe7565b82515b604084015260001986148015906110015750826040015186105b1561100e57604083018690525b82516020840151604080860151905163152be4bd60e31b815273__$69254465eb8f179ea24caa73cf68b23524$__9363a95f25e89361105b9388938e938e938a938e9334906004016153d5565b60006040518083038186803b15801561107357600080fd5b505af4158015611087573d6000803e3d6000fd5b5050505061109482613339565b60018160028111156110a257fe5b14156111175760078201546040808501519051632770a7eb60e21b81526001600160a01b0390921691639dc29fac916110e091889190600401614d48565b600060405180830381600087803b1580156110fa57600080fd5b505af115801561110e573d6000803e3d6000fd5b50505050611182565b60088201546040808501519051632770a7eb60e21b81526001600160a01b0390921691639dc29fac9161114f91889190600401614d48565b600060405180830381600087803b15801561116957600080fd5b505af115801561117d573d6000803e3d6000fd5b505050505b604083015161119c9083908990600063ffffffff6133f116565b604083015160808401516111b59163ffffffff6136d216565b6111ed5760098201546001600160a01b03851660009081526038602052604081206111ed929091600160d01b90910460ff1690613714565b6006820154604084015161121b916001600160a01b038a81169233929190911690600063ffffffff61374916565b61122d876001600160a01b03166138d7565b1561126f57600061124b8460400151346136d290919063ffffffff16565b9050801561126d5761126d6001600160a01b038916338363ffffffff6138fc16565b505b336001600160a01b0316846001600160a01b0316886001600160a01b03167f81cfb79463601de705d4cf6b8d69112983d76a685120e5e4d3581f30871b87fc8660400151426040516112c29291906154fb565b60405180910390a4505060016000555050505050565b600260005414156112fb5760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03808416825260376020818152604080852033865260388352948190206035548251631f94a27560e31b8152925173__$69254465eb8f179ea24caa73cf68b23524$__9663a6b84c0b9689968c9691959460399493169263fca513a8926004808201939291829003018186803b15801561138257600080fd5b505afa158015611396573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ba919061480a565b6040518763ffffffff1660e01b81526004016113db9695949392919061536c565b60006040518083038186803b1580156113f357600080fd5b505af4158015611407573d6000803e3d6000fd5b50505050600981015433600090815260386020526040902061143391600160d01b900460ff16846139b5565b81156114735760405133906001600160a01b038516907e058a56ea94653cdf4f152d227ace22d4c00ad99e2a43f58cb7d9e3feb295f290600090a36114aa565b60405133906001600160a01b038516907f44c58d81365b66dd4b1a7f36c25aa97b8c71c361ee4937adc1a00000227db5dd90600090a35b5050600160005550565b600260005414156114d75760405162461bcd60e51b81526004016101c9906152fd565b60026000556114e46146fb565b6001600160a01b038085166000818152603760205260409020600681015490921660a0840181905261151c919063ffffffff6131af16565b825261154161271061153586600963ffffffff6139f016565b9063ffffffff613a2a16565b60608301819052611562906127109061153590610bb863ffffffff6139f016565b608083015281518411156115885760405162461bcd60e51b81526004016101c990614f2f565b600082606001511180156115a0575060008260800151115b6115bc5760405162461bcd60e51b81526004016101c990615261565b60a0820151604051634efecaa560e01b8152879182916001600160a01b0390911690634efecaa5906115f49084908a90600401614d48565b602060405180830381600087803b15801561160e57600080fd5b505af1158015611622573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116469190614bb7565b5060a0840151606085015160405163405b019d60e01b81526001600160a01b0385169263405b019d92611682928c92918c918c90600401614d82565b600060405180830381600087803b15801561169c57600080fd5b505af11580156116b0573d6000803e3d6000fd5b5050505060006116d68560a00151896001600160a01b03166131af90919063ffffffff16565b606086015186519192506116f0919063ffffffff61331416565b811461170e5760405162461bcd60e51b81526004016101c990615006565b8373__$5e6137a1b5a0a366e2874209b5abf71c10$__638acb830b90918a886000015161174c8a608001518b606001516136d290919063ffffffff16565b8a608001516040518663ffffffff1660e01b8152600401611771959493929190615430565b60006040518083038186803b15801561178957600080fd5b505af415801561179d573d6000803e3d6000fd5b505050508460a001516001600160a01b0316634efecaa5603560009054906101000a90046001600160a01b03166001600160a01b031663ee8912966040518163ffffffff1660e01b815260040160206040518083038186803b15801561180257600080fd5b505afa158015611816573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061183a919061480a565b87608001516040518363ffffffff1660e01b815260040161185c929190614d48565b602060405180830381600087803b15801561187657600080fd5b505af115801561188a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118ae9190614bb7565b50876001600160a01b0316896001600160a01b03167f5b8f46461c1dd69fb968f1a003acee221ea3e19540e350233b612ddb43433b558988606001518960800151426040516119009493929190615528565b60405180910390a35050600160005550505050505050565b600073__$7347ff53b2b46c21e26a37164ae7f6739f$__63865cb0ce8585856037603860008a6001600160a01b03166001600160a01b031681526020019081526020016000206039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b1580156119ae57600080fd5b505afa1580156119c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119e6919061480a565b6040518863ffffffff1660e01b8152600401611a089796959493929190614e42565b60206040518083038186803b158015611a2057600080fd5b505af4158015611a34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a589190614b83565b90505b9392505050565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b158015611aa657600080fd5b505afa158015611aba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ade919061480a565b6001600160a01b031614611b045760405162461bcd60e51b81526004016101c99061517b565b6001600160a01b038516600090815260376020526040908190209051632d621e9960e21b815273__$5e6137a1b5a0a366e2874209b5abf71c10$__9163b5887a6491611b5b9190889088908890889060040161533e565b60006040518083038186803b158015611b7357600080fd5b505af4158015611b87573d6000803e3d6000fd5b50505050611b9485613a6c565b5050505050565b600281565b60026000541415611bc35760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03831681526037602052604081209080611beb3384612fcb565b915091506000846002811115611bfd57fe5b336000908152603860205260409081902090516306c4439560e31b815291925073__$69254465eb8f179ea24caa73cf68b23524$__916336221ca891611c4e918891908890889088906004016154c6565b60006040518083038186803b158015611c6657600080fd5b505af4158015611c7a573d6000803e3d6000fd5b50505050611c8784613339565b6001816002811115611c9557fe5b1415611d6c576007840154604051632770a7eb60e21b81526001600160a01b0390911690639dc29fac90611ccf9033908790600401614d48565b600060405180830381600087803b158015611ce957600080fd5b505af1158015611cfd573d6000803e3d6000fd5b50505060088501546040516340c10f1960e01b81526001600160a01b0390911691506340c10f1990611d359033908790600401614d48565b600060405180830381600087803b158015611d4f57600080fd5b505af1158015611d63573d6000803e3d6000fd5b50505050611e3e565b6008840154604051632770a7eb60e21b81526001600160a01b0390911690639dc29fac90611da09033908690600401614d48565b600060405180830381600087803b158015611dba57600080fd5b505af1158015611dce573d6000803e3d6000fd5b5050505060078401546003850154604051630ab714fb60e11b81526001600160a01b039092169163156e29f691611e0b9133918791600401614d61565b600060405180830381600087803b158015611e2557600080fd5b505af1158015611e39573d6000803e3d6000fd5b505050505b611e51848760008063ffffffff6133f116565b336001600160a01b0316866001600160a01b03167fea368a40e9570069bb8e6511d668293ad2e1f03b0d982431fd223de9f3b70ca642604051611e949190615509565b60405180910390a35050600160005550505050565b60026000541415611ecc5760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03808616825260376020526040918290206006810154925163cf478a7960e01b815290929091169073__$69254465eb8f179ea24caa73cf68b23524$__9063cf478a7990611f309085908a9089906004016153b6565b60006040518083038186803b158015611f4857600080fd5b505af4158015611f5c573d6000803e3d6000fd5b50505050611f6982613339565b611f7c828760008763ffffffff6133f116565b82611fb55760098201546001600160a01b0386166000908152603860205260408120611fb5929091600160d01b90910460ff16906139b5565b6006820154604051634efecaa560e01b81526001600160a01b0390911690634efecaa590611fe99088908890600401614d48565b602060405180830381600087803b15801561200357600080fd5b505af1158015612017573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061203b9190614bb7565b50846001600160a01b0316866001600160a01b03167f9c4ed599cd8555b9c1e8cd7643240d7d71eb76b792948c49fcb4d411f7b6b3c68642604051611e949291906154fb565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b1580156120c557600080fd5b505afa1580156120d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120fd919061480a565b6001600160a01b0316146121235760405162461bcd60e51b81526004016101c99061517b565b6001600160a01b03909116600090815260376020526040902060050155565b6001600160a01b038116600090815260386020908152604080832081518084018352905481526039805483518186028101860190945280845285948594859485948594612251948c9460379493909290918301828280156121cc57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116121ae575b505060355460408051631f94a27560e31b815290516001600160a01b03909216945063fca513a893506004808201935060209291829003018186803b15801561221457600080fd5b505afa158015612228573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061224c919061480a565b613b41565b60405163d609bd1b60e01b8152949a5092985095509350915073__$7347ff53b2b46c21e26a37164ae7f6739f$__9063d609bd1b9061229890899089908790600401615512565b60206040518083038186803b1580156122b057600080fd5b505af41580156122c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122e89190614bb7565b935091939550919395565b6122fb61473a565b506001600160a01b03166000908152603760209081526040918290208251918201909252600590910154815290565b6000612334614041565b60025490915060ff168061234b575061234b614046565b80612357575060015481115b6123735760405162461bcd60e51b81526004016101c9906150f6565b60025460ff16158015612394576002805460ff191660019081179091558290555b603580546001600160a01b0319166001600160a01b03858116919091179182905560408051633efbbf0f60e21b81529051929091169163fbeefc3c91600480820192602092909190829003018186803b1580156123f057600080fd5b505afa158015612404573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612428919061480a565b603680546001600160a01b0319166001600160a01b03929092169190911790558015612459576002805460ff191690555b505050565b6035546001600160a01b031681565b600260005414156124905760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03851681526037602090815260408083203384526038909252822090916125de6124ca6005850161328d565b600a0a61153588603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561251f57600080fd5b505afa158015612533573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612557919061480a565b6001600160a01b031663b3596f078c6040518263ffffffff1660e01b81526004016125829190614d34565b60206040518083038186803b15801561259a57600080fd5b505afa1580156125ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125d29190614bb7565b9063ffffffff6139f016565b905073__$69254465eb8f179ea24caa73cf68b23524$__63dfb6b2d7848989858a6019603760386000336001600160a01b03166001600160a01b031681526020019081526020016000206039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561267857600080fd5b505afa15801561268c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126b0919061480a565b6040518b63ffffffff1660e01b81526004016126d59a9998979695949392919061545c565b60006040518083038186803b1580156126ed57600080fd5b505af4158015612701573d6000803e3d6000fd5b5050505061270e83613339565b60098301805464ffffffffff60a01b1916600160a01b4264ffffffffff16021790556003830154600186600281111561274357fe5b600281111561274e57fe5b1415612847576007840154604051630ab714fb60e11b81526001600160a01b039091169063156e29f69061278a9033908b908690600401614d61565b600060405180830381600087803b1580156127a457600080fd5b505af11580156127b8573d6000803e3d6000fd5b505050506007840154604051631e739ae360e21b81526000916001600160a01b0316906379ce6b8c906127ef903390600401614d34565b60206040518083038186803b15801561280757600080fd5b505afa15801561281b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061283f9190614c7e565b9050506128ae565b60088401546040516340c10f1960e01b81526001600160a01b03909116906340c10f199061287b9033908b90600401614d48565b600060405180830381600087803b15801561289557600080fd5b505af11580156128a9573d6000803e3d6000fd5b505050505b6128c1848960008a63ffffffff6133f116565b60098401546040805160208101909152845481526128e891600160d01b900460ff1661404c565b612908576009840154612908908490600160d01b900460ff166001613714565b6006840154604051634efecaa560e01b81526001600160a01b0390911690634efecaa59061293c9033908b90600401614d48565b602060405180830381600087803b15801561295657600080fd5b505af115801561296a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061298e9190614bb7565b5061ffff8516336001600160a01b038a167fe002884724be85e729c98360169e709585b299ace6fbe12aa791d2fee6f652808a8a60018c60028111156129d057fe5b60028111156129db57fe5b146129ea5789600201546129ec565b865b426040516129fd9493929190615528565b60405180910390a450506001600055505050505050565b60026000541415612a375760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03808416825260376020526040808320600781015491516370a0823160e01b81529093919092169182906370a0823190612a83908790600401614d34565b60206040518083038186803b158015612a9b57600080fd5b505afa158015612aaf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad39190614bb7565b905060008111612af55760405162461bcd60e51b81526004016101c990615099565b6000612b2e612b1d6aa56fa5b99019a5c8000000612b1161405c565b9063ffffffff61331416565b60038601549063ffffffff61406c16565b90506000836001600160a01b031663e78c9b3b876040518263ffffffff1660e01b8152600401612b5e9190614d34565b60206040518083038186803b158015612b7657600080fd5b505afa158015612b8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bae9190614bb7565b90508460010154811080612bc157508181115b612bdd5760405162461bcd60e51b81526004016101c990614fb7565b612be685613339565b604051632770a7eb60e21b81526001600160a01b03851690639dc29fac90612c149089908790600401614d48565b600060405180830381600087803b158015612c2e57600080fd5b505af1158015612c42573d6000803e3d6000fd5b5050506003860154604051630ab714fb60e11b81526001600160a01b038716925063156e29f691612c79918a918891600401614d61565b600060405180830381600087803b158015612c9357600080fd5b505af1158015612ca7573d6000803e3d6000fd5b50612cc1925087915089905060008063ffffffff6133f116565b856001600160a01b0316876001600160a01b03167f443060d15ff6dac05881a7c07a46ef8085d8af4399e436be6c25250df40c5f1842604051612d049190615509565b60405180910390a3505050505050506001600055565b60001981565b6001600160a01b0381166000908152603760205260408120610e43906140ae565b6001600160a01b0390811660009081526037602052604090206006810154600782015460089092015490831693918316921690565b60026000541415612d995760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03841681526037602052604090819020905163b25dc48d60e01b815273__$69254465eb8f179ea24caa73cf68b23524$__9063b25dc48d90612def90849087906004016154fb565b60006040518083038186803b158015612e0757600080fd5b505af4158015612e1b573d6000803e3d6000fd5b50505060068201546040516370a0823160e01b81526001600160a01b03909116915060009082906370a0823190612e56903390600401614d34565b60206040518083038186803b158015612e6e57600080fd5b505afa158015612e82573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ea69190614bb7565b159050612eb283613339565b612ec5838787600063ffffffff6133f116565b8015612ef4576009830154336000908152603860205260409020612ef491600160d01b900460ff1660016139b5565b6040516394362e8b60e01b81526001600160a01b038316906394362e8b90612f229033908990600401614d48565b600060405180830381600087803b158015612f3c57600080fd5b505af1158015612f50573d6000803e3d6000fd5b50612f6c925050506001600160a01b0387163384886001613749565b8361ffff16336001600160a01b0316876001600160a01b03167fc12c57b1c73a2c3a2ea4613e9476abb3d8d146857aab7329e24243fb59710c828842604051612fb69291906154fb565b60405180910390a45050600160005550505050565b60078101546040516370a0823160e01b815260009182916001600160a01b03909116906370a0823190613002908790600401614d34565b60206040518083038186803b15801561301a57600080fd5b505afa15801561302e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130529190614bb7565b60088401546040516370a0823160e01b81526001600160a01b03909116906370a0823190613084908890600401614d34565b60206040518083038186803b15801561309c57600080fd5b505afa1580156130b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130d49190614bb7565b915091509250929050565b600781015460405163631a6fd560e11b815260009182916001600160a01b039091169063c634dfaa90613116908790600401614d34565b60206040518083038186803b15801561312e57600080fd5b505afa158015613142573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131669190614bb7565b600884015460405163631a6fd560e11b81526001600160a01b039091169063c634dfaa90613084908890600401614d34565b815160016002830281019190911c16151592915050565b60006131ba836138d7565b156131d057506001600160a01b03811631610e43565b6040516370a0823160e01b81526001600160a01b038416906370a08231906131fc908590600401614d34565b60206040518083038186803b15801561321457600080fd5b505afa158015613228573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061324c9190614bb7565b9050610e43565b600080611a5b836004015461328185600201548660090160149054906101000a900464ffffffffff166140dc565b9063ffffffff61406c16565b5460301c610f01600160d01b031690565b54670fffffffffff0000191690565b5460101c650fffffff0001600160f01b031690565b5460201c630fff0001600160e01b031690565b54603a1c6003600160c61b0316151590565b54603b1c151590565b5460381c600f600160c81b0316151590565b5460391c6007600160c71b0316151590565b600082820183811015611a5b5760405162461bcd60e51b81526004016101c990614f80565b600061334482614141565b905080156133cd576001820154600983015460009161337091600160a01b900464ffffffffff16614256565b835490915061338690829063ffffffff61406c16565b8355600283015460098401546000916133ac91600160a01b900464ffffffffff166140dc565b90506133c584600401548261406c90919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b15801561343857600080fd5b505afa15801561344c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134709190614bb7565b6006860154909150600090613497906001600160a01b03878116911663ffffffff6131af16565b6009870154909150600090819081906001600160a01b03166357e37af0896134d5896134c9898d63ffffffff61331416565b9063ffffffff6136d216565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561352557600080fd5b505afa158015613539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061355d9190614bb7565b8d60080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156135ad57600080fd5b505afa1580156135c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135e59190614bb7565b8a6040518663ffffffff1660e01b8152600401613606959493929190614e96565b60606040518083038186803b15801561361e57600080fd5b505afa158015613632573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136569190614c51565b60018c0183905560038c0182905560028c018190558b5460048d01546040519497509295509093506001600160a01b038b16927f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4926136bf92889288928c92899290919061559b565b60405180910390a2505050505050505050565b6000611a5b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506142b6565b8160020281613724576000613727565b60015b60ff16901b826002026001901b19846000015416178360000181905550505050565b8161375357611b94565b61375c856138d7565b156138bc57813410156137815760405162461bcd60e51b81526004016101c9906151ce565b6001600160a01b0383163014613814576000836001600160a01b03168361c350906040516137ae90614d31565b600060405180830381858888f193505050503d80600081146137ec576040519150601f19603f3d011682016040523d82523d6000602084013e6137f1565b606091505b50509050806138125760405162461bcd60e51b81526004016101c990615218565b505b80801561382057508134115b156138b75760006001600160a01b038516613841348563ffffffff6136d216565b61c3509060405161385190614d31565b600060405180830381858888f193505050503d806000811461388f576040519150601f19603f3d011682016040523d82523d6000602084013e613894565b606091505b50509050806138b55760405162461bcd60e51b81526004016101c990615218565b505b611b94565b611b946001600160a01b03861685858563ffffffff6142e216565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b8061390657612459565b61390f836138d7565b1561399b576000826001600160a01b03168261c3509060405161393190614d31565b600060405180830381858888f193505050503d806000811461396f576040519150601f19603f3d011682016040523d82523d6000602084013e613974565b606091505b50509050806139955760405162461bcd60e51b81526004016101c990615218565b50612459565b6124596001600160a01b038416838363ffffffff61434016565b81600202600101816139c85760006139cb565b60015b60ff16901b826002026001016001901b19846000015416178360000181905550505050565b6000826139ff57506000610e43565b82820282848281613a0c57fe5b0414611a5b5760405162461bcd60e51b81526004016101c990615058565b6000611a5b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061435f565b6000805b603954811015613ab957826001600160a01b031660398281548110613a9157fe5b6000918252602090912001546001600160a01b03161415613ab157600191505b600101613a70565b5080613b3d57603980546001600160a01b0384166000818152603760205260408120600901805460ff909416600160d01b0260ff60d01b19909416939093179092558254600181018455929091527fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d390910180546001600160a01b03191690911790555b5050565b6000806000806000613b5161474d565b613b5a89614396565b15613b775750600094508493508392508291506000199050614034565b600060e08201525b87518160e001511015613f875760e0810151613ba2908a9063ffffffff61439b16565b613bab57613f77565b878160e0015181518110613bbb57fe5b6020908102919091018101516001600160a01b031661020083018190526000908152908b905260409020613bf1600582016143ab565b6080860181905260c08601929092525060a0840191909152600a0a602083015261020082015160405163b3596f0760e01b81526001600160a01b038a169163b3596f0791613c429190600401614d34565b60206040518083038186803b158015613c5a57600080fd5b505afa158015613c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c929190614bb7565b825260a082015115801590613cb8575060e0820151613cb8908b9063ffffffff61319816565b15613de95760068101546040516370a0823160e01b81526001600160a01b03909116906370a0823190613cef908f90600401614d34565b60206040518083038186803b158015613d0757600080fd5b505afa158015613d1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d3f9190614bb7565b6040830181905260208301518351600092613d6492916115359163ffffffff6139f016565b610120840151909150613d7d908263ffffffff61331416565b61012084015260a0830151613daf90613d9d90839063ffffffff6139f016565b6101808501519063ffffffff61331416565b61018084015260c0830151613de190613dcf90839063ffffffff6139f016565b6101a08501519063ffffffff61331416565b6101a0840152505b60e0820151613dff908b9063ffffffff61404c16565b15613f755760078101546040516370a0823160e01b81526001600160a01b03909116906370a0823190613e36908f90600401614d34565b60206040518083038186803b158015613e4e57600080fd5b505afa158015613e62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e869190614bb7565b826060018181525050613f368160080160009054906101000a90046001600160a01b03166001600160a01b03166370a082318e6040518263ffffffff1660e01b8152600401613ed59190614d34565b60206040518083038186803b158015613eed57600080fd5b505afa158015613f01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f259190614bb7565b60608401519063ffffffff61331416565b6060830181905260208301518351613f6e92613f5c92916115359163ffffffff6139f016565b6101408401519063ffffffff61331416565b6101408301525b505b60e0810180516001019052613b7f565b600081610120015111613f9b576000613fb6565b610120810151610180820151613fb69163ffffffff613a2a16565b610180820152610120810151613fcd576000613fe8565b6101208101516101a0820151613fe89163ffffffff613a2a16565b6101a08201819052610120820151610140830151614005926143f2565b61010082018190526101208201516101408301516101808401516101a090940151919850965091945090925090505b9550955095509550959050565b600290565b303b1590565b9051600160029092021c16151590565b6b033b2e3c9fd0803ce800000090565b6000611a5b6b033b2e3c9fd0803ce8000000611535614091868663ffffffff6139f016565b60026b033b2e3c9fd0803ce80000005b049063ffffffff61331416565b600080611a5b836000015461328185600101548660090160149054906101000a900464ffffffffff16614256565b6000806140f64264ffffffffff851663ffffffff6136d216565b9050600061410e856301e1338063ffffffff613a2a16565b90506141388261412c61411f61405c565b849063ffffffff61331416565b9063ffffffff61442216565b95945050505050565b6000610e438260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561419657600080fd5b505afa1580156141aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141ce9190614bb7565b8360070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561421e57600080fd5b505afa158015614232573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b119190614bb7565b6000806142704264ffffffffff851663ffffffff6136d216565b905060006142996142846301e1338061447c565b61428d8461447c565b9063ffffffff61449216565b90506141386142a661405c565b612b11878463ffffffff61406c16565b600081848411156142da5760405162461bcd60e51b81526004016101c99190614f1c565b505050900390565b61433a846323b872dd60e01b85858560405160240161430393929190614e1e565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526144bd565b50505050565b6124598363a9059cbb60e01b8484604051602401614303929190614d48565b600081836143805760405162461bcd60e51b81526004016101c99190614f1c565b50600083858161438c57fe5b0495945050505050565b511590565b9051600360029092021c16151590565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b6000826144025750600019611a5b565b611a5883614416868563ffffffff61454c16565b9063ffffffff61457116565b60006002820661443e576b033b2e3c9fd0803ce8000000614440565b825b90506002820491505b8115610e4357614459838461406c565b925060028206156144715761446e818461406c565b90505b600282049150614449565b6000610e4382633b9aca0063ffffffff6139f016565b6000600282046144b58361153561411f876b033b2e3c9fd0803ce80000006139f0565b949350505050565b6060614512826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166145909092919063ffffffff16565b80519091501561245957808060200190518101906145309190614b83565b6124595760405162461bcd60e51b81526004016101c9906152b3565b6000611a5b612710611535614567868663ffffffff6139f016565b60026127106140a1565b6000600282046144b58361153561411f87670de0b6b3a76400006139f0565b6060611a58848460008560606145a585610593565b6145c15760405162461bcd60e51b81526004016101c990615197565b60006060866001600160a01b031685876040516145de9190614d15565b60006040518083038185875af1925050503d806000811461461b576040519150601f19603f3d011682016040523d82523d6000602084013e614620565b606091505b509150915081156146345791506144b59050565b8051156146445780518082602001fd5b8360405162461bcd60e51b81526004016101c99190614f1c565b604051806101a00160405280600081526020016000815260200160008152602001600081526020016000815260200161469561473a565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c0820181905260e09091015290565b6040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681525090565b6040518060200160405280600081525090565b60405180610260016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160006001600160a01b031681526020016000151581526020016000151581525090565b6000602082840312156147ff578081fd5b8135611a5b816156df565b60006020828403121561481b578081fd5b8151611a5b816156df565b60008060408385031215614838578081fd5b8235614843816156df565b91506020830135614853816156df565b809150509250929050565b60008060008060808587031215614873578182fd5b843561487e816156df565b9350602085013561488e816156df565b93969395505050506040820135916060013590565b600080600080600060a086880312156148ba578081fd5b85356148c5816156df565b945060208601356148d5816156df565b935060408601356148e5816156df565b925060608601356148f5816156df565b91506080860135614905816156df565b809150509295509295909350565b600080600080600060a0868803121561492a578081fd5b8535614935816156df565b94506020860135614945816156df565b93506040860135614955816156df565b9250606086013591506080860135614905816156f7565b600080600060608486031215614980578283fd5b833561498b816156df565b9250602084013561499b816156df565b929592945050506040919091013590565b600080600080608085870312156149c1578384fd5b84356149cc816156df565b935060208501356149dc816156df565b925060408501359150606085013567ffffffffffffffff8111156149fe578182fd5b80860187601f820112614a0f578283fd5b80359150614a24614a1f83615684565b61565d565b828152886020848401011115614a38578384fd5b8260208301602083013791820160200192909252939692955090935050565b60008060408385031215614a69578182fd5b8235614a74816156df565b91506020830135614853816156f7565b60008060408385031215614a96578182fd5b8235614aa1816156df565b946020939093013593505050565b600080600060608486031215614ac3578081fd5b8335614ace816156df565b925060208401359150604084013561ffff81168114614aeb578182fd5b809150509250925092565b60008060008060808587031215614b0b578182fd5b8435614b16816156df565b935060208501359250604085013591506060850135614b34816156df565b939692955090935050565b60008060008060808587031215614b54578182fd5b8435614b5f816156df565b93506020850135925060408501359150606085013561ffff81168114614b34578182fd5b600060208284031215614b94578081fd5b8151611a5b816156f7565b600060208284031215614bb0578081fd5b5035919050565b600060208284031215614bc8578081fd5b5051919050565b60008060408385031215614be1578182fd5b82519150602083015167ffffffffffffffff811115614bfe578182fd5b80840185601f820112614c0f578283fd5b80519150614c1f614a1f83615684565b828152866020848401011115614c33578384fd5b614c448360208301602085016156b3565b8093505050509250929050565b600080600060608486031215614c65578081fd5b8351925060208401519150604084015190509250925092565b600060208284031215614c8f578081fd5b815164ffffffffff81168114611a5b578182fd5b6000815480845260208085019450838352808320835b83811015614cde5781546001600160a01b031687529582019560019182019101614cb9565b509495945050505050565b60008151808452614d018160208601602086016156b3565b601f01601f19169290920160200192915050565b60008251614d278184602087016156b3565b9190910192915050565b90565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090614dbc90830184614ce9565b979650505050505050565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b03958616815293851660208501529190931660408301526060820192909252901515608082015260a00190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b600060018060a01b03808a16835280891660208401528760408401528660608401528554608084015260e060a0840152614e7f60e0840186614ca3565b915080841660c08401525098975050505050505050565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b6020808252825182820181905260009190848201906040850190845b81811015614f055783516001600160a01b031683529284019291840191600101614ee0565b50909695505050505050565b901515815260200190565b600060208252611a5b6020830184614ce9565b60208082526031908201527f5468657265206973206e6f7420656e6f756768206c697175696469747920617660408201527061696c61626c6520746f20626f72726f7760781b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252602f908201527f496e746572657374207261746520726562616c616e636520636f6e646974696f60408201526e1b9cc81dd95c99481b9bdd081b595d608a1b606082015260800190565b60208082526032908201527f5468652061637475616c2062616c616e6365206f66207468652070726f746f636040820152711bdb081a5cc81a5b98dbdb9cda5cdd195b9d60721b606082015260800190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b60208082526038908201527f5573657220646f6573206e6f74206861766520616e7920737461626c6520726160408201527f7465206c6f616e20666f72207468697320726573657276650000000000000000606082015260800190565b6020808252602e908201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560408201526d195b881a5b9a5d1a585b1a5e995960921b606082015260800190565b60208082526017908201527f4c69717569646174696f6e2063616c6c206661696c6564000000000000000000604082015260600190565b602080825260029082015261033360f41b604082015260600190565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b6020808252602a908201527f57726f6e67207573616765206f66204554482e756e6976657273616c5472616e6040820152697366657246726f6d282960b01b606082015260800190565b60208082526013908201527211551217d514905394d1915497d19052531151606a1b604082015260600190565b602080825260029082015261191960f11b604082015260600190565b60208082526032908201527f5468652072657175657374656420616d6f756e7420697320746f6f20736d616c60408201527136103337b9103090233630b9b42637b0b71760711b606082015260800190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b9051815260200190565b9485526001600160a01b03938416602086015291831660408501528216606084015216608082015260a00190565b600087825260018060a01b03808816602084015286604084015285606084015260c060808401526153a060c0840186614ca3565b915080841660a084015250979650505050505050565b9283526001600160a01b03919091166020830152604082015260600190565b8981526001600160a01b038981166020830152604082018990526101208201906153fe896156a8565b606084015296909616608082015260a081019490945260c084019290925260e083015261010090910152949350505050565b9485526001600160a01b0393909316602085015260408401919091526060830152608082015260a00190565b60006101408c835260018060a01b03808d1660208501528b60408501528a60608501528960808501528860a08501528760c08501528660e0850152816101008501526154aa82850187614ca3565b925080851661012085015250509b9a5050505050505050505050565b600060a0820190508682528560208301528460408301528360608301526154ec836156a8565b60808301529695505050505050565b918252602082015260400190565b90815260200190565b9283526020830191909152604082015260600190565b93845260208401929092526040830152606082015260800190565b998a5260208a0198909852604089019690965260608801949094526001600160a01b03929092166080870152151560a0860152151560c0850152151560e0840152151561010083015215156101208201526101400190565b958652602086019490945260408501929092526060840152608083015260a082015260c00190565b998a5260208a019890985260408901969096526060880194909452608087019290925260a086015260c085015260e084015261010083015264ffffffffff166101208201526101400190565b998a5260208a019890985260408901969096526060880194909452608087019290925260a086015260c085015260e084015264ffffffffff1661010083015215156101208201526101400190565b60405181810167ffffffffffffffff8111828210171561567c57600080fd5b604052919050565b600067ffffffffffffffff82111561569a578081fd5b50601f01601f191660200190565b80600381106105cc57fe5b60005b838110156156ce5781810151838201526020016156b6565b8381111561433a5750506000910152565b6001600160a01b03811681146156f457600080fd5b50565b80151581146156f457600080fdfea2646970667358221220783bd2f45116069ab955cc2decc35a2ec9cc7123bb1b7449e430db79810c007164736f6c63430006080033"; + "0x6080604052600060015534801561001557600080fd5b50600160005561576c806200002b6000396000f3fe60806040526004361061019f5760003560e01c80638afaff02116100ec578063c72c4d101161008a578063d0fc81d211610064578063d0fc81d21461051c578063d15e005314610531578063d2493b6c14610551578063d2d0e06614610580576101d4565b8063c72c4d10146104c7578063c858f5f9146104dc578063cd112382146104fc576101d4565b8063b8d29276116100c6578063b8d2927614610428578063bf92857c14610448578063c44b11f71461047a578063c4d66de8146104a7576101d4565b80638afaff02146103d357806394ba89a2146103e85780639895e3d814610408576101d4565b80633e150141116101595780635a3b74b9116101335780635a3b74b9146103465780635cffe9de1461036657806376e9d615146103865780637a708e92146103b3576101d4565b80633e150141146102d05780634fe7a6e514610306578063573ade8114610333576101d4565b8062a718a9146101d95780630902f1ac146101ec5780631d2118f91461021757806328dd2d011461023757806335ea6a751461026d578063386497fd146102a3576101d4565b366101d4576101ad33610593565b6101d25760405162461bcd60e51b81526004016101c990615272565b60405180910390fd5b005b600080fd5b6101d26101e7366004614940565b6105d1565b3480156101f857600080fd5b506102016107a3565b60405161020e9190614ef1565b60405180910390f35b34801561022357600080fd5b506101d2610232366004614853565b610805565b34801561024357600080fd5b50610257610252366004614853565b6108d8565b60405161020e9a99989796959493929190615641565b34801561027957600080fd5b5061028d61028836600461481b565b610b83565b60405161020e9a999897969594939291906155f5565b3480156102af57600080fd5b506102c36102be36600461481b565b610e22565b60405161020e919061553b565b3480156102dc57600080fd5b506102f06102eb36600461481b565b610e49565b60405161020e9a99989796959493929190615575565b34801561031257600080fd5b50610326610321366004614bcc565b610f1f565b60405161020e9190614d61565b6101d2610341366004614b23565b610f46565b34801561035257600080fd5b506101d2610361366004614a84565b6112d8565b34801561037257600080fd5b506101d26103813660046149d9565b6114b4565b34801561039257600080fd5b506103a66103a1366004614999565b611918565b60405161020e9190614f3e565b3480156103bf57600080fd5b506101d26103ce3660046148d0565b611a62565b3480156103df57600080fd5b506102c3611b9b565b3480156103f457600080fd5b506101d2610403366004614ab1565b611ba0565b34801561041457600080fd5b506101d261042336600461488b565b611ea9565b34801561043457600080fd5b506101d2610443366004614ab1565b612081565b34801561045457600080fd5b5061046861046336600461481b565b612142565b60405161020e969594939291906155cd565b34801561048657600080fd5b5061049a61049536600461481b565b6122f3565b60405161020e9190615361565b3480156104b357600080fd5b506101d26104c236600461481b565b61232a565b3480156104d357600080fd5b5061032661245e565b3480156104e857600080fd5b506101d26104f7366004614b6c565b61246d565b34801561050857600080fd5b506101d2610517366004614853565b6129f2565b34801561052857600080fd5b506102c3612cf8565b34801561053d57600080fd5b506102c361054c36600461481b565b612cfe565b34801561055d57600080fd5b5061057161056c36600461481b565b612d1f565b60405161020e93929190614df4565b6101d261058e366004614adc565b612d54565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906105c757508115155b925050505b919050565b600260005414156105f45760405162461bcd60e51b81526004016101c99061532a565b6002600090815560355460408051632c1a75cd60e11b815290516001600160a01b0390921691635834eb9a91600480820192602092909190829003018186803b15801561064057600080fd5b505afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190614837565b905060006060826001600160a01b031688888888886040516024016106a1959493929190614e17565b60408051601f198184030181529181526020820180516001600160e01b031662a718a960e01b179052516106d59190614d42565b600060405180830381855af49150503d8060008114610710576040519150601f19603f3d011682016040523d82523d6000602084013e610715565b606091505b5091509150816107375760405162461bcd60e51b81526004016101c990615171565b600060608280602001905181019061074f9190614bfc565b9150915081600014610792578060405160200161076c9190614d42565b60408051601f198184030181529082905262461bcd60e51b82526101c991600401614f49565b505060016000555050505050505050565b606060398054806020026020016040519081016040528092919081815260200182805480156107fb57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116107dd575b5050505050905090565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b15801561084957600080fd5b505afa15801561085d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108819190614837565b6001600160a01b0316146108a75760405162461bcd60e51b81526004016101c9906151a8565b6001600160a01b03918216600090815260376020526040902060090180546001600160a01b03191691909216179055565b6001600160a01b03808316600090815260376020526040808220600681015491516370a0823160e01b81529293849384938493849384938493849384938493919216906370a082319061092f908f90600401614d61565b60206040518083038186803b15801561094757600080fd5b505afa15801561095b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097f9190614be4565b9a5061098b8c82612fa9565b909a50985061099a8c826130bd565b6001830154600784015460405163e78c9b3b60e01b8152939b5091995096506001600160a01b03169063e78c9b3b906109d7908f90600401614d61565b60206040518083038186803b1580156109ef57600080fd5b505afa158015610a03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a279190614be4565b6007820154604051631e739ae360e21b81529197506001600160a01b0316906379ce6b8c90610a5a908f90600401614d61565b60206040518083038186803b158015610a7257600080fd5b505afa158015610a86573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aaa9190614cab565b60098201546001600160a01b038e16600090815260386020908152604091829020825191820190925290548152919450610aee9190600160d01b900460ff16613176565b6008820154604051633ba641e960e21b81529193506001600160a01b03169063ee9907a490610b21908f90600401614d61565b60206040518083038186803b158015610b3957600080fd5b505afa158015610b4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b719190614be4565b9350509295989b9194979a5092959850565b600080600080600080600080600080610b9a61468b565b506001600160a01b03808c1660008181526037602090815260409182902082516101a08101845281548152600182015481840152600282015481850152600382015460608201526004820154608082015283519283019093526005810154825260a08301919091526006810154841660c083018190526007820154851660e08401526008820154851661010084015260099091015493841661012083015264ffffffffff600160a01b85041661014083015260ff600160c81b850481161515610160840152600160d01b90940490931661018082015291610c81919063ffffffff61318d16565b8160e001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cbe57600080fd5b505afa158015610cd2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf69190614be4565b8261010001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610d3457600080fd5b505afa158015610d48573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d6c9190614be4565b8360200151846040015185606001518660e001516001600160a01b03166390f6fcf26040518163ffffffff1660e01b815260040160206040518083038186803b158015610db857600080fd5b505afa158015610dcc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df09190614be4565b876000015188608001518961014001519a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b6001600160a01b0381166000908152603760205260408120610e4390613231565b92915050565b6000806000806000806000806000806000603760008d6001600160a01b03166001600160a01b031681526020019081526020016000209050610e8d81600501613294565b610e99826005016132a5565b610ea5836005016132b4565b610eb1846005016132c9565b60098501546001600160a01b0316610ecb600587016132a5565b1515610ed9600588016132dc565b610ee5886005016132ee565b610ef1896005016132f7565b610efd8a600501613309565b9a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b60398181548110610f2c57fe5b6000918252602090912001546001600160a01b0316905081565b60026000541415610f695760405162461bcd60e51b81526004016101c99061532a565b6002600055610f766146f9565b6001600160a01b0385166000908152603760205260409020610f988382612fa9565b60208401819052818452610fb2919063ffffffff61331b16565b60808301526000846002811115610fc557fe5b90506001816002811115610fd557fe5b14610fe4578260200151610fe7565b82515b604084015260001986148015906110015750826040015186105b1561100e57604083018690525b82516020840151604080860151905163152be4bd60e31b815273__$69254465eb8f179ea24caa73cf68b23524$__9363a95f25e89361105b9388938e938e938a938e933490600401615402565b60006040518083038186803b15801561107357600080fd5b505af4158015611087573d6000803e3d6000fd5b5050505061109482613340565b60018160028111156110a257fe5b14156111175760078201546040808501519051632770a7eb60e21b81526001600160a01b0390921691639dc29fac916110e091889190600401614d75565b600060405180830381600087803b1580156110fa57600080fd5b505af115801561110e573d6000803e3d6000fd5b50505050611182565b60088201546040808501519051632770a7eb60e21b81526001600160a01b0390921691639dc29fac9161114f91889190600401614d75565b600060405180830381600087803b15801561116957600080fd5b505af115801561117d573d6000803e3d6000fd5b505050505b604083015161119c9083908990600063ffffffff6133f816565b604083015160808401516111b59163ffffffff6136d916565b6111ed5760098201546001600160a01b03851660009081526038602052604081206111ed929091600160d01b90910460ff169061371b565b6006820154604084015161121b916001600160a01b038a81169233929190911690600063ffffffff61375016565b61122d876001600160a01b03166138de565b1561126f57600061124b8460400151346136d990919063ffffffff16565b9050801561126d5761126d6001600160a01b038916338363ffffffff61390316565b505b336001600160a01b0316846001600160a01b0316886001600160a01b03167f81cfb79463601de705d4cf6b8d69112983d76a685120e5e4d3581f30871b87fc8660400151426040516112c292919061552d565b60405180910390a4505060016000555050505050565b600260005414156112fb5760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03808416825260376020818152604080852033865260388352948190206035548251631f94a27560e31b8152925173__$69254465eb8f179ea24caa73cf68b23524$__9663a6b84c0b9689968c9691959460399493169263fca513a8926004808201939291829003018186803b15801561138257600080fd5b505afa158015611396573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ba9190614837565b6040518763ffffffff1660e01b81526004016113db96959493929190615399565b60006040518083038186803b1580156113f357600080fd5b505af4158015611407573d6000803e3d6000fd5b50505050600981015433600090815260386020526040902061143391600160d01b900460ff16846139bc565b81156114735760405133906001600160a01b038516907e058a56ea94653cdf4f152d227ace22d4c00ad99e2a43f58cb7d9e3feb295f290600090a36114aa565b60405133906001600160a01b038516907f44c58d81365b66dd4b1a7f36c25aa97b8c71c361ee4937adc1a00000227db5dd90600090a35b5050600160005550565b600260005414156114d75760405162461bcd60e51b81526004016101c99061532a565b60026000556114e4614728565b6001600160a01b038085166000818152603760205260409020600681015490921660a0840181905261151c919063ffffffff61318d16565b825261154161271061153586600963ffffffff6139f716565b9063ffffffff613a3116565b60608301819052611562906127109061153590610bb863ffffffff6139f716565b608083015281518411156115885760405162461bcd60e51b81526004016101c990614f5c565b600082606001511180156115a0575060008260800151115b6115bc5760405162461bcd60e51b81526004016101c99061528e565b60a0820151604051634efecaa560e01b8152879182916001600160a01b0390911690634efecaa5906115f49084908a90600401614d75565b602060405180830381600087803b15801561160e57600080fd5b505af1158015611622573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116469190614be4565b5060a0840151606085015160405163405b019d60e01b81526001600160a01b0385169263405b019d92611682928c92918c918c90600401614daf565b600060405180830381600087803b15801561169c57600080fd5b505af11580156116b0573d6000803e3d6000fd5b5050505060006116d68560a00151896001600160a01b031661318d90919063ffffffff16565b606086015186519192506116f0919063ffffffff61331b16565b811461170e5760405162461bcd60e51b81526004016101c990615033565b8373__$5e6137a1b5a0a366e2874209b5abf71c10$__638acb830b90918a886000015161174c8a608001518b606001516136d990919063ffffffff16565b8a608001516040518663ffffffff1660e01b8152600401611771959493929190615461565b60006040518083038186803b15801561178957600080fd5b505af415801561179d573d6000803e3d6000fd5b505050508460a001516001600160a01b0316634efecaa5603560009054906101000a90046001600160a01b03166001600160a01b031663ee8912966040518163ffffffff1660e01b815260040160206040518083038186803b15801561180257600080fd5b505afa158015611816573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061183a9190614837565b87608001516040518363ffffffff1660e01b815260040161185c929190614d75565b602060405180830381600087803b15801561187657600080fd5b505af115801561188a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118ae9190614be4565b50876001600160a01b0316896001600160a01b03167f5b8f46461c1dd69fb968f1a003acee221ea3e19540e350233b612ddb43433b55898860600151896080015142604051611900949392919061555a565b60405180910390a35050600160005550505050505050565b600073__$7347ff53b2b46c21e26a37164ae7f6739f$__63865cb0ce8585856037603860008a6001600160a01b03166001600160a01b031681526020019081526020016000206039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b1580156119ae57600080fd5b505afa1580156119c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119e69190614837565b6040518863ffffffff1660e01b8152600401611a089796959493929190614e6f565b60206040518083038186803b158015611a2057600080fd5b505af4158015611a34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a589190614bb0565b90505b9392505050565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b158015611aa657600080fd5b505afa158015611aba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ade9190614837565b6001600160a01b031614611b045760405162461bcd60e51b81526004016101c9906151a8565b6001600160a01b038516600090815260376020526040908190209051632d621e9960e21b815273__$5e6137a1b5a0a366e2874209b5abf71c10$__9163b5887a6491611b5b9190889088908890889060040161536b565b60006040518083038186803b158015611b7357600080fd5b505af4158015611b87573d6000803e3d6000fd5b50505050611b9485613a73565b5050505050565b600281565b60026000541415611bc35760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03831681526037602052604081209080611beb3384612fa9565b915091506000846002811115611bfd57fe5b336000908152603860205260409081902090516306c4439560e31b815291925073__$69254465eb8f179ea24caa73cf68b23524$__916336221ca891611c4e918891908890889088906004016154f7565b60006040518083038186803b158015611c6657600080fd5b505af4158015611c7a573d6000803e3d6000fd5b50505050611c8784613340565b6001816002811115611c9557fe5b1415611d6c576007840154604051632770a7eb60e21b81526001600160a01b0390911690639dc29fac90611ccf9033908790600401614d75565b600060405180830381600087803b158015611ce957600080fd5b505af1158015611cfd573d6000803e3d6000fd5b50505060088501546040516340c10f1960e01b81526001600160a01b0390911691506340c10f1990611d359033908790600401614d75565b600060405180830381600087803b158015611d4f57600080fd5b505af1158015611d63573d6000803e3d6000fd5b50505050611e3e565b6008840154604051632770a7eb60e21b81526001600160a01b0390911690639dc29fac90611da09033908690600401614d75565b600060405180830381600087803b158015611dba57600080fd5b505af1158015611dce573d6000803e3d6000fd5b5050505060078401546003850154604051630ab714fb60e11b81526001600160a01b039092169163156e29f691611e0b9133918791600401614d8e565b600060405180830381600087803b158015611e2557600080fd5b505af1158015611e39573d6000803e3d6000fd5b505050505b611e51848760008063ffffffff6133f816565b336001600160a01b0316866001600160a01b03167fea368a40e9570069bb8e6511d668293ad2e1f03b0d982431fd223de9f3b70ca642604051611e94919061553b565b60405180910390a35050600160005550505050565b60026000541415611ecc5760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03808616825260376020526040918290206006810154925163cf478a7960e01b815290929091169073__$69254465eb8f179ea24caa73cf68b23524$__9063cf478a7990611f309085908a9089906004016153e3565b60006040518083038186803b158015611f4857600080fd5b505af4158015611f5c573d6000803e3d6000fd5b50505050611f6982613340565b611f7c828760008763ffffffff6133f816565b82611fb55760098201546001600160a01b0386166000908152603860205260408120611fb5929091600160d01b90910460ff16906139bc565b6006820154604051634efecaa560e01b81526001600160a01b0390911690634efecaa590611fe99088908890600401614d75565b602060405180830381600087803b15801561200357600080fd5b505af1158015612017573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061203b9190614be4565b50846001600160a01b0316866001600160a01b03167f9c4ed599cd8555b9c1e8cd7643240d7d71eb76b792948c49fcb4d411f7b6b3c68642604051611e9492919061552d565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b1580156120c557600080fd5b505afa1580156120d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120fd9190614837565b6001600160a01b0316146121235760405162461bcd60e51b81526004016101c9906151a8565b6001600160a01b03909116600090815260376020526040902060050155565b6001600160a01b038116600090815260386020908152604080832081518084018352905481526039805483518186028101860190945280845285948594859485948594612251948c9460379493909290918301828280156121cc57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116121ae575b505060355460408051631f94a27560e31b815290516001600160a01b03909216945063fca513a893506004808201935060209291829003018186803b15801561221457600080fd5b505afa158015612228573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061224c9190614837565b613b48565b60405163d609bd1b60e01b8152949a5092985095509350915073__$7347ff53b2b46c21e26a37164ae7f6739f$__9063d609bd1b9061229890899089908790600401615544565b60206040518083038186803b1580156122b057600080fd5b505af41580156122c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122e89190614be4565b935091939550919395565b6122fb614767565b506001600160a01b03166000908152603760209081526040918290208251918201909252600590910154815290565b6000612334614048565b60025490915060ff168061234b575061234b61404d565b80612357575060015481115b6123735760405162461bcd60e51b81526004016101c990615123565b60025460ff16158015612394576002805460ff191660019081179091558290555b603580546001600160a01b0319166001600160a01b03858116919091179182905560408051633efbbf0f60e21b81529051929091169163fbeefc3c91600480820192602092909190829003018186803b1580156123f057600080fd5b505afa158015612404573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124289190614837565b603680546001600160a01b0319166001600160a01b03929092169190911790558015612459576002805460ff191690555b505050565b6035546001600160a01b031681565b600260005414156124905760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03851681526037602090815260408083203384526038909252822090916125de6124ca60058501613294565b600a0a61153588603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561251f57600080fd5b505afa158015612533573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125579190614837565b6001600160a01b031663b3596f078c6040518263ffffffff1660e01b81526004016125829190614d61565b60206040518083038186803b15801561259a57600080fd5b505afa1580156125ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125d29190614be4565b9063ffffffff6139f716565b905073__$69254465eb8f179ea24caa73cf68b23524$__63dfb6b2d7848989858a6019603760386000336001600160a01b03166001600160a01b031681526020019081526020016000206039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561267857600080fd5b505afa15801561268c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126b09190614837565b6040518b63ffffffff1660e01b81526004016126d59a9998979695949392919061548d565b60006040518083038186803b1580156126ed57600080fd5b505af4158015612701573d6000803e3d6000fd5b50505050600383015461271384613340565b612726848960008a63ffffffff6133f816565b600186600281111561273457fe5b600281111561273f57fe5b1415612838576007840154604051630ab714fb60e11b81526001600160a01b039091169063156e29f69061277b9033908b908690600401614d8e565b600060405180830381600087803b15801561279557600080fd5b505af11580156127a9573d6000803e3d6000fd5b505050506007840154604051631e739ae360e21b81526000916001600160a01b0316906379ce6b8c906127e0903390600401614d61565b60206040518083038186803b1580156127f857600080fd5b505afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614cab565b90505061289f565b60088401546040516340c10f1960e01b81526001600160a01b03909116906340c10f199061286c9033908b90600401614d75565b600060405180830381600087803b15801561288657600080fd5b505af115801561289a573d6000803e3d6000fd5b505050505b60098401546040805160208101909152845481526128c691600160d01b900460ff16614053565b6128e65760098401546128e6908490600160d01b900460ff16600161371b565b6006840154604051634efecaa560e01b81526001600160a01b0390911690634efecaa59061291a9033908b90600401614d75565b602060405180830381600087803b15801561293457600080fd5b505af1158015612948573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061296c9190614be4565b5061ffff8516336001600160a01b038a167fe002884724be85e729c98360169e709585b299ace6fbe12aa791d2fee6f652808a8a60018c60028111156129ae57fe5b60028111156129b957fe5b146129c85789600201546129ca565b865b426040516129db949392919061555a565b60405180910390a450506001600055505050505050565b60026000541415612a155760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03808416825260376020526040808320600781015491516370a0823160e01b81529093919092169182906370a0823190612a61908790600401614d61565b60206040518083038186803b158015612a7957600080fd5b505afa158015612a8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ab19190614be4565b905060008111612ad35760405162461bcd60e51b81526004016101c9906150c6565b6000612b0c612afb6aa56fa5b99019a5c8000000612aef614063565b9063ffffffff61331b16565b60038601549063ffffffff61407316565b90506000836001600160a01b031663e78c9b3b876040518263ffffffff1660e01b8152600401612b3c9190614d61565b60206040518083038186803b158015612b5457600080fd5b505afa158015612b68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b8c9190614be4565b90508460010154811080612b9f57508181115b612bbb5760405162461bcd60e51b81526004016101c990614fe4565b612bc485613340565b604051632770a7eb60e21b81526001600160a01b03851690639dc29fac90612bf29089908790600401614d75565b600060405180830381600087803b158015612c0c57600080fd5b505af1158015612c20573d6000803e3d6000fd5b5050506003860154604051630ab714fb60e11b81526001600160a01b038716925063156e29f691612c57918a918891600401614d8e565b600060405180830381600087803b158015612c7157600080fd5b505af1158015612c85573d6000803e3d6000fd5b50612c9f925087915089905060008063ffffffff6133f816565b856001600160a01b0316876001600160a01b03167f443060d15ff6dac05881a7c07a46ef8085d8af4399e436be6c25250df40c5f1842604051612ce2919061553b565b60405180910390a3505050505050506001600055565b60001981565b6001600160a01b0381166000908152603760205260408120610e43906140b5565b6001600160a01b0390811660009081526037602052604090206006810154600782015460089092015490831693918316921690565b60026000541415612d775760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03841681526037602052604090819020905163b25dc48d60e01b815273__$69254465eb8f179ea24caa73cf68b23524$__9063b25dc48d90612dcd908490879060040161552d565b60006040518083038186803b158015612de557600080fd5b505af4158015612df9573d6000803e3d6000fd5b50505060068201546040516370a0823160e01b81526001600160a01b03909116915060009082906370a0823190612e34903390600401614d61565b60206040518083038186803b158015612e4c57600080fd5b505afa158015612e60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e849190614be4565b159050612e9083613340565b612ea3838787600063ffffffff6133f816565b8015612ed2576009830154336000908152603860205260409020612ed291600160d01b900460ff1660016139bc565b6040516394362e8b60e01b81526001600160a01b038316906394362e8b90612f009033908990600401614d75565b600060405180830381600087803b158015612f1a57600080fd5b505af1158015612f2e573d6000803e3d6000fd5b50612f4a925050506001600160a01b0387163384886001613750565b8361ffff16336001600160a01b0316876001600160a01b03167fc12c57b1c73a2c3a2ea4613e9476abb3d8d146857aab7329e24243fb59710c828842604051612f9492919061552d565b60405180910390a45050600160005550505050565b60078101546040516370a0823160e01b815260009182916001600160a01b03909116906370a0823190612fe0908790600401614d61565b60206040518083038186803b158015612ff857600080fd5b505afa15801561300c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130309190614be4565b60088401546040516370a0823160e01b81526001600160a01b03909116906370a0823190613062908890600401614d61565b60206040518083038186803b15801561307a57600080fd5b505afa15801561308e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130b29190614be4565b915091509250929050565b600781015460405163631a6fd560e11b815260009182916001600160a01b039091169063c634dfaa906130f4908790600401614d61565b60206040518083038186803b15801561310c57600080fd5b505afa158015613120573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131449190614be4565b600884015460405163631a6fd560e11b81526001600160a01b039091169063c634dfaa90613062908890600401614d61565b815160016002830281019190911c16151592915050565b6000613198836138de565b156131ae57506001600160a01b03811631610e43565b6040516370a0823160e01b81526001600160a01b038416906370a08231906131da908590600401614d61565b60206040518083038186803b1580156131f257600080fd5b505afa158015613206573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061322a9190614be4565b9050610e43565b6009810154600090600160a01b900464ffffffffff164281141561325b57505060048101546105cc565b60006105c7846004015461328886600201548760090160149054906101000a900464ffffffffff16614109565b9063ffffffff61407316565b5460301c610f01600160d01b031690565b54670fffffffffff0000191690565b5460101c650fffffff0001600160f01b031690565b5460201c630fff0001600160e01b031690565b54603a1c6003600160c61b0316151590565b54603b1c151590565b5460381c600f600160c81b0316151590565b5460391c6007600160c71b0316151590565b600082820183811015611a5b5760405162461bcd60e51b81526004016101c990614fad565b600061334b8261416e565b905080156133d4576001820154600983015460009161337791600160a01b900464ffffffffff16614283565b835490915061338d90829063ffffffff61407316565b8355600283015460098401546000916133b391600160a01b900464ffffffffff16614109565b90506133cc84600401548261407390919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b15801561343f57600080fd5b505afa158015613453573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134779190614be4565b600686015490915060009061349e906001600160a01b03878116911663ffffffff61318d16565b6009870154909150600090819081906001600160a01b03166357e37af0896134dc896134d0898d63ffffffff61331b16565b9063ffffffff6136d916565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561352c57600080fd5b505afa158015613540573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135649190614be4565b8d60080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156135b457600080fd5b505afa1580156135c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135ec9190614be4565b8a6040518663ffffffff1660e01b815260040161360d959493929190614ec3565b60606040518083038186803b15801561362557600080fd5b505afa158015613639573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061365d9190614c7e565b60018c0183905560038c0182905560028c018190558b5460048d01546040519497509295509093506001600160a01b038b16927f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4926136c692889288928c9289929091906155cd565b60405180910390a2505050505050505050565b6000611a5b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506142e3565b816002028161372b57600061372e565b60015b60ff16901b826002026001901b19846000015416178360000181905550505050565b8161375a57611b94565b613763856138de565b156138c357813410156137885760405162461bcd60e51b81526004016101c9906151fb565b6001600160a01b038316301461381b576000836001600160a01b03168361c350906040516137b590614d5e565b600060405180830381858888f193505050503d80600081146137f3576040519150601f19603f3d011682016040523d82523d6000602084013e6137f8565b606091505b50509050806138195760405162461bcd60e51b81526004016101c990615245565b505b80801561382757508134115b156138be5760006001600160a01b038516613848348563ffffffff6136d916565b61c3509060405161385890614d5e565b600060405180830381858888f193505050503d8060008114613896576040519150601f19603f3d011682016040523d82523d6000602084013e61389b565b606091505b50509050806138bc5760405162461bcd60e51b81526004016101c990615245565b505b611b94565b611b946001600160a01b03861685858563ffffffff61430f16565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b8061390d57612459565b613916836138de565b156139a2576000826001600160a01b03168261c3509060405161393890614d5e565b600060405180830381858888f193505050503d8060008114613976576040519150601f19603f3d011682016040523d82523d6000602084013e61397b565b606091505b505090508061399c5760405162461bcd60e51b81526004016101c990615245565b50612459565b6124596001600160a01b038416838363ffffffff61436d16565b81600202600101816139cf5760006139d2565b60015b60ff16901b826002026001016001901b19846000015416178360000181905550505050565b600082613a0657506000610e43565b82820282848281613a1357fe5b0414611a5b5760405162461bcd60e51b81526004016101c990615085565b6000611a5b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061438c565b6000805b603954811015613ac057826001600160a01b031660398281548110613a9857fe5b6000918252602090912001546001600160a01b03161415613ab857600191505b600101613a77565b5080613b4457603980546001600160a01b0384166000818152603760205260408120600901805460ff909416600160d01b0260ff60d01b19909416939093179092558254600181018455929091527fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d390910180546001600160a01b03191690911790555b5050565b6000806000806000613b5861477a565b613b61896143c3565b15613b7e575060009450849350839250829150600019905061403b565b600060e08201525b87518160e001511015613f8e5760e0810151613ba9908a9063ffffffff6143c816565b613bb257613f7e565b878160e0015181518110613bc257fe5b6020908102919091018101516001600160a01b031661020083018190526000908152908b905260409020613bf8600582016143d8565b6080860181905260c08601929092525060a0840191909152600a0a602083015261020082015160405163b3596f0760e01b81526001600160a01b038a169163b3596f0791613c499190600401614d61565b60206040518083038186803b158015613c6157600080fd5b505afa158015613c75573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c999190614be4565b825260a082015115801590613cbf575060e0820151613cbf908b9063ffffffff61317616565b15613df05760068101546040516370a0823160e01b81526001600160a01b03909116906370a0823190613cf6908f90600401614d61565b60206040518083038186803b158015613d0e57600080fd5b505afa158015613d22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d469190614be4565b6040830181905260208301518351600092613d6b92916115359163ffffffff6139f716565b610120840151909150613d84908263ffffffff61331b16565b61012084015260a0830151613db690613da490839063ffffffff6139f716565b6101808501519063ffffffff61331b16565b61018084015260c0830151613de890613dd690839063ffffffff6139f716565b6101a08501519063ffffffff61331b16565b6101a0840152505b60e0820151613e06908b9063ffffffff61405316565b15613f7c5760078101546040516370a0823160e01b81526001600160a01b03909116906370a0823190613e3d908f90600401614d61565b60206040518083038186803b158015613e5557600080fd5b505afa158015613e69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e8d9190614be4565b826060018181525050613f3d8160080160009054906101000a90046001600160a01b03166001600160a01b03166370a082318e6040518263ffffffff1660e01b8152600401613edc9190614d61565b60206040518083038186803b158015613ef457600080fd5b505afa158015613f08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f2c9190614be4565b60608401519063ffffffff61331b16565b6060830181905260208301518351613f7592613f6392916115359163ffffffff6139f716565b6101408401519063ffffffff61331b16565b6101408301525b505b60e0810180516001019052613b86565b600081610120015111613fa2576000613fbd565b610120810151610180820151613fbd9163ffffffff613a3116565b610180820152610120810151613fd4576000613fef565b6101208101516101a0820151613fef9163ffffffff613a3116565b6101a0820181905261012082015161014083015161400c9261441f565b61010082018190526101208201516101408301516101808401516101a090940151919850965091945090925090505b9550955095509550959050565b600290565b303b1590565b9051600160029092021c16151590565b6b033b2e3c9fd0803ce800000090565b6000611a5b6b033b2e3c9fd0803ce8000000611535614098868663ffffffff6139f716565b60026b033b2e3c9fd0803ce80000005b049063ffffffff61331b16565b6009810154600090600160a01b900464ffffffffff16428114156140dc57505080546105cc565b60006105c7846000015461328886600101548760090160149054906101000a900464ffffffffff16614283565b6000806141234264ffffffffff851663ffffffff6136d916565b9050600061413b856301e1338063ffffffff613a3116565b90506141658261415961414c614063565b849063ffffffff61331b16565b9063ffffffff61444f16565b95945050505050565b6000610e438260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156141c357600080fd5b505afa1580156141d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141fb9190614be4565b8360070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561424b57600080fd5b505afa15801561425f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aef9190614be4565b60008061429d4264ffffffffff851663ffffffff6136d916565b905060006142c66142b16301e133806144a9565b6142ba846144a9565b9063ffffffff6144bf16565b90506141656142d3614063565b612aef878463ffffffff61407316565b600081848411156143075760405162461bcd60e51b81526004016101c99190614f49565b505050900390565b614367846323b872dd60e01b85858560405160240161433093929190614e4b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526144ea565b50505050565b6124598363a9059cbb60e01b8484604051602401614330929190614d75565b600081836143ad5760405162461bcd60e51b81526004016101c99190614f49565b5060008385816143b957fe5b0495945050505050565b511590565b9051600360029092021c16151590565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b60008261442f5750600019611a5b565b611a5883614443868563ffffffff61457916565b9063ffffffff61459e16565b60006002820661446b576b033b2e3c9fd0803ce800000061446d565b825b90506002820491505b8115610e43576144868384614073565b9250600282061561449e5761449b8184614073565b90505b600282049150614476565b6000610e4382633b9aca0063ffffffff6139f716565b6000600282046144e28361153561414c876b033b2e3c9fd0803ce80000006139f7565b949350505050565b606061453f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166145bd9092919063ffffffff16565b805190915015612459578080602001905181019061455d9190614bb0565b6124595760405162461bcd60e51b81526004016101c9906152e0565b6000611a5b612710611535614594868663ffffffff6139f716565b60026127106140a8565b6000600282046144e28361153561414c87670de0b6b3a76400006139f7565b6060611a58848460008560606145d285610593565b6145ee5760405162461bcd60e51b81526004016101c9906151c4565b60006060866001600160a01b0316858760405161460b9190614d42565b60006040518083038185875af1925050503d8060008114614648576040519150601f19603f3d011682016040523d82523d6000602084013e61464d565b606091505b509150915081156146615791506144e29050565b8051156146715780518082602001fd5b8360405162461bcd60e51b81526004016101c99190614f49565b604051806101a0016040528060008152602001600081526020016000815260200160008152602001600081526020016146c2614767565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c0820181905260e09091015290565b6040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681525090565b6040518060200160405280600081525090565b60405180610260016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160006001600160a01b031681526020016000151581526020016000151581525090565b60006020828403121561482c578081fd5b8135611a5b81615713565b600060208284031215614848578081fd5b8151611a5b81615713565b60008060408385031215614865578081fd5b823561487081615713565b9150602083013561488081615713565b809150509250929050565b600080600080608085870312156148a0578182fd5b84356148ab81615713565b935060208501356148bb81615713565b93969395505050506040820135916060013590565b600080600080600060a086880312156148e7578081fd5b85356148f281615713565b9450602086013561490281615713565b9350604086013561491281615713565b9250606086013561492281615713565b9150608086013561493281615713565b809150509295509295909350565b600080600080600060a08688031215614957578081fd5b853561496281615713565b9450602086013561497281615713565b9350604086013561498281615713565b925060608601359150608086013561493281615728565b6000806000606084860312156149ad578283fd5b83356149b881615713565b925060208401356149c881615713565b929592945050506040919091013590565b600080600080608085870312156149ee578384fd5b84356149f981615713565b93506020850135614a0981615713565b925060408501359150606085013567ffffffffffffffff811115614a2b578182fd5b80860187601f820112614a3c578283fd5b80359150614a51614a4c836156b6565b61568f565b828152886020848401011115614a65578384fd5b8260208301602083013791820160200192909252939692955090935050565b60008060408385031215614a96578182fd5b8235614aa181615713565b9150602083013561488081615728565b60008060408385031215614ac3578182fd5b8235614ace81615713565b946020939093013593505050565b600080600060608486031215614af0578081fd5b8335614afb81615713565b925060208401359150604084013561ffff81168114614b18578182fd5b809150509250925092565b60008060008060808587031215614b38578182fd5b8435614b4381615713565b935060208501359250604085013591506060850135614b6181615713565b939692955090935050565b60008060008060808587031215614b81578182fd5b8435614b8c81615713565b93506020850135925060408501359150606085013561ffff81168114614b61578182fd5b600060208284031215614bc1578081fd5b8151611a5b81615728565b600060208284031215614bdd578081fd5b5035919050565b600060208284031215614bf5578081fd5b5051919050565b60008060408385031215614c0e578182fd5b82519150602083015167ffffffffffffffff811115614c2b578182fd5b80840185601f820112614c3c578283fd5b80519150614c4c614a4c836156b6565b828152866020848401011115614c60578384fd5b614c718360208301602085016156da565b8093505050509250929050565b600080600060608486031215614c92578081fd5b8351925060208401519150604084015190509250925092565b600060208284031215614cbc578081fd5b815164ffffffffff81168114611a5b578182fd5b6000815480845260208085019450838352808320835b83811015614d0b5781546001600160a01b031687529582019560019182019101614ce6565b509495945050505050565b60008151808452614d2e8160208601602086016156da565b601f01601f19169290920160200192915050565b60008251614d548184602087016156da565b9190910192915050565b90565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090614de990830184614d16565b979650505050505050565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b03958616815293851660208501529190931660408301526060820192909252901515608082015260a00190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b600060018060a01b03808a16835280891660208401528760408401528660608401528554608084015260e060a0840152614eac60e0840186614cd0565b915080841660c08401525098975050505050505050565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b6020808252825182820181905260009190848201906040850190845b81811015614f325783516001600160a01b031683529284019291840191600101614f0d565b50909695505050505050565b901515815260200190565b600060208252611a5b6020830184614d16565b60208082526031908201527f5468657265206973206e6f7420656e6f756768206c697175696469747920617660408201527061696c61626c6520746f20626f72726f7760781b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252602f908201527f496e746572657374207261746520726562616c616e636520636f6e646974696f60408201526e1b9cc81dd95c99481b9bdd081b595d608a1b606082015260800190565b60208082526032908201527f5468652061637475616c2062616c616e6365206f66207468652070726f746f636040820152711bdb081a5cc81a5b98dbdb9cda5cdd195b9d60721b606082015260800190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b60208082526038908201527f5573657220646f6573206e6f74206861766520616e7920737461626c6520726160408201527f7465206c6f616e20666f72207468697320726573657276650000000000000000606082015260800190565b6020808252602e908201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560408201526d195b881a5b9a5d1a585b1a5e995960921b606082015260800190565b60208082526017908201527f4c69717569646174696f6e2063616c6c206661696c6564000000000000000000604082015260600190565b602080825260029082015261033360f41b604082015260600190565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b6020808252602a908201527f57726f6e67207573616765206f66204554482e756e6976657273616c5472616e6040820152697366657246726f6d282960b01b606082015260800190565b60208082526013908201527211551217d514905394d1915497d19052531151606a1b604082015260600190565b602080825260029082015261191960f11b604082015260600190565b60208082526032908201527f5468652072657175657374656420616d6f756e7420697320746f6f20736d616c60408201527136103337b9103090233630b9b42637b0b71760711b606082015260800190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b9051815260200190565b9485526001600160a01b03938416602086015291831660408501528216606084015216608082015260a00190565b600087825260018060a01b03808816602084015286604084015285606084015260c060808401526153cd60c0840186614cd0565b915080841660a084015250979650505050505050565b9283526001600160a01b03919091166020830152604082015260600190565b8981526001600160a01b0389811660208301526040820189905261012082019061542b89615706565b8860608401528088166080840152508560a08301528460c08301528360e0830152826101008301529a9950505050505050505050565b9485526001600160a01b0393909316602085015260408401919091526060830152608082015260a00190565b60006101408c835260018060a01b03808d1660208501528b60408501528a60608501528960808501528860a08501528760c08501528660e0850152816101008501526154db82850187614cd0565b925080851661012085015250509b9a5050505050505050505050565b600060a08201905086825285602083015284604083015283606083015261551d83615706565b8260808301529695505050505050565b918252602082015260400190565b90815260200190565b9283526020830191909152604082015260600190565b93845260208401929092526040830152606082015260800190565b998a5260208a0198909852604089019690965260608801949094526001600160a01b03929092166080870152151560a0860152151560c0850152151560e0840152151561010083015215156101208201526101400190565b958652602086019490945260408501929092526060840152608083015260a082015260c00190565b998a5260208a019890985260408901969096526060880194909452608087019290925260a086015260c085015260e084015261010083015264ffffffffff166101208201526101400190565b998a5260208a019890985260408901969096526060880194909452608087019290925260a086015260c085015260e084015264ffffffffff1661010083015215156101208201526101400190565b60405181810167ffffffffffffffff811182821017156156ae57600080fd5b604052919050565b600067ffffffffffffffff8211156156cc578081fd5b50601f01601f191660200190565b60005b838110156156f55781810151838201526020016156dd565b838111156143675750506000910152565b6003811061571057fe5b50565b6001600160a01b038116811461571057600080fd5b801515811461571057600080fdfea264697066735822122016109c0d027be94cb12965b09dd6afa371a6b146a8374cf999645f6a4d14ee2b64736f6c63430006080033"; export interface LendingPoolLibraryAddresses { ["__$69254465eb8f179ea24caa73cf68b23524$__"]: string; diff --git a/types/LendingPoolLiquidationManagerFactory.ts b/types/LendingPoolLiquidationManagerFactory.ts index b6932bfb..d3a732d5 100644 --- a/types/LendingPoolLiquidationManagerFactory.ts +++ b/types/LendingPoolLiquidationManagerFactory.ts @@ -174,4 +174,4 @@ const _abi = [ ]; const _bytecode = - "0x6080604052600060015534801561001557600080fd5b5060016000556124208061002a6000396000f3fe6080604052600436106100335760003560e01c8062a718a9146100385780634fe7a6e5146100fb578063c72c4d1014610141575b600080fd5b61007c600480360360a081101561004e57600080fd5b506001600160a01b038135811691602081013582169160408201351690606081013590608001351515610156565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b838110156100bf5781810151838201526020016100a7565b50505050905090810190601f1680156100ec5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b34801561010757600080fd5b506101256004803603602081101561011e57600080fd5b5035610951565b604080516001600160a01b039092168252519081900360200190f35b34801561014d57600080fd5b50610125610978565b6001600160a01b0380851660009081526037602090815260408083208985168452818420948816845260389092528220919260609261019361214e565b6001600160a01b03891660009081526038602090815260409182902082518083018452905481526039805484518185028101850190955280855261028c948e946037949391929083018282801561021357602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116101f5575b505060355460408051631f94a27560e31b815290516001600160a01b03909216945063fca513a893506004808201935060209291829003018186803b15801561025b57600080fd5b505afa15801561026f573d6000803e3d6000fd5b505050506040513d602081101561028557600080fd5b5051610987565b6101c08601819052670de0b6b3a76400001193506102d092505050576004604051806060016040528060288152602001612399602891399550955050505050610947565b6006830154604080516370a0823160e01b81526001600160a01b038c81166004830152915191909216916370a08231916024808301926020929190829003018186803b15801561031f57600080fd5b505afa158015610333573d6000803e3d6000fd5b505050506040513d602081101561034957600080fd5b50518152600061035b60058501610e64565b11801561038a5750600983015460408051602081019091528354815261038a91600160d01b900460ff16610e79565b151561020082018190526103c05760026040518060600160405280602a815260200161231b602a91399550955050505050610947565b6103ca8985610e91565b6040830152602082018190521580156103e557506040810151155b156104125760036040518060600160405280602a81526020016123c1602a91399550955050505050610947565b61043f61138861043383604001518460200151610f9490919063ffffffff16565b9063ffffffff610ff516565b6060820181905288116104525787610458565b80606001515b60808201819052815161047391859187918f918f9190611023565b6101a083018190526101808301919091526080820151111561049b576101a081015160808201525b60068301546001600160a01b03166101e0820152866105115760006104d7826101e001518d6001600160a01b03166112ae90919063ffffffff16565b905081610180015181101561050f5760056040518060600160405280603381526020016122e860339139965096505050505050610947565b505b61051a84611358565b60808101516105349085908c90600063ffffffff61141016565b80608001518160400151106105bd576008840154608082015160408051632770a7eb60e21b81526001600160a01b038d81166004830152602482019390935290519190921691639dc29fac91604480830192600092919082900301818387803b1580156105a057600080fd5b505af11580156105b4573d6000803e3d6000fd5b505050506106c4565b60088401546040808301518151632770a7eb60e21b81526001600160a01b038d8116600483015260248201929092529151921691639dc29fac9160448082019260009290919082900301818387803b15801561061857600080fd5b505af115801561062c573d6000803e3d6000fd5b505050506007840154604082015160808301516001600160a01b0390921691639dc29fac918c9161065c916116fd565b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156106ab57600080fd5b505af11580156106bf573d6000803e3d6000fd5b505050505b861561074c576101e08101516101808201516040805163f866c31960e01b81526001600160a01b038d8116600483015233602483015260448201939093529051919092169163f866c31991606480830192600092919082900301818387803b15801561072f57600080fd5b505af1158015610743573d6000803e3d6000fd5b5050505061087c565b61075583611358565b6101808101516107719084908d9060009063ffffffff61141016565b806101e001516001600160a01b0316633edb7cb88a8361018001516040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156107db57600080fd5b505af11580156107ef573d6000803e3d6000fd5b5050506101e082015161018083015160408051634efecaa560e01b81523360048201526024810192909252516001600160a01b039092169250634efecaa59160448083019260209291908290030181600087803b15801561084f57600080fd5b505af1158015610863573d6000803e3d6000fd5b505050506040513d602081101561087957600080fd5b50505b600684015460808201516108aa916001600160a01b038d81169233929190911690600163ffffffff61173f16565b60808082015161018083015160408051928352602083019190915233828201528915156060830152429282019290925290516001600160a01b03808c16928d821692918f16917f54343dd5791108d018f6fb8def2c14d746f777c51e9924962237813a527528709181900360a00190a46000604051806040016040528060098152602001684e6f206572726f727360b81b81525095509550505050505b9550959350505050565b6039818154811061095e57fe5b6000918252602090912001546001600160a01b0316905081565b6035546001600160a01b031681565b60008060008060006109976121e8565b6109a089611932565b156109bd5750600094508493508392508291506000199050610e57565b600060e08201525b87518160e001511015610daa5760e08101516109e8908a9063ffffffff61193716565b6109f157610d9a565b878160e0015181518110610a0157fe5b6020908102919091018101516001600160a01b031661020083018190526000908152908b905260409020610a3760058201611947565b6080860181905260c08601929092525060a0840191909152600a0a6020808401919091526102008301516040805163b3596f0760e01b81526001600160a01b0392831660048201529051918b169263b3596f0792602480840193829003018186803b158015610aa557600080fd5b505afa158015610ab9573d6000803e3d6000fd5b505050506040513d6020811015610acf57600080fd5b5051825260a082015115801590610af7575060e0820151610af7908b9063ffffffff610e7916565b15610c2d576006810154604080516370a0823160e01b81526001600160a01b038f81166004830152915191909216916370a08231916024808301926020929190829003018186803b158015610b4b57600080fd5b505afa158015610b5f573d6000803e3d6000fd5b505050506040513d6020811015610b7557600080fd5b50516040830181905260208301518351600092610ba89291610b9c9163ffffffff61198e16565b9063ffffffff6119e716565b610120840151909150610bc1908263ffffffff610f9416565b61012084015260a0830151610bf390610be190839063ffffffff61198e16565b6101808501519063ffffffff610f9416565b61018084015260c0830151610c2590610c1390839063ffffffff61198e16565b6101a08501519063ffffffff610f9416565b6101a0840152505b60e0820151610c43908b9063ffffffff611a2916565b15610d98576007810154604080516370a0823160e01b81526001600160a01b038f81166004830152915191909216916370a08231916024808301926020929190829003018186803b158015610c9757600080fd5b505afa158015610cab573d6000803e3d6000fd5b505050506040513d6020811015610cc157600080fd5b505160608301526008810154604080516370a0823160e01b81526001600160a01b038f811660048301529151610d599392909216916370a0823191602480820192602092909190829003018186803b158015610d1c57600080fd5b505afa158015610d30573d6000803e3d6000fd5b505050506040513d6020811015610d4657600080fd5b505160608401519063ffffffff610f9416565b6060830181905260208301518351610d9192610d7f9291610b9c9163ffffffff61198e16565b6101408401519063ffffffff610f9416565b6101408301525b505b60e08101805160010190526109c5565b600081610120015111610dbe576000610dd9565b610120810151610180820151610dd99163ffffffff6119e716565b610180820152610120810151610df0576000610e0b565b6101208101516101a0820151610e0b9163ffffffff6119e716565b6101a08201819052610120820151610140830151610e2892611a39565b61010082018190526101208201516101408301516101808401516101a090940151919850965091945090925090505b9550955095509550959050565b5460101c650fffffff0001600160f01b031690565b815160016002830281019190911c1615155b92915050565b6007810154604080516370a0823160e01b81526001600160a01b0385811660048301529151600093849316916370a08231916024808301926020929190829003018186803b158015610ee257600080fd5b505afa158015610ef6573d6000803e3d6000fd5b505050506040513d6020811015610f0c57600080fd5b50516008840154604080516370a0823160e01b81526001600160a01b038881166004830152915191909216916370a08231916024808301926020929190829003018186803b158015610f5d57600080fd5b505afa158015610f71573d6000803e3d6000fd5b505050506040513d6020811015610f8757600080fd5b5051909590945092505050565b600082820183811015610fee576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000610fee612710610b9c611010868663ffffffff61198e16565b60026127105b049063ffffffff610f9416565b60355460408051631f94a27560e31b81529051600092839283926001600160a01b039092169163fca513a891600480820192602092909190829003018186803b15801561106f57600080fd5b505afa158015611083573d6000803e3d6000fd5b505050506040513d602081101561109957600080fd5b505190506110a5612289565b816001600160a01b031663b3596f07896040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156110fb57600080fd5b505afa15801561110f573d6000803e3d6000fd5b505050506040513d602081101561112557600080fd5b5051604080830191909152805163b3596f0760e01b81526001600160a01b03898116600483015291519184169163b3596f0791602480820192602092909190829003018186803b15801561117857600080fd5b505afa15801561118c573d6000803e3d6000fd5b505050506040513d60208110156111a257600080fd5b505160608201526111b560058b01611947565b60c08501526020840152506111ce905060058a01611a71565b60a082018190526020820151604083015161122792610433916111f991600a0a63ffffffff61198e16565b610b9c8560c00151600a0a61121b8c886060015161198e90919063ffffffff16565b9063ffffffff61198e16565b608082018190528510156112965784935061128f81602001516112836112618460c00151600a0a856060015161198e90919063ffffffff16565b610b9c8560a00151600a0a61121b8a886040015161198e90919063ffffffff16565b9063ffffffff611a8216565b92506112a1565b806080015193508592505b5050965096945050505050565b60006112b983611aa8565b156112cf57506001600160a01b03811631610e8b565b826001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561132557600080fd5b505afa158015611339573d6000803e3d6000fd5b505050506040513d602081101561134f57600080fd5b50519050610e8b565b600061136382611acd565b905080156113ec576001820154600983015460009161138f91600160a01b900464ffffffffff16611bcd565b83549091506113a590829063ffffffff611c4216565b8355600283015460098401546000916113cb91600160a01b900464ffffffffff16611c7b565b90506113e4846004015482611c4290919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b15801561145757600080fd5b505afa15801561146b573d6000803e3d6000fd5b505050506040513d602081101561148157600080fd5b505160068601549091506000906114aa906001600160a01b03878116911663ffffffff6112ae16565b6009870154909150600090819081906001600160a01b03166357e37af0896114e8896114dc898d63ffffffff610f9416565b9063ffffffff6116fd16565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561153857600080fd5b505afa15801561154c573d6000803e3d6000fd5b505050506040513d602081101561156257600080fd5b505160088e0154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b1580156115ab57600080fd5b505afa1580156115bf573d6000803e3d6000fd5b505050506040513d60208110156115d557600080fd5b5051604080516001600160e01b031960e088901b1681526001600160a01b039095166004860152602485019390935260448401919091526064830152608482018990525160a4808301926060929190829003018186803b15801561163857600080fd5b505afa15801561164c573d6000803e3d6000fd5b505050506040513d606081101561166257600080fd5b50805160208083015160409384015160018e0184905560038e0182905560028e018190558d5460048f015486518681529485018490528487018c905260608501839052608085019190915260a0840152935192965094509192506001600160a01b038a16917f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4919081900360c00190a2505050505050505050565b6000610fee83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611cca565b816117495761192b565b61175285611aa8565b1561191057813410156117965760405162461bcd60e51b815260040180806020018281038252602a815260200180612345602a913960400191505060405180910390fd5b6001600160a01b0383163014611849576040516000906001600160a01b0385169061c35090859084818181858888f193505050503d80600081146117f6576040519150601f19603f3d011682016040523d82523d6000602084013e6117fb565b606091505b5050905080611847576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b505b80801561185557508134115b1561190b5760006001600160a01b038516611876348563ffffffff6116fd16565b60405161c35091906000818181858888f193505050503d80600081146118b8576040519150601f19603f3d011682016040523d82523d6000602084013e6118bd565b606091505b5050905080611909576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b505b61192b565b61192b6001600160a01b03861685858563ffffffff611d6116565b5050505050565b511590565b9051600360029092021c16151590565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b60008261199d57506000610e8b565b828202828482816119aa57fe5b0414610fee5760405162461bcd60e51b81526004018080602001828103825260218152602001806122c76021913960400191505060405180910390fd5b6000610fee83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611dc1565b9051600160029092021c16151590565b600082611a495750600019610fee565b611a6983611a5d868563ffffffff610ff516565b9063ffffffff611e2616565b949350505050565b5460301c610f01600160d01b031690565b600060028204611a6983610b9c611a9b8761271061198e565b849063ffffffff610f9416565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b6000610e8b8260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b2257600080fd5b505afa158015611b36573d6000803e3d6000fd5b505050506040513d6020811015611b4c57600080fd5b50516007840154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b158015611b9557600080fd5b505afa158015611ba9573d6000803e3d6000fd5b505050506040513d6020811015611bbf57600080fd5b50519063ffffffff610f9416565b600080611be74264ffffffffff851663ffffffff6116fd16565b90506000611c10611bfb6301e13380611e45565b611c0484611e45565b9063ffffffff611e5b16565b9050611c39611c1d611e7e565b611c2d878463ffffffff611c4216565b9063ffffffff610f9416565b95945050505050565b6000610fee6b033b2e3c9fd0803ce8000000610b9c611c67868663ffffffff61198e16565b60026b033b2e3c9fd0803ce8000000611016565b600080611c954264ffffffffff851663ffffffff6116fd16565b90506000611cad856301e1338063ffffffff6119e716565b9050611c3982611cbe611a9b611e7e565b9063ffffffff611e8e16565b60008184841115611d595760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611d1e578181015183820152602001611d06565b50505050905090810190601f168015611d4b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052611dbb908590611ee8565b50505050565b60008183611e105760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611d1e578181015183820152602001611d06565b506000838581611e1c57fe5b0495945050505050565b600060028204611a6983610b9c611a9b87670de0b6b3a764000061198e565b6000610e8b82633b9aca0063ffffffff61198e16565b600060028204611a6983610b9c611a9b876b033b2e3c9fd0803ce800000061198e565b6b033b2e3c9fd0803ce800000090565b600060028206611eaa576b033b2e3c9fd0803ce8000000611eac565b825b90506002820491505b8115610e8b57611ec58384611c42565b92506002820615611edd57611eda8184611c42565b90505b600282049150611eb5565b6060611f3d826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611f9e9092919063ffffffff16565b805190915015611f9957808060200190516020811015611f5c57600080fd5b5051611f995760405162461bcd60e51b815260040180806020018281038252602a81526020018061236f602a913960400191505060405180910390fd5b505050565b6060611a6984846000856060611fb385612115565b612004576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106120435780518252601f199092019160209182019101612024565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146120a5576040519150601f19603f3d011682016040523d82523d6000602084013e6120aa565b606091505b509150915081156120be579150611a699050565b8051156120ce5780518082602001fd5b60405162461bcd60e51b8152602060048201818152865160248401528651879391928392604401919085019080838360008315611d1e578181015183820152602001611d06565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590611a69575050151592915050565b60405180610220016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600060028111156121ad57fe5b81526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681526020016000151581525090565b60405180610260016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160006001600160a01b031681526020016000151581526020016000151581525090565b6040518060e0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152509056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7754686572652069736e277420656e6f756768206c697175696469747920617661696c61626c6520746f206c697175696461746554686520636f6c6c61746572616c2063686f73656e2063616e6e6f74206265206c69717569646174656457726f6e67207573616765206f66204554482e756e6976657273616c5472616e7366657246726f6d28295361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565644865616c746820666163746f72206973206e6f742062656c6f7720746865207468726573686f6c645573657220646964206e6f7420626f72726f7720746865207370656369666965642063757272656e6379a264697066735822122077b4bbee7148b7334bcde93d70fdf6fb23a8443d64ef51b5c53d9007126c4ad464736f6c63430006080033"; + "0x6080604052600060015534801561001557600080fd5b5060016000556124208061002a6000396000f3fe6080604052600436106100335760003560e01c8062a718a9146100385780634fe7a6e5146100fb578063c72c4d1014610141575b600080fd5b61007c600480360360a081101561004e57600080fd5b506001600160a01b038135811691602081013582169160408201351690606081013590608001351515610156565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b838110156100bf5781810151838201526020016100a7565b50505050905090810190601f1680156100ec5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b34801561010757600080fd5b506101256004803603602081101561011e57600080fd5b5035610951565b604080516001600160a01b039092168252519081900360200190f35b34801561014d57600080fd5b50610125610978565b6001600160a01b0380851660009081526037602090815260408083208985168452818420948816845260389092528220919260609261019361214e565b6001600160a01b03891660009081526038602090815260409182902082518083018452905481526039805484518185028101850190955280855261028c948e946037949391929083018282801561021357602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116101f5575b505060355460408051631f94a27560e31b815290516001600160a01b03909216945063fca513a893506004808201935060209291829003018186803b15801561025b57600080fd5b505afa15801561026f573d6000803e3d6000fd5b505050506040513d602081101561028557600080fd5b5051610987565b6101c08601819052670de0b6b3a76400001193506102d092505050576004604051806060016040528060288152602001612399602891399550955050505050610947565b6006830154604080516370a0823160e01b81526001600160a01b038c81166004830152915191909216916370a08231916024808301926020929190829003018186803b15801561031f57600080fd5b505afa158015610333573d6000803e3d6000fd5b505050506040513d602081101561034957600080fd5b50518152600061035b60058501610e64565b11801561038a5750600983015460408051602081019091528354815261038a91600160d01b900460ff16610e79565b151561020082018190526103c05760026040518060600160405280602a815260200161231b602a91399550955050505050610947565b6103ca8985610e91565b6040830152602082018190521580156103e557506040810151155b156104125760036040518060600160405280602a81526020016123c1602a91399550955050505050610947565b61043f61138861043383604001518460200151610f9490919063ffffffff16565b9063ffffffff610ff516565b6060820181905288116104525787610458565b80606001515b60808201819052815161047391859187918f918f9190611023565b6101a083018190526101808301919091526080820151111561049b576101a081015160808201525b60068301546001600160a01b03166101e0820152866105115760006104d7826101e001518d6001600160a01b03166112ae90919063ffffffff16565b905081610180015181101561050f5760056040518060600160405280603381526020016122e860339139965096505050505050610947565b505b61051a84611358565b60808101516105349085908c90600063ffffffff61141016565b80608001518160400151106105bd576008840154608082015160408051632770a7eb60e21b81526001600160a01b038d81166004830152602482019390935290519190921691639dc29fac91604480830192600092919082900301818387803b1580156105a057600080fd5b505af11580156105b4573d6000803e3d6000fd5b505050506106c4565b60088401546040808301518151632770a7eb60e21b81526001600160a01b038d8116600483015260248201929092529151921691639dc29fac9160448082019260009290919082900301818387803b15801561061857600080fd5b505af115801561062c573d6000803e3d6000fd5b505050506007840154604082015160808301516001600160a01b0390921691639dc29fac918c9161065c916116fd565b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156106ab57600080fd5b505af11580156106bf573d6000803e3d6000fd5b505050505b861561074c576101e08101516101808201516040805163f866c31960e01b81526001600160a01b038d8116600483015233602483015260448201939093529051919092169163f866c31991606480830192600092919082900301818387803b15801561072f57600080fd5b505af1158015610743573d6000803e3d6000fd5b5050505061087c565b61075583611358565b6101808101516107719084908d9060009063ffffffff61141016565b806101e001516001600160a01b0316633edb7cb88a8361018001516040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156107db57600080fd5b505af11580156107ef573d6000803e3d6000fd5b5050506101e082015161018083015160408051634efecaa560e01b81523360048201526024810192909252516001600160a01b039092169250634efecaa59160448083019260209291908290030181600087803b15801561084f57600080fd5b505af1158015610863573d6000803e3d6000fd5b505050506040513d602081101561087957600080fd5b50505b600684015460808201516108aa916001600160a01b038d81169233929190911690600163ffffffff61173f16565b60808082015161018083015160408051928352602083019190915233828201528915156060830152429282019290925290516001600160a01b03808c16928d821692918f16917f54343dd5791108d018f6fb8def2c14d746f777c51e9924962237813a527528709181900360a00190a46000604051806040016040528060098152602001684e6f206572726f727360b81b81525095509550505050505b9550959350505050565b6039818154811061095e57fe5b6000918252602090912001546001600160a01b0316905081565b6035546001600160a01b031681565b60008060008060006109976121e8565b6109a089611932565b156109bd5750600094508493508392508291506000199050610e57565b600060e08201525b87518160e001511015610daa5760e08101516109e8908a9063ffffffff61193716565b6109f157610d9a565b878160e0015181518110610a0157fe5b6020908102919091018101516001600160a01b031661020083018190526000908152908b905260409020610a3760058201611947565b6080860181905260c08601929092525060a0840191909152600a0a6020808401919091526102008301516040805163b3596f0760e01b81526001600160a01b0392831660048201529051918b169263b3596f0792602480840193829003018186803b158015610aa557600080fd5b505afa158015610ab9573d6000803e3d6000fd5b505050506040513d6020811015610acf57600080fd5b5051825260a082015115801590610af7575060e0820151610af7908b9063ffffffff610e7916565b15610c2d576006810154604080516370a0823160e01b81526001600160a01b038f81166004830152915191909216916370a08231916024808301926020929190829003018186803b158015610b4b57600080fd5b505afa158015610b5f573d6000803e3d6000fd5b505050506040513d6020811015610b7557600080fd5b50516040830181905260208301518351600092610ba89291610b9c9163ffffffff61198e16565b9063ffffffff6119e716565b610120840151909150610bc1908263ffffffff610f9416565b61012084015260a0830151610bf390610be190839063ffffffff61198e16565b6101808501519063ffffffff610f9416565b61018084015260c0830151610c2590610c1390839063ffffffff61198e16565b6101a08501519063ffffffff610f9416565b6101a0840152505b60e0820151610c43908b9063ffffffff611a2916565b15610d98576007810154604080516370a0823160e01b81526001600160a01b038f81166004830152915191909216916370a08231916024808301926020929190829003018186803b158015610c9757600080fd5b505afa158015610cab573d6000803e3d6000fd5b505050506040513d6020811015610cc157600080fd5b505160608301526008810154604080516370a0823160e01b81526001600160a01b038f811660048301529151610d599392909216916370a0823191602480820192602092909190829003018186803b158015610d1c57600080fd5b505afa158015610d30573d6000803e3d6000fd5b505050506040513d6020811015610d4657600080fd5b505160608401519063ffffffff610f9416565b6060830181905260208301518351610d9192610d7f9291610b9c9163ffffffff61198e16565b6101408401519063ffffffff610f9416565b6101408301525b505b60e08101805160010190526109c5565b600081610120015111610dbe576000610dd9565b610120810151610180820151610dd99163ffffffff6119e716565b610180820152610120810151610df0576000610e0b565b6101208101516101a0820151610e0b9163ffffffff6119e716565b6101a08201819052610120820151610140830151610e2892611a39565b61010082018190526101208201516101408301516101808401516101a090940151919850965091945090925090505b9550955095509550959050565b5460101c650fffffff0001600160f01b031690565b815160016002830281019190911c1615155b92915050565b6007810154604080516370a0823160e01b81526001600160a01b0385811660048301529151600093849316916370a08231916024808301926020929190829003018186803b158015610ee257600080fd5b505afa158015610ef6573d6000803e3d6000fd5b505050506040513d6020811015610f0c57600080fd5b50516008840154604080516370a0823160e01b81526001600160a01b038881166004830152915191909216916370a08231916024808301926020929190829003018186803b158015610f5d57600080fd5b505afa158015610f71573d6000803e3d6000fd5b505050506040513d6020811015610f8757600080fd5b5051909590945092505050565b600082820183811015610fee576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000610fee612710610b9c611010868663ffffffff61198e16565b60026127105b049063ffffffff610f9416565b60355460408051631f94a27560e31b81529051600092839283926001600160a01b039092169163fca513a891600480820192602092909190829003018186803b15801561106f57600080fd5b505afa158015611083573d6000803e3d6000fd5b505050506040513d602081101561109957600080fd5b505190506110a5612289565b816001600160a01b031663b3596f07896040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156110fb57600080fd5b505afa15801561110f573d6000803e3d6000fd5b505050506040513d602081101561112557600080fd5b5051604080830191909152805163b3596f0760e01b81526001600160a01b03898116600483015291519184169163b3596f0791602480820192602092909190829003018186803b15801561117857600080fd5b505afa15801561118c573d6000803e3d6000fd5b505050506040513d60208110156111a257600080fd5b505160608201526111b560058b01611947565b60c08501526020840152506111ce905060058a01611a71565b60a082018190526020820151604083015161122792610433916111f991600a0a63ffffffff61198e16565b610b9c8560c00151600a0a61121b8c886060015161198e90919063ffffffff16565b9063ffffffff61198e16565b608082018190528510156112965784935061128f81602001516112836112618460c00151600a0a856060015161198e90919063ffffffff16565b610b9c8560a00151600a0a61121b8a886040015161198e90919063ffffffff16565b9063ffffffff611a8216565b92506112a1565b806080015193508592505b5050965096945050505050565b60006112b983611aa8565b156112cf57506001600160a01b03811631610e8b565b826001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561132557600080fd5b505afa158015611339573d6000803e3d6000fd5b505050506040513d602081101561134f57600080fd5b50519050610e8b565b600061136382611acd565b905080156113ec576001820154600983015460009161138f91600160a01b900464ffffffffff16611bcd565b83549091506113a590829063ffffffff611c4216565b8355600283015460098401546000916113cb91600160a01b900464ffffffffff16611c7b565b90506113e4846004015482611c4290919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b15801561145757600080fd5b505afa15801561146b573d6000803e3d6000fd5b505050506040513d602081101561148157600080fd5b505160068601549091506000906114aa906001600160a01b03878116911663ffffffff6112ae16565b6009870154909150600090819081906001600160a01b03166357e37af0896114e8896114dc898d63ffffffff610f9416565b9063ffffffff6116fd16565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561153857600080fd5b505afa15801561154c573d6000803e3d6000fd5b505050506040513d602081101561156257600080fd5b505160088e0154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b1580156115ab57600080fd5b505afa1580156115bf573d6000803e3d6000fd5b505050506040513d60208110156115d557600080fd5b5051604080516001600160e01b031960e088901b1681526001600160a01b039095166004860152602485019390935260448401919091526064830152608482018990525160a4808301926060929190829003018186803b15801561163857600080fd5b505afa15801561164c573d6000803e3d6000fd5b505050506040513d606081101561166257600080fd5b50805160208083015160409384015160018e0184905560038e0182905560028e018190558d5460048f015486518681529485018490528487018c905260608501839052608085019190915260a0840152935192965094509192506001600160a01b038a16917f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4919081900360c00190a2505050505050505050565b6000610fee83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611cca565b816117495761192b565b61175285611aa8565b1561191057813410156117965760405162461bcd60e51b815260040180806020018281038252602a815260200180612345602a913960400191505060405180910390fd5b6001600160a01b0383163014611849576040516000906001600160a01b0385169061c35090859084818181858888f193505050503d80600081146117f6576040519150601f19603f3d011682016040523d82523d6000602084013e6117fb565b606091505b5050905080611847576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b505b80801561185557508134115b1561190b5760006001600160a01b038516611876348563ffffffff6116fd16565b60405161c35091906000818181858888f193505050503d80600081146118b8576040519150601f19603f3d011682016040523d82523d6000602084013e6118bd565b606091505b5050905080611909576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b505b61192b565b61192b6001600160a01b03861685858563ffffffff611d6116565b5050505050565b511590565b9051600360029092021c16151590565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b60008261199d57506000610e8b565b828202828482816119aa57fe5b0414610fee5760405162461bcd60e51b81526004018080602001828103825260218152602001806122c76021913960400191505060405180910390fd5b6000610fee83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611dc1565b9051600160029092021c16151590565b600082611a495750600019610fee565b611a6983611a5d868563ffffffff610ff516565b9063ffffffff611e2616565b949350505050565b5460301c610f01600160d01b031690565b600060028204611a6983610b9c611a9b8761271061198e565b849063ffffffff610f9416565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b6000610e8b8260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b2257600080fd5b505afa158015611b36573d6000803e3d6000fd5b505050506040513d6020811015611b4c57600080fd5b50516007840154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b158015611b9557600080fd5b505afa158015611ba9573d6000803e3d6000fd5b505050506040513d6020811015611bbf57600080fd5b50519063ffffffff610f9416565b600080611be74264ffffffffff851663ffffffff6116fd16565b90506000611c10611bfb6301e13380611e45565b611c0484611e45565b9063ffffffff611e5b16565b9050611c39611c1d611e7e565b611c2d878463ffffffff611c4216565b9063ffffffff610f9416565b95945050505050565b6000610fee6b033b2e3c9fd0803ce8000000610b9c611c67868663ffffffff61198e16565b60026b033b2e3c9fd0803ce8000000611016565b600080611c954264ffffffffff851663ffffffff6116fd16565b90506000611cad856301e1338063ffffffff6119e716565b9050611c3982611cbe611a9b611e7e565b9063ffffffff611e8e16565b60008184841115611d595760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611d1e578181015183820152602001611d06565b50505050905090810190601f168015611d4b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052611dbb908590611ee8565b50505050565b60008183611e105760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611d1e578181015183820152602001611d06565b506000838581611e1c57fe5b0495945050505050565b600060028204611a6983610b9c611a9b87670de0b6b3a764000061198e565b6000610e8b82633b9aca0063ffffffff61198e16565b600060028204611a6983610b9c611a9b876b033b2e3c9fd0803ce800000061198e565b6b033b2e3c9fd0803ce800000090565b600060028206611eaa576b033b2e3c9fd0803ce8000000611eac565b825b90506002820491505b8115610e8b57611ec58384611c42565b92506002820615611edd57611eda8184611c42565b90505b600282049150611eb5565b6060611f3d826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611f9e9092919063ffffffff16565b805190915015611f9957808060200190516020811015611f5c57600080fd5b5051611f995760405162461bcd60e51b815260040180806020018281038252602a81526020018061236f602a913960400191505060405180910390fd5b505050565b6060611a6984846000856060611fb385612115565b612004576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106120435780518252601f199092019160209182019101612024565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146120a5576040519150601f19603f3d011682016040523d82523d6000602084013e6120aa565b606091505b509150915081156120be579150611a699050565b8051156120ce5780518082602001fd5b60405162461bcd60e51b8152602060048201818152865160248401528651879391928392604401919085019080838360008315611d1e578181015183820152602001611d06565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590611a69575050151592915050565b60405180610220016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600060028111156121ad57fe5b81526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681526020016000151581525090565b60405180610260016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160006001600160a01b031681526020016000151581526020016000151581525090565b6040518060e0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152509056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7754686572652069736e277420656e6f756768206c697175696469747920617661696c61626c6520746f206c697175696461746554686520636f6c6c61746572616c2063686f73656e2063616e6e6f74206265206c69717569646174656457726f6e67207573616765206f66204554482e756e6976657273616c5472616e7366657246726f6d28295361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565644865616c746820666163746f72206973206e6f742062656c6f7720746865207468726573686f6c645573657220646964206e6f7420626f72726f7720746865207370656369666965642063757272656e6379a26469706673582212205ac9e363d9e14891acc7fd516518729ff1c4302afa48d665c11d088075f65c9064736f6c63430006080033"; diff --git a/types/ReserveLogicFactory.ts b/types/ReserveLogicFactory.ts index 4ac28a07..10c85ef2 100644 --- a/types/ReserveLogicFactory.ts +++ b/types/ReserveLogicFactory.ts @@ -86,4 +86,4 @@ const _abi = [ ]; const _bytecode = - "0x610e3f610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c80630c1282ce1461007157806358ba22fa146100af5780637d368d2e146100d25780638acb830b146100ef578063b5887a641461013c578063fade6ba01461018d575b600080fd5b61009d6004803603604081101561008757600080fd5b50803590602001356001600160a01b03166101b9565b60408051918252519081900360200190f35b61009d600480360360408110156100c557600080fd5b508035906020013561021e565b61009d600480360360208110156100e857600080fd5b503561023f565b8180156100fb57600080fd5b5061013a600480360360a081101561011257600080fd5b508035906001600160a01b0360208201351690604081013590606081013590608001356102dd565b005b81801561014857600080fd5b5061013a600480360360a081101561015f57600080fd5b508035906001600160a01b036020820135811691604081013582169160608201358116916080013516610329565b61009d600480360360408110156101a357600080fd5b50803590602001356001600160a01b03166103f6565b6000806101c584610429565b9050806101d6576000915050610218565b60006101f16001600160a01b0385163063ffffffff61052916565b9050610213610206828463ffffffff6105d316565b839063ffffffff61062d16565b925050505b92915050565b60008260030154600014610236578260030154610238565b815b9392505050565b60008160020154600014156102d1578160090160009054906101000a90046001600160a01b03166001600160a01b03166334762ca56040518163ffffffff1660e01b815260040160206040518083038186803b15801561029e57600080fd5b505afa1580156102b2573d6000803e3d6000fd5b505050506040513d60208110156102c857600080fd5b505190506102d8565b5060028101545b919050565b6102e685610671565b60006103016102f487610429565b859063ffffffff6105d316565b905061031486828563ffffffff61072916565b6103218686856000610787565b505050505050565b60068501546001600160a01b0316156103735760405162461bcd60e51b8152600401808060200182810382526024815260200180610dc56024913960400191505060405180910390fd5b845461038457610381610a74565b85555b600485015461039b57610395610a74565b60048601555b6006850180546001600160a01b03199081166001600160a01b03968716179091556007860180548216948616949094179093556008850180548416928516929092179091556009909301805490911692909116919091179055565b600061023861040484610429565b61041d6001600160a01b0385163063ffffffff61052916565b9063ffffffff6105d316565b60006102188260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561047e57600080fd5b505afa158015610492573d6000803e3d6000fd5b505050506040513d60208110156104a857600080fd5b50516007840154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b1580156104f157600080fd5b505afa158015610505573d6000803e3d6000fd5b505050506040513d602081101561051b57600080fd5b50519063ffffffff6105d316565b600061053483610a84565b1561054a57506001600160a01b03811631610218565b826001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156105a057600080fd5b505afa1580156105b4573d6000803e3d6000fd5b505050506040513d60208110156105ca57600080fd5b50519050610218565b600082820183811015610238576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000600282046106698361065d610650876b033b2e3c9fd0803ce8000000610aa9565b849063ffffffff6105d316565b9063ffffffff610b0216565b949350505050565b600061067c82610429565b9050801561070557600182015460098301546000916106a891600160a01b900464ffffffffff16610b44565b83549091506106be90829063ffffffff610b8f16565b8355600283015460098401546000916106e491600160a01b900464ffffffffff16610bc7565b90506106fd846004015482610b8f90919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b600061074c61073784610c16565b61074084610c16565b9063ffffffff61062d16565b9050600061076861075b610a74565b839063ffffffff6105d316565b855490915061077e90829063ffffffff610b8f16565b90945550505050565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b1580156107ce57600080fd5b505afa1580156107e2573d6000803e3d6000fd5b505050506040513d60208110156107f857600080fd5b50516006860154909150600090610821906001600160a01b03878116911663ffffffff61052916565b6009870154909150600090819081906001600160a01b03166357e37af08961085f89610853898d63ffffffff6105d316565b9063ffffffff610c2c16565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108af57600080fd5b505afa1580156108c3573d6000803e3d6000fd5b505050506040513d60208110156108d957600080fd5b505160088e0154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b15801561092257600080fd5b505afa158015610936573d6000803e3d6000fd5b505050506040513d602081101561094c57600080fd5b5051604080516001600160e01b031960e088901b1681526001600160a01b039095166004860152602485019390935260448401919091526064830152608482018990525160a4808301926060929190829003018186803b1580156109af57600080fd5b505afa1580156109c3573d6000803e3d6000fd5b505050506040513d60608110156109d957600080fd5b50805160208083015160409384015160018e0184905560038e0182905560028e018190558d5460048f015486518681529485018490528487018c905260608501839052608085019190915260a0840152935192965094509192506001600160a01b038a16917f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4919081900360c00190a2505050505050505050565b6b033b2e3c9fd0803ce800000090565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b600082610ab857506000610218565b82820282848281610ac557fe5b04146102385760405162461bcd60e51b8152600401808060200182810382526021815260200180610de96021913960400191505060405180910390fd5b600061023883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610c6e565b600080610b5e4264ffffffffff851663ffffffff610c2c16565b90506000610b726107376301e13380610c16565b9050610213610b7f610a74565b61041d878463ffffffff610b8f16565b60006102386b033b2e3c9fd0803ce800000061065d610bb4868663ffffffff610aa916565b6b019d971e4fe8401e74000000906105d3565b600080610be14264ffffffffff851663ffffffff610c2c16565b90506000610bf9856301e1338063ffffffff610b0216565b905061021382610c0a610650610a74565b9063ffffffff610d1016565b600061021882633b9aca0063ffffffff610aa916565b600061023883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d6a565b60008183610cfa5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cbf578181015183820152602001610ca7565b50505050905090810190601f168015610cec5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610d0657fe5b0495945050505050565b600060028206610d2c576b033b2e3c9fd0803ce8000000610d2e565b825b90506002820491505b811561021857610d478384610b8f565b92506002820615610d5f57610d5c8184610b8f565b90505b600282049150610d37565b60008184841115610dbc5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cbf578181015183820152602001610ca7565b50505090039056fe526573657276652068617320616c7265616479206265656e20696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220644bfa7590f6fd4b9f64aae7e87c2f052ed7bd820360bb9d6badfc01ba33f19864736f6c63430006080033"; + "0x610e3f610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c80630c1282ce1461007157806358ba22fa146100af5780637d368d2e146100d25780638acb830b146100ef578063b5887a641461013c578063fade6ba01461018d575b600080fd5b61009d6004803603604081101561008757600080fd5b50803590602001356001600160a01b03166101b9565b60408051918252519081900360200190f35b61009d600480360360408110156100c557600080fd5b508035906020013561021e565b61009d600480360360208110156100e857600080fd5b503561023f565b8180156100fb57600080fd5b5061013a600480360360a081101561011257600080fd5b508035906001600160a01b0360208201351690604081013590606081013590608001356102dd565b005b81801561014857600080fd5b5061013a600480360360a081101561015f57600080fd5b508035906001600160a01b036020820135811691604081013582169160608201358116916080013516610329565b61009d600480360360408110156101a357600080fd5b50803590602001356001600160a01b03166103f6565b6000806101c584610429565b9050806101d6576000915050610218565b60006101f16001600160a01b0385163063ffffffff61052916565b9050610213610206828463ffffffff6105d316565b839063ffffffff61062d16565b925050505b92915050565b60008260030154600014610236578260030154610238565b815b9392505050565b60008160020154600014156102d1578160090160009054906101000a90046001600160a01b03166001600160a01b03166334762ca56040518163ffffffff1660e01b815260040160206040518083038186803b15801561029e57600080fd5b505afa1580156102b2573d6000803e3d6000fd5b505050506040513d60208110156102c857600080fd5b505190506102d8565b5060028101545b919050565b6102e685610671565b60006103016102f487610429565b859063ffffffff6105d316565b905061031486828563ffffffff61072916565b6103218686856000610787565b505050505050565b60068501546001600160a01b0316156103735760405162461bcd60e51b8152600401808060200182810382526024815260200180610dc56024913960400191505060405180910390fd5b845461038457610381610a74565b85555b600485015461039b57610395610a74565b60048601555b6006850180546001600160a01b03199081166001600160a01b03968716179091556007860180548216948616949094179093556008850180548416928516929092179091556009909301805490911692909116919091179055565b600061023861040484610429565b61041d6001600160a01b0385163063ffffffff61052916565b9063ffffffff6105d316565b60006102188260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561047e57600080fd5b505afa158015610492573d6000803e3d6000fd5b505050506040513d60208110156104a857600080fd5b50516007840154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b1580156104f157600080fd5b505afa158015610505573d6000803e3d6000fd5b505050506040513d602081101561051b57600080fd5b50519063ffffffff6105d316565b600061053483610a84565b1561054a57506001600160a01b03811631610218565b826001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156105a057600080fd5b505afa1580156105b4573d6000803e3d6000fd5b505050506040513d60208110156105ca57600080fd5b50519050610218565b600082820183811015610238576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000600282046106698361065d610650876b033b2e3c9fd0803ce8000000610aa9565b849063ffffffff6105d316565b9063ffffffff610b0216565b949350505050565b600061067c82610429565b9050801561070557600182015460098301546000916106a891600160a01b900464ffffffffff16610b44565b83549091506106be90829063ffffffff610b8f16565b8355600283015460098401546000916106e491600160a01b900464ffffffffff16610bc7565b90506106fd846004015482610b8f90919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b600061074c61073784610c16565b61074084610c16565b9063ffffffff61062d16565b9050600061076861075b610a74565b839063ffffffff6105d316565b855490915061077e90829063ffffffff610b8f16565b90945550505050565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b1580156107ce57600080fd5b505afa1580156107e2573d6000803e3d6000fd5b505050506040513d60208110156107f857600080fd5b50516006860154909150600090610821906001600160a01b03878116911663ffffffff61052916565b6009870154909150600090819081906001600160a01b03166357e37af08961085f89610853898d63ffffffff6105d316565b9063ffffffff610c2c16565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108af57600080fd5b505afa1580156108c3573d6000803e3d6000fd5b505050506040513d60208110156108d957600080fd5b505160088e0154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b15801561092257600080fd5b505afa158015610936573d6000803e3d6000fd5b505050506040513d602081101561094c57600080fd5b5051604080516001600160e01b031960e088901b1681526001600160a01b039095166004860152602485019390935260448401919091526064830152608482018990525160a4808301926060929190829003018186803b1580156109af57600080fd5b505afa1580156109c3573d6000803e3d6000fd5b505050506040513d60608110156109d957600080fd5b50805160208083015160409384015160018e0184905560038e0182905560028e018190558d5460048f015486518681529485018490528487018c905260608501839052608085019190915260a0840152935192965094509192506001600160a01b038a16917f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4919081900360c00190a2505050505050505050565b6b033b2e3c9fd0803ce800000090565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b600082610ab857506000610218565b82820282848281610ac557fe5b04146102385760405162461bcd60e51b8152600401808060200182810382526021815260200180610de96021913960400191505060405180910390fd5b600061023883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610c6e565b600080610b5e4264ffffffffff851663ffffffff610c2c16565b90506000610b726107376301e13380610c16565b9050610213610b7f610a74565b61041d878463ffffffff610b8f16565b60006102386b033b2e3c9fd0803ce800000061065d610bb4868663ffffffff610aa916565b6b019d971e4fe8401e74000000906105d3565b600080610be14264ffffffffff851663ffffffff610c2c16565b90506000610bf9856301e1338063ffffffff610b0216565b905061021382610c0a610650610a74565b9063ffffffff610d1016565b600061021882633b9aca0063ffffffff610aa916565b600061023883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d6a565b60008183610cfa5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cbf578181015183820152602001610ca7565b50505050905090810190601f168015610cec5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610d0657fe5b0495945050505050565b600060028206610d2c576b033b2e3c9fd0803ce8000000610d2e565b825b90506002820491505b811561021857610d478384610b8f565b92506002820615610d5f57610d5c8184610b8f565b90505b600282049150610d37565b60008184841115610dbc5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cbf578181015183820152602001610ca7565b50505090039056fe526573657276652068617320616c7265616479206265656e20696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220cb1019d481c181d7f4ce6288300ff36d485563b168c6cd0cfbb2d55615d67e9f64736f6c63430006080033"; diff --git a/types/StableDebtTokenFactory.ts b/types/StableDebtTokenFactory.ts index bd1ff3ce..a7ad8825 100644 --- a/types/StableDebtTokenFactory.ts +++ b/types/StableDebtTokenFactory.ts @@ -544,4 +544,4 @@ const _abi = [ ]; const _bytecode = - "0x608060405234801561001057600080fd5b506112bc806100206000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806381e75277116100ad578063a457c2d711610071578063a457c2d714610285578063a9059cbb146104be578063c634dfaa146104ea578063dd62ed3e14610510578063e78c9b3b1461053e57610121565b806381e752771461031757806389d1a0fc1461045e57806390f6fcf21461048257806395d89b411461048a5780639dc29fac1461049257610121565b806323b872dd116100f457806323b872dd14610231578063313ce56714610267578063395093511461028557806370a08231146102b157806379ce6b8c146102d757610121565b806306fdde0314610126578063095ea7b3146101a3578063156e29f6146101e357806318160ddd14610217575b600080fd5b61012e610564565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b0381351690602001356105f1565b604080519115158252519081900360200190f35b610215600480360360608110156101f957600080fd5b506001600160a01b038135169060208101359060400135610639565b005b61021f610837565b60408051918252519081900360200190f35b6101cf6004803603606081101561024757600080fd5b506001600160a01b0381358116916020810135909116906040013561083d565b61026f610885565b6040805160ff9092168252519081900360200190f35b6101cf6004803603604081101561029b57600080fd5b506001600160a01b03813516906020013561088e565b61021f600480360360208110156102c757600080fd5b50356001600160a01b03166108dd565b6102fd600480360360208110156102ed57600080fd5b50356001600160a01b0316610987565b6040805164ffffffffff9092168252519081900360200190f35b610215600480360360a081101561032d57600080fd5b81019060208101813564010000000081111561034857600080fd5b82018360208201111561035a57600080fd5b8035906020019184600183028401116401000000008311171561037c57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092959493602081019350359150506401000000008111156103cf57600080fd5b8201836020820111156103e157600080fd5b8035906020019184600183028401116401000000008311171561040357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505060ff8335169350506001600160a01b036020830135811692604001351690506109ac565b610466610a91565b604080516001600160a01b039092168252519081900360200190f35b61021f610aa5565b61012e610aac565b610215600480360360408110156104a857600080fd5b506001600160a01b038135169060200135610b04565b6101cf600480360360408110156104d457600080fd5b506001600160a01b03813516906020013561083d565b61021f6004803603602081101561050057600080fd5b50356001600160a01b0316610c8a565b61021f6004803603604081101561052657600080fd5b506001600160a01b038135811691602001351661088e565b61021f6004803603602081101561055457600080fd5b50356001600160a01b0316610ca5565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105e95780601f106105be576101008083540402835291602001916105e9565b820191906000526020600020905b8154815290600101906020018083116105cc57829003601f168201915b505050505081565b6040805162461bcd60e51b81526020600482015260166024820152751054141493d5905317d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b6004546001600160a01b031633146106825760405162461bcd60e51b81526004018080602001828103825260328152602001806112556032913960400191505060405180910390fd5b61068a61117a565b600080600061069887610cc0565b9250925092506106b386600054610d2e90919063ffffffff16565b84526106be86610d91565b60208501526107406106de6106d9848963ffffffff610d2e16565b610d91565b6020860151610734906106f7908963ffffffff610da716565b61072861070387610d91565b6001600160a01b038d166000908152600760205260409020549063ffffffff610da716565b9063ffffffff610d2e16565b9063ffffffff610deb16565b60408581018290526001600160a01b0389166000908152600760205220908155600101805464ffffffffff19164264ffffffffff1617905583516107be9061078790610d91565b6107346107a1876020015189610da790919063ffffffff16565b6107286107af600054610d91565b6006549063ffffffff610da716565b6006556107cb8787610e23565b60408085015181516001600160a01b038a16815260208101899052808301869052606081018590526080810184905260a081019190915290517f94ba3ac5ed6fee7b49ed817c5ee964eed9bd5da6860344f95fc56997e920381d9181900360c00190a150505050505050565b60005481565b6040805162461bcd60e51b81526020600482015260166024820152751514905394d1915497d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60035460ff1681565b6040805162461bcd60e51b815260206004820152601760248201527f414c4c4f57414e43455f4e4f545f535550504f525445440000000000000000006044820152905160009181900360640190fd5b6001600160a01b03811660009081526005602052604081205461090257506000610982565b6001600160a01b038216600090815260076020526040812080546001820154919291610935919064ffffffffff16610e81565b905061097d6109788261096c60056000896001600160a01b03166001600160a01b0316815260200190815260200160002054610d91565b9063ffffffff610da716565b610ed9565b925050505b919050565b6001600160a01b031660009081526007602052604090206001015464ffffffffff1690565b84516109bf90600190602088019061119b565b5083516109d390600290602087019061119b565b506003805460ff191660ff851617610100600160a81b0319166101006001600160a01b03858116919091029190911790915560408051630261bf8b60e01b8152905191831691630261bf8b91600480820192602092909190829003018186803b158015610a3f57600080fd5b505afa158015610a53573d6000803e3d6000fd5b505050506040513d6020811015610a6957600080fd5b5051600480546001600160a01b0319166001600160a01b039092169190911790555050505050565b60035461010090046001600160a01b031681565b6006545b90565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105e95780601f106105be576101008083540402835291602001916105e9565b6004546001600160a01b03163314610b4d5760405162461bcd60e51b81526004018080602001828103825260328152602001806112556032913960400191505060405180910390fd5b6000806000610b5b85610cc0565b9250925092506000610b7885600054610ef990919063ffffffff16565b90506000610b8586610d91565b905081610b96576000600655610bed565b610be9610ba283610d91565b6001600160a01b03891660009081526007602052604090205461073490610bcf908563ffffffff610da716565b610bdd6107af600054610d91565b9063ffffffff610ef916565b6006555b83861415610c20576001600160a01b0387166000908152600760205260408120908155600101805464ffffffffff191690555b610c2a8787610f3b565b604080516001600160a01b038916815260208101889052808201879052606081018690526080810185905290517fecde08620c30706a4d7ba53e9163327f2e12a6cea2709dd6a9226fed28c2bb729181900360a00190a150505050505050565b6001600160a01b031660009081526005602052604090205490565b6001600160a01b031660009081526007602052604090205490565b6001600160a01b0381166000908152600560205260408120548190819080610cf2575060009250829150819050610d27565b6000610d0182610bdd886108dd565b9050610d0d8682610e23565b81610d1e818363ffffffff610d2e16565b90955093509150505b9193909250565b600082820183811015610d88576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6000610d8b82633b9aca0063ffffffff610f7916565b6000610d886b033b2e3c9fd0803ce8000000610ddf610dcc868663ffffffff610f7916565b6b019d971e4fe8401e7400000090610d2e565b9063ffffffff610fd216565b600060028204610e1b83610ddf610e0e876b033b2e3c9fd0803ce8000000610f79565b849063ffffffff610d2e16565b949350505050565b600054610e36908263ffffffff610d2e16565b60009081556001600160a01b038316815260056020526040902054610e61908263ffffffff610d2e16565b6001600160a01b0390921660009081526005602052604090209190915550565b600080610e9b4264ffffffffff851663ffffffff610ef916565b90506000610eb3856301e1338063ffffffff610fd216565b9050610ed082610ec4610e0e611014565b9063ffffffff61102416565b95945050505050565b6000631dcd6500610ef2633b9aca00610ddf8386610d2e565b9392505050565b6000610d8883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061107e565b600054610f4e908263ffffffff610ef916565b60009081556001600160a01b038316815260056020526040902054610e61908263ffffffff610ef916565b600082610f8857506000610d8b565b82820282848281610f9557fe5b0414610d885760405162461bcd60e51b81526004018080602001828103825260218152602001806112346021913960400191505060405180910390fd5b6000610d8883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611115565b6b033b2e3c9fd0803ce800000090565b600060028206611040576b033b2e3c9fd0803ce8000000611042565b825b90506002820491505b8115610d8b5761105b8384610da7565b92506002820615611073576110708184610da7565b90505b60028204915061104b565b6000818484111561110d5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156110d25781810151838201526020016110ba565b50505050905090810190601f1680156110ff5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836111645760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156110d25781810151838201526020016110ba565b50600083858161117057fe5b0495945050505050565b60405180606001604052806000815260200160008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111dc57805160ff1916838001178555611209565b82800160010185558215611209579182015b828111156112095782518255916020019190600101906111ee565b50611215929150611219565b5090565b610aa991905b80821115611215576000815560010161121f56fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6ca2646970667358221220574d78988a0158b65eedb2b6b823bca2c4aec2c6d25ecc1272cba877de38fb3164736f6c63430006080033"; + "0x608060405234801561001057600080fd5b506112bc806100206000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806381e75277116100ad578063a457c2d711610071578063a457c2d714610285578063a9059cbb146104be578063c634dfaa146104ea578063dd62ed3e14610510578063e78c9b3b1461053e57610121565b806381e752771461031757806389d1a0fc1461045e57806390f6fcf21461048257806395d89b411461048a5780639dc29fac1461049257610121565b806323b872dd116100f457806323b872dd14610231578063313ce56714610267578063395093511461028557806370a08231146102b157806379ce6b8c146102d757610121565b806306fdde0314610126578063095ea7b3146101a3578063156e29f6146101e357806318160ddd14610217575b600080fd5b61012e610564565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b0381351690602001356105f1565b604080519115158252519081900360200190f35b610215600480360360608110156101f957600080fd5b506001600160a01b038135169060208101359060400135610639565b005b61021f610837565b60408051918252519081900360200190f35b6101cf6004803603606081101561024757600080fd5b506001600160a01b0381358116916020810135909116906040013561083d565b61026f610885565b6040805160ff9092168252519081900360200190f35b6101cf6004803603604081101561029b57600080fd5b506001600160a01b03813516906020013561088e565b61021f600480360360208110156102c757600080fd5b50356001600160a01b03166108dd565b6102fd600480360360208110156102ed57600080fd5b50356001600160a01b0316610987565b6040805164ffffffffff9092168252519081900360200190f35b610215600480360360a081101561032d57600080fd5b81019060208101813564010000000081111561034857600080fd5b82018360208201111561035a57600080fd5b8035906020019184600183028401116401000000008311171561037c57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092959493602081019350359150506401000000008111156103cf57600080fd5b8201836020820111156103e157600080fd5b8035906020019184600183028401116401000000008311171561040357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505060ff8335169350506001600160a01b036020830135811692604001351690506109ac565b610466610a91565b604080516001600160a01b039092168252519081900360200190f35b61021f610aa5565b61012e610aac565b610215600480360360408110156104a857600080fd5b506001600160a01b038135169060200135610b04565b6101cf600480360360408110156104d457600080fd5b506001600160a01b03813516906020013561083d565b61021f6004803603602081101561050057600080fd5b50356001600160a01b0316610c8a565b61021f6004803603604081101561052657600080fd5b506001600160a01b038135811691602001351661088e565b61021f6004803603602081101561055457600080fd5b50356001600160a01b0316610ca5565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105e95780601f106105be576101008083540402835291602001916105e9565b820191906000526020600020905b8154815290600101906020018083116105cc57829003601f168201915b505050505081565b6040805162461bcd60e51b81526020600482015260166024820152751054141493d5905317d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b6004546001600160a01b031633146106825760405162461bcd60e51b81526004018080602001828103825260328152602001806112556032913960400191505060405180910390fd5b61068a61117a565b600080600061069887610cc0565b9250925092506106b386600054610d2e90919063ffffffff16565b84526106be86610d91565b60208501526107406106de6106d9848963ffffffff610d2e16565b610d91565b6020860151610734906106f7908963ffffffff610da716565b61072861070387610d91565b6001600160a01b038d166000908152600760205260409020549063ffffffff610da716565b9063ffffffff610d2e16565b9063ffffffff610deb16565b60408581018290526001600160a01b0389166000908152600760205220908155600101805464ffffffffff19164264ffffffffff1617905583516107be9061078790610d91565b6107346107a1876020015189610da790919063ffffffff16565b6107286107af600054610d91565b6006549063ffffffff610da716565b6006556107cb8787610e23565b60408085015181516001600160a01b038a16815260208101899052808301869052606081018590526080810184905260a081019190915290517f94ba3ac5ed6fee7b49ed817c5ee964eed9bd5da6860344f95fc56997e920381d9181900360c00190a150505050505050565b60005481565b6040805162461bcd60e51b81526020600482015260166024820152751514905394d1915497d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60035460ff1681565b6040805162461bcd60e51b815260206004820152601760248201527f414c4c4f57414e43455f4e4f545f535550504f525445440000000000000000006044820152905160009181900360640190fd5b6001600160a01b03811660009081526005602052604081205461090257506000610982565b6001600160a01b038216600090815260076020526040812080546001820154919291610935919064ffffffffff16610e81565b905061097d6109788261096c60056000896001600160a01b03166001600160a01b0316815260200190815260200160002054610d91565b9063ffffffff610da716565b610ed9565b925050505b919050565b6001600160a01b031660009081526007602052604090206001015464ffffffffff1690565b84516109bf90600190602088019061119b565b5083516109d390600290602087019061119b565b506003805460ff191660ff851617610100600160a81b0319166101006001600160a01b03858116919091029190911790915560408051630261bf8b60e01b8152905191831691630261bf8b91600480820192602092909190829003018186803b158015610a3f57600080fd5b505afa158015610a53573d6000803e3d6000fd5b505050506040513d6020811015610a6957600080fd5b5051600480546001600160a01b0319166001600160a01b039092169190911790555050505050565b60035461010090046001600160a01b031681565b6006545b90565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105e95780601f106105be576101008083540402835291602001916105e9565b6004546001600160a01b03163314610b4d5760405162461bcd60e51b81526004018080602001828103825260328152602001806112556032913960400191505060405180910390fd5b6000806000610b5b85610cc0565b9250925092506000610b7885600054610ef990919063ffffffff16565b90506000610b8586610d91565b905081610b96576000600655610bed565b610be9610ba283610d91565b6001600160a01b03891660009081526007602052604090205461073490610bcf908563ffffffff610da716565b610bdd6107af600054610d91565b9063ffffffff610ef916565b6006555b83861415610c20576001600160a01b0387166000908152600760205260408120908155600101805464ffffffffff191690555b610c2a8787610f3b565b604080516001600160a01b038916815260208101889052808201879052606081018690526080810185905290517fecde08620c30706a4d7ba53e9163327f2e12a6cea2709dd6a9226fed28c2bb729181900360a00190a150505050505050565b6001600160a01b031660009081526005602052604090205490565b6001600160a01b031660009081526007602052604090205490565b6001600160a01b0381166000908152600560205260408120548190819080610cf2575060009250829150819050610d27565b6000610d0182610bdd886108dd565b9050610d0d8682610e23565b81610d1e818363ffffffff610d2e16565b90955093509150505b9193909250565b600082820183811015610d88576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6000610d8b82633b9aca0063ffffffff610f7916565b6000610d886b033b2e3c9fd0803ce8000000610ddf610dcc868663ffffffff610f7916565b6b019d971e4fe8401e7400000090610d2e565b9063ffffffff610fd216565b600060028204610e1b83610ddf610e0e876b033b2e3c9fd0803ce8000000610f79565b849063ffffffff610d2e16565b949350505050565b600054610e36908263ffffffff610d2e16565b60009081556001600160a01b038316815260056020526040902054610e61908263ffffffff610d2e16565b6001600160a01b0390921660009081526005602052604090209190915550565b600080610e9b4264ffffffffff851663ffffffff610ef916565b90506000610eb3856301e1338063ffffffff610fd216565b9050610ed082610ec4610e0e611014565b9063ffffffff61102416565b95945050505050565b6000631dcd6500610ef2633b9aca00610ddf8386610d2e565b9392505050565b6000610d8883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061107e565b600054610f4e908263ffffffff610ef916565b60009081556001600160a01b038316815260056020526040902054610e61908263ffffffff610ef916565b600082610f8857506000610d8b565b82820282848281610f9557fe5b0414610d885760405162461bcd60e51b81526004018080602001828103825260218152602001806112346021913960400191505060405180910390fd5b6000610d8883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611115565b6b033b2e3c9fd0803ce800000090565b600060028206611040576b033b2e3c9fd0803ce8000000611042565b825b90506002820491505b8115610d8b5761105b8384610da7565b92506002820615611073576110708184610da7565b90505b60028204915061104b565b6000818484111561110d5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156110d25781810151838201526020016110ba565b50505050905090810190601f1680156110ff5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836111645760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156110d25781810151838201526020016110ba565b50600083858161117057fe5b0495945050505050565b60405180606001604052806000815260200160008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111dc57805160ff1916838001178555611209565b82800160010185558215611209579182015b828111156112095782518255916020019190600101906111ee565b50611215929150611219565b5090565b610aa991905b80821115611215576000815560010161121f56fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6ca26469706673582212201d4ecc41aac909658848c6c69812c903aeb4deff2ecbe8989156ec8f6d3a552264736f6c63430006080033"; diff --git a/types/VariableDebtTokenFactory.ts b/types/VariableDebtTokenFactory.ts index 7a267ed9..858a825c 100644 --- a/types/VariableDebtTokenFactory.ts +++ b/types/VariableDebtTokenFactory.ts @@ -513,4 +513,4 @@ const _abi = [ ]; const _bytecode = - "0x608060405234801561001057600080fd5b50611132806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806381e75277116100a2578063a457c2d711610071578063a457c2d71461023b578063a9059cbb1461045a578063c634dfaa14610486578063dd62ed3e146104ac578063ee9907a4146104da5761010b565b806381e75277146102bb57806389d1a0fc1461040257806395d89b41146104265780639dc29fac1461042e5761010b565b8063313ce567116100de578063313ce5671461021d578063395093511461023b57806340c10f191461026757806370a08231146102955761010b565b806306fdde0314610110578063095ea7b31461018d57806318160ddd146101cd57806323b872dd146101e7575b600080fd5b610118610500565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015257818101518382015260200161013a565b50505050905090810190601f16801561017f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101b9600480360360408110156101a357600080fd5b506001600160a01b03813516906020013561058d565b604080519115158252519081900360200190f35b6101d56105d5565b60408051918252519081900360200190f35b6101b9600480360360608110156101fd57600080fd5b506001600160a01b038135811691602081013590911690604001356105db565b610225610623565b6040805160ff9092168252519081900360200190f35b6101b96004803603604081101561025157600080fd5b506001600160a01b03813516906020013561062c565b6102936004803603604081101561027d57600080fd5b506001600160a01b03813516906020013561067b565b005b6101d5600480360360208110156102ab57600080fd5b50356001600160a01b03166107db565b610293600480360360a08110156102d157600080fd5b8101906020810181356401000000008111156102ec57600080fd5b8201836020820111156102fe57600080fd5b8035906020019184600183028401116401000000008311171561032057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929594936020810193503591505064010000000081111561037357600080fd5b82018360208201111561038557600080fd5b803590602001918460018302840111640100000000831117156103a757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505060ff8335169350506001600160a01b036020830135811692604001351690506108e8565b61040a6109cd565b604080516001600160a01b039092168252519081900360200190f35b6101186109e1565b6102936004803603604081101561044457600080fd5b506001600160a01b038135169060200135610a39565b6101b96004803603604081101561047057600080fd5b506001600160a01b0381351690602001356105db565b6101d56004803603602081101561049c57600080fd5b50356001600160a01b0316610bd4565b6101d5600480360360408110156104c257600080fd5b506001600160a01b038135811691602001351661062c565b6101d5600480360360208110156104f057600080fd5b50356001600160a01b0316610bef565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105855780601f1061055a57610100808354040283529160200191610585565b820191906000526020600020905b81548152906001019060200180831161056857829003601f168201915b505050505081565b6040805162461bcd60e51b81526020600482015260166024820152751054141493d5905317d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60005481565b6040805162461bcd60e51b81526020600482015260166024820152751514905394d1915497d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60035460ff1681565b6040805162461bcd60e51b815260206004820152601760248201527f414c4c4f57414e43455f4e4f545f535550504f525445440000000000000000006044820152905160009181900360640190fd5b6004546001600160a01b031633146106c45760405162461bcd60e51b81526004018080602001828103825260328152602001806110cb6032913960400191505060405180910390fd5b60008060006106d285610c0a565b9250925092506106e28585610c84565b600480546003546040805163386497fd60e01b81526001600160a01b036101009093048316948101949094525191169163386497fd916024808301926020929190829003018186803b15801561073757600080fd5b505afa15801561074b573d6000803e3d6000fd5b505050506040513d602081101561076157600080fd5b50516001600160a01b03861660008181526006602090815260409182902084905581519283528201879052818101869052606082018590526080820184905260a082019290925290517f94ba3ac5ed6fee7b49ed817c5ee964eed9bd5da6860344f95fc56997e920381d9181900360c00190a15050505050565b6001600160a01b038116600090815260056020526040812054610800575060006108e3565b6001600160a01b038083166000908152600660209081526040918290205460048054600354855163386497fd60e01b815261010090910487169281019290925293516108e0956108db9593946108cf949091169263386497fd9260248083019392829003018186803b15801561087557600080fd5b505afa158015610889573d6000803e3d6000fd5b505050506040513d602081101561089f57600080fd5b50516001600160a01b0387166000908152600560205260409020546108c390610ce2565b9063ffffffff610cf816565b9063ffffffff610d4516565b610d7d565b90505b919050565b84516108fb90600190602088019061100e565b50835161090f90600290602087019061100e565b506003805460ff191660ff851617610100600160a81b0319166101006001600160a01b03858116919091029190911790915560408051630261bf8b60e01b8152905191831691630261bf8b91600480820192602092909190829003018186803b15801561097b57600080fd5b505afa15801561098f573d6000803e3d6000fd5b505050506040513d60208110156109a557600080fd5b5051600480546001600160a01b0319166001600160a01b039092169190911790555050505050565b60035461010090046001600160a01b031681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105855780601f1061055a57610100808354040283529160200191610585565b6004546001600160a01b03163314610a825760405162461bcd60e51b81526004018080602001828103825260328152602001806110cb6032913960400191505060405180910390fd5b6000806000610a9085610c0a565b925092509250610aa08585610d9d565b83821415610ac6576001600160a01b038516600090815260066020526040812055610b61565b600480546003546040805163386497fd60e01b81526001600160a01b036101009093048316948101949094525191169163386497fd916024808301926020929190829003018186803b158015610b1b57600080fd5b505afa158015610b2f573d6000803e3d6000fd5b505050506040513d6020811015610b4557600080fd5b50516001600160a01b0386166000908152600660205260409020555b6001600160a01b038516600081815260066020908152604091829020548251938452908301879052828201869052606083018590526080830184905260a0830152517fc57f977ee00c44453a91f798753002bf12fca5f5ca2ee8db560720f51d4b0f629181900360c00190a15050505050565b6001600160a01b031660009081526005602052604090205490565b6001600160a01b031660009081526006602052604090205490565b6001600160a01b0381166000908152600560205260408120548190819080610c3c575060009250829150819050610c7d565b6000610c5782610c4b886107db565b9063ffffffff610ddb16565b9050610c638682610c84565b81610c74818363ffffffff610e1d16565b90955093509150505b9193909250565b600054610c97908263ffffffff610e1d16565b60009081556001600160a01b038316815260056020526040902054610cc2908263ffffffff610e1d16565b6001600160a01b0390921660009081526005602052604090209190915550565b60006108e082633b9aca0063ffffffff610e7716565b6000610d3c6b033b2e3c9fd0803ce8000000610d30610d1d868663ffffffff610e7716565b6b019d971e4fe8401e7400000090610e1d565b9063ffffffff610ed016565b90505b92915050565b600060028204610d7583610d30610d68876b033b2e3c9fd0803ce8000000610e77565b849063ffffffff610e1d16565b949350505050565b6000631dcd6500610d96633b9aca00610d308386610e1d565b9392505050565b600054610db0908263ffffffff610ddb16565b60009081556001600160a01b038316815260056020526040902054610cc2908263ffffffff610ddb16565b6000610d3c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f12565b600082820183811015610d3c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082610e8657506000610d3f565b82820282848281610e9357fe5b0414610d3c5760405162461bcd60e51b81526004018080602001828103825260218152602001806110aa6021913960400191505060405180910390fd5b6000610d3c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610fa9565b60008184841115610fa15760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f66578181015183820152602001610f4e565b50505050905090810190601f168015610f935780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610ff85760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610f66578181015183820152602001610f4e565b50600083858161100457fe5b0495945050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061104f57805160ff191683800117855561107c565b8280016001018555821561107c579182015b8281111561107c578251825591602001919060010190611061565b5061108892915061108c565b5090565b6110a691905b808211156110885760008155600101611092565b9056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6ca26469706673582212209af3360134ace4a0f529f0f4eb089677526135716fce020e1d8909baa172f39464736f6c63430006080033"; + "0x608060405234801561001057600080fd5b50611132806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806381e75277116100a2578063a457c2d711610071578063a457c2d71461023b578063a9059cbb1461045a578063c634dfaa14610486578063dd62ed3e146104ac578063ee9907a4146104da5761010b565b806381e75277146102bb57806389d1a0fc1461040257806395d89b41146104265780639dc29fac1461042e5761010b565b8063313ce567116100de578063313ce5671461021d578063395093511461023b57806340c10f191461026757806370a08231146102955761010b565b806306fdde0314610110578063095ea7b31461018d57806318160ddd146101cd57806323b872dd146101e7575b600080fd5b610118610500565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015257818101518382015260200161013a565b50505050905090810190601f16801561017f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101b9600480360360408110156101a357600080fd5b506001600160a01b03813516906020013561058d565b604080519115158252519081900360200190f35b6101d56105d5565b60408051918252519081900360200190f35b6101b9600480360360608110156101fd57600080fd5b506001600160a01b038135811691602081013590911690604001356105db565b610225610623565b6040805160ff9092168252519081900360200190f35b6101b96004803603604081101561025157600080fd5b506001600160a01b03813516906020013561062c565b6102936004803603604081101561027d57600080fd5b506001600160a01b03813516906020013561067b565b005b6101d5600480360360208110156102ab57600080fd5b50356001600160a01b03166107db565b610293600480360360a08110156102d157600080fd5b8101906020810181356401000000008111156102ec57600080fd5b8201836020820111156102fe57600080fd5b8035906020019184600183028401116401000000008311171561032057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929594936020810193503591505064010000000081111561037357600080fd5b82018360208201111561038557600080fd5b803590602001918460018302840111640100000000831117156103a757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505060ff8335169350506001600160a01b036020830135811692604001351690506108e8565b61040a6109cd565b604080516001600160a01b039092168252519081900360200190f35b6101186109e1565b6102936004803603604081101561044457600080fd5b506001600160a01b038135169060200135610a39565b6101b96004803603604081101561047057600080fd5b506001600160a01b0381351690602001356105db565b6101d56004803603602081101561049c57600080fd5b50356001600160a01b0316610bd4565b6101d5600480360360408110156104c257600080fd5b506001600160a01b038135811691602001351661062c565b6101d5600480360360208110156104f057600080fd5b50356001600160a01b0316610bef565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105855780601f1061055a57610100808354040283529160200191610585565b820191906000526020600020905b81548152906001019060200180831161056857829003601f168201915b505050505081565b6040805162461bcd60e51b81526020600482015260166024820152751054141493d5905317d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60005481565b6040805162461bcd60e51b81526020600482015260166024820152751514905394d1915497d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60035460ff1681565b6040805162461bcd60e51b815260206004820152601760248201527f414c4c4f57414e43455f4e4f545f535550504f525445440000000000000000006044820152905160009181900360640190fd5b6004546001600160a01b031633146106c45760405162461bcd60e51b81526004018080602001828103825260328152602001806110cb6032913960400191505060405180910390fd5b60008060006106d285610c0a565b9250925092506106e28585610c84565b600480546003546040805163386497fd60e01b81526001600160a01b036101009093048316948101949094525191169163386497fd916024808301926020929190829003018186803b15801561073757600080fd5b505afa15801561074b573d6000803e3d6000fd5b505050506040513d602081101561076157600080fd5b50516001600160a01b03861660008181526006602090815260409182902084905581519283528201879052818101869052606082018590526080820184905260a082019290925290517f94ba3ac5ed6fee7b49ed817c5ee964eed9bd5da6860344f95fc56997e920381d9181900360c00190a15050505050565b6001600160a01b038116600090815260056020526040812054610800575060006108e3565b6001600160a01b038083166000908152600660209081526040918290205460048054600354855163386497fd60e01b815261010090910487169281019290925293516108e0956108db9593946108cf949091169263386497fd9260248083019392829003018186803b15801561087557600080fd5b505afa158015610889573d6000803e3d6000fd5b505050506040513d602081101561089f57600080fd5b50516001600160a01b0387166000908152600560205260409020546108c390610ce2565b9063ffffffff610cf816565b9063ffffffff610d4516565b610d7d565b90505b919050565b84516108fb90600190602088019061100e565b50835161090f90600290602087019061100e565b506003805460ff191660ff851617610100600160a81b0319166101006001600160a01b03858116919091029190911790915560408051630261bf8b60e01b8152905191831691630261bf8b91600480820192602092909190829003018186803b15801561097b57600080fd5b505afa15801561098f573d6000803e3d6000fd5b505050506040513d60208110156109a557600080fd5b5051600480546001600160a01b0319166001600160a01b039092169190911790555050505050565b60035461010090046001600160a01b031681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105855780601f1061055a57610100808354040283529160200191610585565b6004546001600160a01b03163314610a825760405162461bcd60e51b81526004018080602001828103825260328152602001806110cb6032913960400191505060405180910390fd5b6000806000610a9085610c0a565b925092509250610aa08585610d9d565b83821415610ac6576001600160a01b038516600090815260066020526040812055610b61565b600480546003546040805163386497fd60e01b81526001600160a01b036101009093048316948101949094525191169163386497fd916024808301926020929190829003018186803b158015610b1b57600080fd5b505afa158015610b2f573d6000803e3d6000fd5b505050506040513d6020811015610b4557600080fd5b50516001600160a01b0386166000908152600660205260409020555b6001600160a01b038516600081815260066020908152604091829020548251938452908301879052828201869052606083018590526080830184905260a0830152517fc57f977ee00c44453a91f798753002bf12fca5f5ca2ee8db560720f51d4b0f629181900360c00190a15050505050565b6001600160a01b031660009081526005602052604090205490565b6001600160a01b031660009081526006602052604090205490565b6001600160a01b0381166000908152600560205260408120548190819080610c3c575060009250829150819050610c7d565b6000610c5782610c4b886107db565b9063ffffffff610ddb16565b9050610c638682610c84565b81610c74818363ffffffff610e1d16565b90955093509150505b9193909250565b600054610c97908263ffffffff610e1d16565b60009081556001600160a01b038316815260056020526040902054610cc2908263ffffffff610e1d16565b6001600160a01b0390921660009081526005602052604090209190915550565b60006108e082633b9aca0063ffffffff610e7716565b6000610d3c6b033b2e3c9fd0803ce8000000610d30610d1d868663ffffffff610e7716565b6b019d971e4fe8401e7400000090610e1d565b9063ffffffff610ed016565b90505b92915050565b600060028204610d7583610d30610d68876b033b2e3c9fd0803ce8000000610e77565b849063ffffffff610e1d16565b949350505050565b6000631dcd6500610d96633b9aca00610d308386610e1d565b9392505050565b600054610db0908263ffffffff610ddb16565b60009081556001600160a01b038316815260056020526040902054610cc2908263ffffffff610ddb16565b6000610d3c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f12565b600082820183811015610d3c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082610e8657506000610d3f565b82820282848281610e9357fe5b0414610d3c5760405162461bcd60e51b81526004018080602001828103825260218152602001806110aa6021913960400191505060405180910390fd5b6000610d3c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610fa9565b60008184841115610fa15760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f66578181015183820152602001610f4e565b50505050905090810190601f168015610f935780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610ff85760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610f66578181015183820152602001610f4e565b50600083858161100457fe5b0495945050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061104f57805160ff191683800117855561107c565b8280016001018555821561107c579182015b8281111561107c578251825591602001919060010190611061565b5061108892915061108c565b5090565b6110a691905b808211156110885760008155600101611092565b9056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6ca264697066735822122005d3f40bc7d130b666e738d0ea535e8944694e150022981ad44cad7b501230ec64736f6c63430006080033"; diff --git a/types/WalletBalanceProviderFactory.ts b/types/WalletBalanceProviderFactory.ts index 76dddc5c..e993f632 100644 --- a/types/WalletBalanceProviderFactory.ts +++ b/types/WalletBalanceProviderFactory.ts @@ -134,4 +134,4 @@ const _abi = [ ]; const _bytecode = - "0x608060405234801561001057600080fd5b506040516109863803806109868339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b0319909216919091179055610921806100656000396000f3fe6080604052600436106100385760003560e01c80639e3c930914610083578063b59b28ef1461014f578063f7888aec146102d35761007e565b3661007e5761004633610320565b61007c576040805162461bcd60e51b8152602060048201526002602482015261191960f11b604482015290519081900360640190fd5b005b600080fd5b34801561008f57600080fd5b506100b6600480360360208110156100a657600080fd5b50356001600160a01b031661035c565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b838110156100fa5781810151838201526020016100e2565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610139578181015183820152602001610121565b5050505090500194505050505060405180910390f35b34801561015b57600080fd5b506102836004803603604081101561017257600080fd5b81019060208101813564010000000081111561018d57600080fd5b82018360208201111561019f57600080fd5b803590602001918460208302840111640100000000831117156101c157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561021157600080fd5b82018360208201111561022357600080fd5b8035906020019184602083028401116401000000008311171561024557600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506106a0945050505050565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156102bf5781810151838201526020016102a7565b505050509050019250505060405180910390f35b3480156102df57600080fd5b5061030e600480360360408110156102f657600080fd5b506001600160a01b038135811691602001351661081c565b60408051918252519081900360200190f35b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061035457508115155b949350505050565b60608060008060009054906101000a90046001600160a01b03166001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103ae57600080fd5b505afa1580156103c2573d6000803e3d6000fd5b505050506040513d60208110156103d857600080fd5b505160408051630240bc6b60e21b815290519192506060916001600160a01b03841691630902f1ac916004808301926000929190829003018186803b15801561042057600080fd5b505afa158015610434573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561045d57600080fd5b810190808051604051939291908464010000000082111561047d57600080fd5b90830190602082018581111561049257600080fd5b82518660208202830111640100000000821117156104af57600080fd5b82525081516020918201928201910280838360005b838110156104dc5781810151838201526020016104c4565b5050505090500160405250505090506060815167ffffffffffffffff8111801561050557600080fd5b5060405190808252806020026020018201604052801561052f578160200160208202803683370190505b50905060005b8251811015610694576000846001600160a01b0316633e15014185848151811061055b57fe5b60200260200101516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b031681526020019150506101406040518083038186803b1580156105aa57600080fd5b505afa1580156105be573d6000803e3d6000fd5b505050506040513d6101408110156105d557600080fd5b5061010001519050806106025760008383815181106105f057fe5b6020026020010181815250505061068c565b61062784838151811061061157fe5b60200260200101516001600160a01b03166108c6565b15610666576106498885848151811061063c57fe5b602002602001015161081c565b83838151811061065557fe5b60200260200101818152505061068a565b876001600160a01b03163183838151811061067d57fe5b6020026020010181815250505b505b600101610535565b50909350915050915091565b606080825184510267ffffffffffffffff811180156106be57600080fd5b506040519080825280602002602001820160405280156106e8578160200160208202803683370190505b50905060005b84518110156108125760005b845181101561080957600085518302905061071a86838151811061061157fe5b1561075c5786838151811061072b57fe5b60200260200101516001600160a01b031631848383018151811061074b57fe5b602002602001018181525050610800565b61078186838151811061076b57fe5b60200260200101516001600160a01b0316610320565b6107c2576040805162461bcd60e51b815260206004820152600d60248201526c24a72b20a624a22faa27a5a2a760991b604482015290519081900360640190fd5b6107e58784815181106107d157fe5b602002602001015187848151811061063c57fe5b84838301815181106107f357fe5b6020026020010181815250505b506001016106fa565b506001016106ee565b5090505b92915050565b6000610830826001600160a01b0316610320565b156108be57816001600160a01b03166370a08231846040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561088b57600080fd5b505afa15801561089f573d6000803e3d6000fd5b505050506040513d60208110156108b557600080fd5b50519050610816565b506000610816565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1491905056fea2646970667358221220f6e812f417b9657175e5e8c275a14453160d361a47ca250ee1f3ab3850c68b8e64736f6c63430006080033"; + "0x608060405234801561001057600080fd5b506040516109863803806109868339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b0319909216919091179055610921806100656000396000f3fe6080604052600436106100385760003560e01c80639e3c930914610083578063b59b28ef1461014f578063f7888aec146102d35761007e565b3661007e5761004633610320565b61007c576040805162461bcd60e51b8152602060048201526002602482015261191960f11b604482015290519081900360640190fd5b005b600080fd5b34801561008f57600080fd5b506100b6600480360360208110156100a657600080fd5b50356001600160a01b031661035c565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b838110156100fa5781810151838201526020016100e2565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610139578181015183820152602001610121565b5050505090500194505050505060405180910390f35b34801561015b57600080fd5b506102836004803603604081101561017257600080fd5b81019060208101813564010000000081111561018d57600080fd5b82018360208201111561019f57600080fd5b803590602001918460208302840111640100000000831117156101c157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561021157600080fd5b82018360208201111561022357600080fd5b8035906020019184602083028401116401000000008311171561024557600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506106a0945050505050565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156102bf5781810151838201526020016102a7565b505050509050019250505060405180910390f35b3480156102df57600080fd5b5061030e600480360360408110156102f657600080fd5b506001600160a01b038135811691602001351661081c565b60408051918252519081900360200190f35b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061035457508115155b949350505050565b60608060008060009054906101000a90046001600160a01b03166001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103ae57600080fd5b505afa1580156103c2573d6000803e3d6000fd5b505050506040513d60208110156103d857600080fd5b505160408051630240bc6b60e21b815290519192506060916001600160a01b03841691630902f1ac916004808301926000929190829003018186803b15801561042057600080fd5b505afa158015610434573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561045d57600080fd5b810190808051604051939291908464010000000082111561047d57600080fd5b90830190602082018581111561049257600080fd5b82518660208202830111640100000000821117156104af57600080fd5b82525081516020918201928201910280838360005b838110156104dc5781810151838201526020016104c4565b5050505090500160405250505090506060815167ffffffffffffffff8111801561050557600080fd5b5060405190808252806020026020018201604052801561052f578160200160208202803683370190505b50905060005b8251811015610694576000846001600160a01b0316633e15014185848151811061055b57fe5b60200260200101516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b031681526020019150506101406040518083038186803b1580156105aa57600080fd5b505afa1580156105be573d6000803e3d6000fd5b505050506040513d6101408110156105d557600080fd5b5061010001519050806106025760008383815181106105f057fe5b6020026020010181815250505061068c565b61062784838151811061061157fe5b60200260200101516001600160a01b03166108c6565b15610666576106498885848151811061063c57fe5b602002602001015161081c565b83838151811061065557fe5b60200260200101818152505061068a565b876001600160a01b03163183838151811061067d57fe5b6020026020010181815250505b505b600101610535565b50909350915050915091565b606080825184510267ffffffffffffffff811180156106be57600080fd5b506040519080825280602002602001820160405280156106e8578160200160208202803683370190505b50905060005b84518110156108125760005b845181101561080957600085518302905061071a86838151811061061157fe5b1561075c5786838151811061072b57fe5b60200260200101516001600160a01b031631848383018151811061074b57fe5b602002602001018181525050610800565b61078186838151811061076b57fe5b60200260200101516001600160a01b0316610320565b6107c2576040805162461bcd60e51b815260206004820152600d60248201526c24a72b20a624a22faa27a5a2a760991b604482015290519081900360640190fd5b6107e58784815181106107d157fe5b602002602001015187848151811061063c57fe5b84838301815181106107f357fe5b6020026020010181815250505b506001016106fa565b506001016106ee565b5090505b92915050565b6000610830826001600160a01b0316610320565b156108be57816001600160a01b03166370a08231846040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561088b57600080fd5b505afa15801561089f573d6000803e3d6000fd5b505050506040513d60208110156108b557600080fd5b50519050610816565b506000610816565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1491905056fea26469706673582212209b8e0b168415dbdcd196e0ea333c3828a2128ab32bf0abfd98b6628e2bbe360c64736f6c63430006080033";