/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { Signer, Contract, ContractFactory, Overrides } from "ethers"; import { Provider, TransactionRequest } from "@ethersproject/providers"; import type { TToken } from "../TToken"; export class TToken__factory extends ContractFactory { constructor(signer?: Signer) { super(_abi, _bytecode, signer); } deploy( _asset: string, _name: string, _symbol: string, _splitter: string, overrides?: Overrides & { from?: string | Promise } ): Promise { return super.deploy( _asset, _name, _symbol, _splitter, overrides || {} ) as Promise; } getDeployTransaction( _asset: string, _name: string, _symbol: string, _splitter: string, overrides?: Overrides & { from?: string | Promise } ): TransactionRequest { return super.getDeployTransaction( _asset, _name, _symbol, _splitter, overrides || {} ); } attach(address: string): TToken { return super.attach(address) as TToken; } connect(signer: Signer): TToken__factory { return super.connect(signer) as TToken__factory; } static connect(address: string, signerOrProvider: Signer | Provider): TToken { return new Contract(address, _abi, signerOrProvider) as TToken; } } const _abi = [ { inputs: [ { internalType: "contract ERC20", name: "_asset", type: "address", }, { internalType: "string", name: "_name", type: "string", }, { internalType: "string", name: "_symbol", type: "string", }, { internalType: "address", name: "_splitter", type: "address", }, ], stateMutability: "nonpayable", type: "constructor", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address", }, { indexed: true, internalType: "address", name: "spender", type: "address", }, { indexed: false, internalType: "uint256", name: "amount", 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: "amount", type: "uint256", }, ], name: "Transfer", type: "event", }, { inputs: [], name: "DOMAIN_SEPARATOR", outputs: [ { internalType: "bytes32", name: "", type: "bytes32", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "", type: "address", }, { internalType: "address", name: "", 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: "", type: "address", }, ], name: "balanceOf", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "from", 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: "contract IERC3156FlashBorrower", name: "receiver", type: "address", }, { internalType: "address", name: "token", type: "address", }, { internalType: "uint256", name: "amount", type: "uint256", }, { internalType: "bytes", name: "data", type: "bytes", }, ], name: "flashMint", outputs: [ { internalType: "bool", name: "", type: "bool", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "to", type: "address", }, { internalType: "uint256", name: "amount", 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: "", type: "address", }, ], name: "nonces", outputs: [ { internalType: "uint256", name: "", type: "uint256", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "owner", type: "address", }, { internalType: "address", name: "spender", type: "address", }, { internalType: "uint256", name: "value", type: "uint256", }, { internalType: "uint256", name: "deadline", type: "uint256", }, { internalType: "uint8", name: "v", type: "uint8", }, { internalType: "bytes32", name: "r", type: "bytes32", }, { internalType: "bytes32", name: "s", type: "bytes32", }, ], name: "permit", outputs: [], stateMutability: "nonpayable", 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: "to", type: "address", }, { internalType: "uint256", name: "amount", type: "uint256", }, ], name: "transfer", outputs: [ { internalType: "bool", name: "", type: "bool", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "from", type: "address", }, { internalType: "address", name: "to", type: "address", }, { internalType: "uint256", name: "amount", type: "uint256", }, ], name: "transferFrom", outputs: [ { internalType: "bool", name: "", type: "bool", }, ], stateMutability: "nonpayable", type: "function", }, ]; const _bytecode = "0x60e06040523480156200001157600080fd5b50604051620013a7380380620013a7833981016040819052620000349162000343565b8282856001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000075573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200009b9190620003d7565b8251620000b0906000906020860190620001b7565b508151620000c6906001906020850190620001b7565b5060ff81166080524660a052620000dc6200011b565b60c0525050600780546001600160a01b039687166001600160a01b031991821617909155600680549390961692169190911790935550620004e4915050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60006040516200014f919062000440565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b828054620001c59062000403565b90600052602060002090601f016020900481019282620001e9576000855562000234565b82601f106200020457805160ff191683800117855562000234565b8280016001018555821562000234579182015b828111156200023457825182559160200191906001019062000217565b506200024292915062000246565b5090565b5b8082111562000242576000815560010162000247565b6001600160a01b03811681146200027357600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200029e57600080fd5b81516001600160401b0380821115620002bb57620002bb62000276565b604051601f8301601f19908116603f01168101908282118183101715620002e657620002e662000276565b816040528381526020925086838588010111156200030357600080fd5b600091505b8382101562000327578582018301518183018401529082019062000308565b83821115620003395760008385830101525b9695505050505050565b600080600080608085870312156200035a57600080fd5b845162000367816200025d565b60208601519094506001600160401b03808211156200038557600080fd5b62000393888389016200028c565b94506040870151915080821115620003aa57600080fd5b50620003b9878288016200028c565b9250506060850151620003cc816200025d565b939692955090935050565b600060208284031215620003ea57600080fd5b815160ff81168114620003fc57600080fd5b9392505050565b600181811c908216806200041857607f821691505b602082108114156200043a57634e487b7160e01b600052602260045260246000fd5b50919050565b600080835481600182811c9150808316806200045d57607f831692505b60208084108214156200047e57634e487b7160e01b86526022600452602486fd5b818015620004955760018114620004a757620004d6565b60ff19861689528489019650620004d6565b60008a81526020902060005b86811015620004ce5781548b820152908501908301620004b3565b505084890196505b509498975050505050505050565b60805160a05160c051610e9362000514600039600061048d015260006104580152600061016a0152610e936000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c806340c10f19116100975780639dc29fac116100665780639dc29fac14610216578063a9059cbb14610229578063d505accf1461023c578063dd62ed3e1461024f57600080fd5b806340c10f19146101b957806370a08231146101ce5780637ecebe00146101ee57806395d89b411461020e57600080fd5b806323b872dd116100d357806323b872dd14610152578063313ce567146101655780633644e5151461019e5780633b9d401e146101a657600080fd5b806306fdde03146100fa578063095ea7b31461011857806318160ddd1461013b575b600080fd5b61010261027a565b60405161010f9190610a5f565b60405180910390f35b61012b610126366004610acc565b610308565b604051901515815260200161010f565b61014460025481565b60405190815260200161010f565b61012b610160366004610af8565b610374565b61018c7f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff909116815260200161010f565b610144610454565b61012b6101b4366004610b39565b6104af565b6101cc6101c7366004610acc565b6105ae565b005b6101446101dc366004610bd8565b60036020526000908152604090205481565b6101446101fc366004610bd8565b60056020526000908152604090205481565b610102610602565b6101cc610224366004610acc565b61060f565b61012b610237366004610acc565b61065f565b6101cc61024a366004610bfc565b6106c5565b61014461025d366004610c73565b600460209081526000928352604080842090915290825290205481565b6000805461028790610cac565b80601f01602080910402602001604051908101604052809291908181526020018280546102b390610cac565b80156103005780601f106102d557610100808354040283529160200191610300565b820191906000526020600020905b8154815290600101906020018083116102e357829003601f168201915b505050505081565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103639086815260200190565b60405180910390a350600192915050565b6001600160a01b038316600090815260046020908152604080832033845290915281205460001981146103d0576103ab8382610cfd565b6001600160a01b03861660009081526004602090815260408083203384529091529020555b6001600160a01b038516600090815260036020526040812080548592906103f8908490610cfd565b90915550506001600160a01b0380851660008181526003602052604090819020805487019055519091871690600080516020610e3e833981519152906104419087815260200190565b60405180910390a3506001949350505050565b60007f0000000000000000000000000000000000000000000000000000000000000000461461048a57610485610909565b905090565b507f000000000000000000000000000000000000000000000000000000000000000090565b60006104bb86856109a3565b6040516323e30c8b60e01b81527f439148f0bbc682ca079e46d6e2c2f0c1e3b820f1a291b069d8882abf8cf18dd9906001600160a01b038816906323e30c8b9061051490339030908a906000908b908b90600401610d14565b6020604051808303816000875af1158015610533573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105579190610d70565b1461059b5760405162461bcd60e51b815260206004820152600f60248201526e18d85b1b189858dac819985a5b1959608a1b60448201526064015b60405180910390fd5b6105a586856109fd565b95945050505050565b6006546001600160a01b031633146105f45760405162461bcd60e51b815260206004820152600960248201526810a9b83634ba3a32b960b91b6044820152606401610592565b6105fe82826109a3565b5050565b6001805461028790610cac565b6006546001600160a01b031633146106555760405162461bcd60e51b815260206004820152600960248201526810a9b83634ba3a32b960b91b6044820152606401610592565b6105fe82826109fd565b33600090815260036020526040812080548391908390610680908490610cfd565b90915550506001600160a01b03831660008181526003602052604090819020805485019055513390600080516020610e3e833981519152906103639086815260200190565b428410156107155760405162461bcd60e51b815260206004820152601760248201527f5045524d49545f444541444c494e455f455850495245440000000000000000006044820152606401610592565b60006001610721610454565b6001600160a01b038a811660008181526005602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938d166060840152608083018c905260a083019390935260c08083018b90528151808403909101815260e08301909152805192019190912061190160f01b6101008301526101028201929092526101228101919091526101420160408051601f198184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016020604051602081039080840390855afa15801561082d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116158015906108635750876001600160a01b0316816001600160a01b0316145b6108a05760405162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa9a4a3a722a960911b6044820152606401610592565b6001600160a01b0390811660009081526004602090815260408083208a8516808552908352928190208990555188815291928a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f600060405161093b9190610d89565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b80600260008282546109b59190610e25565b90915550506001600160a01b038216600081815260036020908152604080832080548601905551848152600080516020610e3e83398151915291015b60405180910390a35050565b6001600160a01b03821660009081526003602052604081208054839290610a25908490610cfd565b90915550506002805482900390556040518181526000906001600160a01b03841690600080516020610e3e833981519152906020016109f1565b600060208083528351808285015260005b81811015610a8c57858101830151858201604001528201610a70565b81811115610a9e576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b0381168114610ac957600080fd5b50565b60008060408385031215610adf57600080fd5b8235610aea81610ab4565b946020939093013593505050565b600080600060608486031215610b0d57600080fd5b8335610b1881610ab4565b92506020840135610b2881610ab4565b929592945050506040919091013590565b600080600080600060808688031215610b5157600080fd5b8535610b5c81610ab4565b94506020860135610b6c81610ab4565b935060408601359250606086013567ffffffffffffffff80821115610b9057600080fd5b818801915088601f830112610ba457600080fd5b813581811115610bb357600080fd5b896020828501011115610bc557600080fd5b9699959850939650602001949392505050565b600060208284031215610bea57600080fd5b8135610bf581610ab4565b9392505050565b600080600080600080600060e0888a031215610c1757600080fd5b8735610c2281610ab4565b96506020880135610c3281610ab4565b95506040880135945060608801359350608088013560ff81168114610c5657600080fd5b9699959850939692959460a0840135945060c09093013592915050565b60008060408385031215610c8657600080fd5b8235610c9181610ab4565b91506020830135610ca181610ab4565b809150509250929050565b600181811c90821680610cc057607f821691505b60208210811415610ce157634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082821015610d0f57610d0f610ce7565b500390565b6001600160a01b03878116825286166020820152604081018590526060810184905260a06080820181905281018290526000828460c0840137600060c0848401015260c0601f19601f8501168301019050979650505050505050565b600060208284031215610d8257600080fd5b5051919050565b600080835481600182811c915080831680610da557607f831692505b6020808410821415610dc557634e487b7160e01b86526022600452602486fd5b818015610dd95760018114610dea57610e17565b60ff19861689528489019650610e17565b60008a81526020902060005b86811015610e0f5781548b820152908501908301610df6565b505084890196505b509498975050505050505050565b60008219821115610e3857610e38610ce7565b50019056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220cba2a51c6326c5f84967677b4e15d755263dde38669167fc121d1ca6dfc5607864736f6c634300080a0033";