mirror of
https://github.com/Instadapp/aave-protocol-v2.git
synced 2024-07-29 21:47:30 +00:00
1210 lines
68 KiB
TypeScript
1210 lines
68 KiB
TypeScript
/* Generated by ts-generator ver. 0.0.8 */
|
|
/* tslint:disable */
|
|
|
|
import { Contract, ContractFactory, Signer } from "ethers";
|
|
import { Provider } from "ethers/providers";
|
|
import { UnsignedTransaction } from "ethers/utils/transaction";
|
|
|
|
import { TransactionOverrides } from ".";
|
|
import { LendingPool } from "./LendingPool";
|
|
|
|
export class LendingPoolFactory extends ContractFactory {
|
|
constructor(
|
|
linkLibraryAddresses: LendingPoolLibraryAddresses,
|
|
signer?: Signer
|
|
) {
|
|
super(_abi, LendingPoolFactory.linkBytecode(linkLibraryAddresses), signer);
|
|
}
|
|
|
|
static linkBytecode(
|
|
linkLibraryAddresses: LendingPoolLibraryAddresses
|
|
): string {
|
|
let linkedBytecode = _bytecode;
|
|
|
|
linkedBytecode = linkedBytecode.replace(
|
|
new RegExp("__\\$69254465eb8f179ea24caa73cf68b23524\\$__", "g"),
|
|
linkLibraryAddresses["__$69254465eb8f179ea24caa73cf68b23524$__"]
|
|
.replace(/^0x/, "")
|
|
.toLowerCase()
|
|
);
|
|
|
|
linkedBytecode = linkedBytecode.replace(
|
|
new RegExp("__\\$5e6137a1b5a0a366e2874209b5abf71c10\\$__", "g"),
|
|
linkLibraryAddresses["__$5e6137a1b5a0a366e2874209b5abf71c10$__"]
|
|
.replace(/^0x/, "")
|
|
.toLowerCase()
|
|
);
|
|
|
|
linkedBytecode = linkedBytecode.replace(
|
|
new RegExp("__\\$7347ff53b2b46c21e26a37164ae7f6739f\\$__", "g"),
|
|
linkLibraryAddresses["__$7347ff53b2b46c21e26a37164ae7f6739f$__"]
|
|
.replace(/^0x/, "")
|
|
.toLowerCase()
|
|
);
|
|
|
|
return linkedBytecode;
|
|
}
|
|
|
|
deploy(overrides?: TransactionOverrides): Promise<LendingPool> {
|
|
return super.deploy(overrides) as Promise<LendingPool>;
|
|
}
|
|
getDeployTransaction(overrides?: TransactionOverrides): UnsignedTransaction {
|
|
return super.getDeployTransaction(overrides);
|
|
}
|
|
attach(address: string): LendingPool {
|
|
return super.attach(address) as LendingPool;
|
|
}
|
|
connect(signer: Signer): LendingPoolFactory {
|
|
return super.connect(signer) as LendingPoolFactory;
|
|
}
|
|
static connect(
|
|
address: string,
|
|
signerOrProvider: Signer | Provider
|
|
): LendingPool {
|
|
return new Contract(address, _abi, signerOrProvider) as LendingPool;
|
|
}
|
|
}
|
|
|
|
const _abi = [
|
|
{
|
|
anonymous: false,
|
|
inputs: [
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_amount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_borrowRateMode",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_borrowRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "uint16",
|
|
name: "_referral",
|
|
type: "uint16"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_timestamp",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "Borrow",
|
|
type: "event"
|
|
},
|
|
{
|
|
anonymous: false,
|
|
inputs: [
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_amount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "uint16",
|
|
name: "_referral",
|
|
type: "uint16"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_timestamp",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "Deposit",
|
|
type: "event"
|
|
},
|
|
{
|
|
anonymous: false,
|
|
inputs: [
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_target",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_amount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_totalFee",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_protocolFee",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_timestamp",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "FlashLoan",
|
|
type: "event"
|
|
},
|
|
{
|
|
anonymous: false,
|
|
inputs: [
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_collateral",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_purchaseAmount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_liquidatedCollateralAmount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_accruedBorrowInterest",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "address",
|
|
name: "_liquidator",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "bool",
|
|
name: "_receiveAToken",
|
|
type: "bool"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_timestamp",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "LiquidationCall",
|
|
type: "event"
|
|
},
|
|
{
|
|
anonymous: false,
|
|
inputs: [
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_collateral",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_feeLiquidated",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_liquidatedCollateralForFee",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_timestamp",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "OriginationFeeLiquidated",
|
|
type: "event"
|
|
},
|
|
{
|
|
anonymous: false,
|
|
inputs: [
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_timestamp",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "RebalanceStableBorrowRate",
|
|
type: "event"
|
|
},
|
|
{
|
|
anonymous: false,
|
|
inputs: [
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_amount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_timestamp",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "RedeemUnderlying",
|
|
type: "event"
|
|
},
|
|
{
|
|
anonymous: false,
|
|
inputs: [
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_repayer",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_amount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_timestamp",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "Repay",
|
|
type: "event"
|
|
},
|
|
{
|
|
anonymous: false,
|
|
inputs: [
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "ReserveUsedAsCollateralDisabled",
|
|
type: "event"
|
|
},
|
|
{
|
|
anonymous: false,
|
|
inputs: [
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "ReserveUsedAsCollateralEnabled",
|
|
type: "event"
|
|
},
|
|
{
|
|
anonymous: false,
|
|
inputs: [
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: true,
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_timestamp",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "Swap",
|
|
type: "event"
|
|
},
|
|
{
|
|
inputs: [],
|
|
name: "LENDINGPOOL_REVISION",
|
|
outputs: [
|
|
{
|
|
internalType: "uint256",
|
|
name: "",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [],
|
|
name: "UINT_MAX_VALUE",
|
|
outputs: [
|
|
{
|
|
internalType: "uint256",
|
|
name: "",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [],
|
|
name: "addressesProvider",
|
|
outputs: [
|
|
{
|
|
internalType: "contract LendingPoolAddressesProvider",
|
|
name: "",
|
|
type: "address"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_amount",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "balanceDecreaseAllowed",
|
|
outputs: [
|
|
{
|
|
internalType: "bool",
|
|
name: "",
|
|
type: "bool"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_amount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_interestRateMode",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint16",
|
|
name: "_referralCode",
|
|
type: "uint16"
|
|
}
|
|
],
|
|
name: "borrow",
|
|
outputs: [],
|
|
stateMutability: "nonpayable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_amount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint16",
|
|
name: "_referralCode",
|
|
type: "uint16"
|
|
}
|
|
],
|
|
name: "deposit",
|
|
outputs: [],
|
|
stateMutability: "payable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_receiver",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_amount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "bytes",
|
|
name: "_params",
|
|
type: "bytes"
|
|
}
|
|
],
|
|
name: "flashLoan",
|
|
outputs: [],
|
|
stateMutability: "nonpayable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "getConfiguration",
|
|
outputs: [
|
|
{
|
|
components: [
|
|
{
|
|
internalType: "uint256",
|
|
name: "data",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
internalType: "struct ReserveConfiguration.Map",
|
|
name: "",
|
|
type: "tuple"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "getReserveConfigurationData",
|
|
outputs: [
|
|
{
|
|
internalType: "uint256",
|
|
name: "decimals",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "ltv",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "liquidationThreshold",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "liquidationBonus",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "interestRateStrategyAddress",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "bool",
|
|
name: "usageAsCollateralEnabled",
|
|
type: "bool"
|
|
},
|
|
{
|
|
internalType: "bool",
|
|
name: "borrowingEnabled",
|
|
type: "bool"
|
|
},
|
|
{
|
|
internalType: "bool",
|
|
name: "stableBorrowRateEnabled",
|
|
type: "bool"
|
|
},
|
|
{
|
|
internalType: "bool",
|
|
name: "isActive",
|
|
type: "bool"
|
|
},
|
|
{
|
|
internalType: "bool",
|
|
name: "isFreezed",
|
|
type: "bool"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "getReserveData",
|
|
outputs: [
|
|
{
|
|
internalType: "uint256",
|
|
name: "availableLiquidity",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "totalBorrowsStable",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "totalBorrowsVariable",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "liquidityRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "variableBorrowRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "stableBorrowRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "averageStableBorrowRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "liquidityIndex",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "variableBorrowIndex",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint40",
|
|
name: "lastUpdateTimestamp",
|
|
type: "uint40"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "getReserveNormalizedIncome",
|
|
outputs: [
|
|
{
|
|
internalType: "uint256",
|
|
name: "",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "getReserveNormalizedVariableDebt",
|
|
outputs: [
|
|
{
|
|
internalType: "uint256",
|
|
name: "",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "getReserveTokensAddresses",
|
|
outputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "aTokenAddress",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "stableDebtTokenAddress",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "variableDebtTokenAddress",
|
|
type: "address"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [],
|
|
name: "getReserves",
|
|
outputs: [
|
|
{
|
|
internalType: "address[]",
|
|
name: "",
|
|
type: "address[]"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "getUserAccountData",
|
|
outputs: [
|
|
{
|
|
internalType: "uint256",
|
|
name: "totalCollateralETH",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "totalBorrowsETH",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "availableBorrowsETH",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "currentLiquidationThreshold",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "ltv",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "healthFactor",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "getUserReserveData",
|
|
outputs: [
|
|
{
|
|
internalType: "uint256",
|
|
name: "currentATokenBalance",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "currentStableDebt",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "currentVariableDebt",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "principalStableDebt",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "principalVariableDebt",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "stableBorrowRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "liquidityRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "variableBorrowIndex",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint40",
|
|
name: "stableRateLastUpdated",
|
|
type: "uint40"
|
|
},
|
|
{
|
|
internalType: "bool",
|
|
name: "usageAsCollateralEnabled",
|
|
type: "bool"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "_aTokenAddress",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "_stableDebtAddress",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "_variableDebtAddress",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "_interestRateStrategyAddress",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "initReserve",
|
|
outputs: [],
|
|
stateMutability: "nonpayable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "contract LendingPoolAddressesProvider",
|
|
name: "_addressesProvider",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "initialize",
|
|
outputs: [],
|
|
stateMutability: "nonpayable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_collateral",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_purchaseAmount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "bool",
|
|
name: "_receiveAToken",
|
|
type: "bool"
|
|
}
|
|
],
|
|
name: "liquidationCall",
|
|
outputs: [],
|
|
stateMutability: "payable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "_user",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "rebalanceStableBorrowRate",
|
|
outputs: [],
|
|
stateMutability: "nonpayable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address payable",
|
|
name: "_user",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_amount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_aTokenBalanceAfterRedeem",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "redeemUnderlying",
|
|
outputs: [],
|
|
stateMutability: "nonpayable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_amount",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_rateMode",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "address payable",
|
|
name: "_onBehalfOf",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "repay",
|
|
outputs: [],
|
|
stateMutability: "payable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "uint256",
|
|
name: "",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "reservesList",
|
|
outputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "",
|
|
type: "address"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_configuration",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "setConfiguration",
|
|
outputs: [],
|
|
stateMutability: "nonpayable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "_rateStrategyAddress",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "setReserveInterestRateStrategyAddress",
|
|
outputs: [],
|
|
stateMutability: "nonpayable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "bool",
|
|
name: "_useAsCollateral",
|
|
type: "bool"
|
|
}
|
|
],
|
|
name: "setUserUseReserveAsCollateral",
|
|
outputs: [],
|
|
stateMutability: "nonpayable",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "_rateMode",
|
|
type: "uint256"
|
|
}
|
|
],
|
|
name: "swapBorrowRateMode",
|
|
outputs: [],
|
|
stateMutability: "nonpayable",
|
|
type: "function"
|
|
},
|
|
{
|
|
stateMutability: "payable",
|
|
type: "receive"
|
|
}
|
|
];
|
|
|
|
const _bytecode =
|
|
"0x6080604052600060015534801561001557600080fd5b50600160005561576c806200002b6000396000f3fe60806040526004361061019f5760003560e01c80638afaff02116100ec578063c72c4d101161008a578063d0fc81d211610064578063d0fc81d21461051c578063d15e005314610531578063d2493b6c14610551578063d2d0e06614610580576101d4565b8063c72c4d10146104c7578063c858f5f9146104dc578063cd112382146104fc576101d4565b8063b8d29276116100c6578063b8d2927614610428578063bf92857c14610448578063c44b11f71461047a578063c4d66de8146104a7576101d4565b80638afaff02146103d357806394ba89a2146103e85780639895e3d814610408576101d4565b80633e150141116101595780635a3b74b9116101335780635a3b74b9146103465780635cffe9de1461036657806376e9d615146103865780637a708e92146103b3576101d4565b80633e150141146102d05780634fe7a6e514610306578063573ade8114610333576101d4565b8062a718a9146101d95780630902f1ac146101ec5780631d2118f91461021757806328dd2d011461023757806335ea6a751461026d578063386497fd146102a3576101d4565b366101d4576101ad33610593565b6101d25760405162461bcd60e51b81526004016101c990615272565b60405180910390fd5b005b600080fd5b6101d26101e7366004614940565b6105d1565b3480156101f857600080fd5b506102016107a3565b60405161020e9190614ef1565b60405180910390f35b34801561022357600080fd5b506101d2610232366004614853565b610805565b34801561024357600080fd5b50610257610252366004614853565b6108d8565b60405161020e9a99989796959493929190615641565b34801561027957600080fd5b5061028d61028836600461481b565b610b83565b60405161020e9a999897969594939291906155f5565b3480156102af57600080fd5b506102c36102be36600461481b565b610e22565b60405161020e919061553b565b3480156102dc57600080fd5b506102f06102eb36600461481b565b610e49565b60405161020e9a99989796959493929190615575565b34801561031257600080fd5b50610326610321366004614bcc565b610f1f565b60405161020e9190614d61565b6101d2610341366004614b23565b610f46565b34801561035257600080fd5b506101d2610361366004614a84565b6112d8565b34801561037257600080fd5b506101d26103813660046149d9565b6114b4565b34801561039257600080fd5b506103a66103a1366004614999565b611918565b60405161020e9190614f3e565b3480156103bf57600080fd5b506101d26103ce3660046148d0565b611a62565b3480156103df57600080fd5b506102c3611b9b565b3480156103f457600080fd5b506101d2610403366004614ab1565b611ba0565b34801561041457600080fd5b506101d261042336600461488b565b611ea9565b34801561043457600080fd5b506101d2610443366004614ab1565b612081565b34801561045457600080fd5b5061046861046336600461481b565b612142565b60405161020e969594939291906155cd565b34801561048657600080fd5b5061049a61049536600461481b565b6122f3565b60405161020e9190615361565b3480156104b357600080fd5b506101d26104c236600461481b565b61232a565b3480156104d357600080fd5b5061032661245e565b3480156104e857600080fd5b506101d26104f7366004614b6c565b61246d565b34801561050857600080fd5b506101d2610517366004614853565b6129f2565b34801561052857600080fd5b506102c3612cf8565b34801561053d57600080fd5b506102c361054c36600461481b565b612cfe565b34801561055d57600080fd5b5061057161056c36600461481b565b612d1f565b60405161020e93929190614df4565b6101d261058e366004614adc565b612d54565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906105c757508115155b925050505b919050565b600260005414156105f45760405162461bcd60e51b81526004016101c99061532a565b6002600090815560355460408051632c1a75cd60e11b815290516001600160a01b0390921691635834eb9a91600480820192602092909190829003018186803b15801561064057600080fd5b505afa158015610654573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106789190614837565b905060006060826001600160a01b031688888888886040516024016106a1959493929190614e17565b60408051601f198184030181529181526020820180516001600160e01b031662a718a960e01b179052516106d59190614d42565b600060405180830381855af49150503d8060008114610710576040519150601f19603f3d011682016040523d82523d6000602084013e610715565b606091505b5091509150816107375760405162461bcd60e51b81526004016101c990615171565b600060608280602001905181019061074f9190614bfc565b9150915081600014610792578060405160200161076c9190614d42565b60408051601f198184030181529082905262461bcd60e51b82526101c991600401614f49565b505060016000555050505050505050565b606060398054806020026020016040519081016040528092919081815260200182805480156107fb57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116107dd575b5050505050905090565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b15801561084957600080fd5b505afa15801561085d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108819190614837565b6001600160a01b0316146108a75760405162461bcd60e51b81526004016101c9906151a8565b6001600160a01b03918216600090815260376020526040902060090180546001600160a01b03191691909216179055565b6001600160a01b03808316600090815260376020526040808220600681015491516370a0823160e01b81529293849384938493849384938493849384938493919216906370a082319061092f908f90600401614d61565b60206040518083038186803b15801561094757600080fd5b505afa15801561095b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097f9190614be4565b9a5061098b8c82612fa9565b909a50985061099a8c826130bd565b6001830154600784015460405163e78c9b3b60e01b8152939b5091995096506001600160a01b03169063e78c9b3b906109d7908f90600401614d61565b60206040518083038186803b1580156109ef57600080fd5b505afa158015610a03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a279190614be4565b6007820154604051631e739ae360e21b81529197506001600160a01b0316906379ce6b8c90610a5a908f90600401614d61565b60206040518083038186803b158015610a7257600080fd5b505afa158015610a86573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aaa9190614cab565b60098201546001600160a01b038e16600090815260386020908152604091829020825191820190925290548152919450610aee9190600160d01b900460ff16613176565b6008820154604051633ba641e960e21b81529193506001600160a01b03169063ee9907a490610b21908f90600401614d61565b60206040518083038186803b158015610b3957600080fd5b505afa158015610b4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b719190614be4565b9350509295989b9194979a5092959850565b600080600080600080600080600080610b9a61468b565b506001600160a01b03808c1660008181526037602090815260409182902082516101a08101845281548152600182015481840152600282015481850152600382015460608201526004820154608082015283519283019093526005810154825260a08301919091526006810154841660c083018190526007820154851660e08401526008820154851661010084015260099091015493841661012083015264ffffffffff600160a01b85041661014083015260ff600160c81b850481161515610160840152600160d01b90940490931661018082015291610c81919063ffffffff61318d16565b8160e001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cbe57600080fd5b505afa158015610cd2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf69190614be4565b8261010001516001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610d3457600080fd5b505afa158015610d48573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d6c9190614be4565b8360200151846040015185606001518660e001516001600160a01b03166390f6fcf26040518163ffffffff1660e01b815260040160206040518083038186803b158015610db857600080fd5b505afa158015610dcc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df09190614be4565b876000015188608001518961014001519a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b6001600160a01b0381166000908152603760205260408120610e4390613231565b92915050565b6000806000806000806000806000806000603760008d6001600160a01b03166001600160a01b031681526020019081526020016000209050610e8d81600501613294565b610e99826005016132a5565b610ea5836005016132b4565b610eb1846005016132c9565b60098501546001600160a01b0316610ecb600587016132a5565b1515610ed9600588016132dc565b610ee5886005016132ee565b610ef1896005016132f7565b610efd8a600501613309565b9a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b60398181548110610f2c57fe5b6000918252602090912001546001600160a01b0316905081565b60026000541415610f695760405162461bcd60e51b81526004016101c99061532a565b6002600055610f766146f9565b6001600160a01b0385166000908152603760205260409020610f988382612fa9565b60208401819052818452610fb2919063ffffffff61331b16565b60808301526000846002811115610fc557fe5b90506001816002811115610fd557fe5b14610fe4578260200151610fe7565b82515b604084015260001986148015906110015750826040015186105b1561100e57604083018690525b82516020840151604080860151905163152be4bd60e31b815273__$69254465eb8f179ea24caa73cf68b23524$__9363a95f25e89361105b9388938e938e938a938e933490600401615402565b60006040518083038186803b15801561107357600080fd5b505af4158015611087573d6000803e3d6000fd5b5050505061109482613340565b60018160028111156110a257fe5b14156111175760078201546040808501519051632770a7eb60e21b81526001600160a01b0390921691639dc29fac916110e091889190600401614d75565b600060405180830381600087803b1580156110fa57600080fd5b505af115801561110e573d6000803e3d6000fd5b50505050611182565b60088201546040808501519051632770a7eb60e21b81526001600160a01b0390921691639dc29fac9161114f91889190600401614d75565b600060405180830381600087803b15801561116957600080fd5b505af115801561117d573d6000803e3d6000fd5b505050505b604083015161119c9083908990600063ffffffff6133f816565b604083015160808401516111b59163ffffffff6136d916565b6111ed5760098201546001600160a01b03851660009081526038602052604081206111ed929091600160d01b90910460ff169061371b565b6006820154604084015161121b916001600160a01b038a81169233929190911690600063ffffffff61375016565b61122d876001600160a01b03166138de565b1561126f57600061124b8460400151346136d990919063ffffffff16565b9050801561126d5761126d6001600160a01b038916338363ffffffff61390316565b505b336001600160a01b0316846001600160a01b0316886001600160a01b03167f81cfb79463601de705d4cf6b8d69112983d76a685120e5e4d3581f30871b87fc8660400151426040516112c292919061552d565b60405180910390a4505060016000555050505050565b600260005414156112fb5760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03808416825260376020818152604080852033865260388352948190206035548251631f94a27560e31b8152925173__$69254465eb8f179ea24caa73cf68b23524$__9663a6b84c0b9689968c9691959460399493169263fca513a8926004808201939291829003018186803b15801561138257600080fd5b505afa158015611396573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ba9190614837565b6040518763ffffffff1660e01b81526004016113db96959493929190615399565b60006040518083038186803b1580156113f357600080fd5b505af4158015611407573d6000803e3d6000fd5b50505050600981015433600090815260386020526040902061143391600160d01b900460ff16846139bc565b81156114735760405133906001600160a01b038516907e058a56ea94653cdf4f152d227ace22d4c00ad99e2a43f58cb7d9e3feb295f290600090a36114aa565b60405133906001600160a01b038516907f44c58d81365b66dd4b1a7f36c25aa97b8c71c361ee4937adc1a00000227db5dd90600090a35b5050600160005550565b600260005414156114d75760405162461bcd60e51b81526004016101c99061532a565b60026000556114e4614728565b6001600160a01b038085166000818152603760205260409020600681015490921660a0840181905261151c919063ffffffff61318d16565b825261154161271061153586600963ffffffff6139f716565b9063ffffffff613a3116565b60608301819052611562906127109061153590610bb863ffffffff6139f716565b608083015281518411156115885760405162461bcd60e51b81526004016101c990614f5c565b600082606001511180156115a0575060008260800151115b6115bc5760405162461bcd60e51b81526004016101c99061528e565b60a0820151604051634efecaa560e01b8152879182916001600160a01b0390911690634efecaa5906115f49084908a90600401614d75565b602060405180830381600087803b15801561160e57600080fd5b505af1158015611622573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116469190614be4565b5060a0840151606085015160405163405b019d60e01b81526001600160a01b0385169263405b019d92611682928c92918c918c90600401614daf565b600060405180830381600087803b15801561169c57600080fd5b505af11580156116b0573d6000803e3d6000fd5b5050505060006116d68560a00151896001600160a01b031661318d90919063ffffffff16565b606086015186519192506116f0919063ffffffff61331b16565b811461170e5760405162461bcd60e51b81526004016101c990615033565b8373__$5e6137a1b5a0a366e2874209b5abf71c10$__638acb830b90918a886000015161174c8a608001518b606001516136d990919063ffffffff16565b8a608001516040518663ffffffff1660e01b8152600401611771959493929190615461565b60006040518083038186803b15801561178957600080fd5b505af415801561179d573d6000803e3d6000fd5b505050508460a001516001600160a01b0316634efecaa5603560009054906101000a90046001600160a01b03166001600160a01b031663ee8912966040518163ffffffff1660e01b815260040160206040518083038186803b15801561180257600080fd5b505afa158015611816573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061183a9190614837565b87608001516040518363ffffffff1660e01b815260040161185c929190614d75565b602060405180830381600087803b15801561187657600080fd5b505af115801561188a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118ae9190614be4565b50876001600160a01b0316896001600160a01b03167f5b8f46461c1dd69fb968f1a003acee221ea3e19540e350233b612ddb43433b55898860600151896080015142604051611900949392919061555a565b60405180910390a35050600160005550505050505050565b600073__$7347ff53b2b46c21e26a37164ae7f6739f$__63865cb0ce8585856037603860008a6001600160a01b03166001600160a01b031681526020019081526020016000206039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b1580156119ae57600080fd5b505afa1580156119c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119e69190614837565b6040518863ffffffff1660e01b8152600401611a089796959493929190614e6f565b60206040518083038186803b158015611a2057600080fd5b505af4158015611a34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a589190614bb0565b90505b9392505050565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b158015611aa657600080fd5b505afa158015611aba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ade9190614837565b6001600160a01b031614611b045760405162461bcd60e51b81526004016101c9906151a8565b6001600160a01b038516600090815260376020526040908190209051632d621e9960e21b815273__$5e6137a1b5a0a366e2874209b5abf71c10$__9163b5887a6491611b5b9190889088908890889060040161536b565b60006040518083038186803b158015611b7357600080fd5b505af4158015611b87573d6000803e3d6000fd5b50505050611b9485613a73565b5050505050565b600281565b60026000541415611bc35760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03831681526037602052604081209080611beb3384612fa9565b915091506000846002811115611bfd57fe5b336000908152603860205260409081902090516306c4439560e31b815291925073__$69254465eb8f179ea24caa73cf68b23524$__916336221ca891611c4e918891908890889088906004016154f7565b60006040518083038186803b158015611c6657600080fd5b505af4158015611c7a573d6000803e3d6000fd5b50505050611c8784613340565b6001816002811115611c9557fe5b1415611d6c576007840154604051632770a7eb60e21b81526001600160a01b0390911690639dc29fac90611ccf9033908790600401614d75565b600060405180830381600087803b158015611ce957600080fd5b505af1158015611cfd573d6000803e3d6000fd5b50505060088501546040516340c10f1960e01b81526001600160a01b0390911691506340c10f1990611d359033908790600401614d75565b600060405180830381600087803b158015611d4f57600080fd5b505af1158015611d63573d6000803e3d6000fd5b50505050611e3e565b6008840154604051632770a7eb60e21b81526001600160a01b0390911690639dc29fac90611da09033908690600401614d75565b600060405180830381600087803b158015611dba57600080fd5b505af1158015611dce573d6000803e3d6000fd5b5050505060078401546003850154604051630ab714fb60e11b81526001600160a01b039092169163156e29f691611e0b9133918791600401614d8e565b600060405180830381600087803b158015611e2557600080fd5b505af1158015611e39573d6000803e3d6000fd5b505050505b611e51848760008063ffffffff6133f816565b336001600160a01b0316866001600160a01b03167fea368a40e9570069bb8e6511d668293ad2e1f03b0d982431fd223de9f3b70ca642604051611e94919061553b565b60405180910390a35050600160005550505050565b60026000541415611ecc5760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03808616825260376020526040918290206006810154925163cf478a7960e01b815290929091169073__$69254465eb8f179ea24caa73cf68b23524$__9063cf478a7990611f309085908a9089906004016153e3565b60006040518083038186803b158015611f4857600080fd5b505af4158015611f5c573d6000803e3d6000fd5b50505050611f6982613340565b611f7c828760008763ffffffff6133f816565b82611fb55760098201546001600160a01b0386166000908152603860205260408120611fb5929091600160d01b90910460ff16906139bc565b6006820154604051634efecaa560e01b81526001600160a01b0390911690634efecaa590611fe99088908890600401614d75565b602060405180830381600087803b15801561200357600080fd5b505af1158015612017573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061203b9190614be4565b50846001600160a01b0316866001600160a01b03167f9c4ed599cd8555b9c1e8cd7643240d7d71eb76b792948c49fcb4d411f7b6b3c68642604051611e9492919061552d565b603554604080516385c858b160e01b8152905133926001600160a01b0316916385c858b1916004808301926020929190829003018186803b1580156120c557600080fd5b505afa1580156120d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120fd9190614837565b6001600160a01b0316146121235760405162461bcd60e51b81526004016101c9906151a8565b6001600160a01b03909116600090815260376020526040902060050155565b6001600160a01b038116600090815260386020908152604080832081518084018352905481526039805483518186028101860190945280845285948594859485948594612251948c9460379493909290918301828280156121cc57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116121ae575b505060355460408051631f94a27560e31b815290516001600160a01b03909216945063fca513a893506004808201935060209291829003018186803b15801561221457600080fd5b505afa158015612228573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061224c9190614837565b613b48565b60405163d609bd1b60e01b8152949a5092985095509350915073__$7347ff53b2b46c21e26a37164ae7f6739f$__9063d609bd1b9061229890899089908790600401615544565b60206040518083038186803b1580156122b057600080fd5b505af41580156122c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122e89190614be4565b935091939550919395565b6122fb614767565b506001600160a01b03166000908152603760209081526040918290208251918201909252600590910154815290565b6000612334614048565b60025490915060ff168061234b575061234b61404d565b80612357575060015481115b6123735760405162461bcd60e51b81526004016101c990615123565b60025460ff16158015612394576002805460ff191660019081179091558290555b603580546001600160a01b0319166001600160a01b03858116919091179182905560408051633efbbf0f60e21b81529051929091169163fbeefc3c91600480820192602092909190829003018186803b1580156123f057600080fd5b505afa158015612404573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124289190614837565b603680546001600160a01b0319166001600160a01b03929092169190911790558015612459576002805460ff191690555b505050565b6035546001600160a01b031681565b600260005414156124905760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03851681526037602090815260408083203384526038909252822090916125de6124ca60058501613294565b600a0a61153588603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561251f57600080fd5b505afa158015612533573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125579190614837565b6001600160a01b031663b3596f078c6040518263ffffffff1660e01b81526004016125829190614d61565b60206040518083038186803b15801561259a57600080fd5b505afa1580156125ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125d29190614be4565b9063ffffffff6139f716565b905073__$69254465eb8f179ea24caa73cf68b23524$__63dfb6b2d7848989858a6019603760386000336001600160a01b03166001600160a01b031681526020019081526020016000206039603560009054906101000a90046001600160a01b03166001600160a01b031663fca513a86040518163ffffffff1660e01b815260040160206040518083038186803b15801561267857600080fd5b505afa15801561268c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126b09190614837565b6040518b63ffffffff1660e01b81526004016126d59a9998979695949392919061548d565b60006040518083038186803b1580156126ed57600080fd5b505af4158015612701573d6000803e3d6000fd5b50505050600383015461271384613340565b612726848960008a63ffffffff6133f816565b600186600281111561273457fe5b600281111561273f57fe5b1415612838576007840154604051630ab714fb60e11b81526001600160a01b039091169063156e29f69061277b9033908b908690600401614d8e565b600060405180830381600087803b15801561279557600080fd5b505af11580156127a9573d6000803e3d6000fd5b505050506007840154604051631e739ae360e21b81526000916001600160a01b0316906379ce6b8c906127e0903390600401614d61565b60206040518083038186803b1580156127f857600080fd5b505afa15801561280c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128309190614cab565b90505061289f565b60088401546040516340c10f1960e01b81526001600160a01b03909116906340c10f199061286c9033908b90600401614d75565b600060405180830381600087803b15801561288657600080fd5b505af115801561289a573d6000803e3d6000fd5b505050505b60098401546040805160208101909152845481526128c691600160d01b900460ff16614053565b6128e65760098401546128e6908490600160d01b900460ff16600161371b565b6006840154604051634efecaa560e01b81526001600160a01b0390911690634efecaa59061291a9033908b90600401614d75565b602060405180830381600087803b15801561293457600080fd5b505af1158015612948573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061296c9190614be4565b5061ffff8516336001600160a01b038a167fe002884724be85e729c98360169e709585b299ace6fbe12aa791d2fee6f652808a8a60018c60028111156129ae57fe5b60028111156129b957fe5b146129c85789600201546129ca565b865b426040516129db949392919061555a565b60405180910390a450506001600055505050505050565b60026000541415612a155760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03808416825260376020526040808320600781015491516370a0823160e01b81529093919092169182906370a0823190612a61908790600401614d61565b60206040518083038186803b158015612a7957600080fd5b505afa158015612a8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ab19190614be4565b905060008111612ad35760405162461bcd60e51b81526004016101c9906150c6565b6000612b0c612afb6aa56fa5b99019a5c8000000612aef614063565b9063ffffffff61331b16565b60038601549063ffffffff61407316565b90506000836001600160a01b031663e78c9b3b876040518263ffffffff1660e01b8152600401612b3c9190614d61565b60206040518083038186803b158015612b5457600080fd5b505afa158015612b68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b8c9190614be4565b90508460010154811080612b9f57508181115b612bbb5760405162461bcd60e51b81526004016101c990614fe4565b612bc485613340565b604051632770a7eb60e21b81526001600160a01b03851690639dc29fac90612bf29089908790600401614d75565b600060405180830381600087803b158015612c0c57600080fd5b505af1158015612c20573d6000803e3d6000fd5b5050506003860154604051630ab714fb60e11b81526001600160a01b038716925063156e29f691612c57918a918891600401614d8e565b600060405180830381600087803b158015612c7157600080fd5b505af1158015612c85573d6000803e3d6000fd5b50612c9f925087915089905060008063ffffffff6133f816565b856001600160a01b0316876001600160a01b03167f443060d15ff6dac05881a7c07a46ef8085d8af4399e436be6c25250df40c5f1842604051612ce2919061553b565b60405180910390a3505050505050506001600055565b60001981565b6001600160a01b0381166000908152603760205260408120610e43906140b5565b6001600160a01b0390811660009081526037602052604090206006810154600782015460089092015490831693918316921690565b60026000541415612d775760405162461bcd60e51b81526004016101c99061532a565b600260009081556001600160a01b03841681526037602052604090819020905163b25dc48d60e01b815273__$69254465eb8f179ea24caa73cf68b23524$__9063b25dc48d90612dcd908490879060040161552d565b60006040518083038186803b158015612de557600080fd5b505af4158015612df9573d6000803e3d6000fd5b50505060068201546040516370a0823160e01b81526001600160a01b03909116915060009082906370a0823190612e34903390600401614d61565b60206040518083038186803b158015612e4c57600080fd5b505afa158015612e60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e849190614be4565b159050612e9083613340565b612ea3838787600063ffffffff6133f816565b8015612ed2576009830154336000908152603860205260409020612ed291600160d01b900460ff1660016139bc565b6040516394362e8b60e01b81526001600160a01b038316906394362e8b90612f009033908990600401614d75565b600060405180830381600087803b158015612f1a57600080fd5b505af1158015612f2e573d6000803e3d6000fd5b50612f4a925050506001600160a01b0387163384886001613750565b8361ffff16336001600160a01b0316876001600160a01b03167fc12c57b1c73a2c3a2ea4613e9476abb3d8d146857aab7329e24243fb59710c828842604051612f9492919061552d565b60405180910390a45050600160005550505050565b60078101546040516370a0823160e01b815260009182916001600160a01b03909116906370a0823190612fe0908790600401614d61565b60206040518083038186803b158015612ff857600080fd5b505afa15801561300c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130309190614be4565b60088401546040516370a0823160e01b81526001600160a01b03909116906370a0823190613062908890600401614d61565b60206040518083038186803b15801561307a57600080fd5b505afa15801561308e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130b29190614be4565b915091509250929050565b600781015460405163631a6fd560e11b815260009182916001600160a01b039091169063c634dfaa906130f4908790600401614d61565b60206040518083038186803b15801561310c57600080fd5b505afa158015613120573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131449190614be4565b600884015460405163631a6fd560e11b81526001600160a01b039091169063c634dfaa90613062908890600401614d61565b815160016002830281019190911c16151592915050565b6000613198836138de565b156131ae57506001600160a01b03811631610e43565b6040516370a0823160e01b81526001600160a01b038416906370a08231906131da908590600401614d61565b60206040518083038186803b1580156131f257600080fd5b505afa158015613206573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061322a9190614be4565b9050610e43565b6009810154600090600160a01b900464ffffffffff164281141561325b57505060048101546105cc565b60006105c7846004015461328886600201548760090160149054906101000a900464ffffffffff16614109565b9063ffffffff61407316565b5460301c610f01600160d01b031690565b54670fffffffffff0000191690565b5460101c650fffffff0001600160f01b031690565b5460201c630fff0001600160e01b031690565b54603a1c6003600160c61b0316151590565b54603b1c151590565b5460381c600f600160c81b0316151590565b5460391c6007600160c71b0316151590565b600082820183811015611a5b5760405162461bcd60e51b81526004016101c990614fad565b600061334b8261416e565b905080156133d4576001820154600983015460009161337791600160a01b900464ffffffffff16614283565b835490915061338d90829063ffffffff61407316565b8355600283015460098401546000916133b391600160a01b900464ffffffffff16614109565b90506133cc84600401548261407390919063ffffffff16565b600485015550505b50600901805464ffffffffff60a01b1916600160a01b4264ffffffffff1602179055565b60078401546040805163487b7e7960e11b815290516000926001600160a01b0316916390f6fcf2916004808301926020929190829003018186803b15801561343f57600080fd5b505afa158015613453573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134779190614be4565b600686015490915060009061349e906001600160a01b03878116911663ffffffff61318d16565b6009870154909150600090819081906001600160a01b03166357e37af0896134dc896134d0898d63ffffffff61331b16565b9063ffffffff6136d916565b8c60070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561352c57600080fd5b505afa158015613540573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135649190614be4565b8d60080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156135b457600080fd5b505afa1580156135c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135ec9190614be4565b8a6040518663ffffffff1660e01b815260040161360d959493929190614ec3565b60606040518083038186803b15801561362557600080fd5b505afa158015613639573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061365d9190614c7e565b60018c0183905560038c0182905560028c018190558b5460048d01546040519497509295509093506001600160a01b038b16927f131cf1f61e39fd78f61f07d78533f5b6c13629c80ef6965983e92c72efbaa4a4926136c692889288928c9289929091906155cd565b60405180910390a2505050505050505050565b6000611a5b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506142e3565b816002028161372b57600061372e565b60015b60ff16901b826002026001901b19846000015416178360000181905550505050565b8161375a57611b94565b613763856138de565b156138c357813410156137885760405162461bcd60e51b81526004016101c9906151fb565b6001600160a01b038316301461381b576000836001600160a01b03168361c350906040516137b590614d5e565b600060405180830381858888f193505050503d80600081146137f3576040519150601f19603f3d011682016040523d82523d6000602084013e6137f8565b606091505b50509050806138195760405162461bcd60e51b81526004016101c990615245565b505b80801561382757508134115b156138be5760006001600160a01b038516613848348563ffffffff6136d916565b61c3509060405161385890614d5e565b600060405180830381858888f193505050503d8060008114613896576040519150601f19603f3d011682016040523d82523d6000602084013e61389b565b606091505b50509050806138bc5760405162461bcd60e51b81526004016101c990615245565b505b611b94565b611b946001600160a01b03861685858563ffffffff61430f16565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b8061390d57612459565b613916836138de565b156139a2576000826001600160a01b03168261c3509060405161393890614d5e565b600060405180830381858888f193505050503d8060008114613976576040519150601f19603f3d011682016040523d82523d6000602084013e61397b565b606091505b505090508061399c5760405162461bcd60e51b81526004016101c990615245565b50612459565b6124596001600160a01b038416838363ffffffff61436d16565b81600202600101816139cf5760006139d2565b60015b60ff16901b826002026001016001901b19846000015416178360000181905550505050565b600082613a0657506000610e43565b82820282848281613a1357fe5b0414611a5b5760405162461bcd60e51b81526004016101c990615085565b6000611a5b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061438c565b6000805b603954811015613ac057826001600160a01b031660398281548110613a9857fe5b6000918252602090912001546001600160a01b03161415613ab857600191505b600101613a77565b5080613b4457603980546001600160a01b0384166000818152603760205260408120600901805460ff909416600160d01b0260ff60d01b19909416939093179092558254600181018455929091527fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d390910180546001600160a01b03191690911790555b5050565b6000806000806000613b5861477a565b613b61896143c3565b15613b7e575060009450849350839250829150600019905061403b565b600060e08201525b87518160e001511015613f8e5760e0810151613ba9908a9063ffffffff6143c816565b613bb257613f7e565b878160e0015181518110613bc257fe5b6020908102919091018101516001600160a01b031661020083018190526000908152908b905260409020613bf8600582016143d8565b6080860181905260c08601929092525060a0840191909152600a0a602083015261020082015160405163b3596f0760e01b81526001600160a01b038a169163b3596f0791613c499190600401614d61565b60206040518083038186803b158015613c6157600080fd5b505afa158015613c75573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c999190614be4565b825260a082015115801590613cbf575060e0820151613cbf908b9063ffffffff61317616565b15613df05760068101546040516370a0823160e01b81526001600160a01b03909116906370a0823190613cf6908f90600401614d61565b60206040518083038186803b158015613d0e57600080fd5b505afa158015613d22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d469190614be4565b6040830181905260208301518351600092613d6b92916115359163ffffffff6139f716565b610120840151909150613d84908263ffffffff61331b16565b61012084015260a0830151613db690613da490839063ffffffff6139f716565b6101808501519063ffffffff61331b16565b61018084015260c0830151613de890613dd690839063ffffffff6139f716565b6101a08501519063ffffffff61331b16565b6101a0840152505b60e0820151613e06908b9063ffffffff61405316565b15613f7c5760078101546040516370a0823160e01b81526001600160a01b03909116906370a0823190613e3d908f90600401614d61565b60206040518083038186803b158015613e5557600080fd5b505afa158015613e69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e8d9190614be4565b826060018181525050613f3d8160080160009054906101000a90046001600160a01b03166001600160a01b03166370a082318e6040518263ffffffff1660e01b8152600401613edc9190614d61565b60206040518083038186803b158015613ef457600080fd5b505afa158015613f08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f2c9190614be4565b60608401519063ffffffff61331b16565b6060830181905260208301518351613f7592613f6392916115359163ffffffff6139f716565b6101408401519063ffffffff61331b16565b6101408301525b505b60e0810180516001019052613b86565b600081610120015111613fa2576000613fbd565b610120810151610180820151613fbd9163ffffffff613a3116565b610180820152610120810151613fd4576000613fef565b6101208101516101a0820151613fef9163ffffffff613a3116565b6101a0820181905261012082015161014083015161400c9261441f565b61010082018190526101208201516101408301516101808401516101a090940151919850965091945090925090505b9550955095509550959050565b600290565b303b1590565b9051600160029092021c16151590565b6b033b2e3c9fd0803ce800000090565b6000611a5b6b033b2e3c9fd0803ce8000000611535614098868663ffffffff6139f716565b60026b033b2e3c9fd0803ce80000005b049063ffffffff61331b16565b6009810154600090600160a01b900464ffffffffff16428114156140dc57505080546105cc565b60006105c7846000015461328886600101548760090160149054906101000a900464ffffffffff16614283565b6000806141234264ffffffffff851663ffffffff6136d916565b9050600061413b856301e1338063ffffffff613a3116565b90506141658261415961414c614063565b849063ffffffff61331b16565b9063ffffffff61444f16565b95945050505050565b6000610e438260080160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156141c357600080fd5b505afa1580156141d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141fb9190614be4565b8360070160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561424b57600080fd5b505afa15801561425f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aef9190614be4565b60008061429d4264ffffffffff851663ffffffff6136d916565b905060006142c66142b16301e133806144a9565b6142ba846144a9565b9063ffffffff6144bf16565b90506141656142d3614063565b612aef878463ffffffff61407316565b600081848411156143075760405162461bcd60e51b81526004016101c99190614f49565b505050900390565b614367846323b872dd60e01b85858560405160240161433093929190614e4b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526144ea565b50505050565b6124598363a9059cbb60e01b8484604051602401614330929190614d75565b600081836143ad5760405162461bcd60e51b81526004016101c99190614f49565b5060008385816143b957fe5b0495945050505050565b511590565b9051600360029092021c16151590565b54670fffffffffff000019811691601082901c650fffffff0001600160f01b031691602081901c630fff0001600160e01b03169160309190911c610f01600160d01b031690565b60008261442f5750600019611a5b565b611a5883614443868563ffffffff61457916565b9063ffffffff61459e16565b60006002820661446b576b033b2e3c9fd0803ce800000061446d565b825b90506002820491505b8115610e43576144868384614073565b9250600282061561449e5761449b8184614073565b90505b600282049150614476565b6000610e4382633b9aca0063ffffffff6139f716565b6000600282046144e28361153561414c876b033b2e3c9fd0803ce80000006139f7565b949350505050565b606061453f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166145bd9092919063ffffffff16565b805190915015612459578080602001905181019061455d9190614bb0565b6124595760405162461bcd60e51b81526004016101c9906152e0565b6000611a5b612710611535614594868663ffffffff6139f716565b60026127106140a8565b6000600282046144e28361153561414c87670de0b6b3a76400006139f7565b6060611a58848460008560606145d285610593565b6145ee5760405162461bcd60e51b81526004016101c9906151c4565b60006060866001600160a01b0316858760405161460b9190614d42565b60006040518083038185875af1925050503d8060008114614648576040519150601f19603f3d011682016040523d82523d6000602084013e61464d565b606091505b509150915081156146615791506144e29050565b8051156146715780518082602001fd5b8360405162461bcd60e51b81526004016101c99190614f49565b604051806101a0016040528060008152602001600081526020016000815260200160008152602001600081526020016146c2614767565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c0820181905260e09091015290565b6040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b6040518060c00160405280600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681525090565b6040518060200160405280600081525090565b60405180610260016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160001515815260200160006001600160a01b031681526020016000151581526020016000151581525090565b60006020828403121561482c578081fd5b8135611a5b81615713565b600060208284031215614848578081fd5b8151611a5b81615713565b60008060408385031215614865578081fd5b823561487081615713565b9150602083013561488081615713565b809150509250929050565b600080600080608085870312156148a0578182fd5b84356148ab81615713565b935060208501356148bb81615713565b93969395505050506040820135916060013590565b600080600080600060a086880312156148e7578081fd5b85356148f281615713565b9450602086013561490281615713565b9350604086013561491281615713565b9250606086013561492281615713565b9150608086013561493281615713565b809150509295509295909350565b600080600080600060a08688031215614957578081fd5b853561496281615713565b9450602086013561497281615713565b9350604086013561498281615713565b925060608601359150608086013561493281615728565b6000806000606084860312156149ad578283fd5b83356149b881615713565b925060208401356149c881615713565b929592945050506040919091013590565b600080600080608085870312156149ee578384fd5b84356149f981615713565b93506020850135614a0981615713565b925060408501359150606085013567ffffffffffffffff811115614a2b578182fd5b80860187601f820112614a3c578283fd5b80359150614a51614a4c836156b6565b61568f565b828152886020848401011115614a65578384fd5b8260208301602083013791820160200192909252939692955090935050565b60008060408385031215614a96578182fd5b8235614aa181615713565b9150602083013561488081615728565b60008060408385031215614ac3578182fd5b8235614ace81615713565b946020939093013593505050565b600080600060608486031215614af0578081fd5b8335614afb81615713565b925060208401359150604084013561ffff81168114614b18578182fd5b809150509250925092565b60008060008060808587031215614b38578182fd5b8435614b4381615713565b935060208501359250604085013591506060850135614b6181615713565b939692955090935050565b60008060008060808587031215614b81578182fd5b8435614b8c81615713565b93506020850135925060408501359150606085013561ffff81168114614b61578182fd5b600060208284031215614bc1578081fd5b8151611a5b81615728565b600060208284031215614bdd578081fd5b5035919050565b600060208284031215614bf5578081fd5b5051919050565b60008060408385031215614c0e578182fd5b82519150602083015167ffffffffffffffff811115614c2b578182fd5b80840185601f820112614c3c578283fd5b80519150614c4c614a4c836156b6565b828152866020848401011115614c60578384fd5b614c718360208301602085016156da565b8093505050509250929050565b600080600060608486031215614c92578081fd5b8351925060208401519150604084015190509250925092565b600060208284031215614cbc578081fd5b815164ffffffffff81168114611a5b578182fd5b6000815480845260208085019450838352808320835b83811015614d0b5781546001600160a01b031687529582019560019182019101614ce6565b509495945050505050565b60008151808452614d2e8160208601602086016156da565b601f01601f19169290920160200192915050565b60008251614d548184602087016156da565b9190910192915050565b90565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090614de990830184614d16565b979650505050505050565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b03958616815293851660208501529190931660408301526060820192909252901515608082015260a00190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b600060018060a01b03808a16835280891660208401528760408401528660608401528554608084015260e060a0840152614eac60e0840186614cd0565b915080841660c08401525098975050505050505050565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b6020808252825182820181905260009190848201906040850190845b81811015614f325783516001600160a01b031683529284019291840191600101614f0d565b50909695505050505050565b901515815260200190565b600060208252611a5b6020830184614d16565b60208082526031908201527f5468657265206973206e6f7420656e6f756768206c697175696469747920617660408201527061696c61626c6520746f20626f72726f7760781b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252602f908201527f496e746572657374207261746520726562616c616e636520636f6e646974696f60408201526e1b9cc81dd95c99481b9bdd081b595d608a1b606082015260800190565b60208082526032908201527f5468652061637475616c2062616c616e6365206f66207468652070726f746f636040820152711bdb081a5cc81a5b98dbdb9cda5cdd195b9d60721b606082015260800190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b60208082526038908201527f5573657220646f6573206e6f74206861766520616e7920737461626c6520726160408201527f7465206c6f616e20666f72207468697320726573657276650000000000000000606082015260800190565b6020808252602e908201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560408201526d195b881a5b9a5d1a585b1a5e995960921b606082015260800190565b60208082526017908201527f4c69717569646174696f6e2063616c6c206661696c6564000000000000000000604082015260600190565b602080825260029082015261033360f41b604082015260600190565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b6020808252602a908201527f57726f6e67207573616765206f66204554482e756e6976657273616c5472616e6040820152697366657246726f6d282960b01b606082015260800190565b60208082526013908201527211551217d514905394d1915497d19052531151606a1b604082015260600190565b602080825260029082015261191960f11b604082015260600190565b60208082526032908201527f5468652072657175657374656420616d6f756e7420697320746f6f20736d616c60408201527136103337b9103090233630b9b42637b0b71760711b606082015260800190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b9051815260200190565b9485526001600160a01b03938416602086015291831660408501528216606084015216608082015260a00190565b600087825260018060a01b03808816602084015286604084015285606084015260c060808401526153cd60c0840186614cd0565b915080841660a084015250979650505050505050565b9283526001600160a01b03919091166020830152604082015260600190565b8981526001600160a01b0389811660208301526040820189905261012082019061542b89615706565b8860608401528088166080840152508560a08301528460c08301528360e0830152826101008301529a9950505050505050505050565b9485526001600160a01b0393909316602085015260408401919091526060830152608082015260a00190565b60006101408c835260018060a01b03808d1660208501528b60408501528a60608501528960808501528860a08501528760c08501528660e0850152816101008501526154db82850187614cd0565b925080851661012085015250509b9a5050505050505050505050565b600060a08201905086825285602083015284604083015283606083015261551d83615706565b8260808301529695505050505050565b918252602082015260400190565b90815260200190565b9283526020830191909152604082015260600190565b93845260208401929092526040830152606082015260800190565b998a5260208a0198909852604089019690965260608801949094526001600160a01b03929092166080870152151560a0860152151560c0850152151560e0840152151561010083015215156101208201526101400190565b958652602086019490945260408501929092526060840152608083015260a082015260c00190565b998a5260208a019890985260408901969096526060880194909452608087019290925260a086015260c085015260e084015261010083015264ffffffffff166101208201526101400190565b998a5260208a019890985260408901969096526060880194909452608087019290925260a086015260c085015260e084015264ffffffffff1661010083015215156101208201526101400190565b60405181810167ffffffffffffffff811182821017156156ae57600080fd5b604052919050565b600067ffffffffffffffff8211156156cc578081fd5b50601f01601f191660200190565b60005b838110156156f55781810151838201526020016156dd565b838111156143675750506000910152565b6003811061571057fe5b50565b6001600160a01b038116811461571057600080fd5b801515811461571057600080fdfea264697066735822122016109c0d027be94cb12965b09dd6afa371a6b146a8374cf999645f6a4d14ee2b64736f6c63430006080033";
|
|
|
|
export interface LendingPoolLibraryAddresses {
|
|
["__$69254465eb8f179ea24caa73cf68b23524$__"]: string;
|
|
["__$5e6137a1b5a0a366e2874209b5abf71c10$__"]: string;
|
|
["__$7347ff53b2b46c21e26a37164ae7f6739f$__"]: string;
|
|
}
|