diff --git a/packages/bridge/src/contracts/Erc20.d.ts b/packages/bridge/src/contracts/Erc20.d.ts deleted file mode 100644 index 471736c..0000000 --- a/packages/bridge/src/contracts/Erc20.d.ts +++ /dev/null @@ -1,600 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, ContractTransaction, EventFilter, Signer } from 'ethers'; -import { Listener, Provider } from 'ethers/providers'; -import { Arrayish, BigNumber, BigNumberish, Interface } from 'ethers/utils'; -import { - TransactionOverrides, - TypedEventDescription, - TypedFunctionDescription, -} from '.'; - -interface ERC20Interface extends Interface { - functions: { - name: TypedFunctionDescription<{ encode([]: []): string }>; - - symbol: TypedFunctionDescription<{ encode([]: []): string }>; - - decimals: TypedFunctionDescription<{ encode([]: []): string }>; - - totalSupply: TypedFunctionDescription<{ encode([]: []): string }>; - - balanceOf: TypedFunctionDescription<{ - encode([account]: [string]): string; - }>; - - transfer: TypedFunctionDescription<{ - encode([recipient, amount]: [string, BigNumberish]): string; - }>; - - allowance: TypedFunctionDescription<{ - encode([owner, spender]: [string, string]): string; - }>; - - approve: TypedFunctionDescription<{ - encode([spender, amount]: [string, BigNumberish]): string; - }>; - - transferFrom: TypedFunctionDescription<{ - encode([sender, recipient, amount]: [ - string, - string, - BigNumberish, - ]): string; - }>; - - increaseAllowance: TypedFunctionDescription<{ - encode([spender, addedValue]: [string, BigNumberish]): string; - }>; - - decreaseAllowance: TypedFunctionDescription<{ - encode([spender, subtractedValue]: [string, BigNumberish]): string; - }>; - }; - - events: { - Approval: TypedEventDescription<{ - encodeTopics([owner, spender, value]: [ - string | null, - string | null, - null, - ]): string[]; - }>; - - Transfer: TypedEventDescription<{ - encodeTopics([from, to, value]: [ - string | null, - string | null, - null, - ]): string[]; - }>; - }; -} - -export class ERC20 extends Contract { - connect(signerOrProvider: Signer | Provider | string): ERC20; - attach(addressOrName: string): ERC20; - deployed(): Promise; - - on(event: EventFilter | string, listener: Listener): ERC20; - once(event: EventFilter | string, listener: Listener): ERC20; - addListener(eventName: EventFilter | string, listener: Listener): ERC20; - removeAllListeners(eventName: EventFilter | string): ERC20; - removeListener(eventName: any, listener: Listener): ERC20; - - interface: ERC20Interface; - - functions: { - /** - * Returns the name of the token. - */ - name(overrides?: TransactionOverrides): Promise; - - /** - * Returns the name of the token. - */ - 'name()'(overrides?: TransactionOverrides): Promise; - - /** - * Returns the symbol of the token, usually a shorter version of the name. - */ - symbol(overrides?: TransactionOverrides): Promise; - - /** - * Returns the symbol of the token, usually a shorter version of the name. - */ - 'symbol()'(overrides?: TransactionOverrides): Promise; - - /** - * Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is called. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}. - */ - decimals(overrides?: TransactionOverrides): Promise; - - /** - * Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is called. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}. - */ - 'decimals()'(overrides?: TransactionOverrides): Promise; - - /** - * See {IERC20-totalSupply}. - */ - totalSupply(overrides?: TransactionOverrides): Promise; - - /** - * See {IERC20-totalSupply}. - */ - 'totalSupply()'(overrides?: TransactionOverrides): Promise; - - /** - * See {IERC20-balanceOf}. - */ - balanceOf( - account: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-balanceOf}. - */ - 'balanceOf(address)'( - account: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transfer}. Requirements: - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`. - */ - transfer( - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transfer}. Requirements: - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`. - */ - 'transfer(address,uint256)'( - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-allowance}. - */ - allowance( - owner: string, - spender: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-allowance}. - */ - 'allowance(address,address)'( - owner: string, - spender: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-approve}. Requirements: - `spender` cannot be the zero address. - */ - approve( - spender: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-approve}. Requirements: - `spender` cannot be the zero address. - */ - 'approve(address,uint256)'( - spender: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. Requirements: - `sender` and `recipient` cannot be the zero address. - `sender` must have a balance of at least `amount`. - the caller must have allowance for ``sender``'s tokens of at least `amount`. - */ - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. Requirements: - `sender` and `recipient` cannot be the zero address. - `sender` must have a balance of at least `amount`. - the caller must have allowance for ``sender``'s tokens of at least `amount`. - */ - 'transferFrom(address,address,uint256)'( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - */ - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - */ - 'increaseAllowance(address,uint256)'( - spender: string, - addedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`. - */ - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`. - */ - 'decreaseAllowance(address,uint256)'( - spender: string, - subtractedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - }; - - /** - * Returns the name of the token. - */ - name(overrides?: TransactionOverrides): Promise; - - /** - * Returns the name of the token. - */ - 'name()'(overrides?: TransactionOverrides): Promise; - - /** - * Returns the symbol of the token, usually a shorter version of the name. - */ - symbol(overrides?: TransactionOverrides): Promise; - - /** - * Returns the symbol of the token, usually a shorter version of the name. - */ - 'symbol()'(overrides?: TransactionOverrides): Promise; - - /** - * Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is called. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}. - */ - decimals(overrides?: TransactionOverrides): Promise; - - /** - * Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is called. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}. - */ - 'decimals()'(overrides?: TransactionOverrides): Promise; - - /** - * See {IERC20-totalSupply}. - */ - totalSupply(overrides?: TransactionOverrides): Promise; - - /** - * See {IERC20-totalSupply}. - */ - 'totalSupply()'(overrides?: TransactionOverrides): Promise; - - /** - * See {IERC20-balanceOf}. - */ - balanceOf( - account: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-balanceOf}. - */ - 'balanceOf(address)'( - account: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transfer}. Requirements: - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`. - */ - transfer( - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transfer}. Requirements: - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`. - */ - 'transfer(address,uint256)'( - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-allowance}. - */ - allowance( - owner: string, - spender: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-allowance}. - */ - 'allowance(address,address)'( - owner: string, - spender: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-approve}. Requirements: - `spender` cannot be the zero address. - */ - approve( - spender: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-approve}. Requirements: - `spender` cannot be the zero address. - */ - 'approve(address,uint256)'( - spender: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. Requirements: - `sender` and `recipient` cannot be the zero address. - `sender` must have a balance of at least `amount`. - the caller must have allowance for ``sender``'s tokens of at least `amount`. - */ - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. Requirements: - `sender` and `recipient` cannot be the zero address. - `sender` must have a balance of at least `amount`. - the caller must have allowance for ``sender``'s tokens of at least `amount`. - */ - 'transferFrom(address,address,uint256)'( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - */ - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - */ - 'increaseAllowance(address,uint256)'( - spender: string, - addedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`. - */ - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`. - */ - 'decreaseAllowance(address,uint256)'( - spender: string, - subtractedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - filters: { - Approval( - owner: string | null, - spender: string | null, - value: null, - ): EventFilter; - - Transfer(from: string | null, to: string | null, value: null): EventFilter; - }; - - estimate: { - /** - * Returns the name of the token. - */ - name(overrides?: TransactionOverrides): Promise; - - /** - * Returns the name of the token. - */ - 'name()'(overrides?: TransactionOverrides): Promise; - - /** - * Returns the symbol of the token, usually a shorter version of the name. - */ - symbol(overrides?: TransactionOverrides): Promise; - - /** - * Returns the symbol of the token, usually a shorter version of the name. - */ - 'symbol()'(overrides?: TransactionOverrides): Promise; - - /** - * Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is called. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}. - */ - decimals(overrides?: TransactionOverrides): Promise; - - /** - * Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is called. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}. - */ - 'decimals()'(overrides?: TransactionOverrides): Promise; - - /** - * See {IERC20-totalSupply}. - */ - totalSupply(overrides?: TransactionOverrides): Promise; - - /** - * See {IERC20-totalSupply}. - */ - 'totalSupply()'(overrides?: TransactionOverrides): Promise; - - /** - * See {IERC20-balanceOf}. - */ - balanceOf( - account: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-balanceOf}. - */ - 'balanceOf(address)'( - account: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transfer}. Requirements: - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`. - */ - transfer( - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transfer}. Requirements: - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`. - */ - 'transfer(address,uint256)'( - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-allowance}. - */ - allowance( - owner: string, - spender: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-allowance}. - */ - 'allowance(address,address)'( - owner: string, - spender: string, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-approve}. Requirements: - `spender` cannot be the zero address. - */ - approve( - spender: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-approve}. Requirements: - `spender` cannot be the zero address. - */ - 'approve(address,uint256)'( - spender: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. Requirements: - `sender` and `recipient` cannot be the zero address. - `sender` must have a balance of at least `amount`. - the caller must have allowance for ``sender``'s tokens of at least `amount`. - */ - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. Requirements: - `sender` and `recipient` cannot be the zero address. - `sender` must have a balance of at least `amount`. - the caller must have allowance for ``sender``'s tokens of at least `amount`. - */ - 'transferFrom(address,address,uint256)'( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - */ - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - */ - 'increaseAllowance(address,uint256)'( - spender: string, - addedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`. - */ - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - - /** - * Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`. - */ - 'decreaseAllowance(address,uint256)'( - spender: string, - subtractedValue: BigNumberish, - overrides?: TransactionOverrides, - ): Promise; - }; -} diff --git a/packages/bridge/src/contracts/Erc20Factory.ts b/packages/bridge/src/contracts/Erc20Factory.ts deleted file mode 100644 index 3777a42..0000000 --- a/packages/bridge/src/contracts/Erc20Factory.ts +++ /dev/null @@ -1,332 +0,0 @@ -/* Autogenerated file. Do not edit manually. */ -/* tslint:disable */ -/* eslint-disable */ - -import { Contract, ContractFactory, Signer } from 'ethers'; -import { Provider } from 'ethers/providers'; -import { UnsignedTransaction } from 'ethers/utils/transaction'; - -import { TransactionOverrides } from '.'; -import { ERC20 } from './ERC20'; - -export class ERC20Factory extends ContractFactory { - constructor(signer?: Signer) { - super(_abi, _bytecode, signer); - } - - deploy( - name_: string, - symbol_: string, - overrides?: TransactionOverrides, - ): Promise { - return super.deploy(name_, symbol_, overrides) as Promise; - } - getDeployTransaction( - name_: string, - symbol_: string, - overrides?: TransactionOverrides, - ): UnsignedTransaction { - return super.getDeployTransaction(name_, symbol_, overrides); - } - attach(address: string): ERC20 { - return super.attach(address) as ERC20; - } - connect(signer: Signer): ERC20Factory { - return super.connect(signer) as ERC20Factory; - } - static connect(address: string, signerOrProvider: Signer | Provider): ERC20 { - return new Contract(address, _abi, signerOrProvider) as ERC20; - } -} - -const _abi = [ - { - inputs: [ - { - internalType: 'string', - name: 'name_', - type: 'string', - }, - { - internalType: 'string', - name: 'symbol_', - type: 'string', - }, - ], - 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: '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', - }, - { - inputs: [], - name: 'name', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'symbol', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'decimals', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - 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: '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: '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: '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: [ - { - 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: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'subtractedValue', - type: 'uint256', - }, - ], - name: 'decreaseAllowance', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, -]; - -const _bytecode = - '0x60806040523480156200001157600080fd5b506040516200139f3803806200139f833981810160405260408110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b838201915060208201858111156200006f57600080fd5b82518660018202830111640100000000821117156200008d57600080fd5b8083526020830192505050908051906020019080838360005b83811015620000c3578082015181840152602081019050620000a6565b50505050905090810190601f168015620000f15780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200011557600080fd5b838201915060208201858111156200012c57600080fd5b82518660018202830111640100000000821117156200014a57600080fd5b8083526020830192505050908051906020019080838360005b838110156200018057808201518184015260208101905062000163565b50505050905090810190601f168015620001ae5780820380516001836020036101000a031916815260200191505b506040525050508160039080519060200190620001cd9291906200020b565b508060049080519060200190620001e69291906200020b565b506012600560006101000a81548160ff021916908360ff1602179055505050620002b1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200024e57805160ff19168380011785556200027f565b828001600101855582156200027f579182015b828111156200027e57825182559160200191906001019062000261565b5b5090506200028e919062000292565b5090565b5b80821115620002ad57600081600090555060010162000293565b5090565b6110de80620002c16000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461025857806370a08231146102bc57806395d89b4114610314578063a457c2d714610397578063a9059cbb146103fb578063dd62ed3e1461045f576100a9565b806306fdde03146100ae578063095ea7b31461013157806318160ddd1461019557806323b872dd146101b3578063313ce56714610237575b600080fd5b6100b66104d7565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100f65780820151818401526020810190506100db565b50505050905090810190601f1680156101235780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61017d6004803603604081101561014757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610579565b60405180821515815260200191505060405180910390f35b61019d610597565b6040518082815260200191505060405180910390f35b61021f600480360360608110156101c957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105a1565b60405180821515815260200191505060405180910390f35b61023f61067a565b604051808260ff16815260200191505060405180910390f35b6102a46004803603604081101561026e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610691565b60405180821515815260200191505060405180910390f35b6102fe600480360360208110156102d257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610744565b6040518082815260200191505060405180910390f35b61031c61078c565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561035c578082015181840152602081019050610341565b50505050905090810190601f1680156103895780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103e3600480360360408110156103ad57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061082e565b60405180821515815260200191505060405180910390f35b6104476004803603604081101561041157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506108fb565b60405180821515815260200191505060405180910390f35b6104c16004803603604081101561047557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610919565b6040518082815260200191505060405180910390f35b606060038054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561056f5780601f106105445761010080835404028352916020019161056f565b820191906000526020600020905b81548152906001019060200180831161055257829003601f168201915b5050505050905090565b600061058d6105866109a0565b84846109a8565b6001905092915050565b6000600254905090565b60006105ae848484610b9f565b61066f846105ba6109a0565b61066a8560405180606001604052806028815260200161101360289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106206109a0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e609092919063ffffffff16565b6109a8565b600190509392505050565b6000600560009054906101000a900460ff16905090565b600061073a61069e6109a0565b8461073585600160006106af6109a0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f1a90919063ffffffff16565b6109a8565b6001905092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b606060048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108245780601f106107f957610100808354040283529160200191610824565b820191906000526020600020905b81548152906001019060200180831161080757829003601f168201915b5050505050905090565b60006108f161083b6109a0565b846108ec8560405180606001604052806025815260200161108460259139600160006108656109a0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e609092919063ffffffff16565b6109a8565b6001905092915050565b600061090f6109086109a0565b8484610b9f565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610a2e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806110606024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610ab4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180610fcb6022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610c25576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602581526020018061103b6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610cab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180610fa86023913960400191505060405180910390fd5b610cb6838383610fa2565b610d2181604051806060016040528060268152602001610fed602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e609092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610db4816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f1a90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000838311158290610f0d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ed2578082015181840152602081019050610eb7565b50505050905090810190601f168015610eff5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5082840390509392505050565b600080828401905083811015610f98576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220bd3f1ebbd37f184285799523b3026426208876513625827f88611ecf03a6e1e864736f6c634300060c0033';