/* 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 { MockFlashLoanReceiver } from "./MockFlashLoanReceiver"; export class MockFlashLoanReceiverFactory extends ContractFactory { constructor(signer?: Signer) { super(_abi, _bytecode, signer); } deploy( _provider: string, overrides?: TransactionOverrides ): Promise { return super.deploy(_provider, overrides) as Promise; } getDeployTransaction( _provider: string, overrides?: TransactionOverrides ): UnsignedTransaction { return super.getDeployTransaction(_provider, overrides); } attach(address: string): MockFlashLoanReceiver { return super.attach(address) as MockFlashLoanReceiver; } connect(signer: Signer): MockFlashLoanReceiverFactory { return super.connect(signer) as MockFlashLoanReceiverFactory; } static connect( address: string, signerOrProvider: Signer | Provider ): MockFlashLoanReceiver { return new Contract( address, _abi, signerOrProvider ) as MockFlashLoanReceiver; } } const _abi = [ { inputs: [ { internalType: "contract ILendingPoolAddressesProvider", name: "_provider", type: "address" } ], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "_reserve", type: "address" }, { indexed: false, internalType: "uint256", name: "_amount", type: "uint256" }, { indexed: false, internalType: "uint256", name: "_fee", type: "uint256" } ], name: "ExecutedWithFail", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "_reserve", type: "address" }, { indexed: false, internalType: "uint256", name: "_amount", type: "uint256" }, { indexed: false, internalType: "uint256", name: "_fee", type: "uint256" } ], name: "ExecutedWithSuccess", type: "event" }, { inputs: [], name: "addressesProvider", outputs: [ { internalType: "contract ILendingPoolAddressesProvider", name: "", type: "address" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "_reserve", type: "address" }, { internalType: "uint256", name: "_amount", type: "uint256" }, { internalType: "uint256", name: "_fee", type: "uint256" }, { internalType: "bytes", name: "_params", type: "bytes" } ], name: "executeOperation", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "bool", name: "_fail", type: "bool" } ], name: "setFailExecutionTransfer", outputs: [], stateMutability: "nonpayable", type: "function" }, { stateMutability: "payable", type: "receive" } ]; const _bytecode = "0x608060405260008060146101000a81548160ff02191690831515021790555034801561002a57600080fd5b50604051610c35380380610c358339818101604052602081101561004d57600080fd5b810190808051906020019092919050505080806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050610b85806100b06000396000f3fe6080604052600436106100385760003560e01c8063388f70f114610044578063c72c4d1014610081578063ee872558146100d85761003f565b3661003f57005b600080fd5b34801561005057600080fd5b5061007f6004803603602081101561006757600080fd5b810190808035151590602001909291905050506101d4565b005b34801561008d57600080fd5b506100966101f1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100e457600080fd5b506101d2600480360360808110156100fb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291908035906020019064010000000081111561014c57600080fd5b82018360208201111561015e57600080fd5b8035906020019184600183028401116401000000008311171561018057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610216565b005b80600060146101000a81548160ff02191690831515021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008490506102253086610489565b84111561029a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f496e76616c69642062616c616e636520666f722074686520636f6e747261637481525060200191505060405180910390fd5b600060149054906101000a900460ff1615610328577f816f6a6bc084e1996be1a831afa1af30763d0501b6b43b9e1922a11f347366d7858585604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a150610483565b6103306105a6565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146103f2578073ffffffffffffffffffffffffffffffffffffffff1663a0712d68846040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b1580156103b557600080fd5b505af11580156103c9573d6000803e3d6000fd5b505050506040513d60208110156103df57600080fd5b8101908080519060200190929190505050505b61040e8561040985876105c290919063ffffffff16565b61064a565b7f7d94e9d0c906b8d7b2b52a581b9e9ba728aa6f8cd8532bd87243d193f47401be858585604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505b50505050565b60006104936105a6565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156104e5578273ffffffffffffffffffffffffffffffffffffffff163190506105a0565b8173ffffffffffffffffffffffffffffffffffffffff166370a08231846040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561056257600080fd5b505afa158015610576573d6000803e3d6000fd5b505050506040513d602081101561058c57600080fd5b810190808051906020019092919050505090505b92915050565b600073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee905090565b600080828401905083811015610640576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ed6ff7606040518163ffffffff1660e01b815260040160206040518083038186803b1580156106b357600080fd5b505afa1580156106c7573d6000803e3d6000fd5b505050506040513d60208110156106dd57600080fd5b810190808051906020019092919050505090506106fb818484610700565b505050565b6107086105a6565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156107a6578273ffffffffffffffffffffffffffffffffffffffff168160405180600001905060006040518083038185875af1925050503d8060008114610799576040519150601f19603f3d011682016040523d82523d6000602084013e61079e565b606091505b5050506107d2565b6107d183828473ffffffffffffffffffffffffffffffffffffffff166107d79092919063ffffffff16565b5b505050565b61088a8363a9059cbb60e01b8484604051602401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061088f565b505050565b6108ae8273ffffffffffffffffffffffffffffffffffffffff16610ada565b610920576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e74726163740081525060200191505060405180910390fd5b600060608373ffffffffffffffffffffffffffffffffffffffff16836040518082805190602001908083835b6020831061096f578051825260208201915060208101905060208303925061094c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146109d1576040519150601f19603f3d011682016040523d82523d6000602084013e6109d6565b606091505b509150915081610a4e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656481525060200191505060405180910390fd5b600081511115610ad457808060200190516020811015610a6d57600080fd5b8101908080519060200190929190505050610ad3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180610b26602a913960400191505060405180910390fd5b5b50505050565b60008060007fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47060001b9050833f9150808214158015610b1c57506000801b8214155b9250505091905056fe5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a2646970667358221220786a7c21f296333f0744f23ae49949fccf13ab6f3e1019a45a379b0f9b4ed98264736f6c63430006080033";