mirror of
https://github.com/Instadapp/aave-protocol-v2.git
synced 2024-07-29 21:47:30 +00:00
1056 lines
56 KiB
TypeScript
1056 lines
56 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(signer?: Signer) {
|
|
super(_abi, _bytecode, signer);
|
|
}
|
|
|
|
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: false,
|
|
internalType: "uint256",
|
|
name: "_originationFee",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_borrowBalanceIncrease",
|
|
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: "_newStableRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_borrowBalanceIncrease",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
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: "_amountMinusFees",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_fees",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_borrowBalanceIncrease",
|
|
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: "_newRateMode",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_newRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
indexed: false,
|
|
internalType: "uint256",
|
|
name: "_borrowBalanceIncrease",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
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: "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: [],
|
|
name: "core",
|
|
outputs: [
|
|
{
|
|
internalType: "contract LendingPoolCore",
|
|
name: "",
|
|
type: "address"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [],
|
|
name: "dataProvider",
|
|
outputs: [
|
|
{
|
|
internalType: "contract LendingPoolDataProvider",
|
|
name: "",
|
|
type: "address"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
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: "getReserveConfigurationData",
|
|
outputs: [
|
|
{
|
|
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"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
type: "function"
|
|
},
|
|
{
|
|
inputs: [
|
|
{
|
|
internalType: "address",
|
|
name: "_reserve",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "getReserveData",
|
|
outputs: [
|
|
{
|
|
internalType: "uint256",
|
|
name: "totalLiquidity",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
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: "utilizationRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "liquidityIndex",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "variableBorrowIndex",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "address",
|
|
name: "aTokenAddress",
|
|
type: "address"
|
|
},
|
|
{
|
|
internalType: "uint40",
|
|
name: "lastUpdateTimestamp",
|
|
type: "uint40"
|
|
}
|
|
],
|
|
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: "totalLiquidityETH",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "totalCollateralETH",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "totalBorrowsETH",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "totalFeesETH",
|
|
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: "currentBorrowBalance",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "principalBorrowBalance",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "borrowRateMode",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "borrowRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "liquidityRate",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "originationFee",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "variableBorrowIndex",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "uint256",
|
|
name: "lastUpdateTimestamp",
|
|
type: "uint256"
|
|
},
|
|
{
|
|
internalType: "bool",
|
|
name: "usageAsCollateralEnabled",
|
|
type: "bool"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
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: [],
|
|
name: "parametersProvider",
|
|
outputs: [
|
|
{
|
|
internalType: "contract LendingPoolParametersProvider",
|
|
name: "",
|
|
type: "address"
|
|
}
|
|
],
|
|
stateMutability: "view",
|
|
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: "address payable",
|
|
name: "_onBehalfOf",
|
|
type: "address"
|
|
}
|
|
],
|
|
name: "repay",
|
|
outputs: [],
|
|
stateMutability: "payable",
|
|
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"
|
|
}
|
|
],
|
|
name: "swapBorrowRateMode",
|
|
outputs: [],
|
|
stateMutability: "nonpayable",
|
|
type: "function"
|
|
}
|
|
];
|
|
|
|
const _bytecode =
|
|
"0x6080604052600060015534801561001557600080fd5b506000805460ff19166001179055614739806100326000396000f3fe6080604052600436106101295760003560e01c80638afaff02116100ab578063c72c4d101161006f578063c72c4d1014610664578063c858f5f914610679578063cd112382146106c2578063d0fc81d2146106fd578063d2d0e06614610712578063f2f4eb261461074857610129565b80638afaff02146105385780639895e3d81461055f578063b334ed86146105a8578063bf92857c146105bd578063c4d66de81461063157610129565b806348ca1300116100f257806348ca13001461039057806358707e06146103c35780635a3b74b9146103f45780635ceae9c41461042f5780635cffe9de1461046557610129565b8062a718a91461012e5780630902f1ac1461017457806328dd2d01146101d957806335ea6a75146102665780633e1501411461030e575b600080fd5b610172600480360360a081101561014457600080fd5b506001600160a01b03813581169160208101358216916040820135169060608101359060800135151561075d565b005b34801561018057600080fd5b50610189610b7e565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156101c55781810151838201526020016101ad565b505050509050019250505060405180910390f35b3480156101e557600080fd5b50610214600480360360408110156101fc57600080fd5b506001600160a01b0381358116916020013516610c91565b604080519a8b5260208b0199909952898901979097526060890195909552608088019390935260a087019190915260c086015260e0850152610100840152151561012083015251908190036101400190f35b34801561027257600080fd5b506102996004803603602081101561028957600080fd5b50356001600160a01b0316610db2565b604080519d8e5260208e019c909c528c8c019a909a5260608c019890985260808b019690965260a08a019490945260c089019290925260e08801526101008701526101208601526101408501526001600160a01b031661016084015264ffffffffff1661018083015251908190036101a00190f35b34801561031a57600080fd5b506103416004803603602081101561033157600080fd5b50356001600160a01b0316610f11565b604080519889526020890197909752878701959095526001600160a01b0390931660608701529015156080860152151560a0850152151560c0840152151560e083015251908190036101000190f35b34801561039c57600080fd5b50610172600480360360208110156103b357600080fd5b50356001600160a01b0316610ffa565b3480156103cf57600080fd5b506103d86113c8565b604080516001600160a01b039092168252519081900360200190f35b34801561040057600080fd5b506101726004803603604081101561041757600080fd5b506001600160a01b03813516906020013515156113d7565b6101726004803603606081101561044557600080fd5b506001600160a01b038135811691602081013591604090910135166116bb565b34801561047157600080fd5b506101726004803603608081101561048857600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156104c357600080fd5b8201836020820111156104d557600080fd5b803590602001918460018302840111640100000000831117156104f757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611ec1945050505050565b34801561054457600080fd5b5061054d612491565b60408051918252519081900360200190f35b34801561056b57600080fd5b506101726004803603608081101561058257600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135612496565b3480156105b457600080fd5b506103d86127ca565b3480156105c957600080fd5b506105f0600480360360208110156105e057600080fd5b50356001600160a01b03166127d9565b604080519889526020890197909752878701959095526060870193909352608086019190915260a085015260c084015260e083015251908190036101000190f35b34801561063d57600080fd5b506101726004803603602081101561065457600080fd5b50356001600160a01b0316612851565b34801561067057600080fd5b506103d8612b26565b34801561068557600080fd5b506101726004803603608081101561069c57600080fd5b5080356001600160a01b0316906020810135906040810135906060013561ffff16612b35565b3480156106ce57600080fd5b50610172600480360360408110156106e557600080fd5b506001600160a01b0381358116916020013516613443565b34801561070957600080fd5b5061054d6139a0565b6101726004803603606081101561072857600080fd5b5080356001600160a01b0316906020810135906040013561ffff166139a6565b34801561075457600080fd5b506103d8613cc8565b60005460ff166107a2576040805162461bcd60e51b815260206004820152601f6024820152600080516020614211833981519152604482015290519081900360640190fd5b6000805460ff19169055836107b681613cd7565b856107c081613cd7565b60355460408051632c1a75cd60e11b815290516000926001600160a01b031691635834eb9a916004808301926020929190829003018186803b15801561080557600080fd5b505afa158015610819573d6000803e3d6000fd5b505050506040513d602081101561082f57600080fd5b5051604080516001600160a01b038b811660248301528a8116604483015289811660648301526084820189905287151560a4808401919091528351808403909101815260c490920183526020820180516001600160e01b031662a718a960e01b17815292518251949550600094606094928716939282918083835b602083106108c95780518252601f1990920191602091820191016108aa565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114610929576040519150601f19603f3d011682016040523d82523d6000602084013e61092e565b606091505b509150915081610985576040805162461bcd60e51b815260206004820152601760248201527f4c69717569646174696f6e2063616c6c206661696c6564000000000000000000604482015290519081900360640190fd5b6000606082806020019051604081101561099e57600080fd5b8151602083018051604051929492938301929190846401000000008211156109c557600080fd5b9083019060208201858111156109da57600080fd5b82516401000000008111828201881017156109f457600080fd5b82525081516020918201929091019080838360005b83811015610a21578181015183820152602001610a09565b50505050905090810190601f168015610a4e5780820380516001836020036101000a031916815260200191505b506040525050509150915081600014610b63578060405160200180807302634b8bab4b230ba34b7b7103330b4b632b21d160651b81525060140182805190602001908083835b60208310610ab35780518252601f199092019160209182019101610a94565b51815160209384036101000a60001901801990921691161790526040805192909401828103601f190183529384905262461bcd60e51b84526004840181815282516024860152825192965094508493604401925085019080838360005b83811015610b28578181015183820152602001610b10565b50505050905090810190601f168015610b555780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50506000805460ff1916600117905550505050505050505050565b60365460408051630240bc6b60e21b815290516060926001600160a01b031691630902f1ac916004808301926000929190829003018186803b158015610bc357600080fd5b505afa158015610bd7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015610c0057600080fd5b8101908080516040519392919084640100000000821115610c2057600080fd5b908301906020820185811115610c3557600080fd5b8251866020820283011164010000000082111715610c5257600080fd5b82525081516020918201928201910280838360005b83811015610c7f578181015183820152602001610c67565b50505050905001604052505050905090565b603754604080516328dd2d0160e01b81526001600160a01b0385811660048301528481166024830152915160009384938493849384938493849384938493849316916328dd2d0191604480830192610140929190829003018186803b158015610cf957600080fd5b505afa158015610d0d573d6000803e3d6000fd5b505050506040513d610140811015610d2457600080fd5b810190808051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919050505099509950995099509950995099509950995099509295989b9194979a5092959850565b6000806000806000806000806000806000806000603760009054906101000a90046001600160a01b03166001600160a01b03166335ea6a758f6040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b031681526020019150506101a06040518083038186803b158015610e3257600080fd5b505afa158015610e46573d6000803e3d6000fd5b505050506040513d6101a0811015610e5d57600080fd5b81019080805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291905050509c509c509c509c509c509c509c509c509c509c509c509c509c5091939597999b9d90929496989a9c50565b600080600080600080600080603760009054906101000a90046001600160a01b03166001600160a01b0316633e1501418a6040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b031681526020019150506101006040518083038186803b158015610f8957600080fd5b505afa158015610f9d573d6000803e3d6000fd5b505050506040513d610100811015610fb457600080fd5b508051602082015160408301516060840151608085015160a086015160c087015160e090970151959e50939c50919a509850965094509092509050919395975091939597565b60005460ff1661103f576040805162461bcd60e51b815260206004820152601f6024820152600080516020614211833981519152604482015290519081900360640190fd5b6000805460ff191690558061105381613cd7565b8161105d81613d8e565b60365460408051639fb8afcd60e01b81526001600160a01b038681166004830152336024830152915160009384938493911691639fb8afcd91604480820192606092909190829003018186803b1580156110b657600080fd5b505afa1580156110ca573d6000803e3d6000fd5b505050506040513d60608110156110e057600080fd5b50805160208201516040909201519094509092509050816111325760405162461bcd60e51b81526004018080602001828103825260378152602001806144376037913960400191505060405180910390fd5b60365460408051631ca19f1960e01b81526001600160a01b03898116600483015233602483015291516000939290921691631ca19f1991604480820192602092909190829003018186803b15801561118957600080fd5b505afa15801561119d573d6000803e3d6000fd5b505050506040513d60208110156111b357600080fd5b5051905060028160028111156111c557fe5b141561128c576036546040805163710ba6c360e11b81526001600160a01b038a81166004830152336024830152604482018790529151919092169163e2174d86916064808301926020929190829003018186803b15801561122557600080fd5b505afa158015611239573d6000803e3d6000fd5b505050506040513d602081101561124f57600080fd5b505161128c5760405162461bcd60e51b815260040180806020018281038252603081526020018061466c6030913960400191505060405180910390fd5b60365460405163f614831160e01b81526001600160a01b03898116600483019081523360248401819052604484018990526064840188905260848401879052600094859493169263f6148311928d92918b918b918b918b9160a4018260028111156112f357fe5b60ff16815260200196505050505050506040805180830381600087803b15801561131c57600080fd5b505af1158015611330573d6000803e3d6000fd5b505050506040513d604081101561134657600080fd5b5080516020909101519092509050336001600160a01b038a167fb3e2773606abfd36b5bd91394b3a54d1398336c65005baf7bf7a05efeffaf75b84600281111561138c57fe5b6040805191825260208201869052818101899052426060830152519081900360800190a350506000805460ff1916600117905550505050505050565b6038546001600160a01b031681565b60005460ff1661141c576040805162461bcd60e51b815260206004820152601f6024820152600080516020614211833981519152604482015290519081900360640190fd5b6000805460ff191690558161143081613cd7565b8261143a81613d8e565b60365460408051630c526de560e11b81526001600160a01b038781166004830152336024830152915160009392909216916318a4dbca91604480820192602092909190829003018186803b15801561149157600080fd5b505afa1580156114a5573d6000803e3d6000fd5b505050506040513d60208110156114bb57600080fd5b50519050806114fb5760405162461bcd60e51b815260040180806020018281038252602a8152602001806145dd602a913960400191505060405180910390fd5b603754604080516376e9d61560e01b81526001600160a01b03888116600483015233602483015260448201859052915191909216916376e9d615916064808301926020929190829003018186803b15801561155557600080fd5b505afa158015611569573d6000803e3d6000fd5b505050506040513d602081101561157f57600080fd5b50516115bc5760405162461bcd60e51b81526004018080602001828103825260308152602001806142d46030913960400191505060405180910390fd5b60365460408051633e94615360e21b81526001600160a01b03888116600483015233602483015287151560448301529151919092169163fa51854c91606480830192600092919082900301818387803b15801561161857600080fd5b505af115801561162c573d6000803e3d6000fd5b5050505083156116705760405133906001600160a01b038716907e058a56ea94653cdf4f152d227ace22d4c00ad99e2a43f58cb7d9e3feb295f290600090a36116a7565b60405133906001600160a01b038716907f44c58d81365b66dd4b1a7f36c25aa97b8c71c361ee4937adc1a00000227db5dd90600090a35b50506000805460ff19166001179055505050565b60005460ff16611700576040805162461bcd60e51b815260206004820152601f6024820152600080516020614211833981519152604482015290519081900360640190fd5b6000805460ff191690558261171481613cd7565b8261171e81613e43565b611726614102565b60365460408051639fb8afcd60e01b81526001600160a01b038981166004830152878116602483015291519190921691639fb8afcd916044808301926060929190829003018186803b15801561177b57600080fd5b505afa15801561178f573d6000803e3d6000fd5b505050506040513d60608110156117a557600080fd5b50805160208083015160409384015185850152848201529083526036548251633faacc6b60e21b81526001600160a01b038a8116600483015288811660248301529351939091169263feab31ac92604480840193919291829003018186803b15801561181057600080fd5b505afa158015611824573d6000803e3d6000fd5b505050506040513d602081101561183a57600080fd5b505160e08201526001600160a01b038616611853613e98565b6001600160a01b031614606082015260208101516118a25760405162461bcd60e51b81526004018080602001828103825260298152602001806146436029913960400191505060405180910390fd5b600019851415806118bb5750336001600160a01b038516145b6118f65760405162461bcd60e51b815260040180806020018281038252604481526020018061469c6044913960600191505060405180910390fd5b60e0810151602082015161190f9163ffffffff613eb016565b608082015260001985148015906119295750806080015185105b1561193657608081018590525b8060600151158061194b575080608001513410155b6119865760405162461bcd60e51b815260040180806020018281038252602881526020018061438d6028913960400191505060405180910390fd5b8060e00151816080015111611bb1576036546080820151604080840151815163da12d96f60e01b81526001600160a01b038b8116600483015289811660248301526000604483018190526064830195909552608482019290925260a48101849052915193169263da12d96f9260c48084019391929182900301818387803b158015611a1057600080fd5b505af1158015611a24573d6000803e3d6000fd5b505060365460608401516001600160a01b03909116925063c7d142379150611a4d576000611a53565b82608001515b88878560800151603560009054906101000a90046001600160a01b03166001600160a01b031663ee8912966040518163ffffffff1660e01b815260040160206040518083038186803b158015611aa857600080fd5b505afa158015611abc573d6000803e3d6000fd5b505050506040513d6020811015611ad257600080fd5b5051604080516001600160e01b031960e089901b1681526001600160a01b039586166004820152938516602485015260448401929092529290921660648201529051608480830192600092919082900301818588803b158015611b3457600080fd5b505af1158015611b48573d6000803e3d6000fd5b505050608080840151604080860151815160008152602081019390935282820152426060830152513394506001600160a01b0389811694508b16927fb718f0b14f03d8c3adf35b15e3da52421b042ac879e5a689011a8b1e0036773d928290030190a4506116a7565b60e08101516080820151611bca9163ffffffff613f1316565b60a0820181905260365460e08301516040808501516020860151825163da12d96f60e01b81526001600160a01b038d811660048301528b81166024830152604482018890526064820195909552608481019290925290941460a48501525191169163da12d96f9160c480830192600092919082900301818387803b158015611c5157600080fd5b505af1158015611c65573d6000803e3d6000fd5b5050505060e081015115611d995760365460608201516001600160a01b039091169063c7d1423790611c98576000611c9e565b8260e001515b88878560e00151603560009054906101000a90046001600160a01b03166001600160a01b031663ee8912966040518163ffffffff1660e01b815260040160206040518083038186803b158015611cf357600080fd5b505afa158015611d07573d6000803e3d6000fd5b505050506040513d6020811015611d1d57600080fd5b5051604080516001600160e01b031960e089901b1681526001600160a01b039586166004820152938516602485015260448401929092529290921660648201529051608480830192600092919082900301818588803b158015611d7f57600080fd5b505af1158015611d93573d6000803e3d6000fd5b50505050505b60365460608201516001600160a01b03909116906328fcf4d390611dbe576000611dd4565b60e0830151611dd490349063ffffffff613f1316565b60a0840151604080516001600160e01b031960e086901b1681526001600160a01b038c166004820152336024820152604481019290925251606480830192600092919082900301818588803b158015611e2c57600080fd5b505af1158015611e40573d6000803e3d6000fd5b50505060a083015160e08401516040808601518151938452602084019290925282810191909152426060830152513393506001600160a01b0388811693508a16917fb718f0b14f03d8c3adf35b15e3da52421b042ac879e5a689011a8b1e0036773d919081900360800190a45050506000805460ff19166001179055505050565b60005460ff16611f06576040805162461bcd60e51b815260206004820152601f6024820152600080516020614211833981519152604482015290519081900360640190fd5b6000805460ff1916905582611f1a81613cd7565b82611f2481613e43565b6000611f2e613e98565b6001600160a01b0316866001600160a01b031614611fc457603654604080516370a0823160e01b81526001600160a01b0392831660048201529051918816916370a0823191602480820192602092909190829003018186803b158015611f9357600080fd5b505afa158015611fa7573d6000803e3d6000fd5b505050506040513d6020811015611fbd57600080fd5b5051611fd2565b6036546001600160a01b0316315b9050848110156120135760405162461bcd60e51b81526004018080602001828103825260318152602001806142316031913960400191505060405180910390fd5b60385460408051630161bfad60e61b8152815160009384936001600160a01b039091169263586feb409260048083019392829003018186803b15801561205857600080fd5b505afa15801561206c573d6000803e3d6000fd5b505050506040513d604081101561208257600080fd5b508051602090910151909250905060006120b46127106120a88a8663ffffffff613f5516565b9063ffffffff613fae16565b905060006120ce6127106120a8848663ffffffff613f5516565b90506000821180156120e05750600081115b61211b5760405162461bcd60e51b81526004018080602001828103825260328152602001806145446032913960400191505060405180910390fd5b6036546040805163fa93b2a560e01b81526001600160a01b038d81166004830152808f166024830152604482018d905291518e938493169163fa93b2a591606480830192600092919082900301818387803b15801561217957600080fd5b505af115801561218d573d6000803e3d6000fd5b50505050816001600160a01b031663ee8725588d8d878e6040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156122145781810151838201526020016121fc565b50505050905090810190601f1680156122415780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561226357600080fd5b505af1158015612277573d6000803e3d6000fd5b505050506000612285613e98565b6001600160a01b03168d6001600160a01b03161461231b57603654604080516370a0823160e01b81526001600160a01b0392831660048201529051918f16916370a0823191602480820192602092909190829003018186803b1580156122ea57600080fd5b505afa1580156122fe573d6000803e3d6000fd5b505050506040513d602081101561231457600080fd5b5051612329565b6036546001600160a01b0316315b905061233b888663ffffffff613eb016565b81146123785760405162461bcd60e51b81526004018080602001828103825260328152602001806144056032913960400191505060405180910390fd5b6036546001600160a01b03166309ac29538e8a61239b898963ffffffff613f1316565b886040518563ffffffff1660e01b815260040180856001600160a01b03166001600160a01b03168152602001848152602001838152602001828152602001945050505050600060405180830381600087803b1580156123f957600080fd5b505af115801561240d573d6000803e3d6000fd5b505050508c6001600160a01b03168e6001600160a01b03167f5b8f46461c1dd69fb968f1a003acee221ea3e19540e350233b612ddb43433b558e8888426040518085815260200184815260200183815260200182815260200194505050505060405180910390a350506000805460ff19166001179055505050505050505050505050565b600281565b60005460ff166124db576040805162461bcd60e51b815260206004820152601f6024820152600080516020614211833981519152604482015290519081900360640190fd5b6000805460ff1916905560365460408051631a59df7760e11b81526001600160a01b0380881660048301529151879392909216916334b3beee91602480820192602092909190829003018186803b15801561253557600080fd5b505afa158015612549573d6000803e3d6000fd5b505050506040513d602081101561255f57600080fd5b50516001600160a01b031633146125a75760405162461bcd60e51b815260040180806020018281038252604b8152602001806144a2604b913960600191505060405180910390fd5b846125b181613cd7565b836125bb81613e43565b6036546040805163e240301960e01b81526001600160a01b038a811660048301529151600093929092169163e240301991602480820192602092909190829003018186803b15801561260c57600080fd5b505afa158015612620573d6000803e3d6000fd5b505050506040513d602081101561263657600080fd5b50519050858110156126795760405162461bcd60e51b81526004018080602001828103825260318152602001806143286031913960400191505060405180910390fd5b6036546040805163afcdbea360e01b81526001600160a01b038b811660048301528a81166024830152604482018a9052881560648301529151919092169163afcdbea391608480830192600092919082900301818387803b1580156126dd57600080fd5b505af11580156126f1573d6000803e3d6000fd5b50506036546040805163fa93b2a560e01b81526001600160a01b038d811660048301528c81166024830152604482018c9052915191909216935063fa93b2a59250606480830192600092919082900301818387803b15801561275257600080fd5b505af1158015612766573d6000803e3d6000fd5b50506040805189815242602082015281516001600160a01b03808d1695508d1693507f9c4ed599cd8555b9c1e8cd7643240d7d71eb76b792948c49fcb4d411f7b6b3c6929181900390910190a350506000805460ff19166001179055505050505050565b6037546001600160a01b031681565b600080600080600080600080603760009054906101000a90046001600160a01b03166001600160a01b031663bf92857c8a6040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b031681526020019150506101006040518083038186803b158015610f8957600080fd5b600061285b613ff0565b60025490915060ff16806128725750612872613ff5565b8061287e575060015481115b6128b95760405162461bcd60e51b815260040180806020018281038252602e815260200180614576602e913960400191505060405180910390fd5b60025460ff161580156128da576002805460ff191660019081179091558290555b603580546001600160a01b0319166001600160a01b0385811691909117918290556040805163076b7fbb60e51b81529051929091169163ed6ff76091600480820192602092909190829003018186803b15801561293657600080fd5b505afa15801561294a573d6000803e3d6000fd5b505050506040513d602081101561296057600080fd5b5051603680546001600160a01b0319166001600160a01b0392831617905560355460408051632f58b80d60e01b815290519190921691632f58b80d916004808301926020929190829003018186803b1580156129bb57600080fd5b505afa1580156129cf573d6000803e3d6000fd5b505050506040513d60208110156129e557600080fd5b5051603780546001600160a01b0319166001600160a01b03928316179055603554604080516302030ec760e11b8152905191909216916304061d8e916004808301926020929190829003018186803b158015612a4057600080fd5b505afa158015612a54573d6000803e3d6000fd5b505050506040513d6020811015612a6a57600080fd5b5051603880546001600160a01b0319166001600160a01b0392831617905560355460408051633efbbf0f60e21b81529051919092169163fbeefc3c916004808301926020929190829003018186803b158015612ac557600080fd5b505afa158015612ad9573d6000803e3d6000fd5b505050506040513d6020811015612aef57600080fd5b5051603980546001600160a01b0319166001600160a01b039092169190911790558015612b21576002805460ff191690555b505050565b6035546001600160a01b031681565b60005460ff16612b7a576040805162461bcd60e51b815260206004820152601f6024820152600080516020614211833981519152604482015290519081900360640190fd5b6000805460ff1916905583612b8e81613cd7565b84612b9881613d8e565b84612ba281613e43565b612baa614149565b60365460408051632e79732b60e11b81526001600160a01b038b8116600483015291519190921691635cf2e656916024808301926020929190829003018186803b158015612bf757600080fd5b505afa158015612c0b573d6000803e3d6000fd5b505050506040513d6020811015612c2157600080fd5b5051612c5e5760405162461bcd60e51b81526004018080602001828103825260248152602001806143046024913960400191505060405180910390fd5b8560021480612c6d5750856001145b612ca85760405162461bcd60e51b81526004018080602001828103825260238152602001806142626023913960400191505060405180910390fd5b856002811115612cb457fe5b816101c001906002811115612cc557fe5b90816002811115612cd257fe5b9052506036546040805163e240301960e01b81526001600160a01b038b811660048301529151919092169163e2403019916024808301926020929190829003018186803b158015612d2257600080fd5b505afa158015612d36573d6000803e3d6000fd5b505050506040513d6020811015612d4c57600080fd5b50516101608201819052871115612d945760405162461bcd60e51b815260040180806020018281038252603681526020018061450e6036913960400191505060405180910390fd5b60375460408051632c6d0e9b60e01b815233600482015290516001600160a01b0390921691632c6d0e9b9160248082019261010092909190829003018186803b158015612de057600080fd5b505afa158015612df4573d6000803e3d6000fd5b505050506040513d610100811015612e0b57600080fd5b506020808201516040808401516060850151608086015160a087015160e09788015115156101e08a015293880193909352938601919091526101008501929092529183015260c08201819052612ea8576040805162461bcd60e51b815260206004820152601b60248201527f54686520636f6c6c61746572616c2062616c616e636520697320300000000000604482015290519081900360640190fd5b806101e0015115612eea5760405162461bcd60e51b815260040180806020018281038252603f8152602001806141d2603f913960400191505060405180910390fd5b60395460408051630e563a7d60e41b8152336004820152602481018a905290516001600160a01b039092169163e563a7d091604480820192602092909190829003018186803b158015612f3c57600080fd5b505afa158015612f50573d6000803e3d6000fd5b505050506040513d6020811015612f6657600080fd5b505160608201819052612faa5760405162461bcd60e51b81526004018080602001828103825260218152602001806142856021913960400191505060405180910390fd5b603760009054906101000a90046001600160a01b03166001600160a01b03166312737c33898984606001518560e0015186610100015187602001516040518763ffffffff1660e01b815260040180876001600160a01b03166001600160a01b03168152602001868152602001858152602001848152602001838152602001828152602001965050505050505060206040518083038186803b15801561304e57600080fd5b505afa158015613062573d6000803e3d6000fd5b505050506040513d602081101561307857600080fd5b505160a0820181905260c082015110156130c35760405162461bcd60e51b815260040180806020018281038252603481526020018061446e6034913960400191505060405180910390fd5b6001816101c0015160028111156130d657fe5b1415613275576036546040805163710ba6c360e11b81526001600160a01b038b81166004830152336024830152604482018b90529151919092169163e2174d86916064808301926020929190829003018186803b15801561313657600080fd5b505afa15801561314a573d6000803e3d6000fd5b505050506040513d602081101561316057600080fd5b505161319d5760405162461bcd60e51b81526004018080602001828103825260398152602001806145a46039913960400191505060405180910390fd5b603854604080516335adc96b60e21b815290516000926001600160a01b03169163d6b725ac916004808301926020929190829003018186803b1580156131e257600080fd5b505afa1580156131f6573d6000803e3d6000fd5b505050506040513d602081101561320c57600080fd5b5051610160830151909150600090613231906064906120a8908563ffffffff613f5516565b9050808911156132725760405162461bcd60e51b815260040180806020018281038252603c815260200180614607603c913960400191505060405180910390fd5b50505b60365460608201516101c0830151604051630deb1bf960e21b81526001600160a01b038c8116600483019081523360248401819052604484018e90526064840186905291909516946337ac6fe4948e9492938e939192906084018260028111156132db57fe5b60ff168152602001955050505050506040805180830381600087803b15801561330357600080fd5b505af1158015613317573d6000803e3d6000fd5b505050506040513d604081101561332d57600080fd5b5080516020909101516101208301526101a08201526036546040805163fa93b2a560e01b81526001600160a01b038b81166004830152336024830152604482018b90529151919092169163fa93b2a591606480830192600092919082900301818387803b15801561339d57600080fd5b505af11580156133b1573d6000803e3d6000fd5b5050506101a0820151606080840151610120850151604080518d8152602081018d9052808201959095529284019190915260808301524260a08301525161ffff8816925033916001600160a01b038c16917f1e77446728e5558aa1b7e81e0cdab9cc1b075ba893b740600c76a315c2caa5539181900360c00190a450506000805460ff19166001179055505050505050565b60005460ff16613488576040805162461bcd60e51b815260206004820152601f6024820152600080516020614211833981519152604482015290519081900360640190fd5b6000805460ff191690558161349c81613cd7565b60365460408051639fb8afcd60e01b81526001600160a01b0386811660048301528581166024830152915160009384931691639fb8afcd916044808301926060929190829003018186803b1580156134f357600080fd5b505afa158015613507573d6000803e3d6000fd5b505050506040513d606081101561351d57600080fd5b50602081015160409091015190925090508161356a5760405162461bcd60e51b815260040180806020018281038252602e8152602001806142a6602e913960400191505060405180910390fd5b600160365460408051631ca19f1960e01b81526001600160a01b038981166004830152888116602483015291519190921691631ca19f19916044808301926020929190829003018186803b1580156135c157600080fd5b505afa1580156135d5573d6000803e3d6000fd5b505050506040513d60208110156135eb57600080fd5b505160028111156135f857fe5b146136345760405162461bcd60e51b81526004018080602001828103825260348152602001806143596034913960400191505060405180910390fd5b60365460408051631bffeac360e21b81526001600160a01b038881166004830152878116602483015291516000939290921691636fffab0c91604480820192602092909190829003018186803b15801561368d57600080fd5b505afa1580156136a1573d6000803e3d6000fd5b505050506040513d60208110156136b757600080fd5b5051603654604080516362a00a4760e11b81526001600160a01b038a811660048301529151939450600093919092169163c540148e916024808301926020929190829003018186803b15801561370c57600080fd5b505afa158015613720573d6000803e3d6000fd5b505050506040513d602081101561373657600080fd5b505160365460408051631100f3b160e31b81526001600160a01b038b81166004830152915193945060009391909216916388079d88916024808301926020929190829003018186803b15801561378b57600080fd5b505afa15801561379f573d6000803e3d6000fd5b505050506040513d60208110156137b557600080fd5b5051603854604080516346f4f8d160e01b815290519293506000926138579261384a926001600160a01b03909116916346f4f8d191600480820192602092909190829003018186803b15801561380a57600080fd5b505afa15801561381e573d6000803e3d6000fd5b505050506040513d602081101561383457600080fd5b505161383e613ffb565b9063ffffffff613eb016565b839063ffffffff61400b16565b90508284108061386657508084115b15613957576036546040805163af825b0760e01b81526001600160a01b038c811660048301528b81166024830152604482018990529151600093929092169163af825b079160648082019260209290919082900301818787803b1580156138cc57600080fd5b505af11580156138e0573d6000803e3d6000fd5b505050506040513d60208110156138f657600080fd5b50516040805182815260208101899052428183015290519192506001600160a01b03808c1692908d16917f5050ad184862424ee0852d1838d355ad65bed1e5e6da67ac9a2dac1922677f60919081900360600190a35050505050505061398e565b60405162461bcd60e51b815260040180806020018281038252602f8152602001806143d6602f913960400191505060405180910390fd5b50506000805460ff1916600117905550565b60001981565b60005460ff166139eb576040805162461bcd60e51b815260206004820152601f6024820152600080516020614211833981519152604482015290519081900360640190fd5b6000805460ff19169055826139ff81613cd7565b83613a0981613d8e565b83613a1381613e43565b60365460408051631a59df7760e11b81526001600160a01b038981166004830152915160009392909216916334b3beee91602480820192602092909190829003018186803b158015613a6457600080fd5b505afa158015613a78573d6000803e3d6000fd5b505050506040513d6020811015613a8e57600080fd5b5051604080516370a0823160e01b815233600482015290519192506000916001600160a01b038416916370a08231916024808301926020929190829003018186803b158015613adc57600080fd5b505afa158015613af0573d6000803e3d6000fd5b505050506040513d6020811015613b0657600080fd5b505160365460408051632f35bfe960e21b81526001600160a01b038c81166004830152336024830152604482018c90529315606482018190529151919450929091169163bcd6ffa491608480830192600092919082900301818387803b158015613b6f57600080fd5b505af1158015613b83573d6000803e3d6000fd5b5050604080516394362e8b60e01b8152336004820152602481018b905290516001600160a01b03861693506394362e8b9250604480830192600092919082900301818387803b158015613bd557600080fd5b505af1158015613be9573d6000803e3d6000fd5b5050603654604080516328fcf4d360e01b81526001600160a01b038d81166004830152336024830152604482018d905291519190921693506328fcf4d39250349160648082019260009290919082900301818588803b158015613c4b57600080fd5b505af1158015613c5f573d6000803e3d6000fd5b5050604080518b8152426020820152815161ffff8c1695503394506001600160a01b038e1693507fc12c57b1c73a2c3a2ea4613e9476abb3d8d146857aab7329e24243fb59710c82929181900390910190a450506000805460ff19166001179055505050505050565b6036546001600160a01b031681565b60365460408051630283aeb760e11b81526001600160a01b038481166004830152915191909216916305075d6e916024808301926020929190829003018186803b158015613d2457600080fd5b505afa158015613d38573d6000803e3d6000fd5b505050506040513d6020811015613d4e57600080fd5b5051613d8b5760405162461bcd60e51b81526004018080602001828103825260218152602001806143b56021913960400191505060405180910390fd5b50565b60365460408051634a08accb60e01b81526001600160a01b03848116600483015291519190921691634a08accb916024808301926020929190829003018186803b158015613ddb57600080fd5b505afa158015613def573d6000803e3d6000fd5b505050506040513d6020811015613e0557600080fd5b505115613d8b5760405162461bcd60e51b81526004018080602001828103825260248152602001806146e06024913960400191505060405180910390fd5b60008111613d8b576040805162461bcd60e51b815260206004820152601d60248201527f416d6f756e74206d7573742062652067726561746572207468616e2030000000604482015290519081900360640190fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90565b600082820183811015613f0a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6000613f0a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250614043565b600082613f6457506000613f0d565b82820282848281613f7157fe5b0414613f0a5760405162461bcd60e51b81526004018080602001828103825260218152602001806144ed6021913960400191505060405180910390fd5b6000613f0a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061409d565b600290565b303b1590565b6b033b2e3c9fd0803ce800000090565b6000613f0a6b033b2e3c9fd0803ce80000006120a8614030868663ffffffff613f5516565b6b019d971e4fe8401e7400000090613eb0565b600081848411156140955760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610b28578181015183820152602001610b10565b505050900390565b600081836140ec5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610b28578181015183820152602001610b10565b5060008385816140f857fe5b0495945050505050565b604051806101000160405280600081526020016000815260200160008152602001600015158152602001600081526020016000815260200160008152602001600081525090565b6040518061020001604052806000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600060028111156141c457fe5b815260006020909101529056fe54686520626f72726f7765722063616e20616c7265616479206265206c69717569646174656420736f2068652063616e6e6f7420626f72726f77206d6f72655265656e7472616e637947756172643a207265656e7472616e742063616c6c005468657265206973206e6f7420656e6f756768206c697175696469747920617661696c61626c6520746f20626f72726f77496e76616c696420696e7465726573742072617465206d6f64652073656c656374656454686520616d6f756e7420746f20626f72726f7720697320746f6f20736d616c6c5573657220646f6573206e6f74206861766520616e7920626f72726f7720666f722074686973207265736572766555736572206465706f73697420697320616c7265616479206265696e67207573656420617320636f6c6c61746572616c52657365727665206973206e6f7420656e61626c656420666f7220626f72726f77696e675468657265206973206e6f7420656e6f756768206c697175696469747920617661696c61626c6520746f2072656465656d546865207573657220626f72726f77206973207661726961626c6520616e642063616e6e6f7420626520726562616c616e636564496e76616c6964206d73672e76616c75652073656e7420666f72207468652072657061796d656e74416374696f6e20726571756972657320616e206163746976652072657365727665496e746572657374207261746520726562616c616e636520636f6e646974696f6e732077657265206e6f74206d65745468652061637475616c2062616c616e6365206f66207468652070726f746f636f6c20697320696e636f6e73697374656e745573657220646f6573206e6f742068617665206120626f72726f7720696e2070726f6772657373206f6e207468697320726573657276655468657265206973206e6f7420656e6f75676820636f6c6c61746572616c20746f20636f7665722061206e657720626f72726f775468652063616c6c6572206f6620746869732066756e6374696f6e2063616e206f6e6c79206265207468652061546f6b656e20636f6e7472616374206f6620746869732072657365727665536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775468657265206973206e6f7420656e6f756768206c697175696469747920617661696c61626c6520696e2074686520726573657276655468652072657175657374656420616d6f756e7420697320746f6f20736d616c6c20666f72206120666c6173684c6f616e2e436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564557365722063616e6e6f7420626f72726f77207468652073656c656374656420616d6f756e742077697468206120737461626c6520726174655573657220646f6573206e6f74206861766520616e79206c6971756964697479206465706f73697465645573657220697320747279696e6720746f20626f72726f7720746f6f206d756368206c6971756964697479206174206120737461626c652072617465546865207573657220646f6573206e6f74206861766520616e7920626f72726f772070656e64696e67557365722063616e6e6f7420626f72726f77207468652073656c656374656420616d6f756e7420617420737461626c65546f207265706179206f6e20626568616c66206f6620616e207573657220616e206578706c6963697420616d6f756e7420746f207265706179206973206e65656465642e416374696f6e20726571756972657320616e20756e667265657a65642072657365727665a26469706673582212208ab74bfd103c50402ad7ede4606c00e8775e8dda282e1d0f28e21b517ab14d5464736f6c63430006080033";
|