/* 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 { StableDebtToken } from "./StableDebtToken"; export class StableDebtTokenFactory extends ContractFactory { constructor(signer?: Signer) { super(_abi, _bytecode, signer); } deploy(overrides?: TransactionOverrides): Promise { return super.deploy(overrides) as Promise; } getDeployTransaction(overrides?: TransactionOverrides): UnsignedTransaction { return super.getDeployTransaction(overrides); } attach(address: string): StableDebtToken { return super.attach(address) as StableDebtToken; } connect(signer: Signer): StableDebtTokenFactory { return super.connect(signer) as StableDebtTokenFactory; } static connect( address: string, signerOrProvider: Signer | Provider ): StableDebtToken { return new Contract(address, _abi, signerOrProvider) as StableDebtToken; } } const _abi = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Approval", type: "event" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" } ], name: "Transfer", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "_user", type: "address" }, { indexed: false, internalType: "uint256", name: "_amount", type: "uint256" }, { indexed: false, internalType: "uint256", name: "_previousBalance", type: "uint256" }, { indexed: false, internalType: "uint256", name: "_currentBalance", type: "uint256" }, { indexed: false, internalType: "uint256", name: "_balanceIncrease", type: "uint256" } ], name: "burnDebt", type: "event" }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "_user", type: "address" }, { indexed: false, internalType: "uint256", name: "_amount", type: "uint256" }, { indexed: false, internalType: "uint256", name: "_previousBalance", type: "uint256" }, { indexed: false, internalType: "uint256", name: "_currentBalance", type: "uint256" }, { indexed: false, internalType: "uint256", name: "_balanceIncrease", type: "uint256" }, { indexed: false, internalType: "uint256", name: "_newRate", type: "uint256" } ], name: "mintDebt", type: "event" }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" } ], name: "allowance", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "_amount", type: "uint256" } ], name: "approve", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "account", type: "address" } ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "_user", type: "address" }, { internalType: "uint256", name: "_amount", type: "uint256" } ], name: "burn", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "decimals", outputs: [ { internalType: "uint8", name: "", type: "uint8" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" } ], name: "decreaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "getAverageStableRate", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "_user", type: "address" } ], name: "getUserLastUpdated", outputs: [ { internalType: "uint40", name: "", type: "uint40" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "_user", type: "address" } ], name: "getUserStableRate", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" } ], name: "increaseAllowance", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "string", name: "_name", type: "string" }, { internalType: "string", name: "_symbol", type: "string" }, { internalType: "uint8", name: "_decimals", type: "uint8" }, { internalType: "address", name: "_underlying", type: "address" }, { internalType: "contract ILendingPoolAddressesProvider", name: "_addressesProvider", type: "address" } ], name: "init", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "_user", type: "address" }, { internalType: "uint256", name: "_amount", type: "uint256" }, { internalType: "uint256", name: "_rate", type: "uint256" } ], name: "mint", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "name", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "_user", type: "address" } ], name: "principalBalanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "symbol", outputs: [ { internalType: "string", name: "", type: "string" } ], stateMutability: "view", type: "function" }, { inputs: [], name: "totalSupply", outputs: [ { internalType: "uint256", name: "", type: "uint256" } ], stateMutability: "view", type: "function" }, { inputs: [ { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "_amount", type: "uint256" } ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [ { internalType: "address", name: "sender", type: "address" }, { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "_amount", type: "uint256" } ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool" } ], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "underlyingAssetAddress", outputs: [ { internalType: "address", name: "", type: "address" } ], stateMutability: "view", type: "function" } ]; const _bytecode = "0x608060405234801561001057600080fd5b50611298806100206000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806381e75277116100ad578063a457c2d711610071578063a457c2d714610285578063a9059cbb146104be578063c634dfaa146104ea578063dd62ed3e14610510578063e78c9b3b1461053e57610121565b806381e752771461031757806389d1a0fc1461045e57806390f6fcf21461048257806395d89b411461048a5780639dc29fac1461049257610121565b806323b872dd116100f457806323b872dd14610231578063313ce56714610267578063395093511461028557806370a08231146102b157806379ce6b8c146102d757610121565b806306fdde0314610126578063095ea7b3146101a3578063156e29f6146101e357806318160ddd14610217575b600080fd5b61012e610564565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b0381351690602001356105f1565b604080519115158252519081900360200190f35b610215600480360360608110156101f957600080fd5b506001600160a01b038135169060208101359060400135610639565b005b61021f61083e565b60408051918252519081900360200190f35b6101cf6004803603606081101561024757600080fd5b506001600160a01b03813581169160208101359091169060400135610844565b61026f61088c565b6040805160ff9092168252519081900360200190f35b6101cf6004803603604081101561029b57600080fd5b506001600160a01b038135169060200135610895565b61021f600480360360208110156102c757600080fd5b50356001600160a01b03166108e4565b6102fd600480360360208110156102ed57600080fd5b50356001600160a01b031661098e565b6040805164ffffffffff9092168252519081900360200190f35b610215600480360360a081101561032d57600080fd5b81019060208101813564010000000081111561034857600080fd5b82018360208201111561035a57600080fd5b8035906020019184600183028401116401000000008311171561037c57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092959493602081019350359150506401000000008111156103cf57600080fd5b8201836020820111156103e157600080fd5b8035906020019184600183028401116401000000008311171561040357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505060ff8335169350506001600160a01b036020830135811692604001351690506109b3565b610466610a98565b604080516001600160a01b039092168252519081900360200190f35b61021f610aac565b61012e610ab3565b610215600480360360408110156104a857600080fd5b506001600160a01b038135169060200135610b0b565b6101cf600480360360408110156104d457600080fd5b506001600160a01b038135169060200135610844565b61021f6004803603602081101561050057600080fd5b50356001600160a01b0316610c98565b61021f6004803603604081101561052657600080fd5b506001600160a01b0381358116916020013516610895565b61021f6004803603602081101561055457600080fd5b50356001600160a01b0316610cb3565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105e95780601f106105be576101008083540402835291602001916105e9565b820191906000526020600020905b8154815290600101906020018083116105cc57829003601f168201915b505050505081565b6040805162461bcd60e51b81526020600482015260166024820152751054141493d5905317d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b6004546001600160a01b03163314610689576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa1a0a62622a960911b604482015290519081900360640190fd5b610691611188565b600080600061069f87610cce565b9250925092506106ba86600054610d3c90919063ffffffff16565b84526106c586610d9f565b60208501526107476106e56106e0848963ffffffff610d3c16565b610d9f565b602086015161073b906106fe908963ffffffff610db516565b61072f61070a87610d9f565b6001600160a01b038d166000908152600760205260409020549063ffffffff610db516565b9063ffffffff610d3c16565b9063ffffffff610df916565b60408581018290526001600160a01b0389166000908152600760205220908155600101805464ffffffffff19164264ffffffffff1617905583516107c59061078e90610d9f565b61073b6107a8876020015189610db590919063ffffffff16565b61072f6107b6600054610d9f565b6006549063ffffffff610db516565b6006556107d28787610e31565b60408085015181516001600160a01b038a16815260208101899052808301869052606081018590526080810184905260a081019190915290517f94ba3ac5ed6fee7b49ed817c5ee964eed9bd5da6860344f95fc56997e920381d9181900360c00190a150505050505050565b60005481565b6040805162461bcd60e51b81526020600482015260166024820152751514905394d1915497d393d517d4d5541413d495115160521b6044820152905160009181900360640190fd5b60035460ff1681565b6040805162461bcd60e51b815260206004820152601760248201527f414c4c4f57414e43455f4e4f545f535550504f525445440000000000000000006044820152905160009181900360640190fd5b6001600160a01b03811660009081526005602052604081205461090957506000610989565b6001600160a01b03821660009081526007602052604081208054600182015491929161093c919064ffffffffff16610e8f565b905061098461097f8261097360056000896001600160a01b03166001600160a01b0316815260200190815260200160002054610d9f565b9063ffffffff610db516565b610ee7565b925050505b919050565b6001600160a01b031660009081526007602052604090206001015464ffffffffff1690565b84516109c69060019060208801906111a9565b5083516109da9060029060208701906111a9565b506003805460ff191660ff851617610100600160a81b0319166101006001600160a01b03858116919091029190911790915560408051630261bf8b60e01b8152905191831691630261bf8b91600480820192602092909190829003018186803b158015610a4657600080fd5b505afa158015610a5a573d6000803e3d6000fd5b505050506040513d6020811015610a7057600080fd5b5051600480546001600160a01b0319166001600160a01b039092169190911790555050505050565b60035461010090046001600160a01b031681565b6006545b90565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105e95780601f106105be576101008083540402835291602001916105e9565b6004546001600160a01b03163314610b5b576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa1a0a62622a960911b604482015290519081900360640190fd5b6000806000610b6985610cce565b9250925092506000610b8685600054610f0790919063ffffffff16565b90506000610b9386610d9f565b905081610ba4576000600655610bfb565b610bf7610bb083610d9f565b6001600160a01b03891660009081526007602052604090205461073b90610bdd908563ffffffff610db516565b610beb6107b6600054610d9f565b9063ffffffff610f0716565b6006555b83861415610c2e576001600160a01b0387166000908152600760205260408120908155600101805464ffffffffff191690555b610c388787610f49565b604080516001600160a01b038916815260208101889052808201879052606081018690526080810185905290517fecde08620c30706a4d7ba53e9163327f2e12a6cea2709dd6a9226fed28c2bb729181900360a00190a150505050505050565b6001600160a01b031660009081526005602052604090205490565b6001600160a01b031660009081526007602052604090205490565b6001600160a01b0381166000908152600560205260408120548190819080610d00575060009250829150819050610d35565b6000610d0f82610beb886108e4565b9050610d1b8682610e31565b81610d2c818363ffffffff610d3c16565b90955093509150505b9193909250565b600082820183811015610d96576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6000610d9982633b9aca0063ffffffff610f8716565b6000610d966b033b2e3c9fd0803ce8000000610ded610dda868663ffffffff610f8716565b6b019d971e4fe8401e7400000090610d3c565b9063ffffffff610fe016565b600060028204610e2983610ded610e1c876b033b2e3c9fd0803ce8000000610f87565b849063ffffffff610d3c16565b949350505050565b600054610e44908263ffffffff610d3c16565b60009081556001600160a01b038316815260056020526040902054610e6f908263ffffffff610d3c16565b6001600160a01b0390921660009081526005602052604090209190915550565b600080610ea94264ffffffffff851663ffffffff610f0716565b90506000610ec1856301e1338063ffffffff610fe016565b9050610ede82610ed2610e1c611022565b9063ffffffff61103216565b95945050505050565b6000631dcd6500610f00633b9aca00610ded8386610d3c565b9392505050565b6000610d9683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061108c565b600054610f5c908263ffffffff610f0716565b60009081556001600160a01b038316815260056020526040902054610e6f908263ffffffff610f0716565b600082610f9657506000610d99565b82820282848281610fa357fe5b0414610d965760405162461bcd60e51b81526004018080602001828103825260218152602001806112426021913960400191505060405180910390fd5b6000610d9683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611123565b6b033b2e3c9fd0803ce800000090565b60006002820661104e576b033b2e3c9fd0803ce8000000611050565b825b90506002820491505b8115610d99576110698384610db5565b925060028206156110815761107e8184610db5565b90505b600282049150611059565b6000818484111561111b5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156110e05781810151838201526020016110c8565b50505050905090810190601f16801561110d5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836111725760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156110e05781810151838201526020016110c8565b50600083858161117e57fe5b0495945050505050565b60405180606001604052806000815260200160008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106111ea57805160ff1916838001178555611217565b82800160010185558215611217579182015b828111156112175782518255916020019190600101906111fc565b50611223929150611227565b5090565b610ab091905b80821115611223576000815560010161122d56fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220f25962a19ad0c5cecb0711febaba090442681a048835a42f685a3e6d8a34132364736f6c63430006080033";