diff --git a/contracts/lendingpool/LendingPoolConfigurator.sol b/contracts/lendingpool/LendingPoolConfigurator.sol index 42bf4b48..7853b663 100644 --- a/contracts/lendingpool/LendingPoolConfigurator.sol +++ b/contracts/lendingpool/LendingPoolConfigurator.sol @@ -166,35 +166,13 @@ contract LendingPoolConfigurator is VersionedInitializable { /** * @dev initializes a reserve * @param _reserve the address of the reserve to be initialized + * @param _aTokenInstance the name of the aToken contract + * @param _stableDebtTokenAddress the address of the stable debt token contract + * @param _variableDebtTokenAddress the address of the variable debt token contract * @param _underlyingAssetDecimals the decimals of the reserve underlying asset * @param _interestRateStrategyAddress the address of the interest rate strategy contract for this reserve **/ function initReserve( - address _reserve, - uint8 _underlyingAssetDecimals, - address _aTokenInstance, - address _interestRateStrategyAddress, - address _stableDebtTokenAddress, - address _variableDebtTokenAddress - ) external onlyLendingPoolManager { - initReserveWithData( - _reserve, - _aTokenInstance, - _stableDebtTokenAddress, - _variableDebtTokenAddress, - _underlyingAssetDecimals, - _interestRateStrategyAddress - ); - } - - /** - * @dev initializes a reserve using aTokenData provided externally (useful if the underlying ERC20 contract doesn't expose name or decimals) - * @param _reserve the address of the reserve to be initialized - * @param _aTokenInstance the name of the aToken contract - * @param _underlyingAssetDecimals the decimals of the reserve underlying asset - * @param _interestRateStrategyAddress the address of the interest rate strategy contract for this reserve - **/ - function initReserveWithData( address _reserve, address _aTokenInstance, address _stableDebtTokenAddress, @@ -206,9 +184,7 @@ contract LendingPoolConfigurator is VersionedInitializable { InitializableAdminUpgradeabilityProxy aTokenProxy = new InitializableAdminUpgradeabilityProxy(); bytes memory params = abi.encodeWithSignature( - 'initialize(address,address,uint8,string,string)', - address(poolAddressesProvider), - _reserve, + 'initialize(uint8,string,string)', _underlyingAssetDecimals, IERC20Detailed(_aTokenInstance).name(), IERC20Detailed(_aTokenInstance).symbol() diff --git a/contracts/tokenization/AToken.sol b/contracts/tokenization/AToken.sol index 2564b90d..d634d689 100644 --- a/contracts/tokenization/AToken.sol +++ b/contracts/tokenization/AToken.sol @@ -2,7 +2,6 @@ pragma solidity ^0.6.8; import {ERC20} from './ERC20.sol'; -import {LendingPoolAddressesProvider} from '../configuration/LendingPoolAddressesProvider.sol'; import {LendingPool} from '../lendingpool/LendingPool.sol'; import {WadRayMath} from '../libraries/WadRayMath.sol'; import {UniversalERC20} from '../libraries/UniversalERC20.sol'; @@ -121,15 +120,14 @@ contract AToken is VersionedInitializable, ERC20 { event InterestRedirectionAllowanceChanged(address indexed _from, address indexed _to); - address public underlyingAssetAddress; + address public immutable underlyingAssetAddress; mapping(address => uint256) private userIndexes; mapping(address => address) private interestRedirectionAddresses; mapping(address => uint256) private redirectedBalances; mapping(address => address) private interestRedirectionAllowances; - LendingPoolAddressesProvider private addressesProvider; - LendingPool private pool; + LendingPool private immutable pool; uint256 public constant ATOKEN_REVISION = 0x1; @@ -143,18 +141,21 @@ contract AToken is VersionedInitializable, ERC20 { _; } - constructor(string memory _tokenName, string memory _tokenSymbol) - public - ERC20(_tokenName, _tokenSymbol) - {} + constructor( + LendingPool _pool, + address _underlyingAssetAddress, + string memory _tokenName, + string memory _tokenSymbol + ) public ERC20(_tokenName, _tokenSymbol) { + pool = _pool; + underlyingAssetAddress = _underlyingAssetAddress; + } function getRevision() internal override pure returns (uint256) { return ATOKEN_REVISION; } function initialize( - LendingPoolAddressesProvider _addressesProvider, - address _underlyingAsset, uint8 _underlyingAssetDecimals, string calldata _tokenName, string calldata _tokenSymbol @@ -162,9 +163,6 @@ contract AToken is VersionedInitializable, ERC20 { _name = _tokenName; _symbol = _tokenSymbol; _setupDecimals(_underlyingAssetDecimals); - addressesProvider = _addressesProvider; - pool = LendingPool(payable(addressesProvider.getLendingPool())); - underlyingAssetAddress = _underlyingAsset; } /** @@ -454,16 +452,22 @@ contract AToken is VersionedInitializable, ERC20 { uint256 ) { - uint256 previousPrincipalBalance = super.balanceOf(_user); - //calculate the accrued interest since the last accumulation - uint256 balanceIncrease = balanceOf(_user).sub(previousPrincipalBalance); - //mints an amount of tokens equivalent to the amount accumulated - _mint(_user, balanceIncrease); + uint256 currBalance = balanceOf(_user); + uint256 balanceIncrease = 0; + uint256 previousBalance = 0; + + if (currBalance != 0) { + previousBalance = super.balanceOf(_user); + //calculate the accrued interest since the last accumulation + balanceIncrease = currBalance.sub(previousBalance); + //mints an amount of tokens equivalent to the amount accumulated + _mint(_user, balanceIncrease); + } //updates the user index uint256 index = userIndexes[_user] = pool.getReserveNormalizedIncome(underlyingAssetAddress); return ( - previousPrincipalBalance, - previousPrincipalBalance.add(balanceIncrease), + previousBalance, + currBalance, balanceIncrease, index ); diff --git a/deployed-contracts.json b/deployed-contracts.json index 4a39626a..4ff3d1e7 100644 --- a/deployed-contracts.json +++ b/deployed-contracts.json @@ -5,7 +5,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x7AC94fC704557bFBB6E743c797C45b3384b95bB6", + "address": "0x147A4B84ff4AB1ABb753da1DC86b84D90899A021", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -15,7 +15,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x9e3C887092123acf59a1819e78a95B37e46BC886", + "address": "0x3672a553BDF3f9c335104943B1Ab3C59a3EF7050", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -25,7 +25,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xe9ECaCA2FAe7ecCB11242B393E545F293E33096f", + "address": "0x11df1AF606b85226Ab9a8B1FDa90395298e7494F", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -34,7 +34,7 @@ "address": "0x852e3718A320aD93Ad8692E8D663d247e4c1b400" }, "localhost": { - "address": "0xFC16126DBD017331464103385809E4113A61Fe3A" + "address": "0x680e96F1C955007F4e03eF95e3842086f0cd7516" } }, "LendingPoolParametersProvider": { @@ -52,7 +52,7 @@ "address": "0xA10958a24032283FbE2D23cedf264d6eC9411CBA" }, "localhost": { - "address": "0xC6627778273999AeF86ab786d3f6088e9C60F535" + "address": "0x18B81F8cb5D303D08338134B677e70d6bc58AEaB" } }, "LendingPoolDataProvider": { @@ -65,7 +65,7 @@ "address": "0x2C4603396dE2F08642354A3A102760827FfFe113" }, "localhost": { - "address": "0x6Ad44DDbF6564F0abc078340e11100d44406dD12" + "address": "0x071720423B44c851112D8F867df5ed08339A738c" } }, "PriceOracle": { @@ -74,7 +74,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x372AED51F78c3CaB8b632986b689888caf25Ffa5", + "address": "0x273D60904A8DBa3Ae6B20505c59902644124fF0E", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -84,7 +84,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xea0ddFACb2c3392b8DCD3B827534496b585aAcc7", + "address": "0x95e262CAb9d868799F12C2D4030483fA54415a3d", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -94,7 +94,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xD859214080050ddC8745c2A6dF41439Bb851D5Bc", + "address": "0x292eb99ddca578F7c9Db6719B44B1a5721387Ad6", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -104,17 +104,17 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x4a8527a3657a358B956571EEf857Fe5A8567A378", + "address": "0x5eD7553Dc8a0D541130020f9965Ea951cAC1b573", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, "DefaultReserveInterestRateStrategy": { "buidlerevm": { - "address": "0x63b9792E7A95e3aa037255E8cAa0Dfd76f7383e7", + "address": "0x09d728F76D543DB1925f7d1Fd8823e4e82700F99", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x52EF9F7d7dc2EFF6D691080204Adae9002b9AE67", + "address": "0x0983e14968474E44aE2Db3814DFd6c41688DDA12", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -146,37 +146,37 @@ }, "TokenDistributor": { "buidlerevm": { - "address": "0x1bb3d8FA7bDa74Af0D64d348a2545E7570863fA8" + "address": "0x03A6802eF9060a8E1f0e56Bafc9C9AB1A26a1f06" }, "localhost": { - "address": "0xf2923EBa2C4AF250D93e8201Bc20a0096B3A8f89" + "address": "0xB220Bf2c59d990FBC0aE67F3a2723f5b5a713202" } }, "InitializableAdminUpgradeabilityProxy": { "buidlerevm": { - "address": "0x1bb3d8FA7bDa74Af0D64d348a2545E7570863fA8", + "address": "0x03A6802eF9060a8E1f0e56Bafc9C9AB1A26a1f06", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xf2923EBa2C4AF250D93e8201Bc20a0096B3A8f89", + "address": "0xB220Bf2c59d990FBC0aE67F3a2723f5b5a713202", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, "MockFlashLoanReceiver": { "buidlerevm": { - "address": "0xC5f7aC6895DcB76877E71db756433fB0E0478FEB" + "address": "0x9D37fB22EA7d655f12E68DABBf6B6585A00774C3" }, "localhost": { - "address": "0x9D72c382e918491A463157Ea3e7633FE0F26F83d" + "address": "0xc486732FA6A9e7aFBc13D2226845DC37C5ec0476" } }, "WalletBalanceProvider": { "buidlerevm": { - "address": "0x51fa472EB89c046484B037B6125CF843C9d41b44", + "address": "0x2005823e074313cd644035557bF4FFa0ca0Bddff", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xF1BbafE2063F81038079cCdC2E8e5100693B109b", + "address": "0x263Db66558DDDaD8C2B0e01fd291F227a3Fe212b", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -186,7 +186,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x07FcFF7B7953ff64969B3c4C8E7c386fC7Efaa55", + "address": "0x3bAF7C82FcD0AA4E0eB9eB84900805F97CdB3e02", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -196,7 +196,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x921d5f671e5892e43a292Fa1A5BCA3B4F6E62aE9", + "address": "0x0158B479b096452e929efdce37d9d36a1703E092", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -206,7 +206,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x30d4f0D334822B2887C280A9540959e1dBdD340c", + "address": "0x08054EdDc690165Ea3C83DB71c3be1f4287B66cE", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -216,7 +216,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x62b9F2345e060F6B81bA677Eb1cCC39Ec47d162f", + "address": "0xEaC39f548f170681799f52201636f98241506b25", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -226,7 +226,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x18287eAe938cf3C2024A460C4759E9E081729FB2", + "address": "0x690f32e5CB1A8613f19b0eA886Dc1b861fc46581", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -236,7 +236,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x6C12CB1315d28904AE67aaf4d21F1247e0Caf1E7", + "address": "0xCF6566a2CDe18a7BA1852A24E20906804D6455F6", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -246,7 +246,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xf400aDA5C432462a380ae49ee9A84FE3F21B188d", + "address": "0x874C1B4201E6D97e6A5E4410ca7dCB8bDFE3d257", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -256,7 +256,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x1e3b37AA176ec7d5ae1A36e093A9f849742563F4", + "address": "0x7E0F9675f10a9725245858c098d30cB763A2a040", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -266,7 +266,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xfDdff7952ab54f34FBE3E421b4DB1E8B0cf673Df", + "address": "0x0Bd4069eF735Db440F4D1D4B24c001D7B417037E", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -276,7 +276,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x378a425415BC1099820005E93448D877A5e02793", + "address": "0xA79F0417aA29836bBBa7D4ee06D7BaBc4930BC4f", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -286,7 +286,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x2361fAEcc05E4e50D85c22E253bafD6B62f91F7A", + "address": "0x5559372F41261bdBf6E9067796a427D2D514bf85", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -296,7 +296,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x1Bf05105664fA2eA4af77E88e637189d76e6283f", + "address": "0x227B215F961B75be343fE751494e300c6a300d53", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -306,7 +306,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x529D91657646F22e348c1B9870d0C0D88ED1151A", + "address": "0x38B2C97074727B078241Dc72d57DE34dF8ECfC9C", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -316,7 +316,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x21a26892Ad0ee4b429BB768BaAF4A7fB623d91C7", + "address": "0x20e04C71b81a2C818a1a62EefBD94bbC9B302E29", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -326,7 +326,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x269615E7bA0C64666F8d7586dE868aD55EDD8577", + "address": "0x4e8eDb229774D6d975689F7F910C889cb3Ca9c39", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -336,7 +336,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xc9b9B169eA13aB77079F62c5D2f038f50746A4cD", + "address": "0xBEd64c6Ca683EF92595Bf32C37f7f7B23cC8B417", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -346,7 +346,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x2102f3e30ab514e35561C9499f49c3079957f407", + "address": "0x8d274866817928093002cc52aBc48c6EAb3B5Aea", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -356,7 +356,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x87985DF0bf4c392F4114554fcCfC9Ef713463965", + "address": "0x10bee3F9993F918Da27360D32C552E327FC3C5E0", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -366,7 +366,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xf20d0172C4F801762a1Fed1F969fF143BAf6740A", + "address": "0x1581aD6aaDCd767B447881E14021a7b764C67fE4", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -376,7 +376,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x9707728C9D0C48a83fDA8eEaF39b104EDcFC4f4A", + "address": "0x72579C72d3Aaa35f3DBdbDd35573daDc5f77666b", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -386,7 +386,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x078522E6413f005DA503EA2c72e161C54D27a5ec", + "address": "0x9F48a96f72043aE76CD0f9b035E38215396eFb5B", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -396,7 +396,7 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0xFF8862c67087C7474e44693a017411E1783A6b50", + "address": "0xb9781A7f001aa3e2Bb056B79a3bDbeEf2BA0C344", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, @@ -406,35 +406,45 @@ "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x7AC94fC704557bFBB6E743c797C45b3384b95bB6", + "address": "0x147A4B84ff4AB1ABb753da1DC86b84D90899A021", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, "AaveProtocolTestHelpers": { "buidlerevm": { - "address": "0x4b2c297ba5be42610994974b9543D56B864CA011" + "address": "0x850Fae11E1313e6C23Db7c2410Ec0985d9Ea325A" }, "localhost": { - "address": "0x49CC1e6749f45e3BaB945B96c0d6723a606BDcDa" + "address": "0x3717c045414269985A69b5eF256bB87C77ef6C6e" } }, "StableDebtToken": { "buidlerevm": { - "address": "0xc783bfC59158E888dA3E9c7768aaDC7a58ee7809", + "address": "0xb2B548BE73010C188C083c510d255Aed74843b05", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x34dB38AC79A5e23F6Ff6711098979Ca3159b80d7", + "address": "0x58bDC18EC8Aba196F01e8488e7A87F1A5128D4B1", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } }, "VariableDebtToken": { "buidlerevm": { - "address": "0xBdFE372Bb5a0db801A1a17796EC5cfF2F30A714C", + "address": "0x5Ea694f66BD0CBd08FC7967af01b67Dcef68cC5c", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" }, "localhost": { - "address": "0x7BCb706a6C9cA7F9e51199d3d87A6A92b9cc05b4", + "address": "0xF835f4edBa9d08FE5E49923b8a86a7C08FB5978C", + "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" + } + }, + "AToken": { + "localhost": { + "address": "0x96AFa17ef7cf813BaD59f395830bE4EaB2e64BF4", + "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" + }, + "buidlerevm": { + "address": "0xd4e934C2749CA8C1618659D02E7B28B074bf4df7", "deployer": "0xc783df8a850f42e7F7e57013759C285caa701eB6" } } diff --git a/helpers/contracts-helpers.ts b/helpers/contracts-helpers.ts index 2d814a1d..4c410f03 100644 --- a/helpers/contracts-helpers.ts +++ b/helpers/contracts-helpers.ts @@ -283,10 +283,12 @@ export const deployVariableDebtToken = async ([ }; export const deployGenericAToken = async ([ + poolAddress, + underlyingAssetAddress, name, symbol -]: [string, string]) => { - const token = await deployContract(eContractid.AToken, [name, symbol]); +]: [ tEthereumAddress, tEthereumAddress, string, string]) => { + const token = await deployContract(eContractid.AToken, [poolAddress, underlyingAssetAddress, name, symbol]); return token; }; diff --git a/test/__setup.spec.ts b/test/__setup.spec.ts index d3b1352c..95beef40 100644 --- a/test/__setup.spec.ts +++ b/test/__setup.spec.ts @@ -241,6 +241,8 @@ const initReserves = async ( ]); const aToken = await deployGenericAToken([ + lendingPool.address, + tokenAddress, `Aave interest bearing ${assetSymbol}`, `a${assetSymbol}` ]); @@ -254,7 +256,7 @@ const initReserves = async ( } } - await lendingPoolConfigurator.initReserveWithData( + await lendingPoolConfigurator.initReserve( tokenAddress, aToken.address, stableDebtToken.address, diff --git a/types/AToken.d.ts b/types/AToken.d.ts index cac8f155..e8b2d7d8 100644 --- a/types/AToken.d.ts +++ b/types/AToken.d.ts @@ -57,13 +57,11 @@ interface ATokenInterface extends Interface { }>; initialize: TypedFunctionDescription<{ - encode([ - _addressesProvider, - _underlyingAsset, - _underlyingAssetDecimals, - _tokenName, - _tokenSymbol - ]: [string, string, BigNumberish, string, string]): string; + encode([_underlyingAssetDecimals, _tokenName, _tokenSymbol]: [ + BigNumberish, + string, + string + ]): string; }>; isTransferAllowed: TypedFunctionDescription<{ @@ -271,8 +269,6 @@ export class AToken extends Contract { ): Promise; initialize( - _addressesProvider: string, - _underlyingAsset: string, _underlyingAssetDecimals: BigNumberish, _tokenName: string, _tokenSymbol: string, @@ -386,8 +382,6 @@ export class AToken extends Contract { ): Promise; initialize( - _addressesProvider: string, - _underlyingAsset: string, _underlyingAssetDecimals: BigNumberish, _tokenName: string, _tokenSymbol: string, @@ -553,8 +547,6 @@ export class AToken extends Contract { ): Promise; initialize( - _addressesProvider: string, - _underlyingAsset: string, _underlyingAssetDecimals: BigNumberish, _tokenName: string, _tokenSymbol: string diff --git a/types/ATokenFactory.ts b/types/ATokenFactory.ts index 35ebbbe4..201530ab 100644 --- a/types/ATokenFactory.ts +++ b/types/ATokenFactory.ts @@ -14,18 +14,34 @@ export class ATokenFactory extends ContractFactory { } deploy( + _pool: string, + _underlyingAssetAddress: string, _tokenName: string, _tokenSymbol: string, overrides?: TransactionOverrides ): Promise { - return super.deploy(_tokenName, _tokenSymbol, overrides) as Promise; + return super.deploy( + _pool, + _underlyingAssetAddress, + _tokenName, + _tokenSymbol, + overrides + ) as Promise; } getDeployTransaction( + _pool: string, + _underlyingAssetAddress: string, _tokenName: string, _tokenSymbol: string, overrides?: TransactionOverrides ): UnsignedTransaction { - return super.getDeployTransaction(_tokenName, _tokenSymbol, overrides); + return super.getDeployTransaction( + _pool, + _underlyingAssetAddress, + _tokenName, + _tokenSymbol, + overrides + ); } attach(address: string): AToken { return super.attach(address) as AToken; @@ -41,6 +57,16 @@ export class ATokenFactory extends ContractFactory { const _abi = [ { inputs: [ + { + internalType: "contract LendingPool", + name: "_pool", + type: "address" + }, + { + internalType: "address", + name: "_underlyingAssetAddress", + type: "address" + }, { internalType: "string", name: "_tokenName", @@ -584,16 +610,6 @@ const _abi = [ }, { inputs: [ - { - internalType: "contract LendingPoolAddressesProvider", - name: "_addressesProvider", - type: "address" - }, - { - internalType: "address", - name: "_underlyingAsset", - type: "address" - }, { internalType: "uint8", name: "_underlyingAssetDecimals", @@ -879,4 +895,4 @@ const _abi = [ ]; const _bytecode = - "0x6080604052600080553480156200001557600080fd5b5060405162002e6238038062002e62833981810160405260408110156200003b57600080fd5b81019080805160405193929190846401000000008211156200005c57600080fd5b9083019060208201858111156200007257600080fd5b82516401000000008111828201881017156200008d57600080fd5b82525081516020918201929091019080838360005b83811015620000bc578181015183820152602001620000a2565b50505050905090810190601f168015620000ea5780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200010e57600080fd5b9083019060208201858111156200012457600080fd5b82516401000000008111828201881017156200013f57600080fd5b82525081516020918201929091019080838360005b838110156200016e57818101518382015260200162000154565b50505050905090810190601f1680156200019c5780820380516001836020036101000a031916815260200191505b50604052505082518391508290620001bc906037906020850190620001eb565b508051620001d2906038906020840190620001eb565b50506039805460ff191660121790555062000290915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200022e57805160ff19168380011785556200025e565b828001600101855582156200025e579182015b828111156200025e57825182559160200191906001019062000241565b506200026c92915062000270565b5090565b6200028d91905b808211156200026c576000815560010162000277565b90565b612bc280620002a06000396000f3fe6080604052600436106101bb5760003560e01c80635eae177c116100ec578063c634dfaa1161008a578063dd62ed3e11610064578063dd62ed3e1461071e578063ee9907a414610759578063f85f6f741461078c578063f866c3191461087e57610217565b8063c634dfaa146106ac578063d0fc81d2146106df578063db006a75146106f457610217565b806394362e8b116100c657806394362e8b146105ec57806395d89b4114610625578063a457c2d71461063a578063a9059cbb1461067357610217565b80635eae177c1461056b57806370a08231146105a457806389d1a0fc146105d757610217565b806323b872dd11610159578063395093511161013357806339509351146104715780633edb7cb8146104aa578063445e8010146104e35780634efecaa51461053257610217565b806323b872dd146103c8578063313ce5671461040b578063325a9b131461043657610217565b80630e49072d116101955780630e49072d1461031a57806312c87c2d1461034d57806318160ddd146103805780631d51e7cf1461039557610217565b806306fdde031461021c578063095ea7b3146102a65780630bd7ad3b146102f357610217565b36610217576039546101da9061010090046001600160a01b03166108c1565b6102155760405162461bcd60e51b81526004018080602001828103825260398152602001806128f76039913960400191505060405180910390fd5b005b600080fd5b34801561022857600080fd5b506102316108e7565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561026b578181015183820152602001610253565b50505050905090810190601f1680156102985780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102b257600080fd5b506102df600480360360408110156102c957600080fd5b506001600160a01b03813516906020013561097e565b604080519115158252519081900360200190f35b3480156102ff57600080fd5b5061030861099c565b60408051918252519081900360200190f35b34801561032657600080fd5b506102156004803603602081101561033d57600080fd5b50356001600160a01b03166109a1565b34801561035957600080fd5b506102156004803603602081101561037057600080fd5b50356001600160a01b03166109ae565b34801561038c57600080fd5b50610308610a4d565b3480156103a157600080fd5b50610308600480360360208110156103b857600080fd5b50356001600160a01b0316610b0f565b3480156103d457600080fd5b506102df600480360360608110156103eb57600080fd5b506001600160a01b03813581169160208101359091169060400135610b2a565b34801561041757600080fd5b50610420610bb7565b6040805160ff9092168252519081900360200190f35b34801561044257600080fd5b506102156004803603604081101561045957600080fd5b506001600160a01b0381358116916020013516610bc0565b34801561047d57600080fd5b506102df6004803603604081101561049457600080fd5b506001600160a01b038135169060200135610c26565b3480156104b657600080fd5b50610215600480360360408110156104cd57600080fd5b506001600160a01b038135169060200135610c7a565b3480156104ef57600080fd5b506105166004803603602081101561050657600080fd5b50356001600160a01b0316610d6f565b604080516001600160a01b039092168252519081900360200190f35b34801561053e57600080fd5b506103086004803603604081101561055557600080fd5b506001600160a01b038135169060200135610d8d565b34801561057757600080fd5b506102df6004803603604081101561058e57600080fd5b506001600160a01b038135169060200135610dfb565b3480156105b057600080fd5b50610308600480360360208110156105c757600080fd5b50356001600160a01b0316610e96565b3480156105e357600080fd5b50610516610f49565b3480156105f857600080fd5b506102156004803603604081101561060f57600080fd5b506001600160a01b038135169060200135610f5d565b34801561063157600080fd5b50610231611032565b34801561064657600080fd5b506102df6004803603604081101561065d57600080fd5b506001600160a01b038135169060200135611093565b34801561067f57600080fd5b506102df6004803603604081101561069657600080fd5b506001600160a01b038135169060200135611101565b3480156106b857600080fd5b50610308600480360360208110156106cf57600080fd5b50356001600160a01b0316611115565b3480156106eb57600080fd5b50610308611120565b34801561070057600080fd5b506102156004803603602081101561071757600080fd5b5035611126565b34801561072a57600080fd5b506103086004803603604081101561074157600080fd5b506001600160a01b0381358116916020013516611360565b34801561076557600080fd5b506103086004803603602081101561077c57600080fd5b50356001600160a01b031661138b565b34801561079857600080fd5b50610215600480360360a08110156107af57600080fd5b6001600160a01b03823581169260208101359091169160ff60408301351691908101906080810160608201356401000000008111156107ed57600080fd5b8201836020820111156107ff57600080fd5b8035906020019184600183028401116401000000008311171561082157600080fd5b91939092909160208101903564010000000081111561083f57600080fd5b82018360208201111561085157600080fd5b8035906020019184600183028401116401000000008311171561087357600080fd5b5090925090506113a6565b34801561088a57600080fd5b50610215600480360360608110156108a157600080fd5b506001600160a01b0381358116916020810135909116906040013561152f565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee145b919050565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156109735780601f1061094857610100808354040283529160200191610973565b820191906000526020600020905b81548152906001019060200180831161095657829003601f168201915b505050505090505b90565b600061099261098b611588565b848461158c565b5060015b92915050565b600181565b6109ab3382611678565b50565b6001600160a01b0381163314156109f65760405162461bcd60e51b81526004018080602001828103825260258152602001806129306025913960400191505060405180910390fd5b336000818152603d602052604080822080546001600160a01b0319166001600160a01b03861690811790915590519092917fc2d6a42a9d5273283f73009a07aacfb043f2f91173a8d9d33b504afe898db08b91a350565b600080610a58611867565b905080610a6957600091505061097b565b603f546039546040805163d15e005360e01b81526001600160a01b03610100909304831660048201529051610b0993610b0493169163d15e0053916024808301926020929190829003018186803b158015610ac357600080fd5b505afa158015610ad7573d6000803e3d6000fd5b505050506040513d6020811015610aed57600080fd5b5051610af88461186d565b9063ffffffff61188316565b6118ce565b91505090565b6001600160a01b03166000908152603c602052604090205490565b6000610b378484846118e7565b610bad84610b43611588565b610ba885604051806060016040528060288152602001612976602891396001600160a01b038a16600090815260356020526040812090610b81611588565b6001600160a01b03168152602081019190915260400160002054919063ffffffff61195616565b61158c565b5060019392505050565b60395460ff1690565b6001600160a01b038281166000908152603d6020526040902054163314610c185760405162461bcd60e51b815260040180806020018281038252603a815260200180612b53603a913960400191505060405180910390fd5b610c228282611678565b5050565b6000610992610c33611588565b84610ba88560356000610c44611588565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff6119ed16565b603f546001600160a01b03163314610cc35760405162461bcd60e51b8152600401808060200182810382526032815260200180612afc6032913960400191505060405180910390fd5b6000806000610cd185611a47565b93509350935050610ce3858386611b38565b610ced8585611c38565b6000610cff848663ffffffff611d4016565b610d0f57610d0c86611d82565b90505b856001600160a01b03167f90e5d3d68ec162d9c7de393037a3ede04dd44f68e051bf2ace4a73c299dbc4db868584610d475785610d4a565b60005b60408051938452602084019290925282820152519081900360600190a2505050505050565b6001600160a01b039081166000908152603b60205260409020541690565b603f546000906001600160a01b03163314610dd95760405162461bcd60e51b8152600401808060200182810382526032815260200180612afc6032913960400191505060405180910390fd5b603954610df59061010090046001600160a01b03168484611e34565b50919050565b603f54603954604080516376e9d61560e01b81526101009092046001600160a01b039081166004840152858116602484015260448301859052905160009391909116916376e9d615916064808301926020929190829003018186803b158015610e6357600080fd5b505afa158015610e77573d6000803e3d6000fd5b505050506040513d6020811015610e8d57600080fd5b50519392505050565b600080610ea283611f0d565b6001600160a01b0384166000908152603c602052604090205490915081158015610eca575080155b15610eda576000925050506108e2565b6001600160a01b038481166000908152603b602052604090205416610f2b57610f2281610f1686610f11868463ffffffff6119ed16565b611f28565b9063ffffffff611d4016565b925050506108e2565b610f22610f3c82610f168785611f28565b839063ffffffff6119ed16565b60395461010090046001600160a01b031681565b603f546001600160a01b03163314610fa65760405162461bcd60e51b8152600401808060200182810382526032815260200180612afc6032913960400191505060405180910390fd5b600080610fb284611a47565b935093505050610fd684610fcf85856119ed90919063ffffffff16565b6000611b38565b610fe08484611fdd565b604080518481526020810184905280820183905290516001600160a01b038616917fbe7799898ca2d813ff902b487c1b434ab45b47edd8f38b77ad5e99aae8341b7a919081900360600190a250505050565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156109735780601f1061094857610100808354040283529160200191610973565b60006109926110a0611588565b84610ba885604051806060016040528060258152602001612b2e60259139603560006110ca611588565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff61195616565b600061099261110e611588565b84846118e7565b600061099682611f0d565b60001981565b6000811161117b576040805162461bcd60e51b815260206004820181905260248201527f416d6f756e7420746f2072656465656d206e6565647320746f206265203e2030604482015290519081900360640190fd5b600080600061118933611a47565b919550935091508490506000198114156111a05750825b838111156111df5760405162461bcd60e51b815260040180806020018281038252603281526020018061287d6032913960400191505060405180910390fd5b6111e93382610dfb565b61123a576040805162461bcd60e51b815260206004820152601b60248201527f5472616e736665722063616e6e6f7420626520616c6c6f7765642e0000000000604482015290519081900360640190fd5b611245338483611b38565b61124f3382611c38565b6000611261858363ffffffff611d4016565b6112715761126e33611d82565b90505b603f546039546001600160a01b0391821691639895e3d89161010090041633856112a18a8263ffffffff611d4016565b6040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001838152602001828152602001945050505050600060405180830381600087803b15801561131057600080fd5b505af1158015611324573d6000803e3d6000fd5b50505050336001600160a01b03167fbd5034ffbd47e4e72a94baa2cdb74c6fad73cb3bcdc13036b72ec8306f5a7646838684610d475786610d4a565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001600160a01b03166000908152603a602052604090205490565b60006113b06120db565b60015490915060ff16806113c757506113c76120e0565b806113d3575060005481115b61140e5760405162461bcd60e51b815260040180806020018281038252602e8152602001806129c8602e913960400191505060405180910390fd5b60015460ff1615801561142d576001805460ff19168117905560008290555b6114396037878761279f565b506114466038858561279f565b50611450876120e6565b603e80546001600160a01b0319166001600160a01b038b8116919091179182905560408051630261bf8b60e01b815290519290911691630261bf8b91600480820192602092909190829003018186803b1580156114ac57600080fd5b505afa1580156114c0573d6000803e3d6000fd5b505050506040513d60208110156114d657600080fd5b5051603f80546001600160a01b0319166001600160a01b0392831617905560398054610100600160a81b031916610100928b16929092029190911790558015611524576001805460ff191690555b505050505050505050565b603f546001600160a01b031633146115785760405162461bcd60e51b8152600401808060200182810382526032815260200180612afc6032913960400191505060405180910390fd5b6115838383836120fc565b505050565b3390565b6001600160a01b0383166115d15760405162461bcd60e51b8152600401808060200182810382526024815260200180612aae6024913960400191505060405180910390fd5b6001600160a01b0382166116165760405162461bcd60e51b81526004018080602001828103825260228152602001806128af6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038083166000908152603b602052604090205481169082168114156116d55760405162461bcd60e51b815260040180806020018281038252602a81526020018061299e602a913960400191505060405180910390fd5b6000806000806116e487611a47565b93509350935093506000831161172b5760405162461bcd60e51b81526004018080602001828103825260428152602001806129f66042913960600191505060405180910390fd5b6001600160a01b038516156117465761174687600086611b38565b866001600160a01b0316866001600160a01b031614156117d2576001600160a01b0387166000818152603b6020908152604080832080546001600160a01b03191690558051878152918201869052818101859052519192917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a73487355949181900360600190a35050505050610c22565b6001600160a01b038781166000908152603b6020526040812080546001600160a01b0319169289169290921790915561180e9088908590611b38565b604080518481526020810184905280820183905290516001600160a01b0380891692908a16917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a73487355949181900360600190a350505050505050565b60365490565b600061099682633b9aca0063ffffffff61224b16565b60006118c76b033b2e3c9fd0803ce80000006118bb6118a8868663ffffffff61224b16565b6b019d971e4fe8401e74000000906119ed565b9063ffffffff6122a416565b9392505050565b6000631dcd65006118c7633b9aca006118bb83866119ed565b82816118f38282610dfb565b611944576040805162461bcd60e51b815260206004820152601b60248201527f5472616e736665722063616e6e6f7420626520616c6c6f7765642e0000000000604482015290519081900360640190fd5b61194f8585856120fc565b5050505050565b600081848411156119e55760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156119aa578181015183820152602001611992565b50505050905090810190601f1680156119d75780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000828201838110156118c7576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000806000611a5886611f0d565b90506000611a6982610f1689610e96565b9050611a758782611fdd565b603f546039546040805163d15e005360e01b81526101009092046001600160a01b0390811660048401529051600093919091169163d15e0053916024808301926020929190829003018186803b158015611ace57600080fd5b505afa158015611ae2573d6000803e3d6000fd5b505050506040513d6020811015611af857600080fd5b50516001600160a01b0389166000908152603a60205260409020819055905082611b28818463ffffffff6119ed16565b9099909850919650945092505050565b6001600160a01b038084166000908152603b60205260409020541680611b5e5750611583565b600080611b6a83611a47565b6001600160a01b0387166000908152603c60205260409020549195509350611ba09250869150610f16908863ffffffff6119ed16565b6001600160a01b038085166000908152603c6020908152604080832094909455603b90529190912054168015611bdc57611bdc84846000611b38565b60408051848152602081018490528082018890526060810187905290516001600160a01b038616917f70ff8cf632603e2bfd1afb7e4061acce53d95356b1be9726b99fa22ba733b01f919081900360800190a250505050505050565b6001600160a01b038216611c7d5760405162461bcd60e51b8152600401808060200182810382526021815260200180612a686021913960400191505060405180910390fd5b611c8982600083611583565b611ccc8160405180606001604052806022815260200161285b602291396001600160a01b038516600090815260346020526040902054919063ffffffff61195616565b6001600160a01b038316600090815260346020526040902055603654611cf8908263ffffffff611d4016565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b60006118c783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611956565b6001600160a01b0381166000818152603b6020908152604080832080546001600160a01b03191690558051838152918201839052818101839052519192839290917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a7348735594919081900360600190a36001600160a01b0382166000908152603c6020526040902054611e2c57506001600160a01b0381166000908152603a602052604081205560016108e2565b5060006108e2565b80611e3e57611583565b611e47836108c1565b15611ef3576040516000906001600160a01b0384169061c35090849084818181858888f193505050503d8060008114611e9c576040519150601f19603f3d011682016040523d82523d6000602084013e611ea1565b606091505b5050905080611eed576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b50611583565b6115836001600160a01b038416838363ffffffff6122e616565b6001600160a01b031660009081526034602052604090205490565b6001600160a01b038083166000908152603a6020908152604080832054603f54603954835163d15e005360e01b815261010090910487166004820152925194956118c795610b04959394611fd194939092169263d15e00539260248082019391829003018186803b158015611f9c57600080fd5b505afa158015611fb0573d6000803e3d6000fd5b505050506040513d6020811015611fc657600080fd5b5051610af88761186d565b9063ffffffff61233816565b6001600160a01b038216612038576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b61204460008383611583565b603654612057908263ffffffff6119ed16565b6036556001600160a01b038216600090815260346020526040902054612083908263ffffffff6119ed16565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b600190565b303b1590565b6039805460ff191660ff92909216919091179055565b6000811161213b5760405162461bcd60e51b8152600401808060200182810382526030815260200180612a386030913960400191505060405180910390fd5b600080600061214986611a47565b9350935093505060008061215c87611a47565b93509350505061216d888588611b38565b61218187610fcf848963ffffffff6119ed16565b61218c888888612370565b600061219e868863ffffffff611d4016565b1580156121bd5750876001600160a01b0316896001600160a01b031614155b156121ce576121cb89611d82565b90505b876001600160a01b0316896001600160a01b03167f89a178eaa27e0cd201bd795ca8ff716ac0df9618494510ca79771cfc66ffcde8898887866122115789612214565b60005b60408051948552602085019390935283830191909152606083015260808201879052519081900360a00190a3505050505050505050565b60008261225a57506000610996565b8282028284828161226757fe5b04146118c75760405162461bcd60e51b81526004018080602001828103825260218152602001806129556021913960400191505060405180910390fd5b60006118c783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506124d9565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261158390849061253e565b600060028204612368836118bb61235b876b033b2e3c9fd0803ce800000061224b565b849063ffffffff6119ed16565b949350505050565b6001600160a01b0383166123b55760405162461bcd60e51b8152600401808060200182810382526025815260200180612a896025913960400191505060405180910390fd5b6001600160a01b0382166123fa5760405162461bcd60e51b81526004018080602001828103825260238152602001806128386023913960400191505060405180910390fd5b612405838383611583565b612448816040518060600160405280602681526020016128d1602691396001600160a01b038616600090815260346020526040902054919063ffffffff61195616565b6001600160a01b03808516600090815260346020526040808220939093559084168152205461247d908263ffffffff6119ed16565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600081836125285760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156119aa578181015183820152602001611992565b50600083858161253457fe5b0495945050505050565b6060612593826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166125ef9092919063ffffffff16565b805190915015611583578080602001905160208110156125b257600080fd5b50516115835760405162461bcd60e51b815260040180806020018281038252602a815260200180612ad2602a913960400191505060405180910390fd5b60606123688484600085606061260485612766565b612655576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106126945780518252601f199092019160209182019101612675565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146126f6576040519150601f19603f3d011682016040523d82523d6000602084013e6126fb565b606091505b5091509150811561270f5791506123689050565b80511561271f5780518082602001fd5b60405162461bcd60e51b81526020600482018181528651602484015286518793919283926044019190850190808383600083156119aa578181015183820152602001611992565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590612368575050151592915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106127e05782800160ff1982351617855561280d565b8280016001018555821561280d579182015b8281111561280d5782358255916020019190600101906127f2565b5061281992915061281d565b5090565b61097b91905b80821115612819576000815560010161282356fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e6365557365722063616e6e6f742072656465656d206d6f7265207468616e2074686520617661696c61626c652062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e63655472616e736665727320617265206f6e6c7920616c6c6f7765642069662074686520756e6465726c79696e6720617373657420697320455448557365722063616e6e6f74206769766520616c6c6f77616e636520746f2068696d73656c66536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365496e74657265737420697320616c7265616479207265646972656374656420746f207468652075736572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564496e7465726573742073747265616d2063616e206f6e6c79206265207265646972656374656420696620746865726520697320612076616c69642062616c616e63655472616e7366657272656420616d6f756e74206e6565647320746f2062652067726561746572207468616e207a65726f45524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573735361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6c45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f43616c6c6572206973206e6f7420616c6c6f77656420746f2072656469726563742074686520696e746572657374206f66207468652075736572a2646970667358221220bbe3ae28c9bda65fb2e89f4b71fd0a9cda9128f6b741ee2a4718c5a6882b746164736f6c63430006080033"; + "0x60c0604052600080553480156200001557600080fd5b506040516200300138038062003001833981810160405260808110156200003b57600080fd5b815160208301516040808501805191519395929483019291846401000000008211156200006757600080fd5b9083019060208201858111156200007d57600080fd5b82516401000000008111828201881017156200009857600080fd5b82525081516020918201929091019080838360005b83811015620000c7578181015183820152602001620000ad565b50505050905090810190601f168015620000f55780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200011957600080fd5b9083019060208201858111156200012f57600080fd5b82516401000000008111828201881017156200014a57600080fd5b82525081516020918201929091019080838360005b83811015620001795781810151838201526020016200015f565b50505050905090810190601f168015620001a75780820380516001836020036101000a031916815260200191505b50604052505082518391508290620001c79060379060208501906200020e565b508051620001dd9060389060208401906200020e565b50506039805460ff191660121790555050506001600160601b0319606092831b811660a052911b16608052620002b3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200025157805160ff191683800117855562000281565b8280016001018555821562000281579182015b828111156200028157825182559160200191906001019062000264565b506200028f92915062000293565b5090565b620002b091905b808211156200028f57600081556001016200029a565b90565b60805160601c60a05160601c612cd96200032860003980610a705280610d8a5280610ebd5280610fad5280611108528061143952806115a15280611b1f52806120405250806101c55280610a9f5280610f265280610f7152806110db52806114605280611b4e528061206f5250612cd96000f3fe6080604052600436106101bb5760003560e01c80634efecaa5116100ec578063a9059cbb1161008a578063db006a7511610064578063db006a75146107e5578063dd62ed3e1461080f578063ee9907a41461084a578063f866c3191461087d5761022f565b8063a9059cbb14610764578063c634dfaa1461079d578063d0fc81d2146107d05761022f565b806389d1a0fc116100c657806389d1a0fc146106c857806394362e8b146106dd57806395d89b4114610716578063a457c2d71461072b5761022f565b80634efecaa5146106235780635eae177c1461065c57806370a08231146106955761022f565b806323b872dd11610159578063325a9b1311610133578063325a9b131461052757806339509351146105625780633edb7cb81461059b578063445e8010146105d45761022f565b806323b872dd146103e05780633118724e14610423578063313ce567146104fc5761022f565b80630e49072d116101955780630e49072d1461033257806312c87c2d1461036557806318160ddd146103985780631d51e7cf146103ad5761022f565b806306fdde0314610234578063095ea7b3146102be5780630bd7ad3b1461030b5761022f565b3661022f576101f27f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166108c0565b61022d5760405162461bcd60e51b8152600401808060200182810382526039815260200180612a0e6039913960400191505060405180910390fd5b005b600080fd5b34801561024057600080fd5b506102496108e6565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028357818101518382015260200161026b565b50505050905090810190601f1680156102b05780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102ca57600080fd5b506102f7600480360360408110156102e157600080fd5b506001600160a01b03813516906020013561097d565b604080519115158252519081900360200190f35b34801561031757600080fd5b5061032061099b565b60408051918252519081900360200190f35b34801561033e57600080fd5b5061022d6004803603602081101561035557600080fd5b50356001600160a01b03166109a0565b34801561037157600080fd5b5061022d6004803603602081101561038857600080fd5b50356001600160a01b03166109ad565b3480156103a457600080fd5b50610320610a4c565b3480156103b957600080fd5b50610320600480360360208110156103d057600080fd5b50356001600160a01b0316610b50565b3480156103ec57600080fd5b506102f76004803603606081101561040357600080fd5b506001600160a01b03813581169160208101359091169060400135610b6b565b34801561042f57600080fd5b5061022d6004803603606081101561044657600080fd5b60ff823516919081019060408101602082013564010000000081111561046b57600080fd5b82018360208201111561047d57600080fd5b8035906020019184600183028401116401000000008311171561049f57600080fd5b9193909290916020810190356401000000008111156104bd57600080fd5b8201836020820111156104cf57600080fd5b803590602001918460018302840111640100000000831117156104f157600080fd5b509092509050610bf8565b34801561050857600080fd5b50610511610cbc565b6040805160ff9092168252519081900360200190f35b34801561053357600080fd5b5061022d6004803603604081101561054a57600080fd5b506001600160a01b0381358116916020013516610cc5565b34801561056e57600080fd5b506102f76004803603604081101561058557600080fd5b506001600160a01b038135169060200135610d2b565b3480156105a757600080fd5b5061022d600480360360408110156105be57600080fd5b506001600160a01b038135169060200135610d7f565b3480156105e057600080fd5b50610607600480360360208110156105f757600080fd5b50356001600160a01b0316610e92565b604080516001600160a01b039092168252519081900360200190f35b34801561062f57600080fd5b506103206004803603604081101561064657600080fd5b506001600160a01b038135169060200135610eb0565b34801561066857600080fd5b506102f76004803603604081101561067f57600080fd5b506001600160a01b038135169060200135610f59565b3480156106a157600080fd5b50610320600480360360208110156106b857600080fd5b50356001600160a01b0316611026565b3480156106d457600080fd5b506106076110d9565b3480156106e957600080fd5b5061022d6004803603604081101561070057600080fd5b506001600160a01b0381351690602001356110fd565b34801561072257600080fd5b506102496111f0565b34801561073757600080fd5b506102f76004803603604081101561074e57600080fd5b506001600160a01b038135169060200135611251565b34801561077057600080fd5b506102f76004803603604081101561078757600080fd5b506001600160a01b0381351690602001356112bf565b3480156107a957600080fd5b50610320600480360360208110156107c057600080fd5b50356001600160a01b03166112d3565b3480156107dc57600080fd5b506103206112de565b3480156107f157600080fd5b5061022d6004803603602081101561080857600080fd5b50356112e4565b34801561081b57600080fd5b506103206004803603604081101561083257600080fd5b506001600160a01b0381358116916020013516611550565b34801561085657600080fd5b506103206004803603602081101561086d57600080fd5b50356001600160a01b031661157b565b34801561088957600080fd5b5061022d600480360360608110156108a057600080fd5b506001600160a01b03813581169160208101359091169060400135611596565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee145b919050565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156109725780601f1061094757610100808354040283529160200191610972565b820191906000526020600020905b81548152906001019060200180831161095557829003601f168201915b505050505090505b90565b600061099161098a61160d565b8484611611565b5060015b92915050565b600181565b6109aa33826116fd565b50565b6001600160a01b0381163314156109f55760405162461bcd60e51b8152600401808060200182810382526025815260200180612a476025913960400191505060405180910390fd5b336000818152603d602052604080822080546001600160a01b0319166001600160a01b03861690811790915590519092917fc2d6a42a9d5273283f73009a07aacfb043f2f91173a8d9d33b504afe898db08b91a350565b600080610a576118ec565b905080610a6857600091505061097a565b610b4a610b457f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d15e00537f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610b0457600080fd5b505afa158015610b18573d6000803e3d6000fd5b505050506040513d6020811015610b2e57600080fd5b5051610b39846118f2565b9063ffffffff61190816565b611953565b91505090565b6001600160a01b03166000908152603c602052604090205490565b6000610b7884848461196c565b610bee84610b8461160d565b610be985604051806060016040528060288152602001612a8d602891396001600160a01b038a16600090815260356020526040812090610bc261160d565b6001600160a01b03168152602081019190915260400160002054919063ffffffff6119db16565b611611565b5060019392505050565b6000610c02611a72565b60015490915060ff1680610c195750610c19611a77565b80610c25575060005481115b610c605760405162461bcd60e51b815260040180806020018281038252602e815260200180612adf602e913960400191505060405180910390fd5b60015460ff16158015610c7f576001805460ff19168117905560008290555b610c8b603787876128b6565b50610c98603885856128b6565b50610ca287611a7d565b8015610cb3576001805460ff191690555b50505050505050565b60395460ff1690565b6001600160a01b038281166000908152603d6020526040902054163314610d1d5760405162461bcd60e51b815260040180806020018281038252603a815260200180612c6a603a913960400191505060405180910390fd5b610d2782826116fd565b5050565b6000610991610d3861160d565b84610be98560356000610d4961160d565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff611a9316565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610de65760405162461bcd60e51b8152600401808060200182810382526032815260200180612c136032913960400191505060405180910390fd5b6000806000610df485611aed565b93509350935050610e06858386611c1d565b610e108585611d1d565b6000610e22848663ffffffff611e2516565b610e3257610e2f86611e67565b90505b856001600160a01b03167f90e5d3d68ec162d9c7de393037a3ede04dd44f68e051bf2ace4a73c299dbc4db868584610e6a5785610e6d565b60005b60408051938452602084019290925282820152519081900360600190a2505050505050565b6001600160a01b039081166000908152603b60205260409020541690565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610f195760405162461bcd60e51b8152600401808060200182810382526032815260200180612c136032913960400191505060405180910390fd5b610f536001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016848463ffffffff611f1916565b50919050565b604080516376e9d61560e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015284811660248301526044820184905291516000927f000000000000000000000000000000000000000000000000000000000000000016916376e9d615916064808301926020929190829003018186803b158015610ff357600080fd5b505afa158015611007573d6000803e3d6000fd5b505050506040513d602081101561101d57600080fd5b50519392505050565b60008061103283611ff2565b6001600160a01b0384166000908152603c60205260409020549091508115801561105a575080155b1561106a576000925050506108e1565b6001600160a01b038481166000908152603b6020526040902054166110bb576110b2816110a6866110a1868463ffffffff611a9316565b61200d565b9063ffffffff611e2516565b925050506108e1565b6110b26110cc826110a6878561200d565b839063ffffffff611a9316565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146111645760405162461bcd60e51b8152600401808060200182810382526032815260200180612c136032913960400191505060405180910390fd5b60008061117084611aed565b9350935050506111948461118d8585611a9390919063ffffffff16565b6000611c1d565b61119e8484612115565b604080518481526020810184905280820183905290516001600160a01b038616917fbe7799898ca2d813ff902b487c1b434ab45b47edd8f38b77ad5e99aae8341b7a919081900360600190a250505050565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156109725780601f1061094757610100808354040283529160200191610972565b600061099161125e61160d565b84610be985604051806060016040528060258152602001612c45602591396035600061128861160d565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff6119db16565b60006109916112cc61160d565b848461196c565b600061099582611ff2565b60001981565b60008111611339576040805162461bcd60e51b815260206004820181905260248201527f416d6f756e7420746f2072656465656d206e6565647320746f206265203e2030604482015290519081900360640190fd5b600080600061134733611aed565b9195509350915084905060001981141561135e5750825b8381111561139d5760405162461bcd60e51b81526004018080602001828103825260328152602001806129946032913960400191505060405180910390fd5b6113a73382610f59565b6113f8576040805162461bcd60e51b815260206004820152601b60248201527f5472616e736665722063616e6e6f7420626520616c6c6f7765642e0000000000604482015290519081900360640190fd5b611403338483611c1d565b61140d3382611d1d565b600061141f858363ffffffff611e2516565b61142f5761142c33611e67565b90505b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016639895e3d87f000000000000000000000000000000000000000000000000000000000000000033856114918a8263ffffffff611e2516565b6040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001846001600160a01b03166001600160a01b03168152602001838152602001828152602001945050505050600060405180830381600087803b15801561150057600080fd5b505af1158015611514573d6000803e3d6000fd5b50505050336001600160a01b03167fbd5034ffbd47e4e72a94baa2cdb74c6fad73cb3bcdc13036b72ec8306f5a7646838684610e6a5786610e6d565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001600160a01b03166000908152603a602052604090205490565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146115fd5760405162461bcd60e51b8152600401808060200182810382526032815260200180612c136032913960400191505060405180910390fd5b611608838383612213565b505050565b3390565b6001600160a01b0383166116565760405162461bcd60e51b8152600401808060200182810382526024815260200180612bc56024913960400191505060405180910390fd5b6001600160a01b03821661169b5760405162461bcd60e51b81526004018080602001828103825260228152602001806129c66022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038083166000908152603b6020526040902054811690821681141561175a5760405162461bcd60e51b815260040180806020018281038252602a815260200180612ab5602a913960400191505060405180910390fd5b60008060008061176987611aed565b9350935093509350600083116117b05760405162461bcd60e51b8152600401808060200182810382526042815260200180612b0d6042913960600191505060405180910390fd5b6001600160a01b038516156117cb576117cb87600086611c1d565b866001600160a01b0316866001600160a01b03161415611857576001600160a01b0387166000818152603b6020908152604080832080546001600160a01b03191690558051878152918201869052818101859052519192917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a73487355949181900360600190a35050505050610d27565b6001600160a01b038781166000908152603b6020526040812080546001600160a01b031916928916929092179091556118939088908590611c1d565b604080518481526020810184905280820183905290516001600160a01b0380891692908a16917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a73487355949181900360600190a350505050505050565b60365490565b600061099582633b9aca0063ffffffff61236216565b600061194c6b033b2e3c9fd0803ce800000061194061192d868663ffffffff61236216565b6b019d971e4fe8401e7400000090611a93565b9063ffffffff6123bb16565b9392505050565b6000631dcd650061194c633b9aca006119408386611a93565b82816119788282610f59565b6119c9576040805162461bcd60e51b815260206004820152601b60248201527f5472616e736665722063616e6e6f7420626520616c6c6f7765642e0000000000604482015290519081900360640190fd5b6119d4858585612213565b5050505050565b60008184841115611a6a5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a2f578181015183820152602001611a17565b50505050905090810190601f168015611a5c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600190565b303b1590565b6039805460ff191660ff92909216919091179055565b60008282018381101561194c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000806000806000611afe86611ff2565b90506000611b0f826110a689611026565b9050611b1b8782612115565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d15e00537f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015611bb357600080fd5b505afa158015611bc7573d6000803e3d6000fd5b505050506040513d6020811015611bdd57600080fd5b50516001600160a01b0389166000908152603a60205260409020819055905082611c0d818463ffffffff611a9316565b9099909850919650945092505050565b6001600160a01b038084166000908152603b60205260409020541680611c435750611608565b600080611c4f83611aed565b6001600160a01b0387166000908152603c60205260409020549195509350611c8592508691506110a6908863ffffffff611a9316565b6001600160a01b038085166000908152603c6020908152604080832094909455603b90529190912054168015611cc157611cc184846000611c1d565b60408051848152602081018490528082018890526060810187905290516001600160a01b038616917f70ff8cf632603e2bfd1afb7e4061acce53d95356b1be9726b99fa22ba733b01f919081900360800190a250505050505050565b6001600160a01b038216611d625760405162461bcd60e51b8152600401808060200182810382526021815260200180612b7f6021913960400191505060405180910390fd5b611d6e82600083611608565b611db181604051806060016040528060228152602001612972602291396001600160a01b038516600090815260346020526040902054919063ffffffff6119db16565b6001600160a01b038316600090815260346020526040902055603654611ddd908263ffffffff611e2516565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b600061194c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506119db565b6001600160a01b0381166000818152603b6020908152604080832080546001600160a01b03191690558051838152918201839052818101839052519192839290917f5e3cad45b1fe24159d1cb39788d82d0f69cc15770aa96fba1d3d1a7348735594919081900360600190a36001600160a01b0382166000908152603c6020526040902054611f1157506001600160a01b0381166000908152603a602052604081205560016108e1565b5060006108e1565b80611f2357611608565b611f2c836108c0565b15611fd8576040516000906001600160a01b0384169061c35090849084818181858888f193505050503d8060008114611f81576040519150601f19603f3d011682016040523d82523d6000602084013e611f86565b606091505b5050905080611fd2576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b50611608565b6116086001600160a01b038416838363ffffffff6123fd16565b6001600160a01b031660009081526034602052604090205490565b600061194c610b45603a6000866001600160a01b03166001600160a01b03168152602001908152602001600020546121097f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d15e00537f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156120d457600080fd5b505afa1580156120e8573d6000803e3d6000fd5b505050506040513d60208110156120fe57600080fd5b5051610b39876118f2565b9063ffffffff61244f16565b6001600160a01b038216612170576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b61217c60008383611608565b60365461218f908263ffffffff611a9316565b6036556001600160a01b0382166000908152603460205260409020546121bb908263ffffffff611a9316565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b600081116122525760405162461bcd60e51b8152600401808060200182810382526030815260200180612b4f6030913960400191505060405180910390fd5b600080600061226086611aed565b9350935093505060008061227387611aed565b935093505050612284888588611c1d565b6122988761118d848963ffffffff611a9316565b6122a3888888612487565b60006122b5868863ffffffff611e2516565b1580156122d45750876001600160a01b0316896001600160a01b031614155b156122e5576122e289611e67565b90505b876001600160a01b0316896001600160a01b03167f89a178eaa27e0cd201bd795ca8ff716ac0df9618494510ca79771cfc66ffcde889888786612328578961232b565b60005b60408051948552602085019390935283830191909152606083015260808201879052519081900360a00190a3505050505050505050565b60008261237157506000610995565b8282028284828161237e57fe5b041461194c5760405162461bcd60e51b8152600401808060200182810382526021815260200180612a6c6021913960400191505060405180910390fd5b600061194c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506125f0565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052611608908490612655565b60006002820461247f83611940612472876b033b2e3c9fd0803ce8000000612362565b849063ffffffff611a9316565b949350505050565b6001600160a01b0383166124cc5760405162461bcd60e51b8152600401808060200182810382526025815260200180612ba06025913960400191505060405180910390fd5b6001600160a01b0382166125115760405162461bcd60e51b815260040180806020018281038252602381526020018061294f6023913960400191505060405180910390fd5b61251c838383611608565b61255f816040518060600160405280602681526020016129e8602691396001600160a01b038616600090815260346020526040902054919063ffffffff6119db16565b6001600160a01b038085166000908152603460205260408082209390935590841681522054612594908263ffffffff611a9316565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818361263f5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611a2f578181015183820152602001611a17565b50600083858161264b57fe5b0495945050505050565b60606126aa826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166127069092919063ffffffff16565b805190915015611608578080602001905160208110156126c957600080fd5b50516116085760405162461bcd60e51b815260040180806020018281038252602a815260200180612be9602a913960400191505060405180910390fd5b606061247f8484600085606061271b8561287d565b61276c576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106127ab5780518252601f19909201916020918201910161278c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d806000811461280d576040519150601f19603f3d011682016040523d82523d6000602084013e612812565b606091505b5091509150811561282657915061247f9050565b8051156128365780518082602001fd5b60405162461bcd60e51b8152602060048201818152865160248401528651879391928392604401919085019080838360008315611a2f578181015183820152602001611a17565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061247f575050151592915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106128f75782800160ff19823516178555612924565b82800160010185558215612924579182015b82811115612924578235825591602001919060010190612909565b50612930929150612934565b5090565b61097a91905b80821115612930576000815560010161293a56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e6365557365722063616e6e6f742072656465656d206d6f7265207468616e2074686520617661696c61626c652062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e63655472616e736665727320617265206f6e6c7920616c6c6f7765642069662074686520756e6465726c79696e6720617373657420697320455448557365722063616e6e6f74206769766520616c6c6f77616e636520746f2068696d73656c66536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365496e74657265737420697320616c7265616479207265646972656374656420746f207468652075736572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564496e7465726573742073747265616d2063616e206f6e6c79206265207265646972656374656420696620746865726520697320612076616c69642062616c616e63655472616e7366657272656420616d6f756e74206e6565647320746f2062652067726561746572207468616e207a65726f45524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573735361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6c45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f43616c6c6572206973206e6f7420616c6c6f77656420746f2072656469726563742074686520696e746572657374206f66207468652075736572a26469706673582212209754600ccd670a635aeee1c1ba140565730ad6b9da050e6eb2814f2f0a03411864736f6c63430006080033"; diff --git a/types/AaveProtocolTestHelpersFactory.ts b/types/AaveProtocolTestHelpersFactory.ts index 9d9e14be..98dacd03 100644 --- a/types/AaveProtocolTestHelpersFactory.ts +++ b/types/AaveProtocolTestHelpersFactory.ts @@ -123,4 +123,4 @@ const _abi = [ ]; const _bytecode = - "0x60a060405234801561001057600080fd5b506040516109cd3803806109cd83398101604081905261002f91610044565b60601b6001600160601b031916608052610072565b600060208284031215610055578081fd5b81516001600160a01b038116811461006b578182fd5b9392505050565b60805160601c610936610097600039806083528060ab528061035f52506109366000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630542975c14610046578063b316ff8914610064578063f561ae4114610079575b600080fd5b61004e610081565b60405161005b91906107ed565b60405180910390f35b61006c6100a5565b60405161005b9190610801565b61006c610359565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561010257600080fd5b505afa158015610116573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061013a9190610648565b90506060816001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160006040518083038186803b15801561017757600080fd5b505afa15801561018b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101b391908101906106b6565b90506060815167ffffffffffffffff811180156101cf57600080fd5b5060405190808252806020026020018201604052801561020957816020015b6101f6610613565b8152602001906001900390816101ee5790505b50905060005b825181101561035157604051806040016040528084838151811061022f57fe5b60200260200101516001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0316146102f05784838151811061026f57fe5b60200260200101516001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156102af57600080fd5b505afa1580156102c3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102eb9190810190610761565b61030d565b6040518060400160405280600381526020016208aa8960eb1b8152505b815260200184838151811061031e57fe5b60200260200101516001600160a01b031681525082828151811061033e57fe5b602090810291909101015260010161020f565b509250505090565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b657600080fd5b505afa1580156103ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ee9190610648565b90506060816001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160006040518083038186803b15801561042b57600080fd5b505afa15801561043f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261046791908101906106b6565b90506060815167ffffffffffffffff8111801561048357600080fd5b506040519080825280602002602001820160405280156104bd57816020015b6104aa610613565b8152602001906001900390816104a25790505b50905060005b8251811015610351576000846001600160a01b031663d2493b6c8584815181106104e957fe5b60200260200101516040518263ffffffff1660e01b815260040161050d91906107ed565b60606040518083038186803b15801561052557600080fd5b505afa158015610539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055d919061066a565b505090506040518060400160405280826001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156105a557600080fd5b505afa1580156105b9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105e19190810190610761565b8152602001826001600160a01b03168152508383815181106105ff57fe5b6020908102919091010152506001016104c3565b60408051808201909152606081526000602082015290565b80516001600160a01b038116811461064257600080fd5b92915050565b600060208284031215610659578081fd5b610663838361062b565b9392505050565b60008060006060848603121561067e578182fd5b8351610689816108e8565b602085015190935061069a816108e8565b60408501519092506106ab816108e8565b809150509250925092565b600060208083850312156106c8578182fd5b825167ffffffffffffffff808211156106df578384fd5b81850186601f8201126106f0578485fd5b8051925081831115610700578485fd5b8383029150610710848301610891565b8381528481019082860184840187018a101561072a578788fd5b8794505b85851015610754576107408a8261062b565b83526001949094019391860191860161072e565b5098975050505050505050565b600060208284031215610772578081fd5b815167ffffffffffffffff80821115610789578283fd5b81840185601f82011261079a578384fd5b80519250818311156107aa578384fd5b6107bd601f8401601f1916602001610891565b91508282528560208483010111156107d3578384fd5b6107e48360208401602084016108b8565b50949350505050565b6001600160a01b0391909116815260200190565b60208082528251828201819052600091906040908185019080840286018301878501865b8381101561088357603f1989840301855281518051878552805180898701526060610855828289018d86016108b8565b928a01516001600160a01b0316868b015296890196601f01601f191690940101925090860190600101610825565b509098975050505050505050565b60405181810167ffffffffffffffff811182821017156108b057600080fd5b604052919050565b60005b838110156108d35781810151838201526020016108bb565b838111156108e2576000848401525b50505050565b6001600160a01b03811681146108fd57600080fd5b5056fea26469706673582212203a3381fb8716221b56c5efb284d1120c52f3772d4bd68fb6ebc309de5969d6a264736f6c63430006080033"; + "0x60a060405234801561001057600080fd5b506040516109e23803806109e283398101604081905261002f91610044565b60601b6001600160601b031916608052610072565b600060208284031215610055578081fd5b81516001600160a01b038116811461006b578182fd5b9392505050565b60805160601c61094b610097600039806083528060ab528061035f525061094b6000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630542975c14610046578063b316ff8914610064578063f561ae4114610079575b600080fd5b61004e610081565b60405161005b91906107fa565b60405180910390f35b61006c6100a5565b60405161005b919061080e565b61006c610359565b7f000000000000000000000000000000000000000000000000000000000000000081565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561010257600080fd5b505afa158015610116573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061013a9190610648565b90506060816001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160006040518083038186803b15801561017757600080fd5b505afa15801561018b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101b391908101906106b6565b90506060815167ffffffffffffffff811180156101cf57600080fd5b5060405190808252806020026020018201604052801561020957816020015b6101f6610613565b8152602001906001900390816101ee5790505b50905060005b825181101561035157604051806040016040528084838151811061022f57fe5b60200260200101516001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0316146102f05784838151811061026f57fe5b60200260200101516001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156102af57600080fd5b505afa1580156102c3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102eb9190810190610761565b61030d565b6040518060400160405280600381526020016208aa8960eb1b8152505b815260200184838151811061031e57fe5b60200260200101516001600160a01b031681525082828151811061033e57fe5b602090810291909101015260010161020f565b509250505090565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b657600080fd5b505afa1580156103ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ee9190610648565b90506060816001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160006040518083038186803b15801561042b57600080fd5b505afa15801561043f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261046791908101906106b6565b90506060815167ffffffffffffffff8111801561048357600080fd5b506040519080825280602002602001820160405280156104bd57816020015b6104aa610613565b8152602001906001900390816104a25790505b50905060005b8251811015610351576000846001600160a01b031663d2493b6c8584815181106104e957fe5b60200260200101516040518263ffffffff1660e01b815260040161050d91906107fa565b60606040518083038186803b15801561052557600080fd5b505afa158015610539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055d919061066a565b505090506040518060400160405280826001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156105a557600080fd5b505afa1580156105b9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105e19190810190610761565b8152602001826001600160a01b03168152508383815181106105ff57fe5b6020908102919091010152506001016104c3565b60408051808201909152606081526000602082015290565b80516001600160a01b038116811461064257600080fd5b92915050565b600060208284031215610659578081fd5b610663838361062b565b9392505050565b60008060006060848603121561067e578182fd5b8351610689816108fd565b602085015190935061069a816108fd565b60408501519092506106ab816108fd565b809150509250925092565b600060208083850312156106c8578182fd5b825167ffffffffffffffff808211156106df578384fd5b81850186601f8201126106f0578485fd5b8051925081831115610700578485fd5b83830291506107108483016108a6565b8381528481019082860184840187018a101561072a578788fd5b8794505b85851015610754576107408a8261062b565b83526001949094019391860191860161072e565b5098975050505050505050565b600060208284031215610772578081fd5b815167ffffffffffffffff80821115610789578283fd5b81840185601f82011261079a578384fd5b80519250818311156107aa578384fd5b6107bd601f8401601f19166020016108a6565b91508282528560208483010111156107d3578384fd5b6107e48360208401602084016108cd565b50949350505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b60208082528251828201819052600091906040908185019080840286018301878501865b8381101561089857603f1989840301855281518051878552805180898701526060610862828289018d86016108cd565b8a84015192506108748b8801846107ed565b978a0197601f91909101601f19169590950190940193505090860190600101610832565b509098975050505050505050565b60405181810167ffffffffffffffff811182821017156108c557600080fd5b604052919050565b60005b838110156108e85781810151838201526020016108d0565b838111156108f7576000848401525b50505050565b6001600160a01b038116811461091257600080fd5b5056fea2646970667358221220b389fd936ab71c2d0abf42c45c20d01abb38a699a54755e46397dffebced222a64736f6c63430006080033"; diff --git a/types/GenericLogicFactory.ts b/types/GenericLogicFactory.ts index d20c5ba7..f4bcf2dd 100644 --- a/types/GenericLogicFactory.ts +++ b/types/GenericLogicFactory.ts @@ -79,4 +79,4 @@ const _abi = [ ]; const _bytecode = - "0x610e94610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100565760003560e01c806392eeb05c1461005b578063c3525c2814610150578063d609bd1b1461016a578063daae705514610193575b600080fd5b610125600480360360a081101561007157600080fd5b6001600160a01b0382351691602081013591604082013591908101906080810160608201356401000000008111156100a857600080fd5b8201836020820111156100ba57600080fd5b803590602001918460208302840111640100000000831117156100dc57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550505090356001600160a01b0316915061024c9050565b6040805195865260208601949094528484019290925260608401526080830152519081900360a00190f35b6101586107b7565b60408051918252519081900360200190f35b6101586004803603606081101561018057600080fd5b50803590602081013590604001356107c3565b610238600480360360e08110156101a957600080fd5b6001600160a01b0382358116926020810135909116916040820135916060810135916080820135919081019060c0810160a08201356401000000008111156101f057600080fd5b82018360208201111561020257600080fd5b8035906020019184602083028401116401000000008311171561022457600080fd5b9193509150356001600160a01b0316610805565b604080519115158252519081900360200190f35b600080600080600061025c610d40565b600060e08201525b87518160e00151101561070357878160e001518151811061028157fe5b60200260200101518161020001906001600160a01b031690816001600160a01b03168152505060008a60008361020001516001600160a01b03166001600160a01b0316815260200190815260200160002090508060060160009054906101000a90046001600160a01b03166001600160a01b03166370a082318d6040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561034157600080fd5b505afa158015610355573d6000803e3d6000fd5b505050506040513d602081101561036b57600080fd5b5051604080840191909152600782015481516370a0823160e01b81526001600160a01b038f81166004830152925192909116916370a0823191602480820192602092909190829003018186803b1580156103c457600080fd5b505afa1580156103d8573d6000803e3d6000fd5b505050506040513d60208110156103ee57600080fd5b505160608301526008810154604080516370a0823160e01b81526001600160a01b038f8116600483015291516104869392909216916370a0823191602480820192602092909190829003018186803b15801561044957600080fd5b505afa15801561045d573d6000803e3d6000fd5b505050506040513d602081101561047357600080fd5b505160608401519063ffffffff610a3516565b6060830152604082015115801561049f57506060820151155b156104aa57506106f3565b6104b681600501610a98565b6080860181905260c08601929092525060a0840191909152600a0a602083015260e082015189516001600160a01b038a169163b3596f07918c919081106104f957fe5b60200260200101516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561054757600080fd5b505afa15801561055b573d6000803e3d6000fd5b505050506040513d602081101561057157600080fd5b505182526040820151156106a85760006105b083602001516105a485604001518660000151610adf90919063ffffffff16565b9063ffffffff610b3816565b90508260a0015160001415801561062057508a60008e6001600160a01b03166001600160a01b0316815260200190815260200160002060008b8560e00151815181106105f857fe5b6020908102919091018101516001600160a01b031682528101919091526040016000205460ff165b156106a65761012083015161063b908263ffffffff610a3516565b61012084015260a083015161066d9061065b90839063ffffffff610adf16565b6101808501519063ffffffff610a3516565b61018084015260c083015161069f9061068d90839063ffffffff610adf16565b6101a08501519063ffffffff610a3516565b6101a08401525b505b6060820151156106f1576106ea6106d883602001516105a485606001518660000151610adf90919063ffffffff16565b6101408401519063ffffffff610a3516565b6101408301525b505b60e0810180516001019052610264565b600081610120015111610717576000610732565b6101208101516101808201516107329163ffffffff610b3816565b610180820152610120810151610749576000610764565b6101208101516101a08201516107649163ffffffff610b3816565b6101a0820181905261012082015161014083015161078192610b7a565b61010082018190526101208201516101408301516101808401516101a090940151919e909d50929b509950975095505050505050565b670de0b6b3a764000081565b6000806107d6858463ffffffff610bb216565b9050838110156107ea5760009150506107fe565b6107fa818563ffffffff610bd616565b9150505b9392505050565b600061080f610de1565b6001600160a01b038a16600090815260208890526040902061083390600501610a98565b8452505060208201819052158061086e57506001600160a01b03808a16600090815260208881526040808320938e168352929052205460ff16155b1561087d576001915050610a29565b6108be8988888888808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508a925061024c915050565b506080850152506060830181905260408301919091526108e2576001915050610a29565b61097f8160000151600a0a6105a48a866001600160a01b031663b3596f078f6040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561094757600080fd5b505afa15801561095b573d6000803e3d6000fd5b505050506040513d602081101561097157600080fd5b50519063ffffffff610adf16565b60c08201819052604082015161099a9163ffffffff610bd616565b60e082018190526109af576000915050610a29565b6109fa8160e001516105a46109d58460a001518560c00151610adf90919063ffffffff16565b608085015160408601516109ee9163ffffffff610adf16565b9063ffffffff610bd616565b610100820181905260e08201516060830151600092610a1a929190610b7a565b670de0b6b3a764000010925050505b98975050505050505050565b600082820183811015610a8f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b600082610aee57506000610a92565b82820282848281610afb57fe5b0414610a8f5760405162461bcd60e51b8152600401808060200182810382526021815260200180610e3e6021913960400191505060405180910390fd5b6000610a8f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610c18565b600082610b8a57506000196107fe565b610baa83610b9e868563ffffffff610bb216565b9063ffffffff610cba16565b949350505050565b6000610a8f6127106105a4610bcd868663ffffffff610adf16565b61138890610a35565b6000610a8f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ce6565b60008183610ca45760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c69578181015183820152602001610c51565b50505050905090810190601f168015610c965780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610cb057fe5b0495945050505050565b600060028204610baa836105a4610cd987670de0b6b3a7640000610adf565b849063ffffffff610a3516565b60008184841115610d385760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610c69578181015183820152602001610c51565b505050900390565b60405180610260016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160006001600160a01b031681526020016000151581526020016000151581525090565b60405180610160016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600015158152509056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122081191d9499c232caefcd8b7ee9722ed83db470a143f1b0267c75f0cf36151e0064736f6c63430006080033"; + "0x610e85610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061004b5760003560e01c8063865cb0ce14610050578063c3525c2814610079578063d609bd1b1461008e575b600080fd5b61006361005e366004610c0b565b6100a1565b6040516100709190610d70565b60405180910390f35b610081610326565b6040516100709190610e46565b61008161009c366004610d31565b610332565b60006100ba6100b536879003870187610cdc565b610374565b158061010857506001600160a01b03891660009081526020879052604090206009015461010690600160d01b900460ff166100fa36889003880188610cdc565b9063ffffffff61039c16565b155b156101155750600161031a565b61011d610af7565b6001600160a01b038a166000908152602088905260409020610141906005016103b4565b845250506020820181905261015a57600191505061031a565b6101a9898861016e368a90038a018a610cdc565b8888808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508a92506103fb915050565b506080850152506060830181905260408301919091526101cd57600191505061031a565b6102708160000151600a0a6102648a866001600160a01b031663b3596f078f6040518263ffffffff1660e01b81526004016102089190610d5c565b60206040518083038186803b15801561022057600080fd5b505afa158015610234573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102589190610d19565b9063ffffffff6108fb16565b9063ffffffff61093e16565b60c08201819052604082015161028b9163ffffffff61098016565b60e082018190526102a057600091505061031a565b6102eb8160e001516102646102c68460a001518560c001516108fb90919063ffffffff16565b608085015160408601516102df9163ffffffff6108fb16565b9063ffffffff61098016565b610100820181905260e0820151606083015160009261030b9291906109c2565b670de0b6b3a764000010925050505b98975050505050505050565b670de0b6b3a764000081565b600080610345858463ffffffff6109fa16565b90508381101561035957600091505061036d565b610369818563ffffffff61098016565b9150505b9392505050565b517f555555555555555555555555555555555555555555555555555555555555555516151590565b815160016002830281019190911c1615155b92915050565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b600080600080600061040b610b53565b61041489610a1e565b1561043157506000945084935083925082915060001990506108ee565b600060e08201525b87518160e0015110156108415760e081015161045c908a9063ffffffff610a2316565b61046557610831565b878160e001518151811061047557fe5b6020908102919091018101516001600160a01b031661020083018190526000908152908b9052604090206104ab600582016103b4565b6080860181905260c08601929092525060a0840191909152600a0a602083015261020082015160405163b3596f0760e01b81526001600160a01b038a169163b3596f07916104fc9190600401610d5c565b60206040518083038186803b15801561051457600080fd5b505afa158015610528573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054c9190610d19565b825260a082015115801590610572575060e0820151610572908b9063ffffffff61039c16565b156106a35760068101546040516370a0823160e01b81526001600160a01b03909116906370a08231906105a9908f90600401610d5c565b60206040518083038186803b1580156105c157600080fd5b505afa1580156105d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f99190610d19565b604083018190526020830151835160009261061e92916102649163ffffffff6108fb16565b610120840151909150610637908263ffffffff610a3316565b61012084015260a08301516106699061065790839063ffffffff6108fb16565b6101808501519063ffffffff610a3316565b61018084015260c083015161069b9061068990839063ffffffff6108fb16565b6101a08501519063ffffffff610a3316565b6101a0840152505b60e08201516106b9908b9063ffffffff610a5816565b1561082f5760078101546040516370a0823160e01b81526001600160a01b03909116906370a08231906106f0908f90600401610d5c565b60206040518083038186803b15801561070857600080fd5b505afa15801561071c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107409190610d19565b8260600181815250506107f08160080160009054906101000a90046001600160a01b03166001600160a01b03166370a082318e6040518263ffffffff1660e01b815260040161078f9190610d5c565b60206040518083038186803b1580156107a757600080fd5b505afa1580156107bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107df9190610d19565b60608401519063ffffffff610a3316565b60608301819052602083015183516108289261081692916102649163ffffffff6108fb16565b6101408401519063ffffffff610a3316565b6101408301525b505b60e0810180516001019052610439565b600081610120015111610855576000610870565b6101208101516101808201516108709163ffffffff61093e16565b6101808201526101208101516108875760006108a2565b6101208101516101a08201516108a29163ffffffff61093e16565b6101a082018190526101208201516101408301516108bf926109c2565b61010082018190526101208201516101408301516101808401516101a090940151919850965091945090925090505b9550955095509550959050565b60008261090a575060006103ae565b8282028284828161091757fe5b041461036d5760405162461bcd60e51b815260040161093590610e05565b60405180910390fd5b600061036d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610a68565b600061036d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a9f565b6000826109d2575060001961036d565b6109f2836109e6868563ffffffff6109fa16565b9063ffffffff610acb16565b949350505050565b600061036d612710610264610a15868663ffffffff6108fb16565b61138890610a33565b511590565b9051600360029092021c16151590565b60008282018381101561036d5760405162461bcd60e51b815260040161093590610dce565b9051600160029092021c16151590565b60008183610a895760405162461bcd60e51b81526004016109359190610d7b565b506000838581610a9557fe5b0495945050505050565b60008184841115610ac35760405162461bcd60e51b81526004016109359190610d7b565b505050900390565b6000600282046109f283610264610aea87670de0b6b3a76400006108fb565b849063ffffffff610a3316565b604051806101600160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581525090565b60405180610260016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160006001600160a01b031681526020016000151581526020016000151581525090565b80356001600160a01b03811681146103ae57600080fd5b600080600080600080600080888a0360e0811215610c27578485fd5b610c318b8b610bf4565b9850610c408b60208c01610bf4565b975060408a0135965060608a013595506020607f1982011215610c61578485fd5b5060808901935060a089013567ffffffffffffffff80821115610c82578485fd5b818b018c601f820112610c93578586fd5b8035925081831115610ca3578586fd5b8c60208085028301011115610cb6578586fd5b6020019450909250610ccd90508a60c08b01610bf4565b90509295985092959890939650565b600060208284031215610ced578081fd5b6040516020810181811067ffffffffffffffff82111715610d0c578283fd5b6040529135825250919050565b600060208284031215610d2a578081fd5b5051919050565b600080600060608486031215610d45578283fd5b505081359360208301359350604090920135919050565b6001600160a01b0391909116815260200190565b901515815260200190565b6000602080835283518082850152825b81811015610da757858101830151858201604001528201610d8b565b81811115610db85783604083870101525b50601f01601f1916929092016040019392505050565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b9081526020019056fea2646970667358221220fe1996172119da34d352bda93e33fab5310de70a2961ad5bd46478053747d41264736f6c63430006080033"; diff --git a/types/LendingPoolConfigurator.d.ts b/types/LendingPoolConfigurator.d.ts index 442d0522..465edbb0 100644 --- a/types/LendingPoolConfigurator.d.ts +++ b/types/LendingPoolConfigurator.d.ts @@ -56,17 +56,6 @@ interface LendingPoolConfiguratorInterface extends Interface { }>; initReserve: TypedFunctionDescription<{ - encode([ - _reserve, - _underlyingAssetDecimals, - _aTokenInstance, - _interestRateStrategyAddress, - _stableDebtTokenAddress, - _variableDebtTokenAddress - ]: [string, BigNumberish, string, string, string, string]): string; - }>; - - initReserveWithData: TypedFunctionDescription<{ encode([ _reserve, _aTokenInstance, @@ -260,16 +249,6 @@ export class LendingPoolConfigurator extends Contract { ): Promise; initReserve( - _reserve: string, - _underlyingAssetDecimals: BigNumberish, - _aTokenInstance: string, - _interestRateStrategyAddress: string, - _stableDebtTokenAddress: string, - _variableDebtTokenAddress: string, - overrides?: TransactionOverrides - ): Promise; - - initReserveWithData( _reserve: string, _aTokenInstance: string, _stableDebtTokenAddress: string, @@ -376,16 +355,6 @@ export class LendingPoolConfigurator extends Contract { ): Promise; initReserve( - _reserve: string, - _underlyingAssetDecimals: BigNumberish, - _aTokenInstance: string, - _interestRateStrategyAddress: string, - _stableDebtTokenAddress: string, - _variableDebtTokenAddress: string, - overrides?: TransactionOverrides - ): Promise; - - initReserveWithData( _reserve: string, _aTokenInstance: string, _stableDebtTokenAddress: string, @@ -521,15 +490,6 @@ export class LendingPoolConfigurator extends Contract { freezeReserve(_reserve: string): Promise; initReserve( - _reserve: string, - _underlyingAssetDecimals: BigNumberish, - _aTokenInstance: string, - _interestRateStrategyAddress: string, - _stableDebtTokenAddress: string, - _variableDebtTokenAddress: string - ): Promise; - - initReserveWithData( _reserve: string, _aTokenInstance: string, _stableDebtTokenAddress: string, diff --git a/types/LendingPoolConfiguratorFactory.ts b/types/LendingPoolConfiguratorFactory.ts index c5682bd4..7d323438 100644 --- a/types/LendingPoolConfiguratorFactory.ts +++ b/types/LendingPoolConfiguratorFactory.ts @@ -469,21 +469,11 @@ const _abi = [ name: "_reserve", type: "address" }, - { - internalType: "uint8", - name: "_underlyingAssetDecimals", - type: "uint8" - }, { internalType: "address", name: "_aTokenInstance", type: "address" }, - { - internalType: "address", - name: "_interestRateStrategyAddress", - type: "address" - }, { internalType: "address", name: "_stableDebtTokenAddress", @@ -493,6 +483,16 @@ const _abi = [ internalType: "address", name: "_variableDebtTokenAddress", type: "address" + }, + { + internalType: "uint8", + name: "_underlyingAssetDecimals", + type: "uint8" + }, + { + internalType: "address", + name: "_interestRateStrategyAddress", + type: "address" } ], name: "initReserve", @@ -500,44 +500,6 @@ const _abi = [ stateMutability: "nonpayable", type: "function" }, - { - inputs: [ - { - internalType: "address", - name: "_reserve", - type: "address" - }, - { - internalType: "address", - name: "_aTokenInstance", - type: "address" - }, - { - internalType: "address", - name: "_stableDebtTokenAddress", - type: "address" - }, - { - internalType: "address", - name: "_variableDebtTokenAddress", - type: "address" - }, - { - internalType: "uint8", - name: "_underlyingAssetDecimals", - type: "uint8" - }, - { - internalType: "address", - name: "_interestRateStrategyAddress", - type: "address" - } - ], - name: "initReserveWithData", - outputs: [], - stateMutability: "nonpayable", - type: "function" - }, { inputs: [ { @@ -683,4 +645,4 @@ const _abi = [ ]; const _bytecode = - "0x60806040526000805534801561001457600080fd5b5061369a806100246000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c80637cadffd9116100b8578063bf3441831161007c578063bf3441831461025d578063c4d66de814610270578063e8ae2f5b14610283578063eede87c114610296578063ef1f9373146102a9578063f53a2515146102bc57610137565b80637cadffd91461020957806380e17d871461021c578063a5bc826c14610224578063a8dc0f4514610237578063b75d6f341461024a57610137565b80634aebfb74116100ff5780634aebfb74146101a857806366bbd928146101bb57806372f46aaa146101ce5780637aca76eb146101e15780637af635a6146101f457610137565b80630dbb166d1461013c5780630e30428d1461015157806316f0115b146101645780631d2118f9146101825780633e72a45414610195575b600080fd5b61014f61014a366004612722565b6102cf565b005b61014f61015f3660046127d3565b610730565b61016c61090f565b60405161017991906129fe565b60405180910390f35b61014f6101903660046126ea565b61091e565b61014f6101a33660046126ab565b610a61565b61014f6101b6366004612838565b610d05565b61014f6101c93660046127d3565b610dbd565b61014f6101dc3660046127d3565b610f8f565b61014f6101ef3660046126ab565b611161565b6101fc61133b565b6040516101799190612bfb565b61014f6102173660046127d3565b611340565b61016c611512565b61014f6102323660046127fe565b611521565b61014f6102453660046126ab565b61172e565b61014f6102583660046126ab565b611908565b61014f61026b3660046126ab565b611ae2565b61014f61027e3660046126ab565b611cbc565b61014f6102913660046126ab565b611dee565b61014f6102a43660046127a2565b611fc8565b61014f6102b73660046126ab565b6121ab565b61014f6102ca3660046126ab565b612385565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561031357600080fd5b505afa158015610327573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061034b91906126ce565b6001600160a01b03161461037a5760405162461bcd60e51b815260040161037190612b1a565b60405180910390fd5b600060405161038890612674565b604051809103906000f0801580156103a4573d6000803e3d6000fd5b5090506060603460009054906101000a90046001600160a01b03168885896001600160a01b03166306fdde036040518163ffffffff1660e01b815260040160006040518083038186803b1580156103fa57600080fd5b505afa15801561040e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610436919081019061289a565b8a6001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b15801561046f57600080fd5b505afa158015610483573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104ab919081019061289a565b6040516024016104bf959493929190612a93565b60408051601f198184030181529181526020820180516001600160e01b0316633e17dbdd60e21b1790525163cf7a1d7760e01b81529091506001600160a01b0383169063cf7a1d779061051a908a9030908690600401612a5e565b600060405180830381600087803b15801561053457600080fd5b505af1158015610548573d6000803e3d6000fd5b5050603554604051633d38474960e11b81526001600160a01b039091169250637a708e929150610584908b9086908b908b908a90600401612a2c565b600060405180830381600087803b15801561059e57600080fd5b505af11580156105b2573d6000803e3d6000fd5b505050506105be612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f7906105ee908c906004016129fe565b60206040518083038186803b15801561060657600080fd5b505afa15801561061a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063e9190612926565b90506106538160ff871663ffffffff61255f16565b61066481600163ffffffff61257616565b61067581600063ffffffff6125a316565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916106a8918d9190600401612b01565b600060405180830381600087803b1580156106c257600080fd5b505af11580156106d6573d6000803e3d6000fd5b50505050826001600160a01b0316896001600160a01b03167f1d9fcd0dc935b4778d5af97f55c4d7b2553257382f1ef25c412114c8eeebd88e8660405161071d91906129fe565b60405180910390a3505050505050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561077457600080fd5b505afa158015610788573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ac91906126ce565b6001600160a01b0316146107d25760405162461bcd60e51b815260040161037190612b1a565b6107da612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061080a9086906004016129fe565b60206040518083038186803b15801561082257600080fd5b505afa158015610836573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085a9190612926565b905061086c818363ffffffff6125d016565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d292769161089f91879190600401612b01565b600060405180830381600087803b1580156108b957600080fd5b505af11580156108cd573d6000803e3d6000fd5b505050507f437dd3b61b7c7eee7fc70515c8846482dfca92e2e1e02af5d638c5d4878d67148383604051610902929190612b01565b60405180910390a1505050565b6035546001600160a01b031681565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561096257600080fd5b505afa158015610976573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099a91906126ce565b6001600160a01b0316146109c05760405162461bcd60e51b815260040161037190612b1a565b603554604051631d2118f960e01b81526001600160a01b0390911690631d2118f9906109f29085908590600401612a12565b600060405180830381600087803b158015610a0c57600080fd5b505af1158015610a20573d6000803e3d6000fd5b505050507f5644b64ebb0ce18c4032248ca52f58355469092ff072866c3dcd8640e817d6a58282604051610a55929190612a12565b60405180910390a15050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015610aa557600080fd5b505afa158015610ab9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610add91906126ce565b6001600160a01b031614610b035760405162461bcd60e51b815260040161037190612b1a565b6035546040516335ea6a7560e01b8152600091829182916001600160a01b0316906335ea6a7590610b389087906004016129fe565b6101406040518083038186803b158015610b5157600080fd5b505afa158015610b65573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b89919061294b565b50505050505050925092509250826000148015610ba4575081155b8015610bae575080155b610bca5760405162461bcd60e51b815260040161037190612bb1565b610bd2612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790610c029088906004016129fe565b60206040518083038186803b158015610c1a57600080fd5b505afa158015610c2e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c529190612926565b9050610c6581600063ffffffff61257616565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691610c9891899190600401612b01565b600060405180830381600087803b158015610cb257600080fd5b505af1158015610cc6573d6000803e3d6000fd5b50506040516001600160a01b03881692507f6f60cf8bd0f218cabe1ea3150bd07b0b758c35c4cfdf7138017a283e65564d5e9150600090a25050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015610d4957600080fd5b505afa158015610d5d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d8191906126ce565b6001600160a01b031614610da75760405162461bcd60e51b815260040161037190612b1a565b610db58685848489886102cf565b505050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015610e0157600080fd5b505afa158015610e15573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e3991906126ce565b6001600160a01b031614610e5f5760405162461bcd60e51b815260040161037190612b1a565b610e67612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790610e979086906004016129fe565b60206040518083038186803b158015610eaf57600080fd5b505afa158015610ec3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ee79190612926565b9050610ef9818363ffffffff61255f16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691610f2c91879190600401612b01565b600060405180830381600087803b158015610f4657600080fd5b505af1158015610f5a573d6000803e3d6000fd5b505050507f2e73b7f1df792712003e6859f940c1e8711c3f1329474771fee71d2ec11631298383604051610902929190612b01565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015610fd357600080fd5b505afa158015610fe7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100b91906126ce565b6001600160a01b0316146110315760405162461bcd60e51b815260040161037190612b1a565b611039612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f7906110699086906004016129fe565b60206040518083038186803b15801561108157600080fd5b505afa158015611095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b99190612926565b90506110cb818363ffffffff6125e716565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916110fe91879190600401612b01565b600060405180830381600087803b15801561111857600080fd5b505af115801561112c573d6000803e3d6000fd5b505050507fda47540c7f7fd5a68c3285f3bb708f322424f948f41df6f51622fa24b39686648383604051610902929190612b01565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156111a557600080fd5b505afa1580156111b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111dd91906126ce565b6001600160a01b0316146112035760405162461bcd60e51b815260040161037190612b1a565b61120b612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061123b9085906004016129fe565b60206040518083038186803b15801561125357600080fd5b505afa158015611267573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128b9190612926565b905061129e81600163ffffffff6125a316565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916112d191869190600401612b01565b600060405180830381600087803b1580156112eb57600080fd5b505af11580156112ff573d6000803e3d6000fd5b50506040516001600160a01b03851692507fda5cdb66c77023db6abe5226a4d4a40c3b8e768012f4ff4e446f62f60127fc569150600090a25050565b600381565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561138457600080fd5b505afa158015611398573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113bc91906126ce565b6001600160a01b0316146113e25760405162461bcd60e51b815260040161037190612b1a565b6113ea612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061141a9086906004016129fe565b60206040518083038186803b15801561143257600080fd5b505afa158015611446573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061146a9190612926565b905061147c818363ffffffff6125f816565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916114af91879190600401612b01565b600060405180830381600087803b1580156114c957600080fd5b505af11580156114dd573d6000803e3d6000fd5b505050507fe3ba662f7011e701056a43e8cf832242322eeff01453e7a72d01ec2af36d9aec8383604051610902929190612b01565b6034546001600160a01b031681565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561156557600080fd5b505afa158015611579573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061159d91906126ce565b6001600160a01b0316146115c35760405162461bcd60e51b815260040161037190612b1a565b6115cb612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f7906115fb9088906004016129fe565b60206040518083038186803b15801561161357600080fd5b505afa158015611627573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061164b9190612926565b905061165d818563ffffffff6125e716565b61166d818463ffffffff6125d016565b61167d818363ffffffff6125f816565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916116b091899190600401612b01565b600060405180830381600087803b1580156116ca57600080fd5b505af11580156116de573d6000803e3d6000fd5b50505050846001600160a01b03167fdfe62f53e7707d64f99bca15d2bdf3facc4074bc047e7dec2ea130300e99274485858560405161171f93929190612c04565b60405180910390a25050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561177257600080fd5b505afa158015611786573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117aa91906126ce565b6001600160a01b0316146117d05760405162461bcd60e51b815260040161037190612b1a565b6117d8612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f7906118089085906004016129fe565b60206040518083038186803b15801561182057600080fd5b505afa158015611834573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118589190612926565b905061186b81600063ffffffff61260f16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d292769161189e91869190600401612b01565b600060405180830381600087803b1580156118b857600080fd5b505af11580156118cc573d6000803e3d6000fd5b50506040516001600160a01b03851692507fe9a7e5fd4fc8ea18e602350324bf48e8f05d12434af0ce0be05743e6a5fdcb9e9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561194c57600080fd5b505afa158015611960573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061198491906126ce565b6001600160a01b0316146119aa5760405162461bcd60e51b815260040161037190612b1a565b6119b2612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f7906119e29085906004016129fe565b60206040518083038186803b1580156119fa57600080fd5b505afa158015611a0e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a329190612926565b9050611a4581600163ffffffff61257616565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691611a7891869190600401612b01565b600060405180830381600087803b158015611a9257600080fd5b505af1158015611aa6573d6000803e3d6000fd5b50506040516001600160a01b03851692507f35b80cd8ea3440e9a8454f116fa658b858da1b64c86c48451f4559cefcdfb56c9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015611b2657600080fd5b505afa158015611b3a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5e91906126ce565b6001600160a01b031614611b845760405162461bcd60e51b815260040161037190612b1a565b611b8c612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790611bbc9085906004016129fe565b60206040518083038186803b158015611bd457600080fd5b505afa158015611be8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c0c9190612926565b9050611c1f81600163ffffffff61263c16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691611c5291869190600401612b01565b600060405180830381600087803b158015611c6c57600080fd5b505af1158015611c80573d6000803e3d6000fd5b50506040516001600160a01b03851692507f8dee2b2f3e98319ae6347eda521788f73f4086c9be9a594942b370b137fb8cb19150600090a25050565b6000611cc6612669565b60015490915060ff1680611cdd5750611cdd61266e565b80611ce9575060005481115b611d055760405162461bcd60e51b815260040161037190612b63565b60015460ff16158015611d24576001805460ff19168117905560008290555b603480546001600160a01b0319166001600160a01b03858116919091179182905560408051630261bf8b60e01b815290519290911691630261bf8b91600480820192602092909190829003018186803b158015611d8057600080fd5b505afa158015611d94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611db891906126ce565b603580546001600160a01b0319166001600160a01b03929092169190911790558015611de9576001805460ff191690555b505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015611e3257600080fd5b505afa158015611e46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e6a91906126ce565b6001600160a01b031614611e905760405162461bcd60e51b815260040161037190612b1a565b611e98612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790611ec89085906004016129fe565b60206040518083038186803b158015611ee057600080fd5b505afa158015611ef4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f189190612926565b9050611f2b81600063ffffffff6125e716565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691611f5e91869190600401612b01565b600060405180830381600087803b158015611f7857600080fd5b505af1158015611f8c573d6000803e3d6000fd5b50506040516001600160a01b03851692507f9cc75e4cafc9a556a369bc53468649075680eb554d225d5918f199453824796d9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561200c57600080fd5b505afa158015612020573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061204491906126ce565b6001600160a01b03161461206a5760405162461bcd60e51b815260040161037190612b1a565b612072612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f7906120a29086906004016129fe565b60206040518083038186803b1580156120ba57600080fd5b505afa1580156120ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120f29190612926565b905061210581600163ffffffff61260f16565b612115818363ffffffff61263c16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d292769161214891879190600401612b01565b600060405180830381600087803b15801561216257600080fd5b505af1158015612176573d6000803e3d6000fd5b505050507fab2f7f9e5ca2772fafa94f355c1842a80ae6b9e41f83083098d81f67d7a0b5088383604051610902929190612ae6565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156121ef57600080fd5b505afa158015612203573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061222791906126ce565b6001600160a01b03161461224d5760405162461bcd60e51b815260040161037190612b1a565b612255612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f7906122859085906004016129fe565b60206040518083038186803b15801561229d57600080fd5b505afa1580156122b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122d59190612926565b90506122e881600063ffffffff6125a316565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d292769161231b91869190600401612b01565b600060405180830381600087803b15801561233557600080fd5b505af1158015612349573d6000803e3d6000fd5b50506040516001600160a01b03851692507f995959c2ceab6ce20e8cd89c904e449fd3e21918a0f420c9ec9340595585526b9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156123c957600080fd5b505afa1580156123dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061240191906126ce565b6001600160a01b0316146124275760405162461bcd60e51b815260040161037190612b1a565b61242f612681565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061245f9085906004016129fe565b60206040518083038186803b15801561247757600080fd5b505afa15801561248b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124af9190612926565b90506124c281600063ffffffff61263c16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916124f591869190600401612b01565b600060405180830381600087803b15801561250f57600080fd5b505af1158015612523573d6000803e3d6000fd5b50506040516001600160a01b03851692507f8bbf35441ac2c607ddecadd3d8ee58636d32f217fad201fb2655581502dd84e39150600090a25050565b8151670f00ffffffffffff1660309190911b179052565b603881612584576000612587565b60015b8351670effffffffffffff1660ff9190911690911b1790915250565b6039816125b15760006125b4565b60015b8351670dffffffffffffff1660ff9190911690911b1790915250565b8151670fffffff0000ffff1660109190911b179052565b8151670fffffffffff000016179052565b8151670fff0000ffffffff1660209190911b179052565b603a8161261d576000612620565b60015b8351670bffffffffffffff1660ff9190911690911b1790915250565b603b8161264a57600061264d565b60015b83516707ffffffffffffff1660ff9190911690911b1790915250565b600390565b303b1590565b6109db80612c8a83390190565b6040518060200160405280600081525090565b803560ff811681146126a557600080fd5b92915050565b6000602082840312156126bc578081fd5b81356126c781612c71565b9392505050565b6000602082840312156126df578081fd5b81516126c781612c71565b600080604083850312156126fc578081fd5b823561270781612c71565b9150602083013561271781612c71565b809150509250929050565b60008060008060008060c0878903121561273a578182fd5b863561274581612c71565b9550602087013561275581612c71565b9450604087013561276581612c71565b9350606087013561277581612c71565b92506127848860808901612694565b915060a087013561279481612c71565b809150509295509295509295565b600080604083850312156127b4578182fd5b82356127bf81612c71565b915060208301358015158114612717578182fd5b600080604083850312156127e5578182fd5b82356127f081612c71565b946020939093013593505050565b60008060008060808587031215612813578384fd5b843561281e81612c71565b966020860135965060408601359560600135945092505050565b60008060008060008060c08789031215612850578182fd5b863561285b81612c71565b955061286a8860208901612694565b9450604087013561287a81612c71565b9350606087013561288a81612c71565b9250608087013561278481612c71565b6000602082840312156128ab578081fd5b815167ffffffffffffffff808211156128c2578283fd5b81840185601f8201126128d3578384fd5b80519250818311156128e3578384fd5b6128f6601f8401601f1916602001612c1a565b915082825285602084830101111561290c578384fd5b61291d836020840160208401612c41565b50949350505050565b600060208284031215612937578081fd5b6129416020612c1a565b9151825250919050565b6000806000806000806000806000806101408b8d03121561296a578788fd5b8a51995060208b0151985060408b0151975060608b0151965060808b0151955060a08b0151945060c08b0151935060e08b015192506101008b015191506101208b015164ffffffffff811681146129bf578182fd5b809150509295989b9194979a5092959850565b600081518084526129ea816020860160208601612c41565b601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b0395861681529385166020850152918416604084015283166060830152909116608082015260a00190565b6001600160a01b03848116825283166020820152606060408201819052600090612a8a908301846129d2565b95945050505050565b6001600160a01b0386811682528516602082015260ff8416604082015260a060608201819052600090612ac8908301856129d2565b8281036080840152612ada81856129d2565b98975050505050505050565b6001600160a01b039290921682521515602082015260400190565b6001600160a01b03929092168252602082015260400190565b60208082526029908201527f5468652063616c6c6572206d7573742062652061206c656e64696e6720706f6f604082015268361036b0b730b3b2b960b91b606082015260800190565b6020808252602e908201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560408201526d195b881a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602a908201527f546865206c6971756964697479206f66207468652072657365727665206e65656040820152690647320746f20626520360b41b606082015260800190565b90815260200190565b9283526020830191909152604082015260600190565b60405181810167ffffffffffffffff81118282101715612c3957600080fd5b604052919050565b60005b83811015612c5c578181015183820152602001612c44565b83811115612c6b576000848401525b50505050565b6001600160a01b0381168114612c8657600080fd5b5056fe608060405234801561001057600080fd5b506109bb806100206000396000f3fe6080604052600436106100705760003560e01c80638f2839701161004e5780638f2839701461015e578063cf7a1d7714610191578063d1f5789414610250578063f851a4401461030657610070565b80633659cfe61461007a5780634f1ef286146100ad5780635c60da1b1461012d575b61007861031b565b005b34801561008657600080fd5b506100786004803603602081101561009d57600080fd5b50356001600160a01b0316610335565b610078600480360360408110156100c357600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100ee57600080fd5b82018360208201111561010057600080fd5b8035906020019184600183028401116401000000008311171561012257600080fd5b50909250905061036f565b34801561013957600080fd5b5061014261041c565b604080516001600160a01b039092168252519081900360200190f35b34801561016a57600080fd5b506100786004803603602081101561018157600080fd5b50356001600160a01b0316610459565b610078600480360360608110156101a757600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101db57600080fd5b8201836020820111156101ed57600080fd5b8035906020019184600183028401116401000000008311171561020f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610513945050505050565b6100786004803603604081101561026657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561029157600080fd5b8201836020820111156102a357600080fd5b803590602001918460018302840111640100000000831117156102c557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610599945050505050565b34801561031257600080fd5b506101426106d9565b610323610704565b61033361032e61070c565b610731565b565b61033d610755565b6001600160a01b0316336001600160a01b031614156103645761035f8161077a565b61036c565b61036c61031b565b50565b610377610755565b6001600160a01b0316336001600160a01b0316141561040f576103998361077a565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b505090508061040957600080fd5b50610417565b61041761031b565b505050565b6000610426610755565b6001600160a01b0316336001600160a01b0316141561044e5761044761070c565b9050610456565b61045661031b565b90565b610461610755565b6001600160a01b0316336001600160a01b03161415610364576001600160a01b0381166104bf5760405162461bcd60e51b81526004018080602001828103825260368152602001806109156036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104e8610755565b604080516001600160a01b03928316815291841660208301528051918290030190a161035f816107ba565b600061051d61070c565b6001600160a01b03161461053057600080fd5b61053a8382610599565b604080517232b4b8189c9b1b97383937bc3c9730b236b4b760691b815290519081900360130190207fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036000199091011461059057fe5b610417826107ba565b60006105a361070c565b6001600160a01b0316146105b657600080fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6000199091011461061657fe5b61061f826107de565b8051156106d5576000826001600160a01b0316826040518082805190602001908083835b602083106106625780518252601f199092019160209182019101610643565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146106c2576040519150601f19603f3d011682016040523d82523d6000602084013e6106c7565b606091505b505090508061041757600080fd5b5050565b60006106e3610755565b6001600160a01b0316336001600160a01b0316141561044e57610447610755565b610333610846565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e808015610750573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b610783816107de565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b6107e7816108a6565b6108225760405162461bcd60e51b815260040180806020018281038252603b81526020018061094b603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b61084e610755565b6001600160a01b0316336001600160a01b0316141561089e5760405162461bcd60e51b81526004018080602001828103825260328152602001806108e36032913960400191505060405180910390fd5b610333610333565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906108da57508115155b94935050505056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212205332daad1efa09e03cc1b95b9d51cadb3cf32e2d57907a628c0b4a5a20d8051f64736f6c63430006080033a264697066735822122088ca88e032811b81a92441fd08f080aae1525acd0a4fc036ff9b0fcea57cb1a764736f6c63430006080033"; + "0x60806040526000805534801561001457600080fd5b5061351d806100246000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c806380e17d87116100ad578063c4d66de811610071578063c4d66de814610252578063e8ae2f5b14610265578063eede87c114610278578063ef1f93731461028b578063f53a25151461029e5761012c565b806380e17d87146101fe578063a5bc826c14610206578063a8dc0f4514610219578063b75d6f341461022c578063bf3441831461023f5761012c565b80636fd435ac116100f45780636fd435ac1461019d57806372f46aaa146101b05780637aca76eb146101c35780637af635a6146101d65780637cadffd9146101eb5761012c565b80630e30428d1461013157806316f0115b146101465780631d2118f9146101645780633e72a4541461017757806366bbd9281461018a575b600080fd5b61014461013f3660046126d3565b6102b1565b005b61014e610499565b60405161015b919061289c565b60405180910390f35b6101446101723660046125e4565b6104a8565b6101446101853660046125a5565b6105eb565b6101446101983660046126d3565b61088f565b6101446101ab36600461261c565b610a61565b6101446101be3660046126d3565b610ea0565b6101446101d13660046125a5565b611072565b6101de61124c565b60405161015b9190612a46565b6101446101f93660046126d3565b611251565b61014e611423565b6101446102143660046126fe565b611432565b6101446102273660046125a5565b61163f565b61014461023a3660046125a5565b611819565b61014461024d3660046125a5565b6119f3565b6101446102603660046125a5565b611bcd565b6101446102733660046125a5565b611cff565b6101446102863660046126a2565b611ed9565b6101446102993660046125a5565b6120bc565b6101446102ac3660046125a5565b612296565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156102f557600080fd5b505afa158015610309573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032d91906125c8565b6001600160a01b03161461035c5760405162461bcd60e51b815260040161035390612965565b60405180910390fd5b610364612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061039490869060040161289c565b60206040518083038186803b1580156103ac57600080fd5b505afa1580156103c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103e491906127c4565b90506103f6818363ffffffff61247016565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916104299187919060040161294c565b600060405180830381600087803b15801561044357600080fd5b505af1158015610457573d6000803e3d6000fd5b505050507f437dd3b61b7c7eee7fc70515c8846482dfca92e2e1e02af5d638c5d4878d6714838360405161048c92919061294c565b60405180910390a1505050565b6035546001600160a01b031681565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156104ec57600080fd5b505afa158015610500573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052491906125c8565b6001600160a01b03161461054a5760405162461bcd60e51b815260040161035390612965565b603554604051631d2118f960e01b81526001600160a01b0390911690631d2118f99061057c90859085906004016128b0565b600060405180830381600087803b15801561059657600080fd5b505af11580156105aa573d6000803e3d6000fd5b505050507f5644b64ebb0ce18c4032248ca52f58355469092ff072866c3dcd8640e817d6a582826040516105df9291906128b0565b60405180910390a15050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561062f57600080fd5b505afa158015610643573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066791906125c8565b6001600160a01b03161461068d5760405162461bcd60e51b815260040161035390612965565b6035546040516335ea6a7560e01b8152600091829182916001600160a01b0316906335ea6a75906106c290879060040161289c565b6101406040518083038186803b1580156106db57600080fd5b505afa1580156106ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071391906127e9565b5050505050505092509250925082600014801561072e575081155b8015610738575080155b6107545760405162461bcd60e51b8152600401610353906129fc565b61075c612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061078c90889060040161289c565b60206040518083038186803b1580156107a457600080fd5b505afa1580156107b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107dc91906127c4565b90506107ef81600063ffffffff61248716565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916108229189919060040161294c565b600060405180830381600087803b15801561083c57600080fd5b505af1158015610850573d6000803e3d6000fd5b50506040516001600160a01b03881692507f6f60cf8bd0f218cabe1ea3150bd07b0b758c35c4cfdf7138017a283e65564d5e9150600090a25050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156108d357600080fd5b505afa1580156108e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090b91906125c8565b6001600160a01b0316146109315760405162461bcd60e51b815260040161035390612965565b610939612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061096990869060040161289c565b60206040518083038186803b15801561098157600080fd5b505afa158015610995573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b991906127c4565b90506109cb818363ffffffff6124b416565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916109fe9187919060040161294c565b600060405180830381600087803b158015610a1857600080fd5b505af1158015610a2c573d6000803e3d6000fd5b505050507f2e73b7f1df792712003e6859f940c1e8711c3f1329474771fee71d2ec1163129838360405161048c92919061294c565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015610aa557600080fd5b505afa158015610ab9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610add91906125c8565b6001600160a01b031614610b035760405162461bcd60e51b815260040161035390612965565b6000604051610b1190612598565b604051809103906000f080158015610b2d573d6000803e3d6000fd5b509050606083876001600160a01b03166306fdde036040518163ffffffff1660e01b815260040160006040518083038186803b158015610b6c57600080fd5b505afa158015610b80573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ba89190810190612738565b886001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b158015610be157600080fd5b505afa158015610bf5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610c1d9190810190612738565b604051602401610c2f93929190612a65565b60408051601f198184030181529181526020820180516001600160e01b031663188c392760e11b1790525163cf7a1d7760e01b81529091506001600160a01b0383169063cf7a1d7790610c8a908a90309086906004016128fc565b600060405180830381600087803b158015610ca457600080fd5b505af1158015610cb8573d6000803e3d6000fd5b5050603554604051633d38474960e11b81526001600160a01b039091169250637a708e929150610cf4908b9086908b908b908a906004016128ca565b600060405180830381600087803b158015610d0e57600080fd5b505af1158015610d22573d6000803e3d6000fd5b50505050610d2e612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790610d5e908c9060040161289c565b60206040518083038186803b158015610d7657600080fd5b505afa158015610d8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dae91906127c4565b9050610dc38160ff871663ffffffff6124b416565b610dd481600163ffffffff61248716565b610de581600063ffffffff6124cb16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691610e18918d919060040161294c565b600060405180830381600087803b158015610e3257600080fd5b505af1158015610e46573d6000803e3d6000fd5b50505050826001600160a01b0316896001600160a01b03167f1d9fcd0dc935b4778d5af97f55c4d7b2553257382f1ef25c412114c8eeebd88e86604051610e8d919061289c565b60405180910390a3505050505050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015610ee457600080fd5b505afa158015610ef8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f1c91906125c8565b6001600160a01b031614610f425760405162461bcd60e51b815260040161035390612965565b610f4a612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790610f7a90869060040161289c565b60206040518083038186803b158015610f9257600080fd5b505afa158015610fa6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fca91906127c4565b9050610fdc818363ffffffff6124f816565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d292769161100f9187919060040161294c565b600060405180830381600087803b15801561102957600080fd5b505af115801561103d573d6000803e3d6000fd5b505050507fda47540c7f7fd5a68c3285f3bb708f322424f948f41df6f51622fa24b3968664838360405161048c92919061294c565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156110b657600080fd5b505afa1580156110ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ee91906125c8565b6001600160a01b0316146111145760405162461bcd60e51b815260040161035390612965565b61111c612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061114c90859060040161289c565b60206040518083038186803b15801561116457600080fd5b505afa158015611178573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061119c91906127c4565b90506111af81600163ffffffff6124cb16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916111e29186919060040161294c565b600060405180830381600087803b1580156111fc57600080fd5b505af1158015611210573d6000803e3d6000fd5b50506040516001600160a01b03851692507fda5cdb66c77023db6abe5226a4d4a40c3b8e768012f4ff4e446f62f60127fc569150600090a25050565b600381565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561129557600080fd5b505afa1580156112a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112cd91906125c8565b6001600160a01b0316146112f35760405162461bcd60e51b815260040161035390612965565b6112fb612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061132b90869060040161289c565b60206040518083038186803b15801561134357600080fd5b505afa158015611357573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061137b91906127c4565b905061138d818363ffffffff61250916565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916113c09187919060040161294c565b600060405180830381600087803b1580156113da57600080fd5b505af11580156113ee573d6000803e3d6000fd5b505050507fe3ba662f7011e701056a43e8cf832242322eeff01453e7a72d01ec2af36d9aec838360405161048c92919061294c565b6034546001600160a01b031681565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561147657600080fd5b505afa15801561148a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ae91906125c8565b6001600160a01b0316146114d45760405162461bcd60e51b815260040161035390612965565b6114dc612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061150c90889060040161289c565b60206040518083038186803b15801561152457600080fd5b505afa158015611538573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155c91906127c4565b905061156e818563ffffffff6124f816565b61157e818463ffffffff61247016565b61158e818363ffffffff61250916565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916115c19189919060040161294c565b600060405180830381600087803b1580156115db57600080fd5b505af11580156115ef573d6000803e3d6000fd5b50505050846001600160a01b03167fdfe62f53e7707d64f99bca15d2bdf3facc4074bc047e7dec2ea130300e99274485858560405161163093929190612a4f565b60405180910390a25050505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561168357600080fd5b505afa158015611697573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116bb91906125c8565b6001600160a01b0316146116e15760405162461bcd60e51b815260040161035390612965565b6116e9612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061171990859060040161289c565b60206040518083038186803b15801561173157600080fd5b505afa158015611745573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061176991906127c4565b905061177c81600063ffffffff61252016565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916117af9186919060040161294c565b600060405180830381600087803b1580156117c957600080fd5b505af11580156117dd573d6000803e3d6000fd5b50506040516001600160a01b03851692507fe9a7e5fd4fc8ea18e602350324bf48e8f05d12434af0ce0be05743e6a5fdcb9e9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561185d57600080fd5b505afa158015611871573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189591906125c8565b6001600160a01b0316146118bb5760405162461bcd60e51b815260040161035390612965565b6118c3612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f7906118f390859060040161289c565b60206040518083038186803b15801561190b57600080fd5b505afa15801561191f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061194391906127c4565b905061195681600163ffffffff61248716565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916119899186919060040161294c565b600060405180830381600087803b1580156119a357600080fd5b505af11580156119b7573d6000803e3d6000fd5b50506040516001600160a01b03851692507f35b80cd8ea3440e9a8454f116fa658b858da1b64c86c48451f4559cefcdfb56c9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015611a3757600080fd5b505afa158015611a4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a6f91906125c8565b6001600160a01b031614611a955760405162461bcd60e51b815260040161035390612965565b611a9d612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790611acd90859060040161289c565b60206040518083038186803b158015611ae557600080fd5b505afa158015611af9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b1d91906127c4565b9050611b3081600163ffffffff61254d16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691611b639186919060040161294c565b600060405180830381600087803b158015611b7d57600080fd5b505af1158015611b91573d6000803e3d6000fd5b50506040516001600160a01b03851692507f8dee2b2f3e98319ae6347eda521788f73f4086c9be9a594942b370b137fb8cb19150600090a25050565b6000611bd761257a565b60015490915060ff1680611bee5750611bee61257f565b80611bfa575060005481115b611c165760405162461bcd60e51b8152600401610353906129ae565b60015460ff16158015611c35576001805460ff19168117905560008290555b603480546001600160a01b0319166001600160a01b03858116919091179182905560408051630261bf8b60e01b815290519290911691630261bf8b91600480820192602092909190829003018186803b158015611c9157600080fd5b505afa158015611ca5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cc991906125c8565b603580546001600160a01b0319166001600160a01b03929092169190911790558015611cfa576001805460ff191690555b505050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015611d4357600080fd5b505afa158015611d57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d7b91906125c8565b6001600160a01b031614611da15760405162461bcd60e51b815260040161035390612965565b611da9612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790611dd990859060040161289c565b60206040518083038186803b158015611df157600080fd5b505afa158015611e05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e2991906127c4565b9050611e3c81600063ffffffff6124f816565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d2927691611e6f9186919060040161294c565b600060405180830381600087803b158015611e8957600080fd5b505af1158015611e9d573d6000803e3d6000fd5b50506040516001600160a01b03851692507f9cc75e4cafc9a556a369bc53468649075680eb554d225d5918f199453824796d9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b158015611f1d57600080fd5b505afa158015611f31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f5591906125c8565b6001600160a01b031614611f7b5760405162461bcd60e51b815260040161035390612965565b611f83612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f790611fb390869060040161289c565b60206040518083038186803b158015611fcb57600080fd5b505afa158015611fdf573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061200391906127c4565b905061201681600163ffffffff61252016565b612026818363ffffffff61254d16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916120599187919060040161294c565b600060405180830381600087803b15801561207357600080fd5b505af1158015612087573d6000803e3d6000fd5b505050507fab2f7f9e5ca2772fafa94f355c1842a80ae6b9e41f83083098d81f67d7a0b508838360405161048c929190612931565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b15801561210057600080fd5b505afa158015612114573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061213891906125c8565b6001600160a01b03161461215e5760405162461bcd60e51b815260040161035390612965565b612166612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061219690859060040161289c565b60206040518083038186803b1580156121ae57600080fd5b505afa1580156121c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121e691906127c4565b90506121f981600063ffffffff6124cb16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d292769161222c9186919060040161294c565b600060405180830381600087803b15801561224657600080fd5b505af115801561225a573d6000803e3d6000fd5b50506040516001600160a01b03851692507f995959c2ceab6ce20e8cd89c904e449fd3e21918a0f420c9ec9340595585526b9150600090a25050565b603454604080516333128d5960e01b8152905133926001600160a01b0316916333128d59916004808301926020929190829003018186803b1580156122da57600080fd5b505afa1580156122ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061231291906125c8565b6001600160a01b0316146123385760405162461bcd60e51b815260040161035390612965565b612340612585565b60355460405163c44b11f760e01b81526001600160a01b039091169063c44b11f79061237090859060040161289c565b60206040518083038186803b15801561238857600080fd5b505afa15801561239c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123c091906127c4565b90506123d381600063ffffffff61254d16565b6035548151604051635c69493b60e11b81526001600160a01b039092169163b8d29276916124069186919060040161294c565b600060405180830381600087803b15801561242057600080fd5b505af1158015612434573d6000803e3d6000fd5b50506040516001600160a01b03851692507f8bbf35441ac2c607ddecadd3d8ee58636d32f217fad201fb2655581502dd84e39150600090a25050565b8151670fffffff0000ffff1660109190911b179052565b603881612495576000612498565b60015b8351670effffffffffffff1660ff9190911690911b1790915250565b8151670f00ffffffffffff1660309190911b179052565b6039816124d95760006124dc565b60015b8351670dffffffffffffff1660ff9190911690911b1790915250565b8151670fffffffffff000016179052565b8151670fff0000ffffffff1660209190911b179052565b603a8161252e576000612531565b60015b8351670bffffffffffffff1660ff9190911690911b1790915250565b603b8161255b57600061255e565b60015b83516707ffffffffffffff1660ff9190911690911b1790915250565b600390565b303b1590565b6040518060200160405280600081525090565b6109db80612b0d83390190565b6000602082840312156125b6578081fd5b81356125c181612af4565b9392505050565b6000602082840312156125d9578081fd5b81516125c181612af4565b600080604083850312156125f6578081fd5b823561260181612af4565b9150602083013561261181612af4565b809150509250929050565b60008060008060008060c08789031215612634578182fd5b863561263f81612af4565b9550602087013561264f81612af4565b9450604087013561265f81612af4565b9350606087013561266f81612af4565b9250608087013560ff81168114612684578283fd5b915060a087013561269481612af4565b809150509295509295509295565b600080604083850312156126b4578182fd5b82356126bf81612af4565b915060208301358015158114612611578182fd5b600080604083850312156126e5578182fd5b82356126f081612af4565b946020939093013593505050565b60008060008060808587031215612713578384fd5b843561271e81612af4565b966020860135965060408601359560600135945092505050565b600060208284031215612749578081fd5b815167ffffffffffffffff80821115612760578283fd5b81840185601f820112612771578384fd5b8051925081831115612781578384fd5b612794601f8401601f1916602001612a9d565b91508282528560208483010111156127aa578384fd5b6127bb836020840160208401612ac4565b50949350505050565b6000602082840312156127d5578081fd5b6127df6020612a9d565b9151825250919050565b6000806000806000806000806000806101408b8d031215612808578384fd5b8a51995060208b0151985060408b0151975060608b0151965060808b0151955060a08b0151945060c08b0151935060e08b015192506101008b015191506101208b015164ffffffffff8116811461285d578182fd5b809150509295989b9194979a5092959850565b60008151808452612888816020860160208601612ac4565b601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b0395861681529385166020850152918416604084015283166060830152909116608082015260a00190565b6001600160a01b0384811682528316602082015260606040820181905260009061292890830184612870565b95945050505050565b6001600160a01b039290921682521515602082015260400190565b6001600160a01b03929092168252602082015260400190565b60208082526029908201527f5468652063616c6c6572206d7573742062652061206c656e64696e6720706f6f604082015268361036b0b730b3b2b960b91b606082015260800190565b6020808252602e908201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560408201526d195b881a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602a908201527f546865206c6971756964697479206f66207468652072657365727665206e65656040820152690647320746f20626520360b41b606082015260800190565b90815260200190565b9283526020830191909152604082015260600190565b600060ff8516825260606020830152612a816060830185612870565b8281036040840152612a938185612870565b9695505050505050565b60405181810167ffffffffffffffff81118282101715612abc57600080fd5b604052919050565b60005b83811015612adf578181015183820152602001612ac7565b83811115612aee576000848401525b50505050565b6001600160a01b0381168114612b0957600080fd5b5056fe608060405234801561001057600080fd5b506109bb806100206000396000f3fe6080604052600436106100705760003560e01c80638f2839701161004e5780638f2839701461015e578063cf7a1d7714610191578063d1f5789414610250578063f851a4401461030657610070565b80633659cfe61461007a5780634f1ef286146100ad5780635c60da1b1461012d575b61007861031b565b005b34801561008657600080fd5b506100786004803603602081101561009d57600080fd5b50356001600160a01b0316610335565b610078600480360360408110156100c357600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100ee57600080fd5b82018360208201111561010057600080fd5b8035906020019184600183028401116401000000008311171561012257600080fd5b50909250905061036f565b34801561013957600080fd5b5061014261041c565b604080516001600160a01b039092168252519081900360200190f35b34801561016a57600080fd5b506100786004803603602081101561018157600080fd5b50356001600160a01b0316610459565b610078600480360360608110156101a757600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101db57600080fd5b8201836020820111156101ed57600080fd5b8035906020019184600183028401116401000000008311171561020f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610513945050505050565b6100786004803603604081101561026657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561029157600080fd5b8201836020820111156102a357600080fd5b803590602001918460018302840111640100000000831117156102c557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610599945050505050565b34801561031257600080fd5b506101426106d9565b610323610704565b61033361032e61070c565b610731565b565b61033d610755565b6001600160a01b0316336001600160a01b031614156103645761035f8161077a565b61036c565b61036c61031b565b50565b610377610755565b6001600160a01b0316336001600160a01b0316141561040f576103998361077a565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b505090508061040957600080fd5b50610417565b61041761031b565b505050565b6000610426610755565b6001600160a01b0316336001600160a01b0316141561044e5761044761070c565b9050610456565b61045661031b565b90565b610461610755565b6001600160a01b0316336001600160a01b03161415610364576001600160a01b0381166104bf5760405162461bcd60e51b81526004018080602001828103825260368152602001806109156036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104e8610755565b604080516001600160a01b03928316815291841660208301528051918290030190a161035f816107ba565b600061051d61070c565b6001600160a01b03161461053057600080fd5b61053a8382610599565b604080517232b4b8189c9b1b97383937bc3c9730b236b4b760691b815290519081900360130190207fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036000199091011461059057fe5b610417826107ba565b60006105a361070c565b6001600160a01b0316146105b657600080fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6000199091011461061657fe5b61061f826107de565b8051156106d5576000826001600160a01b0316826040518082805190602001908083835b602083106106625780518252601f199092019160209182019101610643565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d80600081146106c2576040519150601f19603f3d011682016040523d82523d6000602084013e6106c7565b606091505b505090508061041757600080fd5b5050565b60006106e3610755565b6001600160a01b0316336001600160a01b0316141561044e57610447610755565b610333610846565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e808015610750573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b610783816107de565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b6107e7816108a6565b6108225760405162461bcd60e51b815260040180806020018281038252603b81526020018061094b603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b61084e610755565b6001600160a01b0316336001600160a01b0316141561089e5760405162461bcd60e51b81526004018080602001828103825260328152602001806108e36032913960400191505060405180910390fd5b610333610333565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906108da57508115155b94935050505056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212205332daad1efa09e03cc1b95b9d51cadb3cf32e2d57907a628c0b4a5a20d8051f64736f6c63430006080033a2646970667358221220175beb956da19651610e3d1749256ae09a118f4ee4d7614bc6641626ac8a3ed464736f6c63430006080033"; diff --git a/types/LendingPoolFactory.ts b/types/LendingPoolFactory.ts index 64887a3a..abf9f604 100644 --- a/types/LendingPoolFactory.ts +++ b/types/LendingPoolFactory.ts @@ -1200,7 +1200,7 @@ const _abi = [ ]; const _bytecode = - "0x6080604052600060015534801561001557600080fd5b506001600055614f7c8061002a6000396000f3fe60806040526004361061019f5760003560e01c80638afaff02116100ec578063c72c4d101161008a578063d0fc81d211610064578063d0fc81d21461051c578063d15e005314610531578063d2493b6c14610551578063d2d0e06614610580576101d4565b8063c72c4d10146104c7578063c858f5f9146104dc578063cd112382146104fc576101d4565b8063b8d29276116100c6578063b8d2927614610428578063bf92857c14610448578063c44b11f71461047a578063c4d66de8146104a7576101d4565b80638afaff02146103d357806394ba89a2146103e85780639895e3d814610408576101d4565b80633e150141116101595780635a3b74b9116101335780635a3b74b9146103465780635cffe9de1461036657806376e9d615146103865780637a708e92146103b3576101d4565b80633e150141146102d05780634fe7a6e514610306578063573ade8114610333576101d4565b8062a718a9146101d95780630902f1ac146101ec5780631d2118f91461021757806328dd2d011461023757806335ea6a751461026d578063386497fd146102a3576101d4565b366101d4576101ad33610593565b6101d25760405162461bcd60e51b81526004016101c990614a7e565b60405180910390fd5b005b600080fd5b6101d26101e73660046140cb565b6105d1565b3480156101f857600080fd5b506102016107a3565b60405161020e91906146fd565b60405180910390f35b34801561022357600080fd5b506101d2610232366004613fde565b610805565b34801561024357600080fd5b50610257610252366004613fde565b6108d8565b60405161020e9a99989796959493929190614e50565b34801561027957600080fd5b5061028d610288366004613fa6565b610bac565b60405161020e9a99989796959493929190614e04565b3480156102af57600080fd5b506102c36102be366004613fa6565b610e34565b60405161020e9190614d4a565b3480156102dc57600080fd5b506102f06102eb366004613fa6565b610e5b565b60405161020e9a99989796959493929190614d84565b34801561031257600080fd5b50610326610321366004614357565b610f31565b60405161020e919061452b565b6101d26103413660046142ae565b610f58565b34801561035257600080fd5b506101d261036136600461420f565b611299565b34801561037257600080fd5b506101d2610381366004614164565b61146b565b34801561039257600080fd5b506103a66103a1366004614124565b6118cf565b60405161020e919061474a565b3480156103bf57600080fd5b506101d26103ce36600461405b565b6119f4565b3480156103df57600080fd5b506102c3611b2d565b3480156103f457600080fd5b506101d261040336600461423c565b611b32565b34801561041457600080fd5b506101d2610423366004614016565b611e49565b34801561043457600080fd5b506101d261044336600461423c565b61200f565b34801561045457600080fd5b50610468610463366004613fa6565b6120d0565b60405161020e96959493929190614ddc565b34801561048657600080fd5b5061049a610495366004613fa6565b612292565b60405161020e9190614b6d565b3480156104b357600080fd5b506101d26104c2366004613fa6565b6122c9565b3480156104d357600080fd5b506103266123fd565b3480156104e857600080fd5b506101d26104f73660046142f7565b61240c565b34801561050857600080fd5b506101d2610517366004613fde565b61293e565b34801561052857600080fd5b506102c3612c2e565b34801561053d57600080fd5b506102c361054c366004613fa6565b612c34565b34801561055d57600080fd5b5061057161056c366004613fa6565b612c55565b60405161020e939291906145be565b6101d261058e366004614267565b612c8a565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906105c757508115155b925050505b919050565b600260005414156105f45760405162461bcd60e51b81526004016101c990614b36565b6002600090815560355460408051632c1a75cd60e11b815290516001600160a01b0390921691635834eb9a91600480820192602092909190829003018186803b15801561064057600080fd5b505afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190613fc2565b905060006060826001600160a01b031688888888886040516024016106a19594939291906145e1565b60408051601f198184030181529181526020820180516001600160e01b031662a718a960e01b179052516106d5919061450c565b600060405180830381855af49150503d8060008114610710576040519150601f19603f3d011682016040523d82523d6000602084013e610715565b606091505b5091509150816107375760405162461bcd60e51b81526004016101c99061497d565b600060608280602001905181019061074f9190614387565b9150915081600014610792578060405160200161076c919061450c565b60408051601f198184030181529082905262461bcd60e51b82526101c991600401614755565b505060016000555050505050505050565b606060398054806020026020016040519081016040528092919081815260200182805480156107fb57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116107dd575b5050505050905090565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b15801561084957600080fd5b505afa15801561085d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108819190613fc2565b6001600160a01b0316146108a75760405162461bcd60e51b81526004016101c9906149b4565b6001600160a01b03918216600090815260376020526040902060090180546001600160a01b03191691909216179055565b6001600160a01b03808316600090815260376020526040808220600681015491516370a0823160e01b81529293849384938493849384938493849384938493919216906370a082319061092f908f9060040161452b565b60206040518083038186803b15801561094757600080fd5b505afa15801561095b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097f919061436f565b9a5061098b8c82612edd565b909a50985061099a8c82612ff1565b6001830154600784015460405163e78c9b3b60e01b8152939b5091995096506001600160a01b03169063e78c9b3b906109d7908f9060040161452b565b60206040518083038186803b1580156109ef57600080fd5b505afa158015610a03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a27919061436f565b6007820154604051631e739ae360e21b81529197506001600160a01b0316906379ce6b8c90610a5a908f9060040161452b565b60206040518083038186803b158015610a7257600080fd5b505afa158015610a86573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aaa9190614475565b9250603860008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008e6001600160a01b03166001600160a01b0316815260200190815260200160002060000160009054906101000a900460ff1691508060080160009054906101000a90046001600160a01b03166001600160a01b031663ee9907a48d6040518263ffffffff1660e01b8152600401610b4a919061452b565b60206040518083038186803b158015610b6257600080fd5b505afa158015610b76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b9a919061436f565b9350509295989b9194979a5092959850565b600080600080600080600080600080610bc3613ec5565b506001600160a01b038b811660008181526037602090815260409182902082516101808101845281548152600182015481840152600282015481850152600382015460608201526004820154608082015283519283019093526005810154825260a08301919091526006810154841660c083018190526007820154851660e084015260088201548516610100840152600990910154938416610120830152600160a01b840464ffffffffff16610140830152600160c81b90930460ff16151561016082015291610c9391906130aa565b8160e001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cd057600080fd5b505afa158015610ce4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d08919061436f565b8261010001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610d4657600080fd5b505afa158015610d5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7e919061436f565b8360200151846040015185606001518660e001516001600160a01b03166390f6fcf26040518163ffffffff1660e01b815260040160206040518083038186803b158015610dca57600080fd5b505afa158015610dde573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e02919061436f565b876000015188608001518961014001519a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b6001600160a01b0381166000908152603760205260408120610e559061314e565b92915050565b6000806000806000806000806000806000603760008d6001600160a01b03166001600160a01b031681526020019081526020016000209050610e9f81600501613188565b610eab82600501613199565b610eb7836005016131a8565b610ec3846005016131bd565b60098501546001600160a01b0316610edd60058701613199565b1515610eeb600588016131d0565b610ef7886005016131e2565b610f03896005016131eb565b610f0f8a6005016131fd565b9a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b60398181548110610f3e57fe5b6000918252602090912001546001600160a01b0316905081565b60026000541415610f7b5760405162461bcd60e51b81526004016101c990614b36565b6002600055610f88613f2c565b6001600160a01b03808616600081815260376020908152604080832094871683526038825280832093835292905220610fc18483612edd565b602085015283526000856002811115610fd657fe5b90506001816002811115610fe657fe5b14610ff5578360200151610ff8565b83515b604085015260001987148015906110125750836040015187105b1561101f57604084018790525b83516020850151604080870151905163152be4bd60e31b815273__$69254465eb8f179ea24caa73cf68b23524$__9363a95f25e89361106c9389938f938f938a938f933490600401614c0e565b60006040518083038186803b15801561108457600080fd5b505af4158015611098573d6000803e3d6000fd5b505050506110a58361320f565b60018160028111156110b357fe5b14156111285760078301546040808601519051632770a7eb60e21b81526001600160a01b0390921691639dc29fac916110f19189919060040161453f565b600060405180830381600087803b15801561110b57600080fd5b505af115801561111f573d6000803e3d6000fd5b50505050611193565b60088301546040808601519051632770a7eb60e21b81526001600160a01b0390921691639dc29fac916111609189919060040161453f565b600060405180830381600087803b15801561117a57600080fd5b505af115801561118e573d6000803e3d6000fd5b505050505b60408401516111ad9084908a90600063ffffffff6132c716565b600683015460408501516111db916001600160a01b038b81169233929190911690600063ffffffff6135a816565b6111ed886001600160a01b0316613736565b1561122f57600061120b85604001513461375b90919063ffffffff16565b9050801561122d5761122d6001600160a01b038a16338363ffffffff61379d16565b505b336001600160a01b0316856001600160a01b0316896001600160a01b03167f81cfb79463601de705d4cf6b8d69112983d76a685120e5e4d3581f30871b87fc876040015142604051611282929190614d3c565b60405180910390a450506001600055505050505050565b600260005414156112bc5760405162461bcd60e51b81526004016101c990614b36565b600260009081556001600160a01b038084168083526037602081815260408086203387526038808452828820958852948352958190206035548251631f94a27560e31b81529251919673__$69254465eb8f179ea24caa73cf68b23524$__9663e1717580968a968d9691959294603994169263fca513a8926004808201939291829003018186803b15801561135057600080fd5b505afa158015611364573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113889190613fc2565b6040518763ffffffff1660e01b81526004016113a996959493929190614ba5565b60006040518083038186803b1580156113c157600080fd5b505af41580156113d5573d6000803e3d6000fd5b5050825460ff191685158015919091178455915061142990505760405133906001600160a01b038616907e058a56ea94653cdf4f152d227ace22d4c00ad99e2a43f58cb7d9e3feb295f290600090a3611460565b60405133906001600160a01b038616907f44c58d81365b66dd4b1a7f36c25aa97b8c71c361ee4937adc1a00000227db5dd90600090a35b505060016000555050565b6002600054141561148e5760405162461bcd60e51b81526004016101c990614b36565b600260005561149b613f54565b6001600160a01b038085166000818152603760205260409020600681015490921660a084018190526114d3919063ffffffff6130aa16565b82526114f86127106114ec86600963ffffffff61385616565b9063ffffffff61389016565b6060830181905261151990612710906114ec90610bb863ffffffff61385616565b6080830152815184111561153f5760405162461bcd60e51b81526004016101c990614768565b60008260600151118015611557575060008260800151115b6115735760405162461bcd60e51b81526004016101c990614a9a565b60a0820151604051634efecaa560e01b8152879182916001600160a01b0390911690634efecaa5906115ab9084908a9060040161453f565b602060405180830381600087803b1580156115c557600080fd5b505af11580156115d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115fd919061436f565b5060a0840151606085015160405163405b019d60e01b81526001600160a01b0385169263405b019d92611639928c92918c918c90600401614579565b600060405180830381600087803b15801561165357600080fd5b505af1158015611667573d6000803e3d6000fd5b50505050600061168d8560a00151896001600160a01b03166130aa90919063ffffffff16565b606086015186519192506116a7919063ffffffff6138d216565b81146116c55760405162461bcd60e51b81526004016101c99061483f565b8373__$5e6137a1b5a0a366e2874209b5abf71c10$__638acb830b90918a88600001516117038a608001518b6060015161375b90919063ffffffff16565b8a608001516040518663ffffffff1660e01b8152600401611728959493929190614c69565b60006040518083038186803b15801561174057600080fd5b505af4158015611754573d6000803e3d6000fd5b505050508460a001516001600160a01b0316634efecaa5603560009054906101000a90046001600160a01b03166001600160a01b031663ee8912966040518163ffffffff1660e01b815260040160206040518083038186803b1580156117b957600080fd5b505afa1580156117cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117f19190613fc2565b87608001516040518363ffffffff1660e01b815260040161181392919061453f565b602060405180830381600087803b15801561182d57600080fd5b505af1158015611841573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611865919061436f565b50876001600160a01b0316896001600160a01b03167f5b8f46461c1dd69fb968f1a003acee221ea3e19540e350233b612ddb43433b558988606001518960800151426040516118b79493929190614d69565b60405180910390a35050600160005550505050505050565b600073__$7347ff53b2b46c21e26a37164ae7f6739f$__63daae7055858585603760386039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561194257600080fd5b505afa158015611956573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061197a9190613fc2565b6040518863ffffffff1660e01b815260040161199c9796959493929190614639565b60206040518083038186803b1580156119b457600080fd5b505af41580156119c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119ec919061433b565b949350505050565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b158015611a3857600080fd5b505afa158015611a4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a709190613fc2565b6001600160a01b031614611a965760405162461bcd60e51b81526004016101c9906149b4565b6001600160a01b038516600090815260376020526040908190209051632d621e9960e21b815273__$5e6137a1b5a0a366e2874209b5abf71c10$__9163b5887a6491611aed91908890889088908890600401614b77565b60006040518083038186803b158015611b0557600080fd5b505af4158015611b19573d6000803e3d6000fd5b50505050611b26856138f7565b5050505050565b600281565b60026000541415611b555760405162461bcd60e51b81526004016101c990614b36565b600260009081556001600160a01b0383168082526037602090815260408084203380865260388452828620948652939092528320909290918190611b999085612edd565b915091506000856002811115611bab57fe5b604051639e29334160e01b815290915073__$69254465eb8f179ea24caa73cf68b23524$__90639e29334190611bed9088908890889088908890600401614d07565b60006040518083038186803b158015611c0557600080fd5b505af4158015611c19573d6000803e3d6000fd5b50505050611c268561320f565b6001816002811115611c3457fe5b1415611d0b576007850154604051632770a7eb60e21b81526001600160a01b0390911690639dc29fac90611c6e903390879060040161453f565b600060405180830381600087803b158015611c8857600080fd5b505af1158015611c9c573d6000803e3d6000fd5b50505060088601546040516340c10f1960e01b81526001600160a01b0390911691506340c10f1990611cd4903390879060040161453f565b600060405180830381600087803b158015611cee57600080fd5b505af1158015611d02573d6000803e3d6000fd5b50505050611ddd565b6008850154604051632770a7eb60e21b81526001600160a01b0390911690639dc29fac90611d3f903390869060040161453f565b600060405180830381600087803b158015611d5957600080fd5b505af1158015611d6d573d6000803e3d6000fd5b5050505060078501546003860154604051630ab714fb60e11b81526001600160a01b039092169163156e29f691611daa9133918791600401614558565b600060405180830381600087803b158015611dc457600080fd5b505af1158015611dd8573d6000803e3d6000fd5b505050505b611df0858860008063ffffffff6132c716565b336001600160a01b0316876001600160a01b03167fea368a40e9570069bb8e6511d668293ad2e1f03b0d982431fd223de9f3b70ca642604051611e339190614d4a565b60405180910390a3505060016000555050505050565b60026000541415611e6c5760405162461bcd60e51b81526004016101c990614b36565b600260009081556001600160a01b0380861680835260376020908152604080852088851686526038835281862093865292909152928390206006820154935163cf478a7960e01b815291939092169073__$69254465eb8f179ea24caa73cf68b23524$__9063cf478a7990611ee99086908b908a90600401614bef565b60006040518083038186803b158015611f0157600080fd5b505af4158015611f15573d6000803e3d6000fd5b50505050611f228361320f565b611f35838860008863ffffffff6132c716565b83611f4357815460ff191682555b6006830154604051634efecaa560e01b81526001600160a01b0390911690634efecaa590611f77908990899060040161453f565b602060405180830381600087803b158015611f9157600080fd5b505af1158015611fa5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fc9919061436f565b50856001600160a01b0316876001600160a01b03167f9c4ed599cd8555b9c1e8cd7643240d7d71eb76b792948c49fcb4d411f7b6b3c68742604051611e33929190614d3c565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b15801561205357600080fd5b505afa158015612067573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061208b9190613fc2565b6001600160a01b0316146120b15760405162461bcd60e51b81526004016101c9906149b4565b6001600160a01b03909116600090815260376020526040902060050155565b60008060008060008073__$7347ff53b2b46c21e26a37164ae7f6739f$__6392eeb05c88603760386039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561214857600080fd5b505afa15801561215c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121809190613fc2565b6040518663ffffffff1660e01b81526004016121a095949392919061468c565b60a06040518083038186803b1580156121b857600080fd5b505af41580156121cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121f09190614436565b60405163d609bd1b60e01b8152949a5092985095509350915073__$7347ff53b2b46c21e26a37164ae7f6739f$__9063d609bd1b9061223790899089908790600401614d53565b60206040518083038186803b15801561224f57600080fd5b505af4158015612263573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612287919061436f565b935091939550919395565b61229a613f93565b506001600160a01b03166000908152603760209081526040918290208251918201909252600590910154815290565b60006122d361399a565b60025490915060ff16806122ea57506122ea61399f565b806122f6575060015481115b6123125760405162461bcd60e51b81526004016101c99061492f565b60025460ff16158015612333576002805460ff191660019081179091558290555b603580546001600160a01b0319166001600160a01b03858116919091179182905560408051633efbbf0f60e21b81529051929091169163fbeefc3c91600480820192602092909190829003018186803b15801561238f57600080fd5b505afa1580156123a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123c79190613fc2565b603680546001600160a01b0319166001600160a01b039290921691909117905580156123f8576002805460ff191690555b505050565b6035546001600160a01b031681565b6002600054141561242f5760405162461bcd60e51b81526004016101c990614b36565b600260009081556001600160a01b03851680825260376020908152604080842033855260388352818520938552929091528220909161258761247360058501613188565b600a0a6114ec88603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b1580156124c857600080fd5b505afa1580156124dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125009190613fc2565b6001600160a01b031663b3596f078c6040518263ffffffff1660e01b815260040161252b919061452b565b60206040518083038186803b15801561254357600080fd5b505afa158015612557573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061257b919061436f565b9063ffffffff61385616565b905073__$69254465eb8f179ea24caa73cf68b23524$__63335c5e8984848a8a868b6019603760386039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b1580156125ff57600080fd5b505afa158015612613573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126379190613fc2565b6040518c63ffffffff1660e01b815260040161265d9b9a99989796959493929190614c95565b60006040518083038186803b15801561267557600080fd5b505af4158015612689573d6000803e3d6000fd5b505050506126968361320f565b60098301805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055600383015460018660028111156126cb57fe5b60028111156126d657fe5b14156127cf576007840154604051630ab714fb60e11b81526001600160a01b039091169063156e29f6906127129033908b908690600401614558565b600060405180830381600087803b15801561272c57600080fd5b505af1158015612740573d6000803e3d6000fd5b505050506007840154604051631e739ae360e21b81526000916001600160a01b0316906379ce6b8c9061277790339060040161452b565b60206040518083038186803b15801561278f57600080fd5b505afa1580156127a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127c79190614475565b905050612836565b60088401546040516340c10f1960e01b81526001600160a01b03909116906340c10f19906128039033908b9060040161453f565b600060405180830381600087803b15801561281d57600080fd5b505af1158015612831573d6000803e3d6000fd5b505050505b612849848960008a63ffffffff6132c716565b6006840154604051634efecaa560e01b81526001600160a01b0390911690634efecaa59061287d9033908b9060040161453f565b602060405180830381600087803b15801561289757600080fd5b505af11580156128ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128cf919061436f565b5061ffff8516336001600160a01b038a167fe002884724be85e729c98360169e709585b299ace6fbe12aa791d2fee6f652808a8a60018c600281111561291157fe5b600281111561291c57fe5b1461292b57896002015461292d565b865b426040516112829493929190614d69565b600260005414156129615760405162461bcd60e51b81526004016101c990614b36565b600260009081556001600160a01b03808416825260376020526040808320600781015491516370a0823160e01b81529093919092169182906370a08231906129ad90879060040161452b565b60206040518083038186803b1580156129c557600080fd5b505afa1580156129d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129fd919061436f565b905060008111612a1f5760405162461bcd60e51b81526004016101c9906148d2565b6000612a58612a476aa56fa5b99019a5c8000000612a3b6139a5565b9063ffffffff6138d216565b60038601549063ffffffff6139b516565b90506000836001600160a01b031663e78c9b3b876040518263ffffffff1660e01b8152600401612a88919061452b565b60206040518083038186803b158015612aa057600080fd5b505afa158015612ab4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad8919061436f565b90508460010154811080612aeb57508181115b612b075760405162461bcd60e51b81526004016101c9906147f0565b612b108561320f565b604051632770a7eb60e21b81526001600160a01b03851690639dc29fac90612b3e908990879060040161453f565b600060405180830381600087803b158015612b5857600080fd5b505af1158015612b6c573d6000803e3d6000fd5b5050506003860154604051630ab714fb60e11b81526001600160a01b038716925063156e29f691612ba3918a918891600401614558565b600060405180830381600087803b158015612bbd57600080fd5b505af1158015612bd1573d6000803e3d6000fd5b50612beb925087915089905060008063ffffffff6132c716565b856001600160a01b0316876001600160a01b03167f443060d15ff6dac05881a7c07a46ef8085d8af4399e436be6c25250df40c5f1842604051611e339190614d4a565b60001981565b6001600160a01b0381166000908152603760205260408120610e55906139ed565b6001600160a01b0390811660009081526037602052604090206006810154600782015460089092015490831693918316921690565b60026000541415612cad5760405162461bcd60e51b81526004016101c990614b36565b600260009081556001600160a01b038416808252603760209081526040808420338552603883528185209385529290915291829020915163b25dc48d60e01b815290919073__$69254465eb8f179ea24caa73cf68b23524$__9063b25dc48d90612d1d9085908890600401614d3c565b60006040518083038186803b158015612d3557600080fd5b505af4158015612d49573d6000803e3d6000fd5b50505060068301546040516370a0823160e01b81526001600160a01b03909116915060009082906370a0823190612d8490339060040161452b565b60206040518083038186803b158015612d9c57600080fd5b505afa158015612db0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dd4919061436f565b159050612de08461320f565b612df3848888600063ffffffff6132c716565b8015612e0557825460ff191660011783555b6040516394362e8b60e01b81526001600160a01b038316906394362e8b90612e339033908a9060040161453f565b600060405180830381600087803b158015612e4d57600080fd5b505af1158015612e61573d6000803e3d6000fd5b50612e7d925050506001600160a01b03881633848960016135a8565b8461ffff16336001600160a01b0316886001600160a01b03167fc12c57b1c73a2c3a2ea4613e9476abb3d8d146857aab7329e24243fb59710c828942604051612ec7929190614d3c565b60405180910390a4505060016000555050505050565b60078101546040516370a0823160e01b815260009182916001600160a01b03909116906370a0823190612f1490879060040161452b565b60206040518083038186803b158015612f2c57600080fd5b505afa158015612f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f64919061436f565b60088401546040516370a0823160e01b81526001600160a01b03909116906370a0823190612f9690889060040161452b565b60206040518083038186803b158015612fae57600080fd5b505afa158015612fc2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fe6919061436f565b915091509250929050565b600781015460405163631a6fd560e11b815260009182916001600160a01b039091169063c634dfaa9061302890879060040161452b565b60206040518083038186803b15801561304057600080fd5b505afa158015613054573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613078919061436f565b600884015460405163631a6fd560e11b81526001600160a01b039091169063c634dfaa90612f9690889060040161452b565b60006130b583613736565b156130cb57506001600160a01b03811631610e55565b6040516370a0823160e01b81526001600160a01b038416906370a08231906130f790859060040161452b565b60206040518083038186803b15801561310f57600080fd5b505afa158015613123573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613147919061436f565b9392505050565b600080613147836004015461317c85600201548660090160149054906101000a900464ffffffffff16613a1b565b9063ffffffff6139b516565b5460301c610f01600160d01b031690565b54670fffffffffff0000191690565b5460101c650fffffff0001600160f01b031690565b5460201c630fff0001600160e01b031690565b54603a1c6003600160c61b0316151590565b54603b1c151590565b5460381c600f600160c81b0316151590565b5460391c6007600160c71b0316151590565b600061321a82613a80565b905080156132a3576001820154600983015460009161324691600160a01b900464ffffffffff16613b95565b835490915061325c90829063ffffffff6139b516565b83556002830154600984015460009161328291600160a01b900464ffffffffff16613a1b565b905061329b8460040154826139b590919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b15801561330e57600080fd5b505afa158015613322573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613346919061436f565b600686015490915060009061336d906001600160a01b03878116911663ffffffff6130aa16565b6009870154909150600090819081906001600160a01b03166357e37af0896133ab8961339f898d63ffffffff6138d216565b9063ffffffff61375b16565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156133fb57600080fd5b505afa15801561340f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613433919061436f565b8d60080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561348357600080fd5b505afa158015613497573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134bb919061436f565b8a6040518663ffffffff1660e01b81526004016134dc9594939291906146cf565b60606040518083038186803b1580156134f457600080fd5b505afa158015613508573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061352c9190614409565b60018c0183905560038c0182905560028c018190558b5460048d01546040519497509295509093506001600160a01b038b16927f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a49261359592889288928c928992909190614ddc565b60405180910390a2505050505050505050565b816135b257611b26565b6135bb85613736565b1561371b57813410156135e05760405162461bcd60e51b81526004016101c990614a07565b6001600160a01b0383163014613673576000836001600160a01b03168361c3509060405161360d90614528565b600060405180830381858888f193505050503d806000811461364b576040519150601f19603f3d011682016040523d82523d6000602084013e613650565b606091505b50509050806136715760405162461bcd60e51b81526004016101c990614a51565b505b80801561367f57508134115b156137165760006001600160a01b0385166136a0348563ffffffff61375b16565b61c350906040516136b090614528565b600060405180830381858888f193505050503d80600081146136ee576040519150601f19603f3d011682016040523d82523d6000602084013e6136f3565b606091505b50509050806137145760405162461bcd60e51b81526004016101c990614a51565b505b611b26565b611b266001600160a01b03861685858563ffffffff613bf516565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b600061314783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613c53565b806137a7576123f8565b6137b083613736565b1561383c576000826001600160a01b03168261c350906040516137d290614528565b600060405180830381858888f193505050503d8060008114613810576040519150601f19603f3d011682016040523d82523d6000602084013e613815565b606091505b50509050806138365760405162461bcd60e51b81526004016101c990614a51565b506123f8565b6123f86001600160a01b038416838363ffffffff613c7f16565b60008261386557506000610e55565b8282028284828161387257fe5b04146131475760405162461bcd60e51b81526004016101c990614891565b600061314783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613c9e565b6000828201838110156131475760405162461bcd60e51b81526004016101c9906147b9565b6000805b60395481101561394457826001600160a01b03166039828154811061391c57fe5b6000918252602090912001546001600160a01b0316141561393c57600191505b6001016138fb565b508061399657603980546001810182556000919091527fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d30180546001600160a01b0319166001600160a01b0384161790555b5050565b600290565b303b1590565b6b033b2e3c9fd0803ce800000090565b60006131476b033b2e3c9fd0803ce80000006114ec6139da868663ffffffff61385616565b6b019d971e4fe8401e74000000906138d2565b600080613147836000015461317c85600101548660090160149054906101000a900464ffffffffff16613b95565b600080613a354264ffffffffff851663ffffffff61375b16565b90506000613a4d856301e1338063ffffffff61389016565b9050613a7782613a6b613a5e6139a5565b849063ffffffff6138d216565b9063ffffffff613cd516565b95945050505050565b6000610e558260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015613ad557600080fd5b505afa158015613ae9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b0d919061436f565b8360070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015613b5d57600080fd5b505afa158015613b71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a3b919061436f565b600080613baf4264ffffffffff851663ffffffff61375b16565b90506000613bd8613bc36301e13380613d2f565b613bcc84613d2f565b9063ffffffff613d4516565b9050613a77613be56139a5565b612a3b878463ffffffff6139b516565b613c4d846323b872dd60e01b858585604051602401613c1693929190614615565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152613d68565b50505050565b60008184841115613c775760405162461bcd60e51b81526004016101c99190614755565b505050900390565b6123f88363a9059cbb60e01b8484604051602401613c1692919061453f565b60008183613cbf5760405162461bcd60e51b81526004016101c99190614755565b506000838581613ccb57fe5b0495945050505050565b600060028206613cf1576b033b2e3c9fd0803ce8000000613cf3565b825b90506002820491505b8115610e5557613d0c83846139b5565b92506002820615613d2457613d2181846139b5565b90505b600282049150613cfc565b6000610e5582633b9aca0063ffffffff61385616565b6000600282046119ec836114ec613a5e876b033b2e3c9fd0803ce8000000613856565b6060613dbd826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316613df79092919063ffffffff16565b8051909150156123f85780806020019051810190613ddb919061433b565b6123f85760405162461bcd60e51b81526004016101c990614aec565b60606119ec84846000856060613e0c85610593565b613e285760405162461bcd60e51b81526004016101c9906149d0565b60006060866001600160a01b03168587604051613e45919061450c565b60006040518083038185875af1925050503d8060008114613e82576040519150601f19603f3d011682016040523d82523d6000602084013e613e87565b606091505b50915091508115613e9b5791506119ec9050565b805115613eab5780518082602001fd5b8360405162461bcd60e51b81526004016101c99190614755565b6040518061018001604052806000815260200160008152602001600081526020016000815260200160008152602001613efc613f93565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b6040518060800160405280600081526020016000815260200160008152602001600081525090565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681525090565b6040518060200160405280600081525090565b600060208284031215613fb7578081fd5b813561314781614f20565b600060208284031215613fd3578081fd5b815161314781614f20565b60008060408385031215613ff0578081fd5b8235613ffb81614f20565b9150602083013561400b81614f20565b809150509250929050565b6000806000806080858703121561402b578182fd5b843561403681614f20565b9350602085013561404681614f20565b93969395505050506040820135916060013590565b600080600080600060a08688031215614072578081fd5b853561407d81614f20565b9450602086013561408d81614f20565b9350604086013561409d81614f20565b925060608601356140ad81614f20565b915060808601356140bd81614f20565b809150509295509295909350565b600080600080600060a086880312156140e2578081fd5b85356140ed81614f20565b945060208601356140fd81614f20565b9350604086013561410d81614f20565b92506060860135915060808601356140bd81614f38565b600080600060608486031215614138578283fd5b833561414381614f20565b9250602084013561415381614f20565b929592945050506040919091013590565b60008060008060808587031215614179578384fd5b843561418481614f20565b9350602085013561419481614f20565b925060408501359150606085013567ffffffffffffffff8111156141b6578182fd5b80860187601f8201126141c7578283fd5b803591506141dc6141d783614ec5565b614e9e565b8281528860208484010111156141f0578384fd5b8260208301602083013791820160200192909252939692955090935050565b60008060408385031215614221578182fd5b823561422c81614f20565b9150602083013561400b81614f38565b6000806040838503121561424e578182fd5b823561425981614f20565b946020939093013593505050565b60008060006060848603121561427b578081fd5b833561428681614f20565b925060208401359150604084013561ffff811681146142a3578182fd5b809150509250925092565b600080600080608085870312156142c3578182fd5b84356142ce81614f20565b9350602085013592506040850135915060608501356142ec81614f20565b939692955090935050565b6000806000806080858703121561430c578182fd5b843561431781614f20565b93506020850135925060408501359150606085013561ffff811681146142ec578182fd5b60006020828403121561434c578081fd5b815161314781614f38565b600060208284031215614368578081fd5b5035919050565b600060208284031215614380578081fd5b5051919050565b60008060408385031215614399578182fd5b82519150602083015167ffffffffffffffff8111156143b6578182fd5b80840185601f8201126143c7578283fd5b805191506143d76141d783614ec5565b8281528660208484010111156143eb578384fd5b6143fc836020830160208501614ef4565b8093505050509250929050565b60008060006060848603121561441d578081fd5b8351925060208401519150604084015190509250925092565b600080600080600060a0868803121561444d578283fd5b5050835160208501516040860151606087015160809097015192989197509594509092509050565b600060208284031215614486578081fd5b815164ffffffffff81168114613147578182fd5b6000815480845260208085019450838352808320835b838110156144d55781546001600160a01b0316875295820195600191820191016144b0565b509495945050505050565b600081518084526144f8816020860160208601614ef4565b601f01601f19169290920160200192915050565b6000825161451e818460208701614ef4565b9190910192915050565b90565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906145b3908301846144e0565b979650505050505050565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b03958616815293851660208501529190931660408301526060820192909252901515608082015260a00190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b600060018060a01b03808a168352808916602084015287604084015286606084015285608084015260e060a084015261467560e084018661449a565b915080841660c08401525098975050505050505050565b600060018060a01b03808816835286602084015285604084015260a060608401526146ba60a084018661449a565b91508084166080840152509695505050505050565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b6020808252825182820181905260009190848201906040850190845b8181101561473e5783516001600160a01b031683529284019291840191600101614719565b50909695505050505050565b901515815260200190565b60006020825261314760208301846144e0565b60208082526031908201527f5468657265206973206e6f7420656e6f756768206c697175696469747920617660408201527061696c61626c6520746f20626f72726f7760781b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252602f908201527f496e746572657374207261746520726562616c616e636520636f6e646974696f60408201526e1b9cc81dd95c99481b9bdd081b595d608a1b606082015260800190565b60208082526032908201527f5468652061637475616c2062616c616e6365206f66207468652070726f746f636040820152711bdb081a5cc81a5b98dbdb9cda5cdd195b9d60721b606082015260800190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b60208082526038908201527f5573657220646f6573206e6f74206861766520616e7920737461626c6520726160408201527f7465206c6f616e20666f72207468697320726573657276650000000000000000606082015260800190565b6020808252602e908201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560408201526d195b881a5b9a5d1a585b1a5e995960921b606082015260800190565b60208082526017908201527f4c69717569646174696f6e2063616c6c206661696c6564000000000000000000604082015260600190565b602080825260029082015261033360f41b604082015260600190565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b6020808252602a908201527f57726f6e67207573616765206f66204554482e756e6976657273616c5472616e6040820152697366657246726f6d282960b01b606082015260800190565b60208082526013908201527211551217d514905394d1915497d19052531151606a1b604082015260600190565b602080825260029082015261191960f11b604082015260600190565b60208082526032908201527f5468652072657175657374656420616d6f756e7420697320746f6f20736d616c60408201527136103337b9103090233630b9b42637b0b71760711b606082015260800190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b9051815260200190565b9485526001600160a01b03938416602086015291831660408501528216606084015216608082015260a00190565b600087825260018060a01b03808816602084015286604084015285606084015260c06080840152614bd960c084018661449a565b915080841660a084015250979650505050505050565b9283526001600160a01b03919091166020830152604082015260600190565b8981526001600160a01b03898116602083015260408201899052610120820190614c3789614ee9565b606084015296909616608082015260a081019490945260c084019290925260e083015261010090910152949350505050565b9485526001600160a01b0393909316602085015260408401919091526060830152608082015260a00190565b60006101608d83528c602084015260018060a01b03808d1660408501528b60608501528a60808501528960a08501528860c08501528760e08501528661010085015281610120850152614cea8285018761449a565b925080851661014085015250509c9b505050505050505050505050565b600060a082019050868252856020830152846040830152836060830152614d2d83614ee9565b60808301529695505050505050565b918252602082015260400190565b90815260200190565b9283526020830191909152604082015260600190565b93845260208401929092526040830152606082015260800190565b998a5260208a0198909852604089019690965260608801949094526001600160a01b03929092166080870152151560a0860152151560c0850152151560e0840152151561010083015215156101208201526101400190565b958652602086019490945260408501929092526060840152608083015260a082015260c00190565b998a5260208a019890985260408901969096526060880194909452608087019290925260a086015260c085015260e084015261010083015264ffffffffff166101208201526101400190565b998a5260208a019890985260408901969096526060880194909452608087019290925260a086015260c085015260e084015264ffffffffff1661010083015215156101208201526101400190565b60405181810167ffffffffffffffff81118282101715614ebd57600080fd5b604052919050565b600067ffffffffffffffff821115614edb578081fd5b50601f01601f191660200190565b80600381106105cc57fe5b60005b83811015614f0f578181015183820152602001614ef7565b83811115613c4d5750506000910152565b6001600160a01b0381168114614f3557600080fd5b50565b8015158114614f3557600080fdfea26469706673582212204c8029c1fc543349336d995efd1fbe30c4e008b3035de75046f4152eba5ae7ec64736f6c63430006080033"; + "0x6080604052600060015534801561001557600080fd5b50600160005561573b806200002b6000396000f3fe60806040526004361061019f5760003560e01c80638afaff02116100ec578063c72c4d101161008a578063d0fc81d211610064578063d0fc81d21461051c578063d15e005314610531578063d2493b6c14610551578063d2d0e06614610580576101d4565b8063c72c4d10146104c7578063c858f5f9146104dc578063cd112382146104fc576101d4565b8063b8d29276116100c6578063b8d2927614610428578063bf92857c14610448578063c44b11f71461047a578063c4d66de8146104a7576101d4565b80638afaff02146103d357806394ba89a2146103e85780639895e3d814610408576101d4565b80633e150141116101595780635a3b74b9116101335780635a3b74b9146103465780635cffe9de1461036657806376e9d615146103865780637a708e92146103b3576101d4565b80633e150141146102d05780634fe7a6e514610306578063573ade8114610333576101d4565b8062a718a9146101d95780630902f1ac146101ec5780631d2118f91461021757806328dd2d011461023757806335ea6a751461026d578063386497fd146102a3576101d4565b366101d4576101ad33610593565b6101d25760405162461bcd60e51b81526004016101c990615245565b60405180910390fd5b005b600080fd5b6101d26101e7366004614913565b6105d1565b3480156101f857600080fd5b506102016107a3565b60405161020e9190614ec4565b60405180910390f35b34801561022357600080fd5b506101d2610232366004614826565b610805565b34801561024357600080fd5b50610257610252366004614826565b6108d8565b60405161020e9a9998979695949392919061560f565b34801561027957600080fd5b5061028d6102883660046147ee565b610b83565b60405161020e9a999897969594939291906155c3565b3480156102af57600080fd5b506102c36102be3660046147ee565b610e22565b60405161020e9190615509565b3480156102dc57600080fd5b506102f06102eb3660046147ee565b610e49565b60405161020e9a99989796959493929190615543565b34801561031257600080fd5b50610326610321366004614b9f565b610f1f565b60405161020e9190614d34565b6101d2610341366004614af6565b610f46565b34801561035257600080fd5b506101d2610361366004614a57565b6112d8565b34801561037257600080fd5b506101d26103813660046149ac565b6114b4565b34801561039257600080fd5b506103a66103a136600461496c565b611918565b60405161020e9190614f11565b3480156103bf57600080fd5b506101d26103ce3660046148a3565b611a62565b3480156103df57600080fd5b506102c3611b9b565b3480156103f457600080fd5b506101d2610403366004614a84565b611ba0565b34801561041457600080fd5b506101d261042336600461485e565b611ea9565b34801561043457600080fd5b506101d2610443366004614a84565b612081565b34801561045457600080fd5b506104686104633660046147ee565b612142565b60405161020e9695949392919061559b565b34801561048657600080fd5b5061049a6104953660046147ee565b6122f3565b60405161020e9190615334565b3480156104b357600080fd5b506101d26104c23660046147ee565b61232a565b3480156104d357600080fd5b5061032661245e565b3480156104e857600080fd5b506101d26104f7366004614b3f565b61246d565b34801561050857600080fd5b506101d2610517366004614826565b612a14565b34801561052857600080fd5b506102c3612d1a565b34801561053d57600080fd5b506102c361054c3660046147ee565b612d20565b34801561055d57600080fd5b5061057161056c3660046147ee565b612d41565b60405161020e93929190614dc7565b6101d261058e366004614aaf565b612d76565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906105c757508115155b925050505b919050565b600260005414156105f45760405162461bcd60e51b81526004016101c9906152fd565b6002600090815560355460408051632c1a75cd60e11b815290516001600160a01b0390921691635834eb9a91600480820192602092909190829003018186803b15801561064057600080fd5b505afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610678919061480a565b905060006060826001600160a01b031688888888886040516024016106a1959493929190614dea565b60408051601f198184030181529181526020820180516001600160e01b031662a718a960e01b179052516106d59190614d15565b600060405180830381855af49150503d8060008114610710576040519150601f19603f3d011682016040523d82523d6000602084013e610715565b606091505b5091509150816107375760405162461bcd60e51b81526004016101c990615144565b600060608280602001905181019061074f9190614bcf565b9150915081600014610792578060405160200161076c9190614d15565b60408051601f198184030181529082905262461bcd60e51b82526101c991600401614f1c565b505060016000555050505050505050565b606060398054806020026020016040519081016040528092919081815260200182805480156107fb57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116107dd575b5050505050905090565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b15801561084957600080fd5b505afa15801561085d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610881919061480a565b6001600160a01b0316146108a75760405162461bcd60e51b81526004016101c99061517b565b6001600160a01b03918216600090815260376020526040902060090180546001600160a01b03191691909216179055565b6001600160a01b03808316600090815260376020526040808220600681015491516370a0823160e01b81529293849384938493849384938493849384938493919216906370a082319061092f908f90600401614d34565b60206040518083038186803b15801561094757600080fd5b505afa15801561095b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097f9190614bb7565b9a5061098b8c82612fcb565b909a50985061099a8c826130df565b6001830154600784015460405163e78c9b3b60e01b8152939b5091995096506001600160a01b03169063e78c9b3b906109d7908f90600401614d34565b60206040518083038186803b1580156109ef57600080fd5b505afa158015610a03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a279190614bb7565b6007820154604051631e739ae360e21b81529197506001600160a01b0316906379ce6b8c90610a5a908f90600401614d34565b60206040518083038186803b158015610a7257600080fd5b505afa158015610a86573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aaa9190614c7e565b60098201546001600160a01b038e16600090815260386020908152604091829020825191820190925290548152919450610aee9190600160d01b900460ff16613198565b6008820154604051633ba641e960e21b81529193506001600160a01b03169063ee9907a490610b21908f90600401614d34565b60206040518083038186803b158015610b3957600080fd5b505afa158015610b4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b719190614bb7565b9350509295989b9194979a5092959850565b600080600080600080600080600080610b9a61465e565b506001600160a01b03808c1660008181526037602090815260409182902082516101a08101845281548152600182015481840152600282015481850152600382015460608201526004820154608082015283519283019093526005810154825260a08301919091526006810154841660c083018190526007820154851660e08401526008820154851661010084015260099091015493841661012083015264ffffffffff600160a01b85041661014083015260ff600160c81b850481161515610160840152600160d01b90940490931661018082015291610c81919063ffffffff6131af16565b8160e001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cbe57600080fd5b505afa158015610cd2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf69190614bb7565b8261010001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610d3457600080fd5b505afa158015610d48573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d6c9190614bb7565b8360200151846040015185606001518660e001516001600160a01b03166390f6fcf26040518163ffffffff1660e01b815260040160206040518083038186803b158015610db857600080fd5b505afa158015610dcc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df09190614bb7565b876000015188608001518961014001519a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b6001600160a01b0381166000908152603760205260408120610e4390613253565b92915050565b6000806000806000806000806000806000603760008d6001600160a01b03166001600160a01b031681526020019081526020016000209050610e8d8160050161328d565b610e998260050161329e565b610ea5836005016132ad565b610eb1846005016132c2565b60098501546001600160a01b0316610ecb6005870161329e565b1515610ed9600588016132d5565b610ee5886005016132e7565b610ef1896005016132f0565b610efd8a600501613302565b9a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b60398181548110610f2c57fe5b6000918252602090912001546001600160a01b0316905081565b60026000541415610f695760405162461bcd60e51b81526004016101c9906152fd565b6002600055610f766146cc565b6001600160a01b0385166000908152603760205260409020610f988382612fcb565b60208401819052818452610fb2919063ffffffff61331416565b60808301526000846002811115610fc557fe5b90506001816002811115610fd557fe5b14610fe4578260200151610fe7565b82515b604084015260001986148015906110015750826040015186105b1561100e57604083018690525b82516020840151604080860151905163152be4bd60e31b815273__$69254465eb8f179ea24caa73cf68b23524$__9363a95f25e89361105b9388938e938e938a938e9334906004016153d5565b60006040518083038186803b15801561107357600080fd5b505af4158015611087573d6000803e3d6000fd5b5050505061109482613339565b60018160028111156110a257fe5b14156111175760078201546040808501519051632770a7eb60e21b81526001600160a01b0390921691639dc29fac916110e091889190600401614d48565b600060405180830381600087803b1580156110fa57600080fd5b505af115801561110e573d6000803e3d6000fd5b50505050611182565b60088201546040808501519051632770a7eb60e21b81526001600160a01b0390921691639dc29fac9161114f91889190600401614d48565b600060405180830381600087803b15801561116957600080fd5b505af115801561117d573d6000803e3d6000fd5b505050505b604083015161119c9083908990600063ffffffff6133f116565b604083015160808401516111b59163ffffffff6136d216565b6111ed5760098201546001600160a01b03851660009081526038602052604081206111ed929091600160d01b90910460ff1690613714565b6006820154604084015161121b916001600160a01b038a81169233929190911690600063ffffffff61374916565b61122d876001600160a01b03166138d7565b1561126f57600061124b8460400151346136d290919063ffffffff16565b9050801561126d5761126d6001600160a01b038916338363ffffffff6138fc16565b505b336001600160a01b0316846001600160a01b0316886001600160a01b03167f81cfb79463601de705d4cf6b8d69112983d76a685120e5e4d3581f30871b87fc8660400151426040516112c29291906154fb565b60405180910390a4505060016000555050505050565b600260005414156112fb5760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03808416825260376020818152604080852033865260388352948190206035548251631f94a27560e31b8152925173__$69254465eb8f179ea24caa73cf68b23524$__9663a6b84c0b9689968c9691959460399493169263fca513a8926004808201939291829003018186803b15801561138257600080fd5b505afa158015611396573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ba919061480a565b6040518763ffffffff1660e01b81526004016113db9695949392919061536c565b60006040518083038186803b1580156113f357600080fd5b505af4158015611407573d6000803e3d6000fd5b50505050600981015433600090815260386020526040902061143391600160d01b900460ff16846139b5565b81156114735760405133906001600160a01b038516907e058a56ea94653cdf4f152d227ace22d4c00ad99e2a43f58cb7d9e3feb295f290600090a36114aa565b60405133906001600160a01b038516907f44c58d81365b66dd4b1a7f36c25aa97b8c71c361ee4937adc1a00000227db5dd90600090a35b5050600160005550565b600260005414156114d75760405162461bcd60e51b81526004016101c9906152fd565b60026000556114e46146fb565b6001600160a01b038085166000818152603760205260409020600681015490921660a0840181905261151c919063ffffffff6131af16565b825261154161271061153586600963ffffffff6139f016565b9063ffffffff613a2a16565b60608301819052611562906127109061153590610bb863ffffffff6139f016565b608083015281518411156115885760405162461bcd60e51b81526004016101c990614f2f565b600082606001511180156115a0575060008260800151115b6115bc5760405162461bcd60e51b81526004016101c990615261565b60a0820151604051634efecaa560e01b8152879182916001600160a01b0390911690634efecaa5906115f49084908a90600401614d48565b602060405180830381600087803b15801561160e57600080fd5b505af1158015611622573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116469190614bb7565b5060a0840151606085015160405163405b019d60e01b81526001600160a01b0385169263405b019d92611682928c92918c918c90600401614d82565b600060405180830381600087803b15801561169c57600080fd5b505af11580156116b0573d6000803e3d6000fd5b5050505060006116d68560a00151896001600160a01b03166131af90919063ffffffff16565b606086015186519192506116f0919063ffffffff61331416565b811461170e5760405162461bcd60e51b81526004016101c990615006565b8373__$5e6137a1b5a0a366e2874209b5abf71c10$__638acb830b90918a886000015161174c8a608001518b606001516136d290919063ffffffff16565b8a608001516040518663ffffffff1660e01b8152600401611771959493929190615430565b60006040518083038186803b15801561178957600080fd5b505af415801561179d573d6000803e3d6000fd5b505050508460a001516001600160a01b0316634efecaa5603560009054906101000a90046001600160a01b03166001600160a01b031663ee8912966040518163ffffffff1660e01b815260040160206040518083038186803b15801561180257600080fd5b505afa158015611816573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061183a919061480a565b87608001516040518363ffffffff1660e01b815260040161185c929190614d48565b602060405180830381600087803b15801561187657600080fd5b505af115801561188a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118ae9190614bb7565b50876001600160a01b0316896001600160a01b03167f5b8f46461c1dd69fb968f1a003acee221ea3e19540e350233b612ddb43433b558988606001518960800151426040516119009493929190615528565b60405180910390a35050600160005550505050505050565b600073__$7347ff53b2b46c21e26a37164ae7f6739f$__63865cb0ce8585856037603860008a6001600160a01b03166001600160a01b031681526020019081526020016000206039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b1580156119ae57600080fd5b505afa1580156119c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119e6919061480a565b6040518863ffffffff1660e01b8152600401611a089796959493929190614e42565b60206040518083038186803b158015611a2057600080fd5b505af4158015611a34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a589190614b83565b90505b9392505050565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b158015611aa657600080fd5b505afa158015611aba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ade919061480a565b6001600160a01b031614611b045760405162461bcd60e51b81526004016101c99061517b565b6001600160a01b038516600090815260376020526040908190209051632d621e9960e21b815273__$5e6137a1b5a0a366e2874209b5abf71c10$__9163b5887a6491611b5b9190889088908890889060040161533e565b60006040518083038186803b158015611b7357600080fd5b505af4158015611b87573d6000803e3d6000fd5b50505050611b9485613a6c565b5050505050565b600281565b60026000541415611bc35760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03831681526037602052604081209080611beb3384612fcb565b915091506000846002811115611bfd57fe5b336000908152603860205260409081902090516306c4439560e31b815291925073__$69254465eb8f179ea24caa73cf68b23524$__916336221ca891611c4e918891908890889088906004016154c6565b60006040518083038186803b158015611c6657600080fd5b505af4158015611c7a573d6000803e3d6000fd5b50505050611c8784613339565b6001816002811115611c9557fe5b1415611d6c576007840154604051632770a7eb60e21b81526001600160a01b0390911690639dc29fac90611ccf9033908790600401614d48565b600060405180830381600087803b158015611ce957600080fd5b505af1158015611cfd573d6000803e3d6000fd5b50505060088501546040516340c10f1960e01b81526001600160a01b0390911691506340c10f1990611d359033908790600401614d48565b600060405180830381600087803b158015611d4f57600080fd5b505af1158015611d63573d6000803e3d6000fd5b50505050611e3e565b6008840154604051632770a7eb60e21b81526001600160a01b0390911690639dc29fac90611da09033908690600401614d48565b600060405180830381600087803b158015611dba57600080fd5b505af1158015611dce573d6000803e3d6000fd5b5050505060078401546003850154604051630ab714fb60e11b81526001600160a01b039092169163156e29f691611e0b9133918791600401614d61565b600060405180830381600087803b158015611e2557600080fd5b505af1158015611e39573d6000803e3d6000fd5b505050505b611e51848760008063ffffffff6133f116565b336001600160a01b0316866001600160a01b03167fea368a40e9570069bb8e6511d668293ad2e1f03b0d982431fd223de9f3b70ca642604051611e949190615509565b60405180910390a35050600160005550505050565b60026000541415611ecc5760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03808616825260376020526040918290206006810154925163cf478a7960e01b815290929091169073__$69254465eb8f179ea24caa73cf68b23524$__9063cf478a7990611f309085908a9089906004016153b6565b60006040518083038186803b158015611f4857600080fd5b505af4158015611f5c573d6000803e3d6000fd5b50505050611f6982613339565b611f7c828760008763ffffffff6133f116565b82611fb55760098201546001600160a01b0386166000908152603860205260408120611fb5929091600160d01b90910460ff16906139b5565b6006820154604051634efecaa560e01b81526001600160a01b0390911690634efecaa590611fe99088908890600401614d48565b602060405180830381600087803b15801561200357600080fd5b505af1158015612017573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061203b9190614bb7565b50846001600160a01b0316866001600160a01b03167f9c4ed599cd8555b9c1e8cd7643240d7d71eb76b792948c49fcb4d411f7b6b3c68642604051611e949291906154fb565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b1580156120c557600080fd5b505afa1580156120d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120fd919061480a565b6001600160a01b0316146121235760405162461bcd60e51b81526004016101c99061517b565b6001600160a01b03909116600090815260376020526040902060050155565b6001600160a01b038116600090815260386020908152604080832081518084018352905481526039805483518186028101860190945280845285948594859485948594612251948c9460379493909290918301828280156121cc57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116121ae575b505060355460408051631f94a27560e31b815290516001600160a01b03909216945063fca513a893506004808201935060209291829003018186803b15801561221457600080fd5b505afa158015612228573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061224c919061480a565b613b41565b60405163d609bd1b60e01b8152949a5092985095509350915073__$7347ff53b2b46c21e26a37164ae7f6739f$__9063d609bd1b9061229890899089908790600401615512565b60206040518083038186803b1580156122b057600080fd5b505af41580156122c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122e89190614bb7565b935091939550919395565b6122fb61473a565b506001600160a01b03166000908152603760209081526040918290208251918201909252600590910154815290565b6000612334614041565b60025490915060ff168061234b575061234b614046565b80612357575060015481115b6123735760405162461bcd60e51b81526004016101c9906150f6565b60025460ff16158015612394576002805460ff191660019081179091558290555b603580546001600160a01b0319166001600160a01b03858116919091179182905560408051633efbbf0f60e21b81529051929091169163fbeefc3c91600480820192602092909190829003018186803b1580156123f057600080fd5b505afa158015612404573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612428919061480a565b603680546001600160a01b0319166001600160a01b03929092169190911790558015612459576002805460ff191690555b505050565b6035546001600160a01b031681565b600260005414156124905760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03851681526037602090815260408083203384526038909252822090916125de6124ca6005850161328d565b600a0a61153588603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561251f57600080fd5b505afa158015612533573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612557919061480a565b6001600160a01b031663b3596f078c6040518263ffffffff1660e01b81526004016125829190614d34565b60206040518083038186803b15801561259a57600080fd5b505afa1580156125ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125d29190614bb7565b9063ffffffff6139f016565b905073__$69254465eb8f179ea24caa73cf68b23524$__63dfb6b2d7848989858a6019603760386000336001600160a01b03166001600160a01b031681526020019081526020016000206039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561267857600080fd5b505afa15801561268c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126b0919061480a565b6040518b63ffffffff1660e01b81526004016126d59a9998979695949392919061545c565b60006040518083038186803b1580156126ed57600080fd5b505af4158015612701573d6000803e3d6000fd5b5050505061270e83613339565b60098301805464ffffffffff60a01b1916600160a01b4264ffffffffff16021790556003830154600186600281111561274357fe5b600281111561274e57fe5b1415612847576007840154604051630ab714fb60e11b81526001600160a01b039091169063156e29f69061278a9033908b908690600401614d61565b600060405180830381600087803b1580156127a457600080fd5b505af11580156127b8573d6000803e3d6000fd5b505050506007840154604051631e739ae360e21b81526000916001600160a01b0316906379ce6b8c906127ef903390600401614d34565b60206040518083038186803b15801561280757600080fd5b505afa15801561281b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061283f9190614c7e565b9050506128ae565b60088401546040516340c10f1960e01b81526001600160a01b03909116906340c10f199061287b9033908b90600401614d48565b600060405180830381600087803b15801561289557600080fd5b505af11580156128a9573d6000803e3d6000fd5b505050505b6128c1848960008a63ffffffff6133f116565b60098401546040805160208101909152845481526128e891600160d01b900460ff1661404c565b612908576009840154612908908490600160d01b900460ff166001613714565b6006840154604051634efecaa560e01b81526001600160a01b0390911690634efecaa59061293c9033908b90600401614d48565b602060405180830381600087803b15801561295657600080fd5b505af115801561296a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061298e9190614bb7565b5061ffff8516336001600160a01b038a167fe002884724be85e729c98360169e709585b299ace6fbe12aa791d2fee6f652808a8a60018c60028111156129d057fe5b60028111156129db57fe5b146129ea5789600201546129ec565b865b426040516129fd9493929190615528565b60405180910390a450506001600055505050505050565b60026000541415612a375760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03808416825260376020526040808320600781015491516370a0823160e01b81529093919092169182906370a0823190612a83908790600401614d34565b60206040518083038186803b158015612a9b57600080fd5b505afa158015612aaf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad39190614bb7565b905060008111612af55760405162461bcd60e51b81526004016101c990615099565b6000612b2e612b1d6aa56fa5b99019a5c8000000612b1161405c565b9063ffffffff61331416565b60038601549063ffffffff61406c16565b90506000836001600160a01b031663e78c9b3b876040518263ffffffff1660e01b8152600401612b5e9190614d34565b60206040518083038186803b158015612b7657600080fd5b505afa158015612b8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bae9190614bb7565b90508460010154811080612bc157508181115b612bdd5760405162461bcd60e51b81526004016101c990614fb7565b612be685613339565b604051632770a7eb60e21b81526001600160a01b03851690639dc29fac90612c149089908790600401614d48565b600060405180830381600087803b158015612c2e57600080fd5b505af1158015612c42573d6000803e3d6000fd5b5050506003860154604051630ab714fb60e11b81526001600160a01b038716925063156e29f691612c79918a918891600401614d61565b600060405180830381600087803b158015612c9357600080fd5b505af1158015612ca7573d6000803e3d6000fd5b50612cc1925087915089905060008063ffffffff6133f116565b856001600160a01b0316876001600160a01b03167f443060d15ff6dac05881a7c07a46ef8085d8af4399e436be6c25250df40c5f1842604051612d049190615509565b60405180910390a3505050505050506001600055565b60001981565b6001600160a01b0381166000908152603760205260408120610e43906140ae565b6001600160a01b0390811660009081526037602052604090206006810154600782015460089092015490831693918316921690565b60026000541415612d995760405162461bcd60e51b81526004016101c9906152fd565b600260009081556001600160a01b03841681526037602052604090819020905163b25dc48d60e01b815273__$69254465eb8f179ea24caa73cf68b23524$__9063b25dc48d90612def90849087906004016154fb565b60006040518083038186803b158015612e0757600080fd5b505af4158015612e1b573d6000803e3d6000fd5b50505060068201546040516370a0823160e01b81526001600160a01b03909116915060009082906370a0823190612e56903390600401614d34565b60206040518083038186803b158015612e6e57600080fd5b505afa158015612e82573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ea69190614bb7565b159050612eb283613339565b612ec5838787600063ffffffff6133f116565b8015612ef4576009830154336000908152603860205260409020612ef491600160d01b900460ff1660016139b5565b6040516394362e8b60e01b81526001600160a01b038316906394362e8b90612f229033908990600401614d48565b600060405180830381600087803b158015612f3c57600080fd5b505af1158015612f50573d6000803e3d6000fd5b50612f6c925050506001600160a01b0387163384886001613749565b8361ffff16336001600160a01b0316876001600160a01b03167fc12c57b1c73a2c3a2ea4613e9476abb3d8d146857aab7329e24243fb59710c828842604051612fb69291906154fb565b60405180910390a45050600160005550505050565b60078101546040516370a0823160e01b815260009182916001600160a01b03909116906370a0823190613002908790600401614d34565b60206040518083038186803b15801561301a57600080fd5b505afa15801561302e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130529190614bb7565b60088401546040516370a0823160e01b81526001600160a01b03909116906370a0823190613084908890600401614d34565b60206040518083038186803b15801561309c57600080fd5b505afa1580156130b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130d49190614bb7565b915091509250929050565b600781015460405163631a6fd560e11b815260009182916001600160a01b039091169063c634dfaa90613116908790600401614d34565b60206040518083038186803b15801561312e57600080fd5b505afa158015613142573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131669190614bb7565b600884015460405163631a6fd560e11b81526001600160a01b039091169063c634dfaa90613084908890600401614d34565b815160016002830281019190911c16151592915050565b60006131ba836138d7565b156131d057506001600160a01b03811631610e43565b6040516370a0823160e01b81526001600160a01b038416906370a08231906131fc908590600401614d34565b60206040518083038186803b15801561321457600080fd5b505afa158015613228573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061324c9190614bb7565b9050610e43565b600080611a5b836004015461328185600201548660090160149054906101000a900464ffffffffff166140dc565b9063ffffffff61406c16565b5460301c610f01600160d01b031690565b54670fffffffffff0000191690565b5460101c650fffffff0001600160f01b031690565b5460201c630fff0001600160e01b031690565b54603a1c6003600160c61b0316151590565b54603b1c151590565b5460381c600f600160c81b0316151590565b5460391c6007600160c71b0316151590565b600082820183811015611a5b5760405162461bcd60e51b81526004016101c990614f80565b600061334482614141565b905080156133cd576001820154600983015460009161337091600160a01b900464ffffffffff16614256565b835490915061338690829063ffffffff61406c16565b8355600283015460098401546000916133ac91600160a01b900464ffffffffff166140dc565b90506133c584600401548261406c90919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b15801561343857600080fd5b505afa15801561344c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134709190614bb7565b6006860154909150600090613497906001600160a01b03878116911663ffffffff6131af16565b6009870154909150600090819081906001600160a01b03166357e37af0896134d5896134c9898d63ffffffff61331416565b9063ffffffff6136d216565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561352557600080fd5b505afa158015613539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061355d9190614bb7565b8d60080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156135ad57600080fd5b505afa1580156135c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135e59190614bb7565b8a6040518663ffffffff1660e01b8152600401613606959493929190614e96565b60606040518083038186803b15801561361e57600080fd5b505afa158015613632573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136569190614c51565b60018c0183905560038c0182905560028c018190558b5460048d01546040519497509295509093506001600160a01b038b16927f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4926136bf92889288928c92899290919061559b565b60405180910390a2505050505050505050565b6000611a5b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506142b6565b8160020281613724576000613727565b60015b60ff16901b826002026001901b19846000015416178360000181905550505050565b8161375357611b94565b61375c856138d7565b156138bc57813410156137815760405162461bcd60e51b81526004016101c9906151ce565b6001600160a01b0383163014613814576000836001600160a01b03168361c350906040516137ae90614d31565b600060405180830381858888f193505050503d80600081146137ec576040519150601f19603f3d011682016040523d82523d6000602084013e6137f1565b606091505b50509050806138125760405162461bcd60e51b81526004016101c990615218565b505b80801561382057508134115b156138b75760006001600160a01b038516613841348563ffffffff6136d216565b61c3509060405161385190614d31565b600060405180830381858888f193505050503d806000811461388f576040519150601f19603f3d011682016040523d82523d6000602084013e613894565b606091505b50509050806138b55760405162461bcd60e51b81526004016101c990615218565b505b611b94565b611b946001600160a01b03861685858563ffffffff6142e216565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b8061390657612459565b61390f836138d7565b1561399b576000826001600160a01b03168261c3509060405161393190614d31565b600060405180830381858888f193505050503d806000811461396f576040519150601f19603f3d011682016040523d82523d6000602084013e613974565b606091505b50509050806139955760405162461bcd60e51b81526004016101c990615218565b50612459565b6124596001600160a01b038416838363ffffffff61434016565b81600202600101816139c85760006139cb565b60015b60ff16901b826002026001016001901b19846000015416178360000181905550505050565b6000826139ff57506000610e43565b82820282848281613a0c57fe5b0414611a5b5760405162461bcd60e51b81526004016101c990615058565b6000611a5b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061435f565b6000805b603954811015613ab957826001600160a01b031660398281548110613a9157fe5b6000918252602090912001546001600160a01b03161415613ab157600191505b600101613a70565b5080613b3d57603980546001600160a01b0384166000818152603760205260408120600901805460ff909416600160d01b0260ff60d01b19909416939093179092558254600181018455929091527fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d390910180546001600160a01b03191690911790555b5050565b6000806000806000613b5161474d565b613b5a89614396565b15613b775750600094508493508392508291506000199050614034565b600060e08201525b87518160e001511015613f875760e0810151613ba2908a9063ffffffff61439b16565b613bab57613f77565b878160e0015181518110613bbb57fe5b6020908102919091018101516001600160a01b031661020083018190526000908152908b905260409020613bf1600582016143ab565b6080860181905260c08601929092525060a0840191909152600a0a602083015261020082015160405163b3596f0760e01b81526001600160a01b038a169163b3596f0791613c429190600401614d34565b60206040518083038186803b158015613c5a57600080fd5b505afa158015613c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c929190614bb7565b825260a082015115801590613cb8575060e0820151613cb8908b9063ffffffff61319816565b15613de95760068101546040516370a0823160e01b81526001600160a01b03909116906370a0823190613cef908f90600401614d34565b60206040518083038186803b158015613d0757600080fd5b505afa158015613d1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d3f9190614bb7565b6040830181905260208301518351600092613d6492916115359163ffffffff6139f016565b610120840151909150613d7d908263ffffffff61331416565b61012084015260a0830151613daf90613d9d90839063ffffffff6139f016565b6101808501519063ffffffff61331416565b61018084015260c0830151613de190613dcf90839063ffffffff6139f016565b6101a08501519063ffffffff61331416565b6101a0840152505b60e0820151613dff908b9063ffffffff61404c16565b15613f755760078101546040516370a0823160e01b81526001600160a01b03909116906370a0823190613e36908f90600401614d34565b60206040518083038186803b158015613e4e57600080fd5b505afa158015613e62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e869190614bb7565b826060018181525050613f368160080160009054906101000a90046001600160a01b03166001600160a01b03166370a082318e6040518263ffffffff1660e01b8152600401613ed59190614d34565b60206040518083038186803b158015613eed57600080fd5b505afa158015613f01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f259190614bb7565b60608401519063ffffffff61331416565b6060830181905260208301518351613f6e92613f5c92916115359163ffffffff6139f016565b6101408401519063ffffffff61331416565b6101408301525b505b60e0810180516001019052613b7f565b600081610120015111613f9b576000613fb6565b610120810151610180820151613fb69163ffffffff613a2a16565b610180820152610120810151613fcd576000613fe8565b6101208101516101a0820151613fe89163ffffffff613a2a16565b6101a08201819052610120820151610140830151614005926143f2565b61010082018190526101208201516101408301516101808401516101a090940151919850965091945090925090505b9550955095509550959050565b600290565b303b1590565b9051600160029092021c16151590565b6b033b2e3c9fd0803ce800000090565b6000611a5b6b033b2e3c9fd0803ce8000000611535614091868663ffffffff6139f016565b60026b033b2e3c9fd0803ce80000005b049063ffffffff61331416565b600080611a5b836000015461328185600101548660090160149054906101000a900464ffffffffff16614256565b6000806140f64264ffffffffff851663ffffffff6136d216565b9050600061410e856301e1338063ffffffff613a2a16565b90506141388261412c61411f61405c565b849063ffffffff61331416565b9063ffffffff61442216565b95945050505050565b6000610e438260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561419657600080fd5b505afa1580156141aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141ce9190614bb7565b8360070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561421e57600080fd5b505afa158015614232573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b119190614bb7565b6000806142704264ffffffffff851663ffffffff6136d216565b905060006142996142846301e1338061447c565b61428d8461447c565b9063ffffffff61449216565b90506141386142a661405c565b612b11878463ffffffff61406c16565b600081848411156142da5760405162461bcd60e51b81526004016101c99190614f1c565b505050900390565b61433a846323b872dd60e01b85858560405160240161430393929190614e1e565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526144bd565b50505050565b6124598363a9059cbb60e01b8484604051602401614303929190614d48565b600081836143805760405162461bcd60e51b81526004016101c99190614f1c565b50600083858161438c57fe5b0495945050505050565b511590565b9051600360029092021c16151590565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b6000826144025750600019611a5b565b611a5883614416868563ffffffff61454c16565b9063ffffffff61457116565b60006002820661443e576b033b2e3c9fd0803ce8000000614440565b825b90506002820491505b8115610e4357614459838461406c565b925060028206156144715761446e818461406c565b90505b600282049150614449565b6000610e4382633b9aca0063ffffffff6139f016565b6000600282046144b58361153561411f876b033b2e3c9fd0803ce80000006139f0565b949350505050565b6060614512826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166145909092919063ffffffff16565b80519091501561245957808060200190518101906145309190614b83565b6124595760405162461bcd60e51b81526004016101c9906152b3565b6000611a5b612710611535614567868663ffffffff6139f016565b60026127106140a1565b6000600282046144b58361153561411f87670de0b6b3a76400006139f0565b6060611a58848460008560606145a585610593565b6145c15760405162461bcd60e51b81526004016101c990615197565b60006060866001600160a01b031685876040516145de9190614d15565b60006040518083038185875af1925050503d806000811461461b576040519150601f19603f3d011682016040523d82523d6000602084013e614620565b606091505b509150915081156146345791506144b59050565b8051156146445780518082602001fd5b8360405162461bcd60e51b81526004016101c99190614f1c565b604051806101a00160405280600081526020016000815260200160008152602001600081526020016000815260200161469561473a565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c0820181905260e09091015290565b6040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681525090565b6040518060200160405280600081525090565b60405180610260016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160006001600160a01b031681526020016000151581526020016000151581525090565b6000602082840312156147ff578081fd5b8135611a5b816156df565b60006020828403121561481b578081fd5b8151611a5b816156df565b60008060408385031215614838578081fd5b8235614843816156df565b91506020830135614853816156df565b809150509250929050565b60008060008060808587031215614873578182fd5b843561487e816156df565b9350602085013561488e816156df565b93969395505050506040820135916060013590565b600080600080600060a086880312156148ba578081fd5b85356148c5816156df565b945060208601356148d5816156df565b935060408601356148e5816156df565b925060608601356148f5816156df565b91506080860135614905816156df565b809150509295509295909350565b600080600080600060a0868803121561492a578081fd5b8535614935816156df565b94506020860135614945816156df565b93506040860135614955816156df565b9250606086013591506080860135614905816156f7565b600080600060608486031215614980578283fd5b833561498b816156df565b9250602084013561499b816156df565b929592945050506040919091013590565b600080600080608085870312156149c1578384fd5b84356149cc816156df565b935060208501356149dc816156df565b925060408501359150606085013567ffffffffffffffff8111156149fe578182fd5b80860187601f820112614a0f578283fd5b80359150614a24614a1f83615684565b61565d565b828152886020848401011115614a38578384fd5b8260208301602083013791820160200192909252939692955090935050565b60008060408385031215614a69578182fd5b8235614a74816156df565b91506020830135614853816156f7565b60008060408385031215614a96578182fd5b8235614aa1816156df565b946020939093013593505050565b600080600060608486031215614ac3578081fd5b8335614ace816156df565b925060208401359150604084013561ffff81168114614aeb578182fd5b809150509250925092565b60008060008060808587031215614b0b578182fd5b8435614b16816156df565b935060208501359250604085013591506060850135614b34816156df565b939692955090935050565b60008060008060808587031215614b54578182fd5b8435614b5f816156df565b93506020850135925060408501359150606085013561ffff81168114614b34578182fd5b600060208284031215614b94578081fd5b8151611a5b816156f7565b600060208284031215614bb0578081fd5b5035919050565b600060208284031215614bc8578081fd5b5051919050565b60008060408385031215614be1578182fd5b82519150602083015167ffffffffffffffff811115614bfe578182fd5b80840185601f820112614c0f578283fd5b80519150614c1f614a1f83615684565b828152866020848401011115614c33578384fd5b614c448360208301602085016156b3565b8093505050509250929050565b600080600060608486031215614c65578081fd5b8351925060208401519150604084015190509250925092565b600060208284031215614c8f578081fd5b815164ffffffffff81168114611a5b578182fd5b6000815480845260208085019450838352808320835b83811015614cde5781546001600160a01b031687529582019560019182019101614cb9565b509495945050505050565b60008151808452614d018160208601602086016156b3565b601f01601f19169290920160200192915050565b60008251614d278184602087016156b3565b9190910192915050565b90565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090614dbc90830184614ce9565b979650505050505050565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b03958616815293851660208501529190931660408301526060820192909252901515608082015260a00190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b600060018060a01b03808a16835280891660208401528760408401528660608401528554608084015260e060a0840152614e7f60e0840186614ca3565b915080841660c08401525098975050505050505050565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b6020808252825182820181905260009190848201906040850190845b81811015614f055783516001600160a01b031683529284019291840191600101614ee0565b50909695505050505050565b901515815260200190565b600060208252611a5b6020830184614ce9565b60208082526031908201527f5468657265206973206e6f7420656e6f756768206c697175696469747920617660408201527061696c61626c6520746f20626f72726f7760781b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252602f908201527f496e746572657374207261746520726562616c616e636520636f6e646974696f60408201526e1b9cc81dd95c99481b9bdd081b595d608a1b606082015260800190565b60208082526032908201527f5468652061637475616c2062616c616e6365206f66207468652070726f746f636040820152711bdb081a5cc81a5b98dbdb9cda5cdd195b9d60721b606082015260800190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b60208082526038908201527f5573657220646f6573206e6f74206861766520616e7920737461626c6520726160408201527f7465206c6f616e20666f72207468697320726573657276650000000000000000606082015260800190565b6020808252602e908201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560408201526d195b881a5b9a5d1a585b1a5e995960921b606082015260800190565b60208082526017908201527f4c69717569646174696f6e2063616c6c206661696c6564000000000000000000604082015260600190565b602080825260029082015261033360f41b604082015260600190565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b6020808252602a908201527f57726f6e67207573616765206f66204554482e756e6976657273616c5472616e6040820152697366657246726f6d282960b01b606082015260800190565b60208082526013908201527211551217d514905394d1915497d19052531151606a1b604082015260600190565b602080825260029082015261191960f11b604082015260600190565b60208082526032908201527f5468652072657175657374656420616d6f756e7420697320746f6f20736d616c60408201527136103337b9103090233630b9b42637b0b71760711b606082015260800190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b9051815260200190565b9485526001600160a01b03938416602086015291831660408501528216606084015216608082015260a00190565b600087825260018060a01b03808816602084015286604084015285606084015260c060808401526153a060c0840186614ca3565b915080841660a084015250979650505050505050565b9283526001600160a01b03919091166020830152604082015260600190565b8981526001600160a01b038981166020830152604082018990526101208201906153fe896156a8565b606084015296909616608082015260a081019490945260c084019290925260e083015261010090910152949350505050565b9485526001600160a01b0393909316602085015260408401919091526060830152608082015260a00190565b60006101408c835260018060a01b03808d1660208501528b60408501528a60608501528960808501528860a08501528760c08501528660e0850152816101008501526154aa82850187614ca3565b925080851661012085015250509b9a5050505050505050505050565b600060a0820190508682528560208301528460408301528360608301526154ec836156a8565b60808301529695505050505050565b918252602082015260400190565b90815260200190565b9283526020830191909152604082015260600190565b93845260208401929092526040830152606082015260800190565b998a5260208a0198909852604089019690965260608801949094526001600160a01b03929092166080870152151560a0860152151560c0850152151560e0840152151561010083015215156101208201526101400190565b958652602086019490945260408501929092526060840152608083015260a082015260c00190565b998a5260208a019890985260408901969096526060880194909452608087019290925260a086015260c085015260e084015261010083015264ffffffffff166101208201526101400190565b998a5260208a019890985260408901969096526060880194909452608087019290925260a086015260c085015260e084015264ffffffffff1661010083015215156101208201526101400190565b60405181810167ffffffffffffffff8111828210171561567c57600080fd5b604052919050565b600067ffffffffffffffff82111561569a578081fd5b50601f01601f191660200190565b80600381106105cc57fe5b60005b838110156156ce5781810151838201526020016156b6565b8381111561433a5750506000910152565b6001600160a01b03811681146156f457600080fd5b50565b80151581146156f457600080fdfea2646970667358221220783bd2f45116069ab955cc2decc35a2ec9cc7123bb1b7449e430db79810c007164736f6c63430006080033"; export interface LendingPoolLibraryAddresses { ["__$69254465eb8f179ea24caa73cf68b23524$__"]: string; diff --git a/types/LendingPoolLiquidationManagerFactory.ts b/types/LendingPoolLiquidationManagerFactory.ts index a385ea1d..b6932bfb 100644 --- a/types/LendingPoolLiquidationManagerFactory.ts +++ b/types/LendingPoolLiquidationManagerFactory.ts @@ -9,30 +9,8 @@ import { TransactionOverrides } from "."; import { LendingPoolLiquidationManager } from "./LendingPoolLiquidationManager"; export class LendingPoolLiquidationManagerFactory extends ContractFactory { - constructor( - linkLibraryAddresses: LendingPoolLiquidationManagerLibraryAddresses, - signer?: Signer - ) { - super( - _abi, - LendingPoolLiquidationManagerFactory.linkBytecode(linkLibraryAddresses), - signer - ); - } - - static linkBytecode( - linkLibraryAddresses: LendingPoolLiquidationManagerLibraryAddresses - ): string { - let linkedBytecode = _bytecode; - - linkedBytecode = linkedBytecode.replace( - new RegExp("__\\$7347ff53b2b46c21e26a37164ae7f6739f\\$__", "g"), - linkLibraryAddresses["__$7347ff53b2b46c21e26a37164ae7f6739f$__"] - .replace(/^0x/, "") - .toLowerCase() - ); - - return linkedBytecode; + constructor(signer?: Signer) { + super(_abi, _bytecode, signer); } deploy( @@ -196,8 +174,4 @@ const _abi = [ ]; const _bytecode = - "0x6080604052600060015534801561001557600080fd5b506001600055611ed28061002a6000396000f3fe6080604052600436106100335760003560e01c8062a718a9146100385780634fe7a6e5146100fb578063c72c4d1014610141575b600080fd5b61007c600480360360a081101561004e57600080fd5b506001600160a01b038135811691602081013582169160408201351690606081013590608001351515610156565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b838110156100bf5781810151838201526020016100a7565b50505050905090810190601f1680156100ec5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b34801561010757600080fd5b506101256004803603602081101561011e57600080fd5b50356109ff565b604080516001600160a01b039092168252519081900360200190f35b34801561014d57600080fd5b50610125610a26565b6001600160a01b0380851660009081526037602090815260408083208985168085528285209589168552603884528285209085529092528220919260609261019c611ca1565b73__$7347ff53b2b46c21e26a37164ae7f6739f$__6392eeb05c8a603760386039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561020b57600080fd5b505afa15801561021f573d6000803e3d6000fd5b505050506040513d602081101561023557600080fd5b50516040516001600160e01b031960e088901b1681526001600160a01b03808716600483019081526024830187905260448301869052908316608483015260a060648301908152845460a484018190529192909160c490910190859080156102c657602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116102a8575b5050965050505050505060a06040518083038186803b1580156102e857600080fd5b505af41580156102fc573d6000803e3d6000fd5b505050506040513d60a081101561031257600080fd5b50608001516101c08201819052670de0b6b3a764000011610355576004604051806060016040528060288152602001611e4b6028913995509550505050506109f5565b6006830154604080516370a0823160e01b81526001600160a01b038c81166004830152915191909216916370a08231916024808301926020929190829003018186803b1580156103a457600080fd5b505afa1580156103b8573d6000803e3d6000fd5b505050506040513d60208110156103ce57600080fd5b505180825261041c5760016040518060400160405280601f81526020017f496e76616c696420636f6c6c61746572616c20746f206c69717569646174650081525095509550505050506109f5565b600061042a84600501610a35565b1180156104385750815460ff165b1515610200820181905261046e5760026040518060600160405280602a8152602001611dcd602a913995509550505050506109f5565b6104788985610a4a565b60408301526020820181905215801561049357506040810151155b156104c05760036040518060600160405280602a8152602001611e73602a913995509550505050506109f5565b6104ed6113886104e183604001518460200151610b4d90919063ffffffff16565b9063ffffffff610bb016565b6060820181905288116105005787610506565b80606001515b60808201819052815161052191859187918f918f9190610bea565b6101a0830181905261018083019190915260808201511115610549576101a081015160808201525b60068301546001600160a01b03166101e0820152866105bf576000610585826101e001518d6001600160a01b0316610e7590919063ffffffff16565b90508161018001518110156105bd576005604051806060016040528060338152602001611d9a603391399650965050505050506109f5565b505b6105c884610f1f565b60808101516105e29085908c90600063ffffffff610fd716565b806080015181604001511061066b576008840154608082015160408051632770a7eb60e21b81526001600160a01b038d81166004830152602482019390935290519190921691639dc29fac91604480830192600092919082900301818387803b15801561064e57600080fd5b505af1158015610662573d6000803e3d6000fd5b50505050610772565b60088401546040808301518151632770a7eb60e21b81526001600160a01b038d8116600483015260248201929092529151921691639dc29fac9160448082019260009290919082900301818387803b1580156106c657600080fd5b505af11580156106da573d6000803e3d6000fd5b505050506007840154604082015160808301516001600160a01b0390921691639dc29fac918c9161070a916112c4565b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561075957600080fd5b505af115801561076d573d6000803e3d6000fd5b505050505b86156107fa576101e08101516101808201516040805163f866c31960e01b81526001600160a01b038d8116600483015233602483015260448201939093529051919092169163f866c31991606480830192600092919082900301818387803b1580156107dd57600080fd5b505af11580156107f1573d6000803e3d6000fd5b5050505061092a565b61080383610f1f565b61018081015161081f9084908d9060009063ffffffff610fd716565b806101e001516001600160a01b0316633edb7cb88a8361018001516040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561088957600080fd5b505af115801561089d573d6000803e3d6000fd5b5050506101e082015161018083015160408051634efecaa560e01b81523360048201526024810192909252516001600160a01b039092169250634efecaa59160448083019260209291908290030181600087803b1580156108fd57600080fd5b505af1158015610911573d6000803e3d6000fd5b505050506040513d602081101561092757600080fd5b50505b60068401546080820151610958916001600160a01b038d81169233929190911690600163ffffffff61130616565b60808082015161018083015160408051928352602083019190915233828201528915156060830152429282019290925290516001600160a01b03808c16928d821692918f16917f54343dd5791108d018f6fb8def2c14d746f777c51e9924962237813a527528709181900360a00190a46000604051806040016040528060098152602001684e6f206572726f727360b81b81525095509550505050505b9550959350505050565b60398181548110610a0c57fe5b6000918252602090912001546001600160a01b0316905081565b6035546001600160a01b031681565b5460101c650fffffff0001600160f01b031690565b6007810154604080516370a0823160e01b81526001600160a01b0385811660048301529151600093849316916370a08231916024808301926020929190829003018186803b158015610a9b57600080fd5b505afa158015610aaf573d6000803e3d6000fd5b505050506040513d6020811015610ac557600080fd5b50516008840154604080516370a0823160e01b81526001600160a01b038881166004830152915191909216916370a08231916024808301926020929190829003018186803b158015610b1657600080fd5b505afa158015610b2a573d6000803e3d6000fd5b505050506040513d6020811015610b4057600080fd5b5051909590945092505050565b600082820183811015610ba7576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6000610ba7612710610bde610bcb868663ffffffff6114f916565b60026127105b049063ffffffff610b4d16565b9063ffffffff61155216565b60355460408051631f94a27560e31b81529051600092839283926001600160a01b039092169163fca513a891600480820192602092909190829003018186803b158015610c3657600080fd5b505afa158015610c4a573d6000803e3d6000fd5b505050506040513d6020811015610c6057600080fd5b50519050610c6c611d3b565b816001600160a01b031663b3596f07896040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610cc257600080fd5b505afa158015610cd6573d6000803e3d6000fd5b505050506040513d6020811015610cec57600080fd5b5051604080830191909152805163b3596f0760e01b81526001600160a01b03898116600483015291519184169163b3596f0791602480820192602092909190829003018186803b158015610d3f57600080fd5b505afa158015610d53573d6000803e3d6000fd5b505050506040513d6020811015610d6957600080fd5b50516060820152610d7c60058b01611594565b60c0850152602084015250610d95905060058a016115db565b60a0820181905260208201516040830151610dee926104e191610dc091600a0a63ffffffff6114f916565b610bde8560c00151600a0a610de28c88606001516114f990919063ffffffff16565b9063ffffffff6114f916565b60808201819052851015610e5d57849350610e568160200151610e4a610e288460c00151600a0a85606001516114f990919063ffffffff16565b610bde8560a00151600a0a610de28a88604001516114f990919063ffffffff16565b9063ffffffff6115ec16565b9250610e68565b806080015193508592505b5050965096945050505050565b6000610e808361161a565b15610e9657506001600160a01b03811631610baa565b826001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610eec57600080fd5b505afa158015610f00573d6000803e3d6000fd5b505050506040513d6020811015610f1657600080fd5b50519050610baa565b6000610f2a8261163f565b90508015610fb35760018201546009830154600091610f5691600160a01b900464ffffffffff1661173f565b8354909150610f6c90829063ffffffff6117b416565b835560028301546009840154600091610f9291600160a01b900464ffffffffff166117ed565b9050610fab8460040154826117b490919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b15801561101e57600080fd5b505afa158015611032573d6000803e3d6000fd5b505050506040513d602081101561104857600080fd5b50516006860154909150600090611071906001600160a01b03878116911663ffffffff610e7516565b6009870154909150600090819081906001600160a01b03166357e37af0896110af896110a3898d63ffffffff610b4d16565b9063ffffffff6112c416565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110ff57600080fd5b505afa158015611113573d6000803e3d6000fd5b505050506040513d602081101561112957600080fd5b505160088e0154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b15801561117257600080fd5b505afa158015611186573d6000803e3d6000fd5b505050506040513d602081101561119c57600080fd5b5051604080516001600160e01b031960e088901b1681526001600160a01b039095166004860152602485019390935260448401919091526064830152608482018990525160a4808301926060929190829003018186803b1580156111ff57600080fd5b505afa158015611213573d6000803e3d6000fd5b505050506040513d606081101561122957600080fd5b50805160208083015160409384015160018e0184905560038e0182905560028e018190558d5460048f015486518681529485018490528487018c905260608501839052608085019190915260a0840152935192965094509192506001600160a01b038a16917f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4919081900360c00190a2505050505050505050565b6000610ba783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061183c565b81611310576114f2565b6113198561161a565b156114d7578134101561135d5760405162461bcd60e51b815260040180806020018281038252602a815260200180611df7602a913960400191505060405180910390fd5b6001600160a01b0383163014611410576040516000906001600160a01b0385169061c35090859084818181858888f193505050503d80600081146113bd576040519150601f19603f3d011682016040523d82523d6000602084013e6113c2565b606091505b505090508061140e576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b505b80801561141c57508134115b156114d25760006001600160a01b03851661143d348563ffffffff6112c416565b60405161c35091906000818181858888f193505050503d806000811461147f576040519150601f19603f3d011682016040523d82523d6000602084013e611484565b606091505b50509050806114d0576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b505b6114f2565b6114f26001600160a01b03861685858563ffffffff6118d316565b5050505050565b60008261150857506000610baa565b8282028284828161151557fe5b0414610ba75760405162461bcd60e51b8152600401808060200182810382526021815260200180611d796021913960400191505060405180910390fd5b6000610ba783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611933565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b5460301c610f01600160d01b031690565b60006002820461161283610bde611605876127106114f9565b849063ffffffff610b4d16565b949350505050565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b6000610baa8260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561169457600080fd5b505afa1580156116a8573d6000803e3d6000fd5b505050506040513d60208110156116be57600080fd5b50516007840154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b15801561170757600080fd5b505afa15801561171b573d6000803e3d6000fd5b505050506040513d602081101561173157600080fd5b50519063ffffffff610b4d16565b6000806117594264ffffffffff851663ffffffff6112c416565b9050600061178261176d6301e13380611998565b61177684611998565b9063ffffffff6119ae16565b90506117ab61178f6119d1565b61179f878463ffffffff6117b416565b9063ffffffff610b4d16565b95945050505050565b6000610ba76b033b2e3c9fd0803ce8000000610bde6117d9868663ffffffff6114f916565b60026b033b2e3c9fd0803ce8000000610bd1565b6000806118074264ffffffffff851663ffffffff6112c416565b9050600061181f856301e1338063ffffffff61155216565b90506117ab826118306116056119d1565b9063ffffffff6119e116565b600081848411156118cb5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611890578181015183820152602001611878565b50505050905090810190601f1680156118bd5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b17905261192d908590611a3b565b50505050565b600081836119825760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611890578181015183820152602001611878565b50600083858161198e57fe5b0495945050505050565b6000610baa82633b9aca0063ffffffff6114f916565b60006002820461161283610bde611605876b033b2e3c9fd0803ce80000006114f9565b6b033b2e3c9fd0803ce800000090565b6000600282066119fd576b033b2e3c9fd0803ce80000006119ff565b825b90506002820491505b8115610baa57611a1883846117b4565b92506002820615611a3057611a2d81846117b4565b90505b600282049150611a08565b6060611a90826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611af19092919063ffffffff16565b805190915015611aec57808060200190516020811015611aaf57600080fd5b5051611aec5760405162461bcd60e51b815260040180806020018281038252602a815260200180611e21602a913960400191505060405180910390fd5b505050565b606061161284846000856060611b0685611c68565b611b57576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b60208310611b965780518252601f199092019160209182019101611b77565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114611bf8576040519150601f19603f3d011682016040523d82523d6000602084013e611bfd565b606091505b50915091508115611c115791506116129050565b805115611c215780518082602001fd5b60405162461bcd60e51b8152602060048201818152865160248401528651879391928392604401919085019080838360008315611890578181015183820152602001611878565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590611612575050151592915050565b6040518061022001604052806000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160006002811115611d0057fe5b81526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681526020016000151581525090565b6040518060e0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152509056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7754686572652069736e277420656e6f756768206c697175696469747920617661696c61626c6520746f206c697175696461746554686520636f6c6c61746572616c2063686f73656e2063616e6e6f74206265206c69717569646174656457726f6e67207573616765206f66204554482e756e6976657273616c5472616e7366657246726f6d28295361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565644865616c746820666163746f72206973206e6f742062656c6f7720746865207468726573686f6c645573657220646964206e6f7420626f72726f7720746865207370656369666965642063757272656e6379a2646970667358221220bd3cd23df3734c4fa6f02b32f5c4abfaace2ff7e24a4ccfa1856f75b68566ff664736f6c63430006080033"; - -export interface LendingPoolLiquidationManagerLibraryAddresses { - ["__$7347ff53b2b46c21e26a37164ae7f6739f$__"]: string; -} + "0x6080604052600060015534801561001557600080fd5b5060016000556124208061002a6000396000f3fe6080604052600436106100335760003560e01c8062a718a9146100385780634fe7a6e5146100fb578063c72c4d1014610141575b600080fd5b61007c600480360360a081101561004e57600080fd5b506001600160a01b038135811691602081013582169160408201351690606081013590608001351515610156565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b838110156100bf5781810151838201526020016100a7565b50505050905090810190601f1680156100ec5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b34801561010757600080fd5b506101256004803603602081101561011e57600080fd5b5035610951565b604080516001600160a01b039092168252519081900360200190f35b34801561014d57600080fd5b50610125610978565b6001600160a01b0380851660009081526037602090815260408083208985168452818420948816845260389092528220919260609261019361214e565b6001600160a01b03891660009081526038602090815260409182902082518083018452905481526039805484518185028101850190955280855261028c948e946037949391929083018282801561021357602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116101f5575b505060355460408051631f94a27560e31b815290516001600160a01b03909216945063fca513a893506004808201935060209291829003018186803b15801561025b57600080fd5b505afa15801561026f573d6000803e3d6000fd5b505050506040513d602081101561028557600080fd5b5051610987565b6101c08601819052670de0b6b3a76400001193506102d092505050576004604051806060016040528060288152602001612399602891399550955050505050610947565b6006830154604080516370a0823160e01b81526001600160a01b038c81166004830152915191909216916370a08231916024808301926020929190829003018186803b15801561031f57600080fd5b505afa158015610333573d6000803e3d6000fd5b505050506040513d602081101561034957600080fd5b50518152600061035b60058501610e64565b11801561038a5750600983015460408051602081019091528354815261038a91600160d01b900460ff16610e79565b151561020082018190526103c05760026040518060600160405280602a815260200161231b602a91399550955050505050610947565b6103ca8985610e91565b6040830152602082018190521580156103e557506040810151155b156104125760036040518060600160405280602a81526020016123c1602a91399550955050505050610947565b61043f61138861043383604001518460200151610f9490919063ffffffff16565b9063ffffffff610ff516565b6060820181905288116104525787610458565b80606001515b60808201819052815161047391859187918f918f9190611023565b6101a083018190526101808301919091526080820151111561049b576101a081015160808201525b60068301546001600160a01b03166101e0820152866105115760006104d7826101e001518d6001600160a01b03166112ae90919063ffffffff16565b905081610180015181101561050f5760056040518060600160405280603381526020016122e860339139965096505050505050610947565b505b61051a84611358565b60808101516105349085908c90600063ffffffff61141016565b80608001518160400151106105bd576008840154608082015160408051632770a7eb60e21b81526001600160a01b038d81166004830152602482019390935290519190921691639dc29fac91604480830192600092919082900301818387803b1580156105a057600080fd5b505af11580156105b4573d6000803e3d6000fd5b505050506106c4565b60088401546040808301518151632770a7eb60e21b81526001600160a01b038d8116600483015260248201929092529151921691639dc29fac9160448082019260009290919082900301818387803b15801561061857600080fd5b505af115801561062c573d6000803e3d6000fd5b505050506007840154604082015160808301516001600160a01b0390921691639dc29fac918c9161065c916116fd565b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156106ab57600080fd5b505af11580156106bf573d6000803e3d6000fd5b505050505b861561074c576101e08101516101808201516040805163f866c31960e01b81526001600160a01b038d8116600483015233602483015260448201939093529051919092169163f866c31991606480830192600092919082900301818387803b15801561072f57600080fd5b505af1158015610743573d6000803e3d6000fd5b5050505061087c565b61075583611358565b6101808101516107719084908d9060009063ffffffff61141016565b806101e001516001600160a01b0316633edb7cb88a8361018001516040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156107db57600080fd5b505af11580156107ef573d6000803e3d6000fd5b5050506101e082015161018083015160408051634efecaa560e01b81523360048201526024810192909252516001600160a01b039092169250634efecaa59160448083019260209291908290030181600087803b15801561084f57600080fd5b505af1158015610863573d6000803e3d6000fd5b505050506040513d602081101561087957600080fd5b50505b600684015460808201516108aa916001600160a01b038d81169233929190911690600163ffffffff61173f16565b60808082015161018083015160408051928352602083019190915233828201528915156060830152429282019290925290516001600160a01b03808c16928d821692918f16917f54343dd5791108d018f6fb8def2c14d746f777c51e9924962237813a527528709181900360a00190a46000604051806040016040528060098152602001684e6f206572726f727360b81b81525095509550505050505b9550959350505050565b6039818154811061095e57fe5b6000918252602090912001546001600160a01b0316905081565b6035546001600160a01b031681565b60008060008060006109976121e8565b6109a089611932565b156109bd5750600094508493508392508291506000199050610e57565b600060e08201525b87518160e001511015610daa5760e08101516109e8908a9063ffffffff61193716565b6109f157610d9a565b878160e0015181518110610a0157fe5b6020908102919091018101516001600160a01b031661020083018190526000908152908b905260409020610a3760058201611947565b6080860181905260c08601929092525060a0840191909152600a0a6020808401919091526102008301516040805163b3596f0760e01b81526001600160a01b0392831660048201529051918b169263b3596f0792602480840193829003018186803b158015610aa557600080fd5b505afa158015610ab9573d6000803e3d6000fd5b505050506040513d6020811015610acf57600080fd5b5051825260a082015115801590610af7575060e0820151610af7908b9063ffffffff610e7916565b15610c2d576006810154604080516370a0823160e01b81526001600160a01b038f81166004830152915191909216916370a08231916024808301926020929190829003018186803b158015610b4b57600080fd5b505afa158015610b5f573d6000803e3d6000fd5b505050506040513d6020811015610b7557600080fd5b50516040830181905260208301518351600092610ba89291610b9c9163ffffffff61198e16565b9063ffffffff6119e716565b610120840151909150610bc1908263ffffffff610f9416565b61012084015260a0830151610bf390610be190839063ffffffff61198e16565b6101808501519063ffffffff610f9416565b61018084015260c0830151610c2590610c1390839063ffffffff61198e16565b6101a08501519063ffffffff610f9416565b6101a0840152505b60e0820151610c43908b9063ffffffff611a2916565b15610d98576007810154604080516370a0823160e01b81526001600160a01b038f81166004830152915191909216916370a08231916024808301926020929190829003018186803b158015610c9757600080fd5b505afa158015610cab573d6000803e3d6000fd5b505050506040513d6020811015610cc157600080fd5b505160608301526008810154604080516370a0823160e01b81526001600160a01b038f811660048301529151610d599392909216916370a0823191602480820192602092909190829003018186803b158015610d1c57600080fd5b505afa158015610d30573d6000803e3d6000fd5b505050506040513d6020811015610d4657600080fd5b505160608401519063ffffffff610f9416565b6060830181905260208301518351610d9192610d7f9291610b9c9163ffffffff61198e16565b6101408401519063ffffffff610f9416565b6101408301525b505b60e08101805160010190526109c5565b600081610120015111610dbe576000610dd9565b610120810151610180820151610dd99163ffffffff6119e716565b610180820152610120810151610df0576000610e0b565b6101208101516101a0820151610e0b9163ffffffff6119e716565b6101a08201819052610120820151610140830151610e2892611a39565b61010082018190526101208201516101408301516101808401516101a090940151919850965091945090925090505b9550955095509550959050565b5460101c650fffffff0001600160f01b031690565b815160016002830281019190911c1615155b92915050565b6007810154604080516370a0823160e01b81526001600160a01b0385811660048301529151600093849316916370a08231916024808301926020929190829003018186803b158015610ee257600080fd5b505afa158015610ef6573d6000803e3d6000fd5b505050506040513d6020811015610f0c57600080fd5b50516008840154604080516370a0823160e01b81526001600160a01b038881166004830152915191909216916370a08231916024808301926020929190829003018186803b158015610f5d57600080fd5b505afa158015610f71573d6000803e3d6000fd5b505050506040513d6020811015610f8757600080fd5b5051909590945092505050565b600082820183811015610fee576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000610fee612710610b9c611010868663ffffffff61198e16565b60026127105b049063ffffffff610f9416565b60355460408051631f94a27560e31b81529051600092839283926001600160a01b039092169163fca513a891600480820192602092909190829003018186803b15801561106f57600080fd5b505afa158015611083573d6000803e3d6000fd5b505050506040513d602081101561109957600080fd5b505190506110a5612289565b816001600160a01b031663b3596f07896040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156110fb57600080fd5b505afa15801561110f573d6000803e3d6000fd5b505050506040513d602081101561112557600080fd5b5051604080830191909152805163b3596f0760e01b81526001600160a01b03898116600483015291519184169163b3596f0791602480820192602092909190829003018186803b15801561117857600080fd5b505afa15801561118c573d6000803e3d6000fd5b505050506040513d60208110156111a257600080fd5b505160608201526111b560058b01611947565b60c08501526020840152506111ce905060058a01611a71565b60a082018190526020820151604083015161122792610433916111f991600a0a63ffffffff61198e16565b610b9c8560c00151600a0a61121b8c886060015161198e90919063ffffffff16565b9063ffffffff61198e16565b608082018190528510156112965784935061128f81602001516112836112618460c00151600a0a856060015161198e90919063ffffffff16565b610b9c8560a00151600a0a61121b8a886040015161198e90919063ffffffff16565b9063ffffffff611a8216565b92506112a1565b806080015193508592505b5050965096945050505050565b60006112b983611aa8565b156112cf57506001600160a01b03811631610e8b565b826001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561132557600080fd5b505afa158015611339573d6000803e3d6000fd5b505050506040513d602081101561134f57600080fd5b50519050610e8b565b600061136382611acd565b905080156113ec576001820154600983015460009161138f91600160a01b900464ffffffffff16611bcd565b83549091506113a590829063ffffffff611c4216565b8355600283015460098401546000916113cb91600160a01b900464ffffffffff16611c7b565b90506113e4846004015482611c4290919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b15801561145757600080fd5b505afa15801561146b573d6000803e3d6000fd5b505050506040513d602081101561148157600080fd5b505160068601549091506000906114aa906001600160a01b03878116911663ffffffff6112ae16565b6009870154909150600090819081906001600160a01b03166357e37af0896114e8896114dc898d63ffffffff610f9416565b9063ffffffff6116fd16565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561153857600080fd5b505afa15801561154c573d6000803e3d6000fd5b505050506040513d602081101561156257600080fd5b505160088e0154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b1580156115ab57600080fd5b505afa1580156115bf573d6000803e3d6000fd5b505050506040513d60208110156115d557600080fd5b5051604080516001600160e01b031960e088901b1681526001600160a01b039095166004860152602485019390935260448401919091526064830152608482018990525160a4808301926060929190829003018186803b15801561163857600080fd5b505afa15801561164c573d6000803e3d6000fd5b505050506040513d606081101561166257600080fd5b50805160208083015160409384015160018e0184905560038e0182905560028e018190558d5460048f015486518681529485018490528487018c905260608501839052608085019190915260a0840152935192965094509192506001600160a01b038a16917f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4919081900360c00190a2505050505050505050565b6000610fee83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611cca565b816117495761192b565b61175285611aa8565b1561191057813410156117965760405162461bcd60e51b815260040180806020018281038252602a815260200180612345602a913960400191505060405180910390fd5b6001600160a01b0383163014611849576040516000906001600160a01b0385169061c35090859084818181858888f193505050503d80600081146117f6576040519150601f19603f3d011682016040523d82523d6000602084013e6117fb565b606091505b5050905080611847576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b505b80801561185557508134115b1561190b5760006001600160a01b038516611876348563ffffffff6116fd16565b60405161c35091906000818181858888f193505050503d80600081146118b8576040519150601f19603f3d011682016040523d82523d6000602084013e6118bd565b606091505b5050905080611909576040805162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b604482015290519081900360640190fd5b505b61192b565b61192b6001600160a01b03861685858563ffffffff611d6116565b5050505050565b511590565b9051600360029092021c16151590565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b60008261199d57506000610e8b565b828202828482816119aa57fe5b0414610fee5760405162461bcd60e51b81526004018080602001828103825260218152602001806122c76021913960400191505060405180910390fd5b6000610fee83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611dc1565b9051600160029092021c16151590565b600082611a495750600019610fee565b611a6983611a5d868563ffffffff610ff516565b9063ffffffff611e2616565b949350505050565b5460301c610f01600160d01b031690565b600060028204611a6983610b9c611a9b8761271061198e565b849063ffffffff610f9416565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b6000610e8b8260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b2257600080fd5b505afa158015611b36573d6000803e3d6000fd5b505050506040513d6020811015611b4c57600080fd5b50516007840154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b158015611b9557600080fd5b505afa158015611ba9573d6000803e3d6000fd5b505050506040513d6020811015611bbf57600080fd5b50519063ffffffff610f9416565b600080611be74264ffffffffff851663ffffffff6116fd16565b90506000611c10611bfb6301e13380611e45565b611c0484611e45565b9063ffffffff611e5b16565b9050611c39611c1d611e7e565b611c2d878463ffffffff611c4216565b9063ffffffff610f9416565b95945050505050565b6000610fee6b033b2e3c9fd0803ce8000000610b9c611c67868663ffffffff61198e16565b60026b033b2e3c9fd0803ce8000000611016565b600080611c954264ffffffffff851663ffffffff6116fd16565b90506000611cad856301e1338063ffffffff6119e716565b9050611c3982611cbe611a9b611e7e565b9063ffffffff611e8e16565b60008184841115611d595760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611d1e578181015183820152602001611d06565b50505050905090810190601f168015611d4b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052611dbb908590611ee8565b50505050565b60008183611e105760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611d1e578181015183820152602001611d06565b506000838581611e1c57fe5b0495945050505050565b600060028204611a6983610b9c611a9b87670de0b6b3a764000061198e565b6000610e8b82633b9aca0063ffffffff61198e16565b600060028204611a6983610b9c611a9b876b033b2e3c9fd0803ce800000061198e565b6b033b2e3c9fd0803ce800000090565b600060028206611eaa576b033b2e3c9fd0803ce8000000611eac565b825b90506002820491505b8115610e8b57611ec58384611c42565b92506002820615611edd57611eda8184611c42565b90505b600282049150611eb5565b6060611f3d826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611f9e9092919063ffffffff16565b805190915015611f9957808060200190516020811015611f5c57600080fd5b5051611f995760405162461bcd60e51b815260040180806020018281038252602a81526020018061236f602a913960400191505060405180910390fd5b505050565b6060611a6984846000856060611fb385612115565b612004576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106120435780518252601f199092019160209182019101612024565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146120a5576040519150601f19603f3d011682016040523d82523d6000602084013e6120aa565b606091505b509150915081156120be579150611a699050565b8051156120ce5780518082602001fd5b60405162461bcd60e51b8152602060048201818152865160248401528651879391928392604401919085019080838360008315611d1e578181015183820152602001611d06565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590611a69575050151592915050565b60405180610220016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600060028111156121ad57fe5b81526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681526020016000151581525090565b60405180610260016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160006001600160a01b031681526020016000151581526020016000151581525090565b6040518060e0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152509056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7754686572652069736e277420656e6f756768206c697175696469747920617661696c61626c6520746f206c697175696461746554686520636f6c6c61746572616c2063686f73656e2063616e6e6f74206265206c69717569646174656457726f6e67207573616765206f66204554482e756e6976657273616c5472616e7366657246726f6d28295361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565644865616c746820666163746f72206973206e6f742062656c6f7720746865207468726573686f6c645573657220646964206e6f7420626f72726f7720746865207370656369666965642063757272656e6379a264697066735822122077b4bbee7148b7334bcde93d70fdf6fb23a8443d64ef51b5c53d9007126c4ad464736f6c63430006080033"; diff --git a/types/ReserveLogicFactory.ts b/types/ReserveLogicFactory.ts index 43f746e7..4ac28a07 100644 --- a/types/ReserveLogicFactory.ts +++ b/types/ReserveLogicFactory.ts @@ -86,4 +86,4 @@ const _abi = [ ]; const _bytecode = - "0x610e3f610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c80630c1282ce1461007157806358ba22fa146100af5780637d368d2e146100d25780638acb830b146100ef578063b5887a641461013c578063fade6ba01461018d575b600080fd5b61009d6004803603604081101561008757600080fd5b50803590602001356001600160a01b03166101b9565b60408051918252519081900360200190f35b61009d600480360360408110156100c557600080fd5b508035906020013561021e565b61009d600480360360208110156100e857600080fd5b503561023f565b8180156100fb57600080fd5b5061013a600480360360a081101561011257600080fd5b508035906001600160a01b0360208201351690604081013590606081013590608001356102dd565b005b81801561014857600080fd5b5061013a600480360360a081101561015f57600080fd5b508035906001600160a01b036020820135811691604081013582169160608201358116916080013516610329565b61009d600480360360408110156101a357600080fd5b50803590602001356001600160a01b03166103f6565b6000806101c584610429565b9050806101d6576000915050610218565b60006101f16001600160a01b0385163063ffffffff61052916565b9050610213610206828463ffffffff6105d316565b839063ffffffff61062d16565b925050505b92915050565b60008260030154600014610236578260030154610238565b815b9392505050565b60008160020154600014156102d1578160090160009054906101000a90046001600160a01b03166001600160a01b03166334762ca56040518163ffffffff1660e01b815260040160206040518083038186803b15801561029e57600080fd5b505afa1580156102b2573d6000803e3d6000fd5b505050506040513d60208110156102c857600080fd5b505190506102d8565b5060028101545b919050565b6102e685610671565b60006103016102f487610429565b859063ffffffff6105d316565b905061031486828563ffffffff61072916565b6103218686856000610787565b505050505050565b60068501546001600160a01b0316156103735760405162461bcd60e51b8152600401808060200182810382526024815260200180610dc56024913960400191505060405180910390fd5b845461038457610381610a74565b85555b600485015461039b57610395610a74565b60048601555b6006850180546001600160a01b03199081166001600160a01b03968716179091556007860180548216948616949094179093556008850180548416928516929092179091556009909301805490911692909116919091179055565b600061023861040484610429565b61041d6001600160a01b0385163063ffffffff61052916565b9063ffffffff6105d316565b60006102188260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561047e57600080fd5b505afa158015610492573d6000803e3d6000fd5b505050506040513d60208110156104a857600080fd5b50516007840154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b1580156104f157600080fd5b505afa158015610505573d6000803e3d6000fd5b505050506040513d602081101561051b57600080fd5b50519063ffffffff6105d316565b600061053483610a84565b1561054a57506001600160a01b03811631610218565b826001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156105a057600080fd5b505afa1580156105b4573d6000803e3d6000fd5b505050506040513d60208110156105ca57600080fd5b50519050610218565b600082820183811015610238576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000600282046106698361065d610650876b033b2e3c9fd0803ce8000000610aa9565b849063ffffffff6105d316565b9063ffffffff610b0216565b949350505050565b600061067c82610429565b9050801561070557600182015460098301546000916106a891600160a01b900464ffffffffff16610b44565b83549091506106be90829063ffffffff610b8f16565b8355600283015460098401546000916106e491600160a01b900464ffffffffff16610bc7565b90506106fd846004015482610b8f90919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b600061074c61073784610c16565b61074084610c16565b9063ffffffff61062d16565b9050600061076861075b610a74565b839063ffffffff6105d316565b855490915061077e90829063ffffffff610b8f16565b90945550505050565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b1580156107ce57600080fd5b505afa1580156107e2573d6000803e3d6000fd5b505050506040513d60208110156107f857600080fd5b50516006860154909150600090610821906001600160a01b03878116911663ffffffff61052916565b6009870154909150600090819081906001600160a01b03166357e37af08961085f89610853898d63ffffffff6105d316565b9063ffffffff610c2c16565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108af57600080fd5b505afa1580156108c3573d6000803e3d6000fd5b505050506040513d60208110156108d957600080fd5b505160088e0154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b15801561092257600080fd5b505afa158015610936573d6000803e3d6000fd5b505050506040513d602081101561094c57600080fd5b5051604080516001600160e01b031960e088901b1681526001600160a01b039095166004860152602485019390935260448401919091526064830152608482018990525160a4808301926060929190829003018186803b1580156109af57600080fd5b505afa1580156109c3573d6000803e3d6000fd5b505050506040513d60608110156109d957600080fd5b50805160208083015160409384015160018e0184905560038e0182905560028e018190558d5460048f015486518681529485018490528487018c905260608501839052608085019190915260a0840152935192965094509192506001600160a01b038a16917f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4919081900360c00190a2505050505050505050565b6b033b2e3c9fd0803ce800000090565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b600082610ab857506000610218565b82820282848281610ac557fe5b04146102385760405162461bcd60e51b8152600401808060200182810382526021815260200180610de96021913960400191505060405180910390fd5b600061023883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610c6e565b600080610b5e4264ffffffffff851663ffffffff610c2c16565b90506000610b726107376301e13380610c16565b9050610213610b7f610a74565b61041d878463ffffffff610b8f16565b60006102386b033b2e3c9fd0803ce800000061065d610bb4868663ffffffff610aa916565b6b019d971e4fe8401e74000000906105d3565b600080610be14264ffffffffff851663ffffffff610c2c16565b90506000610bf9856301e1338063ffffffff610b0216565b905061021382610c0a610650610a74565b9063ffffffff610d1016565b600061021882633b9aca0063ffffffff610aa916565b600061023883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d6a565b60008183610cfa5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cbf578181015183820152602001610ca7565b50505050905090810190601f168015610cec5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610d0657fe5b0495945050505050565b600060028206610d2c576b033b2e3c9fd0803ce8000000610d2e565b825b90506002820491505b811561021857610d478384610b8f565b92506002820615610d5f57610d5c8184610b8f565b90505b600282049150610d37565b60008184841115610dbc5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cbf578181015183820152602001610ca7565b50505090039056fe526573657276652068617320616c7265616479206265656e20696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220ba659686d387f216200a51ae2d8b7e47745176b09c2873b81cb5134e2feda5a564736f6c63430006080033"; + "0x610e3f610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c80630c1282ce1461007157806358ba22fa146100af5780637d368d2e146100d25780638acb830b146100ef578063b5887a641461013c578063fade6ba01461018d575b600080fd5b61009d6004803603604081101561008757600080fd5b50803590602001356001600160a01b03166101b9565b60408051918252519081900360200190f35b61009d600480360360408110156100c557600080fd5b508035906020013561021e565b61009d600480360360208110156100e857600080fd5b503561023f565b8180156100fb57600080fd5b5061013a600480360360a081101561011257600080fd5b508035906001600160a01b0360208201351690604081013590606081013590608001356102dd565b005b81801561014857600080fd5b5061013a600480360360a081101561015f57600080fd5b508035906001600160a01b036020820135811691604081013582169160608201358116916080013516610329565b61009d600480360360408110156101a357600080fd5b50803590602001356001600160a01b03166103f6565b6000806101c584610429565b9050806101d6576000915050610218565b60006101f16001600160a01b0385163063ffffffff61052916565b9050610213610206828463ffffffff6105d316565b839063ffffffff61062d16565b925050505b92915050565b60008260030154600014610236578260030154610238565b815b9392505050565b60008160020154600014156102d1578160090160009054906101000a90046001600160a01b03166001600160a01b03166334762ca56040518163ffffffff1660e01b815260040160206040518083038186803b15801561029e57600080fd5b505afa1580156102b2573d6000803e3d6000fd5b505050506040513d60208110156102c857600080fd5b505190506102d8565b5060028101545b919050565b6102e685610671565b60006103016102f487610429565b859063ffffffff6105d316565b905061031486828563ffffffff61072916565b6103218686856000610787565b505050505050565b60068501546001600160a01b0316156103735760405162461bcd60e51b8152600401808060200182810382526024815260200180610dc56024913960400191505060405180910390fd5b845461038457610381610a74565b85555b600485015461039b57610395610a74565b60048601555b6006850180546001600160a01b03199081166001600160a01b03968716179091556007860180548216948616949094179093556008850180548416928516929092179091556009909301805490911692909116919091179055565b600061023861040484610429565b61041d6001600160a01b0385163063ffffffff61052916565b9063ffffffff6105d316565b60006102188260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561047e57600080fd5b505afa158015610492573d6000803e3d6000fd5b505050506040513d60208110156104a857600080fd5b50516007840154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b1580156104f157600080fd5b505afa158015610505573d6000803e3d6000fd5b505050506040513d602081101561051b57600080fd5b50519063ffffffff6105d316565b600061053483610a84565b1561054a57506001600160a01b03811631610218565b826001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b1580156105a057600080fd5b505afa1580156105b4573d6000803e3d6000fd5b505050506040513d60208110156105ca57600080fd5b50519050610218565b600082820183811015610238576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000600282046106698361065d610650876b033b2e3c9fd0803ce8000000610aa9565b849063ffffffff6105d316565b9063ffffffff610b0216565b949350505050565b600061067c82610429565b9050801561070557600182015460098301546000916106a891600160a01b900464ffffffffff16610b44565b83549091506106be90829063ffffffff610b8f16565b8355600283015460098401546000916106e491600160a01b900464ffffffffff16610bc7565b90506106fd846004015482610b8f90919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b600061074c61073784610c16565b61074084610c16565b9063ffffffff61062d16565b9050600061076861075b610a74565b839063ffffffff6105d316565b855490915061077e90829063ffffffff610b8f16565b90945550505050565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b1580156107ce57600080fd5b505afa1580156107e2573d6000803e3d6000fd5b505050506040513d60208110156107f857600080fd5b50516006860154909150600090610821906001600160a01b03878116911663ffffffff61052916565b6009870154909150600090819081906001600160a01b03166357e37af08961085f89610853898d63ffffffff6105d316565b9063ffffffff610c2c16565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108af57600080fd5b505afa1580156108c3573d6000803e3d6000fd5b505050506040513d60208110156108d957600080fd5b505160088e0154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b15801561092257600080fd5b505afa158015610936573d6000803e3d6000fd5b505050506040513d602081101561094c57600080fd5b5051604080516001600160e01b031960e088901b1681526001600160a01b039095166004860152602485019390935260448401919091526064830152608482018990525160a4808301926060929190829003018186803b1580156109af57600080fd5b505afa1580156109c3573d6000803e3d6000fd5b505050506040513d60608110156109d957600080fd5b50805160208083015160409384015160018e0184905560038e0182905560028e018190558d5460048f015486518681529485018490528487018c905260608501839052608085019190915260a0840152935192965094509192506001600160a01b038a16917f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4919081900360c00190a2505050505050505050565b6b033b2e3c9fd0803ce800000090565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b600082610ab857506000610218565b82820282848281610ac557fe5b04146102385760405162461bcd60e51b8152600401808060200182810382526021815260200180610de96021913960400191505060405180910390fd5b600061023883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610c6e565b600080610b5e4264ffffffffff851663ffffffff610c2c16565b90506000610b726107376301e13380610c16565b9050610213610b7f610a74565b61041d878463ffffffff610b8f16565b60006102386b033b2e3c9fd0803ce800000061065d610bb4868663ffffffff610aa916565b6b019d971e4fe8401e74000000906105d3565b600080610be14264ffffffffff851663ffffffff610c2c16565b90506000610bf9856301e1338063ffffffff610b0216565b905061021382610c0a610650610a74565b9063ffffffff610d1016565b600061021882633b9aca0063ffffffff610aa916565b600061023883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d6a565b60008183610cfa5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cbf578181015183820152602001610ca7565b50505050905090810190601f168015610cec5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610d0657fe5b0495945050505050565b600060028206610d2c576b033b2e3c9fd0803ce8000000610d2e565b825b90506002820491505b811561021857610d478384610b8f565b92506002820615610d5f57610d5c8184610b8f565b90505b600282049150610d37565b60008184841115610dbc5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610cbf578181015183820152602001610ca7565b50505090039056fe526573657276652068617320616c7265616479206265656e20696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220644bfa7590f6fd4b9f64aae7e87c2f052ed7bd820360bb9d6badfc01ba33f19864736f6c63430006080033"; diff --git a/types/StableDebtTokenFactory.ts b/types/StableDebtTokenFactory.ts index f0b9721c..bd1ff3ce 100644 --- a/types/StableDebtTokenFactory.ts +++ b/types/StableDebtTokenFactory.ts @@ -544,4 +544,4 @@ const _abi = [ ]; const _bytecode = - "0x608060405234801561001057600080fd5b506112bc806100206000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806381e75277116100ad578063a457c2d711610071578063a457c2d714610285578063a9059cbb146104be578063c634dfaa146104ea578063dd62ed3e14610510578063e78c9b3b1461053e57610121565b806381e752771461031757806389d1a0fc1461045e57806390f6fcf21461048257806395d89b411461048a5780639dc29fac1461049257610121565b806323b872dd116100f457806323b872dd14610231578063313ce56714610267578063395093511461028557806370a08231146102b157806379ce6b8c146102d757610121565b806306fdde0314610126578063095ea7b3146101a3578063156e29f6146101e357806318160ddd14610217575b600080fd5b61012e610564565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b0381351690602001356105f1565b604080519115158252519081900360200190f35b610215600480360360608110156101f957600080fd5b506001600160a01b038135169060208101359060400135610639565b005b61021f610837565b60408051918252519081900360200190f35b6101cf6004803603606081101561024757600080fd5b506001600160a01b0381358116916020810135909116906040013561083d565b61026f610885565b6040805160ff9092168252519081900360200190f35b6101cf6004803603604081101561029b57600080fd5b506001600160a01b03813516906020013561088e565b61021f600480360360208110156102c757600080fd5b50356001600160a01b03166108dd565b6102fd600480360360208110156102ed57600080fd5b50356001600160a01b0316610987565b6040805164ffffffffff9092168252519081900360200190f35b610215600480360360a081101561032d57600080fd5b81019060208101813564010000000081111561034857600080fd5b82018360208201111561035a57600080fd5b8035906020019184600183028401116401000000008311171561037c57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092959493602081019350359150506401000000008111156103cf57600080fd5b8201836020820111156103e157600080fd5b8035906020019184600183028401116401000000008311171561040357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505060ff8335169350506001600160a01b036020830135811692604001351690506109ac565b610466610a91565b604080516001600160a01b039092168252519081900360200190f35b61021f610aa5565b61012e610aac565b610215600480360360408110156104a857600080fd5b506001600160a01b038135169060200135610b04565b6101cf600480360360408110156104d457600080fd5b506001600160a01b03813516906020013561083d565b61021f6004803603602081101561050057600080fd5b50356001600160a01b0316610c8a565b61021f6004803603604081101561052657600080fd5b506001600160a01b038135811691602001351661088e565b61021f6004803603602081101561055457600080fd5b50356001600160a01b0316610ca5565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105e95780601f106105be576101008083540402835291602001916105e9565b820191906000526020600020905b8154815290600101906020018083116105cc57829003601f168201915b505050505081565b6040805162461bcd60e51b81526020600482015260166024820152751054141493d5905317d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b6004546001600160a01b031633146106825760405162461bcd60e51b81526004018080602001828103825260328152602001806112556032913960400191505060405180910390fd5b61068a61117a565b600080600061069887610cc0565b9250925092506106b386600054610d2e90919063ffffffff16565b84526106be86610d91565b60208501526107406106de6106d9848963ffffffff610d2e16565b610d91565b6020860151610734906106f7908963ffffffff610da716565b61072861070387610d91565b6001600160a01b038d166000908152600760205260409020549063ffffffff610da716565b9063ffffffff610d2e16565b9063ffffffff610deb16565b60408581018290526001600160a01b0389166000908152600760205220908155600101805464ffffffffff19164264ffffffffff1617905583516107be9061078790610d91565b6107346107a1876020015189610da790919063ffffffff16565b6107286107af600054610d91565b6006549063ffffffff610da716565b6006556107cb8787610e23565b60408085015181516001600160a01b038a16815260208101899052808301869052606081018590526080810184905260a081019190915290517f94ba3ac5ed6fee7b49ed817c5ee964eed9bd5da6860344f95fc56997e920381d9181900360c00190a150505050505050565b60005481565b6040805162461bcd60e51b81526020600482015260166024820152751514905394d1915497d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60035460ff1681565b6040805162461bcd60e51b815260206004820152601760248201527f414c4c4f57414e43455f4e4f545f535550504f525445440000000000000000006044820152905160009181900360640190fd5b6001600160a01b03811660009081526005602052604081205461090257506000610982565b6001600160a01b038216600090815260076020526040812080546001820154919291610935919064ffffffffff16610e81565b905061097d6109788261096c60056000896001600160a01b03166001600160a01b0316815260200190815260200160002054610d91565b9063ffffffff610da716565b610ed9565b925050505b919050565b6001600160a01b031660009081526007602052604090206001015464ffffffffff1690565b84516109bf90600190602088019061119b565b5083516109d390600290602087019061119b565b506003805460ff191660ff851617610100600160a81b0319166101006001600160a01b03858116919091029190911790915560408051630261bf8b60e01b8152905191831691630261bf8b91600480820192602092909190829003018186803b158015610a3f57600080fd5b505afa158015610a53573d6000803e3d6000fd5b505050506040513d6020811015610a6957600080fd5b5051600480546001600160a01b0319166001600160a01b039092169190911790555050505050565b60035461010090046001600160a01b031681565b6006545b90565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105e95780601f106105be576101008083540402835291602001916105e9565b6004546001600160a01b03163314610b4d5760405162461bcd60e51b81526004018080602001828103825260328152602001806112556032913960400191505060405180910390fd5b6000806000610b5b85610cc0565b9250925092506000610b7885600054610ef990919063ffffffff16565b90506000610b8586610d91565b905081610b96576000600655610bed565b610be9610ba283610d91565b6001600160a01b03891660009081526007602052604090205461073490610bcf908563ffffffff610da716565b610bdd6107af600054610d91565b9063ffffffff610ef916565b6006555b83861415610c20576001600160a01b0387166000908152600760205260408120908155600101805464ffffffffff191690555b610c2a8787610f3b565b604080516001600160a01b038916815260208101889052808201879052606081018690526080810185905290517fecde08620c30706a4d7ba53e9163327f2e12a6cea2709dd6a9226fed28c2bb729181900360a00190a150505050505050565b6001600160a01b031660009081526005602052604090205490565b6001600160a01b031660009081526007602052604090205490565b6001600160a01b0381166000908152600560205260408120548190819080610cf2575060009250829150819050610d27565b6000610d0182610bdd886108dd565b9050610d0d8682610e23565b81610d1e818363ffffffff610d2e16565b90955093509150505b9193909250565b600082820183811015610d88576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6000610d8b82633b9aca0063ffffffff610f7916565b6000610d886b033b2e3c9fd0803ce8000000610ddf610dcc868663ffffffff610f7916565b6b019d971e4fe8401e7400000090610d2e565b9063ffffffff610fd216565b600060028204610e1b83610ddf610e0e876b033b2e3c9fd0803ce8000000610f79565b849063ffffffff610d2e16565b949350505050565b600054610e36908263ffffffff610d2e16565b60009081556001600160a01b038316815260056020526040902054610e61908263ffffffff610d2e16565b6001600160a01b0390921660009081526005602052604090209190915550565b600080610e9b4264ffffffffff851663ffffffff610ef916565b90506000610eb3856301e1338063ffffffff610fd216565b9050610ed082610ec4610e0e611014565b9063ffffffff61102416565b95945050505050565b6000631dcd6500610ef2633b9aca00610ddf8386610d2e565b9392505050565b6000610d8883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061107e565b600054610f4e908263ffffffff610ef916565b60009081556001600160a01b038316815260056020526040902054610e61908263ffffffff610ef916565b600082610f8857506000610d8b565b82820282848281610f9557fe5b0414610d885760405162461bcd60e51b81526004018080602001828103825260218152602001806112346021913960400191505060405180910390fd5b6000610d8883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611115565b6b033b2e3c9fd0803ce800000090565b600060028206611040576b033b2e3c9fd0803ce8000000611042565b825b90506002820491505b8115610d8b5761105b8384610da7565b92506002820615611073576110708184610da7565b90505b60028204915061104b565b6000818484111561110d5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156110d25781810151838201526020016110ba565b50505050905090810190601f1680156110ff5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836111645760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156110d25781810151838201526020016110ba565b50600083858161117057fe5b0495945050505050565b60405180606001604052806000815260200160008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111dc57805160ff1916838001178555611209565b82800160010185558215611209579182015b828111156112095782518255916020019190600101906111ee565b50611215929150611219565b5090565b610aa991905b80821115611215576000815560010161121f56fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6ca2646970667358221220150e56becc87e979b179a307b7e0575eddaabc1009b91b3137995943cd486d9564736f6c63430006080033"; + "0x608060405234801561001057600080fd5b506112bc806100206000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806381e75277116100ad578063a457c2d711610071578063a457c2d714610285578063a9059cbb146104be578063c634dfaa146104ea578063dd62ed3e14610510578063e78c9b3b1461053e57610121565b806381e752771461031757806389d1a0fc1461045e57806390f6fcf21461048257806395d89b411461048a5780639dc29fac1461049257610121565b806323b872dd116100f457806323b872dd14610231578063313ce56714610267578063395093511461028557806370a08231146102b157806379ce6b8c146102d757610121565b806306fdde0314610126578063095ea7b3146101a3578063156e29f6146101e357806318160ddd14610217575b600080fd5b61012e610564565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b0381351690602001356105f1565b604080519115158252519081900360200190f35b610215600480360360608110156101f957600080fd5b506001600160a01b038135169060208101359060400135610639565b005b61021f610837565b60408051918252519081900360200190f35b6101cf6004803603606081101561024757600080fd5b506001600160a01b0381358116916020810135909116906040013561083d565b61026f610885565b6040805160ff9092168252519081900360200190f35b6101cf6004803603604081101561029b57600080fd5b506001600160a01b03813516906020013561088e565b61021f600480360360208110156102c757600080fd5b50356001600160a01b03166108dd565b6102fd600480360360208110156102ed57600080fd5b50356001600160a01b0316610987565b6040805164ffffffffff9092168252519081900360200190f35b610215600480360360a081101561032d57600080fd5b81019060208101813564010000000081111561034857600080fd5b82018360208201111561035a57600080fd5b8035906020019184600183028401116401000000008311171561037c57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092959493602081019350359150506401000000008111156103cf57600080fd5b8201836020820111156103e157600080fd5b8035906020019184600183028401116401000000008311171561040357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505060ff8335169350506001600160a01b036020830135811692604001351690506109ac565b610466610a91565b604080516001600160a01b039092168252519081900360200190f35b61021f610aa5565b61012e610aac565b610215600480360360408110156104a857600080fd5b506001600160a01b038135169060200135610b04565b6101cf600480360360408110156104d457600080fd5b506001600160a01b03813516906020013561083d565b61021f6004803603602081101561050057600080fd5b50356001600160a01b0316610c8a565b61021f6004803603604081101561052657600080fd5b506001600160a01b038135811691602001351661088e565b61021f6004803603602081101561055457600080fd5b50356001600160a01b0316610ca5565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105e95780601f106105be576101008083540402835291602001916105e9565b820191906000526020600020905b8154815290600101906020018083116105cc57829003601f168201915b505050505081565b6040805162461bcd60e51b81526020600482015260166024820152751054141493d5905317d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b6004546001600160a01b031633146106825760405162461bcd60e51b81526004018080602001828103825260328152602001806112556032913960400191505060405180910390fd5b61068a61117a565b600080600061069887610cc0565b9250925092506106b386600054610d2e90919063ffffffff16565b84526106be86610d91565b60208501526107406106de6106d9848963ffffffff610d2e16565b610d91565b6020860151610734906106f7908963ffffffff610da716565b61072861070387610d91565b6001600160a01b038d166000908152600760205260409020549063ffffffff610da716565b9063ffffffff610d2e16565b9063ffffffff610deb16565b60408581018290526001600160a01b0389166000908152600760205220908155600101805464ffffffffff19164264ffffffffff1617905583516107be9061078790610d91565b6107346107a1876020015189610da790919063ffffffff16565b6107286107af600054610d91565b6006549063ffffffff610da716565b6006556107cb8787610e23565b60408085015181516001600160a01b038a16815260208101899052808301869052606081018590526080810184905260a081019190915290517f94ba3ac5ed6fee7b49ed817c5ee964eed9bd5da6860344f95fc56997e920381d9181900360c00190a150505050505050565b60005481565b6040805162461bcd60e51b81526020600482015260166024820152751514905394d1915497d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60035460ff1681565b6040805162461bcd60e51b815260206004820152601760248201527f414c4c4f57414e43455f4e4f545f535550504f525445440000000000000000006044820152905160009181900360640190fd5b6001600160a01b03811660009081526005602052604081205461090257506000610982565b6001600160a01b038216600090815260076020526040812080546001820154919291610935919064ffffffffff16610e81565b905061097d6109788261096c60056000896001600160a01b03166001600160a01b0316815260200190815260200160002054610d91565b9063ffffffff610da716565b610ed9565b925050505b919050565b6001600160a01b031660009081526007602052604090206001015464ffffffffff1690565b84516109bf90600190602088019061119b565b5083516109d390600290602087019061119b565b506003805460ff191660ff851617610100600160a81b0319166101006001600160a01b03858116919091029190911790915560408051630261bf8b60e01b8152905191831691630261bf8b91600480820192602092909190829003018186803b158015610a3f57600080fd5b505afa158015610a53573d6000803e3d6000fd5b505050506040513d6020811015610a6957600080fd5b5051600480546001600160a01b0319166001600160a01b039092169190911790555050505050565b60035461010090046001600160a01b031681565b6006545b90565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105e95780601f106105be576101008083540402835291602001916105e9565b6004546001600160a01b03163314610b4d5760405162461bcd60e51b81526004018080602001828103825260328152602001806112556032913960400191505060405180910390fd5b6000806000610b5b85610cc0565b9250925092506000610b7885600054610ef990919063ffffffff16565b90506000610b8586610d91565b905081610b96576000600655610bed565b610be9610ba283610d91565b6001600160a01b03891660009081526007602052604090205461073490610bcf908563ffffffff610da716565b610bdd6107af600054610d91565b9063ffffffff610ef916565b6006555b83861415610c20576001600160a01b0387166000908152600760205260408120908155600101805464ffffffffff191690555b610c2a8787610f3b565b604080516001600160a01b038916815260208101889052808201879052606081018690526080810185905290517fecde08620c30706a4d7ba53e9163327f2e12a6cea2709dd6a9226fed28c2bb729181900360a00190a150505050505050565b6001600160a01b031660009081526005602052604090205490565b6001600160a01b031660009081526007602052604090205490565b6001600160a01b0381166000908152600560205260408120548190819080610cf2575060009250829150819050610d27565b6000610d0182610bdd886108dd565b9050610d0d8682610e23565b81610d1e818363ffffffff610d2e16565b90955093509150505b9193909250565b600082820183811015610d88576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6000610d8b82633b9aca0063ffffffff610f7916565b6000610d886b033b2e3c9fd0803ce8000000610ddf610dcc868663ffffffff610f7916565b6b019d971e4fe8401e7400000090610d2e565b9063ffffffff610fd216565b600060028204610e1b83610ddf610e0e876b033b2e3c9fd0803ce8000000610f79565b849063ffffffff610d2e16565b949350505050565b600054610e36908263ffffffff610d2e16565b60009081556001600160a01b038316815260056020526040902054610e61908263ffffffff610d2e16565b6001600160a01b0390921660009081526005602052604090209190915550565b600080610e9b4264ffffffffff851663ffffffff610ef916565b90506000610eb3856301e1338063ffffffff610fd216565b9050610ed082610ec4610e0e611014565b9063ffffffff61102416565b95945050505050565b6000631dcd6500610ef2633b9aca00610ddf8386610d2e565b9392505050565b6000610d8883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061107e565b600054610f4e908263ffffffff610ef916565b60009081556001600160a01b038316815260056020526040902054610e61908263ffffffff610ef916565b600082610f8857506000610d8b565b82820282848281610f9557fe5b0414610d885760405162461bcd60e51b81526004018080602001828103825260218152602001806112346021913960400191505060405180910390fd5b6000610d8883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611115565b6b033b2e3c9fd0803ce800000090565b600060028206611040576b033b2e3c9fd0803ce8000000611042565b825b90506002820491505b8115610d8b5761105b8384610da7565b92506002820615611073576110708184610da7565b90505b60028204915061104b565b6000818484111561110d5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156110d25781810151838201526020016110ba565b50505050905090810190601f1680156110ff5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836111645760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156110d25781810151838201526020016110ba565b50600083858161117057fe5b0495945050505050565b60405180606001604052806000815260200160008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111dc57805160ff1916838001178555611209565b82800160010185558215611209579182015b828111156112095782518255916020019190600101906111ee565b50611215929150611219565b5090565b610aa991905b80821115611215576000815560010161121f56fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6ca2646970667358221220574d78988a0158b65eedb2b6b823bca2c4aec2c6d25ecc1272cba877de38fb3164736f6c63430006080033"; diff --git a/types/VariableDebtTokenFactory.ts b/types/VariableDebtTokenFactory.ts index e474f146..7a267ed9 100644 --- a/types/VariableDebtTokenFactory.ts +++ b/types/VariableDebtTokenFactory.ts @@ -513,4 +513,4 @@ const _abi = [ ]; const _bytecode = - "0x608060405234801561001057600080fd5b50611132806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806381e75277116100a2578063a457c2d711610071578063a457c2d71461023b578063a9059cbb1461045a578063c634dfaa14610486578063dd62ed3e146104ac578063ee9907a4146104da5761010b565b806381e75277146102bb57806389d1a0fc1461040257806395d89b41146104265780639dc29fac1461042e5761010b565b8063313ce567116100de578063313ce5671461021d578063395093511461023b57806340c10f191461026757806370a08231146102955761010b565b806306fdde0314610110578063095ea7b31461018d57806318160ddd146101cd57806323b872dd146101e7575b600080fd5b610118610500565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015257818101518382015260200161013a565b50505050905090810190601f16801561017f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101b9600480360360408110156101a357600080fd5b506001600160a01b03813516906020013561058d565b604080519115158252519081900360200190f35b6101d56105d5565b60408051918252519081900360200190f35b6101b9600480360360608110156101fd57600080fd5b506001600160a01b038135811691602081013590911690604001356105db565b610225610623565b6040805160ff9092168252519081900360200190f35b6101b96004803603604081101561025157600080fd5b506001600160a01b03813516906020013561062c565b6102936004803603604081101561027d57600080fd5b506001600160a01b03813516906020013561067b565b005b6101d5600480360360208110156102ab57600080fd5b50356001600160a01b03166107db565b610293600480360360a08110156102d157600080fd5b8101906020810181356401000000008111156102ec57600080fd5b8201836020820111156102fe57600080fd5b8035906020019184600183028401116401000000008311171561032057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929594936020810193503591505064010000000081111561037357600080fd5b82018360208201111561038557600080fd5b803590602001918460018302840111640100000000831117156103a757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505060ff8335169350506001600160a01b036020830135811692604001351690506108e8565b61040a6109cd565b604080516001600160a01b039092168252519081900360200190f35b6101186109e1565b6102936004803603604081101561044457600080fd5b506001600160a01b038135169060200135610a39565b6101b96004803603604081101561047057600080fd5b506001600160a01b0381351690602001356105db565b6101d56004803603602081101561049c57600080fd5b50356001600160a01b0316610bd4565b6101d5600480360360408110156104c257600080fd5b506001600160a01b038135811691602001351661062c565b6101d5600480360360208110156104f057600080fd5b50356001600160a01b0316610bef565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105855780601f1061055a57610100808354040283529160200191610585565b820191906000526020600020905b81548152906001019060200180831161056857829003601f168201915b505050505081565b6040805162461bcd60e51b81526020600482015260166024820152751054141493d5905317d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60005481565b6040805162461bcd60e51b81526020600482015260166024820152751514905394d1915497d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60035460ff1681565b6040805162461bcd60e51b815260206004820152601760248201527f414c4c4f57414e43455f4e4f545f535550504f525445440000000000000000006044820152905160009181900360640190fd5b6004546001600160a01b031633146106c45760405162461bcd60e51b81526004018080602001828103825260328152602001806110cb6032913960400191505060405180910390fd5b60008060006106d285610c0a565b9250925092506106e28585610c84565b600480546003546040805163386497fd60e01b81526001600160a01b036101009093048316948101949094525191169163386497fd916024808301926020929190829003018186803b15801561073757600080fd5b505afa15801561074b573d6000803e3d6000fd5b505050506040513d602081101561076157600080fd5b50516001600160a01b03861660008181526006602090815260409182902084905581519283528201879052818101869052606082018590526080820184905260a082019290925290517f94ba3ac5ed6fee7b49ed817c5ee964eed9bd5da6860344f95fc56997e920381d9181900360c00190a15050505050565b6001600160a01b038116600090815260056020526040812054610800575060006108e3565b6001600160a01b038083166000908152600660209081526040918290205460048054600354855163386497fd60e01b815261010090910487169281019290925293516108e0956108db9593946108cf949091169263386497fd9260248083019392829003018186803b15801561087557600080fd5b505afa158015610889573d6000803e3d6000fd5b505050506040513d602081101561089f57600080fd5b50516001600160a01b0387166000908152600560205260409020546108c390610ce2565b9063ffffffff610cf816565b9063ffffffff610d4516565b610d7d565b90505b919050565b84516108fb90600190602088019061100e565b50835161090f90600290602087019061100e565b506003805460ff191660ff851617610100600160a81b0319166101006001600160a01b03858116919091029190911790915560408051630261bf8b60e01b8152905191831691630261bf8b91600480820192602092909190829003018186803b15801561097b57600080fd5b505afa15801561098f573d6000803e3d6000fd5b505050506040513d60208110156109a557600080fd5b5051600480546001600160a01b0319166001600160a01b039092169190911790555050505050565b60035461010090046001600160a01b031681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105855780601f1061055a57610100808354040283529160200191610585565b6004546001600160a01b03163314610a825760405162461bcd60e51b81526004018080602001828103825260328152602001806110cb6032913960400191505060405180910390fd5b6000806000610a9085610c0a565b925092509250610aa08585610d9d565b83821415610ac6576001600160a01b038516600090815260066020526040812055610b61565b600480546003546040805163386497fd60e01b81526001600160a01b036101009093048316948101949094525191169163386497fd916024808301926020929190829003018186803b158015610b1b57600080fd5b505afa158015610b2f573d6000803e3d6000fd5b505050506040513d6020811015610b4557600080fd5b50516001600160a01b0386166000908152600660205260409020555b6001600160a01b038516600081815260066020908152604091829020548251938452908301879052828201869052606083018590526080830184905260a0830152517fc57f977ee00c44453a91f798753002bf12fca5f5ca2ee8db560720f51d4b0f629181900360c00190a15050505050565b6001600160a01b031660009081526005602052604090205490565b6001600160a01b031660009081526006602052604090205490565b6001600160a01b0381166000908152600560205260408120548190819080610c3c575060009250829150819050610c7d565b6000610c5782610c4b886107db565b9063ffffffff610ddb16565b9050610c638682610c84565b81610c74818363ffffffff610e1d16565b90955093509150505b9193909250565b600054610c97908263ffffffff610e1d16565b60009081556001600160a01b038316815260056020526040902054610cc2908263ffffffff610e1d16565b6001600160a01b0390921660009081526005602052604090209190915550565b60006108e082633b9aca0063ffffffff610e7716565b6000610d3c6b033b2e3c9fd0803ce8000000610d30610d1d868663ffffffff610e7716565b6b019d971e4fe8401e7400000090610e1d565b9063ffffffff610ed016565b90505b92915050565b600060028204610d7583610d30610d68876b033b2e3c9fd0803ce8000000610e77565b849063ffffffff610e1d16565b949350505050565b6000631dcd6500610d96633b9aca00610d308386610e1d565b9392505050565b600054610db0908263ffffffff610ddb16565b60009081556001600160a01b038316815260056020526040902054610cc2908263ffffffff610ddb16565b6000610d3c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f12565b600082820183811015610d3c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082610e8657506000610d3f565b82820282848281610e9357fe5b0414610d3c5760405162461bcd60e51b81526004018080602001828103825260218152602001806110aa6021913960400191505060405180910390fd5b6000610d3c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610fa9565b60008184841115610fa15760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f66578181015183820152602001610f4e565b50505050905090810190601f168015610f935780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610ff85760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610f66578181015183820152602001610f4e565b50600083858161100457fe5b0495945050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061104f57805160ff191683800117855561107c565b8280016001018555821561107c579182015b8281111561107c578251825591602001919060010190611061565b5061108892915061108c565b5090565b6110a691905b808211156110885760008155600101611092565b9056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6ca2646970667358221220c9e94af60948c448f12866aaff1498be29c54e0ec5d00b3e187251274acc9c6164736f6c63430006080033"; + "0x608060405234801561001057600080fd5b50611132806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806381e75277116100a2578063a457c2d711610071578063a457c2d71461023b578063a9059cbb1461045a578063c634dfaa14610486578063dd62ed3e146104ac578063ee9907a4146104da5761010b565b806381e75277146102bb57806389d1a0fc1461040257806395d89b41146104265780639dc29fac1461042e5761010b565b8063313ce567116100de578063313ce5671461021d578063395093511461023b57806340c10f191461026757806370a08231146102955761010b565b806306fdde0314610110578063095ea7b31461018d57806318160ddd146101cd57806323b872dd146101e7575b600080fd5b610118610500565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015257818101518382015260200161013a565b50505050905090810190601f16801561017f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101b9600480360360408110156101a357600080fd5b506001600160a01b03813516906020013561058d565b604080519115158252519081900360200190f35b6101d56105d5565b60408051918252519081900360200190f35b6101b9600480360360608110156101fd57600080fd5b506001600160a01b038135811691602081013590911690604001356105db565b610225610623565b6040805160ff9092168252519081900360200190f35b6101b96004803603604081101561025157600080fd5b506001600160a01b03813516906020013561062c565b6102936004803603604081101561027d57600080fd5b506001600160a01b03813516906020013561067b565b005b6101d5600480360360208110156102ab57600080fd5b50356001600160a01b03166107db565b610293600480360360a08110156102d157600080fd5b8101906020810181356401000000008111156102ec57600080fd5b8201836020820111156102fe57600080fd5b8035906020019184600183028401116401000000008311171561032057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929594936020810193503591505064010000000081111561037357600080fd5b82018360208201111561038557600080fd5b803590602001918460018302840111640100000000831117156103a757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505060ff8335169350506001600160a01b036020830135811692604001351690506108e8565b61040a6109cd565b604080516001600160a01b039092168252519081900360200190f35b6101186109e1565b6102936004803603604081101561044457600080fd5b506001600160a01b038135169060200135610a39565b6101b96004803603604081101561047057600080fd5b506001600160a01b0381351690602001356105db565b6101d56004803603602081101561049c57600080fd5b50356001600160a01b0316610bd4565b6101d5600480360360408110156104c257600080fd5b506001600160a01b038135811691602001351661062c565b6101d5600480360360208110156104f057600080fd5b50356001600160a01b0316610bef565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105855780601f1061055a57610100808354040283529160200191610585565b820191906000526020600020905b81548152906001019060200180831161056857829003601f168201915b505050505081565b6040805162461bcd60e51b81526020600482015260166024820152751054141493d5905317d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60005481565b6040805162461bcd60e51b81526020600482015260166024820152751514905394d1915497d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60035460ff1681565b6040805162461bcd60e51b815260206004820152601760248201527f414c4c4f57414e43455f4e4f545f535550504f525445440000000000000000006044820152905160009181900360640190fd5b6004546001600160a01b031633146106c45760405162461bcd60e51b81526004018080602001828103825260328152602001806110cb6032913960400191505060405180910390fd5b60008060006106d285610c0a565b9250925092506106e28585610c84565b600480546003546040805163386497fd60e01b81526001600160a01b036101009093048316948101949094525191169163386497fd916024808301926020929190829003018186803b15801561073757600080fd5b505afa15801561074b573d6000803e3d6000fd5b505050506040513d602081101561076157600080fd5b50516001600160a01b03861660008181526006602090815260409182902084905581519283528201879052818101869052606082018590526080820184905260a082019290925290517f94ba3ac5ed6fee7b49ed817c5ee964eed9bd5da6860344f95fc56997e920381d9181900360c00190a15050505050565b6001600160a01b038116600090815260056020526040812054610800575060006108e3565b6001600160a01b038083166000908152600660209081526040918290205460048054600354855163386497fd60e01b815261010090910487169281019290925293516108e0956108db9593946108cf949091169263386497fd9260248083019392829003018186803b15801561087557600080fd5b505afa158015610889573d6000803e3d6000fd5b505050506040513d602081101561089f57600080fd5b50516001600160a01b0387166000908152600560205260409020546108c390610ce2565b9063ffffffff610cf816565b9063ffffffff610d4516565b610d7d565b90505b919050565b84516108fb90600190602088019061100e565b50835161090f90600290602087019061100e565b506003805460ff191660ff851617610100600160a81b0319166101006001600160a01b03858116919091029190911790915560408051630261bf8b60e01b8152905191831691630261bf8b91600480820192602092909190829003018186803b15801561097b57600080fd5b505afa15801561098f573d6000803e3d6000fd5b505050506040513d60208110156109a557600080fd5b5051600480546001600160a01b0319166001600160a01b039092169190911790555050505050565b60035461010090046001600160a01b031681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105855780601f1061055a57610100808354040283529160200191610585565b6004546001600160a01b03163314610a825760405162461bcd60e51b81526004018080602001828103825260328152602001806110cb6032913960400191505060405180910390fd5b6000806000610a9085610c0a565b925092509250610aa08585610d9d565b83821415610ac6576001600160a01b038516600090815260066020526040812055610b61565b600480546003546040805163386497fd60e01b81526001600160a01b036101009093048316948101949094525191169163386497fd916024808301926020929190829003018186803b158015610b1b57600080fd5b505afa158015610b2f573d6000803e3d6000fd5b505050506040513d6020811015610b4557600080fd5b50516001600160a01b0386166000908152600660205260409020555b6001600160a01b038516600081815260066020908152604091829020548251938452908301879052828201869052606083018590526080830184905260a0830152517fc57f977ee00c44453a91f798753002bf12fca5f5ca2ee8db560720f51d4b0f629181900360c00190a15050505050565b6001600160a01b031660009081526005602052604090205490565b6001600160a01b031660009081526006602052604090205490565b6001600160a01b0381166000908152600560205260408120548190819080610c3c575060009250829150819050610c7d565b6000610c5782610c4b886107db565b9063ffffffff610ddb16565b9050610c638682610c84565b81610c74818363ffffffff610e1d16565b90955093509150505b9193909250565b600054610c97908263ffffffff610e1d16565b60009081556001600160a01b038316815260056020526040902054610cc2908263ffffffff610e1d16565b6001600160a01b0390921660009081526005602052604090209190915550565b60006108e082633b9aca0063ffffffff610e7716565b6000610d3c6b033b2e3c9fd0803ce8000000610d30610d1d868663ffffffff610e7716565b6b019d971e4fe8401e7400000090610e1d565b9063ffffffff610ed016565b90505b92915050565b600060028204610d7583610d30610d68876b033b2e3c9fd0803ce8000000610e77565b849063ffffffff610e1d16565b949350505050565b6000631dcd6500610d96633b9aca00610d308386610e1d565b9392505050565b600054610db0908263ffffffff610ddb16565b60009081556001600160a01b038316815260056020526040902054610cc2908263ffffffff610ddb16565b6000610d3c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f12565b600082820183811015610d3c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082610e8657506000610d3f565b82820282848281610e9357fe5b0414610d3c5760405162461bcd60e51b81526004018080602001828103825260218152602001806110aa6021913960400191505060405180910390fd5b6000610d3c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610fa9565b60008184841115610fa15760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f66578181015183820152602001610f4e565b50505050905090810190601f168015610f935780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610ff85760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610f66578181015183820152602001610f4e565b50600083858161100457fe5b0495945050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061104f57805160ff191683800117855561107c565b8280016001018555821561107c579182015b8281111561107c578251825591602001919060010190611061565b5061108892915061108c565b5090565b6110a691905b808211156110885760008155600101611092565b9056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775468652063616c6c6572206f6620746869732066756e6374696f6e206d7573742062652061206c656e64696e6720706f6f6ca26469706673582212209af3360134ace4a0f529f0f4eb089677526135716fce020e1d8909baa172f39464736f6c63430006080033"; diff --git a/types/WalletBalanceProviderFactory.ts b/types/WalletBalanceProviderFactory.ts index 6976c066..76dddc5c 100644 --- a/types/WalletBalanceProviderFactory.ts +++ b/types/WalletBalanceProviderFactory.ts @@ -134,4 +134,4 @@ const _abi = [ ]; const _bytecode = - "0x608060405234801561001057600080fd5b506040516109863803806109868339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b0319909216919091179055610921806100656000396000f3fe6080604052600436106100385760003560e01c80639e3c930914610083578063b59b28ef1461014f578063f7888aec146102d35761007e565b3661007e5761004633610320565b61007c576040805162461bcd60e51b8152602060048201526002602482015261191960f11b604482015290519081900360640190fd5b005b600080fd5b34801561008f57600080fd5b506100b6600480360360208110156100a657600080fd5b50356001600160a01b031661035c565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b838110156100fa5781810151838201526020016100e2565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610139578181015183820152602001610121565b5050505090500194505050505060405180910390f35b34801561015b57600080fd5b506102836004803603604081101561017257600080fd5b81019060208101813564010000000081111561018d57600080fd5b82018360208201111561019f57600080fd5b803590602001918460208302840111640100000000831117156101c157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561021157600080fd5b82018360208201111561022357600080fd5b8035906020019184602083028401116401000000008311171561024557600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506106a0945050505050565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156102bf5781810151838201526020016102a7565b505050509050019250505060405180910390f35b3480156102df57600080fd5b5061030e600480360360408110156102f657600080fd5b506001600160a01b038135811691602001351661081c565b60408051918252519081900360200190f35b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061035457508115155b949350505050565b60608060008060009054906101000a90046001600160a01b03166001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103ae57600080fd5b505afa1580156103c2573d6000803e3d6000fd5b505050506040513d60208110156103d857600080fd5b505160408051630240bc6b60e21b815290519192506060916001600160a01b03841691630902f1ac916004808301926000929190829003018186803b15801561042057600080fd5b505afa158015610434573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561045d57600080fd5b810190808051604051939291908464010000000082111561047d57600080fd5b90830190602082018581111561049257600080fd5b82518660208202830111640100000000821117156104af57600080fd5b82525081516020918201928201910280838360005b838110156104dc5781810151838201526020016104c4565b5050505090500160405250505090506060815167ffffffffffffffff8111801561050557600080fd5b5060405190808252806020026020018201604052801561052f578160200160208202803683370190505b50905060005b8251811015610694576000846001600160a01b0316633e15014185848151811061055b57fe5b60200260200101516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b031681526020019150506101406040518083038186803b1580156105aa57600080fd5b505afa1580156105be573d6000803e3d6000fd5b505050506040513d6101408110156105d557600080fd5b5061010001519050806106025760008383815181106105f057fe5b6020026020010181815250505061068c565b61062784838151811061061157fe5b60200260200101516001600160a01b03166108c6565b15610666576106498885848151811061063c57fe5b602002602001015161081c565b83838151811061065557fe5b60200260200101818152505061068a565b876001600160a01b03163183838151811061067d57fe5b6020026020010181815250505b505b600101610535565b50909350915050915091565b606080825184510267ffffffffffffffff811180156106be57600080fd5b506040519080825280602002602001820160405280156106e8578160200160208202803683370190505b50905060005b84518110156108125760005b845181101561080957600085518302905061071a86838151811061061157fe5b1561075c5786838151811061072b57fe5b60200260200101516001600160a01b031631848383018151811061074b57fe5b602002602001018181525050610800565b61078186838151811061076b57fe5b60200260200101516001600160a01b0316610320565b6107c2576040805162461bcd60e51b815260206004820152600d60248201526c24a72b20a624a22faa27a5a2a760991b604482015290519081900360640190fd5b6107e58784815181106107d157fe5b602002602001015187848151811061063c57fe5b84838301815181106107f357fe5b6020026020010181815250505b506001016106fa565b506001016106ee565b5090505b92915050565b6000610830826001600160a01b0316610320565b156108be57816001600160a01b03166370a08231846040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561088b57600080fd5b505afa15801561089f573d6000803e3d6000fd5b505050506040513d60208110156108b557600080fd5b50519050610816565b506000610816565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1491905056fea2646970667358221220d229125c06b4ff7a1d89687eb3ef25a0713d63f804aa352026fdaa83b6d4b49864736f6c63430006080033"; + "0x608060405234801561001057600080fd5b506040516109863803806109868339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b0319909216919091179055610921806100656000396000f3fe6080604052600436106100385760003560e01c80639e3c930914610083578063b59b28ef1461014f578063f7888aec146102d35761007e565b3661007e5761004633610320565b61007c576040805162461bcd60e51b8152602060048201526002602482015261191960f11b604482015290519081900360640190fd5b005b600080fd5b34801561008f57600080fd5b506100b6600480360360208110156100a657600080fd5b50356001600160a01b031661035c565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b838110156100fa5781810151838201526020016100e2565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610139578181015183820152602001610121565b5050505090500194505050505060405180910390f35b34801561015b57600080fd5b506102836004803603604081101561017257600080fd5b81019060208101813564010000000081111561018d57600080fd5b82018360208201111561019f57600080fd5b803590602001918460208302840111640100000000831117156101c157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561021157600080fd5b82018360208201111561022357600080fd5b8035906020019184602083028401116401000000008311171561024557600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506106a0945050505050565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156102bf5781810151838201526020016102a7565b505050509050019250505060405180910390f35b3480156102df57600080fd5b5061030e600480360360408110156102f657600080fd5b506001600160a01b038135811691602001351661081c565b60408051918252519081900360200190f35b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061035457508115155b949350505050565b60608060008060009054906101000a90046001600160a01b03166001600160a01b0316630261bf8b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103ae57600080fd5b505afa1580156103c2573d6000803e3d6000fd5b505050506040513d60208110156103d857600080fd5b505160408051630240bc6b60e21b815290519192506060916001600160a01b03841691630902f1ac916004808301926000929190829003018186803b15801561042057600080fd5b505afa158015610434573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561045d57600080fd5b810190808051604051939291908464010000000082111561047d57600080fd5b90830190602082018581111561049257600080fd5b82518660208202830111640100000000821117156104af57600080fd5b82525081516020918201928201910280838360005b838110156104dc5781810151838201526020016104c4565b5050505090500160405250505090506060815167ffffffffffffffff8111801561050557600080fd5b5060405190808252806020026020018201604052801561052f578160200160208202803683370190505b50905060005b8251811015610694576000846001600160a01b0316633e15014185848151811061055b57fe5b60200260200101516040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b031681526020019150506101406040518083038186803b1580156105aa57600080fd5b505afa1580156105be573d6000803e3d6000fd5b505050506040513d6101408110156105d557600080fd5b5061010001519050806106025760008383815181106105f057fe5b6020026020010181815250505061068c565b61062784838151811061061157fe5b60200260200101516001600160a01b03166108c6565b15610666576106498885848151811061063c57fe5b602002602001015161081c565b83838151811061065557fe5b60200260200101818152505061068a565b876001600160a01b03163183838151811061067d57fe5b6020026020010181815250505b505b600101610535565b50909350915050915091565b606080825184510267ffffffffffffffff811180156106be57600080fd5b506040519080825280602002602001820160405280156106e8578160200160208202803683370190505b50905060005b84518110156108125760005b845181101561080957600085518302905061071a86838151811061061157fe5b1561075c5786838151811061072b57fe5b60200260200101516001600160a01b031631848383018151811061074b57fe5b602002602001018181525050610800565b61078186838151811061076b57fe5b60200260200101516001600160a01b0316610320565b6107c2576040805162461bcd60e51b815260206004820152600d60248201526c24a72b20a624a22faa27a5a2a760991b604482015290519081900360640190fd5b6107e58784815181106107d157fe5b602002602001015187848151811061063c57fe5b84838301815181106107f357fe5b6020026020010181815250505b506001016106fa565b506001016106ee565b5090505b92915050565b6000610830826001600160a01b0316610320565b156108be57816001600160a01b03166370a08231846040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561088b57600080fd5b505afa15801561089f573d6000803e3d6000fd5b505050506040513d60208110156108b557600080fd5b50519050610816565b506000610816565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1491905056fea2646970667358221220f6e812f417b9657175e5e8c275a14453160d361a47ca250ee1f3ab3850c68b8e64736f6c63430006080033";